<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">(Note: Reply-to is set to <a href="mailto:haskell-cafe@haskell.org">haskell-cafe@haskell.org</a>)<div><br></div><div>Hello,</div><div><br></div><div>I am very pleased to announce Happstack 0.5.0. It should install cleanly from hackage via:</div><div><br></div><div>&nbsp;cabal install happstack</div><div><br></div><div>If it does not, please report errors to the happstack mailing list:</div><div><br></div><div><meta charset="utf-8"><a href="http://groups.google.com/group/HAppS">http://groups.google.com/group/HAppS</a></div><div><br></div><div>(You will, unfortunately, need to be subscribed due to SPAM issues).</div><div><br></div><div>Here are the official release notes:</div><div><div><br></div><div><div>Release Notes:</div><div><br></div><div>&nbsp;&nbsp;This release should fix many (hopefully all) known cabal install</div><div>&nbsp;&nbsp;related issues. It also includes many other improvements detailed</div><div>&nbsp;&nbsp;below.</div><div><br></div><div>Known issues:&nbsp;</div><div><br></div><div>&nbsp;&nbsp;* dropped support for GHC 6.8. GHC 6.10 and 6.12 currently supported.</div><div><br></div><div>&nbsp;&nbsp;* happstack-data compiled with -O0 due to bug in cabal&nbsp;</div><div>&nbsp;&nbsp; &nbsp; <a href="http://thread.gmane.org/gmane.comp.lang.haskell.cafe/69215">http://thread.gmane.org/gmane.comp.lang.haskell.cafe/69215</a></div><div><br></div><div>&nbsp;&nbsp; &nbsp; You may be able to change that to -O2 if you first do:</div><div>&nbsp;&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; cabal install --reinstall syb-with-class --disable-documentation</div><div><br></div><div>&nbsp;&nbsp; &nbsp; But we need a solution that works automatically when people run, cabal install happstack.</div><div><br></div><div>Changes since 0.4.1:</div><div><br></div><div>&nbsp;&nbsp;* many IxSet improvements by Gracjan Polak</div><div><br></div><div>&nbsp;&nbsp; &nbsp;- hide IxSet constructor. use ixSet instead.</div><div>&nbsp;&nbsp; &nbsp;- improved efficiency of gteTLE, getGTE, and getRange</div><div>&nbsp;&nbsp; &nbsp;- get rid of Dynamic, just use Data.Typeable (internal change)</div><div>&nbsp;&nbsp; &nbsp;- added deleteIx</div><div>&nbsp;&nbsp; &nbsp;- Eq and Ord instances for IxSet</div><div>&nbsp;&nbsp; &nbsp;- removed a bunch of cruft</div><div>&nbsp;&nbsp; &nbsp;- greatly improved documentation</div><div>&nbsp;&nbsp; &nbsp;- added stats function</div><div>&nbsp;&nbsp; &nbsp;- Protect user from using unindexed keys in searches in IxSet</div><div>&nbsp;&nbsp; &nbsp;- Runtime safeguard for badly formed inferIxSet indexes</div><div>&nbsp;&nbsp; &nbsp;- Fixed IxSet Default instance</div><div>&nbsp;&nbsp; &nbsp;- More detailed error messages in IxSet</div><div><br></div><div>&nbsp;&nbsp;* work around bug in bytestring which causes the server to hang</div><div>&nbsp;&nbsp; &nbsp;(<a href="http://hackage.haskell.org/trac/ghc/ticket/3808">http://hackage.haskell.org/trac/ghc/ticket/3808</a>)</div><div><br></div><div>&nbsp;&nbsp;* support for uincode Text and lazy Text types</div><div><br></div><div>&nbsp;&nbsp; &nbsp;- Serialize/Version instances now provided automatically by happstack-data</div><div>&nbsp;&nbsp; &nbsp;- instances of EmbedAsChild and EmbedAsAttr for Text for Identity,</div><div>&nbsp;&nbsp; &nbsp; &nbsp;IdentityT, ServerPartT, and WebT.</div><div>&nbsp;&nbsp; &nbsp;- patches sent upstream to HSP, waiting on acceptance</div><div><br></div><div>&nbsp;&nbsp;* Added Serialize/Version instances for time / Data.Time library</div><div><br></div><div>&nbsp;&nbsp;* Improvements to GuestBook demo by Gracjan Polak</div><div>&nbsp;&nbsp; &nbsp;- better handling of Ctrl-C</div><div>&nbsp;&nbsp; &nbsp;- simplified .cabal to only build executable</div><div><br></div><div>&nbsp;&nbsp;* Improvements to GuestBook demo by Gracjan Polak</div><div>&nbsp;&nbsp; &nbsp;- nice command line interface with help message and version information</div><div>&nbsp;&nbsp; &nbsp;- restructured parsing of command line to make it scale better with</div><div>&nbsp;&nbsp; &nbsp; &nbsp;further parameters</div><div>&nbsp;&nbsp; &nbsp;- added reference to Paths_guestbook module to enable incorporating version</div><div>&nbsp;&nbsp; &nbsp; &nbsp;and path information generated by cabal.</div><div>&nbsp;&nbsp; &nbsp;- added withLogger transformer guaranteeing clean setup and</div><div>&nbsp;&nbsp; &nbsp; &nbsp;teardown of loggers</div><div>&nbsp;&nbsp; &nbsp;- Added clean shutdown to logging component.</div><div>&nbsp;</div><div>&nbsp;&nbsp;* fail instance for WebT now includes location of pattern match failure. e.g.</div><div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp;src\AppControl.hs:43:24: Pattern match failure in do expression</div><div><br></div><div>&nbsp;&nbsp;* added expireCookie function</div><div><br></div><div>&nbsp;&nbsp;* Improvements to documentation</div><div>&nbsp;&nbsp;* Additional test cases</div><div>&nbsp;&nbsp;* Fixes many build failures</div><div><br></div><div>&nbsp;&nbsp;* Experimental: Added proof of concept port of happstack-server to WAI.&nbsp;</div><div>&nbsp;&nbsp; &nbsp;<a href="http://www.haskell.org/pipermail/haskell-cafe/2010-March/074142.html">http://www.haskell.org/pipermail/haskell-cafe/2010-March/074142.html</a></div><div><br></div><div>&nbsp;&nbsp;* added 'dirs' guard. (Similar to dir, but for a list of path</div><div>&nbsp;&nbsp; &nbsp;components).</div><div><br></div><div>&nbsp;&nbsp;* set SO_KEEPALIVE so that dropped connections will eventually time out</div><div><br></div><div>&nbsp;&nbsp;* happstack-util only depends on QuickCheck when compiled with</div><div>&nbsp;&nbsp; &nbsp;-ftests. This is wrong but solves a lot of annoy install failures.</div><div><br></div><div>&nbsp;&nbsp;* file serve functions now use MonadPlus instead of setting explicit 404</div><div><br></div><div>&nbsp;&nbsp;* XMLMetaData for webHSP</div><div><br></div><div>&nbsp;&nbsp;* Allow colons in cookie names</div><div><br></div><div>Contributors:</div><div><br></div><div>&nbsp;A big thanks to everyone who contributed patches for this release, including:</div><div><br></div><div>&nbsp;&nbsp;Gracjan Polak (25 patches in this release!)</div><div>&nbsp;&nbsp;Simon Meier</div><div>&nbsp;&nbsp;Paulo Tanimoto</div><div>&nbsp;&nbsp;Joachim Fasting</div><div>&nbsp;&nbsp;Antoine Latter</div><div>&nbsp;&nbsp;Simon Michael</div><div>&nbsp;&nbsp;Adam Vogt</div><div>&nbsp;&nbsp;Joe Edmonds</div><div>&nbsp;&nbsp;Andrea Vezzosi</div><div>&nbsp;&nbsp;Nils Schweinsberg</div><div><br></div></div></div></body></html>