<document>
<body>
<s1 title="Resin Change Log">

<s2 title="1.2.9 - Nov 15, 2001">
<ul>
<li>(2001-10-26) Response.finish with forward() needs to skip input stream (rep by Song Qiu)
</li><li>Taglib jar lookup backpatched from 2.0 (rep by Neil Fradkin)
</li><li>bin/resin request_parse_headers needs to deal with long headers (rep by Stefan Praszlawicz)
</li><li>With Apache, wasn't reloading servlets (rep by Guy McArthur)
</li><li>Wasn't clearing buffer after CodeRed attack (rep by Steve Philip)
</li><li>sendRedirect should produce absolute URL, e.g. http://foo/test.jsp (rep by Harris Wulfson)
</li></ul>
</s2>

<s2 title="1.2.8 - July 11, 2001">
<ul>
<li>potential buffer overflow in isapi_srun.dll (rep by Netcraft)
</li><li>JSP contentType fix (rep by Tomas Zeman)
</li><li>Alarm change since volatile long is guaranteed atomic (rep by Tom May)
</li><li>close_child in mod_caucho.c had incorrect test (fixed! by Mario Bulhoes)
</li><li>TcpServer.startConnection could increment startCount w/o starting thread (rep by Daniel Wroblewski)
</li><li>internal compiler issue with i18n (fixed! by Tatsuya Bizenn)
</li></ul>
</s2>

<s2 title="1.2.7 - May 31, 2001">
<ul>
<li>Apache/IIS with query string (rep by everybody)
</li><li>findSessionIdFromCookie needs to deal with null CookiesIn (rep by Gonzalo Diethelm)
</li></ul>
</s2>

<s2 title="1.2.6 - May 30, 2001">
<ul>
<li>detect Solaris Interrupt in waitForExit (rep by Kirk Rasmussen)
</li><li>nsapi.c needs to look for ;jsessionid= not ;JSESSIONID= (rep by Tomasz Karpowicz)
</li><li>BasicPrincipal needs to be serializable (rep by Jim Frenette)
</li><li>plugin cleanup to avoid post issues (rep by Claus Jacobsen)
</li><li>better detection/recovery of accept interrupts (rep by Daniel Wroblewski)
</li><li>mod_caucho rewrite of ;jsessionid= must update stat info (rep by Robert Binion)
</li><li>Create relative paths for jikes compilation on win32 (rep by James Korotney)
</li><li>&lt;classpath source='.'/&gt; caused compilation errors (rep by Peter Andrews)
</li><li>Locale "zh" should be mapped to GB2312, not BG2312 (rep by Riew)
</li><li>Exception in HTTP request parsing must close connection (rep by David Hammerton)
</li><li>Too-many SSL exceptions should stop the server (rep by Jonas)
</li><li>always-load-session wasn't accepting "false" (rep by Mark Saarinen)
</li><li>changed wrapper.pl setpgrp(0,0); to setpgrp; to fix Solaris (fixed! by Guy McArthur)
</li><li>ServletInputStream wasn't returning lines w/o newline.
</li><li>web.xml must support xml:param='preserve' (rep by Mark Owen)
</li><li>JSP headers in XTP should still allow doctype decl (rep by Soon Shin)
</li><li>IIS with query strings was causing not found exceptions (rep by Mark Saarinen)
</li><li>JavaScript wrapping of classes named $Foo was broken (rep by Claude Pelletier)
</li><li>JavaCompiler should not normalize the encoding to the Java name (rep by Dmitry Sevostyanov)
</li><li>Check war-dir change using list() instead of just lastModified for NT.
</li><li>NT wasn't detecting jar additions to WEB-INF/lib.
</li><li>DirectoryServlet needs to use URLUtil.encode (fixed! by Justin Akehurst)
</li><li>Bug in XPath FromRoot when node is null. (fixed! by Bruno Navert)
</li><li>JniRequest and proxy.h need to sync buffer sizes (rep by Istvan Ratkai)
</li><li>CharBuffer.getChars wasn't incrementing properly (fixed! by Lolo LaSida)
</li><li>in wrapper.pl -green and -classic need to be first (rep by Terence Parr)
</li><li>Request Content-Type charset allows quotes (fixed! by Philip Nelson)
</li><li>URL // should be synonym of root (rep by Ken Miyaki)
</li><li>duplicate data sources are not detected (rep by C. K. Lim) 
</li><li>&amp;getcwd is buggy in wrapper.pl, use getcwd() instead (fixed! by Adam Ryba)
</li><li>Duplicate JSP page encoding with same encoding should be allowed (rep by George Moschovitis)
</li><li>&lt;embed&gt; cannot have pretty-print spaces added (rep by Stefan Scholl)
</li><li>AT_BEGIN tags need to be updated in loops (rep by Bindu Mohan)
</li><li>check war-expand-dir for modifications
</li><li>expose Response.getContentLength() as public (rep by Carl-Henrik Tjärnlund)
</li><li>If no cookies in Request.getCookies() should return null (rep by Pierre-Yves Saumont)
</li><li>response.setContentType was ignoring parameters like ";boundary" (fixed! by Joe Zimmerlin)
</li><li>isapi_srun needs better error-handling for bad resin.ini (rep by Frank Nestel)
</li><li>URLUtil needs to encoding '%' (rep by Martin Cooper)
</li><li>Fixed jsp_precompile (rep by Martin Cooper and Serge Knystautas)
</li><li>HttpUtils wasn't parsing long POST forms (rep by Robert Whittle and Gustavo Santucho)
</li><li>SmtpStream wasn't handling multiline SMTP responses properly (fixed! by Michael Kolfman)
</li><li>JSP tag values containing quotes weren't properly escaped (rep by Hans Bergsten and Mikael Andersson)
</li><li>CharBuffer.replace wasn't setting the length (rep by Alan Berezin)
</li><li>getElementsByTagName shouldn't include the tag itself (rep by Jakob Eriksson)
</li><li>CpXXX encodings should use CpXXX as the mime-type (rep by Serge Popov)
</li><li>security fixes (rep by Kristoffer Karlsson and Huang YingNing)
</li><li>jsp:setProperty error message bugs (rep by Eric Rasmussen)
</li><li>Several bugs with tcp-store and different crash/restore orders (rep by Gary Doughty)
</li></ul>
</s2>

<s2 title="2.0.b2 - April 17, 2001">
<ul>
<li>Reorg XPath preparing to support XSLT 1.1
</li><li>reworked vfs.i18n to make it easier to add other encodings
</li><li>break up XSL template init to avoid Java method limits (rep by Jean-Baptiste Quenot)
</li><li>IIS getRequestURI() needs to be re-escaped (rep by Frank Nestel)
</li><li>exclude-result-prefixes wasn't working with new XSL (rep by Jean-Baptiste Quenot)
</li><li>Session destroy events need to be called even with empty sessions (rep by Deepak Sharma)
</li><li>added resin:disable-output-escaping as synonym for disable-output-escaping at top (rep by Stefan Scholl)
</li><li>position() in sort needs to use sort order, not doc order (rep by Peter Heinrich)
</li><li>Initial JAXP 1.1 cut
</li><li>XTP with lots of parameters needs to hash mangled class name (rep by Jean-Baptiste Quenot)
</li><li>XML/XSL redesign
</li><li>merge with 1.2snap fixes
</li><li>Need to set javax.servlet.error.request_uri (rep by Serge Knystautas)
</li><li>Tag library performance optimization
</li><li>Cookies need space between ;Path (rep by Sunny Balijepalli)
</li><li>HardCore small POST
</li><li>HardCore basic caching
</li><li>HardCore date generation
</li></ul>
</s2>

<s2 title="1.2.5 - April 12, 2001">
<ul>
<li>Regression failure with a.jsp/foo.jsp
</li></ul>
</s2>

