Sunday, October 30, 2011

Hunchentoot v1.2.0 released

After over a year of no releases, Hunchentoot v1.2.0 is out. It incorporates a large number of changes from various people and is the first release that I have made as the maintainer of Hunchentoot. There have been a fair number of changes, many of them contributed by Hunchentoot's users. Thank you all for that!

The release tarball is available here:

This is my first release, and as such it is likely that I'm not yet up to the release standards that Edi has set forth. Please report any problems you may have with the new version to the Hunchentoot mailing list. I will try to resolve problems quickly and possible make a new minor release for each major problem found.

The development repository for Hunchentoot is now hosted on github. If you want to contribute, it would be appreciated if you could submit your patches through github, too.

Here is a list of changes:

  • Add www/ directory with default file tree that is being served
  • Add error template mechanism and improve error reporting in general.
  • Improve automatic testing, SBCL kludge to support asdf:test-op
  • Allegro CL modern mode fixes
  • Fix bugs in serving partial responses
  • Limit maximum number of threads that Hunchentoot creates (Dan Weinreb, Scott McKay)
  • Export fixes (Gordon Sims, Andrey Moskvitin)
  • Factor out easy-handler logic into separate acceptor subclass
  • Export two session functions (Nico de Jager)
  • Allow no Content-Type header (Chaitanya Gupta)
  • Patch for compilation with ECL (Sohail Somani)
  • Fix DEFINE-EASY-HANDLER for multiple acceptors (Nicolas Neuss)
  • Made sure "100 Continue" is returned even if the client sends "Expect: 100-continue" twice (reported by Gordon Sims)
  • Fixed typo in code which interprets transfer encodings

Thank you for your patience!



  1. Thank you for all your work in taking over Hunchentoot from Edi. I recently synced with the github repository. Should I just resync or do you recommend using the tarball version?

  2. The release is tagged as v1.2.0 on github and lives on the v1.2 branch. You can switch to the branch if you want to isolate from random changes on master.

  3. Wonderful! We're just returning to CL development after a two year detour with other projects. I'm so pleased to see the Hunchentoot is being maintained.

  4. Please ensure this release gets into Quicklisp.

    Thank you.

  5. Hi. Thanks everyone for efforts on Hunchentoot.
    1. Can it be said for web development in Common Lisp, Hunchentoot is the best http server solution, or it should be used behind apache or nginx or something like those?
    2. Is hunchentoot meant to be used for an e-commerce website, and in general projects that involve money and should be stable, reliable?
    Recently, I am very much on these questions, searching web for answers, and need reliable technical answers rather than "one language fanboy views". I wanted to seek answers here.

  6. 1. I use Hunchentoot behind caching proxies. I do like having all resources in Hunchentoot, but I don't want to see traffic for static resources to hit the backend.
    2. There is no general answer to that question. Hunchentoot is stable, but it probably has bugs, like all software.

    If you want "reliable technical answers", you should probably hire someone who can give you guarantees in exchange for money.