mu-servant-server 0.4.0.0 → 0.5.0.0
raw patch · 3 files changed
+33/−27 lines, 3 filesdep ~mu-rpcsetup-changednew-uploaderPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: mu-rpc
API changes (from Hackage documentation)
+ Mu.Servant.Server: instance forall snm mnm anm (pkg :: Mu.Rpc.Package snm mnm anm (Mu.Rpc.TypeRef snm)) (m :: * -> *) (chn :: Mu.Server.ServiceChain snm) (sname :: snm) (methods :: [snm]) (rest :: [Mu.Rpc.Service snm mnm anm (Mu.Rpc.TypeRef snm)]) (hs :: [[*]]). (TypeError ...) => Mu.Servant.Server.ServantServiceHandlers pkg m chn ('Mu.Rpc.OneOf sname methods : rest) hs
Files
- Setup.hs +1/−1
- mu-servant-server.cabal +24/−24
- src/Mu/Servant/Server.hs +8/−2
Setup.hs view
@@ -1,2 +1,2 @@-import Distribution.Simple+import Distribution.Simple main = defaultMain
mu-servant-server.cabal view
@@ -1,5 +1,5 @@ name: mu-servant-server-version: 0.4.0.0+version: 0.5.0.0 synopsis: Servant servers for Mu definitions description: With @mu-servant-server@ you can easily build Servant servers for mu-haskell!@@ -23,21 +23,21 @@ library exposed-modules: Mu.Servant.Server build-depends:- aeson >=1.4 && <2- , async >=2.2 && < 3- , base >=4.12 && <5- , conduit >=1.3.2 && <2- , generic-aeson >=0.2 && <0.3- , ghc-prim >=0.5 && <0.7- , mtl >=2.2 && <3- , mu-rpc ==0.4.*- , mu-schema ==0.3.*- , servant >=0.16 && <0.19- , servant-server >=0.16 && <0.19- , servant-swagger >=1.1.7 && <2- , stm >=2.5 && <3- , swagger2 >=2.5 && <3- , utf8-string >=1 && <2+ aeson >=1.4 && <2+ , async >=2.2 && <3+ , base >=4.12 && <5+ , conduit >=1.3.2 && <2+ , generic-aeson >=0.2 && <0.3+ , ghc-prim >=0.5 && <0.7+ , mtl >=2.2 && <3+ , mu-rpc >=0.5 && <0.6+ , mu-schema >=0.3 && <0.4+ , servant >=0.16 && <0.19+ , servant-server >=0.16 && <0.19+ , servant-swagger >=1.1.7 && <2+ , stm >=2.5 && <3+ , swagger2 >=2.5 && <3+ , utf8-string >=1 && <2 hs-source-dirs: src default-language: Haskell2010@@ -46,15 +46,15 @@ executable servant-example-server main-is: ExampleServer.hs build-depends:- aeson >=1.4 && <2- , base >=4.12 && <5- , conduit >=1.3.2 && <2- , mu-rpc ==0.4.*- , mu-schema ==0.3.*+ aeson >=1.4 && <2+ , base >=4.12 && <5+ , conduit >=1.3.2 && <2+ , mu-rpc >=0.5 && <0.6+ , mu-schema >=0.3 && <0.4 , mu-servant-server- , servant-server >=0.16 && <0.19- , text >=1.2 && <2- , warp >=3.3 && <4+ , servant-server >=0.16 && <0.19+ , text >=1.2 && <2+ , warp >=3.3 && <4 hs-source-dirs: exe default-language: Haskell2010
src/Mu/Servant/Server.hs view
@@ -47,10 +47,10 @@ import Data.Conduit.Internal (ConduitT (..), Pipe (..)) import Data.Kind import Data.Swagger (Swagger, ToSchema (..))-import Generics.Generic.Aeson import GHC.Generics import GHC.TypeLits import GHC.Types (Any)+import Generics.Generic.Aeson import Mu.Rpc import Mu.Rpc.Annotations import Mu.Schema@@ -170,9 +170,15 @@ type ServicesAPI pkg ('Service sname methods ': rest) (hs ': hss) = MethodsAPI pkg sname methods hs :<|> ServicesAPI pkg rest hss- servantServiceHandlers f pkgP (svr :<&>: rest) =+ servantServiceHandlers f pkgP (ProperSvc svr :<&>: rest) = servantMethodHandlers f pkgP (Proxy @sname) svr :<|> servantServiceHandlers f pkgP rest++instance (TypeError ('Text "unions are not supported by Servant servers"))+ => ServantServiceHandlers pkg m chn ('OneOf sname methods ': rest) hs where+ type ServicesAPI pkg ('OneOf sname methods ': rest) hs =+ TypeError ('Text "unions are not supported by Servant servers")+ servantServiceHandlers _ = error "unions are not supported by Servant servers" class ServantMethodHandlers