<?xml version="1.0"?>
<rss version="2.0">
<channel>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/</link>
<title>helma.org/wiki/Helma 1.6.0 Changelog</title>
<description>Updates for Page helma.org/wiki/Helma 1.6.0 Changelog</description>
<pubDate>Thu, 24 May 2012 03:05:03 +0000</pubDate>
<item>
<title>Version 13</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=13</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;31&lt;/td&gt;&lt;td&gt;* Add &lt;span class=&#39;diffremoved&#39;&gt;app&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;res&lt;/span&gt;.rollback(): Just abort transaction and do not stop request execution like res.abort() or res.stop().&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Sat, 30 Jun 2007 18:53:11 +0000</pubDate>
<author>zumbrunn</author>
</item>
<item>
<title>Version 12</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=12</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;23&lt;/td&gt;&lt;td&gt;** &lt;span class=&#39;diffremoved&#39;&gt;HTTP &lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;Any bytes remaining after GET/POST &lt;/span&gt;parameter &lt;span class=&#39;diffremoved&#39;&gt;remainders &lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;parsing are made accessible as &lt;/span&gt;req.data.&lt;span class=&#39;diffremoved&#39;&gt;http_post_remainder and &lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;http_get_remainder, &lt;/span&gt;req.data.&lt;span class=&#39;diffremoved&#39;&gt;http_get_remainder&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;http_post_remainder.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;24&lt;/td&gt;&lt;td&gt;** Improved file upload memory handling, new &lt;span class=&#39;diffremoved&#39;&gt;getInputStream() method in helma.util.&lt;/span&gt;MimePart&lt;span class=&#39;diffadded&#39;&gt;.getInputStream() method&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;25&lt;/td&gt;&lt;td&gt;** Additional apps.properties &lt;span class=&#39;diffremoved&#39;&gt;option for &lt;/span&gt;totalUploadLimit &lt;span class=&#39;diffadded&#39;&gt;setting to limit combined file upload size (as opposed to individual upload size)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;26&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* New Image constructor that takes a java.io.InputStream as argument&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;27&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Support for sourceCharset in app.properties&amp;nbsp; to specify the encoding of source files&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;28&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* New HopObject.indexOf() and path.indexOf methods, deprecating the existing HopObject.contains() and path.contains&amp;nbsp; &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;47&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Update to jakarta commons-logging 1.1, commons-fileupload 1.2 and commons-io 1.3.1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Fri, 22 Jun 2007 11:27:56 +0000</pubDate>
<author>zumbrunn</author>
</item>
<item>
<title>Version 11</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=11</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;1&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;* *New HTTP-related features|New HTTP-related Features in Helma 1.6*:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;2&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** Specialized and aggregated parameter collections req.postParams, req.queryParams, req.params, req.cookies in addition to req.data&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;3&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** Improved handling of multi-value parameters, allowing access to parameter values as arrays, even if they only have one value.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;4&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** HTTP parameter grouping, mapping parameters with names like &amp;quot;foo[bar]&amp;quot; to req.data.foo.bar&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;5&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** Additional HTTP header methods req.getHeader(), req.getHeaders(), req.getIntHeader(), req.getDateHeader(), res.setHeader(), res.setDateHeader(), res.addHeader() and res.addDateHeader()&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;6&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** HTTP parameter remainders req.data.http_post_remainder and req.data.http_get_remainder&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;7&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** Improved file upload memory handling, new getInputStream() method in helma.util.MimePart&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;8&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** Support for monitoring file upload progress&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;9&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffremoved&#39;&gt;** Additional apps.properties option for totalUploadLimit &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;19&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* *New HTTP-related features|New HTTP-related Features in Helma 1.6*:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;20&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Specialized and aggregated parameter collections req.postParams, req.queryParams, req.params, req.cookies in addition to req.data&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;21&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Improved handling of multi-value parameters, allowing access to parameter values as arrays, even if they only have one value.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;22&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** HTTP parameter grouping, mapping parameters with names like &amp;quot;foo[bar]&amp;quot; to req.data.foo.bar&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;23&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Additional HTTP header methods req.getHeader(), req.getHeaders(), req.getIntHeader(), req.getDateHeader(), res.setHeader(), res.setDateHeader(), res.addHeader() and res.addDateHeader()&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;24&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** HTTP parameter remainders req.data.http_post_remainder and req.data.http_get_remainder&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;25&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Improved file upload memory handling, new getInputStream() method in helma.util.MimePart&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;26&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Support for monitoring file upload progress&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;27&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Additional apps.properties option for totalUploadLimit &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Fri, 22 Jun 2007 09:47:48 +0000</pubDate>
<author>zumbrunn</author>
</item>
<item>
<title>Version 10</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=10</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;1&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* *New HTTP-related features|New HTTP-related Features in Helma 1.6*:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;2&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Specialized and aggregated parameter collections req.postParams, req.queryParams, req.params, req.cookies in addition to req.data&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;3&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Improved handling of multi-value parameters, allowing access to parameter values as arrays, even if they only have one value.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;4&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** HTTP parameter grouping, mapping parameters with names like &amp;quot;foo[bar]&amp;quot; to req.data.foo.bar&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;5&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Additional HTTP header methods req.getHeader(), req.getHeaders(), req.getIntHeader(), req.getDateHeader(), res.setHeader(), res.setDateHeader(), res.addHeader() and res.addDateHeader()&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;6&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** HTTP parameter remainders req.data.http_post_remainder and req.data.http_get_remainder&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;7&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Improved file upload memory handling, new getInputStream() method in helma.util.MimePart&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;8&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Support for monitoring file upload progress&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;9&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Additional apps.properties option for totalUploadLimit &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Fri, 22 Jun 2007 09:46:28 +0000</pubDate>
<author>zumbrunn</author>
</item>
<item>
<title>Version 9</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=9</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;10&lt;/td&gt;&lt;td&gt;* *New Skin features|New Skin Features in Helma 1.&lt;span class=&#39;diffremoved&#39;&gt;6*&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;6*:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Thu, 05 Apr 2007 03:36:43 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 8</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=8</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;19&lt;/td&gt;&lt;td&gt;* &lt;span class=&#39;diffremoved&#39;&gt;Change res&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;Add app&lt;/span&gt;.&lt;span class=&#39;diffremoved&#39;&gt;abort() semantics: &lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;rollback(): &lt;/span&gt;Just abort transaction and do not stop request &lt;span class=&#39;diffremoved&#39;&gt;execution, since we now have &lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;execution like &lt;/span&gt;res.&lt;span class=&#39;diffremoved&#39;&gt;stop() to do the latter&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;abort() or res.stop()&lt;/span&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;20&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* New HopObject.onPersist() callback that is called each time a HopObject is stored to embedded or relational database.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Thu, 05 Apr 2007 03:13:04 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 7</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=7</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;15&lt;/td&gt;&lt;td&gt;** &lt;span class=&#39;diffremoved&#39;&gt;New standard attribute: &amp;lt;code&amp;gt;failmode=silent|verbose&amp;lt;/code&amp;gt;&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;new onUnhandledMacro() callback that allows to catch or handle unhandled macros&lt;/span&gt;. &lt;span class=&#39;diffremoved&#39;&gt;Default value is silent for request/response/session/param handlers, and verbose for app object handlers (mimicking implicit Helma 1.5 behaviour)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;16&lt;/td&gt;&lt;td&gt;** &lt;span class=&#39;diffremoved&#39;&gt;Make macros with missing closing quotes fail consistently&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;New standard attribute: &amp;lt;code&amp;gt;failmode=silent|verbose&amp;lt;/code&amp;gt;&lt;/span&gt;.&lt;span class=&#39;diffadded&#39;&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;17&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Better handling for malformed macro tags.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Thu, 05 Apr 2007 03:12:11 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 6</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=6</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;6&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Support for __noSuchMethod__&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;7&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Support for const keyword&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Thu, 05 Apr 2007 03:10:21 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 5</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=5</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;9&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Subskins: &amp;lt;code&amp;gt;&amp;lt;% #subskin %&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;renderSkin(&amp;quot;skin#subskin&amp;quot;)&amp;lt;/code&amp;gt;, respectively&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;24&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement res.pushBuffer(StringBuffer) and res.popBuffer() to get StringBuffers *in and out of the response buffer stack|http://dev.helma.org/wiki/Handler+for+rendered+skins/*.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;25&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement app.charset and app.getCharset() to get the app&#39;s default charset.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Thu, 05 Apr 2007 02:45:08 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 4</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=4</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;8&lt;/td&gt;&lt;td&gt;* &lt;span class=&#39;diffremoved&#39;&gt;New &lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;*New &lt;/span&gt;Skin &lt;span class=&#39;diffremoved&#39;&gt;features&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;features|New Skin Features in Helma 1.6*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Fri, 16 Mar 2007 14:50:02 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 3</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=3</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;8&lt;/td&gt;&lt;td&gt;* &lt;span class=&#39;diffremoved&#39;&gt;Pimped up documentation.&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;New Skin features&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;9&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Macro pipes/filters: &amp;lt;code&amp;gt;&amp;lt;% text | truncate max=&amp;quot;300&amp;quot; | uppercase %&amp;gt;&amp;lt;/code&amp;gt;. Filter functions must have a _filter suffix and get two arguments: the return value of the previous macro/filter in the chain, and a parameter object with the attributs in the filter tag. They are expected to return the filtered macro output.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;10&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Deep macro invocation: &amp;lt;code&amp;gt;&amp;lt;% page.author.name %&amp;gt;&amp;lt;/code&amp;gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;11&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Nested Macros: &amp;lt;code&amp;gt;&amp;lt;% page.link content=&amp;lt;% messages.storylink %&amp;gt; %&amp;gt;&amp;lt;/code&amp;gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;12&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** New standard attribute: &amp;lt;code&amp;gt;failmode=silent|verbose&amp;lt;/code&amp;gt;. Default value is silent for request/response/session/param handlers, and verbose for app object handlers (mimicking implicit Helma 1.5 behaviour)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;13&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Make macros with missing closing quotes fail consistently.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;14&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement app.getAppsProperties() to allow access to the app&#39;s apps.properties entries.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;15&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Change res.abort() semantics: Just abort transaction and do not stop request execution, since we now have res.stop() to do the latter.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;16&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Rhino fix to make protected Java methods accessible and overridable to subclassing JavaAdapters.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;17&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Pimped up documentation, including JSDoc JavaScript API docs for Helma core and modules libraries.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Thu, 15 Mar 2007 18:28:18 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 2</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=2</link>
<description>&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;1&lt;/td&gt;&lt;td&gt;* Update to Rhino 1.6 (patched CVS &lt;span class=&#39;diffremoved&#39;&gt;snapshot)&lt;/span&gt;&lt;span class=&#39;diffadded&#39;&gt;snapshot) implementing *JavaScript 1.6|http://developer.mozilla.org/en/docs/New_in_JavaScript_1.6*, including:&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;3&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** New Array methods indexOf(), lastIndexOf(), filter(), map(), every(), forEach(), some().&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;4&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** for each loop.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Wed, 07 Mar 2007 14:33:51 +0000</pubDate>
<author>hannes</author>
</item>
<item>
<title>Version 1</title>
<link>http://helma.org/wiki/Helma+1.6.0+Changelog/history.diff?v=1</link>
<description>&lt;ul class=&#39;diffproperties&#39;&gt;&lt;li&gt;Set &lt;span class=&#39;diffpropname&#39;&gt;tags&lt;/span&gt; to &lt;span class=&#39;diffadded&#39;&gt;helma, helma 1.6&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class=&#39;diffbody&#39;&gt;&lt;table&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;1&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Update to Rhino 1.6 (patched CVS snapshot)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;2&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** E4X support, both without and with Apache XML-Beans.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;3&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Support for __defineGetter__ and __defineSetter__ for getter/setter support.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;4&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** JavaImporter constructor for clean access to Java libraries.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;5&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;** Many bug fixes.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;6&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Pimped up documentation.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;7&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement JS stack traces.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;8&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* New rhino.strictvars property to throw errors on undeclared vars.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;9&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement onResponse() callback which, if defined, is called after the request has been processed.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;10&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement res.buffer to access current page output&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;11&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Implement res.stop() to stop request execution&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;12&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Do not reuse per thread scope, create a new one for each request&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;13&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Increase default maxThreads value to 50 (evauators aren&#39;t that expensive anymore)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;14&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Upgrade to Jetty 4.2.27.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;15&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Removed old and obsolete ant infrastructure. Developers are now required to have their own ant installed.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;16&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Support binary database column mapping&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;17&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Fully implement prototype compilation on access of static constructor properties. Previously access of prototype members didn&#39;t trigger compilation.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;18&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Adding tagsoup.jar version 1.0.4 for use with getHtmlDocument(), throw away subclass of Swing HTML parser.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;19&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Remove lib/apache-dom.jar, from now on Xerces jars are required in order to use getHtmlDocument().&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;width:2em; color:#999;&quot;&gt;20&lt;/td&gt;&lt;td&gt;&lt;span class=&#39;diffadded&#39;&gt;* Remove crimson.jar at last, it isn&#39;t needed for JDK 1.4 and later.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</description>
<pubDate>Tue, 06 Mar 2007 16:56:57 +0000</pubDate>
<author>hannes</author>
</item>
</channel>
</rss>

