release 1.2.18
[hunchentoot.git] / CHANGELOG
blob48e5081734963a9146db24c22a51fbda8df5c25c
1 Version 1.2.18
2 2013-05-03
3 Prevent errors when basic auth user or password contains colon
4 Add missing implementation for client-as-string for Lispworks, contributed by Raymond Wiker
6 Version 1.2.17
7 2013-04-01
8 New START-THREAD API function (Faré Rideau)
10 Version 1.2.16
11 2013-03-31
12 Fix bug that caused error when requesting nonexistent page.
14 Version 1.2.15
15 2013-03-17
16 Fix race condition in acceptor shutdown (Faré Rideau)
18 Version 1.2.14
19 2013-03-08
20 Call ACCEPTOR-STATUS-MESSAGE in a saner and more useful fashion (sponsored by Ron Garret)
22 Version 1.2.13
23 2013-03-03
24 fix wrong documented signature in acceptor-status-message (reported by Zach Beane)
26 Version 1.2.12
27 2013-03-03
28 Various documentation updates
29 Fix bug in static file handling that caused Safari to hang on 304 responses by Hunchentoot (reported by Wim Oudshoorn)
31 Version 1.2.11
32 2013-01-27
33 Fix bug in MD5-HEX that could cause session keys to be reused
35 Version 1.2.10
36 2013-01-19
37 Add local-addr* and local-port* functions
39 Version 1.2.9
40 2012-12-28
41 Fix test script to accomodate for Drakma fix regarding redirect from POST to GET
42 Fix range handling once again
44 Version 1.2.8
45 2012-12-19
46 ECL fixes (Juan Jose Giarcia-Ripoll)
48 Version 1.2.7
49 2012-10-19
50 Fix documentation for COOKIE-IN, which returns a string, not a cookie.
51 Hunchentoot could not deal with / pointing to a static file directory (Stas Boukarev).
52 Fixes to pathname sanitizing when handling static files.
53 Further Range: header handling fixes
54 Fix some export names relating to taskmaster thread count (Faré Rideau)
56 Version 1.2.6
57 2012-09-02
58 Doc fixes, add .pre-release.sh script
60 Version 1.2.5
61 2012-09-02
62 High-load multithread stability fixes (Mathieu Lemoine)
64 Version 1.2.4
65 2012-08-16
66 Remove dead code & style fixes (Ala'a Mohammad)
67 Bug fix: setting *print-base* / *print-radix* caused invalid cookie values (Scott L. Burson)
68 Various documentation and style updates
69 Fix documentation bug found (Mathieu Lemoine)
70 Fix bug that could hang Hunchentoot under load (Mathieu Lemoine)
72 Version 1.2.3
73 2012-03-03
74 Fix crash when error occurs while logging error (reported by Xu Jingtao)
75 Fix compilation with :hunchentoot-no-ssl feature (Mark Evenson)
76 Fix Range header handling (Simon Sandlund)
77 Export acceptor-remove-session
78 ECL timeout support (Juan Jose Giarcia-Ripoll)
79 Changed cookie handling - Hunchentoot no longer encodes cookies
80 automatically.  Applications must make sure that they only set cookies
81 to permitted values (refer to RFC6265 for the details, thanks to Ralf
82 Stoye for debugging help)
84 Version 1.2.2
85 2011-11-30
86 Fix warning on LispWorks (Nico de Jager)
87 Documentation updates
88 Remove obsolete symbols from export list
89 Add easy-ssl-acceptor
90 Document acceptor-remove-session, remove obsolete *session-removal-hook* export (Issue #15)
91 Added :description to asdf system definition
92 Add documentation section describing how to bind to privileged ports
94 Version 1.2.1
95 2011-11-04
96 Use FINISH-OUTPUT instead of FORCE-OUTPUT at connection end (I. Perminov)
97 Documentation updates
98 External format EOL style fixes for Windows (Anton Kovalenko)
100 Version 1.2.0
101 2011-10-30
102 Fix to allow send-service-unavailable-reply to work (Faré Rideau)
103 Make sure we always have a cooked message to send in case of error (Faré Rideau)
104 Add www/ directory with default file tree that is being served
105 Add error template mechanism and improve error reporting in general.
106 Improve automatic testing, SBCL kludge to support asdf:test-op
107 Allegro CL modern mode fixes
108 Fix bugs in serving partial responses
109 Limit maximum number of threads that Hunchentoot creates (Dan Weinreb, Scott McKay)
110 Export fixes (Gordon Sims, Andrey Moskvitin, Faré Rideau)
111 Factor out easy-handler logic into separate acceptor subclass
112 Export two session functions (Nico de Jager)
113 Allow no Content-Type header (Chaitanya Gupta)
114 Patch for compilation with ECL (Sohail Somani)
115 Fix DEFINE-EASY-HANDLER for multiple acceptors (Nicolas Neuss)
116 Revived *SHOW-LISP-BACKTRACES-P*
117 Made sure "100 Continue" is returned even if the client sends "Expect: 100-continue" twice (reported by Gordon Sims)
118 Fixed typo in code which interprets transfer encodings
120 Version 1.1.1
121 2010-08-24
122 Exported WITHIN-REQUEST-P (Faré Rideau)
123 Safeguard measures against XSS attacks (J.P. Larocque)
124 Prevent potential leak when closing stream (Matt Lamari, Martin Simmons)
125 Change some occurrences of HANDLER-CASE* to HANDLER-CASE (Hans Hübner, Allan Dee)
127 Version 1.1.0
128 2010-01-08
129 Architectural changes - see HANDLE-REQUEST (thanks to Andreas Fuchs and Frode Fjeld)
130 Re-introduced *CATCH-ERRORS-P* and MAYBE-INVOKE-DEBUGGER
131 Integration with trivial-backtrace (see *LOG-LISP-BACKTRACES-P*)
132 Treat :UNSPECIFIC like NIL in pathname components (reported by Frode Fjeld)
133 Fixed RESET-SESSIONS
134 Prepared for LispWorks 6 (Nico de Jager)
135 Fixed reading of post parameters (Peter Seibel and Stephen P. Compall)
136 Fixed STOP by supplying the :READY-ONLY keyword to USOCKET:WAIT-FOR-INPUT
137 Enabled SSL key passwords for Lisps other than LW (Vsevolod)
139 Version 1.0.0
140 2009-02-19
141 Complete architectural redesign (together with Hans Hübner)
142 Lots of small fixes and improvements, too many to enumerate here
144 Version 0.15.6
145 2008-04-09
146 Fixed embarrassingly mis-placed parentheses (thanks to Hans Hübner)
148 Version 0.15.5
149 2008-04-08
150 Removed FORCE-OUTPUT* and thus the ACL-COMPAT dependency (thanks to Hans Hübner)
151 Support for MP-less CMUCL (thanks to Hans Hübner)
153 Version 0.15.4
154 2008-03-27
155 Fixed unportable LOOP usage (caught by "C S S")
157 Version 0.15.3
158 2008-03-17
159 Added CODE parameter to REDIRECT (thanks to Michael Weber)
161 Version 0.15.2
162 2008-03-06
163 Fixed typo in test.lisp (thanks to Ben Hyde)
164 Changed wrong usage of EQ to EQL (thanks to Ariel Badichi)
165 Fixed typo in default handler (thanks to Eugene Ossintsev)
167 Version 0.15.1
168 2008-02-13
169 Uses CL-FAD for HANDLE-STATIC-FILE now
170 Better error reporting for CREATE-FOLDER-DISPATCHER-AND-HANDLER (suggested by Cyrus Harmon)
171 Faster version of WRITE-HEADER-LINE (thanks to V. Segu�)
173 Version 0.15.0
174 2007-12-29
175 Added support for CLISP (thanks to Anton Vodonosov)
177 Version 0.14.7
178 2007-11-15
179 Replace ENOUGH-NAMESTRING with ENOUGH-URL (patch by Kilian Sprotte and Hans Hübner)
181 Version 0.14.6
182 2007-11-08
183 Fix compilation order (thanks to Tiarnan O'Corrain and Chris Dean)
185 Version 0.14.5
186 2007-10-21
187 Robustified MAKE-SOCKET-STREAM against potential leak (thanks to Alain Picard)
188 Replaced #-FOO #-FOO constructs for OpenMCL (patch by Michael Weber)
189 Updated tutorial links
191 Version 0.14.4
192 2007-10-20
193 Made log stream shared on OpenMCL (thanks to Gary Byers)
195 Version 0.14.3
196 2007-10-07
197 Enabled GET-GID-FROM-NAME for newer versions of SBCL (patch by Cyrus Harmon)
199 Version 0.14.2
200 2007-09-26
201 Better handling of PORT parameter in REDIRECT (thanks to Vladimir Sedach)
203 Version 0.14.1
204 2007-09-24
205 Fixed bug where you couldn't set "Server" header (caught by Ralf Mattes)
206 Documentation clarification for HEADER-OUT function
208 Version 0.14.0
209 2007-09-18
210 Added support for "HttpOnly" cookie attribute
212 Version 0.13.0
213 2007-09-14
214 Added *METHODS-FOR-POST-PARAMETERS* (suggested by Jonathon McKitrick)
216 Version 0.12.1
217 2007-09-13
218 Better support for WITH-TIMEOUT on SBCL/Win32 (thanks to Anton Vodonosov)
220 Version 0.12.0
221 2007-09-07
222 Now uses bound for flexi stream returned by RAW-POST-DATA
223 Needs FLEXI-STREAMS 0.12.0 or higher
225 Version 0.11.2
226 2007-09-05
227 Fixed typo in docs
228 Added declaration in server.lisp to appease SBCL
230 Version 0.11.1
231 2007-05-25
232 Fixes for OpenMCL (thanks to Lennart Staflin and Tiarnan O'Corrain)
234 Version 0.11.0
235 2007-05-25
236 Added server names and coupled them with easy handlers (suggested by Mac Chan)
237 Exported SESSION-COOKIE-VALUE instead of SESSION-STRING (suggested by Slava Akhmechet)
238 Documentation fixes (thanks to Victor Kryukov and Igor Plekhov)
240 Version 0.10.0
241 2007-05-12
242 Made MAYBE-INVOKE-DEBUGGER a generic function and exported it (suggested by Vladimir Sedach)
244 Version 0.9.3
245 2007-05-08
246 Fixed CREATE-FOLDER-DISPATCHER-AND-HANDLER in the presence of URL-encoded URLs (bug caught by Nicolas Lamirault)
248 Version 0.9.2
249 2007-05-01
250 Made DEF-HTTP-RETURN-CODE more flexible (suggested by Jong-won Choi)
252 Version 0.9.1
253 2007-04-29
254 Added PORT parameter to REDIRECT (suggested by Cyrus Harmon)
255 Exported REMOVE-SESSION (suggested by Vamsee Kanakala)
257 Version 0.9.0
258 2007-04-19
259 Added socket timeouts for AllegroCL
260 Catch IO timeout conditions for AllegroCL, SBCL and CMUCL (suggested by Red Daly and others)
261 Added per-server dispatch tables (suggested by Robert Synnott and Andrei Stebakov)
263 Version 0.8.6
264 2007-04-18
265 USE the CL package explicitly when defining HUNCHENTOOT-MP (bug report by Joel Boehland)
267 Version 0.8.5
268 2007-04-10
269 Correct behaviour for "100 Continue" responses
271 Version 0.8.4
272 2007-04-09
273 Cleanup
275 Version 0.8.3
276 2007-04-07
277 Don't use chunked encoding for empty (NIL) bodies
279 Version 0.8.2
280 2007-04-05
281 Really exported REASON-PHRASE this time (and also *CURRENT-PROCESS*)
283 Version 0.8.1
284 2007-04-04
285 Added HUNCHENTOOT-MP package (suggested by Cyrus Harmon)
286 Only invoke MARK-AND-SWEEP for 32-bit versions of LW (thanks to Chris Dean)
287 Exported REASON-PHRASE
289 Version 0.8.0
290 2007-03-31
291 Added *APPROVED-RETURN-CODES*, *HEADER-STREAM*, and +HTTP-FAILED-DEPENDENCY+
292 Exported MIME-TYPE and SSL-P
293 Some minor changes
295 Version 0.7.3
296 2007-03-28
297 Added +HTTP-MULTI-STATUS+
299 Version 0.7.2
300 2007-03-09
301 Fix test suite to properly handle non-base characters in LW (bug caught by Jong-won Choi)
303 Version 0.7.1
304 2007-03-09
305 Fixed last change (thanks to Marko Kocic)
307 Version 0.7.0
308 2007-03-09
309 Development port (no threads) to SBCL/Win32 (patch by Marko Kocic)
310 Support for compilation without SSL
312 Version 0.6.2
313 2007-02-22
314 Don't use NSTRING-UPCASE for outgoing headers (bug caught by Saurabh Nanda)
315 Changed ProxyPass example in docs from /lisp to /hunchentoot
317 Version 0.6.1
318 2007-01-24
319 Reset to "faithful" external format on each iteration (bug caught by Viljo Marrandi and Ury Marshak)
321 Version 0.6.0
322 2007-01-23
323 Accept chunked transfer encoding for mod_lisp request bodies (thanks to Hugh Winkler's mod_lisp additions)
324 Robustify against erroneous form-data submissions (caught by Ury Marshak)
326 Version 0.5.1
327 2007-01-18
328 Even more flexible behaviour of RAW-POST-DATA
330 Version 0.5.0
331 2007-01-17
332 More flexible behaviour of RAW-POST-DATA
333 Robustified PARSE-CONTENT-TYPE
335 Version 0.4.14
336 2007-01-17
337 More meaningful results for RAW-POST-DATA
339 Version 0.4.13
340 2007-01-14
341 Added favicon.ico to example website (thanks to Yoni Rabkin Katzenell, Toby, and Uwe von Loh)
343 Version 0.4.12
344 2006-12-27
345 Added Hunchentoot logo by Uwe von Loh
347 Version 0.4.11
348 2006-12-01
349 Exported symbols related to session GC (suggested by Nico de Jager)
351 Version 0.4.10
352 2006-11-19
353 Added *HANDLE-HTTP-ERRORS-P* (thanks to Marijn Haverbeke)
354 Remove duplicate headers when reading from mod_lisp
356 Version 0.4.9
357 2006-11-12
358 Fixed HEADER-OUT (thanks to Robert J. Macomber)
360 Version 0.4.8
361 2006-11-06
362 Fixed bug in START-OUTPUT which confused mod_lisp
364 Version 0.4.7
365 2006-11-06
366 Changed behaviour of REAL-REMOTE-ADDR (as suggested by Robert J. Macomber)
367 Fixed COOKIE-OUT (thanks to Robert J. Macomber)
369 Version 0.4.6
370 2006-11-05
371 Don't bind *DISPATCH-TABLE* too early (thanks to Marijn Haverbeke)
373 Version 0.4.5
374 2006-10-25
375 Fixed bug in AUTHORIZATION function (reported by Michael J. Forster)
377 Version 0.4.4
378 2006-10-12
379 Correct SSL check in REDIRECT function
380 LOG-MESSAGE now checks for (BOUNDP '*SERVER*)
382 Version 0.4.3
383 2006-10-11
384 OpenMCL fixes (by Ralf Stoye)
386 Version 0.4.2
387 2006-10-10
388 No timeouts for mod_lisp servers (as in Hunchentoot 0.3.x)
390 Version 0.4.1
391 2006-10-10
392 Fixed a typo in easy-handlers.lisp (caught by Travis Cross)
394 Version 0.4.0
395 2006-10-10
396 Ported to CMUCL, SBCL, OpenMCL, and AllegroCL
397 Merged with TBNL
398 Tons of small changes, too many to list them individually
400 Version 0.3.2
401 2006-09-14
402 Uses TBNL's WITH-DEBUGGER now
404 Version 0.3.1
405 2006-09-14
406 Added *CATCH-ERRORS-P* (from TBNL)
408 Version 0.3.0
409 2006-09-05
410 Accept HTTP requests with chunked transfer encoding
411 Use Chunga for chunking
413 Version 0.2.2
414 2006-08-31
415 Skip START-OUTPUT advice completely if working for TBNL
417 Version 0.2.1
418 2006-08-28
419 Added write timeouts for LW 5.0
420 Updated LW links in documentation
422 Version 0.2.0
423 2006-08-28
424 Serves as infrastructure for TBNL now (to replace KMRCL)
425 For HTTP/1.1 only send 'Keep-Alive' headers if explicitly requested
427 Version 0.1.5
428 2006-08-23
429 Connection headers are separated by commas, not semicolons
431 Version 0.1.4
432 2006-08-22
433 Refactored streams.lisp to appease LW compiler (thanks to Martin Simmons)
434 Changed handling of version string
435 Changed package handling in system definition (thanks to Christophe Rhodes)
437 Version 0.1.3
438 2006-02-08
439 Removed KMRCL workaround
441 Version 0.1.2
442 2006-01-03
443 Mention TBNL version number in server name header
445 Version 0.1.1
446 2005-12-31
447 Fixed package stuff and HYPERDOC support
449 Version 0.1.0
450 2005-12-31
451 Initial public release
453 [For earlier changes see the file "CHANGELOG_TBNL" that is included with the release.]