<?xml version="1.0" encoding="utf-8" ?>

<rdf:RDF 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns="http://my.netscape.com/rdf/simple/0.9/">
<channel>
    <title>Allan Saddi's projects blog</title>
    <link>http://www.saddi.com/software/news/</link>
    <description>Announcements and ramblings about projects new and old.</description>
    <dc:language>en</dc:language>

    <image rdf:resource="http://www.saddi.com/software/news/templates/default/img/s9y_banner_small.png" />

    <items>
      <rdf:Seq>
        <rdf:li resource="http://www.saddi.com/software/news/archives/70-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/69-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/68-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/67-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/66-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/65-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/64-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/63-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/62-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/61-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/60-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/58-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/57-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/56-guid.html" />
        <rdf:li resource="http://www.saddi.com/software/news/archives/55-guid.html" />
      </rdf:Seq>
    </items>
</channel>

<image rdf:about="http://www.saddi.com/software/news/templates/default/img/s9y_banner_small.png">
        <url>http://www.saddi.com/software/news/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Allan Saddi's projects blog - Announcements and ramblings about projects new and old.</title>
        <link>http://www.saddi.com/software/news/</link>
        <width>100</width>
        <height>21</height>
    </image>


<item rdf:about="http://www.saddi.com/software/news/archives/70-guid.html">
    <title>new flup snapshot</title>
    <link>http://www.saddi.com/software/news/archives/70-new-flup-snapshot.html</link>
    <description>
    I just released a new snapshot, it includes the following changes:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;fix fork bomb and check number of children against minSpare not maxSpare&lt;/li&gt;&lt;li&gt;Restore check of the absolute number of children against maxSpare and document rationale.&lt;/li&gt;&lt;li&gt;Add configurable timeout (default: no timeout) to be used when the WSGI application is called. Only applies to forked servers!&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;
Here are links to the &lt;a href=&quot;http://hg.saddi.com/flup-server/&quot;&gt;Hg repository&lt;/a&gt; and the &lt;a href=&quot;http://pypi.python.org/pypi/flup/1.0.3.dev-20091021&quot;&gt;PyPI page&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
If there are any issues, please open a ticket at the &lt;a href=&quot;http://trac.saddi.com/flup&quot;&gt;flup Trac&lt;/a&gt; and/or submit a patch. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    flup, </dc:subject>
    <dc:date>2009-10-21T16:48:10Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=70</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=70</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/69-guid.html">
    <title>Now for a little something different...</title>
    <link>http://www.saddi.com/software/news/archives/69-Now-for-a-little-something-different....html</link>
    <description>
    I just finished beta testing (both closed and open) the upcoming MMO game, &lt;a href=&quot;http://www.champions-online.com/&quot;&gt;Champions Online&lt;/a&gt;. Now, I won&#039;t talk about the actual game, since this is my software/programming blog, and not my gaming blog. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; But this game had something that really tickled the code monkey inside of me: the absolutely best in-game bug reporting UI I have ever seen.&lt;br /&gt;
