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