<s1 title="Resin Change Log">

<s2 title='2.1.snap - June 10, 2004'>
<ul>
<li>mod_caucho keepalive fixes with Apache2
<li>XML printing of "xml:" namespace (rep by Mattias J)
<li>XML parsing of "xml:" attribute namespace (rep by Mattias J)
<li>Statement overflow must still allow for allocateXA (rep by Takahiro Fukuda)
<li>stdout needs to have default of -1 for rollover size (rep by William Au)
<li>NullPointer check for SessionManager.cleanBacking (rep by Frank Nestel)
<li>Added "on" as a value for j_user_cookie_auth (rep by Don Coleman)
<li>(2004-06-10) DispatchResponse wasn't using wrapped encodeURL (rep by Takahiro Fukuda)
<li>c:url wasn't handling relative paths properly (rep by Frank Nestel)
<li>(2004-06-07) stack overflow by a character in nsapi.c (rep by Ivan Mitov)
<li>nsapi.c util_hostname needs to check for null (rep by Ivan Mitov)
<li>(2004-05-17) Missing ZipFile close for tld parsing
<li>TcpStore needs the acccess time/update to avoid timeout (rep by Christian Amott)
<li>FileStore needs to set access time periodically (rep by peuclid)
<li>ServletServer deadlock close vs cron (rep by Ajit Puthiyavettle)
<li>(2004-04-29) reduce jar cache to 16 (rep by Adrian Radulescu)
<li>tld loading needs to catch Throwable for NoClassDefFoundError (rep by William Au)
<li>c:param wasn't handling null values properly (rep by Matt Pangaro)
<li>XSL omit-xml-declaration should still print DOCTYPE (rep by Robert Kobert)
<li>(2004-04-26) check for null with OPENSSL_INCLUDE in configure.in (rep by Keith Fetterman)
<li>EntityResolver not called for top level (rep by Joseph Dane)
<li>XPath substring check was incorrect (rep by Matthias J)
<li>--stdout was directed to stderr (rep by Mark Abbott)
<li>fmt:formatDate wasn't handling value=null properly (rep by argyn)
<li>(2004-03-30) ./configure changes for --with-apache-src (rep by Voloz Benjamin)
</ul>
</s2>

<s2 title='2.1.13 - Mar 30, 2004'>
<ul>
<li>(2004-03-23) newHost.init() in ServletServer (fixed! by Stefan Praszalowicz)
<li>./configure for HP-UX was adding -x instead of -z (rep by Linda Willett)
<li>Updated wrapper.pl to close stdout/stderr (rep by Philip Morelock)
<li>plugin fixes to catch windows filesystem quirks (rep by Eric Raymond)
<li>Encoding of included response stream needs to match the top-level response (rep by Nicholas Averseng)
<li>Bug in resin.ini parsing (rep by Takahiro Fukuda)
<li>(2004-01-22) Adding check for session conflict (rep by Edoardo Ceccarelli)
<li>HttpServletRequest CLIENT_CERT_AUTH misspelled (rep by Keith Fetterman)
<li>xsl:attribute with nested macro was acting incorrectly (rep by Eugen Lechner)
<li>XSLT transformer with DOMResult wasn't handling null Node (fixed! by Mike Perham)
<li>Context.listBindings was returning Context.list instead of Context.listBindings
<li>(2004-01-05) Session load/store synchronization issues (rep by Dave King)
<li>(2003-12-16) Added tld caching for JSP generation (rep by William Au)
<li>wrapper.pl/Resin changes for Solaris init (rep by Maria Grazia Arienta)
<li>(2003-12-15) Changing Jar to avoid Alarm and LRU callback (rep by William Au)
</ul>
</s2>

