* Simplify code in CurlMock cookbook recipe
* Link to latest versions of packages on hackage
* Fix grammar in the OpenIdConnect recipe
* HasForeignType -> HasForeign
- Almost everything 0.15; also servant-foreign jumped to 0.15, for
consistency
- Bump lower bounds of dependencies to most recent versions atm
- Use hspec-2.6.0
- Update `stack.yaml` accordingly
- Use base-compat a bit more
- Drop aeson-compat dependency (in tests and tutorial)
- Introduce SourceT, which is simple variant of "correct `ListT`".
There are another variants possible (like in `streaming`),
but I'm not sure there's much real difference.
- Introduce `Codensity`. There's a flag if people don't want to depend
on `kan-extensions`.
- `StreamGenerator` and `ResultStream` are both `SourceT`.
`Stream` combinator in `servant-client` uses `Codensity` for CPS.
- Add servant-machines, servant-conduit, servant-pipes
- Add streaming cookbook: just code, no explanations.
- Add a script to run streaming 'benchmarks'
# Remove redundant point
There are so much waste in the universe and we need to change the situation. The better usage the better habits of one leads a positive attitude of everyone.
# Improve disk space usage
You always hear guys complain about the cost of storage so it's appreciated as fuck. Decreasing line by 1 symbol leads to less disk space usage (up to 2 bytes at a time)!
Instead of only exposing 'serveDirectory', which picks a specific static file
serving strategy (file server settings), we now expose 4 different variants each
corresponding to an variant of StaticSettings in wai-app-static.
In addition to these, we expose a more flexible 'serveDirectoryWith' function
which allows the user to specify some arbitrary StaticSettings, if the 4
existing variants do not cover a user's needs.