<s2 title="1.2.4 - April 11, 2001">
<ul>
<li>return error page on basic auth forbidden (rep by Mark Ashworth)
</li><li>IIS 5.0 auth fixes (fixed! by Ahn Le)
</li><li>more NT filepath garbage (rep by Huang YingNing)
</li><li>cleaned up SchemeContext lookup of non-existent file (rep by Dave Moellenhoff)
</li><li>WriteStream needs to check "source" again when flushing (rep by Stephen Wong)
</li><li>application["caucho.server-id"] has the server id (rep by Bill Horsman)
</li><li>better error reporting for interpolated values (rep by Roger Kjensrud)
</li><li>tcpServer array not properly initialized in ResinServer (fixed! by Mathias Lagerwall)
</li><li>AIX lockup: read_length in ReadStream shouldn't ever be &lt; 0. (found! by Ganesan Venkatasubramanian)
</li><li>directories/files starting with '.' should not be compiled (rep by Todd Lipcon)
</li><li>JniRequest.getReader() was broken (rep by Istvan Ratkai)
</li><li>XmlPrinter.print needs to flush for wrapped streams (rep by Chris Cuilla)
</li><li>srun backup order was inconsistent (even/odd) (rep by Tony Payne)
</li><li>cleanup encoding on close() and limit char[] size in WriteStream (rep by Peng Yong)
</li><li>.jsp issues (rep by Elias Levy)
</li><li>hash remote ip in generated session id (rep by Franck Bombourg)
</li><li>better error message with XmlPrinter using writer and encoding (rep by Calh-Henrik Tjarnlund)
</li><li>getNamedDispatcher wasn't forwarding() property (rep by Ralf Beier)
</li><li>servlet errors on init() need to be logged (rep by Charles Meyer)
</li><li>jikes problems with compilation (rep by Dave Moellenhoff)
</li><li>add multiple parameters to env.jsp (added! by Martin Cooper)
</li><li>mod_caucho should strip url-encoding from static files (rep by Kirk Rasmussen)
</li><li>old srun sockets need closing (rep by Sang Yi)
</li><li>Invalidated TCP ring sessions need to be removed on restart (rep by Christian Kindler)
</li><li>IP printing bug in access logging (rep by Frits Jalvingh)
</li><li>Need to strip leading whitespace for IIS headers (rep by Martin Jerico)
</li><li>Better recovery for standalone request -e index.xtp, i.e. no / (rep by Richie Bielak)
</li><li>Setting doctype-system should be in Document.setProperty (rep by Boris Granveaud)
</li><li>Fixed incorrect DOCTYPE for HTML (rep by Paul Brown)
</li><li>sendRedirect HTTP/1.1 needs to allow keepalive or send Connection: close (rep by Hoong Wai Wong)
</li><li>NT bin/httpd.exe now has -EPATH=foo to set environment variables (rep by Christian Plonka)
</li><li>RunnerRequest needs to grab the server port (rep by Stephen Tenberg)
</li><li>Path.normalize needs to leave trailing '/'
</li><li>wrapper.pl should use 127.0.0.1 instead of INADDR_ANY (rep by Anthony Tonns)
</li><li>can't connect must return 503, not 500 (rep by Bernshtam Pavel)
</li><li>Make JspLineException serializable (rep by Diego Martin Sabaris)
</li><li>Increate srun-socket timeout (rep by Robert Armstrong)
</li><li>NodeTransformer must set system-id and public id (rep by Boris Granveaud)
</li><li>SendRedirect shouldn't normalize queryString (fixed! by Martin Cooper)
</li><li>QElement.print needs to cast children to QAbstractNode (rep by Tomas Bahnik)
</li><li>character-encoding was ignored in application (rep by Frank Nestel)
</li><li>&lt;%@ include %&gt; with url-pattern='/*' breaks (rep by Andrej Gabara)
</li><li>NT case insensitive could cause double servlet load (rep by Jan Svensson)
</li><li>NT service must catch ctrl-break (rep by Tarvis Romney)
</li><li>add entire certificate chain as javax.servlet.request.X509Certificate.chain (added! by Yori Sakakura)
</li><li>need to check JspFactory.getDefaultFactory before setFactory (rep by Randy Kemp)
</li><li>need to escape &lt; for file not found (rep by Hiromitsu Takagi)
</li><li>Fixed StringTransformer encoding issues (rep by George Moshovitis)
</li><li>mod_caucho needs case-insentivie host match (rep by David Cruz Langreo)
</li><li>Base64 decode must ignore spaces (rep by flare)
</li><li>CompilingClassLoader must not delete .class unless there's a .java (rep by Daniel Kirk)
</li><li>character-encoding should not automatically affect compilation (rep by Frank Nestel)
</li><li>content-length missing on some caching cases (rep by Lars Haupt-Hansen)
</li><li>added XmlParser.setDefaultEncoding (rep by Frank Carver)
</li><li>welcome files need passed parameters, e.g. for /foo/?id=a (rep by Jean-Baptiste Quenot)
</li><li>forwarded request parameters need to handle i18n encoding (fixed! by Stanislav Debaltchouk)
</li><li>Added entities-as-text init-param for XtpServlet (rep by Dariusz Wojtas)
</li><li>Cron needs to start at hh:mm:01 instead of :00 so run-at will have correct time (rep by Mats Ekberg)
</li><li>taglib uri='foo.tld' should check web-app root (rep by Julie Melbin)
</li><li>Resin shouldn't use BeanInfo to get attributes and properties (rep by Mike Wynholds)
</li><li>HttpUtils.getRequestURL needs to grok SSL port 443 (rep by Alex Gleyzer)
</li><li>wars should get all plugin requests (rep by Colin Hawkett)
</li><li>Make log rollover count configurable (rep by Jeff W)
</li><li>Resin documentation XSL changes to handle web-apps (rep by James Korotney)
</li><li>xmlns should be ignored by JSP parser (rep by darkness)
</li><li>exclude-namespace-prefixes should be exclude-result-prefixes (rep by darkness)
</li><li>::$DATA issue (rep by Rosinei Muniz)
</li><li>ByteToChar.addByte() needs to loop until ring clears (rep by Timur H.Evdokimoff)
</li><li>XslParser needs to understand namespaces (rep by darkness)
</li><li>mailto: missing date (rep by Alex Sharaz)
</li><li>XslFilter must not copy input headers to output (rep by Pieter Schoenmakers)
</li><li>i18n form handling with JDK 1.1 is different from 1.2 (rep by Serge Popov) 
</li><li>bin/resin now uses GetPrimitiveArrayCritical (rep by Vickie Yang)
</li><li>JniRequest wasn't properly setting the date
</li><li>getHeaderBuffer bug in JniRequest breaks post (rep by Ratkai Istvan)
</li><li>XslWriter needs to send the xmlns url with its attribute (rep by darkness)
</li><li>plugin wasn't ignoring spaces in web.xml properly (rep by Serge Popov)
</li><li>must call setBodyContent(null) when doStart fails (rep by David Geary)
</li><li>duplicate web-app now throw an error message (rep by Emily Voytek)
</li><li>bin/resin sync/disconnect fixes preventing page sharing (rep by Ian Beard)
</li><li>work-dir should allow Java properties work-dir='$foo' with -Dfoo=bar (rep by Andrej Gabara)
</li><li>normalize paths in wrapper.pl so chdir won't break relative paths (fixed! by Mike Wynholds)
</li><li>resin.conf examples need &lt;srun&gt; (rep by Mike Wynholds)
</li><li>init.resin needs to use $EXE (rep by Martin Decker)
</li><li>Cookies need space between ;Path
</li><li>do not add *.jsp and *.xtp to plugin map (rep by Andrew Boyko)
</li><li>symlink to empty webapp not treated as a directory (rep by Pieter Schoenmakers)
</li><li>Registry parsing should let SAX parsers return multiple characters() (rep by Frank Nestel)
</li><li>'#' must not be treated specially in the URL (rep by Mark Berry)
</li><li>NullPointer for bin/resin with logging enabled (rep by Ratkai Istvan)
</li><li>Added Cp866 and other MS-DOS code pages to known encodings (rep by Serge Popov)
</li></ul>
</s2>

<s2 title="1.1snap - March 12, 2001">
<ul>
<li>mod_caucho needs case-insensitve host match (rep by David Cruz Langreo)
</li></ul>
</s2>

<s2 title="1.3.beta1 - Jan 29, 2001">
<ul>
<li>Servlet 2.3 request.setContentEncoding
</li><li>Servlet 2.3 listeners
</li><li>include() and forward() need to allow wrapped requests (rep by David Geary)
</li><li>JSP 1.2 variable declaration in tld
</li><li>Resin HardCore<sup>tm</sup> initial implementation
</li><li>JSP 1.2 IterationTag
</li><li>JSP 1.2 TryCatchFinally
</li><li>NT service name changed to Resin (rep by Colin Sampaleanu)
</li><li>Initial cut of Servlet 2.3 filters
</li></ul>
</s2>

<s2 title="1.1snap - March 1, 2001">
<ul>
<li>Solaris client disconnect fixes patched from 1.2
</li></ul>
</s2>

<s2 title="1.1.6 - Feb 13, 2001">
<ul>
<li>NT .. issues
</li><li>tag-location needs to allow absolute paths (rep by David King)
</li><li>tag-location needs to look in classpath (rep by David King)
</li><li>limit on headers too small in resin 1.1 (rep by Torben Bruun)
</li><li>%00 issues (rep by Jonah Kowall)
</li><li>mod_caucho changed r-&gt;unparsed_uri to r-&gt;uri (rep by Walter Holladay)
</li><li>print exception log even when there's an error page (rep by Dave King)
</li><li>ClientDisconnectException wasn't properly propagates in JSP (rep by Daniel Spichty)
</li><li>web-app id='foo' has wrong default app-dir (rep by James Korotney)
</li><li>close() synchronization issue causing premature close
</li><li>class.path and sun.boot.class.path are both needed for jikes (rep by James Korotney)
</li><li>POST needs to read all the data for a sendRedirect (rep by Alan Berezin)
</li><li>war at non-top-level weren't expanded (fixed! by James Ralston)
</li></ul>
</s2>

<s2 title="1.2.3 - Feb 15, 2001">
<ul>
<li>Document.getElementById() wasn't implemented (rep by Carl-Henrik Tjarnlund)
</li><li>application.getResource() wasn't returning jars properly (rep by Peter Mudima)
</li><li>Caching issues when first request is HEAD (rep by Andrej Gabara)
</li><li>XTP html-to-lower detection broken (rep by Gerret Apelt)
</li><li>URL context factory fixes (rep by Nina Berezinsky &amp; Christian Plonka)
</li><li>AT_BEGIN jsp tag variable needs update AT_END (rep by Todd Fast)
</li><li>directory listing needs to encode %20 for spaces (rep by Troy Engel)
</li><li>must not save cookie in cache
</li><li>added forbid-host to forbid hostile IP addresses
</li><li>change single-host server lookup (rep by Brandon Knitter)
</li><li>cleanup socket write stream.c to handle short writes
</li><li>allow assignment of smtp sender='foo@bar.com' in resin.conf (fixed! by Matthew Hixson)
</li><li>jar reloading issues (rep by Frank Nestel)
</li><li>Use request's encoding as default encoding for multipart stream (fixed! by Rick Lei)
</li><li>possible synchronization issues in CacheInvocation
</li><li>jsp:declaration allowed inside tags (rep by Julie Melbin)
</li><li>Improve random number seeding for session id generation (rep by Jeff Trimm)
</li><li>On java.lang.Error in JSP page, force a recompilation (rep by Guy Tal)
</li><li>isapi_srun.dll wasn't matching /* at root web-app (rep by Nicolas Lehuen)
</li><li>added war-expand-dir (rep by George Cai)
</li><li>plugins need to look in work/_war for expanded wars (rep by Colin Hawkett)
</li><li>added DBPool.setConnectionWaitTime(long time) (rep by Walter Holladay)
</li><li>;jsessionid processing was confused with %20 escapes (rep by Frank Nestel)
</li><li>added SessionBacking and significanly rewrote the distributed ring
</li><li>class-update-interval needs to be a period (rep by Damien Mascord)
</li><li>caching race with setting content-length (rep by Todd Carmichael)
</li><li>request.getDate() not properly set for keepalive connections
</li><li>IIS plugin wasn't detecting class changes! (rep by Igor Kolomiyets)
</li><li>isapi_srun.dll enhancements for client certificates (added! by Ahn Le)
</li><li>force xpath/xsl to use Resin's XML to avoid DOM issues
</li><li>nsapi.c string returned by util_hostname() must be strdupped (fixed! by Casu Alain)
</li><li>when not precompiling, force load of page even when modified (rep by Geert Van Damme)
</li><li>cookie-auth-update was documented wrong (rep by Martijn Sprink)
</li><li>taglib lookup fixes (rep by Frank Nestel and Rickard Oberg)
</li><li>Need to catch throwables from servlet.init and servlet.destroy (rep by Horst Reiterer)
</li><li>xtp/jsp parsing of attributes now supports "foo&lt;%= "a" %&gt;bar" (rep by Peter Andrews)
</li><li>bin/resin needs to obey host and -server (rep by Ratkai Istvan)
</li><li>HttpStream needs to read results before recycling - ping issue (rep by Carlos Moreno)
<!--
<li>entities-as-text should not be changed with auto-xml (rep by Jean-Baptiste Quenot)
-->
</li><li>isapi_srun.dll needs to use browser redirect for connection failure (rep by Carlos Moreno) 
</li><li>Anchors should be ignored (rep by Kirill Maximov)
</li><li>TagData.getAttributes() missing (rep by James Korotney)
</li><li>NT security issue (rep by Joe Testa)
</li><li>distributed session issues with virtual hosts (rep by Tony Payne)
</li><li>distributed-session-directory configurable (rep by Dustin Sallings)
</li><li>The old value of XPath more-positions wasn't properly saved (rep by Sergey Winnitsky)
</li><li>With persistent sessions, request.getSession(false) should return the saved session. (rep by Dmitri Maximovich)
</li><li>i18n for Form parameters doesn't handle spaces correctly (rep by Timur Evdokimoff)
</li><li>Application.cron() close() and timeout() need setContextClassLoader (rep by Daniel Wroblewski)
</li><li>several misc distributed session fixes
</li><li>Special HTML parsing for XTP (rep by Peter Andrews)
</li><li>Add alarm so long external compile jobs get stopped.
</li><li>Allow $resin_home/foo/bar.jar in classloader (rep by BER Adrian)
</li><li>releasePageContext should be in a finally block (rep by Yori Sakakura)
</li><li>added newStylesheet(Reader) method (rep by Dariusz Wojtas)
</li><li>cache-mapping expires=0 should not set an expires time (rep by Bernshtam Pavel)
</li><li>HttpSessionBindingEvent order fixes for invalidation (rep by Graham Lea)
</li><li>bug in TagAttributeInfo.getIdAttribute()
</li><li>reuse TCP connections for tcp-store
</li><li>added srun-index to &lt;srun&gt; configuration (rep by Christian Carstensen).
</li><li>tcp-distributed sessions could use old values when owning host restarts (rep by Osma Ahvenlampi)
</li><li>always-save-session was inverted! (rep by Travis Atkins)
</li><li>XML Parsing from InputStream wasn't handling search path dtd correctly (rep by Frank Carver)
</li><li>XTP &lt;% ... %&gt; needs an implicit cdata (rep by Peter Andrews)
</li><li>TcpServer.isDead() needs to check if the TcpServer thread is alive (rep by Daniel Wroblewski)
</li><li>XTP init-parameter html-to-lower can be set false to avoid normalization (rep by Peter Andrews)
</li><li>Pretty-printing empty option with no end tag (rep by Peter Andrews)
</li><li>Added &lt;option name="foo" &lt;%= xxx %&gt;&gt; hack. (rep by Peter Andrews)
</li><li>added save-on-shutdown (rep by Philip Nelson)
</li><li>Added -server-root to wrapper.pl for ISPs (rep by Jason Taylor)
</li><li>webmacro needs Response to be public (rep by Michael Mutschler)
</li></ul>
</s2>

