Changelog of @hackage/happstack 6.0.6

Happstack 0.4

  • happstack-server: Added support for SendFile with an alternate constructor for 'Response' data Response = Response { rsCode :: Int, rsHeaders :: Headers, rsFlags :: RsFlags, rsBody :: L.ByteString, rsValidator :: Maybe (Response -> IO Response) } | SendFile { rsCode :: Int, rsHeaders :: Headers, rsFlags :: RsFlags, rsValidator :: Maybe (Response -> IO Response), sfHandle :: Handle, -- file handle to send from sfOffset :: Integer, -- offset to start at sfCount :: Integer -- number of bytes to send } deriving (Show,Typeable)
  • happstack-server: fileServe uses SendFile so the memory efficiency & performance should be much better
  • happstack-server: added guards 'host' and 'withHost' to SimpleHTTP
  • happstack-server: nuked Happstack.Server.S3 since other hackage libraries cover this functionality these days Happstack 0.3
  • Modularization of the example application using the component system
  • All packages now require Cabal >= 1.6
  • Repository metadata added to cabal description
  • Moved Combined Logging from Happstack.Server to Happstack.Server.AccessLog.Combined
  • Added Happstack.Util.Mail: a simple email interface which utilizes a smarthost
  • SimpleHTTP: look and lookPairs now assume utf-8 from the browser
  • Space leak fixed in Happstack.Util.Timeout
  • A fix for an issue where alphanumeric Accept-Encoding Requests made the parser fail
  • Fixes for some command-line browsers such as links
  • Guards now have fall-through semantics
  • Various updates & additions to documentation
  • Code beautification
  • Bugfix to Happstack.Util.Cron to accept intervals up to maxBound
  • addition of a strict version of fileServe "fileServeStrict"
  • fileServe (lazy) behaves more reliably now and escapes before any filters can be applied

Happstack 0.2

  • Module namespace refactoring from HAppS to Happstack HAppS.Server -> Happstack.Server HAppS.State -> Happstack.State HAppS.Util -> Happstack.Util HAppS.IxSet -> Happstack.IxSet HAppS.Data -> Happstack.Data HAppS.Contrib -> Happstack.Contrib
  • Creation of additional package 'happstack'
  • Code generation tool added for creating "quick start" project folders
  • Removed dependency of happstack-server on happstack-state
  • Removed dependency of happstack-server on happstack-ixset
  • Module Cron module moved from happstack-server to happstack-util
  • Moved Atom, HList, HListBase from happstack-data to happstack-contrib
  • Monadic machinery for ServerPartT and WebT trimmed / cleaned / optimized (Daniel Rogers)
  • New experimental gzip filter in happstack-server (similar to apache mod_deflate)
  • Builtin support for HSP, HStringTemplate (see example template / release notes)
  • happstack-server once again builds on Windows
  • Nearly all the exported functions have been documented!
  • Cookie fix from happstack-helpers was integrated into the main code
  • Combined Logging via Happstack.Server NOTICE

Happstack 0.1

  • Cabal packaging name change: HAppS-Server -> happstack-server HAppS-State -> happstack-state HAppS-Util -> happstack-util HAppS-IxSet -> happstack-ixset HAppS-Data -> happstack-data
  • Creation of additional package 'happstack-contrib' (HAppS.Contrib)
  • Moved Facebook module from happstack-server to happstack-contrib
  • Fixed various warnings
  • Removed dead modules and many dead code blocks
  • Turned name resolution off for peers in HTTP.Listen (fixes getNameInfo crash)