<s2 title='2.1.12 - Dec 11, 2003'>
<ul>
<li>Response.getCharacterEncoding issues with include (rep by Nicolas Averseng)
<li>Suspend shouldn't suspend the transaction timeout
<li>c:url parameter needs to be encoded with the response encoding
<li>JMX changes to allow for alternate implementations (fixed! by Michael Rumpf)
<li>resource-env-ref missing from ClassLoaderContext
<li>x:if and x:when need node context for x:foreach (rep by Phil Smy)
<li>&lt;cache dir> needs to use variables (rep by Thomas Zehetbauer)
<li>store-on-shutdown fix for ring-store
<li>(2003-10-24) getMimeType needs to check case-sensitive (rep by Alex Johnson)
<li>BeanUtil.getGetMethod needs to set setAccessible to handle LinkedHashMap (rep by Mike Cyze)
<li>updated makefile/configure.in for FreeBSD bin/resin (rep by Sujay D'Souza)
<li>JSP out.clear() was clearing content encoding (rep by Christoph Ledl)
<li>Change table existence check for JdbcStore (rep by Thomaz Zehetbauer)
<li>Underlying file session timeout needed to remove actual session (rep by Fyodor Golos)
<li>JdbcStore was missing setMaxIdleTime (rep by Thomas Zehetbauer)
<li>mod_caucho wasn't handling plugin_ignore for exact matches (rep by Mike Laskin)
<li>virtual host/cron deadlock (rep by Felipe Garcia)
<li>Allow for default byte value in error-log for consistency with access-log (rep by Tihombe)
<li>JdbcStore wasn't properly called for old session expiry (rep by David Campbell)
<li>x:set was missing node env causing trouble with x:foreach (rep by mhliu787)
<li>(2003-09-24) mod_caucho was using header_set instead of header_add, removing Cache-Control directives
<li>xsl:attribute with value-of and disable-escaping popped text (rep by Eric Ras)
<li>fmt:message inside fmt:param nesting problem fixed
<li>SecurityContext was getting cleared in Response.finish (rep by Charles Fu)
<li>class-update-interval of -1 was forcing continual JSP check (rep by Chris Chen)
<li>JSP check of update-interval wasn't grabbing caucho.com
<li>XSL xsl:comment and set:location weren't mixing well (rep by Philip M)
<li>memory.c initialization fixes for nsapi
<li>c:choose mixing c_rt:when and c:when (rep by Matthias J)
<li>JSP x:foreach node context fixed (rep by mhliu787)
<li>Check ClassLoaderStream.setStdout to avoid loop (rep by Chris Cottee)
<li>Checking DynamicClassLoader isModifiedInt for nullpointer (rep by Fyodor Golos)
<li>UserConnectionAdapter.rollback needs to check the connection for null (rep by Knut Forkalsrud)
<li>QRequestDispatcher.flushBuffer is inappropriate for forward (rep by Jean-Baptiste Quenot)
<li>Change sync and caching of precompiled stylesheet (rep by Galliot Guillaume)
<li>Added cookie-secure attribute (rep by Takahiro Fukuda)
</ul>
</s2>

<s2 title='2.1.11 - Sep 8, 2003'>
<ul>
<li>(2003-09-03) Check for SessionManager null in findSessionIdFromUrl (rep by Peter Berlin)
<li>jar/zip loading of taglibs (rep by Tom Cunningham)
<li>Session put needs putIfNew (rep by Fyodor Golos)
<li>(2003-08-27) FromAttributes needs normalization with descendant
<li>Issue with chunked-encoding and out.clearBuffer() (rep by Andrej Gabara)
<li>AbstractVariableResolver used '||' in place of '&amp;&amp;' (rep by Andrej Gabara)
<li>(2003-08-21) XSL env wasn't resetting param values (rep by Andrew McGhee)
<li>Better error recovery from failed multipart-form and handling multipart-form redirect (rep by Markus Linnala)
<li>XPath filter pattern issue with child[$n]
<li>LruCache was missing replace event on put
<li>destroy session callback needs to happen before invalidation to match Servlet 2.4
<li>Added check for Kerberos for openssl compilation
<li>Fixed HP-UX compilation flags
<li>Handling SAX feature for validation (rep by Tomasz Pik)
<li>Issues with FileServlet, FileNotFound, and Apache escaping (rep by Fyodor Golos)
<li>contextDestroyed callback order changed to match Servlet 2.4 spec (rep by Juergen Hoeller)
<li>Absolute URL rewriting with alternate-session-url-prefix
<li>&lt;host> EL enhancements
<li>Fixed .zip vs .jar in TLD parsing (rep by Stephen Tucker)
<li>(2003-08-06) RotateStream initialization had race-condition
<li>changing session locking to avoid possible deadlock (rep by Martin Weinig)
<li>TCP store needs to handle failed writes better (rep by Martin Weinig)
<li>Added JDBC 3.0 API to connection wrappers
<li>check max-pool-time on pool allocation (rep by Martin Weinig)
<li>MessageServer needs to swap order of Queue test to handle SwiftMQ (rep by PeterB)
<li>Apache 2 mod_caucho needs the hook priority to be "FIRST" (rep by David Soleno and Mike Kail)
<li>(2003-07-11) mod_caucho for Apache built with shared mod_ssl needs -lssl (rep by Collin Boyce)
<li>Can't use Gzip for error codes because of IE bug (rep by Dave Moellenhoff)
<li>Missing null check in JSP printVarDeclare
<li>Added EL support for http host and port (rep by Steve Molloy)
<li>(2003-07-10) Runner issues with POST and 404 (rep by Benjamin Voloz)
<li>XPath merge for some attribute matches was essentially an infinite loop (rep by Aadithya Deshpande)
<li>c:param for c:import wasn't checking for null values properly (rep by Kim Koran)
<li>AccessLog buffering allows longer URLs EL (rep by William Au)
</ul>
</s2>

<s2 title='2.1.10 - June 18, 2003'>
<ul>
<li>Added host-name with EL (rep by Andrey Kisel)
<li>not modified issues with cached files (rep by Jim Frenette)
<li>Burlap deserialization of stack traces (rep by Daniel Lopez)
<li>jar issues for .tld files (rep by Kirk Rasmussen)
<li>setDataSource in SqlTransactionTag was named incorrectly (rep by Jeroen Vianen)
<li>(2003-06-03) missing sync in session create (rep by Fyodor Golos)
<li>XSL document issues (rep by Lori Wong)
<li>fix for null in XmlParser used as sax generator (rep by Robert Koberg)
<li>XSL document("foo.xml") wasn't properly setting systemId (rep by Robert Koberg)
<li>Alarm could get dropped during resin.conf restart (rep by Serge Knystautas)
<li>Change test for OpenSSL return codes (rep by Jason Dyer)
<li>stream.c session decoding problem with backup (rep by larryl)
<li>(2003-05-21) multiple jndi-link merged factory instances (rep by Brian Wilson)
<li>XSLT priority of foo/* wasn't handled properly (rep by Charles Fu)
<li>JSTL x:transform wasn't handling inline XML (rep by Charles Fu)
<li>HttpSessionBindingEvent.getValue() wasn't properly set
<li>Missing free of session information in mod_caucho (rep by mimo)
<li>backslash escaping needed for XSL attributes (rep by Serge Belolipetski)
<li>isapi_srun with jsessionid and JSESSIONID s/b configurable (rep by Tim Pedone)
<li>added getApplication to ApplicationAdmin (rep by Micha Hagg)
<li>XSL != comparison with node set wasn't handle properly (rep by Charles Fu)
<li>GzipFilter hack (rep by Alan Wright)
<li>init.resin.in missing quoting for ARGS (rep by Che Dong)
<li>c:set with property wasn't converting type properly
<li>(2003-05-19) synchronize war expansion and use "._" for Windows (rep by Sulka)
<li>originalStream not set on init (rep by Kashif Qayyum)
<li>ServletOutputStream not properly restored after tags (rep by Kashif Qayyum)
<li>c:catch wasn't properly restoring the output (rep by Kashif Qayyum)
<li>XSL number() wasn't using current node (rep by Charles Fu)
<li>x:set was converting always to String (rep by Charles Fu)
<li>jdbc-store table-name wasn't set properly (rep by David Cambell)
<li>SSL_CTX_use_certifiate_chain_file test failed
<li>(2003-05-05) distributed session issues with timeouts (rep by Andrew Lienhard)
<li>(2003-04-29) bin/resin cleanup with closed stdin (rep by Charles Fu)
<li>RotateLog issues with multiple servers (rep by Serge Knystautas)
<li>Tag libraries with missing directories
<li>Some JSP validators require namespace additions
<li>class-update-interval check could rollover for resin.conf check (rep by Rob Lockstone)
<li>rollover-size wasn't properly handling bytes units (rep by Max Kutny)
<li>CGIServlet needs to deal with included pages (rep by David Campbell)
<li>Runtime exceptions should be throw directly w/o wrapping in JSP
<li>Burlap handling of Date needs ms accuracy (rep by Nicholas Averseng)
<li>Missing XmlParser InputStream close() (rep by Matthias J)
<li>Transaction rollback should not occur in subrequests (rep by Tyson Singer)
<li>WebDav returning incorrect result on 404
<li>Added ca-certificate-file support (rep by Andrew Lienhard)
<li>incorrect sync on applicationStart, causing deadlocks with .war expansion (rep by Matthias J)
<li>jsp:scripting wasn't properly recognized w/o namespace (rep by Ari Savolainen)
<li>Apache with SSL to Resin wasn't initializing SSL properly (rep by Anthony Tonns)
</ul>
</s2>

<s2 title='2.1.9 - April 16, 2003'>
<ul>
<li>(2003-04-16) getAttributeNS nullpointer (rep by Kirk Rasmussen)
<li>Hessian/Burlap issues with java.sql.Date
<li>jsp:root attribute printing issues (rep by Jeroen van Vianen)
<li>(2003-04-08) JDBC wrapper can't set an error on stmt.close() because Sybase doesn't allow double close (rep by Tomas Zajicek)
<li>EL method parsing was causing trouble with following expression (rep by Sam Heisz)
<li>(2003-04-04) errors in parsing *.tld weren't properly reported (rep by Kevin Henrikson)
<li>potential loop in Request.sendServletError (fixed! by Uwe Shaefer)
<li>rollover-size wasn't catching -1 (rep by Kazumasa Mori)
<li>bin/resin needs delay after fork (rep by Dong Che)
<li>Apache 2 build issues with threading disabled
<li>setCookieVersion in JdbcAuthenticator was incorrect (rep by Matthias J)
<li>bin/resin command-line argument fixes (-stdout)
<li>Issues with new ResponseAdapter and isFree (rep by Kirk Rasmussen)
<li>(2003-03-26) Resin shouldn't be calling setTransactionTimeout unless necessary (breaks sapDB)
<li>JSP tag variable mixing AT_END and NESTED weren't declaring properly (rep by Serge Knystautas)
<li>fmt:formatDate needs to return "" for null values (rep by Richard Holmes)
<li>SpyConnection wasn't logging sql for execute and exceptions (fixed! by Eric Kreiser)
<li>-stdout argument cleanup for bin/resin (rep by Mark Femal)
<li>Added com.caucho.http.filter.XsltFilter to handle gzip (rep by Olivier Baes) 
<li>resolved deadlock for Application.init and getRealPath
<li>Cleaned up request/response wrappers to clear fields before being reused
<li>(2003-03-19) EL mul/div association was incorrect
<li>isSecure() needs to handle 443 properly (rep by Srinivasan Pillai)
<li>Apache failure to connect to backend should return HTTP_SERVICE_UNAVAILABLE (rep by Grega Bremec)
<li>(2003-03-14) fast-jstl fmt:message wasn't allowing c:out in fmt:param (rep by Ari Savolainen)
<li>XSL sort needs the lang to allow attribute value templates (rep by Anders Gorm Larsen)
<li>For file-based webDAV, should create root directory automatically (rep by Nicholas Irving)
<li>StringTransformer needs to use UTF-8 consistently
<li>blob-type wasn't configuring the JdbcStore (rep by Jon Cochran)
<li>(2003-03-13) auto-compile='false' should not check *.jsp changes but should check *.class changes (rep by Greg Miller)
<li>logout needs to logout from single-signon cache (rep by Max Kutny)
<li>fmt:formatDate tag wasn't using Config.find to find the defaults (rep by Lucasz Kowalczyk)
<li>NSAPI install awk scripts were causing trouble (rep by Damien)
<li>Persistent store wasn't properly GC'd on web.xml change (rep by Kenkichi Mahara)
<li>Updates to QJspFactory and QPageContext to support roller (rep by Lance Lavandowska)
<li>HttpStream wasn't interpreting the HEAD Content-Length properly (rep by Erik van Zijst)
<li>DOMBuilder wasn't handling parser cases from webwork (rep by Kirk Rasmussen)
<li>multipart-form needs to handle case with partial upload (rep by alok)
<li>-resin-child not properly handled (rep by Jeff Einhorn)
<li>JSP/PageData wasn't handling xmlns:jsp namespace properly (rep by Ricardo Tercero)
<li>added key-manager-factory and ssl-context to JSSE support (rep by Martin Cordova)
<li>Hessian object serialization order must write primitives first (rep by Juergen Hoeller)
<li>DirectoryClassLoader was only return first resource in getResources (rep by  Steffen Gerhardt)
</ul>
</s2>

<s2 title='2.1.8 - Mar 6, 2003'>
<ul>
<li>LoadBalanceServlet wasn't adding multiple headers (rep by Paulo Veiga)
<li>CGI wasn't handling name correctly for url-pattern='/cgi-bin/*' (rep by Khang)
<li>don't enforce the IllegalStateException on getCreationTime (rep by Marc Larue)
<li>servlet-context start listener happens before servlets (rep by Deniz Tatar)
<li>(2003-03-03) case-sensitive was only recognized in web.xml
<li>Request wasn't calling skip() for POSTs
<li>mod_caucho round robin needs initialization in cse_open_child (rep by Sven Duzont)
<li>use JNI setuid for non-Linux Unix to avoid need for bin/resin (rep by Alan Wright)
<li>warExpansion needs to be synchronized (rep by David Soleno)
<li>Catch potential issues with HTTP open (rep by George Van Treeck)
<li>JSP validator wasn't interpreting the 0 length array as okay (rep by Rob Girardin)
<li>bin/resin setuid was setting group incorrectly (rep by Yam)
<li>MemoryStream wasn't adding length properly (rep by Fabrice Roge)
<li>(2003-02-25) GZipFilter wasn't properly handling content type (rep by Max Kutny)
<li>GZipFilter needs to handle 404 and errors specially (rep by Max Kutny)
<li>XSL lang handling was using Locale.getDisplayLanguage() instead of Locale.getLanguage() (rep by Anders Gorm Larsen)
<li>UserConnectionAdapter needs to use getConnection() consistently for better error reporting (rep by Yuan)
<li>./configure was detecting powerpc as MacOS-X
<li>JMX name issues with MBeanServerImpl (rep by Kelvin Westlake)
<li>BigDecimal needed special handling for Burlap/Hessian (rep by 
<li>PoolItem.clearXid() causing trouble with multiple connections (fixed! by Jason Chaffee)
<li>c:import handling of param with foo&amp;bar wasn't escaping the amp (rep by Aadithya Deshpande)
<li>XTP with jsp:root wasn't handling taglib namespaces properly (rep by Dan WInfield)
<li>HessianOutput wasn't handling > 64k strings properly (rep by Andrea)
<li>bin/resin should use -resin-child instead of env for startup (rep by dsoleno)
</ul>
</s2>

<s2 title='2.1.7 - Feb 14, 2003'>
<ul>
<li>Access log issues when setting period and rollover (rep by William Au)
<li>(2003-02-11) transaction.enlist exception in poolItem needs to kill the poolItem (rep by Martin Weinig)
<li>(2003-02-11) Always use JAVAC for encoding (rep by William Au)
<li>more transaction timeout fixes (rep by Nicholas Lesiecki)
<li>(2003-02-04) Oracle transaction issues/XA fixes (rep by Martin Weinig)
<li>Fixed support for transaction timeout (rep by Nicholas Lesiecki)
<li>run-at minute validation was testing against 24 instead of 60 (fixed! by Paul Mietz Egli)
<li>QPageData wasn't setting utf8 (rep by Michal Mosiewicz)
<li>session-timeout of 0 was handled incorrectly (fixed! by Martin Cooper)
<li>Hessian/Burlap was using equals instead of == for &lt;ref> (fixed! by Juergen Hoeller)
<li>compiling class loader was improperly setting javac encoding to null (rep by Maxim Penzin)
<li>LoadBalanceServlet wasn't setting isSecure properly (rep by Heather Rogers)
<li>Removed setting of *.class modified time in JavaCompiler (rep by Dave Poyas)
<li>session tcp-store wasn't removing old persistent sessions (rep by Martin Weinig and Gregory Bohmer)
<li>session tcp-store wasn't handling passivate events properly (rep by Ed Crotty)
<li>force remove of old log before moving old one (rep by Dave Kitelinger)
<li>./configure issues finding libssl (rep by Jeff Gilbertson)
<li>Too many headers should return 400 instead of 500 (rep by Erik Forkalsrud)
<li>Added xsl:sort lang support (rep by Andres Gorm Larsen)
<li>JSTL 0/0 needs to produce 0 (rep by Joseph Toth)
<li>WebDavServlet needs to escape displayname (fixed! by Pieter Schoenmakers)
<li>Moved setpgid before fork() so child won't get killed early (rep by Jay Sutaria and Dong Che)
<li>Changed case in old-style cookie attributes to lower case (rep by Laurie Poon)
<li>ResinStatus was giving wrong session information (rep by Gary Doughty)
<li>(2003-01-08) spy needs to clean up password info (rep by Max Kutny)
<li>Tag variables with AT_BEGIN weren't checking for duplicate declarations (rep by Serge Knystautas)
<li>FastCGI/PHP sends script data in the PATH_INFO/PATH_TRANSLATED variables (rep by Alex Sharaz)
<li>mod_caucho fixes for forwarded error message (fixed! by Stephan Schneider)
<li>Added x:param (rep by peterb)
<li>Need to throw exception when ConnectionPoolDataSource used as transactional database (rep by Max Kutny)
<li>MultipartStream wasn't properly checking read buffer length with peek items (rep by Ap Pieters)
<li>global JNDI wasn't handled properly (rep by Lixin Zhou)
<li>mod_caucho needs to be more sophisticated in adding ;jsessionid= (rep by Stephen Scholl)
<li>Added setOverloadEnabled to Burlap/HessianProxyFactory (rep by Kirk Rasmussen)
<li>Cron does not require queue (rep by Linda Wright)
<li>XSL generation wasn't escaping backslashed files (fixed! by jpardo)
<li>Possible nullpointer for certain error pages w/o application (rep by Max Kutny)
<li>ResinServer was registering with JMX with an invalid JMX name (rep by John Wang)
<li>pageEncoding and charEncoding depended on order of directives (rep by Max Kutny)
<li>VirtualHost.cron doesn't need lock around _webAppMap when reinitilizing (rep by Max Kutny)
<li>(2002-12-17) SSL cleanup for select() (rep by Charles Ocheret)
<li>ssl.c was not properly handling RSA (fixed! by Eric Forkalsrud)
<li>XSLT encoding needs defaults
<li>SAX/DOM namespace parsing issues breaking Apache Axis
<li>interaction of reuse-session-id and persistent store (rep by Dorel Vaida)
<li>potential nsapi.c buffer overflow (fixed! by Chris Ren)
<li>Document.getElementById was missing (rep by Kevin Gary)
<li>XTP wasn't supporting JSTL (rep by Eric Savage)
<li>JSP EL error messages need line numbers (rep by Max Kutny)
<li>JSTL bundle lookup needs to use classLoader.getResourceAsStream (rep by Max Kutny)
<li>Added missing JSTL timezone support (rep by Eric Kwong)
<li>(2002-12-04) SpyStatement was calling clearStatement() instead of close() (rep by Max Kutny)
<li>Detect nullpointers in Application.addServlet (rep by Rusty Gygax)
<li>Burlap/Hessian char[] fields were not properly deserialized (rep by Sulka Haro)
<li>OPTION not adding &lt;/option> with XmlPrinter HTML printing (rep by jpardo)
<li>Added ${serverId} for &lt;log> timestamp (rep by Martin Weinig)
<li>omitted form logging (rep by Max Kutny)
<li>&lt;![CDATA[ handling in mod_caucho (rep by Kirk Rasmussen)
<li>WebDav was returning incorrect XML for some 404 responses (fixed! by Knut Forkalsrud)
<li>./configure wasn't getting apache_bin properly
<li>Reworked session load and store to reduce the lock size (rep by Nathan Mehl)
<li>(2002-11-21) added &lt;case-insensitive> to &lt;caucho.com> config (rep by Jim Frenette)
<li>SAXParserFactory was ignoring setNamespaceAware (rep by Erol Kutay)
<li>Fixed XSL handling of format-number (rep by David Santiago)
<li>HEAD caching was returning incorrect Content-length
</ul>
</s2>

<s2 title='2.1.6 - Nov 8, 2002'>
<ul>
<li>added tcp-no-delay configuration (rep by Roger Hill)
<li>(2002-11-07) detect non-thread-safe OpenSSL (THREADS not defined) (rep by Andrew Davis)
<li>(2002-11-06) Send BadRequestException for exceptions outside the Application
<li>wrapper.pl robustness enhancements (rep by Steve Willis)
<li>Changed XML parser encoding with Reader (rep by Frank Nestel)
<li>JSP/XML with jsp:root handling of entities (rep by Jeroen van Vianen)
<li>XML namespace handling with empty element (rep by Erol Kutay)
<li>mod_caucho was adding duplicate sessions for session rewriting (rep by Damon Maria)
<li>(2002-11-01) Make ISAPI_SCRIPT configurable with CauchoScriptURL in resin.ini (rep by Song Qiu) 
<li>XSL handling of getAssociatedStylesheet()
<li>org.xml.sax.driver needs to be set in ResinServer
<li>XSL wasn't handling SAXStream as source for newTransformer (rep by Hans Bergsten)
<li>SSLFactory test for sslv2 was written as sslv3
<li>8859_1 needs to be synonym for ISO8859-1 (rep by Max Kutny)
<li>Add ping-interval (rep by Cameron Elliott)
<li>modified FilePath.remove() to check for locked .jar files (rep by Jason Chesko)
<li>Burlap/Hessian checks for missing constructor (rep by Brian Wilson)
<li>Burlap/Hessian handling of JDK1.4 exceptions (rep by Alon Salant)
<li>srun sendRedirect wasn't adding context-path (rep by Andrej Gabara)
<li>JavaGenerater's mkdirs() was giving confusing error message when work directory permissions were broken (rep by Max Kutny)
<li>(2002-10-29) BurlapInput wasn't handling whitespace for base64 (fixed! by Greg Martin)
<li>MSIE hack affects the ResponseStream length check (rep by Kirk Rasmussen)
<li>auto-compile='false' should still detect .class changes (rep by Greg Miller)
<li>(2002-10-25) ping-on-reuse was interfering with pooling (rep by Kirk Rasmussen)
<li>adding throwable exception for Spy debugging (rep by Kirk Rasmussen)
<li>transaction enlistResource not setting flags properly
<li>ClassLoaderContext.cron was using AccessLog instead of AbstractAccessLog (rep by Rudy D'hauwe)
<li>Added application to session logging (rep by Max Kutny)
<li>XML parser needs to take care of UTF-8 BOM (rep by Rene Trussel-Cullen)
<li>change log message of Application.configure to configure instead of init (rep by Christian Bauer)
<li>jsp:useBean was using get/putValue instead of get/setAttribute (rep by Max Kutny)
<li>XML attribute with no prefix don't use the default namespace
<li>for forward(), use the new query string not the merged one to match Tomcat (rep by Bryant Durrell)
<li>SAX lexical handler was using wrong property string
<li>ServletServer.isModifiedFull() needs to check with _updateInterval (rep by William Au)
<li>(2002-10-09) DBPool issues with xaConn, resetting and closing (rep by Kirk Rasmussen and Paul Hettl)
</ul>
</s2>

<s2 title='2.1.5 - Oct 4, 2002'>
<ul>
<li>shutdown-wait-time wasn't in ClassLoaderContext (rep by Charles Meyer)
<li>Basic auth for Burlap/Hessian (added! by James Ralston)
<li>Allow different _defaultEncoding in XmlParser (rep by Ryan Choi)
<li>(2002-10-01) SSL threading fixes (rep by Scott Farley)
<li>DBPool misc cleanup (rep by Kirk Rasmussen)
<li>(2002-09-27) dual connection sharing same transaction had state issues (rep by Kirk Rasmussen and Broughan Macklin)
<li>(2002-09-26) nullpointer for SSL in jni_vfs.c (rep by Bo Glenn)
<li>confusing error message for c:import and bad URL (rep by Mike Laskin)
<li>ELParser wasn't handling foo$bar correctly (rep by Wolfgang Merkel)
<li>resin:include-directory wasn't working properly (rep by Derek Howlett)
<li>Registry.parse wasn't setting filename of root element (rep by Max Kutny)
<li>FreeBSD changes to configure.in (fixed! by Nick Johnson)
<li>On win32, add -nodialog for avoid dialog messages (fixed! by Scott Haug)
<li>c:import with c:param and URL already with query string (rep by Martin Cooper)
<li>pageEncoding and characterEncoding were order dependent (rep by Hans Bergsten)
<li>Check application/session-manager during restart (rep by Dave Wallace)
<li>error-page handling with x-application/xsl (rep by Christian Bauer)
<li>(2002-09-24) c:import/c:param not working together (rep by Martin Cooper)
<li>SC_NO_CONTENT must not have a content body or content-length
<li>config.c needs to handle host root-dir and doc-dir (rep by Scott Hamilton)
<li>Changes to JspParser to better support command-line compilation (fixed! by Peter Schafer)
<li>Application wasn't supporting ejb-local-ref
<li>fixed problems with XSL macros with common names (rep by Robert Koberg)
<li>(2002-09-23) Cron cleanup to prevent multiple ServletAlarm (rep by Rich Vanderwal)
<li>(2002-09-20) SAX ns event issues with XSL
<li>TryCatchFinally with body tags (rep by Serge Knystautas)
<li>TryCatchFinally issues with AT_BEGIN tag variables (rep by Rob Girardin)
<li>(2002-09-13) Max OS X ./configure fixes (rep by Paul Snively)
<li>error-log rollover-size must allow -1 (rep by Bill Au)
<li>XSL position/last bugs (rep by Stephan Scholl)
<li>XSL sort order direction can be dynamic (rep by Istvan Albert)
<li>XPath caching issues with java: extensions (rep by Christian Bauer)
<li>ResponseAdapter closing sync issue (rep by Paul Nakada)
<li>xmlns printing issues with FOP (rpe by Hemanth Setty)
<li>&lt;td> is sensitive to spaces for several browsers (rep by Rodrigo Zerlotti)
<li>webapp.AbstractPath needs destroy() call when closed (rep by Christian Kolker)
<li>XmlPrinter needs to use set encoding instead of looking at WriteStream's encoding (rep by Kenkichi Mahara)
<li>better exception handling to make .war expansion more robust (rep by Jason Chaffee) 
<li>getParameterMap() wasn't working inside include
<li>(2002-09-09) TagLibraryInfo.getTag in standard JSDK returns "No tags" (rep by Mike Laskin)
<li>ServletInputStream.available() should return 0 for GET
<li>name-from-attribute variables may be optional (rep by Christian Andersson)
<li>HttpUtils parse query fix
<li>alternate-session-url-prefix must only have a single slash (rep by Veli-Pekka Juslin)
<li>password digest base64 fix was adding '=' breaking old passwords (rep by Martin Cordova)
<li>caucho.statistics wasn't properly set (rep by Riccardo Cohen)
<li>win32 http needs to set environment classpath first to match wrapper.pl (rep by Nick Wilcox)
<li>BurlapProxyFactory and HessianProxyFactory now implement ObjectFactory (rep by Juergen Hoeller)
<li>BurlapInput wasn't handling Throwable exceptions properly (rep by Upil)
<li>MicroHessianReader wasn't reading major/minor from reply (rep by Joe Gradecki)
<li>(2002-08-30) RegistryNode.getELBytes was dropping sign (rep by Jason Chesko)
<li>plugins weren't handline webapps with matching &lt;web-app> correctly (rep by Wilson Gibbons)
<li>JspCompiler should exit with non-zero on error (rep by Nick Pellow)
<li>JSTL c:set wasn't handling property properly (rep by Hans Bergsten)
<li>sessions created ephemerially for Store were sending bogus destroy messages (rep by Chris Beck)
<li>fmt:setBundle with default var wasn't handling scope properly (rep by Hans Bergsten)
<li>(2002-08-24) missing sync on DBPool (rep by Kirk Rasmussen)
<li>(2002-08-23) Added spy attribute for database (rep by Kirk Rasmussen)
<li>Added spy attribute for database (rep by Kirk Rasmussen)
<li>(2002-08-21) DBPool cleanup (rep by Kirk Rasmussen)
<li>Response needs to clear SecurityContext for weblogic (rep by Kirill Maximov)
<li>SSL accept needs to be in child thread (rep by Cameron Elliott)
<li>JSP EL arithmetic binary coercion of string value (rep by Hans Bergsten)
<li>JSP EL "not foo" was not properly treating "foo" term (rep by Hans Bergsten)
<li>(2002-08-13) readOnly and autoCommit were not properly reset for DB wrapper (rep by Kirk Rasmussen)
<li>XAAdapter wasn't allowing setTransactionIsolation with auto-commit = false
<li>restored back %3f.jsp fix (rep by Stefan Scholl)
<li>(2002-08-07) Added invalidate-after-listener to session-config (rep by Dave King)
<li>errors in statement.close() should cause connection failure (rep by martin Cordova)
<li>flag values in configuration defaulted to false (rep by Martin Cordova)
<li>Put back &amp;amp; for &amp; in HTML printing (rep by Stefan Scholl)
</ul>
</s2>

<s2 title='2.1.4 - Aug 2, 2002'>
<ul>
<li>HessianOutput write bytes was using '&lt;&lt;' (rep by James Ralston)
<li>Removed bogus e.printStackTrace() (rep by Alexey Yudichev)
<li>Lazily compile classes (rep by Frank Nestel)
<li>(2002-07-31) JSTL choose wasn't handling parent tags (rep by Kevin Henrikson)
<li>persistent sessions not save when include() or forward() across web-apps (rep by Greg Robinson)
<li>(2002-07-30) DBPool removal of dead connections (rep by Martin Cordova)
<li>TransactionImpl was ignoring XA_RDONLY responses (rep by Juergen Hoeller)
<li>TransactionImpl.setTransactionTimeout was queuing closed transactions (rep by Ron van Pol)
<li>(2002-07-29) Changed XPath ObjectExpr nullpointer checking (rep by Adrian Hill)
<li>JSSE for JDK 1.4 now allows protocol restrictions (rep by Knut Forkalsrud)
<li>fmt:message allows key in body (rep by Alexey Yudichev)
<li>Added certificate-chain-file (rep by Rich Aston)
<li>Removed obsolete classes from com.caucho.burlap.client (rep by Juergen Hoeller)
<li>Burlap/Hessian made &lt;length> optional
<li>Burlap/Hessian made &lt;type> optional
<li>Burlap/Hessian removed &lt;value>
<li>Burlap/Hessian added ability to read/write headers (rep by Nicholas Averseng)
<li>JSTL special cases weren't handling parent tags propery (rep by Kevin Henrikson)
<li>(2002-07-25) Error messages had extra &lt;/address> (rep by Steve Nicolai)
<li>displayed directory with Apache/IIS when directory was missing index.html (rep by Arnaud Lemaitre)
<li>run-at period wasn't syncing to the day or month (rep by Jim Frenette)
<li>load-on-init with getRealPath in .war or war-expansion-dir failed (rep by Will Jaynes)
</ul>
</s2>

<s2 title='2.1.3 - July 23, 2002'>
<ul>
<li>DBPool isolation fixes
<li>Added TAG_HEADER for Burlap (rep by Nicolas Averseng)
<li>response was double flushed (rep by Rob Lockstone)
<li>(2002-07-19) init.resin needs quotes (fixed! by Pieter Schoenmakers)
<li>Transaction timeout should just set rollback only (rep by Dimitri Rakitine)
<li>fixed NT path normalization issue with '\' (rep by Peter Grundl)
<li>removed early s.close() from StreamSocket since it was confusing some JDKs. (rep by Bryan Roberts)
<li>allow external URL parsing except for DTDs
<li>encoding in DTD wasn't recognized by XML parser (rep by Daniel Lopez)
<li>.war expansion wasn't initializing application (rep by Daniel Lopez)
<li>(2002-07-18) JSTL escaping of body tags for c:out
<li>`!' wasn't properly parsed in EL (rep by Serge Knystautas)
<li>doc-dir needs to default to root-dir
<li>XML parsing: entities in attributes weren't handled properly (rep by Kevin Henrikson)
<li>SAX attributes.getName(0) shouldn't throw NPE even when 0 attrs (rep by Frank Nestel)
<li>-compile was throwing nullpointers because JNDI not defined (rep by Mark Adams)
<li>LoopTagSupport API bugs (rep by Juergen Hoeller)
<li>fmt:formatNumber with default locale and currency had NPE (rep by Juergen Hoeller)
<li>fmt:formatNumber wasn't allowing the number in the body (rep by Juergen Hoeller)
<li>(2002-07-18) entity expansion regression bug
<li>(2002-07-17) service-class should allow any bean class (rep by Juergen Hoeller)
<li>burlap/hessian service-class wasn't allowing for generic service (rep by Juergen Hoeller)
<li>Added burlap/hessian support for Class values
<li>(2002-07-12) security-constraint needs to allow multiple ip-constraint (rep by Matt Manfredonia)
<li>PageContext doesn't have getAttributeNames (rep by Lukasz Kowalczyk and Martin Cooper)
<li>(2002-07-11) reverted to JDK 1.4 javac in build
<li>DBPool transaction related fixes
<li>OpenSSL fixes related to socket timeouts (rep by Benjamin Tomasini)
<li>(2002-07-10) switched to use jikes in build
<li>transaction manager and DBPool fixes from code review
<li>(2002-07-09) error-page with exception-type=Throwable and raw ServletException wasn't handled
<li>VirtualHost.initPaths wasn't properly handling multiple host names
<li>AbstractVariableResolver wasn't handling "Var" correctly (rep by Martin Cordova and Christian Bauer)
<li>(2002-07-07) initial cut of JSP EL for sql_rt and xml_rt
<li>added jndi:lookup as static function for configuration
<li>added static method support to EL
<li>added Var support and system-property lookup in config EL
<li>system-property in &lt;web-app> wasn't working with JVM properties
<li>added &lt;init> block in servlet configuration for bean-style initialization 
<li>added allow-servlet-el flag allowing servlet init-param to accept JSTL EL
<li>allow resin.conf/web.xml to accept JSTL EL expressions
<li>cleaned up virtual host instantiation
<li>NullPointer on Resin close (rep by Kevin Henrikson)
<li>Minor cleanup of Application.close() field clearing
<li>(2002-07-02) Minor cleanup of Application.close() field clearing
<li>Loosen the XML parser to allow for whitespace before &lt;?xml> (rep by Hemanth Setty)
<li>WEB-INF is not allowed in webapps (rep by Luke Immes)
<li>Cleaned up make for compiling class loader (rep by Luke Immes)
<li>More windows special pathing issues (rep by Peter Grundl)
<li>JSP generator wasn't escaping linefeeds in tag attributes (rep by Kevin Henrikson)
<li>JSP TagData wasn't properly setting rtexprvalue to TagData.REQUEST_TIME_VALUE (rep by Kevin Henrikson)
<li>Apache recompilation
<li>(2002-07-01) DBPool refactoring
<li>TransactionImpl fixes for XAResource.start with join
<li>Ping socket timeout wasn't converted from ms to s (rep by Kirk Rasmussen)
<li>(2002-06-24) Redirect for transport constaint wasn't setting query string (rep by Alexei Yudichev)
<li>Added com.caucho.Version.main (rep by Charles Meyer)
<li>Allowing pre-1.4 JSSE (rep by Jonah Kowall)
<li>JDBC session store wasn't handling invalidate properly (rep by Marc Welk)
<li>(2002-06-21) Use getStream() in ResponseAdapter.setContentType to initialize (fixed! by Anders Vesterberg)
<li>context initialized should be called after load-on-startup (rep by Chris Beck)
<li>Modify StylesheetImpl to handle new functions (rep by Lukasz Kowalczyk)
<li>Added rollover-check-time for access-log (rep by Hiroshi Morita)
<li>error-page handling for Throwable shouldn't match wrapped ServletException (rep by Ryan Choi)
<li>(2002-06-20) Brought Burlap into sync with Hessian
<li>Added JSTL tags for xml
<li>Added JSTL tags for sql
<li>Added JSTL RT tags for core-rt and fmt-rt.
<li>Avoid extra tag init when can prove tag is initialized
<li>session id random generator purely uses Random.nextLong() (rep by Henry Lu)
<li>session id random number moved from SessionManager to ServletServer (rep by Henry Lu)
<li>(2002-06-13) Missing Hessian server support for Map, Collection, List and Set (rep by Hoeller Juergen)
<li>JSTL fmt resource bundle loading wasn't loading .classes (rep by Scott Ganyo)
<li>Inappropriate JSTL EL caching for arrays (rep by Alexey Yudichev)
<li>Major refactoring of JNDI handling (rep by Dale Churchett)
<li>JSSE needs to understand verify-client
<li>Added cheap JMX servlet viewer in /resin-status
<li>Shift_JIS encoding problem (fixed! by Tatsuya Bizenn)
<li>(2002-06-11) Now using official jstl10.jar.
<li>Automatically register servlets which have MBeans
<li>Initial JMX implementation with separate servers for each web-app
<li>context-path was not case insensitive for win32 (rep by Rene Trussell-Cullen)
</ul>
</s2>

<s2 title='2.1.2 - June 11, 2002'>
<ul>
<li>fixed openssl memory leak
<li>-version shouldn't force a restart (rep by Charles Meyer)
<li>Apache2 wasn't properly updated for srun protocol change
<li>web-app /test/a was matching URL /test/atest.jsp
<li>(2002-06-07) The SSL certificates need to be a chain, not the single certificate (fixed! by Yannick Menager)
<li>Missing case-insensitive check on win32 (rep by Eric Rapp)
<li>Use Shift_JIS instead of SJIS
<li>(2002-06-06) Burlap, Hessian, and JVM clients were mixing inherited client caches
<li>Referenceable shouldn't be used in AbstractContext (rep by David Duddleston)
<li>application load/restart synchronization fixes
<li>response.containsHeader needs to understand content-type (rep by Paul Nakada)
<li>error pages need to clear content-length to avoid error message (rep by Kirk Rasmussen)
<li>changed error message when -server missing (rep by Mark Crowther)
<li>session decoding error for backup in stream.c (fixed! by Ronald Tschalaer)
<li>jsp auto-compile='false' with failed JSP should not remove .class (rep by Martin Cooper)
<li>(2002-06-04) Update configure.in to use Apache2 from apxs (rep by Alberto Delgado)
<li>ChunkedInputStream: availiable needs to be updated after read (fixed! by Lutz Pumpenmeier)
<li>sendRedirect shouldn't have MSIE hack (rep by Matt Edwards)
<li>AccessLog.rolloverLog needs sync (rep by Frank Nestel)
<li>Handle lone '#' in ATTLIST (rep by Kenkichi Mahara)
<li>Add QInitialContext support for foreign JNDI factory with URL prefixes (rep by Dale Churchett)
<li>fixed maximum URL length, configured with url-length-max (rep by Peter Grundl)
<li>integral or confidential must redirect, not send forbidden (rep by Alexey Yudichev)
<li>Broken URL, //foo.jsp was treated as virtual host (rep by Sean Leach)
<li>Converted velocity-style syntax to use JSTL core
<li>Fix .war timed expansion
<li>webapps/ROOT.war was initialized twice (rep by Ryan Boone)
<li>web-app id='foo' app-dir='webapps/foo' now merge properly (rep by Eric Rapp)
<li>Refactored web-app handling and war expansion in VirtualHost
<li>JSTL c:out was interpreting all interpolated values as null (rep by Kirk Rasmussen)
<li>/caucho-status needs to use cse_close, not cse_recycle (rep by Simon Hobbs)
<li>JNDI should not override UserTransaction if already specified (rep by Dale Churchett)
<li>Application needs to kill the cache before actually closing
<li>windows plugin needs to be case-insensitive with war-expand-dir ROOT (rep by Eric Rapp)
<li>(2002-05-28) Add logging for rollover time (rep by Sean Leach)
<li>rollover-size of -1 should be infinite (rep by Tommy Jasmin)
<li>Writing beyond the content-length needs to log IllegalStateException (rep by Mark Church)
<li>case issues with war expansion (rep by Dominik Foucauld)
<li>war-dir symlinks with missing target confuses the auto-deploy (rep by Alen Milkovic)
<li>AbstractServerListener: shutdown called twice, start never called (rep by Martin Cordova)
<li>init.resin should change to $RESIN_HOME before executing resin (fixed! by Anders Bjorklund)
<li>expand PE required in parseContentParticle (fixed! by David Soergel)
<li>XML wasn't allowing PE in attrlist (rep by Kenkichi Mahara)
<li>LongKeyMap wasn't properly initializing values.
<li>Added SSL verify-client for OpenSSL (rep by Nigel Gardiner and Seth Ladd)
<li>check logging for bogus URL lengths
<li>Updated the login example (rep by maddogmut)
<li>HTTP continuation with \r\n was adding the \r (rep by javadesigner)
<li>chain-mapping with servlet-name="none" will remove mapping (rep by Kris Young)
<li>changed Cookie checking to match jakarta (but not catch RFC2965) (rep by Chris Busch)
<li>Added Class.getPackage support (rep by Scott Ganyo)
<li>iPlanet 6 moved Init configuration to magnus.conf (rep by Andrej Gabara)
<li>Added session-cookie to configure alternate to JSESSIONID (rep by Mark Saarinen)
<li>Added setThrowReadInterrupts to SocketStream (rep by Ronald Tschalaer)
<li>JSTL fmt completed
<li>(2002-05-22) setup.exe changes to support iPlanet 6
<li>avoided more NT aux weirdness (rep by Peter Grundl)
<li>&lt;method> was only allowed once (rep by Yori Sakakura)
<li>Change default work-dir to c:/temp/caucho from /temp/caucho (fixed! by Christian Bauer)
<li>JSTL core completed
<li>Backup server selection for plugin issue (rep by Gary Doughty)
<li>Create unique names for anonymous stylesheets
<li>mod_caucho should avoid the request retry when the connection fails (rep by Chris Haas)
<li>(2002-05-20) JSTL fixes for c:if, c:when
<li>JSTL implementations for most of core and fmt
<li>ResinServer automatic calculation of srun-index was broken (rep by Collin Bryce)
<li>session-config/backing-path wasn't allowed (rep by Collin Boyce)
<li>mod_caucho wasn't understanding commas separating virtual hosts (rep by Timothy Falkoner)
<li>DBPool XA reusing empty connection
<li>DBPool synchronization missing in PoolItem.free (rep by April Frezza)
</ul>
</s2>

<s2 title='2.1.1 - May 13, 2002'>
<ul>
<li>change XSL format-number back to original (rep by Mariano Galan)
<li>Apache2 mod_caucho locking cleanup (fixed! by Kris Spinka)
<li>ClassLoaderLocal set must update lastLocal (rep by Kirk Rasmussen)
<li>Upgraded to SAX 2.1 (rep by Nick Bauman)
<li>(2002-05-13) plugin config problem with &lt;srun host> (rep by Steve Stallion)
<li>(2002-05-09) ampersand escaping in XML printing (rep by Adolfo Aladro)
<li>XML with both external DTD and defined DTD weren't read properly (rep by Christian Sell)
<li>XmlPrinter for &lt;html> with namespace must use the xml method (rep by Kenkichi Mahara)
<li>added &lt;case-sensitive> to web.xml (rep by Tiberiu Fustos)
<li>(2002-05-06) Changed status of mod_caucho connection error page to 503 (rep by Gary Doughty)
<li>cleanup load-balancing issue with srun-backup
<li>QDate timezone issues (rep by mr-frog)
<li>cleanup to war-dir expansion (rep by Dominik Foucauld)
<li>/foo;jesssionid was causing problems with web-app (rep by Frank Nestel)
<li>MergePath fixes for tld support (rep by rlubke)
<li>exclude CVS from auto-compile (rep by Joseph Toth)
<li>change MergePath to understand absolute paths (rep by David Soergel)
<li>tagAtEnd regression nullpointer (rep by Tim Falconer and Mike Wynholds) 
<li>DOMBuilder attributes fix for Cocoon (rep by Ola Smievoll)
<li>XPath needs to understand new() for Cocoon (rep by Ola Smievoll)
<li>StyleScript needs to understand entities in attributes (rep by Chris Chen)
<li>added url-character-encoding to &lt;host> (rep by Tomas Zeman)
<li>(2004-04-30) windows case-insensitivity has issues with ROOT.war (rep by saccocio)
<li>TimedCache should implement CacheListener
<li>timing issue with createServlet and web-app reinit
<li>$app-dir added for virtual host for backward compatibilty ($host-root is preferred)
<li>mod_caucho needs to understand host='*'
<li>sendRedirect should treat HTTP://... as an absolute URL (rep by Clark Archer)
<li>Added caucho-request handler for Apache2 (rep by Steve Stallion)
<li>(2004-04-29) nullpointer when generating certain tags (rep by Eric DeCosta)
<li>XSL transformer() should not close StreamResult output stream (rep by David Webster)
<li>regression in checking for macros in XSLT (rep by Victor Salaman)
<li>server-listener was configured with wrong node (fixed! by Victor Salaman)
<li>added Apache2 for win32 (rep by everybody)
<li>(2004-04-28) JSTL EL updates
<li>x-application/xsl, x-application/xslt, and x-application/stylescript (rep by Bernie Bernstein)
<li>(2002-04-23) Added checking for XSL macros in xsl:call-template
<li>xmlns should be http://www.w3.org/2000/xmlns/ (rep by sae and Kenkichi Mahara)
<li>encodeURL needs to understand anchors
<li>war-dir and war-expand-dir should make directories automatically
<li>JSSE cipher suite was stubbed out with new QSocketWrapper (rep by Glen Marchesani)
<li>Apache load balancing with backups wasn't sending sessions to correct backup (rep by Ken Price)
<li>Always coalesce adjacent text nodes (rep by Alexey Yudichev)
<li>contrib/init.resin.in had ./configure macro case problems (fixed! by Andres Bjorklund)
<li>In some cases, an error resin.conf could cause Resin to get stuck reloading, but not rereading the resin.conf (rep by pjkovac)
<li>Add support for "file:foo", i.e. relative paths to ENTITY in XmlParser (rep by 
<li>Added toString() in DirectoryClassLoader. (rep by Lance Lavandowska)
<li>LogStream in ForbidHost should be declared protected (rep by Andre van Dalen)
<li>Added XPath extension functions using XSLT namespaces (rep by David Webster)
<li>JSP scope AT_END needs to be hoisted to top (rep by Kent Cearley)
<li>systemid and publicid were swapped in XmlParser (rep by piL)
<li>class-update-interval fix with new ClassLoaderContext (rep by Sacha Prins)
<li>forward() was confusing cache (rep by Eric DeCosta)
<li>Hessian and Burlap need to handle Throwable like Exception (rep by Nicholas Lesiecki)
<li>XslWriter needs to set local name to qname when the namespace is null (rep by Mike Wynholds)
<li>(2002-04-17) Make formUploadMax a long (rep by Brian George)
<li>Added x-application/stylescript
<li>x-application/xsl needs to be strict XSL, not stylescript (rep by Stephan Scholl)
<li>ResinStatusServlet needs test for null EJB context
<li>(2002-04-15) added sslv2, sslv3, and tlsv1 flags for ssl support (rep by Joe Esposity)
<li>BurlapProxy and HessianProxy were not setting content-type (rep by Joseph Toth)
<li>MicroBurlapReader was not reading remote objects correctly (rep by Joseph Toth)
<li>JndiFactory wasn't properly initializing ConnectionPoolDataSource with class-name (rep by Robert Edgar)
<li>added lazy-init configuration to the web-app (rep by David Smiley)
<li>added xsl:output include-content-type support to StreamTransformerImpl (rep by Daniel Wroblewski)
<li>With persistent sessions and old session id, getSession(false) was creating session (fixed! by Joseph Dane)
<li>(2002-04-11) allow setAutoCommit in XADataSource when outside of transaction (rep by Dmitri Platonoff)
<li>tcp-ring session backup is now random, not successor (rep by Michael Grassotti)
<li>Added cookie-length to session-config (rep by Idan Eldad)
<li>jndiContext no longer is in ServletContext, but in ClassLoaderContext (rep by Orville Pike)
<li>(2002-04-10) forbid-host needs to be added to JNDI even if none are configured (rep by Andre van Dalen)
<li>failed forbid-host check needs to print IP (rep by Sacha Prins)
<li>cse_create_dir_config needs to set round_robin_index=-1 (fixed! by Steffen Hellestol and Torkjell Skomedal)
<li>JDBC always loads new session regardless of update-count (rep by Sean Leach)
<li>added &lt;jsp jsp-update-interval> (rep by Gary Doughty)
<li>XmlPrinter should accept non-Resin DOM (rep by Nicholas Irving)
<li>(2002-04-09) JDK 1.4 on Win32 with JAXP had trouble with File parsing (rep by Rob Lockston)
<li>always-load-session makes no sense with FileStore (rep by Gary Doughty)
<li>Added LongKeyMap and LruCacheLongKey
<li>The new forbid was checking the local address, not the remote address (rep by Sacha Prins and Jim Douglas)
<li>moved forbid-ip check into TcpConnection thread to minimize delay to the TcpServer (rep by Sacha Prins and Jim Douglas))
<li>getNamedDispatcher with .jsp was instantiating the JSP too many times (rep by Mark Saarinen)
<li>exceptions in closeStatements were incorrectly invalidating the connection (rep by Joseph Toth)
<li>Added setAutoCompile() to XSL (rep by Ovidiu Opris)
<li>error-page needs to try matching outer exceptions before root exceptions (rep by Martin Nietschke)
<li>Change order of ServletServer super.init() to forbid host will initialize in correct JNDI context (rep by Andre van Dalen)
<li>TransformerException does not have null constructor (rep by Robert Koberg)
<li>Apache 2 cleanup
<li>Added support for MacRoman
<li>Added default-stylesheet init-param for XtpServlet (rep by Rick Janda)
<li>(2002-04-08) Session.setAttribute needs to set the dirty flag even when the object doesn't change (rep by Jeff Kilbridge)
<li>Set a max length for the cache (rep by Andreas Schiller)
<li>javax.mail.Session wasn't using ContextClassLoader (rep by Jeroen van Vianen)
<li>RunnerRequest.setHeader wasn't resizing (rep by Kirk Rasmussen)
<li>BodyTag with empty content needs null getBodyContent() (rep by David Geary) 
<li>bin/resin timeouts were not properly handled for SSL (rep by Steven Hobmann)
<li>JdbcStore needs to always load session.  The session count is meaningless (rep by Sean Leach)
<li>bin/resin request-timeout wasn't properly configured (rep by Steven Hobmann)
<li>Added work.dir system property to set the work directory (rep by Ovidiu Opris)
<li>setReadEncoding nullpointer (rep by Alexey Yudichev)
<li>#include &lt;sys/time.h> missing from ssl.c (rep by Timothy)
<li>bin/resin had inconsistent port count in count_ports (rep by Blair Hotchkies)
<li>catch UnsupportedEncodingException in ErrorParser (rep by Ron Lussier)
<li>ssl_stub.c had wrong api (rep by Alan Wright)
<li>"extends" should allow duplicate if same value (rep by Blair Hotchkies)
</ul>
</s2>

<s2 title='2.1.0 - March 26, 2002'>
<ul>
<li>NPE with certain classpath errors (rep by Igor Fedulov)
<li>(2003-03-22) initialization issues with virtual host and resource-ref (rep by Kirk Rasmussen)
<li>reloading isolation with *.war files
<li>(2003-03-21) XSL: removed some assumptions about using Resin DOM (rep by Tomek Pik) 
<li>(2003-03-20) remove isModified deadlock with virtual host (rep by Karl Baum)
<li>add remove methods to ForbidHost (rep by Andre van Dalen)
<li>Add TCP configuration info to /resin-status (rep by Eric Brown)
<li>Add META-INF services for JAXP (rep by Chris Chen)
<li>JavaScript arrays return keys on for-each (rep by Anton van Straaten)
<li>move createConnection outside the getPooledConnection (rep by Marybeth Avioli and Maulan Byron)
<li>run-at needs catch(Throwable) and logging the exception (rep by Robert Edgar)
<li>(2002-03-18) Use http://www.w3.org/XML/2000/xmlns/ consistently for xmlns namespace
<li>ack coordination between RunnerRequest and isapi_srun needed fixing (rep by Jens Gerhard and Frank Nestel)
<li>PageData.getInputStream() needs to return the XML view of the JSP page (rep by David Geary)
<li>getServletPath() for *.srv invocation was doubling (rep by Bryan Barkley)
<li>added timeout to bin/resin SSL read (rep by Eric Brown)
<li>bin/resin read should throw exception for timeout (rep by Eric Brown)
<li>forbid-hosts needs to put ForbidHost in java:comp/env/caucho/forbid-host even without custom (rep by Andre van Dalen)
<li>auth-method is optional (rep by Mark Bouchard)
<li>(2002-03-16) further increased the retry for connection to the parent
<li>update hmux to for spec changes
<li>default mapping should set servlet-path to the uri and path-info to null (rep by Scott Ganyo)
<li>remove dependence on XSLTContext (rep by Mark Davidson)
<li>windows-1251 mime-name is windows-1251, not Cp1251
<li>(2002-03-13) changed SAXParserFactory Class.forName (rep by Arienta Mariagrazia)
<li>ResponseStream.clearBuffer() shouldn't clear contentLength (rep by Igor Fedulov)
<li>JdbcStore must always load the current store value (rep by Sean Leach)
<li>added Xsl.newTransformer() (rep by Ed Ward)
<li>tagdependent still must obey JSP XML model
<li>getIntHeader with bad value should throw NumberFormatException
<li>exceptions should set status_code 500 for error page.
<li>Content-Language should use hyphen instead of underscore
<li>ResinServer end detection logic (waitForExit) needed changing to handle both Windows and Solaris
<li>Changed error logging for configuration errors
<li>Added resin-jbuilder.jar to projects (rep by Hiroshi Morita)
<li>Added com.caucho.jsp.JspCompiler (rep by Hiroshi Morita)
<li>IIS/Apache escaping issues (rep by Frank Nestel)
<li>forward() fixes introduced new bugs (rep by Gary Doughty and Victor Salaman)
<li>Dynamic virtual hosting shouldn't create directories (rep by Pritpal Dhaliwal)
<li>(2002-03-08) BackingManager.getBacking wasn't creating new key (rep by Bryan Davis)
<li>BackingManager synchronization changes (rep by Bryan Davis)
<li>StringReader wasn't decoding utf-8 correctly (fixed! by Sangjin Han) 
<li>JSP line numbering (rep by Mike Baroukh)
<li>upgrade header buffer size (rep by Donny Hsu)
<li>changed forward() close method to handle filters better (rep by Gary Doughty and Victor Salaman)
<li>FastCGI response fix missing extra \r\n at end of headers
<li>update to Apache2 apr_lock_create (fixed! by Dave Wallace)
<li>(2002-03-06) regression cleanup
<li>'ack' wasn't getting sent by RunnerRequest on large posts
<li>(2002-03-05) forward wasn't propertly closing filters with wrapped responses (rep by Gary Doughty)
<li>runtime attribute order is left-to-right
<li>added jsp:setProperty with property editor
<li>connection errors with mod_caucho and POST need to use a redirect instead of an internal forward (rep by John Crossman)
<li>forward needs to reset content-length (rep by Gary Doughty)
<li>SocketStream wasn't detecting closed sockets properly (rep by Linda Wright)
<li>bad srun check for 'ack' requirement (rep by Linda Wright)
<li>WebDavServlet: filenames with '&amp;' need escaping as '&amp;amp;'
<li>NullAuthenticator was returning true for isUserInRole
<li>WebDavServlet: DELETE was returning bad xml when detecting errors (rep by Frank Nestel)
<li>WebDavServlet: read only webdav should return Forbidden instead of method not implemented for write methods (rep by Frank Nestel)
<li>WebDavServlet: moved common responses into method (fixed! by Frank Nestel)
<li>WebDavServlet: made root relative to web-app (rep by Frank Nestel)
<li>WebDavServlet: changed root-path to root
<li>getRealPath followed by getRequestDispatcher could return incomplete servlet mapping (fixed! by Victor Salaman)
<li>bin/resin needs to set the classic or server before the default jvm library (rep by Steve Hobmann)
<li>WebDAV FilePath setRoot wasn't setting root (fixed! by Tasos Koutoumanos)
<li>(2002-03-01) bin/resin makefile needs to create libexec (rep by Frank Nestel)
<li>GzipFilter needs to bypass setContentLength
<li>form-login-page should have filters applied (rep by Alexey Yudichev)
<li>BeanUtil.getSetMethod was skipping some valid setXXX matches
<li>Removed debugging exception trace from JDKWriter (rep by jpardo)
<li>On Windows, allow quotes like "-Dfoo=bar data" (rep by Peter Jahans)
<li>Allow XmlParser to access jar: URLs (rep by warmcat)
<li>access.log issues with zero or negative time on rollover
<li>Windows plugins with war-dir could steal all requests
<li>Response.setContentLength needs to limit output (rep by jdamore)
<li>Request.finish() should not change the context class loader (rep by Cytown)
<li>enhance plugins to understand web-xml
<li>alternate-session-prefix wasn't setting the request's application properly
<li>Changed default of ignore-client-disconnect to false
<li>In ResinServer, use sleep(1000) before trying to connect to parent
<li>(2002-02-27) TcpConnection was closing socket twice
<li>Servlet exceptions should use default locale
<li>QSocketWrapper test for isSecure was always returning true (rep by Victor Salaman and Martin Cordova)
<li>fixed virtual host issues with multiple names in the &lt;host> (rep by Ron von Pol)
<li>Ignore SocketException in ResinServer.waitForExit because Solaris will throw SocketException instead of InterruptedException (rep by zh)
<li>parsed-entity references were not recognized in the DTD (fixed! by David Soergel)
<li>DirectoryServlet wasn't handling directories with spaces (fixed! by joquarky)
<li>format-number was handling 0.00;(#) incorrectly
<li>(2002-02-23) HttpSessionAttributeListener wasn't called on timeout (rep by Arinze Nkwoji)
<li>add WEB-INF/resin-web.xml and make it persist across by war expansion (rep by Alex Paransky)
<li>Display server unavailable error message for exceptions on shutdown instead of the stack trace (rep by Serge Knystautas)
<li>Added com.caucho.shutdown to request attributes for an error page on shutdown (rep by Serge Knystautas)
<li>Added isShutdown() to the ServerAdmin interface (rep by Serge Knystautas)
<li>Changed servlet not found error message (rep by Matt Moore)
<li>(2002-02-21) Added resin:include-directory (rep by Tauren Mills)
<li>Removed extra dashes from the IE message hack
<li>(2002-02-20) fixed bin/resin stop/restart (rep by Andy Zeneski)
<li>added bin/resin IP/port data and isSecure()
<li>cleanup of LoadBalanceServlet round robin and sticky sessions
<li>Improve round robin in stream.c for plugins (rep by David Langreo)
<li>(2002-02-19) Added &lt;secure> configuration to simplify SSL requirements for web-apps (rep by Martin Cordova)
<li>while .war was getting reset, the apps variable could be null (rep by Jorge Garcia)
<li>logs need to be relative to the host's root-path, not war-dir (rep by Kirk Rasmussen)
<li>Regression and bin/resin failure with virtual hosts (rep by Steven Hobmann)
<li>TagLibraryValidator.validate had wrong signature (fixed! by Leif Neilson)
<li>protected WEB-INF/sessions from war deletion (rep by Victor Salaman)
<li>Complete new Hessian serialization/deserialization 
<li>(2002-02-15) Removed deadlock with tcp-ring and distributed session backing (rep by John Lockwood)
<li>Initial cut of generalized distribution, beyond sessions (rep by Victor Salaman) 
<li>XPath quotes are escaped by doubling them, e.g. '' or "" (rep by Vincent Rycx)
<li>errors during configuration must still allow error-page
<li>Added XSLT include-content-type (rep by Charly)
<li>Allow &lt;web-app> aliased to a war (rep by Sean Pritchard)
<li>(2002-02-13) Added support for PROPPATCH to WebDAV
<li>FastCGIService http response headers (rep by Adam Cassar)
<li>Track tcp-connections with an array list to catch exits (rep by Ran Ezerzer)
<li>MergePath shouldn't add "./" to prefix (rep by David Soergel)
<li>With bin/httpd listen ports as late as possible (rep by Derek Irving)
<li>Added -J-classic, -J-server, and -J-client to bin/resin (rep by Eric DeCosta)
<li>javax.servlet.error.status_code needs to be Integer (fixed! by Dane Foster)
<li>(2002-02-11) Initial FastCGI server and servlet
<li>(2002-02-08) Clean up cache in xpath.Env (rep by Stephen Scholl)
<li>(2002-02-07) servletContext.getResourcePaths wasn't handling sub-web-apps
<li>Set the time of a compiled .class file to just after its source (rep by Omen Wild and Peter Andrews)
<li>error response can occur before dead data from post is read (rep by Jezz Szeto)
<li>VirtualHost lookup of webapps needs to handle NT case insensitivity (rep by Daniel Lopez)
<li>Close the Jar cache of ZipFiles to avoid NT locking (rep by Daniel Lopez)
<li>Proxy cache wasn't properly handling setStatus(304) (rep by Thomas Miller)
<li>(2002-02-04) pid_file removal logic in wrapper.pl was removing new pid file (rep by Daniel Lopez)
<li>cleanup web-xml with war-dir (rep by Bruno Randolf)
<li>Path was only handling lower-case Windows drive letters (rep by James Bond)
<li>AbstractParser.openStream wasn't handling special case of Windows drive letters as schemes (rep by James Bond)
<li>Added order-by for persistent collections (rep by Serge Knystautas)
<li>Logs, inluding error-log, need encoding attribute (rep by Hiroshi Morita)
<li>shortcut init for -compile to avoid long init (rep by Serge Knystautas)
<li>-compile should avoid filters and security, just like forward() (rep by Serge Knystautas)
<li>UnavailableException can be thrown from service (rep by Peng Yong)
<li>(2002-01-31) com.caucho.http.mux.MuxRequestFactory (rep by Eric Brown)
<li>initial cut of xsl:result-document (rep by Mike Wynholds)
<li>bin/resin was missing Solaris header defines (rep by Frank Nestel)
<li>(2002-01-30) Hessian Mux
<li>security manager permissions problems with the webapps/WEB-INF (rep by Tauren Mills)
<li>CGIServlet wasn't handling /cgi-bin
<li>(2002-01-30) possible memory leak with lots of JSP
<li>JavaScript support for getBytes (rep by Grigory Danileyko)
<li>added --with-perl to configure (rep by Mark Femal)
<li>configure.in was missing echo for --with-apache-src (rep by Bryan Carter)
<li>(2002-01-27) significant rewriting of bin/resin moving HTTP from bin/resin to Java (rep by Eric Brown)
<li>Initial .ear expansion
<li>significant rewriting of classloader/jndi configuration for ServletServer, VirtualHost, and Application in preparation for .ear
<li>XmlParser was using wrong value for xmlns namespace
<li>Added init() invocation to BeanUtil
<li>enlist with rolled-back transaction should throw the rollback exception (rep by Nicholas Lesiecki)
<li>Request.getParameterMap() should return unmodifiable map (rep by Mark Saarinen)
<li>change Request.form to HashMap to avoid sync overhead (rep by Mark Saarinen)
<li>added com.caucho.http.filter.GzipFilter
<li>added #foreach ($a in [3..9]) velocity syntax
<li>updated configure.in to better find OpenSSL configurations (rep by Paul Freeman)
<li>(2002-01-17) Added root-path configuration to WebDavServlet (rep by Terence Parr)
<li>isapi_srun.dll virtual host fixes (rep by Barrie Selack)
<li>added allow-ip to security-constraint
<li>plugins (mod_caucho/isapi_srun) were freezing on hosts with ports (rep by Heather Grace)
<li>DBPool needs to wrap all connections even for JDBC 2.0 drivers to handle multiple connections in a transaction (rep by Serge Knystautas)
<li>(2002-01-16) Added &lt;srun timeout> and made default 30s (rep by Max Kutny)
<li>XSL generated &lt;meta> element must be first (rep by Andrey Novikov)
<li>BeanUtil.setBeanProperty needs to check arguments for setAttribute methods (rep by Serge Knystautas)
<li>improved XSL parser/XML parser error message (rep by Zacharias Beckman)
<li>location of login-config should determine single signon (rep by Jason Chaffee)
<li>welcome-file-list doc cleanup (rep by Jean-Francois Lamy)
<li>contrib/init.resin needs extra quotes
<li>bin/resin -pid handling added extra .pid and didn't handle absolute paths
<li>error pages weren't setting exception_type and servlet_name (rep by Martin Cordova)
<li>XslParser wasn't handling &amp;#160; entities (rep by Dennis 
<li>(2002-01-15) &lt;classpath id='foo' source='WEB-INF/classes'/> needs to count as replacing WEB-INF/classes (rep by George Moshovitis)
<li>ResponseAdapter needs to check stream == null
<li>Allow role-name '*' (rep by Martin Cordova)
<li>DBPool.getConnection needs to free pooled connection if the transaction enlist fails (rep by Serge Knystautas)
<li>(2002-01-14) Initial cut of com.caucho.http.servlet.CGIServlet (rep by Adrian Zimmerman)
<li>Initial cut of com.caucho.http.servlet.LoadBalanceServlet
<li>empty page with flush and chunked encoding was adding \r\n (fixed! by Matthias Ernst)
<li>Test for overridden tag methods needs to test for declaring class TagSupport and BodyTagSupport explicitly (rep by Jeroen van Vianen and Shawn Bayern)
<li>Changed configure.in to detect GNU ld on Solaris (rep by Keith)
<li>bin/resin wasn't handling restart properly (rep by Anupam Bagchi)
<li>AccessLog now logs the end time of the request
<li>WebDAV wasn't returning 404 for a missing file (rep by Don Matthew)
<li>Added logout-on-session-timeout to authentication (rep by Martin Cordova)
</ul>
</s2>

<s2 title='2.0.5 - Jan 10, 2002'>
<ul>
<li>changed certificate-pem to certificate-file and key-pem to certificate-key-file (rep by Anupam Bagchi)
<li>Adding method information to tag setter error message.
<li>JSP line numbers with tags weren't calculated properly (rep by Fyodor Golos)
<li>env-entry wasn't supporting Long (rep by dan)
<li>configure.in --with-apache-cflags was misconfigured (fixed! by Eric Brown)
<li>(2002-01-03) more regression cleanup
<li>(2002-01-02) regression cleanup
<li>Burlap cleanup for J2ME
<li>(2002-01-01) ServletServer.close() wasn't closing SrunConnections
<li>getIntHeader needs to check for null header and return -1
<li>wrapper.pl timed kill cleanup (fixed! by Dennis Vshivkov)
<li>wrapper.pl needs to chdir to $SERVER_ROOT not $RESIN_HOME (fixed! by Dennis Vshivkov)
<li>RequestAdapter wasn't using filter's getUserPrincipal (rep by Roger Kjensrud)
<li>XSL.setAttribute wasn't setting localName (rep by Andrey Novikov)
<li>completed com.caucho.burlap.client, including fault handling
<li>(2001-12-31) Cached pages weren't getting logged (rep by James Csaszar)
<li>moved com.caucho.burlap.client from Resin-CMP to Resin
<li>(2001-12-28) Added host/app summary to ResinStatusServlet (rep by Jean-Francois Lamy)
<li>(2001-12-27) ?jsp_precompile was executing the servlet if called for a precompiled servlet (rep by Serge Knystautas)
<li>XmlParser was gobbling '=' in '&amp;foo=bar' (rep by Samsung)
<li>DummyRequest needs attributes so run-at servlets can use forward (rep by Stephan)
<li>Added com.caucho.http.servlet.ResinStatusServlet
<li>mod_caucho fixes for Apache2 (fixed! by Dave Wallace)
<li>added Vfs.HttpPath support for webdav list()
<li>Fixed XSLT for-each handling of last() (rep by Charly)
<li>#document shouldn't match node()
<li>XSLT double parsing fixes
<li>XSLT attribute-set regression failure
<li>limit non-query URL length to 1024
<li>%20 regression issue on windows
<li>Moved Env and HelloServlet to /examples/basic
<li>Better handling of trailing %00/
<li>(2001-12-12) JSP quoting in attributes (rep by Donnchadh O Donnabhain)
<li>SchemeContext now extends AbstractDirContext (rep by Thomas Miller)
<li>JavaScript page needs to be called on init (but doesn't yet handle jspInit) (rep by daz)
<li>improved startup and jar performance (rep by Chris Lechner)
<li>XML parser Locator wasn't handling systemId and publicId correctly (rep by Mike Bremford)
<li>add switchToRaw and getRawOutput to Response and getRawInput to Request and support for httpd.sh (rep by Ran Ezerzer)
<li>enhancements to wrapper.pl to force a JDK kill for badly behaved JVMs (rep by Freeman Pascal)
<li>host_t -> caucho_host_t in plugins (rep by Paul Snively)
<li>Added preliminary support for custom WebDAV attribute getting (rep by Serge Knystautas)
<li>(2001-12-11) system-property needs to be re-read on restart
<li>META-INF needs to be expanded in .war and protected from browsers (rep by ChrisP)
<li>Catch unexpected SQL exceptions to close DBPool (rep by Daniel Wroblewski)
<li>Calculate getActiveConnections dynamically (rep by Carl-Henrik Tjarnlund)
<li>Changed getPool synchronization (rep by Daniel Wroblewski)
<li>Depend.isModified() should check for any date change (rep by Kirk Rasmussen)
<li>war-dir and war-expand-dir not dynamically reloaded (rep by Chris Lechner)
<li>Regression application init bug with '/*' (rep by David Cruz Langreo) 
<li>common.c bug with app-dir in &lt;host> (rep by Steve Michael)
<li>SchemeContext.getURLSchemes needs to be cached (rep by Steve Buikhuizen)
<li>(2001-12-08) default web-app was overriding regexp web-apps
<li>ServletContext.getResourcePaths() was returning wrong value (rep by Kevin Sonney)
<li>web-app access-logs need periodic flushing (rep by Mohammed Ersan)
<li>added global-system-properties to configure per-class-loader properties
<li>Windows 98 con/con issue (rep by gluckninja)
<li>failed class compilation needs to restart app when fixed (rep by Matthew Pangaro)
<li>sendRedirect sending redirect with extra port (rep by Kirk Rasmussen)
<li>Invocation.service needs to call getServlet if null (rep by Kirk Rasmussen and Wes Hodges)
<li>clear trailing space for IIS (rep by Cheong Yon-Jun Jerald)
<li>mod_caucho includes ap_config_auth.o (rep by Dennis Tenney)
<li>nsapi.c protocol exception with bogus request (rep by lam)
<li>HTML attributes to lower case (rep by Nate Kiewel)
<li>MergePath needs to use path separator char for classpath (rep by Michael Lepore)
<li>Added velocity-style #foreach
<li>(2001-12-05) JNDI Context.close() must not affect the JNDI data (rep by David Smiley)
<li>forward was messing up jdbc-persistent session saving (rep by Marc Welk)
<li>logout needs to unset getUserPrincipal() (rep by Michal Mosiewicz)
<li>LoginPrincipal needs to be Serializable for dist-sessions
<li>timeout and lru should not logout authentication (rep by Martin Cordova)
<li>invalidate() needs to throw IllegalStateException when not valid (rep by nataraja)
<li>Stream transformer needs to use getOutputProperties() (rep by Michael Mutschler)
<li>XmlPrinter needs to call entityResolver for DOCTYPE (rep by Mike Bremford)
<li>Added HttpSessionActivation listener and cleaned up session lifecycle with persistent store.
<li>HttpSessionListener.sessionDestroyed was called twice on session timeout (rep by Greg)
<li>java.io.* and javax.servlet.jsp.tagext.* should not be default imports (rep by Jeroen van Vianen)
<li>XML syntax error not caught while parsing web.xml (rep by Dave Wallace)
<li>JSP tag library needs to handle array of primitive types, e.g. int[] (fixed! by Sunil Kamath)
<li>(2001-12-04) setLocale needs to set charset= for contentType if none specified (rep by Sven Mawson)
<li>ResponseAdapter setLocale must change the stream's locale (rep by Sven Mawson)
<li>isapi_srun server name could have space prefix (rep by Robert Sherratt)
<li>alternate-session-url-prefix support for mod_caucho (rep by Tharwat Abdul-Malik)
<li>(2001-12-03) webdav.AbstractPath needs HttpServletRequest argument (rep by Serge Knystautas)
<li>Changed VirtualHost moveto to avoid NT weirdness (rep by Steve Tekell)
<li>Directory redirect for missing "/" wasn't happening (rep by Derek Slager)
<li>MultipartStream needs getAvailable implementation
<li>JavaGenerator was using uniqueId and unique, causing conflicts (rep by David Soergel)
<li>Sort for numeric wasn't sorting NaN properly (rep by jpardo)
<li>enhance XPath numbers to understand scientific notation (rep by jpardo)
<li>XSLT format-number should throw an exception if the format is illegal (rep by jpardo)
<li>directory-servlet should allow "false" (rep by Dane Foster)
<li>More windows-hack translation codes.
<li>plugins weren't properly handling virtual hosts (rep by Kirk Rasmussen and Mark Saarinen)
<li>(2001-11-29) added windows-hack encoding to handle smart quotes (rep by Steven Tower)
<li>If server-name is not specified, should use Host: header (rep by Kirk Rasmussen)
<li>Registry must not treat xmlns as attribute (rep by Domingo Colon)
<li>resin.ini was grabbed from wrong directory (rep by Jean-Francois Lamy)
<li>(2001-11-28) RequestAdapter was translating resetBuffer() into reset() call (rep by Andrej Gabara)
<li>complex caching interaction with getRealPath and JniRequest (rep by Florian Koenig)
<li>SrunConnection needs to use live-time to timeout tcp-ring (rep by Dave King)
<li>Added TransactionFilter
<li>Added AnonymousExpiresFilter
<li>user-name needs to return better error message (rep by Marti Christof)
<li>(2001-11-27) &lt;web-app> login should have priority over &lt;http-server> (rep by Frank Danner)
<li>RingStore rws close must close writer before reader (rep by John Lockwood)
<li>Added preliminary support for OpenSSL engine (rep by Adrian Radulescu)
<li>mod_caucho.c compilation problem (rep by David Cruz Langreo)
<li>(2001-11-26) HTML boolean attributes, e.g. selected, should be shorted only if the have no value (rep by Federico Noferi)
<li>include() to a non-found page should throw exception (rep by Daniel Dadush)
<li>added CauchoServerRoot to mod_caucho (rep by Osma Ahvenlampi)
<li>plugins weren't catching default live-time and dead-time config (rep by David Langreo)
<li>/caucho-status should show &lt;srun> id (rep by David Langreo)
<li>jni directory for HP-UX is hp-ux (rep by Jong-Jeong Kim)
<li>run-at request.getScheme() should return "cron" (rep by Mattias Jiderhamn)
<li>error message encoding fixes to JavaCompiler (fixed! by Takashi Okamoto)
<li>(2001-11-21) session invalidation needs to logout authenticated principals (rep by Martin Cordova)
<li>server restart timing issues (rep by George Moshovitis)
<li>alternate url rewriting broke old session url rewriting (rep by Daniel Wroblewski)
<li>Changed RunnerRequest protocol assertion to avoid false positives (rep by Daniel Wroblewski)
<li>DynamicClassLoader.findResources wasn't implemented (rep by Charles Meyer)
<li>XSLT value-of must only return first string value (rep by Jong-Jeong Kim)
<li>Cleaned up XSLTMark "html" and "oddtemplate" (rep by Richard Vowles)
<li>(2001-11-20) Cleaned up XSLTMark "products" test failures (rep by Richard Vowles)
<li>added alternate-session-url-prefix (added! by Kristofer Lund)
<li>mod_caucho needs cse_clean_jsessionid and needs to check r->prev for stored jsessionid (rep by Jacob Nordgren)
<li>mod_caucho priority issue again with DirectoryIndex, so moved to [8]
<li>changed URL default encoding to utf-8 (rep by Jens Gertsen)
<li>bin/resin wasn't setting the trailing chunked 0 (fixed! by Philip Molter)
<li>XPath sum was calculating int not double (rep by Charly)
<li>TcpStream should not set alarm and needs to set socket to null (rep by Joseph Dane and John Lockwood)
</ul>
</s2>

<s2 title='2.0.4 - Nov 15, 2001'>
<ul>
<li>apache2 mod_caucho needed updating for new structures (rep by Daniel Wroblewski)
<li>(2001-11-14) XmlPrinter.prefixList wasn't checked for null (rep by Michele)
<li>pooled connection fatalException was calling close() twice (rep by Jason Van Cleve)
<li>(2001-11-12) nsapi wasn't detecting resin.conf changes (rep by Jack Yang)
<li>bin/resin should use initgroups (fixed! by Philip Molter)
<li>bin/resin needs nativeFlush to handle flushBuffer (rep by Philip Molter)
<li>changed server.c SIGSEGV handler to use the default (rep by Philip Molter)
<li>new webapps properly initialized after expansion (rep by Will Jaynes)
<li>(2001-11-06) Added XSL TemplatesHandler and TransformerHandler (rep by Christian Sell)
<li>ForbidHost belongs in com.caucho.http.security
<li>RotateStream setRolloverSize was setting wrong value (fixed! by Fredrik Rodland)
<li>(2001-11-05) self::text() was printing as text() (rep by Richard Vowles)
<li>XPath last() wasn't properly using axis (rep by Richard Vowles)
<li>Fixed priorities in &lt;host> regexp (rep by Glen Marchesani)
<li>mod_caucho wasn't understanding jsessionid; when using SetHandler (rep by Jamie Coppedge)
<li>&lt;script> text wasn't handling &lt;/h4> properly (rep by Chris Graham)
<li>javax.servlet.ServletContextAttributesListener wasn't deleted (rep by Anders Eriksson)
<li>added JNDI initialization for javax.mail.Session (rep by jelmer)
<li>race condition in cache of FileServer (found! by G. Nagarajan)
<li>(2001-11-02) added reuse-session-id (default true) to allow disable session-id reuse (rep by Brigger Patrick)
<li>nsapi.c should return error_page on connection failure if possible (fixed! by Jose Manuel Cantera Fonseca)
<li>AbstractTransformerFactory.getFeature needs to return values for StreamSource. (rep by Christian Sell)
<li>JavaScript "with" function scope was using global scope (rep by Stanislav Devyatovskiy)
<li>Possible WriteStream offset bug (rep by Jens Goring)
<li>(2001-10-31) jsp-file with different init-param weren't distinguished (rep by Dmitry Platonoff)
<li>JSP pages with "extends" weren't properly updated (fixed! by Daniel Dadush)
<li>bin/resin fixes for Content-Type and Date (rep by Dmitry Platonoff)
<li>Allow nested tag NESTED variables (rep by Steve Hoffman)
<li>(2001-10-30) removed aggressive DynamicClassLoader.unload
<li>ClassLoader cleanup to ensure proper Class.forName called
<li>WriteStream.print(int i) could have an off-by-one array exception (rep by Jens Goring)
<li>added PasswordDigest to AbstractAuthenticator (rep by Bob Baker)
<li>allow loadClass to be called from non-top (rep by George Moschovitis)
<li>if enable-cookies='false' and given cookie, then need to enable url rewriting (rep by Sudheer Vangati)
<li>(2001-10-29) upgraded config.guess and config.sub
<li>expires and last-modified needs to go back to servlet when expires (rep by Tauren Mills)
<li>mod_caucho needs to save write_length when retrying connection (rep by Mica Cooper)
<li>reuse JNDI factory if have several jndi-link (rep by Sara Chieco)
<li>form error page needs to use "GET" (rep by Sean Rohead)
<li>servlet exception line wrapping shouldn't happen with lines starting with space
<li>rtexprvalue = false was still allowing rtexprs (rep by Martin Nieschke)
<li>(2001-10-25) Response.finish with forward() needs to skip input stream (rep by Song Qiu)
<li>res.getCharacterEncoding should not normalize the encoding (rep by Sebastian Kanthak)
<li>bin/httpd on Win32 broke -install and argument order (rep by Osma Ahvenlampi)
<li>Separated WebDAV AbstractPath for custom webdav sources.
<li>(2001-10-25) getNamedDispatcher must not allocate filters (rep by Sean Rohead)
<li>MultipartForm output stream os.close() must be in finally (rep by George Moschovitis)
<li>QDocument.getElementsByTagName wasn't returning root element (rep by Rodica Balasa)
<li>WebDavServlet allows 'user' as an init-param
<li>JdbcAuthenticator now has cookie-logout option (rep by Eric Carlson)
<li>mod_caucho needs to understand difference between server defaults and &lt;host id=''> (rep by Frank Nestel)
<li>windows line numbers (rep by Erez Holzman)
<li>(2001-10-23) Separated sessions into com.caucho.http.session.
<li>QAbstractNode.getChildNodes() needs to return an empty node list (rep by Alex Besogonov)
<li>Added server-name support in &lt;host> 
<li>access log %{Set-Cookie}o wasn't properly handled (rep by Kirk Rasmussen)
<li>sessions outside the group need a new session id (rep by Mica Cooper)
<li>Added separate StartThread to TcpServer and created threadAcceptMax (rep by Dave King)
<li>Added SingleThreadWrapperPage (rep by Mats Lofkvist)
<li>Added %T %{%H:%M:%S}t and fixed %{cookie}c (rep by Kirk Rasmussen)
</ul>
</s2>

<s2 title='2.0.3 - Oct 17, 2001'>
<ul>
<li>(2001-10-16) JspWriter.UNBOUNDED_BUFFER is final (rep by Steph)
<li>srun-group for tcp-ring and load-balancing understands (rep by Christopher Lynch and Mica Cooper)
<li>WebDAV Destination header wasn't properly decoded (fixed! by Andrey Akselrod)
<li>WebDAV COPY and MOVE circularity check was overzealous (rep by Andrey Akselrod)
<li>Added TcpServerAdmin and server-listener for clean shutdowns (rep by Christopher Lynch and Mica Cooper)
<li>(2001-10-11) war-dir and war-expand-dir need to allow $host-dir (rep by Frank Nestel)
<li>Added shutdown-wait-time (rep by Christopher Lynch)
<li>JSP are now loaded in a single classloader to reduce memory consumption
<li>taglib was overzealously escaping (rep by Jim Fox)
<li>Initial cut of digest authentication (rep by Mark Davidson)
<li>(2001-10-10) Found some cases where TempBuffer wasn't getting freed, causing the GC to work harder.
<li>HTTPS on check needs to be case insensitive (rep by Ralph Schaer)
<li>fixed Apache SEGV for errors in resin.conf parsed by mod_caucho (rep by Steve)
<li>(2001-10-08) On redirect, assume port 443 is https (rep by Ralph Schaer)
<li>jsp:include must use servletPath (rep by Srujana Cherukuri)
<li>DBPool.getPool should store stuff in the ClassLoaderLocal (rep by Cytown)
<li>DBPool wasn't closing connection when receiving connectionError (rep by Cytown)
<li>Added preliminary velocity-style JSP syntax
<li>(2001-10-05) Session store needs to happen before flush (rep by Jon Bodner)
<li>persistent session store must load all on startup (rep by Steve Holt)
<li>add ForbidHost 
<li>persistent session store now has srun-index-specific subdirectories.
<li>moved persistent session store into WEB-INF
<li>sendRedirect shouldn't clear headers (rep by David Rice)
<li>access-log period of 1M should rollover at month end
<li>jsp:directive.page must handle namespace decl (rep by Lukasz Kowalczyk)
<li>transport-guarantee=NONE wasn't understood (rep by Martin Cordova)
<li>(2001-10-02) SingleThreadModel fix for servlets (rep by Mats Lofkvist)
<li>basic WebDAV support
<li>filter.init() must throw ServletException (rep by Ralph Schaer)
<li>(2001-09-28) Added -http-port and -srun-port back to ResinServer (rep by Hiroshi Morita)
<li>static JSP page should have sessions (rep by Alex Greif)
<li>added AccessLog.getArchiveName to allow subclassing  (rep by Mark Saarinen)
<li>added archive-format to the access-log (rep by Mark Saarinen)
<li>JSP setProperty and tag properties must allow PropertyEditors
<li>getF_oo corresponds to property f_oo, not F_oo (rep by Dave Wallace)
<li>LogStream should use getPath("href", null) to allow system properties (fixed! by Andrej Gabara)
<li>Fixed regression failure for chained XSL request (rep by Laurent Tettoni)
<li>NT install needs to strip quotes from paths, e.g. CLASSPATH (rep by Alin Andea)
<li>mod_caucho must be before [7] (header parser) so mod_gzip will work (rep by Aurelien Pelletier)
<li>rotating logs (e.g. stdout-log) now allow a customized timestamp (rep by Jan Aleman)
<li>Added com.caucho.admin.http.ServerAdmin (req by Derek Fisher)
<li>Throw more informative exception when getPage called after application shutdown (rep by Michal Mosiewicz)
<li>cleaned up ClassLoader.getSourcePath (rep by Steve Nicholai)
<li>DBPool should auto-detect ConnectionPoolDataSource for driver-name (rep by Chris Donnelly)
<li>JavaScript generated *.java and *.class belong in WEB-INF/work (rep by Hiroshi Morita)
<li>(2001-09-25) HttpServletResponseWrapper.encodeRedirectURL was circular (rep by Joe Walnes)
<li>getReader() wasn't allowed inside a jsp:include (rep by Laurent Tettoni)
<li>XSL input document must use coalescing = true (rep by Marc Welk)
<li>xmlns:foo in jsp:root implicitly declares taglib (rep by Daniel Goodwin)
<li>xml:jsp should strip the XML version header (rep by rlubke)
<li>added XmlAuthenticator
<li>(2001-09-24) HTML parser needs to understand &lt;script> has implicit cdata (rep by Jakob Eriksson)
<li>directory url missing trailing '/' wasn't redirecting query string (rep by Jim Griggs)
<li>Apache setup should use '/' insteadof '\\' (rep by Arjan van Mulukom)
<li>classloader makeAll wasn't properly compiling recursively (rep by Frank Nestel and Neil Aggarwal)
<li>WEB-INF/lib was overriding the specified &lt;classpath>
<li>(2001-09-22) getRealPath was using welcome-file-list (rep by Jon Bodner)
<li>if error-page connection points to a Resin page, use default error (rep by Kirk Rasmussen)
<li>Added ApplicationAdmin.invalidateCache (rep by Joseph Dane and Steve Tekell)
<li>Added Cache-Control: must-revalidate and proxy-revalidate (rep by Joseph Dane)
<li>-compile option should allow multiple urls and add -compile-host (rep by Martin Cooper)
<li>(2001-09-20) resin:include wasn't properly restoring searchPath (rep by George Moschovitis)
<li>fixes to SchemeContext's handling of JNDI schemes (rep by David Smiley)
<li>missing jndi scheme should be treated as normal, not URLContextFactory not found (rep by Zacharias Beckman and David Smiley)
<li>JSP taglib uri can refer to jars (rep by Neil Fradkin)
<li>Fixed Alarm bug causing dropped alarms -- causing dbpool idle problems (rep by Carl-Henrik Tjarnlund)
<li>(2001-09-19) forward() should be allowed even inside body tags (rep by Alex Kotopoulis)
<li>sendRedirect has possible nullpointer with some configurations (rep by Sean Rohead)
<li>system-property allowed in &lt;web-app> (rep by Jens Moller)
<li>ClassLoaderStream rename and cleanup (rep by Jeff White)
<li>mod_caucho log should add timestamp (added! by Rob Bunten)
<li>caucho_status in mod_caucho was testing cse_open wrong (fixed! by Rob Bunten)
<li>(2001-09-18) XmlParser with multiple external entities (rep by Jean-Francois Lamy)
<li>added max-active-time to DBPool config (rep by Carl-Henrik Tjarnlund)
<li>zipFile in Jar openReadImpl wasn't properly created (rep by Sean Leach)
<li>caucho.com/var/jar-cache-size is configurable (rep by Sean Leach)
<li>When grabbing session id from SSL session, can't use '/' (rep by Jens Goring)
<li>(2001-09-17) maxPoolTime wasn't properly set (rep by Charles Meyer)
<li><2001-09-13) rotate log now uses nextPeriod calculation (rep by Jeff White)
<li>webapps change should only affect the old/new wars
<li>Change default listen to 100 (rep by Ozzy Espaillat)
<li>(2001-09-11) Allow quoted string charset: text/html; charset="UTF-8" (rep by Sean Rohead)
<li>XmlParser with Reader must ignore file's encoding (rep by Jean-Francois Lamy)
<li>JAXP support for META-INF/services
<li>include() and forward() to WEB-INF must show files (rep by Dane Foster)
<li>XML: multiple external entities weren't handled (rep by Jean-Francois Lamy)
<li>JSP and EJB classloader should use full classname for CodeSource (rep by Ashwin)
<li>make ping class-name configurable and add PingMailer (rep by Mark Saarinen)
<li>added httpd -V check in configure.in for EAPI (rep by Tauren Mills)
<li>sendRedirect needs to use host header (rep by Brandon Knitter)
<li>Apache connection error needs to use ap_internal_redirect (rep by Tom May)
<li>(2001-09-07) j_uri priority configured by form-uri-priority (rep by Tiberiu Fustos)
<li>AuthenticatorAdapter needs to have the registry passed in (rep by Grant Johnson)
<li>Auth handled by Apache/IIS wasn't passed to local auth (rep by Steve Tekell)
<li>fixed auth-config.xtp bug for form-login-config (rep by Peter Miller)
<li>added test to rotateLog to avoid 1969 los (fixed! by Jeff White)
<li>ref-ref-name should allow full path (rep by David Smiley and Neil Aggarwal)
<li>wrapper.pl should accept -no-auto-restart (rep by Tomas Loescher)
<li>getResourcePaths wasn't using getRealPath (rep by Eric Van Lydegraf)
<li>More XmlParser reuse issues
<li>(2001-09-04) nested xsl:for-each wasn't setting the context properly (rep by Stefan Scholl and Sergey Winnitsky)
<li>XmlParser wasn't properly initialized on reuse (rep by Jean-Francois Lamy)
<li>JNDI configuration in &lt;host> wasn't setting contextClassLoader (rep by Tauren Mills)
<li>removed session variable must remove value (rep by Jon Bodner)
<li>reset sessions shouldn't clear update count (rep by Jon Bodner)
<li>XmlPrinter wasn't flushing properly (rep by Jose Qinteiro)
<li>XmlPrinter should use UTF-8 as default encoding (rep by Edith Mooers)
<li>jsp-file and load-on-startup wasn't working (rep by David Smiley)
<li>filters should apply to welcome-file-list (rep by Jeremy Chone)
<li>XML declarations handled improperly in external entities (rep by Jean-Francois Lamy)
<li>JavaScript introspection needs to understand inner class constructors (rep by Michal Mosiewicz)
<li>Added XMLFilter support for JAXP (rep by Wes Hodges)
<li>Change File normalization in DOM/JAXP API (rep by Jean-Francois Lamy)
<li>QDeepNodeList needs to update length when the underlying dom changes (rep by Amit Kumar)
<li>Added setRegistry to bean initialization (rep by Colin Sampaleanu)
<li>Added Xsl command-line parameters (rep by Jean-Francois Lamy)
<li>Added servlet-classloader-hack (rep by Richard Dallaway)
<li>Added custom ErrorLog for the error-log configuration (rep by Mark Saarinen)
<li>AbstractStylesheetFactory needs to extend StylesheetFactory (rep by John Stetter)
<li>DirectoryServlet needs to accept wrappers (rep by Victor Salaman)
</ul>
</s2>

<s2 title='2.0.2 - Aug 27, 2001'>
<ul>
<li>SAXSource.sourceToInputSource should allow non SAXSource (rep by Sean Rohead)
<li>Apache ErrorDocument must send REDIRECT_* to Resin (fixed! by Alex Leykekh)
<li>WEB-INF/classes should override WEB-INF/lib (rep by Jean-Francois Lamy)
<li>Changed StreamSource to handle files (rep by Jean-Francois Lamy)
<li>Add timestamp to ping failure. (rep by Mark Saarinen)
<li>forwarded session wasn't passed with wrapper (rep by Andrey Akselrod)
<li>caucho-status was parsed incorrectly by config.c (rep by Rob Bunten)
<li>JNDI binding with jndi-link was parsing java:comp incorrectly
<li>(2001-08-20) NT httpd wasn't setting resin.home properly (rep by Osma Ahvenlampi)
<li>DOMBuilder needs to set attribute defaults (rep by Ewan Catlanach)
<li>System.properties is now context-sensitive, i.e. separate for each web-app.
<li>access-log positive timezone should include the '+' (rep by Adrian Zimmermann)
<li>Added round_robin_random to stream.c (rep by Kaushik Banerjee)
<li>&lt;pre> and &lt;textarea> pretty-printing (rep by Zacharias Beckman)
<li>(2001-08-16) XPath filters weren't handling context properly (rep by Jean-Baptiste Quenot)
<li>META-INF/taglib.tld should be picked up automatically (rep by Barry Meyer)
<li>SchemeContext should allow '/' and ':' as separators (rep by Laurens Friedel)
<li>wrapper.pl was overwriting the "http" with "tcp" (rep by Ron Abidog)
<li>&lt;host id='*'> was confusing the plugins (rep by Nathan Paquin)
<li>Explicitly search for /Program Files/Apache Group/Apache in setup when Apache doesn't configure registry (rep by Heinz Wehner)
<li>httpd.exe -install now removes superfluous quotes (rep by Steven Cena)
<li>(2001-08-15) Set caucho.multipart.form.error for too big multipart form upload (rep by Tiberiu Fustos and Jeff Szeto)
<li>scriptlet before &lt;html> broken when too large (rep by Gerret Apelt)
<li>jsp:setProperty was confused by a getFoo(int i) in the bean (rep by Randy Kahle)
<li>Fixed regression bug for jsp tags introduced in 8-14 snapshot (rep by Andrey Akselrod)
<li>bin/resin and httpd.exe need -server-root (rep by Osma Ahvenlampi)
<li>caucho-status needs to default to false (rep by Andrey Akselrod)
<li>(2001-08-14) Multiple calls to ContextStream.setStdout would confuse the stream (rep by Dave Meissner)
<li>XSL document() needs to use XSL search path (rep by Jean-Baptiste Quenot)
<li>added html_document to alloc latin1 entities (rep by Dirk Jaeckel)
<li>mod_caucho needs set_socket_cleanup and cse_close_all for cleanup (rep by Kirk Rasmussen)
<li>nsapi plugin wasn't handling plugin_ignore (rep by Paolo Diana)
<li>New DBPool had broken ping-on-reuse (rep by Dmitri Maximovich)
<li>Check for short session to avoid Konqueror bug (rep by Mihai Christodorescu)
<li>key-size changed to key_size (rep by Kirk Rasmussen)
<li>Added jsp/recycle-tags to disable tag recycling (rep by Steve Philp)
<li>Fixed conflict with ROOT.war and resin.conf (rep by Curtis Spencer)
<li>(2001-08-11) Fixed caching sync issue which could cause infinite looping
<li>Cleanup bin/resin thread allocation to minimize thread create/destroy
<li>Both the FileServlet and CacheInvocation understand the Range header (rep by Matt Kalinowski)
<li>The javax.servlet.context.tempdir should be automatically created (rep by Mitchell Ackermann)
<li>(2001-08-09) BeanUtil configuration now accepts addXXX
<li>filters only apply to top requests (rep by Richard Vowles)
<li>Wasn't clearing buffer after CodeRed attack (rep by Steve Philip)
<li>Make DBPool serializable (rep by Chris Beck)
<li>NamedDispatcher wasn't properly handling filters, including, and chaining (rep by Zacharias Beckman) 
<li>CachePath size needs to be in bytes, not blocks (rep by Dave King)
<li>(2001-08-07) XADataSource needs to reuse connections after close (rep by Rick Hightower) 
<li>(2001-08-03) DispatchRequest shouldn't use the parent's getUserPrincipal
<li>cache memory size wasn't converting from kb to bytes (rep by Marinos Yannikos)
<li>form login must use forward for login and error pages according to spec (rep by Norm Vilmer)
<li>(2001-08-02) FreeBSD wants -lpthread in configure (fixed! by Derek Leung)
<li>Add webapps support for IIS (rep by Kevin Seguin)
<li>304 not-modified should not return content-length
<li>added max-pool-time to dbpool (rep by Charles Meyer)
<li>added jsp/disable-init-log (rep by Klaus Friedel)
<li>j_uri should have priority (rep by Robert Koburg)
<li>host matching was using strstr instead of strcmp (rep by Donald Ball)
<li>XSL document(...) call from inside included stylesheet (rep by Jean-Baptiste Quenot)
<li>XSL transform should default to UTF-8 when the output stream is an OutputStream (rep by Jean-Baptiste Quenot)
<li>XSL apply-templates does not set the context (rep by Jean-Baptiste Quenot)
<li>JarPath needs to synchronized on the jarFile (rep by Joseph Dane)
<li>(7001-08-01) mangled name for windows needs to be lower case (rep by sslindia)
<li>sendRedirect should produce absolute URL, e.g. http://foo/test.jsp (rep by Harris Wulfson)
<li>forms are allowed even when content-length < 0 because of chunked encoding( rep by Matt Stanton)
<li>fixed includes with multipart form (rep by Andrey Akselrod and Tony Nys)
<li>setpgrp should be setpgid(0, 0) (rep by Derek Leung)
<li>required Tag attributes are allowed to be the empty string (rep by Andrey Akselrod)
<li>(2001-07-31) Initial cut of AbstractLogin interface
<li>wrapper.pl -pid needs to normalize to take care of chdir (rep by Brian Stanton)
<li>xsl.Sort.cmp bug not properly testing vb for null (rep by Art Taylor)
<li>SessionStore logic for allowing non-serializable wasn't creating good files (rep by Oleg Sapojnikov)
<li>servlets weren't properly saved in instances on startup causing dual compile (rep by Rony Zacharia)
<li>HEAD wasn't working with welcome-file-list (rep by Jean-Baptiste Quenot)
<li>XSL var evaluate with string functions wasn't checking null properly (rep by Art Taylor)
<li>resin:include should use same encoding as parent (rep by George Moshovitis)
<li>error-page location must be absolute (rep by Art Taylor)
<li>(2001-07-26) External entity handling for strict-xml (rep by Jean-Baptiste Quenot)
<li>In configure.in, only use perl if the c compiler matches (rep by Simon Hobbs)
<li>MSIE hack wasn't working for contentType with charset (rep by Dave Moellenhoff)
<li>warExpandFileList wasn't properly initialized causing reload loops (rep by Charles Meyer)
<li>Cookies version 1 upgraded to rfc2965 (rep by Andy C)
<li>(2001-07-25) More Auth compatibilities
<li>URIResolver is allowed to return null (rep by Jose Quinteiro)
<li>(2001-07-24) Upgrade DBPool to allow XADataSource
<li>RunnerRequest needs to use new LOGIN_NAME from AbstractAuth (rep by Tiberiu Fustos)
<li>new stylesheet with DOM should use DOM's systemId (rep by Adolfo Aladro)
<li>missing new JSP taglib names: tag-class, etc. (rep by Andrew Akselrod)
<li>removed non-core DOM elements (rep by Dane Foster)
<li>(2001-07-23) AuthenticatorAdapter
<li>select pattern ../@foo wasn't handled property (rep by Dmitry Platonoff)
<li>classloader isModified changes and makeAll order (rep by Dave Moellenhoff)
<li>mod_caucho may have per-directory configuration (rep by ajazam)
<li>WEB-INF/lib in &lt;host> wasn't properly handled (rep by Sean Leach)
<li>Use char[] buffer in QBodyContext to speed writeOut (rep by Haining Huang)
<li>(2001-07-20) auth exception thrown in getUserPrincipal should propagate (rep by Sean Rohead)
<li>ServletServer reload could set contextClassLoader wrong (rep by Charles Meyer)
<li>XSL document() needs to rethrow exceptions (rep by Adolfo Aladro)
<li>(2001-07-19) Compile problem with jsp:setParameter with multiple array values (fixed! by Hannes Loubser)
<li>listener classes can implement multiple interfaces (rep by Max Kutny)
<li>error parsing XML with external DTD (rep by James Bond and Jean-Baptiste Quenot)
<li>XSL document() needs to be relative to the stylesheet (rep by Jean-Baptiste Quenot)
<li>war-dir and war-expand-dir need to be aware that File.list() might not return a consistent order (rep by Charles Meyer)
<li>reload of war would append web.xml to old registry (rep by Charles Meyer)
<li>responseAdapter.addIntHeader was calling setIntHeader (fixed! by Brian Ewins)
<li>(2001-07-17) Initial cut of SQL rewrite and DB clustering (rep by Jeremy Randall and Chris Beck)
<li>(2001-07-16) Initial cut of authentication rewrite (rep by Sean Rohead)
<li>ETag needs to be quoted, e.g. ETag: "fffzzz" (rep by Brian Ewins)
<li>(2001-07-11) Added custom access logging with access-log/log-class (req by Marcus Stein)
<li>Added response for sendRedirect for stupid wap browsers (rep by Harris Wulfson)
<li>Added initial cut for the security-manager (rep by Tauren Mills)
<li>added stdout-log and stderr-log in web-app (rep by Jeff White)
<li>error-log rollover settings for virtual host were ignored (rep by Jeff White)
<li>jsp:getProperty and jsp:setProperty should allow case insensitive props (rep by Richard Stoller)
<li>endTagHack nullpointer with empty body tag (rep by Ovidiu Ionescu)
<li>PageContext.XXXAttribute needs to check session for null (rep by Martin Cooper)
</ul>
</s2>

<s2 title='2.0.1 - July 10, 2001'>
<ul>
<li>(2001-07-09) isapi_srun wasn't tracking active_connections for load balancing
<li>round robin load balancing fixes
<li>Multiple &lt;% ... %> allowed for XTP special parsing
<li>(2001-07-05) file servlet needs to deal with filters and wrappers (rep by Bryan Young)
<li>xsl:use-attribute-sets for literal element (rep by Jean-Baptiste Quenot)
<li>forward() query string needs to be aggregated (rep by Chris Monster)
<li>context class loader needs setting in Application.init (rep by Frank Nestel)
<li>(2001-07-04) mod_caucho doesn't need per-request config (rep by Carlos)
<li>getResourcePaths implemented (rep by Davis Koblas)
<li>session isolation with getContext and forward (rep by Christian Sell)
<li>Changed compiler timeout message (rep by Jens Goring)
<li>jsp:setParameter regression failure from snapshot (rep by Serge Popov)
<li>XSL precompilation wasn't detected with StreamSource (fixed! by Andrey Novikov)
<li>XSL imports and includes with StreamSource weren't paying attention to System ID (fixed! by Andrey Novik)
<li>SystemId was ignored in stylesheet newTemplates (fixed! by Andrey Novik)
<li>Added Reader support for stylesheet Source (added! by Andrey Novik)
<li>Added URIResolver support for stylesheets (added! by Andrey Novik)
<li>welcome-file-list needs to check authorization (rep by Sean Rohead)
<li>CDATA printing didn't close the element (rep by Fernando Herrero)
<li>(2001-07-02) AbstractCompiler error messages
<li>added mod_caucho/resin ssl support (rep by Chun Heng Lum)
<li>(2001-06-28) added jsp:setProperty support for long[] (rep by Ethan Adams)
<li>&lt;classpath id='http://foo.com:8080/classes'> supported (rep by Dimitri Rakitine)
<li>Xml parsing wasn't properly recording dependencies (rep by Ron Hart)
<li>improved servlet failure error messages (rep by Jose Manuel Cantera Fonseca)
<li>isSupported() needs to work for document element too (rep by Felix Gnass)
<li>Fixed QDate parsing to handle Netscape's ;length=40  (rep by Frank Nestel)
<li>Added ETag support to HttpServlet (rep by Frank Nestel)
<li>(2001-06-26) war-expand-dir last-modified wasn't properly recorded (rep by Roger Kjensrud)
<li>Added bin/resin support for multiple ports and openssl (rep by Dmitri Platonoff)
<li>JSP can't override destroy() for extends classes (rep by Dimitri)
<li>owner.changeCount++ needs test if owner == null, e.g. for dtd nodes (rep by Christophe Condomines)
<li>In FormLoginServlet, request.getSession() should be after login (rep by Sean Rohead)
<li>resin.conf error should allow fixes for problems outside the web-app (rep by Frank Nestel)
<li>added &lt;interface host='localhost' port='8080'/> to security-constraint (rep by Rene Trussell-Cullen)
<li>For windows ensure case-sensitive check for CompilingClassLoader (rep by Alan Berezin)
<li>servlet.init method must be allowed to call request dispatcher (rep by Gerret Apelt)
<li>server vs host vs web-app vs web.xml priority was confused (rep by Robert Gagliardo)
<li>classpath id='WEB-INF' must be treated as default for web-app (rep by Brian Beaulieu)
<li>CauchoHost wasn't handled properly with new srun impl (rep by Ashish Khosla)
<li>jndi-link wasn't handling foreign contexts (rep by Dmitri Maximovich)
<li>httpd-port and srun-port now throw exceptions
<li>ReaderWriterStream chopping off utf-8 bytes (rep by Jakob Eriksson)
<li>Xml.parseDocumentString must ignore encoding and use utf-8 (rep by Jakob Eriksson)
<li>XML '\n' entities in attributes were broken (fixed by Jakob Eriksson)
<li>XmlPrinter must escape '&lt;' and '&gt;' in attributes (rep by Jakob Eriksson)
<li>added exception-on-timeout to DBPool config (rep by Steve Philip)
<li>ResponseAdapter.close() needs to use correct encoding (rep by romario)
<li>cleanup tcp-ring loadSelf error messages (rep by Meeraj Kunnumpurath)
<li>revise nsapi init order to fix g_config assignment (rep by Paolo Diana)
<li>cleaup cse_init update (rep by Tom May)
<li>isapi_srun was shortening response headers
<li>persistent serialization errors should be logged automatically
<li>Added AbstractAuthenticator options (rep by Francois Bertrand)
<li>FileServlet needs to handle filter wrappers (rep by Bryan Young)
<li>fixed cp1252 encoding (rep by Pedro Beck Gomes da Costa)
<li>Added work-dir to web-app configuration (rep by Magnus Nordseth)
<li>body tag can return EVAL_BODY_INCLUDE (rep by Michal Mosiewicz)
<li>added LexicalHandler support for CDATA and comments (rep by Robert Koberg)
<li>stylesheets for vary example should allow vary.xtp directly
<li>JavaScript var printing when forced from variable to global (rep by Stanislav Devyatovskiy)
<li>JSP tag setParent(null) needs cast (rep by Michal Mosiewicz)
<li>bin/resin was returning canonical host for getServerName, not the virtual host (rep by Jean-Baptiste Quenot)
<li>bin/resin now handles multiple ports (rep by Dmitri Platonoff)
<li>log session serialization errors (rep by Stephen Tenberg)
<li>ROOT web-app wasn't recognized (rep by Michael Miller)
<li>Continuation headers are used by Opera (rep by Stefan Alexandrescu and Oliver Koell)
<li>remove trailing '\' from httpd.exe classpath (rep by Oliver Henlich)
<li>potential buffer overflow in isapi_srun.dll (rep by Netcraft)
<li>handleCron in RotateStream needs to synchronize the stream (rep by Tom May)
<li>getElementsByTag name must be live (rep by Jakob Eriksson)
<li>transform needs to handle StreamSource.getReader() (rep by Wes Hodges)
<li>transform needs to handle StreamResult.getWriter() (rep by Wes Hodges)
<li>Apache 2 needs to use ap_get_server_name (rep by Dave Wallace)
<li>nested &lt;%@ include %> didn't reset pwd properly (rep by Stanislav Devyatovskiy)
<li>.war update on windows needs to deal with the windows non-delete of busy file issue (rep by Frank Carver)
<li>XslParser needs to use QElement, not CauchoElement (rep by Frank Carver)
<li>java compilation needs better error message when internal fails or the external compiler is missing (rep by Paul Freeman)
<li>add GBK to Encoding.java (rep by leoding)
<li>setup.exe needs to put LoadModule and AddModule in right order (rep by Engst Oliver)
<li>getElementByTagName fails with no children (rep by Trevor Baker)
<li>JSP contentType must be copied verbatim (rep by Tomas Zeman)
<li>servletPath and servletPath + pathInfo need path-mapping (rep by Jean-Baptiste Quenot)
<li>servletPath + pathInfo must be allowed as JSP (rep by Paul Brown)
<li>'+' needs to be allowed in mailto names (fixed! by Todd Lipcon)
<li>caucho_dispatch needs to occur after url->filename mapping to support mod_dir (rep by Henrik Schack)
<li>stream.c create too large of a static data structure (rep by Phil Eschallier)
<li>HardCore should not be enabled by default (rep by Carlos)
</ul>
</s2>

<s2 title='2.0.0 - June 8, 2001'>
<ul>
<li>JNDI needs to set itself in classloader before calling jndi-link (rep by Joseph Dane)
<li>Tags shouldn't be pooled across instances (rep by Michal Mosiewicz)
<li>FormLogin forward needs to check auth (rep by Martin Cordoba)
<li>jsp/jsp-max needs to limit total number of JSP pages (rep by Mark Wilkie)
<li>basic jsp:text and jsp:root support.
<li>Major fixes to HardCore POST support.
<li>CharBuffer.getChars() would loop forever (rep by Wallace Roberts)
<li>stylesheets and XTP files now generate temp files in WEB-INF/work.
<li>added config-update-interval to web-app (rep by Bill Marcum)
<li>StringStream, PipeStream, and ReaderWriterStream had bad write() impl (rep by Jean-Baptiste Quenot)
<li>session-config/cookie-max-age (rep by Mark Saarinen)
<li>"JAVA" encoding for XSL stylesheets (rep by Jean-Baptiste Quenot)
<li>host id='foo.com:8080' should only match port 8080 (rep by Lee Chin Peng)
<li>For Apache2, mod_caucho can handle &lt;Location> configuration
<li>share mod_caucho sockets across virtual hosts (rep by Brian Beaulieu)
<li>sessions using SSL sessions (rep by Hoong Wai Wong)
<li>.asf .asx mime-types (rep by Joe Busch)
<li>Make AbstractRequest to work around PHP bug (repb y Wallace Roberts)
<li>connection count based load balancing
<li>Apache2 support for mod_caucho.c
<li>Performance fixes for taglibs.
<li>web.xml encoding for non-UTF-8 was broken (rep by Frank Nestel)
<li>error-log can now have rollover-size and rollover-period (rep by Mark Kreklau)
<li>Generated JSP classes are now put in WEB-INF/work
<li>position() and last() support for apply-templates (rep by Stefan Scholl)
<li>&lt;log> now supports rollover-period (rep by Heather Grace)
<li>SAXTransformerFactory needs to extend TransformerFactory (rep by Stephane Bailliez)
<li>Randomize the round_robin_index on Apache client start (rep by Mark Berry)
<li>jndi hack and cleanup of dynamic class loader (rep by Frank Nestel)
<li>Added &lt;sticky-sessions> configuration (rep by George Pearson)
<li>Log errors and recover better with .war expansion fails (rep by Matt Grimm)
<li>Better error messages for servlet instantiation issues (rep by Gerret Apelt)
<li>Form handling no longer uses the response content type (rep by Serve Popov)
<li>single signon across &lt;host> or &;http-server> (rep by Dave Dribin)
<li>JSP file wasn't reusing the allocated tags (rep by Mac Ferguson)
<li>Make xml/parsers classes public to support JDOM (rep by Colin Sampaleanu)
<li>run-at dummy response should return valid getWriter(), but to /dev/null (rep by Brian Keefe)
<li>Added run-at/period (rep by Frederic Giust)
<li>Changed Alarm to use linked-list instead of ArrayList (rep by Neil Fradkin)
<li>DynamicClassLoader now extends SecurityClassLoader (rep by Ron van Pol)
<li>getRequestURL in forward() was using old value (rep by Christian Sell)
<li>added com.caucho.security.SecurityContext to support EJB.
<li>added allow-admin to web-app and ApplicationAdmin (rep by Heather Grace)
<li>Exceptions in DBPool are now properly wrapped.
<li>jndi-link needs to use an ObjectProxy to handle foreign JNDI updates (rep by Alf Werder)
<li>Using Perl as a heuristic in ./configure to guess compile flags
<li>Allow web-xml to be configured (rep by Adolfo Aladro)
<li>Allowed the session-url-prefix to be configured (rep by Peter Andrews)
<li>Better error reporting for classpath/library-dir (rep by HYN)
<li>Added AttributeListIterator to handle foreign DOMs (rep by Jakob Eriksson)
<li>Errors in web.xml shouldn't disable the server on startup (rep by Marcus)
<li>Add cache enable=false to disable the cache (rep by John Moore)
<li>classloader in host context needs init (rep by Qiao Jin)
<li>getProperty wasn't finding values properly (rep by Patrik Laszlo and Dave Dribin)
<li>Duplicate instantiation in Taglib (rep by Ralf Beier)
</ul>
</s2>

<a href='changes-1.xtp'>older changes</a>
</s1>