<s2 title="1.2.2 - Jan 16, 2001">
<ul>
<li>Cookie.setDomain needs nullpointer check (rep by Heather Grace)
</li><li>QPooledConnection needs to allow createStatement even with ! isValid (rep by Pieter Schoenmakers)
</li><li>WAP default extensions (added by Amy Wan)
</li><li>Response.setIntHeader() was calling cb.close() causing a double reference (fixed! by Dave Wallace)
</li><li>fixed bin/resin C initialization errors
</li><li>cleared pageXXX fields in Dispatch Request (rep by Neeme Praks)
</li><li>waitForExit must catch SocketException because client disconnect on solaris will throw SocketExceptions on all sockets (rep by Robert Mitchell)
</li><li>when possible, initialize the server before listening to ports (rep by Neeme Praks)
</li><li>isapi_srun.dll wasn't grabbing the cookie properly (rep by Philip Nelson)
</li><li>stream.c wasn't properly paying attention to dead-time
</li><li>isapi_srun.dll must look in registry before c:\resin
</li><li>configException needs to be logged (rep by Walter Holladay)
</li><li>i18n form parameters weren't fully read (rep by Rick Lei)
</li><li>DynamicClassLoader needs to clear attributes on unload to work around JNDI memory bug
</li><li>strict-mapping wasn't handling *.jsp properly (rep by Khang Nguyen)
</li><li>server restart must only happen on top-level requests
</li><li>server restart needs to clear the invocation cache
</li><li>find *.tld in META-INF and WEB-INF
</li><li>significant cleanup of caching (rep by Brian Hauer)
</li><li>i18n form parameters with non-escaped chars not treated as chars (rep by Rick Lei)
</li><li>weekly logging should start on Sunday, not Wednesday
</li><li>default url-mapping="/" needs to set servletPath to the whole servlet (rep by Neeme Praks)
</li><li>Pruning of the tail of XPath select patterns tail, causing slow XSL (rep by Pieter Schoenmakers)
</li><li>JSPs in WEB-INF needs to be hidden from browser, but allowed by
forward or include
</li><li>taglib-location with a *.jar needs to add the jar to the classpath (rep by Rickard Oberg)
</li><li>XSL namespace test for 1992/XSL/Transform must not match .../TransformFoo (rep by John Kozak)
</li><li>DBPool changes to load drivers from app class loader (rep by Robson Miranda)
</li><li>Pipelining needs to force keepalive (rep by Brian Hauer)
</li><li>Not Modified response was returning old expires (rep by Brian Hauer)
</li><li>authenticator needs application classloader (rep by Vitaly Batychko)
</li><li>make error messages XHTML compatible (rep by Dmitri Maximovich)
</li><li>XSL close tag should report missing open tag (rep by Timur Evdokimoff)
</li><li>Server reload on resin.conf change has alarm and cron problems (rep by Khang Nguyen)
</li><li>xmlns for "default" namespace wasn't printed (rep by Struan Judd)
</li><li>form parser needs to handle aaa&amp;bbb&amp;cccc (rep by Eugen Kuleshov)
</li><li>pushBody() and popBody() should be callable outside of tags (rep by Bill Schneider)
</li><li>BodyContent.getString() should not clear the buffer (rep by Julie Melbin)
</li><li>JavaScript cast str @ String wasn't marking setUsed (rep by Alexis Liarokapis)
</li><li>normalize classpath in compilation (rep by Jason Collins)
</li><li>check for *.class existence in compilation (rep by Jason Collins)
</li><li>synchronization missing from ServletServer.init() (rep by Neeme Praks)
</li><li>session load/store wasn't properly synchronized (rep by Adalbert Wysocki)
</li><li>Cookies must understand quoted values (rep by Fernando Echeverria)
</li><li>Locking issues on NT for Apacheand IIS plugins (rep by Brian Hauer)
</li><li>JavaScript _first fix, allowing integers as well as doubles (rep by James Korotney)
</li><li>jar reloading didn't properly clear cache, causing class not found (rep by Fernando de la Villa)
</li><li>changes with path-mapping or absolute paths weren't detected (rep by Damien Mascorde)
</li><li>servlet-name=plugin_ignore in servlet-mapping causes the plugin to keep
the request for the web server (rep by Neeme Praks)
</li><li>added resin:include as dependency for plugins
</li><li>errors in resin.conf no longer cause Apache fatal errors (rep by Tauren Mills)
</li><li>resin:include as first element in resin.conf now picked up by plugins (rep by Neeme Praks)
</li><li>servlet in resin.conf now overrides servlet in web.xml (rep by Martin Cooper)
</li><li>added &lt;strict-mapping&gt; tag to web-app (rep by Khang Nguyen)
</li><li>MemoryContext copy() needs to be recursive.
</li><li>Classloader cleanup to ensure loaded from top classloader
</li><li>Removed thread map for jdk1.2 to allow thread GC
</li><li>fixed XmlPrinter nullpointer (rep by tej kumar arnipalli)
</li><li>tag-location needs to look in classpath (rep by David King)
</li><li>need to propate client disconnect in RunnerRequest (rep by Casu Alain)
</li><li>added caucho_plugin hack to partially deal with plugin regexp issues (rep by Joan Roch)
</li><li>re-added accept thread blocking when accept-queue fills (rep by Dan Latham)
</li><li>BodyTagSupport.setPageContext needs to clear bodyContent (rep by Mikael Kjaer)
</li><li>resin.conf now checks resin:include for changes (rep by stefan)
</li><li>HttpUtils shouldn't throw IOException (rep by Peter Poulsen)
</li><li>Only check for Application modification on top level calls (rep by Gerret Apelt)
</li><li>Form processing now understands %u1234 (rep by conan)
</li><li>XML parsing whitespace issue with DOCTYPE (rep by Eugen Kuleshov)
</li><li>NT Service must open stderr.log with SHARED_WRITE for stderr log rotation to work (rep by Paul Lee)
</li><li>Removed img processing from stylesheets since using AWT won't work as an NT service (rep by Miles Metcalfe)
</li><li>early timeout of persistent sessions (rep by Gerald Francois)
</li><li>slowed thread closing to one per second to support more clients (rep by Dan Latham)
</li><li>default namespace should not affect xpath patterns in xsl stylesheets (rep by Guy McArthur)
</li><li>bad error message in jsp:setProperty (rep by Anthony Eden)
</li><li>conn.createStatement from closed pool should throw better error (rep by John Waugh)
</li><li>sendRedirect should kill chaining (rep by Josh Krieger)
</li><li>XmlPrinter wasn't handling case where location was null (rep by Frank Carver)
</li><li>Added upload-max for multipart-mime form uploading (rep by Cytown)
</li><li>jsp.StaticPage wasn't setting content-length (rep by Neeme Praks)
</li></ul>
</s2>

