1 Fix Range header handling (Simon Sandlund)
2 Export acceptor-remove-session
3 ECL timeout support (Juan Jose Giarcia-Ripoll)
4 Changed cookie handling - Hunchentoot no longer encodes cookies
5 automatically. Applications must make sure that they only set cookies
6 to permitted values (refer to RFC6265 for the details, thanks to Ralf
7 Stoye for debugging help)
11 Fix warning on LispWorks (Nico de Jager)
13 Remove obsolete symbols from export list
15 Document acceptor-remove-session, remove obsolete *session-removal-hook* export (Issue #15)
16 Added :description to asdf system definition
17 Add documentation section describing how to bind to privileged ports
21 Use FINISH-OUTPUT instead of FORCE-OUTPUT at connection end (I. Perminov)
23 External format EOL style fixes for Windows (Anton Kovalenko)
27 Fix to allow send-service-unavailable-reply to work (Far� Rideau)
28 Make sure we always have a cooked message to send in case of error (Far� Rideau)
29 Add www/ directory with default file tree that is being served
30 Add error template mechanism and improve error reporting in general.
31 Improve automatic testing, SBCL kludge to support asdf:test-op
32 Allegro CL modern mode fixes
33 Fix bugs in serving partial responses
34 Limit maximum number of threads that Hunchentoot creates (Dan Weinreb, Scott McKay)
35 Export fixes (Gordon Sims, Andrey Moskvitin, Far� Rideau)
36 Factor out easy-handler logic into separate acceptor subclass
37 Export two session functions (Nico de Jager)
38 Allow no Content-Type header (Chaitanya Gupta)
39 Patch for compilation with ECL (Sohail Somani)
40 Fix DEFINE-EASY-HANDLER for multiple acceptors (Nicolas Neuss)
41 Revived *SHOW-LISP-BACKTRACES-P*
42 Made sure "100 Continue" is returned even if the client sends "Expect: 100-continue" twice (reported by Gordon Sims)
43 Fixed typo in code which interprets transfer encodings
47 Exported WITHIN-REQUEST-P (Far� Rideau)
48 Safeguard measures against XSS attacks (J.P. Larocque)
49 Prevent potential leak when closing stream (Matt Lamari, Martin Simmons)
50 Change some occurrences of HANDLER-CASE* to HANDLER-CASE (Hans H�bner, Allan Dee)
54 Architectural changes - see HANDLE-REQUEST (thanks to Andreas Fuchs and Frode Fjeld)
55 Re-introduced *CATCH-ERRORS-P* and MAYBE-INVOKE-DEBUGGER
56 Integration with trivial-backtrace (see *LOG-LISP-BACKTRACES-P*)
57 Treat :UNSPECIFIC like NIL in pathname components (reported by Frode Fjeld)
59 Prepared for LispWorks 6 (Nico de Jager)
60 Fixed reading of post parameters (Peter Seibel and Stephen P. Compall)
61 Fixed STOP by supplying the :READY-ONLY keyword to USOCKET:WAIT-FOR-INPUT
62 Enabled SSL key passwords for Lisps other than LW (Vsevolod)
66 Complete architectural redesign (together with Hans H�bner)
67 Lots of small fixes and improvements, too many to enumerate here
71 Fixed embarrassingly mis-placed parentheses (thanks to Hans H�bner)
75 Removed FORCE-OUTPUT* and thus the ACL-COMPAT dependency (thanks to Hans H�bner)
76 Support for MP-less CMUCL (thanks to Hans H�bner)
80 Fixed unportable LOOP usage (caught by "C S S")
84 Added CODE parameter to REDIRECT (thanks to Michael Weber)
88 Fixed typo in test.lisp (thanks to Ben Hyde)
89 Changed wrong usage of EQ to EQL (thanks to Ariel Badichi)
90 Fixed typo in default handler (thanks to Eugene Ossintsev)
94 Uses CL-FAD for HANDLE-STATIC-FILE now
95 Better error reporting for CREATE-FOLDER-DISPATCHER-AND-HANDLER (suggested by Cyrus Harmon)
96 Faster version of WRITE-HEADER-LINE (thanks to V. Segu�)
100 Added support for CLISP (thanks to Anton Vodonosov)
104 Replace ENOUGH-NAMESTRING with ENOUGH-URL (patch by Kilian Sprotte and Hans H�bner)
108 Fix compilation order (thanks to Tiarnan O'Corrain and Chris Dean)
112 Robustified MAKE-SOCKET-STREAM against potential leak (thanks to Alain Picard)
113 Replaced #-FOO #-FOO constructs for OpenMCL (patch by Michael Weber)
114 Updated tutorial links
118 Made log stream shared on OpenMCL (thanks to Gary Byers)
122 Enabled GET-GID-FROM-NAME for newer versions of SBCL (patch by Cyrus Harmon)
126 Better handling of PORT parameter in REDIRECT (thanks to Vladimir Sedach)
130 Fixed bug where you couldn't set "Server" header (caught by Ralf Mattes)
131 Documentation clarification for HEADER-OUT function
135 Added support for "HttpOnly" cookie attribute
139 Added *METHODS-FOR-POST-PARAMETERS* (suggested by Jonathon McKitrick)
143 Better support for WITH-TIMEOUT on SBCL/Win32 (thanks to Anton Vodonosov)
147 Now uses bound for flexi stream returned by RAW-POST-DATA
148 Needs FLEXI-STREAMS 0.12.0 or higher
153 Added declaration in server.lisp to appease SBCL
157 Fixes for OpenMCL (thanks to Lennart Staflin and Tiarnan O'Corrain)
161 Added server names and coupled them with easy handlers (suggested by Mac Chan)
162 Exported SESSION-COOKIE-VALUE instead of SESSION-STRING (suggested by Slava Akhmechet)
163 Documentation fixes (thanks to Victor Kryukov and Igor Plekhov)
167 Made MAYBE-INVOKE-DEBUGGER a generic function and exported it (suggested by Vladimir Sedach)
171 Fixed CREATE-FOLDER-DISPATCHER-AND-HANDLER in the presence of URL-encoded URLs (bug caught by Nicolas Lamirault)
175 Made DEF-HTTP-RETURN-CODE more flexible (suggested by Jong-won Choi)
179 Added PORT parameter to REDIRECT (suggested by Cyrus Harmon)
180 Exported REMOVE-SESSION (suggested by Vamsee Kanakala)
184 Added socket timeouts for AllegroCL
185 Catch IO timeout conditions for AllegroCL, SBCL and CMUCL (suggested by Red Daly and others)
186 Added per-server dispatch tables (suggested by Robert Synnott and Andrei Stebakov)
190 USE the CL package explicitly when defining HUNCHENTOOT-MP (bug report by Joel Boehland)
194 Correct behaviour for "100 Continue" responses
202 Don't use chunked encoding for empty (NIL) bodies
206 Really exported REASON-PHRASE this time (and also *CURRENT-PROCESS*)
210 Added HUNCHENTOOT-MP package (suggested by Cyrus Harmon)
211 Only invoke MARK-AND-SWEEP for 32-bit versions of LW (thanks to Chris Dean)
212 Exported REASON-PHRASE
216 Added *APPROVED-RETURN-CODES*, *HEADER-STREAM*, and +HTTP-FAILED-DEPENDENCY+
217 Exported MIME-TYPE and SSL-P
222 Added +HTTP-MULTI-STATUS+
226 Fix test suite to properly handle non-base characters in LW (bug caught by Jong-won Choi)
230 Fixed last change (thanks to Marko Kocic)
234 Development port (no threads) to SBCL/Win32 (patch by Marko Kocic)
235 Support for compilation without SSL
239 Don't use NSTRING-UPCASE for outgoing headers (bug caught by Saurabh Nanda)
240 Changed ProxyPass example in docs from /lisp to /hunchentoot
244 Reset to "faithful" external format on each iteration (bug caught by Viljo Marrandi and Ury Marshak)
248 Accept chunked transfer encoding for mod_lisp request bodies (thanks to Hugh Winkler's mod_lisp additions)
249 Robustify against erroneous form-data submissions (caught by Ury Marshak)
253 Even more flexible behaviour of RAW-POST-DATA
257 More flexible behaviour of RAW-POST-DATA
258 Robustified PARSE-CONTENT-TYPE
262 More meaningful results for RAW-POST-DATA
266 Added favicon.ico to example website (thanks to Yoni Rabkin Katzenell, Toby, and Uwe von Loh)
270 Added Hunchentoot logo by Uwe von Loh
274 Exported symbols related to session GC (suggested by Nico de Jager)
278 Added *HANDLE-HTTP-ERRORS-P* (thanks to Marijn Haverbeke)
279 Remove duplicate headers when reading from mod_lisp
283 Fixed HEADER-OUT (thanks to Robert J. Macomber)
287 Fixed bug in START-OUTPUT which confused mod_lisp
291 Changed behaviour of REAL-REMOTE-ADDR (as suggested by Robert J. Macomber)
292 Fixed COOKIE-OUT (thanks to Robert J. Macomber)
296 Don't bind *DISPATCH-TABLE* too early (thanks to Marijn Haverbeke)
300 Fixed bug in AUTHORIZATION function (reported by Michael J. Forster)
304 Correct SSL check in REDIRECT function
305 LOG-MESSAGE now checks for (BOUNDP '*SERVER*)
309 OpenMCL fixes (by Ralf Stoye)
313 No timeouts for mod_lisp servers (as in Hunchentoot 0.3.x)
317 Fixed a typo in easy-handlers.lisp (caught by Travis Cross)
321 Ported to CMUCL, SBCL, OpenMCL, and AllegroCL
323 Tons of small changes, too many to list them individually
327 Uses TBNL's WITH-DEBUGGER now
331 Added *CATCH-ERRORS-P* (from TBNL)
335 Accept HTTP requests with chunked transfer encoding
336 Use Chunga for chunking
340 Skip START-OUTPUT advice completely if working for TBNL
344 Added write timeouts for LW 5.0
345 Updated LW links in documentation
349 Serves as infrastructure for TBNL now (to replace KMRCL)
350 For HTTP/1.1 only send 'Keep-Alive' headers if explicitly requested
354 Connection headers are separated by commas, not semicolons
358 Refactored streams.lisp to appease LW compiler (thanks to Martin Simmons)
359 Changed handling of version string
360 Changed package handling in system definition (thanks to Christophe Rhodes)
364 Removed KMRCL workaround
368 Mention TBNL version number in server name header
372 Fixed package stuff and HYPERDOC support
376 Initial public release
378 [For earlier changes see the file "CHANGELOG_TBNL" that is included with the release.]