<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Recent changes to patches</title><link>http://sourceforge.net/p/webware/patches/</link><description>Recent changes to patches</description><language>en</language><lastBuildDate>Wed, 05 Dec 2007 19:45:47 -0000</lastBuildDate><item><title>ServletFactory._importModuleFromDirectory should look at pyc</title><link>http://sourceforge.net/p/webware/patches/83/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;ServletFactory._importModuleFromDirectory should look at pyc files in addition to py files.  In our deployment we only ship pyc and WebWare creates a spurious py file which masks user settings or raise an exception on a read-only file system.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Andrew Gaul</dc:creator><pubDate>Wed, 05 Dec 2007 19:45:47 -0000</pubDate><guid>http://sourceforge.net36402240155d8ac1a7c005260576f43f7aa4120e</guid></item><item><title>Transaction Monitoring and Control</title><link>http://sourceforge.net/p/webware/patches/82/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;br /&gt;
I've been running a local patch for a couple weeks now with following features:&lt;/p&gt;
&lt;p&gt;1 - Added two methods to ThreadedAppServer: startRequest() and endRequest() methods. These methods can be used to implement page statistics and/or click tracking by session. Default implementation supports feature 2 below.&lt;/p&gt;
&lt;p&gt;2 - Allow real time monitoring of the requests being processed by each thread. A new ThreadControl page has been added to the Admin context. Setting 'TrackThreads' to True in AppServer.config enables this feature. If the supplied thread2.py module is loaded requests can be cancelled via this page.&lt;/p&gt;
&lt;p&gt;3 - Support automatically cancelling requests taking more than a configurable amount of time. Setting 'CancelLongRequests' to the number of seconds after which a request should be cancelled in the AppServer.config file enables this feature. This feature also requires 'TrackThreads' to be enabled.&lt;/p&gt;
&lt;p&gt;The patch is relatively small, if there is interest in looking at these changes and moving them into the mainline I'd be happy to forward them to anyone interested. Of course, comments and suggestions are very welcome.&lt;/p&gt;
&lt;p&gt;The performance penalty for feature 1 is the cost of some accessors into the current transaction, a couple time() calls and two function calls. I would guess these changes should have a negligible impact on performance.&lt;/p&gt;
&lt;p&gt;Features 2 and 3 use a new class which is basically a locked dictionary. So the cost is two additional mutex lock/unlocks for each transaction. If WebKit didn't support adding/removing threads dynamically that mutex could be removed and the additional overhead is some dictionary accesses.&lt;/p&gt;
&lt;p&gt;I'd be happy to get feedback on these enhancements.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;br /&gt;
Steve&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Schwarz</dc:creator><pubDate>Wed, 03 Oct 2007 03:25:03 -0000</pubDate><guid>http://sourceforge.netfcd61b22103dd9d1a2b3ad45dc2d9b63aaa7425b</guid></item><item><title>JSON security fix</title><link>http://sourceforge.net/p/webware/patches/81/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Recent study show that JSON protocol may be vulnerable to some form of hacking.&lt;br /&gt;
This patch fix this.&lt;br /&gt;
There is also a cosmetic update.&lt;/p&gt;
&lt;p&gt;References:            &lt;a href="http://www.fortifysoftware.com/servlet/downloads/public/JavaScript" rel="nofollow"&gt;http://www.fortifysoftware.com/servlet/downloads/public/JavaScript&lt;/a&gt;_Hijacking.pdf     &lt;a href="http://getahead.org/blog/joe/2007/03/05/json" rel="nofollow"&gt;http://getahead.org/blog/joe/2007/03/05/json&lt;/a&gt;_is_not_as_safe_as_people_think_it_is.html&lt;/p&gt;
&lt;p&gt;JF&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Piéronne Jean-François</dc:creator><pubDate>Mon, 09 Apr 2007 17:22:28 -0000</pubDate><guid>http://sourceforge.net09f395202aae5ab33048f5ca2561b19ab7b67264</guid></item><item><title>clean.py fix</title><link>http://sourceforge.net/p/webware/patches/80/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I have attach a patch for clean.py&lt;br /&gt;
Importing clean.py would not execute the clean code.&lt;/p&gt;
&lt;p&gt;Useful if you browse the source tree using pydoc.&lt;/p&gt;
&lt;p&gt;JF&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Piéronne Jean-François</dc:creator><pubDate>Thu, 01 Feb 2007 09:45:19 -0000</pubDate><guid>http://sourceforge.netc88ef29a30f255c97922575998b4e6d1f1dfdca1</guid></item><item><title>Funcs.normURI fix</title><link>http://sourceforge.net/p/webware/patches/79/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;fixing typo in func normURI.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Am I the only one in the world who is using this function? :-)&lt;/p&gt;
&lt;p&gt;Download patch on &lt;a href="http://veros.koren.cz/patches/webware-webutils-funcs.patch" rel="nofollow"&gt;http://veros.koren.cz/patches/webware-webutils-funcs.patch&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Veros Kaplan</dc:creator><pubDate>Tue, 02 Jan 2007 23:40:29 -0000</pubDate><guid>http://sourceforge.netd18bde4242ba98cd66c142b876efd145e6b86422</guid></item><item><title>Servet .serverSidePath fix</title><link>http://sourceforge.net/p/webware/patches/78/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;method Servlet.serverSidePath doesn't work as expected when using parameter with slash (eg.  "servlets/TitlePage" )&lt;/p&gt;
&lt;p&gt;The method creates cache attribute _serverSidePath which is computed from "path" parameter. And this is the problem, because  _serverSidePath  shouldn't depend on the parameter.&lt;/p&gt;
&lt;p&gt;The problem appeared sometimes between 0.9.1 and 0.9.2&lt;/p&gt;
&lt;p&gt;Patch is available on &lt;a href="http://veros.koren.cz/patches/webware-servlet.patch" rel="nofollow"&gt;http://veros.koren.cz/patches/webware-servlet.patch&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Migrating from 0.8.1 to 0.9.2&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Veros Kaplan</dc:creator><pubDate>Tue, 02 Jan 2007 23:03:23 -0000</pubDate><guid>http://sourceforge.net3f27a56390c387dfbbe931ae03fb6ac8dfb63df4</guid></item><item><title>SessionDynamicStore - don't save one-shot sessions</title><link>http://sourceforge.net/p/webware/patches/77/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Patch to SessionDynamicStore.&lt;/p&gt;
&lt;p&gt;PROBLEM: Crawler bots generates lot of sessions which aren't used more than once, as crawlers usually doesn't implements cookies.&lt;/p&gt;
&lt;p&gt;Although these sessions aren't used they're still swapped to the Sessions directory  and occupies space.&lt;/p&gt;
&lt;p&gt;SOLUTION: The "one-shot sessions" aren't moved to FileStore on periodical clean-up. They are still saved on Session store shutdown. &lt;/p&gt;
&lt;p&gt;This patch greatly reduces number of files in Sessions directory, especially on low traffic server.&lt;/p&gt;
&lt;p&gt;Used on production server: &lt;a href="http://www.cestovatel.cz/" rel="nofollow"&gt;http://www.cestovatel.cz/&lt;/a&gt; with no problems (Webware 0.8), ported to last versions.&lt;/p&gt;
&lt;p&gt;Download on &lt;a href="http://veros.koren.cz/patches/webware-sessionstore.patch" rel="nofollow"&gt;http://veros.koren.cz/patches/webware-sessionstore.patch&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Veros Kaplan</dc:creator><pubDate>Fri, 29 Dec 2006 09:34:43 -0000</pubDate><guid>http://sourceforge.neta52bef86bc8f99503f0d0a3e1934f7d1c03cb01e</guid></item><item><title>Error reporting</title><link>http://sourceforge.net/p/webware/patches/76/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Default HTTPResponse doesn§t sent status 500 in case of&lt;br /&gt;
exception.&lt;/p&gt;
&lt;p&gt;--- WebKit/HTTPResponse.py~     2006-02-09&lt;br /&gt;
00:59:25.771571112 +0100&lt;br /&gt;
+++ WebKit/HTTPResponse.py      2006-02-09&lt;br /&gt;
00:59:32.088610776 +0100&lt;br /&gt;
@@ -277,6 +277,8 @@&lt;br /&gt;
"""&lt;br /&gt;
if debug: print "HTTPResponse commit"&lt;br /&gt;
self.recordSession()&lt;br /&gt;
+               if self._transaction.errorOccurred():&lt;br /&gt;
+                       self.setStatus(500, 'Error&lt;br /&gt;
occurred')&lt;br /&gt;
self.writeHeaders()&lt;br /&gt;
self._committed = 1&lt;br /&gt;
self._strmOut.commit()&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Veros Kaplan</dc:creator><pubDate>Tue, 17 Oct 2006 13:41:05 -0000</pubDate><guid>http://sourceforge.net188ea86faaad7ece41d32c3c123530f986fdd159</guid></item><item><title>OpenVMS, non presistent environment, status header</title><link>http://sourceforge.net/p/webware/patches/75/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;These patches are for the webkit directory:&lt;/p&gt;
&lt;p&gt;Application.py and AppServer.py:&lt;br /&gt;
Fix a bug when webware is used in a non persistent&lt;br /&gt;
environment, don't start/stop the task manager in this case&lt;/p&gt;
&lt;p&gt;HTTPResponse.py&lt;br /&gt;
writeHeaders method will now set the Status  header if&lt;br /&gt;
there is none.&lt;/p&gt;
&lt;p&gt;SelectRelease.py and UnknownFileTypeServlet.py&lt;br /&gt;
small OpenVMS specific patches&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Jean-François&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Piéronne Jean-François</dc:creator><pubDate>Tue, 11 Jul 2006 08:14:50 -0000</pubDate><guid>http://sourceforge.net09170eee44f57605b847c73cf9e586334fddc2e7</guid></item><item><title>mod_webkit APR compatibility patch</title><link>http://sourceforge.net/p/webware/patches/74/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;mod_webkit.c has latent support for apr_socket_create &lt;br /&gt;
gaining more parameters in APR 1.x&lt;/p&gt;
&lt;p&gt;Unfortunately, as the required header file is not &lt;br /&gt;
included, APR_VERSION_MAJOR is always null.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Richard Brodie</dc:creator><pubDate>Wed, 01 Mar 2006 16:43:16 -0000</pubDate><guid>http://sourceforge.neta04fb6174b7bf0ce1e716679419a0da843f7de9c</guid></item></channel></rss>