<s2 title="1.2.1 - Dec 4, 2000">
<ul>
<li>Caching was getting throttled because of a lock contention
</li><li>XSL generator wasn't escaping backslashes for setLocation and NT (rep by Frank Carver)
</li><li>fixed bug where a disconnected connection could cache a short file
</li><li>vfs.Encoding now normalizes '_' to '-' (rep by Nicolas Lehuen)
</li><li>fixed memory leaks in bin/resin
</li><li>fixed bug where the caching stream could be opened without closing
</li><li>ServletConfig.getInitParameter() should call getServletConfig() (rep by Steve Akers)
</li><li>cleaned up stream closing
</li><li>reworked bin/resin threading to better handle load changes
</li><li>added ping to detect server failures
</li><li>bug when caching large files and the client disconnects
</li><li>bug when ServerSocket.accept() received an interrupt exception, causing
Resin to hang without restart (rep by Neeme Praks)
</li><li>bug in looking up Resin Home for isapi registry
</li><li>bug with using ;jsessionid in IIS
</li><li>bin/resin stops in standalone mode on some OS
</li><li>Deleting cached file from underneath, with dual srun gives error (rep by Bill Horsman)
</li><li>catching throwable in TcpServer.run in case of error (rep by Neeme Praks)
</li><li>added bin/standalone so Windows people can get thread dumps
</li><li>DOM L2 changes
</li><li>chaining headers should match the standard headers (rep by Henrik Jensen)
</li><li>better detection of source close in WriteStream (rep by Bill Horsman)
</li><li>error-log and access-log are now per-web-app (rep by Bill Horsman)
</li><li>forgiving XmlParser, e.g. HTML, was misparsing CDATA (fixed! by Pieter Schoenmakers)
</li><li>sendRedirect needs to normalize the generated path to handle
../foo/test.jsp (rep by Stephen Wong)
</li><li>JndiFactoryBuilder show throw new NoInitialContextException when
an error occurs (rep by Henric Larsson)
</li><li>Sets the cipher-suite attribute for JSSE (rep by Derek Fukuhara)
</li><li>Incorrect check for jsessionid in plugings (rep by Andrew Boyko)
</li><li>Host: support for binary resin (rep by Piotr Piatkowski)
</li><li>change back to dual thread listening
</li><li>war change detection (rep by Jeff Trimm)
</li><li>http -help lists -install-as incorrectly (rep by Colin Sampaleanu)
</li><li>In HTML parsing, frameset should take place of body, not automatically add a body (rep by Dirk Jaeckel)
</li><li>init-param description should not automatically create parameter (rep by Yori Sakakura)
</li><li>/foo* was transformed in config.c to /fo/* (rep by Chris Chen)
</li><li>session attribute changes must use '==' instead of equals to detect
value change (rep by Jeremy Lemaire)
</li><li>forwarded and included requests are not subject to authorization (rep by Gerret Apelt)
</li><li>jsp:plugin params should allow runtime attributes (rep by Jean-Marc Tupin)
</li><li>XML Document cloneNode fixed (rep by Chris Monster)
</li><li>exceptions in JSP pages shouldn't be wrapped before passing to error pages (rep by Calvin Yu)
</li><li>User -Jxxx args need to come before other options (rep by Colin Sampaleanu)
</li><li>SingleThreadModel wasn't properly creating new servlets (rep by Anres Aguiar)
</li><li>ClientDisconnectException wasn't properly propagates in JSP (rep by Daniel Spichty)
</li><li>thread-timeout in resin.conf should be request-timeout (rep by Paul Lee)
</li><li>getServerName() was returning the remote address, not the local address (rep by Nick Popoff)
</li><li>Authentication caching the login and error forms (rep by Gerret Apelt)
</li><li>Fixed XML pretty printing with consecutive whitespace
</li><li>Expires not properly set with NOT_MODIFIED (rep by Dino Fancellu)
</li><li>symlink to empty webapp not treated as a directory (rep by Pieter Schoenmakers)
</li></ul>
</s2>


<s2 title="1.2.0 - Oct 31, 2000">
<ul>
<li>configuration changes for MacOSX and Solaris
</li><li>Text.setNodeValue() should be equivalent to setData() (rep by Brian Parkinson)
</li><li>Ring store issues with invalidate (rep by Court Demas)
</li><li>"resin" plugin adapted to Solaris
</li><li>class change detection for following classpath (rep by Frank Nestel)
</li><li>NT '.' issues (rep by benjurry)
</li><li>Cache-Control: public should override default (rep by John Moore)
</li><li>j_uri should override protected page (rep by Alexander Urzola)
</li><li>setMaxAge(0) needs to send Expires as 1994 (rep by John Moore)
</li><li>Apache doesn't normalize '//' in path names (rep by Henric Larsson)
</li><li>Fixed application nullpointer in the case of a war-dir with no web.xml (rep by David Forshlund)
</li><li>DBPool needs to close the underlying connection when it can't be
put back into the pool (fixed! by Chris Donnelly)
</li></ul>
</s2>

<s2 title="1.2.b3 - Oct 23, 2000">
<ul>
<li>handle absolute paths in war_dir in config.c (rep by Andy Boyko)
</li><li>multipart-form is now optional (rep by Manush Dodunekov)
</li><li>file-upload handled \n-foo wrong, and failed with nulls (rep by Stefan Wesner)
</li><li>ScriptClosure was using the wrong global (rep by Hans-Peter Schmidt)
</li><li>session ring using same storage for file backup (rep by Court Demas)
</li><li>License changes to Developer Source.
</li><li>win32 setup for O'Reilly WebSite (added! by Bob Denny)
</li><li>user content-length was ignored for srun requests (rep by Philippe Delrieu)
</li><li>bufLength vs length in HttpRequest.readRequest (rep by John Moore)
</li><li>errors must be logged even with an error page (rep by Chris Donnelley)
</li><li>XTP pages should return not found for missing pages (rep by Martyn Tovey)
</li><li>Changed server busy test to wait for a queue backlog (rep by Frank Nestel)
</li><li>form login needs to use sendRedirect, not forward() to allow https (rep by Danny Mui)
</li><li>Short runtime attributes "%= 2 + 2 %" weren't detected (rep by Michal Mosiewicz)
</li><li>Env.clear() has array overflow problems on clear (rep by John Shen)
</li><li>JDBC persistent store changes to remove time dependency (rep by Henry Buckley)
</li><li>JSP backslash not at end of line shouldn't escape (rep by Philippe Guédez)
</li><li>C-based launcher "resin" now available for Linux
</li><li>jar change detection was broken for WEB-INF/lib (rep by Frank Nestel)
</li><li>war-dir should be picked up by plugins (rep by Andrew Boyko)
</li><li>run-at timeout fixed for hour times that evaluate to 0.
</li><li>MergePath absolute /foo should mean top of MergePath not filesystem root (rep by Olof Edlund)
</li><li>findAncestorWithClass shouldn't count the tag as its own ancestor (rep by Michal Mosiewicz)
</li><li>304 Not Modified should not send back the MSIE hack (rep by John Moore)
</li><li>web-app of /test/ caused double initialization (rep by Daniel Lopez)
</li><li>Fix IAS issues with JNDI (rep by Russ White)
</li><li>changed Random load-balancing to Round-Robin
</li><li>Makefile fix for -with-apache-src adding memory.c (rep by Man Ly)
</li><li>MailtoStream fix for \n\n encoding as \r\n\r\n (fixed! by Jim Miller)
</li><li>added -encoding LATIN1 for Jikes to handle ISO-8859-1.
</li><li>xsl:exclude-namespace and xsl:namespace-alias fixed.
</li><li>normalize-space was printed as normalize (rep by Howard Mullings)
</li><li>Added SAXTransformer.
</li><li>SAX parser didn't properly change encoding (fixed! by Boris Granveaud)
</li><li>simplified the Authenticator interface and moved the session and cookies into the AbstractAuthenticator.
</li><li>fixed arg type to getsockopt to be compatible with alpha (rep by Roberto Ferrero)
</li><li>fix bugs in the access.log code (rep by Jim Douglas)
</li><li>use request-&gt;uri instead of request-&gt;unparsed_uri in mod_caucho (rep by Hoani Cross)
</li><li>XmlParser bug parsing DTD Content Particle (foo?,bar+) (rep by Abdullah Apaydin)
</li><li>TransactionImpl error handling fixes (rep by Robert Salesas)
</li><li>requests need to close the open Transaction.
</li><li>multiple calls to getConnection() within a transaction should return
the same connection (rep by Robert Salesas)
</li><li>Improved access-log rollover control (designed by Jim Douglas)
</li><li>Speed JavaScript import handling and fix memory reuse (Block) problem (rep by Frank Nestel)
</li><li>better handling of /cache deletion from under server.
</li><li>misc ISAPI fixes (fixed! by Bob Denny)
</li><li>fixed jar update problem with new classes (rep by Frank Nestel)
</li><li>AccessLogging with forward (rep by Jim Douglas)
</li><li>fixed memory leak in AbstractStylesheet (fixed! by Boris Granveaud)
</li><li>changed doc_header to work in different contextPaths (rep by Igor Dubosarskiy)
</li><li>DOCTYPE parsing can cause nullpointer when SYSTEM has unknown url (rep by MIchael Newcomb)
</li><li>default home fixed for IIS (rep by Dan Sandberg)
</li><li>Virtual hosts should automatically include port (rep by Kevin Welker)
</li><li>common/Makefile.in should use $(LD) instead of $(CC) (rep by Dave Wallace)
</li><li>JavaScript codegen change for perf enhancements.
</li><li>;jsessionid=aasdf;jsessionid=asdfasfd confuses sessions (rep by Spencer Marks)
</li><li>JNDI cleanup with url.pkgs instantiating a java: handler (rep by Russ White)
</li><li>JDBC persistent sessions now use update/insert instead of replace (rep by Henry Buckley)
</li><li>Response needs to skip() post content before sending results (rep by Khang Nguyen)
</li><li>DynamicClassLoader needs to synchronized on getTop() (rep by Eric Charpentier and Frank Nestel)
</li><li>jsp auto-compile=false turns off auto-compilation (rep by Matthew Insko)
</li><li>DBPool.getPool() should use java:comp/env as prefix, not java:comp/env/jdbc (rep by Russ White)
</li><li>sendRedirect("foo.jsp") needs to be converted to absolute (rep by Andrew Papada)
</li><li>alignment problems in plugins memory.c (rep by Omen Wild)
</li><li>"" session ids will force generation of new session (rep by Stephen Wong)
</li><li>jsdk22 new Cookie() was calling setPath("/") (rep by Don Choi)
</li><li>Jar loading performance (rep by Geoff Soutter)
</li><li>JSP dependencies need to be relative whenever possible (rep by Daniel Zen)
</li><li>&lt;srun&gt; and srun-port configuration problems, esp with host attr (rep by Michael Forsberg)
</li><li>jndi: scheme for VFS
</li><li>Log rotation at 1Meg for all logs, including stdout/stderr (rep by Kevin Welker)
</li><li>LruCache put() needs to call removeEvent when the old value is replaced.
</li><li>external DTD syntax was completely wrong (rep by James Dalrymple)
</li><li>multipart-form boundary header fix
</li><li>SmtpStream needs \r\n for newlines (fixed! by Daniel Zen)
</li><li>j_uri in form login should allow relative urls (rep by Dave Gochfeld)
</li></ul>
</s2>

<s2 title="1.1.5 - Oct 2, 2000">
<ul>
<li>For version 1 cookies, omit the Expires parameter (rep by John Moore)
</li><li>missing is.close() in Xsl for strict stylesheets (rep by David Soergel) 
</li><li>Change reporting forward() with committed data (rep by 
</li><li>XPath substring() is 1-based, not 0-based. (rep by Nicolas Lehuen)
</li><li>mod_caucho and TcpServer changes to enhance reliability under load
</li><li>nested bodyTag problems with the end-tag-hack (rep by Veronique Dupierris)
</li><li>jsp:param value="" name=foo was thrown as illegal (rep by Jacek Laskowski)
</li><li>Using String[] for a tag variable was failing (rep by Fernando Olcoz)
</li><li>PageContext needs getThrowable() (rep by Ari Halberstadt)
</li></ul>
</s2>

<s2 title="1.2.b2 - Aug 31, 2000">
<ul>
<li>cache synchronization fix
</li><li>war expansion fix (patch! by Vitaly Batychko)
</li><li>JSP lineMap and depends should be app-dir relative (rep by Matthew Insko)
</li><li>jndi.properties should be configured in resin.conf (rep by Russ White)
</li><li>allow String[] in taglib
</li><li>create ResinServer.init() and ResinServer.close() (rep by Rick Gibbs)
</li><li>SingleThreadModel
</li><li>Using CauchoSystem.loadClass in SessionStore for some finicky class loaders (rep by Dave Wallace)
</li><li>keepalives were closing prematurely (rep by Horst Reiterer)
</li><li>made QPooledConnection.getConnection() public (rep by Mark Dobbrow)
</li><li>POST forms need to work with forward even if content-type is form (rep by Jason Martino)
</li><li>Use XmlParser.QAttributes in ContentHandlerAdapter (rep by Frank Nestel)
</li><li>jndi.properties in WEB-INF/classes overrides InitialContext (rep by TH Lim)
</li><li>jndi-link fix to work with WebLogic
</li><li>reversed classloader order to match JDK 1.2
</li><li>xsl:attribute needs to override attributes (rep by Steve Chiu)
</li><li>TagSupport.getValues() should return the keys (rep by Calvin Yu)
</li><li>XML/XSL now parses and prints strings (rep by James Brosnan)
</li><li>Fixing command-line invocation, httpd -e, jspc
</li><li>detect win2k utf-8 with 0xfeff (rep by Jun J. Kang)
</li><li>use application classloader for persistent sessions (rep by Dave Wallace)
</li><li>RunnerRequest needs to call filterRead.close() instead of flush
</li><li>when hit thread-max, start sending 503, Server Busy Errors (rep by John Moore)
</li><li>XmlParser was calling endElement for the document (rep by Martin Cooper)
</li><li>VirtualHost needs to add app to map before calling init (rep by Martin Cooper)
</li><li>jspInit() called an extra time when modified (rep by Marcin Jagodzinski)
</li><li>init(config) now works in JSP, though you should use jspInit() rep by Felix von Delius)
</li><li>XTP now uses servlet parameters (rep by Marcin Jagodzinski)
</li><li>&lt;iis priority&gt; configuration for ISAPI priority (rep by Martin Cooper)
</li><li>Strip '"' from CLASSPATH (rep by Colin Barrett)
</li><li>JNI now disabled by default
</li><li>Document.getOwnerDocument() should return null (rep by Nicolas Lehuen)
</li><li>NT stdout/stderr logs redirected to log/stdout.log (rep by James Dalrymple)
</li><li>IIS double decode of servlet path fixed (rep by Jason Collins)
</li><li>XSL API rewrite using factory patterns to resemble XSL engines
</li><li>JavaScript API rewrite to user factory patterns
</li><li>script notation in XSLT-lite, $if, $while, etc.
</li><li>strip leading 0xfeff from utf-8
</li><li>HTML/XML parser now optionally parses comments (rep by Eric Hansen)
</li><li>quotes inside runtime attributes now work
</li><li>DBPool max-idle-time -1 means infinite (rep by Steve Buikhuizen)
</li><li>JspWriter.getRemaining() was always returning 0 (rep by Felix von Delius)
</li><li>session interval of -1 should be infinite (rep by Vince Callaway)
</li><li>report load-on-startup error pages to browser
</li><li>caching synchronization fix
</li><li>jdbc-store can now configure the tables (rep by Vince Callaway)
</li><li>caucho-status shows timeouts, fix timeout config (rep by Kevin Welker)
</li><li>added jndi-link supporting InitialContextFactory (rep by Fredrik Gustavsson)
</li><li>Filled out JNDI implementation
</li><li>httpd-port/srun-port deprecated
</li><li>SSL support with JSSE
</li><li>security-provider in config
</li><li>system-property in config
</li><li>dom level2 core support
</li><li>sax2 support
</li><li>jaxp support
</li><li>XML external entity support
</li><li>httpd/srun.exe resin-home search order
</li><li>httpd/srun.exe -java_exe and -Xxxx
</li><li>multipart-form/data
</li><li>taglib uri-location should look for jars in classpath (req by Matthew Faso)
</li><li>'\' escape at end of line after %&gt; will escape end of line (added by Talin)
</li><li>config.c fix to handle null host 
</li><li>DBPool now has setMaxIdleTime (max-idle-time) for max idle time (rep by Kesav Kumar)
</li><li>auto-compile classes in multiple &lt;classpath&gt; can now use any class (rep by Nick Popoff)
</li><li>adding overriding xsl should cause xtp reload (rep by Ralph Winzinger)
</li><li>localization mechanism added and message_en.xml added for JSP
</li><li>fixed plugin bug forcing configuration reload every 15 seconds
</li><li>plugins now use memory pooling to avoid leaks when rereading configs
</li><li>better error reporting for errors in init()
</li><li>improved detection of web.xml changes in plugins
</li><li>&lt;jsp require-source=true&gt; will now give an error when the JSP is deleted (rep by Phil Smy)
</li><li>XmlPrinter now understands OutputStream and Writers (rep by Jim Brosnan)
</li><li>httpd-Mac was missing from distribution
</li><li>ejb-ref now available with custom client factories
</li><li>jndi configuration can now also appear in global configuration
</li><li>UserTransaction support in DBPool
</li><li>DBPool configuration now allows arbitrary properties (impl! by Tatsuya Bizenn)
</li><li>better error message for bind exceptions (rep by Donald Vandenbeld)
</li><li>Alarm and Cron missing from ServletServer! (rep by Donald Vandenbeld)
</li><li>throw NullPointerException from sendRedirect (rep by Marc Larue)
</li><li>caucho.xsl.stylesheet fix for reloading (fixed! by Talin)
</li><li>session-config/cookie-domain to better support multiple hosts (req by HyoungKi Choi)
</li><li>dbpool fix for problem preventing any pooling
</li><li>parse error printing didn't work with plugins
</li><li>Content-Length available() incorrect (rep by Dave Moellenhoff)
</li><li>handle long urls (rep by Melanie Lampert)
</li><li>detect duplicate servlet definition (rep by Richie Bielak)
</li><li>make url-pattern case sensitivity configurable (req by Eugene Jhong)
</li><li>external dtd in xml files (req by Steve Chiu)
</li><li>use *.class even if the *.jsp is gone (req by Jens Gerhard and Frank Nestel)
</li></ul>
</s2>

<s2 title="1.1.4 - Sep 6, 2000">
<ul>
<li>nullpointer in all plugins for certain resin.conf (rep by Ed Miner)
</li><li>caucho-status was not allowed in resin.conf (rep by Tauren Mills)
</li><li>Base64 decoding fix (rep by flare)
</li><li>"listen" is an allowed configuration in the server (fixed! by Jim Douglas)
</li><li>getRemoteUser with IIS/Apache, but unconfigured should return basic principal (rep by Andre Minelli)
</li><li>resin:include with file-not-found was adding resin:include as node (rep by Gregg Carrier)
</li><li>Fix ;jsessionid on IIS (rep by Jens Goring)
</li><li>Fix -encoding for external javac (rep by YT Kim)
</li><li>Fix Apache getRemoteHost() (rep by Horst Reiterer)
</li><li>TagSupport.getValues() should return the keys (rep by Calvin Yu)
</li><li>IIS double decode of servlet path fixed (rep by Jason Collins)
</li><li>call nextWrite.close() instead of nextWrite.flush() in ServletFilter.close()
</li><li>mime-mapping expected .foo instead of foo (rep by Alain Origlia)
</li><li>fixed string-length() toString() in XPath (rep by Nicolas Lehuen)
</li><li>removed +CSO from jikes compilation (rep by Court Demas)
</li><li>circular include detection bumped up to 64 (rep by Yori Sakakura)
</li><li>JSP files for host:8080 were aliased with host:8090 (rep by David Thomas)
</li><li>trailing space in filename was causing problems under NT (rep by Thomas Weber)
</li><li>QRequestDispatcher race between request recycling and flushing (rep by Floyd Marinescu)
</li><li>recover when cache file deleted underneath request (rep by Tim Fox)
</li><li>cookie expires date was formatted wrong (rep by Dan)
</li><li>configure.in fixes for iPlanet (rep by Michael Los)
</li><li>jsp/end-tag-hack to work around tag library bugs (rep by Tim Fox)
</li><li>XslGenerator.generate needs synchronization (rep by James Brosnan)
</li><li>XPath sum() wasn't properly printed in XSL (rep by Marcin Jagodzinski)
</li><li>configuration period has int/long overflow for month/year (rep by Rob Snell)
</li><li>using BodyContent after dead should throw IllegalStateException (rep by MichalMosiewisz)
</li><li>workaround for IE hiding error messages by default (rep by Tiberiu Fustos)
</li><li>setSoTimeout is now configurable
</li><li>cookies and sessions use Cache-Control: private for HTTP/1.1 and nothing for HTTP/1.0
</li><li>anonymous caching uses Cache-Control: x-anonymous
</li><li>explicit header should override cookie expires (rep by John Moore)
</li><li>JSP preload with errors not properly caught (rep by Marc Larue)
</li><li>content-length now recognized (rep by Julie Melbin)
</li><li>cse_write_packet must be able to write empty packets
</li><li>&lt;jsp_plugin can't have space in '; version' (rep by Jeff Perry)
</li><li>MemoryStream bug causing array exception (rep by Lukasz Kowalczyk)
</li><li>tweaks to class-update-interval as used by JSP pages
</li><li>Fixed synch problem in QNamedNodeMap (rep by Brian Parkinson)
</li><li>srun-port not picked up by mod_caucho (rep by Carlos Hanson)
</li></ul>
</s2>

<s2 title="1.1.3 - June 23, 2000">
<ul>
<li>handling of "out" in JSP files (rep by Dirksen Lau)
</li><li>nullpointer in javascript when reload on server restart (rep by Piotr Fernandez)
</li><li>app-dir/web.xml not detected by plugins (rep by Alexander Jerusalem)
</li><li>// %&gt; was causing problems (rep by Matthew Faso)
</li><li>iis_srun extension forwarding all req to Resin (rep by Filip Salomonsson)
</li><li>large headers truncated with IIS (rep by Melanie Lampert)
</li><li>thread-max calculation broken (rep by Matthias Ernst)
</li><li>added disable-content-length (rep by Rafi Jacoby)
</li><li>problems handling ';' in url (rep by Stefan Podkowinski and Vitaly Batychko)
</li><li>missing host always returns the default host (rep by Antonio Freixas)
</li><li>getRequestURI should return unescaped uri (rep by Mattias Ernst)
</li><li>session.setAttribute can cause unboundEvent (rep by Oliver Koell)
</li><li>form spaces not handled properly (rep by George Diswani)
</li><li>&lt;a&gt; can't be pretty-printed (rep by Eric Hansen)
</li><li>test.jsp not always force make of &lt;classpath&gt; (rep by Scott Douglass)
</li><li>log(Exception) needs to unwrap exceptions (rep by Christian Wehrfritz)
</li><li>cookie parsing wasn't catching 'foo=bar,baz=19' (rep by Jens Dennig)
</li><li>some clients can send 'max-age' as cookie name (rep by Tripp Lilley)
</li><li>jsp:useBean needs to understand import and inner class (rep by Matthew Faso)
</li><li>ip printing writing signed bytes (rep by Ringer9)
</li><li>error-page 500 should catch servlet errors (rep by Dave King)
</li><li>request dispatcher include should allow spaces in query (rep by omar)
</li><li>jsp:getProperty must use pageContext.findAttribute
</li><li>BodyTag variables must use pageContext.findAttribute
</li><li>BodyTag threading issues (rep by Matthew Faso)
</li><li>Servlet ambiguity in JSP generation (rep by Rolf Scherer)
</li><li>mod_caucho issues with slow servers.  Also added configuration in srun. (rep by Tiberiu Fustos)
</li><li>&lt;java args='-O'&gt; didn't work for jikes (rep by Alan Berezin)
</li><li>xsl:if for not(node()) was throwing RuntimeException (rep by Stargazer and Marcin Jagodzinski)
</li><li>JSP generation should use full class names (rep by Rolf Scherer)
</li><li>jikes detection fails for c:\foo\jikes.exe (rep by James Korotney)
</li><li>fix for -srun argument (rep by Antoine Baudoin)
</li><li>pretty-printing fix for &lt;img&gt; (rep by Steve Chiu)
</li><li>xpath substring-after bug (rep by Steve Chiu)
</li><li>improved mod_caucho connection heuristics
</li><li>added socket timeouts
</li><li>HttpServer should use 127.0.0.1 instead of localhost (rep by Neuronix)
</li><li>load-on-startup with jsp-file (rep by Robert Grzywinski)
</li><li>jsp:getProperty needs to understand isFoo (rep by Nasir Akhtar)
</li><li>.war files need to handle .jsp (rep by Frank Nestel)
</li><li>&lt;% %&gt; shouldn't automatically generate ';' (rep by Steve Chiu)
</li><li>Use QJspFactory to avoid conflict with epicentric (rep by Tripp Lilley)
</li><li>Report a better message for EPIPE (rep by Tripp Lilley)
</li></ul>
</s2>

<s2 title="1.2.b1 - June 15, 2000">
<ul>
<li>env-entry naming fix
</li><li>basic log rotation
</li><li>threading fix to handle thread pool better
</li><li>DOM level 2 stubs for Xalan compatibility
</li><li>CompilingClassLoader shouldn't mkdir WEB-INF/classes (rep by Scott Douglass)
</li><li>DBPool pinging to detect crashes sessions (suggested by Guy Tal)
</li><li>session reload attribute so each session request refreshes itself
</li><li>distributed sessions with JDBC
</li><li>DataSource configuration
</li><li>support for JNDI java:comp
</li><li>invocationKey needs getHost() instead of host (rep by Paul Little)
</li><li>setContentLength no longer ignored (rep by Xavier Boix)
</li><li>jsp:directive/declaration/scriptlet treated as globals in XTP (req by Eric Hansen)
</li><li>Mac lexing issues with \r (rep by Paul Snively)
</li><li>LogStream must only open each file once for Mac (rep by David Smiley)
</li><li>threading rewrite for performance and stability
</li><li>directory uses application char encoding (rep by Jen Hsien Huang)
</li><li>cleaned main request/service() path
</li><li>added basic implementation of distributed sessions
</li><li>faster detection of connection failures (rep by Tomas Lund)
</li><li>significant performance improvements for small files.
</li><li>anonymous caching can now ignore user tracking cookies
</li><li>new configure and Makefiles, and support for --with-apache-src.
</li><li>created SessionManager and added file-based persistent sessions
</li><li>plugins now detect resin.conf changes automatically
</li><li>access-log can now log cookies with %{JESSIONID}c
</li></ul>
</s2>

<s2 title="1.1.2 - May 19, 2000">
<ul>
<li>fix dup loading load-on-startup when host='' (rep by Jan Ploski)
</li><li>caucho.jsp-file wasn't properly deleted in some cases (rep by Robert L. Grzywinski)
</li><li>Threading issue where keepalive counts never dropped.
</li><li>Threading issue where all threads could exit simultaneously (rep by Elad Koren)
</li><li>On NT, cookie sessions for load balancing weren't sticky
</li><li>On NT, setup remove removes all filters (rep by Helen Grimbly)
</li><li>WAP has trouble with '.' as session character (rep by Ole Dalgaard)
</li><li>All Authenticator methods now take HttpServletRequest
</li><li>Check modification with '!=' instead of '&lt;' for JSP (rep by Paul Snively)
</li><li>Caching wasn't removing files when LRU kicks in (rep by Ed Miner)
</li><li>fix in URL normalization (rep by mark)
</li><li>wrapper.pl cleanup (rep by Kevin Welker)
</li><li>resin.form.locale (req by Avi Cherry)
</li><li>mod_ssl variables (req by Jens Dennig)
</li><li>xsl:attribute has trouble in macros (rep by Steve Chiu)
</li><li>cookie values should not be restricted to 256 bytes (rep by Roberto Tiella)
</li><li>jspDestroy should be called on JSP change (rep by Den Riabtchik)
</li><li>resin:include of 'c:\foo' doesn't work on NT (rep by Ken Koster)
</li><li>cache-mapping 40d overflows RegistryNode.getPeriod() (rep by Jerry Huxtable)
</li><li>"meta-inf/taglib.tld" error not caught in tag.jar (rep by Juraj Kazda)
</li><li>"extends" now checks for HttpJspPage (rep by Ed Miner)
</li><li>line number mapping for thrown exceptions
</li><li>logging should be in local, not GMT (rep by Carlos Hanson)
</li><li>run-at executing at :00 and :01 (rep by Daniel Seltzer)
</li><li>run-at should use dummy HttpServletRequest (rep by Daniel Seltzer)
</li><li>Cookie parsing should handle Cookie: foo; bar; (rep by Kien Kiong Ng)
</li><li>web-app encoding should override response encoding for forms (rep by Vyacheslav Pedak)
</li></ul>
</s2>

<s2 title="1.1.1 - April 27, 2000">
<ul>
<li>xsl:include doesn't obey strict-xsl (rep by Steve Chiu)
</li><li>JavaScript can't handle java.lang.System.out.writeln (rep by Charlie Evett)
</li><li>DirectoryServlet needs fix for web-app (rep by Daniel Seltzer)
</li><li>PageContext must implement pushBody and popBody (rep by Tripp Lilley)
</li><li>ResponseAdapter needs buffering for locomotive (rep by Leo Deegan and Ari Chopra)
</li><li>Authenticator should allow request (rep by Paul Snively)
</li><li>FormLoginServlet should use redirect instead of forward (rep by Francois Rene Bertrand)
</li><li>session.invalidate() should generate new id (rep by Jens Dennig)
</li><li>&lt;%@ page extends means the page isn't static (rep by Eugen Kuleshov)
</li><li>beanName with RTA should use getClass not GetClass
</li><li>caching issues with include pages (rep by Ed Miner)
</li><li>JavaScript generating too-large methods (rep by Charlie Evett)
</li><li>web-app id="/" treated different from default web-app (rep by Jeff Behl)
</li><li>caching broken with large files (rep by Ed Miner)
</li><li>foo.jsp\ shows the source on NT (rep by James Griggs)
</li><li>'/' should dispatch everything to Resin (rep by Nick Popoff)
</li><li>mixed context in resin.conf should be caught (rep by Eric Hansen)
</li><li>bad elements in http-server should be caught (rep by Ed Miner)
</li><li>foo.jsp\ will show foo.jsp on NT (rep by James Griggs)
</li><li>xsl:param at top level isn't recognized (rep by Steve Chiu)
</li><li>jsp:root (rep by Steve Chiu)
</li><li>bad generation of "implements SingleThreadModel" (rep by David Malkovsky)
</li><li>TagAttributeInfo constructor API mixed up (rep by Victor Salaman)
</li><li>TagData(Object []) constructor broken (rep by Victor Salaman)
</li></ul>
</s2>

<s2 title="1.1.0 - April 8, 2000">
<ul>
<li>forward() should just clearBuffer(), not reset() (rep by Alex Cruikshank)
</li><li>Long variables not handled properly in tags (rep by Robert Grzywinski)
</li><li>setStatus shouldn't send error or load cache (rep by Daniel Lopez)
</li><li>load-on-init problems with web-app (rep by Daniel Seltzer)
</li><li>"%= ... %" is an allowed request time expression (rep by Mark Hayes)
</li><li>DirectoryServlet should work like FileServlet (rep by Alex Cruise)
</li><li>extends JSP files need to detect changes (rep by Dmitry Maximovich)
</li><li>Cron needs its own thread and needs to eliminate sync (rep by Victor Salaman)
</li><li>make sure caching files get closed even if servlet fails (rep by Sonny Pickett)
</li><li>BodyTag.getPreviousOut should return out even at top level (rep by Chris Martin)
</li><li>resin.conf and web.xml should be combined (rep by Ari Halberstadt)
</li><li>fixed large jsp file bug (rep by Chris Burnley)
</li><li>remove duplicate entries from mod_caucho (rep by Henric Larsson)
</li><li>&lt;cache size=0&gt; should disable the cache (rep by Alex Chung)
</li><li>iis_srun.dll fixing logs (rep by David Seltzer)
</li><li>Form handling bug: foo=&amp;bar=15 fails for foo (rep by Henric Larsson)
</li><li>Vary: Cookie -- cookie pages are now cacheable for non-logged in users.
</li><li>sessions should survive forward() (rep by Dalton Iwazaki)
</li><li>mod_caucho issues with error-page (rep by Borne Mace)
</li><li>Added caucho-status=false directive (rep by Daniel Seltzer)
</li><li>Added compile=false directive (rep by Arnick Hahn)
</li><li>JSP attributes should be javax.servlet.jsp.jspException (rep by Jeff Behl)
</li><li>getElementsByTagName should never return null (rep by Chris Chen)
</li><li>forwarded pages should have access to Post input stream (rep by Michal Mosiewicz)
</li><li>shortest should match dual *.go and *.jsp match (rep by Jeff Behl)
</li><li>renamed port -&gt; httpd-port to reduce confusion
</li><li>&lt;!DOCTYPE parsing not handled by plugin (rep by Marko Asplund)
</li></ul>
</s2>

<s2 title="1.1.b6 - March 20, 2000">
<ul>
<li>XslFilter should use page parent as pwd (fixed! by Chris Chen)
</li><li>JSP generator needs to use booleanValue instead of boolValue (rep by Rob Grzywinski)
</li><li>NT setup of Apache httpd.conf needs to escape backslashes (rep by Phil Smy)
</li><li>getRequestedSessionId() should return the ID even if the session is new (rep by Stan Silvert)
</li><li>Host logs should be in RESIN_HOME/log (rep by John Cyriac)
</li><li>JS wrapped methods where an arg is private aren't allowed (rep by Chad Hamann)
</li><li>empty JSP tags should still evaluate the methods (rep by Sergio Soccaras)
</li><li>XSL should use consistent 'node' and 'inputNode' in xsl:for-each (rep by Michal Mosiewicz)
</li><li>XSL document() must be a cache-depends (rep by Michal Mosiewicz)
</li><li>added thread-keepalive attribute
</li><li>JavaScript bean wrapper should look at BeanInfo (rep by Vamsee Lakamsani) 
</li><li>NSAPI wasn't handling HTTP/0.9 properly (rep by Rich Farrell)
</li><li>FileServlet should work with servlet-mapping (rep by Alex Cruise)
</li><li>ISAPI HTTP_FOO_BAR needs to convert to foo-bar (rep by Paul Sheehan)
</li><li>mod_caucho would match /servletxxx for /servlet/* patterns (fixed! by Robson Miranda)
</li><li>autoreload of web.xml and resin.conf should be more robust with errors (rep by Larry Hamel)
</li><li>JSDK/JSP API fixes for Visual Age (debugged! by Robert Salesas)
</li><li>Default server root should be resin.home (rep by Robert Salesas)
</li><li>Jar caching (impl! by Victor Salaman)
</li><li>forward() reset and finish (rep by Michal Mosiewicz)
</li><li>JSP exceptions should be thrown instead of caught (rep by Nick Popoff)
</li><li>load-on-startup problems with different config (rep by Marco Hunsicker)
</li><li>windows-125x character encoding (rep by Eugen Krivoruchko)
</li><li>&lt;jsp session=false&gt; disables sessions by default (rep by Rafi Jacoby)
</li><li>CauchoRequest.resetTimeout() and reset timeout on activity (rep by Dave Moellenhoff)
</li><li>Multiple -J-mx were getting swallowed by wrapper.pl (rep by Bill Carroll)
</li><li>Missing &lt;%@ include %&gt; should work with errorPage (rep by Ed Miner)
</li><li>UnionPattern fixes for XSL (rep by Michal Mosiewicz)
</li><li>reading of Certificates with mod_ssl (rep by Marko Asplund)
</li><li>Set-Cookie conformance to RFC2109 (rep by Ken Yun and Niranjan Nagar)
</li><li>jsp-file as servlet fixes (rep by Slawek Zachcial)
</li><li>omit-html-declaration and only minimize html booleans (rep by Michal Mosiewicz)
</li><li>mod_caucho can now distinguish between ports (rep by Robert Grzywinski)
</li><li>fix to plugin resin.conf parsing and handling of web-app id='/foo' (rep by Slawek Zachcial)
</li><li>wrapper.pl needs to pick up zip (rep by Jeff Haynie)
</li><li>cleanup ./configure and install.sh
</li><li>host app-dir should be relative to http-server (rep by Paul Snively)
</li><li>Support for NT UNC (\\host) (rep by Mark Rowell)
</li><li>HTTP/1.1 chunked encoding problems (rep by Seth Ladd)
</li><li>position() in xsl:if (rep by Seth Ladd)
</li><li>ClassLoader fixes for loading jni (rep by Pierre Dony)
</li><li>-install-as and -remove-as for NT services (submit! by Alan Douglas)
</li><li>user-name and group-name added to avoid running as root (rep by Nir-Tzion)
</li><li>files need escaping in JavaGenerator (rep by Naresh Sikha)
</li><li>sesson and load statistics in "caucho.statistics" (req by Mattias Nilsson)
</li><li>browser-mapping lets Resin handle broken http clients (rep by Kevin Minder)
</li><li>DBPool now implements java.sql.Driver (contrib! by Kevin Minder)
</li><li>tag.release() should have access to pageContext (rep by David Geary)
</li><li>classpath with no source shouldn't autocompile (rep by Edson Richter)
</li><li>xsl:for-each needs to set the list-context (rep by Seth Ladd)
</li><li>Application class loader is a "caucho.class-loader" attribute (rep by Vladimir Zamiatin)
</li><li>added lots of default mime mappings.
</li><li>JSP/XTP precompiled pages avoid parsing
</li><li>timestamp in logs should be local (rep by Scott Douglass)
</li><li>xsl can (and should?) be put in the class path
</li><li>XTP/XSL line numbers are now reported better
</li><li>&lt;%= 2 %&gt; as default XTP text should not be escaped.
</li><li>wrapper.pl should use socket constants (fix! by Dave Moellenhoff)
</li><li>handle DBPool overflow by waiting instead of throwing an exception.
</li><li>work-dir fix (rep by everybody)
</li><li>servlet.init() calling of getRealPath doesn't work (rep by Eric-Olivier Lamey)
</li><li>jsp:setProperty with String[] should use getParameterValues (rep by Karsten Merkle)
</li><li>tag optional initialization of Object property should use null (rep by David Geary)
</li><li>POST errorPage to file returns method not implemented (rep by Alik Eliashberg)
</li><li>i18n in nested body tag (rep by Michal Mosiewicz)
</li><li>completed &lt;run-at&gt; servlet option
</li><li>RunnerResponse problems flushing from forwarded page (rep by Ed Miner)
</li><li>completed &lt;cache-mapping&gt;
</li><li>basic auth now goes through authenticator (rep by Michal Mosiewicz)
</li><li>servlet matching is now case-insensitive on NT
</li><li>regexp hosts: &lt;host regexp='(?:[^.]+.)?([^.]+).com'&gt;
</li><li>setContextClassLoader for servlet.init (rep by Rich Roth)
</li><li>httpd.exe now uses console mode (rep by Mac Chan)
</li><li>XTP needs to set Last-Modified properly (rep by Hans-Peter Schmidt)
</li><li>DBPool robustness for failed connections (suggested by Michal Mosiewicz)
</li><li>httpd.exe causing jdbc.odbc errors (rep by Paul Bauersfeld)
</li><li>DBPool.getActiveConnections (rep by John Zedlewski)
</li><li>filtering doesn't preserve encoding (rep by Michal Mosiewicz)
</li><li>/script/iis_srun.dll appears in URL
</li><li>JavaScript name mangling can't use base64 (rep Paul Bauersfeld)
</li><li>unset tag attributes and values must be cleared for reused tags (rep Avi Cherry)
</li><li>taglib uri='foo.jar' should look for META-INF/taglib.tld (rep by Sergio Socarras)
</li><li>&lt;error-page&gt; in http-server (Apache only) (req by Eric Hansen)
</li><li>resin:include (req by Eric Hansen)
</li><li>wrapper.pl needs setpgid (rep by Das Ashutosh)
</li><li>plugins need to understand web.xml (rep by Zachcial Slawek)
</li><li>caching deletes charset from headers (rep by Michal Mosiewicz)
</li><li>file not found from forward should be handled normally (rep by Ed Miner)
</li><li>node()|@id matches all attributes (rep by Michal Mosiewicz)
</li><li>Form processing with extra '&amp;' (fixed! by Steve Abatangle)
</li><li>request.getRequestDispatcher problems with contextPath (rep by David Soergel)
</li><li>mod_caucho handling multiple hosts in &lt;host&gt; (rep by Zach Bagnall)
</li><li>Rewrite of JavaScript code generation and bean wrapping.
</li><li>httpd -e &lt;url&gt; statically executes the url (req by Ed Miner)
</li><li>foo.jsp. on NT shows the source of foo.jsp! (rep by Sassan)
</li><li>ServletServer now grabs ContextClassLoader and allows pseudo-global &lt;classpath&gt;
</li><li>jsp:include in BodyTags (rep by Ilan Kirsh)
</li><li>Improved performance for jsp:include, and jsp static pages (rep by Ed Miner)
</li><li>Fixes for wrapper.pl heuristics finding RESIN_HOME (fixed! by Victor Salaman)
</li><li>-deadwait fixes using socket instead of System.read.in (rep by Victor Salaman)
</li><li>CLASSPATH, JAVA_HOME, RESIN_HOME now saved in NT service (rep by Eitle Jurgen)
</li><li>-J, -D now handled by NT (rep by Niel Esary)
</li><li>Session id should not use '/' (rep by James Kao)
</li><li>Nested TagBody tags not properly resetting out (rep by Ilan Kirsh)
</li><li>\r issues in JSP and XTP parsing causing problems with Mac (rep by David Smiley)
</li><li>Vfs/Path cleanup (reviewed! by David Smiley)
</li><li>DBpool cleanup (reviewed! by Matthew Young)
</li><li>created webutil.HttpForm (req by Paul Snively)
</li></ul>
</s2>

<s2 title="1.1.b5 - January 17, 2000">
<ul>
<li>SimpleClassLoader not putting jars in class loader (rep by Daniel Lopez)
</li><li>DirectoryClassLoader not putting jars in class loader (rep by Victor Salaman)
</li><li>Taglib tld lookup in jar file, i.e. app.getResourceAsStream looks in class loaders (rep by Paul Lacrosse)
</li><li>-Dfoo=bar and -J-mx=z support in wrapper.pl (fixed! by Len Maxwell)
</li><li>Threading control now handles keepalives better
</li><li>NSAPI setup on NT
</li><li>NT problem with trailing slash for Resin-home (rep by Moshe Yidgar)
</li><li>-nojit not work with NT (rep by Jonathan Goldstein)
</li><li>TagBodySupport must throw TagException (rep by David Geary)
</li><li>@&lt;&lt;END fails on NT (rep by Paul Snively)
</li><li>BodyContent not handing i18n properly (rep by Avi Cherry)
</li><li>sendError and sendRedirect should close Response (rep by Mark Feldhousen)
</li><li>jar, http, tcp getAvailable() implemented (rep by David Soergel)
</li><li>getParameter uses response.getCharEncoding (rep by Slawek Zachcial)
</li><li>JSP tag variables need indirection (rep by Ilan Kirsh)
</li><li>Application class loaders combined into one (rep by Ilan Kirsh)
</li><li>simplified JSP error formatting (rep by Rich Roth)
</li><li>iis_srun.dll supports caucho-status, setup.exe more robust
</li><li>Xml parsers now inherit XmlParser to look more SAX-like
</li><li>XSL stylesheet precompilation problems fixed.
</li><li>Xtp printing now changed to use xsl:output (rep by Mical Mosiewicz)
</li><li>getAttribute now works on a http: vfs stream (rep by Paul Snively)
</li><li>XML parsing now using internal utf8 reader (rep by Victor Salaman)
</li><li>preceding-sibling:: and following-sibling:: fail in filters (rep by Paul Snively)
</li><li>&lt;classpath&gt; now grabs character-encoding for i18n (rep by kempleo)
</li><li>&lt;classpath&gt; and &lt;java&gt; now allow "args" (rep by Avi Cherry)
</li><li>Servlet 2.2 complete except for client certificates!
</li><li>HttpServer now accepts -srun to select the srun (rep by Herve Boutemy)
</li><li>ServletContext.getMinorVersion should be 2 (rep by David Smiley)
</li><li>Timeouts never called (rep by Emmanuel Blot and Jan Epsen Hansen)
</li><li>non-ascii URLs with mod_caucho didn't work (rep by Christian Thomas)
</li><li>Win98/PWS changes to setup.exe
</li><li>JSP tags and servlet interaction (scope issues) (rep by Avi Cherry)
</li><li>JSP tag library tld lookup incorrect (rep by Sergio Socarras)
</li><li>JSP precompilation wasn't working (rep by David Smiley)
</li><li>Element.getAttribute should return "" if attribute missing (rep by David Smiley)
</li><li>Microsoft JVM now supported
</li><li>Supporting Java arguments on win32 with -J&lt;arg&gt;
</li><li>iis_srun and mod_caucho fixes for short writes to browser (rep by Michael Burks)
</li><li>httpd.exe and srun.exe are now graphical.
</li><li>The configuration and compilation for Unix changes to configure/make
</li><li>NSAPI for Unix is now included!
</li><li>install.sh problem test ! grep is bogus (rep by Chris Cobb)
</li><li>forward needs to use the old query string (rep by Erich Bratton)
</li><li>HttpStream should set Host: xml.com, not Host: xml.com:80 (rep by Alex Chaffee)
</li><li>iis_srun fixes for large files (rep by Emmanuel Blot)
</li><li>PageManager fixes for Jetty (rep by James Korotney)
</li><li>Html parser (XTP) lowercased non-html tags (rep by James Kao)
</li><li>jsdk22.jar didn't make parseQueryString public (rep by Court Demas)
</li><li>-conf foo.conf should look in resin_home, not resin_home/conf (rep by Court Demas)
</li><li>IIS and Apache both support load balancing and keepalives
</li><li>mod_caucho didn't handle /servlet/* properly (rep by Jeremiah Thompson)
</li><li>'&lt;' XTP attributes were printed as &lt;.  Also, disable-output-escaping wasn't affecting attributes (rep by Michal Mosiewicz)
</li><li>self::node() not interpreted as axis in XPath expression (rep by Paul Snively)
</li><li>Added apache-1.3.4 mod_caucho.dll to distribution
</li><li>Path info now handled by mod_caucho and iis_srun (rep by Michal Mosiewicz)
</li></ul>
</s2>

<s2 title="1.0snap - December 6, 1999">
<ul>
<li>If FooPage extends JavaPage, it should print LineMap (rep by HyoungKi Choi)
</li><li>ApplicationAdapter fixes for Jetty (rep by James Korotney)
</li><li>TcpServer backpatched from 1.1 (rep by Emmanuel Blot)
</li><li>XtpPage handling i18n
</li></ul>
</s2>

<s2 title="1.1.b4 - December 3, 1999">
<ul>
<li>C memory overrun problems causing dispatching trouble in mod_caucho and iis_srun (rep by practically everybody)
</li><li>form char-encoding can now be controlled by Request attribute
"resin.form.character.encoding" (Avi Cherry)
</li><li>Commented out experimental caucho-status CPU usage
</li><li>XTP i18n problems with ISO-8859-2 (rep by Michal Mosiewicz)
</li><li>NT services now grab command lines (rep by Julien de Murcia)
</li><li>HttpStream can now set headers (rep by Paul Bauersfield)
</li><li>XSL support now follows the 16 Nov spec.
</li><li>wrapper.pl improvements to -verbose (by Emmanuel Blot)
</li><li>web-app id='/foo/' confuses getRequestDispatcher (rep by Dave Smiley)
</li><li>application.getRequestDispatcher("foo.html") in web-app 'bar' looks at
barfoo.html. (rep by Dave Smiley)
</li><li>Env.java now is a GenericServlet (rep by Dave Smiley)
</li><li>getServerName was returning foo:8080 (rep by Dave Smiley)
</li><li>load balancing mixup with session ids (rep by Mattias Nilsson)
</li><li>jspDestroy never called in JSP (rep by HyoungKi Choi)
</li><li>setup.exe now available on NT
</li><li>&lt;a href=a/b&gt; not handled by HTML parser (rep by Paul Bauersfield)
</li><li>Added LooseHtml for parsing net documents
</li><li>ECMAScript now allows users to define null and undefined mappings for
Java (rep by Mark Addleman)
</li><li>-conf not using lookupNative on NT (rep by Julien de Murcia)
</li></ul>
</s2>

<s2 title="1.0.2 - November 17, 1999">
<ul>
<li>sessions encoded in query for wap (rep by Osma Ahvenlampi)
</li><li>mod_caucho wasn't sending auth
</li><li>NativeDate needs sync with QDate (rep by Mark Addleman)
</li><li>Session invalidation throws Concurrent exception (rep by David Smiley)
</li><li>StaticGenerator used lookup instead of nativeLookup (rep by David Smiley)
</li><li>Java JSP generation expected more than HttpJspPage (rep by David Smiley)
</li></ul>
</s2>

<s2 title="1.1.b3 - November 16, 1999">
<ul>
<li>First cut at JSP 1.1 tag extensions
</li><li>Minor cleanup of shutdown protocol
</li><li>mod_caucho flushing cleanup and ResponseStream close (rep by Mattias Nilsson)
</li><li>XmlUtil.getPIAttribute robustness (fixed! by David Smiley)
</li><li>several JSP and bean recompile bugs (rep by Mattias Nilsson)
</li><li>mod_caucho was only scanning first cookie for load balancing (rep by Mattias Nilsson)
</li><li>class problems using jikes as external parser
</li><li>license changes to open source
</li><li>JavaScript code generation fixes to make JDK 1.2 happy.
</li><li>Fixed some issues relating to using jikes as an external parser
</li><li>IIS dispatch of servlets with query strings (rep by Stephen Owens)
</li></ul>
</s2>

<s2 title="1.1.b2 - November 4, 1999">
<ul>
<li>'Proxy' caching added
</li><li>Servlet chaining now works with jsp:include.
</li><li>First cut of a Resin load status
</li><li>Backed out Java JSP string optimization.
</li><li>Catching EINTR in mod_caucho
</li><li>Added CauchoErrorPage to mod_caucho (rep by Niranjan Nagar)
</li><li>Infinite jsp:include loops are now detected (rep by Camille Riddle)
</li><li>mod_caucho now works nicely with Apache (rep by Niranjan Nagar)
</li><li>Cookie age has 32 bit bug
</li><li>Session synch issues
</li><li>Pages returned for the wrong url (rep by Mattias Nilsson and Camille Riddle)
</li><li>getBufferSize() not handed in jsdk2.1 (rep by Mattias Nilsson)
</li><li>jsdk22.jar not handle readline properly. (rep by Mattias Nilsson)
</li><li>included files have proper character encoding (Primoz Hrvatin)
</li><li>XtpFilter -&gt; XslFilter and fixing XtpFilter problems (Franck Rasolo)
</li><li>mod_caucho squashed multiple cookies (Camille Riddle)
</li><li>configuration files now live in resin/conf (Emmanuel Blot)
</li><li>added first cut at a Resin tutorial
</li><li>servlet-mapping now understands '/' (Slawek Zachcial)
</li><li>path-mapping now understands regexps (Emmanuel Blot)
</li><li>more threading tweaks in TcpServer
</li><li>fix threadDeath deadlock (rep by Camille Riddle)
</li><li>only first input cookie recognized (rep by Mattias Nilsson)
</li><li>jikes now supports -encoding
</li><li>allow 'host' for http-server.
</li></ul>

</s2>

<s2 title="1.1.b1 - October 14, 1999">
<ul>
<li>Servlet Filters, in particular x-application/xtp so Servlet output
can be formatted by XSL
</li><li>Database pooling rewritten to follow JDBC 2.0 concepts.
</li><li>The ISAPI filter is fully configurable with resin.conf (rep by Paul Gayeski)
</li><li>Runtime errors were reported as ServletExceptions
</li><li>20% performance enhancement to beat Orion
</li><li>JRun fix on NT (rep by Sergio Soccarras)
</li><li>TcpServer rewrite to fix synch
</li><li>getRemoteUser not work on Apache (rep by Luca Bolognese)
</li><li>request.getRequestDispatcher not properly handling jsp:include (rep by Gita Banga)
</li><li>mod_caucho array bounds problem
</li></ul>
</s2>

<s2 title="1.0.1 - October 9, 1999">
<ul>
<li>XTP -lite generation for HTML generated bogus HEAD section.
</li><li>Deadlock in Application/VirtualHost
</li><li>jikes can't handle -encoding (rep by HyoungKi Choi)
</li><li>POST and jsp:include don't work together (rep by Slawek Zachcial)
</li><li>IIS goes to 100% under load (rep by Slawek Zachcial)
</li><li>Class reloading must clear application and session attributes (rep by Hans-Peter Schmidt)
</li><li>includes need to inherit parameters (rep by HyoungKi Choi)
</li><li>mod_caucho.c needs to set status on error (fixed by Mattias Nilsson)
</li><li>precompiled JSP don't need compilation
</li><li>scripts have bash dependencies
</li><li>getContentType returns full content-type header (rep by Mattias Nilsson)
</li><li>JspClassLoader needs to use lookupNative on NT (rep by Rene Biegert)
</li><li>After 3 days, sessions time out instantly (rep by HyoungKi Choi)
</li><li>Apache on win32 not properly closing sockets on timeout (rep by Rene Bieger)
</li><li>nested relative static includes use wrong path (rep by Slawek Zachcial)
</li><li>class loader problems
</li><li>/test.jsp/foo/bar compiles different than /test.jsp (rep by Mattias Nilsson)
</li><li>jsp:useBean class should allow interfaces (rep by Mike Engelhart)
</li><li>jsp:setProperty not giving error message when interface is missing (rep by Chris Cox)
</li><li>jsp:setProperty doesn't understand Integer (rep by Chris Cox)
</li><li>Threading problems with TcpServer
</li><li>synchronization needed in ClassLoader.loadClass
</li></ul>
</s2>

<s2 title="1.1.b0 - October 7, 1999">
<ul>
<li>The bulk of Servlet 2.2 is now available
</li><li>forms: query, post and include now follow 2.2
</li><li>Auto-compilation of servlets and beans (see http-config)
</li><li>Fixes to Auto-compilation.
</li><li>Load balancing on Apache (initial impl by Mattias Nilsson)
</li><li>session cookies disappear across applications (rep by Hans-Peter Schmidt)
</li></ul>
</s2>

<s2 title="1.0 - September 15, 1999">
<ul>
<li>Fix for external servlet runners (rep by Leo Deegan)
</li><li>Reworked TcpServer threading model attempting to avoid JDK accept freeze.
</li><li>JSP update problem (rep by Emmanuel Blot).
</li><li>Line # problem with JSP/Java and &lt;% ... %&gt; (rep by Michael Blakeley)
</li><li>WriteStream array overrun (rep by Emmanuel Blot)
</li><li>Synch problem with server shutdown
</li><li>CLASSPATH problems using jikes as java compiler
</li><li>JRE 1.1 won't start (rep by Cisco Serret)
</li><li>NT error repoting in directories with blanks
</li><li>Line # translation in runtime errors
</li><li>addCookie() wasn't printing expires date correctly (rep by Leo Deegan)
</li><li>various XSL bugs
</li><li>xsl.sh now uses strict XSLT by default, XSLT-lite is by -lite.
</li></ul>
</s2>

<s2 title="b9 - September 3, 1999">
<ul>
<li>Virtual hosting fixes (rep by HyoungKi Choi)
</li><li>i18n fixes with forms (rep by Jen Hsien Huang)
</li><li>srun problems with apache (rep by HyoungKi Choi)
</li><li>QServlet should be GenericServlet (rep by Vlad Beffa)
</li><li>stat not picked up in mod_caucho.c (rep by Emmanuel Blot)
</li><li>sync issues with accept (rep by Michael Blakeley)
</li><li>JS exception catch bug
</li><li>JSP isModified now checked periodically instead of each time
</li><li>WriteStream shutdown when write fails IOException
</li><li>XSLT-lite uses parsed-content by default to conform with XSLT
</li></ul>
</s2>

<s2 title="b8 - August 23, 1999">
<ul>
<li>Virtual hosting fixes (rep by HyoungKi Choi)
</li><li>JServ support (reported by Andrew Anten and Mark Edwards)
</li><li>NT Service cleanup with win95
</li><li>Oracle incompatibilities with ResultSetEcmaWrap (rep by Peter Antman)
</li><li>Win32 error reporting problems (rep by Neil Bartlett)
</li><li>Fixed deadlock and increased robustness of connection timeout and server
shutdown (rep by Edgardo Robles)
</li><li>NT exec problems with directories with spaces (rep by Sebastien Fouss)
</li><li>Updating class loader didn't find updated WEB-INF/lib/foo.jar (rep by Sebastien Fouss)
</li><li>i18n fixes for XML, JSP, XSL and POST (rep by CK Chan)
</li><li>Updates for most recent JSP 1.0 spec
</li><li>Updates for most recent (Aug) XSL 1.0 spec
</li></ul>
</s2>

<s2 title="b7 - August 7, 1999">
<ul>
<li>Quick bug fix for non-Resin servlet engines and language=java
</li><li>Added template and servlet examples
</li></ul>
</s2>

<s2 title="b6 - August 6, 1999">
<ul>
<li>XQL -&gt; XPath following the July draft
</li><li>XSLT follows the July draft (but see errata)
</li><li>Resin XSL extensions now use xtp: instead of xsl:, e.g xtp:copy-element
</li><li>httpd.sh and srun.sh now invoke a perl wrapper responsible for
	  keeping the Java process alive.
</li><li>start-httpd.sh, stop-httpd.sh, start-srun.sh, and stop-srun.sh added
</li><li>httpd.exe and srun.exe can now be installed as NT services using
	  -install and -remove
</li><li>srun_iis.dll no longer needs MFC
</li><li>split vfs.Stream to ReadStream and WriteStream.
</li><li>JSP and XTP now have JspManager and XtpManager so servlets can use
	  jsp files and xtp files as templates.
</li><li>fixed several bugs relating to HTTP/1.1 keepalives
</li><li>fixed JS wrapping. getNext() was shadowing next()
</li><li>EUC_KR encoding fixed
</li><li>JSP contentType now correctly understands charset=foo
</li><li>Java compilation supports Jikes, allows setting of the tmp directory,
	  and fixes compilation problems with jdk1.1.6
</li></ul>
</s2>

<s2 title="b5 - July 9, 1999">

<ul>
<li>Cleaned up the APIs, and exposed JavaDoc
</li><li>Complete reorganization of the entire codebase
</li><li>Script invocation overhead drastically reduced.
</li><li>Supports HTTP/1.1, including virtual hosting
</li><li>HTTP config now follows Servlet 2.2 API, including WEB-INF
</li><li>XSLT follows April draft
</li><li>XSLT-lite cleaned up and formalized
</li></ul>
</s2>

<s2 title="b4 - June 1, 1999">

<ul>
<li>Resin now supports JSP 1.0!
</li><li>Resin now includes servlet runners for Apache and IIS
</li><li>Java is now a valid, and the default, scripting language.
</li><li>Supports the JSDK 2.1 clarifications from JSP
</li><li>Servlet init configuration has changed slightly.
</li><li>b4 support for other servlet runners is still broken.  Sun's
changes to the JSDK 2.1 api are not available in the other runners
yet, and there hasn't been a chance to add the compatibility.
</li></ul>

</s2>

<s2 title="b3 - April 28, 1999">

<ul>
<li>Resin now supports JSDK 2.1
</li><li>Other servlet runners (JServ, JRun) are not supported by b3.
</li><li>VFS now supports stderr:, stdout:, and log:.
</li><li>The mini-httpd is now configurable.
</li><li>On Windows, Resin finds Java through the Registry.
</li><li>.application is dead.  applications are configured in resin.conf
</li></ul>

</s2>

<s2 title="b2 - March 31, 1999">

<ul>
<li>Renaming *.es -&gt; *.js and *.jtp -&gt; *.atp and request.query-&gt;request.form
</li><li>SCRIPTPATH now looks in RESIN_HOME
</li><li>Configuration made public (see tutorial, docs will come later :-()
</li><li>Bug fix for JRun on Windows
</li><li>Lots of minor bug fixes.
</li><li>"bug" fix for Kaffe to support HTTP.
</li><li>Added tutorial and quote.com example
</li></ul>

</s2>

<s2 title="b1 - March 16, 1999">

<ul>
<li>Added mailto: and http: to VFS
</li><li>Performance enhancements
</li><li>Bug fix to support JRun
</li><li>Preparation for Java support
</li></ul>

</s2>

<s2 title="a5 - Feb 28, 1999">

<ul>
<li>Added JTP, with support for XSL December 1998 Draft
</li><li>Added simple JTP examples
</li><li>Added caching for quasi-static pages.
</li><li>Bug fix for multithreaded mini-HTTP
</li><li>Bug fix for win32 path lookup.
</li></ul>

</s2>

<s2 title="a4 - Feb 17, 1999">

<ul>
<li>Added XQL supporting XSL December 1998 Draft
</li><li>Navigation Examples
</li><li>Added multithreading to mini-HTTP
</li></ul>

</s2>

<s2 title="a3 - Jan 29, 1999">

<ul>
<li>XML, DOM level 1.0
</li><li>Major Performance Enhancements
</li><li>Works with Kaffe interpreter (not compiler)
</li><li>Bug fixes #271-272,274-285,289,300,304-308
</li></ul>

</s2>

<s2 title="a2 - Jan 29, 1999">

<ul>
<li>Bug fixes #263 - 270
</li><li>Added createRoot, bind, unbind to Path.
</li><li>Added ScriptClosure to support application events.
</li></ul>

</s2>

<s2 title="a1 - Dec 30, 1998">

<ul>
<li>First public release.
</li><li>ecma-262
</li><li>netscape 1.3
</li><li>perl 5 regexp
</li><li>jsp 0.92
</li><li>mini-http, exception, classes, import
</li></ul>

</s2>
</s1>
</body>
</document>