"Connection: close" on unthreaded builds
[hunchentoot.git] / CHANGELOG
blob18ee951e324830355781c1ef3ac95387c1520dd2
1 Version 1.2.31
2 2015-03-06
3 Adds HttpOnly and remove cookie on remove-session (Florian MARGAINE)
5 Version 1.2.30
6 2015-02-25
7 Clear content-length before emitting 304 (Jason Miller)
8 Treat errors during url decoding as bad requests. (Stas Boukarev)
10 Version 1.2.29
11 2014-11-30
12 temporarily revert ipv6 changes (Hans Huebner)
14 Version 1.2.28
15 2014-11-28
16 Remove dead links and update support information (Hans Huebner)
17 restore listening to usocket:*wildcard-host* (Hans Huebner)
18 deal with IPv6 addresses from usocket (Hans Huebner)
19 eliminate duplicate logging of warnings (reported by loke) (Hans Huebner)
20 add DETACH-SOCKET function (Hans Huebner)
21 Add the ability to prevent the sockets from being closed after a request has been processed. (Elias Mårtenson)
22 document *FINISH-PROCESSING-SOCKET* (Hans Huebner)
23 Make check for stream timeouts more robust (Raymond Wiker)
25 Version 1.2.27
26 2014-05-18
27 fix warning about missing NAME keyword arg at start-thread (Mark H. David)
28 remove tbnl-announce list (Hans Huebner)
29 correct speling eror (Hans Huebner)
30 Update request.lisp (muyinliu)
31 file upload file name encoding error fixed (muyinliu)
32 support use of logical file names for document-root and error-template-directory (Hans Huebner)
33 Generate www/hunchentoot-doc.html. (Stas Boukarev)
34 Remove mentions of asdf-install and the darcs mirror from docs. (Stas Boukarev)
36 Version 1.2.26
37 2014-01-18
38 Optimize get-peer/local-address-and-port. (Stas Boukarev)
39 Close SSL streams after processing connection. (Stas Boukarev)
41 Version 1.2.25
42 2014-01-17
43 allow for handler setting of the "connection" header (William Halliburton)
45 Version 1.2.24
46 2014-01-07
47 Use version number from ASDF system definition, not special var (Hans Huebner)
49 Version 1.2.23
50 2014-01-05
51 Don't set the Connection header to Close if it's already set (AndrejSuc/Stas Boukarev)
53 Version 1.2.22
54 2013-12-09
55 Print header value (if number) in base 10 (Chaitanya Gupta)
56 Fix for CLISP compilation (Anton Vodonosov)
58 Version 1.2.21
59 2013-10-04
60 Fix capitalization inconsistencies in docs (reported by Stas Boukarev)
62 Version 1.2.20
63 2013-10-04
64 Don't rely on asdf to find default document directory
65 Add m4v mime type (Wes Henderson)
67 Version 1.2.19
68 2013-07-28
69 Fix ACCEPTOR-REMOVE-SESSION default implementation (Stas Boukarev, Mathieu Lemoine)
71 Version 1.2.18
72 2013-05-03
73 Prevent errors when basic auth user or password contains colon
74 Add missing implementation for client-as-string for Lispworks, contributed by Raymond Wiker
76 Version 1.2.17
77 2013-04-01
78 New START-THREAD API function (Faré Rideau)
80 Version 1.2.16
81 2013-03-31
82 Fix bug that caused error when requesting nonexistent page.
84 Version 1.2.15
85 2013-03-17
86 Fix race condition in acceptor shutdown (Faré Rideau)
88 Version 1.2.14
89 2013-03-08
90 Call ACCEPTOR-STATUS-MESSAGE in a saner and more useful fashion (sponsored by Ron Garret)
92 Version 1.2.13
93 2013-03-03
94 fix wrong documented signature in acceptor-status-message (reported by Zach Beane)
96 Version 1.2.12
97 2013-03-03
98 Various documentation updates
99 Fix bug in static file handling that caused Safari to hang on 304 responses by Hunchentoot (reported by Wim Oudshoorn)
101 Version 1.2.11
102 2013-01-27
103 Fix bug in MD5-HEX that could cause session keys to be reused
105 Version 1.2.10
106 2013-01-19
107 Add local-addr* and local-port* functions
109 Version 1.2.9
110 2012-12-28
111 Fix test script to accomodate for Drakma fix regarding redirect from POST to GET
112 Fix range handling once again
114 Version 1.2.8
115 2012-12-19
116 ECL fixes (Juan Jose Giarcia-Ripoll)
118 Version 1.2.7
119 2012-10-19
120 Fix documentation for COOKIE-IN, which returns a string, not a cookie.
121 Hunchentoot could not deal with / pointing to a static file directory (Stas Boukarev).
122 Fixes to pathname sanitizing when handling static files.
123 Further Range: header handling fixes
124 Fix some export names relating to taskmaster thread count (Faré Rideau)
126 Version 1.2.6
127 2012-09-02
128 Doc fixes, add .pre-release.sh script
130 Version 1.2.5
131 2012-09-02
132 High-load multithread stability fixes (Mathieu Lemoine)
134 Version 1.2.4
135 2012-08-16
136 Remove dead code & style fixes (Ala'a Mohammad)
137 Bug fix: setting *print-base* / *print-radix* caused invalid cookie values (Scott L. Burson)
138 Various documentation and style updates
139 Fix documentation bug found (Mathieu Lemoine)
140 Fix bug that could hang Hunchentoot under load (Mathieu Lemoine)
142 Version 1.2.3
143 2012-03-03
144 Fix crash when error occurs while logging error (reported by Xu Jingtao)
145 Fix compilation with :hunchentoot-no-ssl feature (Mark Evenson)
146 Fix Range header handling (Simon Sandlund)
147 Export acceptor-remove-session
148 ECL timeout support (Juan Jose Giarcia-Ripoll)
149 Changed cookie handling - Hunchentoot no longer encodes cookies
150 automatically.  Applications must make sure that they only set cookies
151 to permitted values (refer to RFC6265 for the details, thanks to Ralf
152 Stoye for debugging help)
154 Version 1.2.2
155 2011-11-30
156 Fix warning on LispWorks (Nico de Jager)
157 Documentation updates
158 Remove obsolete symbols from export list
159 Add easy-ssl-acceptor
160 Document acceptor-remove-session, remove obsolete *session-removal-hook* export (Issue #15)
161 Added :description to asdf system definition
162 Add documentation section describing how to bind to privileged ports
164 Version 1.2.1
165 2011-11-04
166 Use FINISH-OUTPUT instead of FORCE-OUTPUT at connection end (I. Perminov)
167 Documentation updates
168 External format EOL style fixes for Windows (Anton Kovalenko)
170 Version 1.2.0
171 2011-10-30
172 Fix to allow send-service-unavailable-reply to work (Faré Rideau)
173 Make sure we always have a cooked message to send in case of error (Faré Rideau)
174 Add www/ directory with default file tree that is being served
175 Add error template mechanism and improve error reporting in general.
176 Improve automatic testing, SBCL kludge to support asdf:test-op
177 Allegro CL modern mode fixes
178 Fix bugs in serving partial responses
179 Limit maximum number of threads that Hunchentoot creates (Dan Weinreb, Scott McKay)
180 Export fixes (Gordon Sims, Andrey Moskvitin, Faré Rideau)
181 Factor out easy-handler logic into separate acceptor subclass
182 Export two session functions (Nico de Jager)
183 Allow no Content-Type header (Chaitanya Gupta)
184 Patch for compilation with ECL (Sohail Somani)
185 Fix DEFINE-EASY-HANDLER for multiple acceptors (Nicolas Neuss)
186 Revived *SHOW-LISP-BACKTRACES-P*
187 Made sure "100 Continue" is returned even if the client sends "Expect: 100-continue" twice (reported by Gordon Sims)
188 Fixed typo in code which interprets transfer encodings
190 Version 1.1.1
191 2010-08-24
192 Exported WITHIN-REQUEST-P (Faré Rideau)
193 Safeguard measures against XSS attacks (J.P. Larocque)
194 Prevent potential leak when closing stream (Matt Lamari, Martin Simmons)
195 Change some occurrences of HANDLER-CASE* to HANDLER-CASE (Hans Hübner, Allan Dee)
197 Version 1.1.0
198 2010-01-08
199 Architectural changes - see HANDLE-REQUEST (thanks to Andreas Fuchs and Frode Fjeld)
200 Re-introduced *CATCH-ERRORS-P* and MAYBE-INVOKE-DEBUGGER
201 Integration with trivial-backtrace (see *LOG-LISP-BACKTRACES-P*)
202 Treat :UNSPECIFIC like NIL in pathname components (reported by Frode Fjeld)
203 Fixed RESET-SESSIONS
204 Prepared for LispWorks 6 (Nico de Jager)
205 Fixed reading of post parameters (Peter Seibel and Stephen P. Compall)
206 Fixed STOP by supplying the :READY-ONLY keyword to USOCKET:WAIT-FOR-INPUT
207 Enabled SSL key passwords for Lisps other than LW (Vsevolod)
209 Version 1.0.0
210 2009-02-19
211 Complete architectural redesign (together with Hans Hübner)
212 Lots of small fixes and improvements, too many to enumerate here
214 Version 0.15.6
215 2008-04-09
216 Fixed embarrassingly mis-placed parentheses (thanks to Hans Hübner)
218 Version 0.15.5
219 2008-04-08
220 Removed FORCE-OUTPUT* and thus the ACL-COMPAT dependency (thanks to Hans Hübner)
221 Support for MP-less CMUCL (thanks to Hans Hübner)
223 Version 0.15.4
224 2008-03-27
225 Fixed unportable LOOP usage (caught by "C S S")
227 Version 0.15.3
228 2008-03-17
229 Added CODE parameter to REDIRECT (thanks to Michael Weber)
231 Version 0.15.2
232 2008-03-06
233 Fixed typo in test.lisp (thanks to Ben Hyde)
234 Changed wrong usage of EQ to EQL (thanks to Ariel Badichi)
235 Fixed typo in default handler (thanks to Eugene Ossintsev)
237 Version 0.15.1
238 2008-02-13
239 Uses CL-FAD for HANDLE-STATIC-FILE now
240 Better error reporting for CREATE-FOLDER-DISPATCHER-AND-HANDLER (suggested by Cyrus Harmon)
241 Faster version of WRITE-HEADER-LINE (thanks to V. Segu�)
243 Version 0.15.0
244 2007-12-29
245 Added support for CLISP (thanks to Anton Vodonosov)
247 Version 0.14.7
248 2007-11-15
249 Replace ENOUGH-NAMESTRING with ENOUGH-URL (patch by Kilian Sprotte and Hans Hübner)
251 Version 0.14.6
252 2007-11-08
253 Fix compilation order (thanks to Tiarnan O'Corrain and Chris Dean)
255 Version 0.14.5
256 2007-10-21
257 Robustified MAKE-SOCKET-STREAM against potential leak (thanks to Alain Picard)
258 Replaced #-FOO #-FOO constructs for OpenMCL (patch by Michael Weber)
259 Updated tutorial links
261 Version 0.14.4
262 2007-10-20
263 Made log stream shared on OpenMCL (thanks to Gary Byers)
265 Version 0.14.3
266 2007-10-07
267 Enabled GET-GID-FROM-NAME for newer versions of SBCL (patch by Cyrus Harmon)
269 Version 0.14.2
270 2007-09-26
271 Better handling of PORT parameter in REDIRECT (thanks to Vladimir Sedach)
273 Version 0.14.1
274 2007-09-24
275 Fixed bug where you couldn't set "Server" header (caught by Ralf Mattes)
276 Documentation clarification for HEADER-OUT function
278 Version 0.14.0
279 2007-09-18
280 Added support for "HttpOnly" cookie attribute
282 Version 0.13.0
283 2007-09-14
284 Added *METHODS-FOR-POST-PARAMETERS* (suggested by Jonathon McKitrick)
286 Version 0.12.1
287 2007-09-13
288 Better support for WITH-TIMEOUT on SBCL/Win32 (thanks to Anton Vodonosov)
290 Version 0.12.0
291 2007-09-07
292 Now uses bound for flexi stream returned by RAW-POST-DATA
293 Needs FLEXI-STREAMS 0.12.0 or higher
295 Version 0.11.2
296 2007-09-05
297 Fixed typo in docs
298 Added declaration in server.lisp to appease SBCL
300 Version 0.11.1
301 2007-05-25
302 Fixes for OpenMCL (thanks to Lennart Staflin and Tiarnan O'Corrain)
304 Version 0.11.0
305 2007-05-25
306 Added server names and coupled them with easy handlers (suggested by Mac Chan)
307 Exported SESSION-COOKIE-VALUE instead of SESSION-STRING (suggested by Slava Akhmechet)
308 Documentation fixes (thanks to Victor Kryukov and Igor Plekhov)
310 Version 0.10.0
311 2007-05-12
312 Made MAYBE-INVOKE-DEBUGGER a generic function and exported it (suggested by Vladimir Sedach)
314 Version 0.9.3
315 2007-05-08
316 Fixed CREATE-FOLDER-DISPATCHER-AND-HANDLER in the presence of URL-encoded URLs (bug caught by Nicolas Lamirault)
318 Version 0.9.2
319 2007-05-01
320 Made DEF-HTTP-RETURN-CODE more flexible (suggested by Jong-won Choi)
322 Version 0.9.1
323 2007-04-29
324 Added PORT parameter to REDIRECT (suggested by Cyrus Harmon)
325 Exported REMOVE-SESSION (suggested by Vamsee Kanakala)
327 Version 0.9.0
328 2007-04-19
329 Added socket timeouts for AllegroCL
330 Catch IO timeout conditions for AllegroCL, SBCL and CMUCL (suggested by Red Daly and others)
331 Added per-server dispatch tables (suggested by Robert Synnott and Andrei Stebakov)
333 Version 0.8.6
334 2007-04-18
335 USE the CL package explicitly when defining HUNCHENTOOT-MP (bug report by Joel Boehland)
337 Version 0.8.5
338 2007-04-10
339 Correct behaviour for "100 Continue" responses
341 Version 0.8.4
342 2007-04-09
343 Cleanup
345 Version 0.8.3
346 2007-04-07
347 Don't use chunked encoding for empty (NIL) bodies
349 Version 0.8.2
350 2007-04-05
351 Really exported REASON-PHRASE this time (and also *CURRENT-PROCESS*)
353 Version 0.8.1
354 2007-04-04
355 Added HUNCHENTOOT-MP package (suggested by Cyrus Harmon)
356 Only invoke MARK-AND-SWEEP for 32-bit versions of LW (thanks to Chris Dean)
357 Exported REASON-PHRASE
359 Version 0.8.0
360 2007-03-31
361 Added *APPROVED-RETURN-CODES*, *HEADER-STREAM*, and +HTTP-FAILED-DEPENDENCY+
362 Exported MIME-TYPE and SSL-P
363 Some minor changes
365 Version 0.7.3
366 2007-03-28
367 Added +HTTP-MULTI-STATUS+
369 Version 0.7.2
370 2007-03-09
371 Fix test suite to properly handle non-base characters in LW (bug caught by Jong-won Choi)
373 Version 0.7.1
374 2007-03-09
375 Fixed last change (thanks to Marko Kocic)
377 Version 0.7.0
378 2007-03-09
379 Development port (no threads) to SBCL/Win32 (patch by Marko Kocic)
380 Support for compilation without SSL
382 Version 0.6.2
383 2007-02-22
384 Don't use NSTRING-UPCASE for outgoing headers (bug caught by Saurabh Nanda)
385 Changed ProxyPass example in docs from /lisp to /hunchentoot
387 Version 0.6.1
388 2007-01-24
389 Reset to "faithful" external format on each iteration (bug caught by Viljo Marrandi and Ury Marshak)
391 Version 0.6.0
392 2007-01-23
393 Accept chunked transfer encoding for mod_lisp request bodies (thanks to Hugh Winkler's mod_lisp additions)
394 Robustify against erroneous form-data submissions (caught by Ury Marshak)
396 Version 0.5.1
397 2007-01-18
398 Even more flexible behaviour of RAW-POST-DATA
400 Version 0.5.0
401 2007-01-17
402 More flexible behaviour of RAW-POST-DATA
403 Robustified PARSE-CONTENT-TYPE
405 Version 0.4.14
406 2007-01-17
407 More meaningful results for RAW-POST-DATA
409 Version 0.4.13
410 2007-01-14
411 Added favicon.ico to example website (thanks to Yoni Rabkin Katzenell, Toby, and Uwe von Loh)
413 Version 0.4.12
414 2006-12-27
415 Added Hunchentoot logo by Uwe von Loh
417 Version 0.4.11
418 2006-12-01
419 Exported symbols related to session GC (suggested by Nico de Jager)
421 Version 0.4.10
422 2006-11-19
423 Added *HANDLE-HTTP-ERRORS-P* (thanks to Marijn Haverbeke)
424 Remove duplicate headers when reading from mod_lisp
426 Version 0.4.9
427 2006-11-12
428 Fixed HEADER-OUT (thanks to Robert J. Macomber)
430 Version 0.4.8
431 2006-11-06
432 Fixed bug in START-OUTPUT which confused mod_lisp
434 Version 0.4.7
435 2006-11-06
436 Changed behaviour of REAL-REMOTE-ADDR (as suggested by Robert J. Macomber)
437 Fixed COOKIE-OUT (thanks to Robert J. Macomber)
439 Version 0.4.6
440 2006-11-05
441 Don't bind *DISPATCH-TABLE* too early (thanks to Marijn Haverbeke)
443 Version 0.4.5
444 2006-10-25
445 Fixed bug in AUTHORIZATION function (reported by Michael J. Forster)
447 Version 0.4.4
448 2006-10-12
449 Correct SSL check in REDIRECT function
450 LOG-MESSAGE now checks for (BOUNDP '*SERVER*)
452 Version 0.4.3
453 2006-10-11
454 OpenMCL fixes (by Ralf Stoye)
456 Version 0.4.2
457 2006-10-10
458 No timeouts for mod_lisp servers (as in Hunchentoot 0.3.x)
460 Version 0.4.1
461 2006-10-10
462 Fixed a typo in easy-handlers.lisp (caught by Travis Cross)
464 Version 0.4.0
465 2006-10-10
466 Ported to CMUCL, SBCL, OpenMCL, and AllegroCL
467 Merged with TBNL
468 Tons of small changes, too many to list them individually
470 Version 0.3.2
471 2006-09-14
472 Uses TBNL's WITH-DEBUGGER now
474 Version 0.3.1
475 2006-09-14
476 Added *CATCH-ERRORS-P* (from TBNL)
478 Version 0.3.0
479 2006-09-05
480 Accept HTTP requests with chunked transfer encoding
481 Use Chunga for chunking
483 Version 0.2.2
484 2006-08-31
485 Skip START-OUTPUT advice completely if working for TBNL
487 Version 0.2.1
488 2006-08-28
489 Added write timeouts for LW 5.0
490 Updated LW links in documentation
492 Version 0.2.0
493 2006-08-28
494 Serves as infrastructure for TBNL now (to replace KMRCL)
495 For HTTP/1.1 only send 'Keep-Alive' headers if explicitly requested
497 Version 0.1.5
498 2006-08-23
499 Connection headers are separated by commas, not semicolons
501 Version 0.1.4
502 2006-08-22
503 Refactored streams.lisp to appease LW compiler (thanks to Martin Simmons)
504 Changed handling of version string
505 Changed package handling in system definition (thanks to Christophe Rhodes)
507 Version 0.1.3
508 2006-02-08
509 Removed KMRCL workaround
511 Version 0.1.2
512 2006-01-03
513 Mention TBNL version number in server name header
515 Version 0.1.1
516 2005-12-31
517 Fixed package stuff and HYPERDOC support
519 Version 0.1.0
520 2005-12-31
521 Initial public release
523 [For earlier changes see the file "CHANGELOG_TBNL" that is included with the release.]