The Snap team is proud to (belatedly) announce the release of Snap 0.4.2, containing bugfixes and efficiency improvements. Snap 0.4.2 was released to Hackage a couple of weeks ago; apologies for just getting to the release notes now. Here are the changes since 0.4.1:
Fixed a small bug in file upload support re: rate limiting.
Fixed another bug in the
Iteratee; it was gobbling unconsumed input when it didn’t have to.
Fixed issue #68, “Connections cannot be reused if requests specify Content-Length: 0”.
Fixed a spec-compliance bug: send error code 411 when PUT/POST requests come in with no content-length.
Explicitly link against
gnutls– this was causing link failures on some platforms.
We now log exceptions caught by the default error handler.
- Added a function to
methods :: MonadSnap m => [Method] -> m a -> m a
In our Boyer-Moore-Horspool implementation, achieved some efficiency improvements by eliminating some bytestring bounds checking and killing an unnecessary copy.
Improved timeout efficiency on the
snap-server“simple” backend using a technique inspired by some conversations with Michael Snoyman (thanks, Michael!)
Replaced our Attoparsec HTTP parser with a hand-rolled one; makes parsing slightly more efficient. Please report any problems.
Relaxed the upper bound on the blaze-builder dependency to match the latest version.
Bumped the lower bound on the bytestring-mmap dependency; older bytestring-mmap versions were causing compile failures on GHC 7.
- Increased test coverage for