&lt;br /&gt;
The workflow was straightforward:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Pick a bug category (e.g. Character, Missions (quests), UI, Graphics, Sound, etc.)&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Use a context-sensitive drop-down to select the exact aspect or component that was buggy. For example, if you chose the Missions category, the drop-down would contain a list of your active missions and for convenience, it would also include a few of your most recently completed missions.&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Alternatively, type some text in the text box.&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Hit &quot;Search.&quot; This would actually bring up existing bug reports that matched your criteria. I found this very useful, even if I did not have a bug to report &amp;mdash; it let me see if I could expect any problems with what I was currently testing.&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Clicking on an existing bug report would let you see the original description as well as a log of changes/responses. It was great for finding workarounds (to allow one to continue playing/testing).&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;If there was an existing report that matched your bug, you could add more info or simply &quot;me too&quot; the bug which would increment the number of users who have reported that bug (so developers can judge severity) and update the modification time. Conveniently, the bug would also be tracked as if it were your own, showing up when you viewed your own reports.&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Lastly, if there are no existing bugs that match yours, you could open a new bug report. And here, I thought, was another neat addition: when you submitted the report, it would automatically gather and send your system info, and &lt;em&gt;in addition to this&lt;/em&gt; it would take a screen shot of what you were seeing and attach it to the report. This made graphics and UI bugs quite painless to report.&lt;/li&gt;&lt;/ol&gt;Anyway, I was averaging a few bug reports a day, so I got a lot of experience with that interface. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; It was always a good feeling to see bugs that I had personally reported get fixed in subsequent builds. (Though the responses/handling became abysmally slow during open beta... understandable, I guess, since there were far more testers.) I hope future online games adopt something similar, especially the transparency (being able to view others&#039; bug reports) and the convenience (automatic screen shots, etc.)&lt;br /&gt;
 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    General, </dc:subject>
    <dc:date>2009-08-28T04:47:00Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=69</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=69</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/68-guid.html">
    <title>SHA stuff moved to Hg</title>
    <link>http://www.saddi.com/software/news/archives/68-SHA-stuff-moved-to-Hg.html</link>
    <description>
    I didn&#039;t realize this, but all my SHA implementations were still living in my Subversion repository. Well, after some meticulous converting from both my archived CVS &lt;em&gt;and&lt;/em&gt; SVN repositories, I&#039;ve managed to finally move them over to Mercurial.&lt;br /&gt;
&lt;br /&gt;
Anyway, I&#039;m not sure what else in Subversion I&#039;d like to move over. Certainly, there&#039;s nothing left in there that&#039;s all that interesting to the public. So I will take down the public-facing SVN repo... someday.&lt;br /&gt;
&lt;br /&gt;
Searching Google, I see nothing links directly svn.saddi.com. However, there&#039;s quite &lt;em&gt;a lot&lt;/em&gt; of documentation that references flup and fcgi.py within it. Well, if anyone&#039;s been checking out &lt;em&gt;that&lt;/em&gt; flup, it&#039;s 2 years out of date. And the standalone fcgi.py module... I&#039;d rather just forget about that since it&#039;s hopelessly out of sync from the flup version. (It&#039;s basically the flup threaded fcgi server without thread pools.) 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    General, py-lib, </dc:subject>
    <dc:date>2009-08-04T04:21:29Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=68</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=68</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/67-guid.html">
    <title>Submitting Patches</title>
    <link>http://www.saddi.com/software/news/archives/67-Submitting-Patches.html</link>
    <description>
    I&#039;ve written up brief guidelines on &lt;a href=&quot;http://trac.saddi.com/flup/wiki/SubmittingPatches&quot;&gt;submitting patches for flup&lt;/a&gt;. (Though it also pertains to any of my other public projects.)&lt;br /&gt;
&lt;br /&gt;
And I&#039;d like to thank everyone who has recently contributed! Don&#039;t worry, there&#039;s nothing in the guidelines that you weren&#039;t already doing. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    flup, </dc:subject>
    <dc:date>2009-08-03T18:34:18Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=67</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=67</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/66-guid.html">
    <title>flup 1.0.2 released</title>
    <link>http://www.saddi.com/software/news/archives/66-flup-1.0.2-released.html</link>
    <description>
    See &lt;a href=&quot;http://www.saddi.com/software/news/archives/65-flup-1.0.2-on-the-horizon....html&quot;&gt;this entry&lt;/a&gt; for details.&lt;br /&gt;
 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    Python, flup, </dc:subject>
    <dc:date>2009-05-26T15:02:23Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=66</wfw:comment>
        <slash:comments>2</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=66</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/65-guid.html">
    <title>flup 1.0.2 on the horizon...</title>
    <link>http://www.saddi.com/software/news/archives/65-flup-1.0.2-on-the-horizon....html</link>
    <description>
    I guess I&#039;ve sat on these changes long enough:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Import Paste factories (and dependencies...) from PasteScript&lt;/li&gt;&lt;li&gt;Be tolerant of EAGAIN when sending messages to parent process.&lt;/li&gt;&lt;li&gt;Add forceCGI keyword argument to FastCGI servers to programmatically force CGI behavior.&lt;/li&gt;&lt;li&gt;Merge Tommi Virtanen&#039;s &quot;single server&quot; (sequential server) patch.&lt;/li&gt;&lt;li&gt;Update ez_setup.py.&lt;/li&gt;&lt;li&gt;Re-seed random module after each fork.&lt;/li&gt;&lt;li&gt;Add an indication as to which header fails assertion when passing in non-string header names and/or values.&lt;/li&gt;&lt;/ul&gt;The only major change are the Paste factories &amp;mdash; they should be a lot closer to the (deprecated) factories for flup servers found in PasteScript. In fact, they are the same factories found in PasteScript. Defaults will have changed, with respect to the previous factory implementations.&lt;br /&gt;
&lt;br /&gt;
I&#039;m looking to release in a week or so. Testing/comments are welcome:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://hg.saddi.com/flup-server/&quot;&gt;http://hg.saddi.com/flup-server/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
And, as you probably have noticed, I don&#039;t cut releases that often (not a big fan of &quot;release early, release often&quot;...) &lt;b&gt;But&lt;/b&gt; my public repository is always up-to-date. So it&#039;s almost the same thing... without the overhead. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    Python, flup, </dc:subject>
    <dc:date>2009-05-18T23:06:49Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=65</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=65</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/64-guid.html">
    <title>Dabbling in Python 3.0</title>
    <link>http://www.saddi.com/software/news/archives/64-Dabbling-in-Python-3.0.html</link>
    <description>
    Well, Python 3.0 was &lt;a href=&quot;http://www.python.org/download/releases/3.0/&quot;&gt;released&lt;/a&gt; a few days ago. I admit, I really haven&#039;t been keeping up much with Python development. Up until yesterday, Python 2.5 was all that I&#039;ve used.&lt;br /&gt;
&lt;br /&gt;
Anyway, I was curious. I was curious about all the backwards-incompatible changes to the language/libraries. I was curious about how WSGI dealt with Python 3.0. With the list of &lt;a href=&quot;http://wsgi.org/wsgi/Amendments_1.0&quot;&gt;proposed WSGI 1.0 amendments&lt;/a&gt; for Python 3.0 (and the Web-SIG posts it referenced), I attempted to port both flup and ajp-wsgi.&lt;br /&gt;
&lt;br /&gt;
It was interesting, at least, to see the issues in two different lights. Though flup and ajp-wsgi do the same thing conceptually, flup is pure-Python and ajp-wsgi is pure-C. The most pain for both, unsurprisingly, came from the new str/bytes distinction. While it was an annoying issue to deal with (and I realize as far as the spec is concerned, all details about it still haven&#039;t been worked out), I do welcome the change.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve published both repositories, for the curious. They work for simple &quot;Hello World&quot; type applications. I kind of doubt that any frameworks have been ported to Python 3.0 yet. I probably won&#039;t touch them again until the spec has been clarified more. (Encoding of environ key/values? file_wrapper support with e.g. text-mode files?)&lt;br /&gt;
&lt;br /&gt;
Interestingly, I didn&#039;t actually test the FastCGI and SCGI adapters with &quot;real&quot; web servers. (I don&#039;t have anything set up.) I used the flup client implementations to cross-test clients/servers on 2.x/3.0. So those flup WSGI servers might actually be broken. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
The repositories:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://hg.saddi.com/ajp-wsgi-py3.0/&quot;&gt;http://hg.saddi.com/ajp-wsgi-py3.0/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://hg.saddi.com/flup-py3.0/&quot;&gt;http://hg.saddi.com/flup-py3.0/&lt;/a&gt;&lt;/ul&gt; 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    Python, flup, </dc:subject>
    <dc:date>2008-12-06T00:50:30Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=64</wfw:comment>
        <slash:comments>1</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=64</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/63-guid.html">
    <title>flup 1.0.1 released</title>
    <link>http://www.saddi.com/software/news/archives/63-flup-1.0.1-released.html</link>
    <description>
    A very minor update to flup. If you aren&#039;t having any problems now, then there&#039;s probably no need to upgrade.&lt;br /&gt;
&lt;br /&gt;
This update concerns certain web servers &amp;amp; configurations that don&#039;t correctly supply PATH_INFO and/or QUERY_STRING to flup. When missing these environment entries, the flup servers will now attempt to deduce PATH_INFO and/or QUERY_STRING from REQUEST_URI (if it is present) before defaulting to the empty string (as it did before).&lt;br /&gt;
&lt;br /&gt;
Thanks to Richard Davies for the patch. 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    flup, </dc:subject>
    <dc:date>2008-07-22T18:50:55Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=63</wfw:comment>
        <slash:comments>8</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=63</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/62-guid.html">
    <title>Random changes</title>
    <link>http://www.saddi.com/software/news/archives/62-Random-changes.html</link>
    <description>
    Just a few updates on some non-happenings. I recently discovered &lt;a href=&quot;http://www.selenic.com/mercurial/wiki/index.cgi/ConvertExtension&quot;&gt;hg convert&lt;/a&gt; and &lt;a href=&quot;http://www.selenic.com/mercurial/wiki/index.cgi/TransplantExtension&quot;&gt;hg transplant&lt;/a&gt;. I decided to re-do my Mercurial repositories (most originated in Subversion, while others came from CVS). I was entirely &lt;em&gt;obsessed&lt;/em&gt; with converting the &lt;em&gt;entire&lt;/em&gt; history to HG. (Projects like yafic and newsfish had the most history, being converted from CVS to SVN, then SVN to HG. Unfortunately, I didn&#039;t preserve history when going to SVN.) Anyhow, I&#039;m pretty happy with the results.&lt;br /&gt;
&lt;br /&gt;
On another note, I went ahead and upgraded Trac to 10.4. I also installed the Mercurial plugin and switched to that. Unfortunately, Trac doesn&#039;t currently support multiple repositories (see &lt;a href=&quot;http://trac.edgewall.org/ticket/2086&quot;&gt;#2086&lt;/a&gt;), so my catch-all Trac page, &lt;a href=&quot;http://trac.saddi.com/projects&quot;&gt;http://trac.saddi.com/projects&lt;/a&gt;, only tracks a single project. (And that happens to be yafic since it&#039;s had recent activity...) I don&#039;t really feel like switching to one Trac environment per project, so I guess I&#039;ll wait out that feature request. 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    General, </dc:subject>
    <dc:date>2007-10-17T18:09:28Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=62</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=62</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/61-guid.html">
    <title>Middleware, publisher alternatives</title>
    <link>http://www.saddi.com/software/news/archives/61-Middleware,-publisher-alternatives.html</link>
    <description>
    With the advent of flup 1.0 and the disappearance of the middleware modules (I don&#039;t think anyone really cares about Publisher &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;), I&#039;ve been getting a few queries here and there about alternatives.&lt;br /&gt;
&lt;br /&gt;
Rather than continue to answer people individually, here are some alternatives to flup&#039;s middleware and publisher modules. However, they represent alternatives that I&#039;ve personally chosen. (And considering how far removed I am nowadays from the world of Python web development, take my choices with a grain of salt.) Suggestions for other alternatives (alternative alternatives?!?) are welcome.&lt;br /&gt;
&lt;br /&gt;
For users of flup&#039;s SessionMiddleware, I recommend &lt;a href=&quot;http://beaker.groovie.org/&quot;&gt;Beaker&lt;/a&gt;. Switching over is a simple matter of changing the environ key from &#039;com.saddi.service.session&#039; to &#039;beaker.session&#039; and ensuring that session.save() is called before the WSGI application returns. (After you&#039;ve appropriately swapped out flup&#039;s SessionMiddleware with Beaker&#039;s in the WSGI stack, of course.)&lt;br /&gt;
&lt;br /&gt;
GzipMiddleware and ErrorMiddleware have analogues in &lt;a href=&quot;http://pythonpaste.org/&quot;&gt;Python Paste&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
flup&#039;s Publisher is probably most like &lt;a href=&quot;http://wsgiarea.pocoo.org/colubrid/&quot;&gt;Colubrid&lt;/a&gt;, though I haven&#039;t personally tried it. (Also remember that flup&#039;s Publisher was inspired by mod_python&#039;s &lt;a href=&quot;http://www.modpython.org/live/current/doc-html/hand-pub.html&quot;&gt;Publisher&lt;/a&gt;, which was apparently inspired by Zope&#039;s ZPublisher &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;).&lt;br /&gt;
&lt;br /&gt;
Anyway, I updated the old &lt;a href=&quot;http://hg.saddi.com/flup&quot;&gt;flup 0.5 branch&lt;/a&gt; and uploaded the source distribution to the &lt;a href=&quot;http://pypi.python.org/pypi/flup/0.5&quot;&gt;Cheese Shop&lt;/a&gt;. I really don&#039;t want to maintain two branches, so consider this 0.5 release final. 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    flup, </dc:subject>
    <dc:date>2007-09-26T00:06:12Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=61</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=61</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/60-guid.html">
    <title>yafic 1.3 beta 1</title>
    <link>http://www.saddi.com/software/news/archives/60-yafic-1.3-beta-1.html</link>
    <description>
    I&#039;ve been wanting to do this for a while now, especially after hearing that SHA-1 was broken. (Ok, I guess that&#039;s rather old news.) Anyhow, I added SHA-256 to yafic. Adding support for future hashes should be fairly trivial now as well.&lt;br /&gt;
&lt;br /&gt;
It can be found at &lt;a href=&quot;http://www.saddi.com/software/yafic/dist/&quot;&gt;http://www.saddi.com/software/yafic/dist/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
I&#039;ve done very basic testing, so use at your own risk. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; I plan to start using it regularly to test it a bit more.&lt;br /&gt;
&lt;br /&gt;
I plan to add another feature or two (like XML output) before making an official 1.3 release.&lt;br /&gt;
&lt;br /&gt;
And as usual, it may be found in my Mercurial repository: &lt;a href=&quot;http://hg.saddi.com/yafic-sha256&quot;&gt;http://hg.saddi.com/yafic-sha256&lt;/a&gt;&lt;br /&gt;
(I don&#039;t plan to merge it into the main yafic repository until it&#039;s undergone more testing.) 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-09-19T00:14:49Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=60</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=60</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/58-guid.html">
    <title>flup 1.0 released</title>
    <link>http://www.saddi.com/software/news/archives/58-flup-1.0-released.html</link>
    <description>
    I resolved a few more outstanding issues with flup and decided to make a release. I went ahead and called it 1.0. And as I &lt;a href=&quot;http://www.saddi.com/software/news/archives/45-QUERY_STRING-changes-to-servers,-API-changes-to-GzipMiddleware,-future-changes.html&quot;&gt;previously mentioned&lt;/a&gt;, I went ahead and removed the publisher and middleware modules.&lt;br /&gt;
&lt;br /&gt;
If you&#039;ve been following the Subversion repository for flup (which has been quiet due to my switching to Mercurial), there have only been 1 or 2 new fixes.&lt;br /&gt;
&lt;br /&gt;
I also uploaded the tarball and 2.5 egg to the &lt;a href=&quot;http://pypi.python.org/pypi/flup/1.0&quot;&gt;Cheese Shop&lt;/a&gt;. Further updates will also go to the Cheese Shop.&lt;br /&gt;
&lt;br /&gt;
And on the subject of further updates, consider flup to be in maintenance mode - there won&#039;t be any more new development. Bug fixes and bug reports are still welcome, of course. (Though this has been the way I&#039;ve run flup for quite a while now, so I&#039;m just making a formal announcement. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;)&lt;br /&gt;
&lt;br /&gt;
And as a bit of editorializing, did I ever mention how much I &lt;strong&gt;hate&lt;/strong&gt; FastCGI? &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; Around the time I first released flup, I had transitioned my apps from FastCGI to AJP, and I never missed FastCGI since. But much to my disappointment, the FastCGI module was the most popular... most likely due to ubiquitous &amp;amp; cheap shared hosting services (e.g. Dreamhost).&lt;br /&gt;
&lt;br /&gt;
Oh well, I don&#039;t even use flup myself anymore. I&#039;ve switched to ajp-wsgi... 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    flup, </dc:subject>
    <dc:date>2007-09-10T23:59:33Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=58</wfw:comment>
        <slash:comments>7</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=58</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/57-guid.html">
    <title>Mercurial repository</title>
    <link>http://www.saddi.com/software/news/archives/57-Mercurial-repository.html</link>
    <description>
    I&#039;m currently trying out &lt;a href=&quot;http://www.selenic.com/mercurial/wiki/&quot;&gt;Mercurial&lt;/a&gt;, a distributed SCM that&#039;s 99% pure Python. I was able to migrate some of my recent projects (including full history) over to it. My repository is &lt;a href=&quot;http://hg.saddi.com/&quot;&gt;http://hg.saddi.com/&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I haven&#039;t fully committed yet, but it&#039;s very tempting since it&#039;s far easier to install (it&#039;s literally a &quot;python setup.py install&quot;). Setting up the web interface was a breeze too (it&#039;s built on top of WSGI!)&lt;br /&gt;
&lt;br /&gt;
Oh well, I mention this now because I&#039;ve finally committed something to my Hg repository. In other words, my SVN and Hg repositories are now out of sync...&lt;br /&gt;
&lt;br /&gt;
Anyway, I know there&#039;s a Trac plugin for Hg which I will have to try out as well. Not sure if and when I&#039;ll fully commit. Only time will tell and I really haven&#039;t been working on any personal projects lately... 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    General, </dc:subject>
    <dc:date>2007-07-13T05:13:01Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=57</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=57</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/56-guid.html">
    <title>TranQL Connector for PostgreSQL</title>
    <link>http://www.saddi.com/software/news/archives/56-TranQL-Connector-for-PostgreSQL.html</link>
    <description>
    As far as Java development goes, for personal projects and for work, I find myself in that odd place between needing &lt;em&gt;only&lt;/em&gt; a servlet container (e.g. Tomcat) and needing a full JEE container. I&#039;m sure this situation is quite common. The one thing that I almost always end up needing beyond plain servlets is JTA. As I&#039;ve &lt;a href=&quot;http://www.saddi.com/software/news/archives/35-On-Containers....html&quot;&gt;mentioned&lt;/a&gt; in the past, I&#039;ve tried various solutions from plugging in JOTM, which I&#039;m not at all too happy with, to using stripped-down versions of full application servers.&lt;br /&gt;
&lt;br /&gt;
Well, the problem for me is still unresolved, but I did try out &lt;a href=&quot;http://jencks.org/&quot;&gt;Jencks&lt;/a&gt; over the weekend. It was fairly easy to set up, and it worked as expected. (Just have to remember to set the connection manager&#039;s transaction type to XA to actually get XA transactions!) And rather than using DataSourceMCF, one would probably want to use a real MCF for your database for XA functionality.&lt;br /&gt;
&lt;br /&gt;
Which brings me to the point of this post. In the past I&#039;ve blogged about problems with PostgreSQL/XA/TranQL (&lt;a href=&quot;http://www.saddi.com/software/news/archives/36-Adventures-in-JTA.html&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://www.saddi.com/software/news/archives/37-Continuing-adventures-in....html&quot;&gt;here&lt;/a&gt;). Although the problem was &lt;a href=&quot;http://archives.postgresql.org/pgsql-jdbc/2006-10/msg00043.php&quot;&gt;resolved&lt;/a&gt; in the driver long ago, I don&#039;t believe I ever published the actual PostgreSQL TranQL connector I made. (And believe me, I would rather fold it back into the original project... but I&#039;m having a hard time finding contact information... or a working mailing list... anything.)&lt;br /&gt;
&lt;br /&gt;
Anyway, the connectors: &lt;a href=&quot;http://maven.saddi.com/org/tranql/&quot;&gt;http://maven.saddi.com/org/tranql/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
I&#039;ve tested it with Jencks and Geronimo. (And by &quot;test&quot;, I mean I just verified that the PostgreSQL driver is indeed using 2PC.) The source can still be found in the same place: &lt;a href=&quot;http://www.saddi.com/software/tranql/&quot;&gt;http://www.saddi.com/software/tranql/&lt;/a&gt;. You&#039;ll probably need to use the latest 8.2 JDBC driver (which includes the above-mentioned fix).&lt;br /&gt;
&lt;br /&gt;
Hopefully anyone searching for TranQL/PostgreSQL will eventually stumble upon it. I mean, I can&#039;t be the only person interested in using XA transactions with PostgreSQL in Geronimo, right??? &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    Java, </dc:subject>
    <dc:date>2007-06-11T16:39:28Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=56</wfw:comment>
        <slash:comments>5</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=56</wfw:commentRss>
    
    
</item>
<item rdf:about="http://www.saddi.com/software/news/archives/55-guid.html">
    <title>ajp-wsgi 1.0 released</title>
    <link>http://www.saddi.com/software/news/archives/55-ajp-wsgi-1.0-released.html</link>
    <description>
    &lt;a href=&quot;/software/ajp-wsgi/&quot;&gt;ajp-wsgi&lt;/a&gt; 1.0 has been released. It may be downloaded &lt;a href=&quot;/software/ajp-wsgi/dist/&quot;&gt;here&lt;/a&gt; (&lt;a href=&quot;/software/ajp-wsgi/dist/ChangeLog&quot;&gt;ChangeLog&lt;/a&gt;). It&#039;s been sitting around for a few months now, in heavy use at my server for both &quot;production&quot; and development WSGI apps. I think it&#039;s pretty safe to say it&#039;s at least on par with flup&#039;s ajp WSGIServer now. &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
The only lingering issue is a core dump with Trac and only Trac, and only when it is killed or SIGHUP&#039;d. Unfortunately, with so many variables (Trac imports quite a few C extension modules), I haven&#039;t been able to isolate problem. (And maybe it&#039;s just my environment... sadly, I don&#039;t have the resources to try elsewhere.)&lt;br /&gt;
&lt;br /&gt;
Anyway, 1.0... so what now? &lt;img src=&quot;http://www.saddi.com/software/news/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Allan Saddi's projects blog</dc:publisher>
    <dc:creator>nospam@example.com (Allan Saddi)</dc:creator>
    <dc:subject>
    Python, </dc:subject>
    <dc:date>2007-04-06T18:07:24Z</dc:date>
    <wfw:comment>http://www.saddi.com/software/news/wfwcomment.php?cid=55</wfw:comment>
        <slash:comments>2</slash:comments>
        <wfw:commentRss>http://www.saddi.com/software/news/rss.php?version=1.0&amp;type=comments&amp;cid=55</wfw:commentRss>
    
    
</item>

</rdf:RDF>
