[hunchentoot-devel] ACL case sensitive reader incompatibilities

Vyacheslav Akhmechet coffeemug at gmail.com
Wed May 16 13:26:53 UTC 2007


I seem to run into some issues with Hunchentoot on ACL due to case
sensitivity. When I turn case sensitivity off using '(set-case-mode
:case-insensitive-upper)', everything behaves as expected. However,
when I run in ACL's default mode, some things don't seem to work. Here
is a list of issues I run into without the case-mode fix:

1. Loading Hunchentoot with asdf throws me into a debugger saying I
need a newer version of TRIVIAL-GRAY-STREAMS. If I choose to continue
at this point, I get another error in the debugger saying "Package
:flexi-streams does not exist." When I choose an option to create it
anyway, Hunchentoot loads fine.

2. (request-method) function returns symbols in the "incorrect" case -
:GET and :POST, intead of :get and :post. This means it's not possible
to simply compare symbols (using ecase, for example) - it becomes
necessary to compare their names (with a case insensitive string
comparison). Franz gives guidelines on how to write software that runs
both on case sensitive and case insensitive implementations here:
http://www.franz.com/support/documentation/5.0.1/doc/cl/case.htm. Are
these being used by Hunchentoot?

3. Sessions/parameters don't seem to work properly. URL rewriting
works, however it looks like the cookie functionality does not work.
Additionally, (post-parameters) always returns nil on POST requests -
effectively it's only possible to operate in GET mode.

I'm not sure if Hunchentoot is meant to support ACL in its default
reader mode, so I thought I'd report these issues.

Regards,
- Slava Akhmechet



More information about the Tbnl-devel mailing list