Changelog for scotty-0.8.1
0.8.1
- Export internal types
- Added
MonadBase,MonadTransControlandMonadBaseControlinstances forActionT
0.8.0
-
Upgrade to wai/wai-extra/warp 3.0
-
No longer depend on conduit-extra.
-
The
sourceresponse method has been deprecated in favor of a newstreamresponse, matching changes in WAI 3.0. -
Removed the deprecated
reqHeaderfunction.
0.7.3
- Bump upper bound for case-insensitive, mtl and transformers.
0.7.2
- Bump lower bound on conduit, add conduit-extra to cabal build depends.
0.7.1
- Default warp settings now use
setFdCacheDuration 0to work around a warp issue where file changes are not getting picked up.
0.7.0
-
Renamed
reqHeadertoheader. Addedheadersfunction to get all headers. -
Changed
MonadIOinstance forActionTsuch that IO exceptions are lifted intoScottyErrors viastringError. -
Make
Boolparsing case-insensitive. Goal: support both Haskell's True/False and Javascript's true/false. Thanks to Ben Gamari for suggesting this. -
Bump
aeson/textupper bounds. -
Bump
wai/wai-extra/warpbounds, including new lower bound forwarp, which fixes a security issue related to Slowloris protection.
0.6.2
- Bump upper bound for
text.
0.6.1
- Match changes in
wai-extra.
0.6.0
-
The Scotty transformers (
ScottyTandActionT) are now parameterized over a custom exception type, allowing one to extend Scotty'sErrorTlayer with something richer thanTexterrors. See theexceptionsexample for use.ScottyMandActionMremain specialized toTextexceptions for simplicity. -
Both monads are now instances of
FunctorandApplicative. -
There is a new
cookiesexample. -
Internals brought up-to-date with WAI 2.0 and related packages.
0.5.0
-
The Scotty monads (
ScottyMandActionM) are now monad transformers, allowing Scotty applications to be embedded in arbitraryMonadIOs. The old API continues to be exported fromWeb.Scottywhere:type ScottyM = ScottyT IO type ActionM = ActionT IOThe new transformers are found in
Web.Scotty.Trans. See theglobalstateexample for use. Special thanks to Dan Frumin (co-dan) for much of the legwork here. -
Added support for HTTP PATCH method.
-
Removed lambda action syntax. This will return when we have a better story for typesafe routes.
-
reqHeader :: Text -> ActionM Text==>reqHeader :: Text -> ActionM (Maybe Text) -
New
rawmethod to set body to a rawByteString -
Parse error thrown by
jsonDatanow includes the body it couldn't parse. -
headersplit intosetHeaderandaddHeader. The former replaces a response header (original behavior). The latter adds a header (useful for multipleSet-Cookies, for instance).