rest-example 0.1.2.1 → 0.1.2.2
raw patch · 5 files changed
+48/−13 lines, 5 filesdep ~happstack-serverdep ~rest-core
Dependency ranges changed: happstack-server, rest-core
Files
- CHANGELOG.md +5/−0
- example-api/Api.hs +8/−5
- example-api/Api/Test/DashedName.hs +26/−0
- example-api/Api/User.hs +1/−1
- rest-example.cabal +8/−7
CHANGELOG.md view
@@ -1,5 +1,10 @@ # Changelog +#### 0.1.2.2++* Bump `rest-core`.+* Allow `happstack-server` 7.4.*.+ #### 0.1.2.1 * Allow time 1.5.*
example-api/Api.hs view
@@ -5,24 +5,27 @@ import ApiTypes (BlogApi) import qualified Api.Post as Post-import qualified Api.User as User import qualified Api.Post.Comment as Post.Comment import qualified Api.Test as Test+import qualified Api.Test.DashedName as DashedName import qualified Api.Test.ReservedName as ReservedName+import qualified Api.User as User -- | Defines a versioned api api :: Api BlogApi api = [(mkVersion 1 0 0, Some1 blog)] --- _ The entire routing table for v1.0.0 of the blog+-- | The entire routing table for v1.0.0 of the blog blog :: Router BlogApi BlogApi blog = root -/ user -/ post --/ comment -/ test --/ reservedName+ --/ dashedName where- user = route User.resource- post = route Post.resource comment = route Post.Comment.resource- test = route Test.resource+ dashedName = route DashedName.resource+ post = route Post.resource reservedName = route ReservedName.resource+ test = route Test.resource+ user = route User.resource
+ example-api/Api/Test/DashedName.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE ScopedTypeVariables #-}+module Api.Test.DashedName (resource) where++import Control.Monad.Error+import Control.Monad.Reader+import Rest+import qualified Rest.Resource as R++import Api.Test (WithText)++type SiteId = String++type WithSiteSubscription = ReaderT SiteId WithText++resource :: Resource WithText WithSiteSubscription SiteId Void Void+resource = mkResourceReader+ { R.name = "foo-bar"+ , R.schema = noListing $ named [("id", singleRead id)]+ , R.remove = Just remove+ }++remove :: Handler WithSiteSubscription+remove = mkConstHandler id handler+ where+ handler :: ErrorT Reason_ WithSiteSubscription ()+ handler = return ()
example-api/Api/User.hs view
@@ -28,7 +28,7 @@ resource :: Resource BlogApi WithUser User.Name () Void resource = mkResourceReader { R.name = "user" -- Name of the HTTP path segment.- , R.schema = withListing () $ named [("name", singleRead id)]+ , R.schema = withListing () $ named [("name", singleBy T.pack)] , R.list = const list -- requested by GET /user, gives a paginated listing of users. , R.create = Just create -- PUT /user creates a new user }
rest-example.cabal view
@@ -1,5 +1,5 @@ name: rest-example-version: 0.1.2.1+version: 0.1.2.2 synopsis: Example project for rest homepage: http://www.github.com/silkapp/rest license: BSD3@@ -26,6 +26,7 @@ Api.Test Api.Test.Err2 Api.Test.ReservedName+ Api.Test.DashedName Api.User ApiTypes Example@@ -49,7 +50,7 @@ , mtl >= 2.0 && < 2.3 , regular == 0.3.* , regular-xmlpickler == 0.2.*- , rest-core == 0.33.*+ , rest-core >= 0.33 && < 0.35 , safe >= 0.2 && < 0.4 , transformers >= 0.2 && < 0.5 , stm >= 2.1 && < 2.5@@ -90,9 +91,9 @@ buildable: True build-depends: base >= 4.6 && < 4.8- , happstack-server >= 7.1 && < 7.4+ , happstack-server >= 7.1 && < 7.5 , mtl >= 2.0 && < 2.3- , rest-core == 0.33.*+ , rest-core >= 0.33 && < 0.35 , rest-example , rest-happstack == 0.2.* else@@ -108,7 +109,7 @@ build-depends: base >= 4.6 && < 4.8 , mtl >= 2.0 && < 2.3- , rest-core == 0.33.*+ , rest-core >= 0.33 && < 0.35 , rest-example , rest-wai == 0.1.* , wai >= 2.1 && < 3.1@@ -126,7 +127,7 @@ build-depends: base >= 4.6 && < 4.8 , mtl >= 2.0 && < 2.3- , rest-core == 0.33.*+ , rest-core >= 0.33 && < 0.35 , rest-example , rest-snap == 0.1.* , snap-core == 0.9.*@@ -144,7 +145,7 @@ build-depends: base >= 4.6 && < 4.8 , mtl >= 2.0 && < 2.3- , rest-core == 0.33.*+ , rest-core >= 0.33 && < 0.35 , rest-example , rest-gen >= 0.14 && < 0.17 else