webgear-openapi 1.0.4 → 1.0.5
raw patch · 11 files changed
+34/−28 lines, 11 filesdep ~basedep ~webgear-core
Dependency ranges changed: base, webgear-core
Files
- CHANGELOG.md +7/−1
- src/WebGear/OpenApi/Handler.hs +7/−7
- src/WebGear/OpenApi/Trait/Auth/Basic.hs +1/−1
- src/WebGear/OpenApi/Trait/Auth/JWT.hs +1/−1
- src/WebGear/OpenApi/Trait/Body.hs +4/−4
- src/WebGear/OpenApi/Trait/Header.hs +4/−4
- src/WebGear/OpenApi/Trait/Method.hs +1/−1
- src/WebGear/OpenApi/Trait/Path.hs +3/−3
- src/WebGear/OpenApi/Trait/QueryParam.hs +2/−2
- src/WebGear/OpenApi/Trait/Status.hs +1/−1
- webgear-openapi.cabal +3/−3
CHANGELOG.md view
@@ -2,6 +2,11 @@ ## [Unreleased] +## [1.0.5] - 2023-05-04++### Changed+- Update dependency bounds and GHC versions+ ## [1.0.4] - 2022-08-27 ### Changed@@ -27,7 +32,8 @@ ### Added - First version of webgear-openapi -[Unreleased]: https://github.com/haskell-webgear/webgear/compare/v1.0.4...HEAD+[Unreleased]: https://github.com/haskell-webgear/webgear/compare/v1.0.5...HEAD+[1.0.5]: https://github.com/haskell-webgear/webgear/releases/tag/v1.0.5 [1.0.4]: https://github.com/haskell-webgear/webgear/releases/tag/v1.0.4 [1.0.3]: https://github.com/haskell-webgear/webgear/releases/tag/v1.0.3 [1.0.2]: https://github.com/haskell-webgear/webgear/releases/tag/v1.0.2
src/WebGear/OpenApi/Handler.hs view
@@ -128,30 +128,30 @@ OpenApiHandler doc1 ||| OpenApiHandler doc2 = OpenApiHandler $ BinaryNode doc1 doc2 instance ArrowError RouteMismatch (OpenApiHandler m) where- {-# INLINEABLE raise #-}+ {-# INLINE raise #-} raise = OpenApiHandler{openApiDoc = NullNode} - {-# INLINEABLE handle #-}+ {-# INLINE handle #-} OpenApiHandler doc1 `handle` OpenApiHandler doc2 = OpenApiHandler $ BinaryNode doc1 doc2 - {-# INLINEABLE tryInUnless #-}+ {-# INLINE tryInUnless #-} tryInUnless (OpenApiHandler doc1) (OpenApiHandler doc2) (OpenApiHandler doc3) = OpenApiHandler $ BinaryNode (BinaryNode doc1 doc2) doc3 instance Monad m => Handler (OpenApiHandler m) m where- {-# INLINEABLE arrM #-}+ {-# INLINE arrM #-} arrM :: (a -> m b) -> OpenApiHandler m a b arrM _ = OpenApiHandler{openApiDoc = NullNode} - {-# INLINEABLE consumeRoute #-}+ {-# INLINE consumeRoute #-} consumeRoute :: OpenApiHandler m RoutePath a -> OpenApiHandler m () a consumeRoute (OpenApiHandler doc) = OpenApiHandler doc - {-# INLINEABLE setDescription #-}+ {-# INLINE setDescription #-} setDescription :: Description -> OpenApiHandler m a a setDescription = OpenApiHandler . singletonNode . DocDescription - {-# INLINEABLE setSummary #-}+ {-# INLINE setSummary #-} setSummary :: Summary -> OpenApiHandler m a a setSummary = OpenApiHandler . singletonNode . DocSummary
src/WebGear/OpenApi/Trait/Auth/Basic.hs view
@@ -13,7 +13,7 @@ import WebGear.OpenApi.Handler (DocNode (DocSecurityScheme), OpenApiHandler (..), singletonNode) instance (TraitAbsence (BasicAuth' x scheme m e a) Request, KnownSymbol scheme) => Get (OpenApiHandler m) (BasicAuth' x scheme m e a) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: BasicAuth' x scheme m e a -> OpenApiHandler m (Linked ts Request) (Either (Absence (BasicAuth' x scheme m e a) Request) (Attribute (BasicAuth' x scheme m e a) Request))
src/WebGear/OpenApi/Trait/Auth/JWT.hs view
@@ -16,7 +16,7 @@ (TraitAbsence (JWTAuth' x scheme m e a) Request, KnownSymbol scheme) => Get (OpenApiHandler m) (JWTAuth' x scheme m e a) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: JWTAuth' x scheme m e a -> OpenApiHandler m (Linked ts Request) (Either (Absence (JWTAuth' x scheme m e a) Request) (Attribute (JWTAuth' x scheme m e a) Request))
src/WebGear/OpenApi/Trait/Body.hs view
@@ -20,7 +20,7 @@ ) instance ToSchema val => Get (OpenApiHandler m) (Body val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: Body val -> OpenApiHandler m (Linked ts Request) (Either Text val) getTrait (Body maybeMediaType) = let mediaType = fromMaybe "*/*" maybeMediaType@@ -31,7 +31,7 @@ in OpenApiHandler $ singletonNode (DocRequestBody defs body) instance ToSchema val => Set (OpenApiHandler m) (Body val) Response where- {-# INLINEABLE setTrait #-}+ {-# INLINE setTrait #-} setTrait :: Body val -> (Linked ts Response -> Response -> val -> Linked (Body val : ts) Response) ->@@ -43,12 +43,12 @@ in OpenApiHandler $ singletonNode (DocResponseBody defs mediaType body) instance ToSchema val => Get (OpenApiHandler m) (JSONBody val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: JSONBody val -> OpenApiHandler m (Linked ts Request) (Either Text val) getTrait (JSONBody maybeMediaType) = getTrait (Body @val maybeMediaType) instance ToSchema val => Set (OpenApiHandler m) (JSONBody val) Response where- {-# INLINEABLE setTrait #-}+ {-# INLINE setTrait #-} setTrait :: JSONBody val -> (Linked ts Response -> Response -> t -> Linked (JSONBody val : ts) Response) ->
src/WebGear/OpenApi/Trait/Header.hs view
@@ -31,17 +31,17 @@ & schema ?~ Inline (toSchema $ Proxy @val) instance (KnownSymbol name, ToSchema val, TraitAbsence (WG.Header Required ps name val) Request) => Get (OpenApiHandler m) (WG.Header Required ps name val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait WG.Header = OpenApiHandler $ singletonNode (DocRequestHeader $ mkParam (Proxy @name) (Proxy @val) True) instance (KnownSymbol name, ToSchema val, TraitAbsence (WG.Header Optional ps name val) Request) => Get (OpenApiHandler m) (WG.Header Optional ps name val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait WG.Header = OpenApiHandler $ singletonNode (DocRequestHeader $ mkParam (Proxy @name) (Proxy @val) False) instance (KnownSymbol name, ToSchema val, Trait (WG.Header Required ps name val) Response) => Set (OpenApiHandler m) (WG.Header Required ps name val) Response where- {-# INLINEABLE setTrait #-}+ {-# INLINE setTrait #-} setTrait WG.Header _ = let headerName = fromString $ symbolVal $ Proxy @name header =@@ -53,7 +53,7 @@ else OpenApiHandler $ singletonNode (DocResponseHeader headerName header) instance (KnownSymbol name, ToSchema val, Trait (WG.Header Optional ps name val) Response) => Set (OpenApiHandler m) (WG.Header Optional ps name val) Response where- {-# INLINEABLE setTrait #-}+ {-# INLINE setTrait #-} setTrait WG.Header _ = let headerName = fromString $ symbolVal $ Proxy @name header =
src/WebGear/OpenApi/Trait/Method.hs view
@@ -9,5 +9,5 @@ import WebGear.OpenApi.Handler (DocNode (DocMethod), OpenApiHandler (OpenApiHandler), singletonNode) instance Get (OpenApiHandler m) Method Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait (Method method) = OpenApiHandler $ singletonNode (DocMethod method)
src/WebGear/OpenApi/Trait/Path.hs view
@@ -17,12 +17,12 @@ ) instance Get (OpenApiHandler m) Path Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: Path -> OpenApiHandler m (Linked ts Request) (Either () ()) getTrait (Path p) = OpenApiHandler $ singletonNode (DocPathElem p) instance (KnownSymbol tag, ToSchema val) => Get (OpenApiHandler m) (PathVar tag val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: PathVar tag val -> OpenApiHandler m (Linked ts Request) (Either PathVarError val) getTrait PathVar = let param =@@ -35,6 +35,6 @@ in OpenApiHandler $ singletonNode (DocPathVar param) instance Get (OpenApiHandler m) PathEnd Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait :: PathEnd -> OpenApiHandler m (Linked ts Request) (Either () ()) getTrait PathEnd = OpenApiHandler $ singletonNode (DocPathElem "/")
src/WebGear/OpenApi/Trait/QueryParam.hs view
@@ -20,7 +20,7 @@ import WebGear.OpenApi.Handler (DocNode (DocQueryParam), OpenApiHandler (..), singletonNode) instance (KnownSymbol name, ToSchema val, TraitAbsence (QueryParam Required ps name val) Request) => Get (OpenApiHandler m) (QueryParam Required ps name val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait _ = let param = (mempty :: Param)@@ -32,7 +32,7 @@ in OpenApiHandler $ singletonNode (DocQueryParam param) instance (KnownSymbol name, ToSchema val, TraitAbsence (QueryParam Optional ps name val) Request) => Get (OpenApiHandler m) (QueryParam Optional ps name val) Request where- {-# INLINEABLE getTrait #-}+ {-# INLINE getTrait #-} getTrait _ = let param = (mempty :: Param)
src/WebGear/OpenApi/Trait/Status.hs view
@@ -10,7 +10,7 @@ import WebGear.OpenApi.Handler (DocNode (DocStatus), OpenApiHandler (..), singletonNode) instance Set (OpenApiHandler m) Status Response where- {-# INLINEABLE setTrait #-}+ {-# INLINE setTrait #-} setTrait :: Status -> (Linked ts Response -> Response -> HTTP.Status -> Linked (Status : ts) Response) ->
webgear-openapi.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.4 name: webgear-openapi-version: 1.0.4+version: 1.0.5 synopsis: Composable, type-safe library to build HTTP API servers description: WebGear is a library to for building composable, type-safe HTTP API servers.@@ -67,14 +67,14 @@ TypeFamilies TypeOperators build-depends: arrows ==0.4.*- , base >=4.13.0.0 && <4.18+ , base >=4.13.0.0 && <4.19 , http-media ==0.8.* , http-types ==0.12.* , insert-ordered-containers ==0.2.* , lens >=4.18.1 && <5.3 , openapi3 >=3.1.0 && <3.3 , text >=1.2.0.0 && <2.1- , webgear-core ==1.0.4+ , webgear-core ==1.0.5 ghc-options: -Wall -Wno-unticked-promoted-constructors -Wcompat