<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" 
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

  <channel>
    <title>yole&apos;s devblog</title>
    <link>http://home.yole.ru/weblog/</link>
    <description>Syndirella and other stuff by Dmitry Jemerov</description>
    <dc:language>en-us</dc:language>
    <dc:creator>yole@yole.ru (Dmitry Jemerov)</dc:creator>
    <dc:rights>Copyright 2005</dc:rights>
    <dc:date>2004-01-31T22:43:56+03:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=2.661" />
    <admin:errorReportsTo rdf:resource="mailto:yole@yole.ru"/>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>


    <item>
      <title>Moving out</title>
      <link>http://home.yole.ru/weblog/archives/000097.html</link>
      <description><![CDATA[<p>I have started a new work-related blog at <a href="http://blogs.jetbrains.com/yole">blogs.jetbrains.com</a>. As for this blog, most likely it won't be updated any time soon. I'm also planning to redirect the RSS feed of this blog to my new work blog.</p>]]></description>
      <guid isPermaLink="false">97@http://home.yole.ru/weblog/</guid>
      <dc:subject></dc:subject>
      <dc:date>2004-01-31T22:43:56+03:00</dc:date>
       
    </item>

    <item>
      <title>Syndirella update</title>
      <link>http://home.yole.ru/weblog/archives/000096.html</link>
      <description><![CDATA[<p>(This is a re-post of a message to the Syndirella yahoo group, stating my point of view on the future of Syndirella.)</p>

<p>As a matter of fact, since June 16th, I work for <a href="http://www.intellij.com">IntelliJ Labs</a>. The work I'm doing there (basically, UI development in C#) is very much similar to the work I was doing on Syndirella. Moreover, the product we're working on will include RSS reading functionality, and most likely I'll be the one responsible for designing and implementing it.</p>

<p>Thus, it is almost certain that I'll never even look at the Syndirella code anymore. One reason for that is IP/licensing - we want to be sure that our product is not a derivative work of Syndirella, and so I want to "forget" the Syndirella code as much as possible. And even if it were possible to settle the licensing issues (I could re-license my own Syndirella code to my employer under the conditions that I'd like to, and we could come to some agreement with other contributors), it is simply not interesting for me to do something at work and to do very similar things at home on my own time.</p>

<p>However, Syndirella is a GPLed project, and I want it to live. Thus, I'd be happy if the official development branch was moved to SourceForge. As soon as the new Syndirella homepage is created (and the <a href="http://www.syndirella.net">www.syndirella.net</a> domain is redirected to it), I'll give a pointer to that from the page at yole.ru and from my weblog. My main requirement for future Syndirella development is that yole@yole.ru should NOT be listed as the main contact address for it, and that exception reports should NOT be sent to that e-mail.</p>

<p>Another problem is that Syndirella uses the UtilityLibrary control library, which is not open-source. I do have the source code to it, but I don't have the permission to redistribute it. This library has been a source of many problems to me, so it would be best to create an open-source replacement for that.</p>]]></description>
      <guid isPermaLink="false">96@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-06-23T23:17:06+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=96 
        </comments> 
       
    </item>

    <item>
      <title>20030509</title>
      <link>http://home.yole.ru/weblog/archives/000095.html</link>
      <description><![CDATA[<ul><li>Fixed the "'-1' is not a valid value for 'index'" exception problem.</li>
<li>Feeds with "file://" URLs are now supported correctly.</li>
</ul>

<p>Download <a href="http://home.yole.ru/files/Syndirella_20030509.zip">binaries</a>, <a href="http://home.yole.ru/files/Syndirella_20030509-src.zip">sources</a> or <a href="http://home.yole.ru/files/Syndirella-20030509.exe">installer</a>.</p>]]></description>
      <guid isPermaLink="false">95@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-05-09T01:01:37+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=95 
        </comments> 
       
    </item>

    <item>
      <title>20030413</title>
      <link>http://home.yole.ru/weblog/archives/000094.html</link>
      <description><![CDATA[<ul><li>The code to detect the web feed encoding from the HTTP headers was totally bogus. Now Syndirella looks at the correct HTTP header field, so this should remove the need to have a manual encoding selector.</li>
<li>The direction of the sort arrow in the "Date" column is now correct.</li>
<li>Exceptions when writing HTML to the IE control are now handled, and should not cause Syndirella to crash.</li>
<li>Reduced flicker when switching between feeds.</li>
<li>Items in Web feeds were not properly sorted by date.</li>
</ul>

<p>Download <a href="http://home.yole.ru/files/Syndirella_20030413.zip">binaries</a>,  <a href="http://home.yole.ru/files/Syndirella_20030413-src.zip">sources</a> or <a href="http://home.yole.ru/files/Syndirella-20030413.exe">installer</a>.</p>]]></description>
      <guid isPermaLink="false">94@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-04-13T01:05:37+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=94 
        </comments> 
       
    </item>

    <item>
      <title>20030409</title>
      <link>http://home.yole.ru/weblog/archives/000093.html</link>
      <description><![CDATA[<p>Whatever the future of Syndirella might hold, one thing is certain: I need to bring 0.91 to the release condition. Probably more than a half of the Syndirella e-mails are reports from users which have downloaded the original 0.9b, and the problems they're having have long been fixed. Thus, releasing 0.91, even in its current, not yet perfect condition, would be one of the best ways to reduce my e-mail traffic.</p>

<p>The changes so far are not too much for almost a month's wait, but these should fix the worst problems with the previous build. The changes are:<ul><li>Autosaving no longer resets the position of the current item to the top of view.</li><br />
<li>For items that have the content:encoded part, the content:encoded, and not the description, is used for duplicate item detection.</li><br />
<li>Fixed problems with enabling the Back and Forward buttons.</li><br />
</ul></p>

<p>Download <a href="http://www.yole.ru/files/Syndirella_20030409.zip">binaries</a>, <a href="http://www.yole.ru/files/Syndirella_20030409-src.zip">sources</a> or <a href="http://www.yole.ru/files/Syndirella-20030409.exe">installer</a>.</p>]]></description>
      <guid isPermaLink="false">93@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-04-09T00:54:55+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=93 
        </comments> 
       
    </item>

    <item>
      <title>More on the future of Syndirella</title>
      <link>http://home.yole.ru/weblog/archives/000092.html</link>
      <description><![CDATA[<p>Some more comments on the latest post. Some of that was included in the "longer version" that was lost in the bit bucket, so now I'm bringing some of it back.</p>

<p>First of all, probably I shouldn't have focused that much on SharpReader - it's not like SharpReader is the best news aggregator that could ever be created, and I do think that the Syndirella UI is considerably more polished than that of SharpReader. But the point is, there are <b>too</b> many .NET three-pane news aggregators. Actually, I cannot name another case in the entire history of computing (as I know it) when so many so similar projects have appeared in such a short timespan. And I'd really like to see more collaboration between the authors of different news aggregators - since they're all so similar, it shouldn't be hard to factor out the differences, to reach a common understanding on how an ideal .NET three-pane news aggregator should look like, and to work together towards such a goal. Previously, I was certain that I knew the right way to create the perfect news aggregator UI, and I didn't really consider offering collaboration to other projects - I didn't want either to impose my vision on them or to work on implementing a different vision. But now, since I didn't succeed in implementing my vision by myself, I'm much more open to the idea of collaboration.</p>

<p>Another reason of frustration with Syndirella development is that Syndirella essentially sits on top of three different platforms - .NET, the raw Win32 API (used mainly by the UtilityLibrary), and the Internet Explorer ActiveX control. And the worst sources of bugs have been the boundaries of these platforms. Weird Internet Explorer exceptions, problems with the back/forward navigation, strange exceptions during Syndirella termination related to the IE control, GDI+ exceptions, Win32 resource leaks - all these problems are generally very hard to reproduce, not at all fun to fix, and many of them still remain in the current code. So now I really miss the feeling of control given by raw C++/Win32 programming (and with no stupid Visual Basic 6, which I have to use quite a lot at work, and which I so much hate). So, the idea of working on one of my pure Win32 projects now feels much more exciting.</p>

<p>And whatever interests me currently, I do hope that Syndirella will never "go away" - it's GPLed, and no one is going to take away the source, so there is nothing prohibiting its further evolution. And if you need CVS write access, just ask.</p>]]></description>
      <guid isPermaLink="false">92@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-04-08T01:34:36+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=92 
        </comments> 
       
    </item>

    <item>
      <title>YA3PDNA</title>
      <link>http://home.yole.ru/weblog/archives/000091.html</link>
      <description><![CDATA[<p>There was a long version of this post, but... never ever write anything long in a TEXTAREA. 'Nuff said.</p>

<p>The point was that I'm really, really tempted to give up Syndirella development. And <a href="http://www.hutteman.com/weblog/2003/04/06.html#000056">this</a> is one of the reasons why. SharpReader today has just about everything that I wanted to implement in Syndirella in the next 2-3 months. So, instead of spending time creating Yet Another implementation, I'd rather continue the development of <a href="http://www.yole.ru/projects/structorian">Structorian</a> or a C++/SDL client for <a href="http://www.yole.ru/projects/dungeonlab/">DungeonLab</a>.</p>

<p>If anyone wants to take up Syndirella maintenance, you're welcome - e-mail me, and we'll discuss that. And if I don't find a new maintainer, I'll probably push to create the 0.91 release, and leave it at that. Maybe some time later I'll regain interest to resume working on Syndirella. Or maybe not. But for now, the fun part of the project is over, and what remains is boring hard work.</p>

<p>Thanks to everyone who e-mailed me and mentioned Syndirella in their weblogs, and special thanks to <a href="http://roentgen-kelheim.de/">Johannes Technau</a> and Keith Martin for the books. I've finished "Pattern Recognition", and really enjoyed it, and the "Spectre of the Black Rose" still sits in my reading list, but I've received it with no problems.</p>

<p>I'm still going to report my hacking and maybe even other activities on this weblog, so don't hurry to unsubscribe from the feed. :-) And you're always welcome to contact me by ICQ - at least, I don't leave ICQ messages unanswered, as I do with e-mail.</p>

<p>CY, yole. :-)</p>]]></description>
      <guid isPermaLink="false">91@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-04-07T22:22:22+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=91 
        </comments> 
       
    </item>

    <item>
      <title>20030311</title>
      <link>http://home.yole.ru/weblog/archives/000090.html</link>
      <description><![CDATA[<ul><li>Syndirella now saves its state when it has been inactive for a minute. This ensures that the feed list and state is not lost if the machine crashes or if Syndirella is otherwise incorrectly terminated. (<a href="http://home.yole.ru/roundup/roundup.cgi/bugs/issue19">Issue 19</a>).</li>
<li>Syndirella now strips JavaScript from RSS description elements. (<a href="http://home.yole.ru/roundup/roundup.cgi/bugs/issue95">Issue 95</a>).</li>
<li>If, for some reason, the top or left pane of the Syndirella window disappears, restarting Syndirella should fix the problem. Any comments on why the pane disappears are welcome.</li>
<li>Corrected some more cases where Graphics objects were not correctly disposed, in hope to fix the resource leaks under Windows 98/Me.</li>
</ul>

<p>Download <a href="http://www.yole.ru/files/Syndirella_20030311.zip">binaries</a>, <a href="http://www.yole.ru/files/Syndirella_20030311-src.zip">sources</a> or <a href="http://www.yole.ru/files/Syndirella-20030311.exe">installer</a>.</p>]]></description>
      <guid isPermaLink="false">90@http://home.yole.ru/weblog/</guid>
      <dc:subject></dc:subject>
      <dc:date>2003-03-11T01:22:31+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=90 
        </comments> 
       
    </item>

    <item>
      <title>Policy for answering bug reports</title>
      <link>http://home.yole.ru/weblog/archives/000089.html</link>
      <description><![CDATA[<p>Looks like my initial policy for answering bugreports - "as soon as a new build is released, go through the entire archive of unanswered e-mails, find the ones that reported bugs fixed in the new build, answer and tell them where to download the new build" - has failed miserably, which should be quite expected. The result of this is a pile of more than 200 unanswered Syndirella-related messages, some of them dating back to January, received immediately after 0.9 was released.</p>

<p>So now I'll finally try to do the right thing: add _all_ bug reports (including the ones I can't confirm or reproduce) to the tracker, reply immediately to bug reports and specify the tracker URLs where the bugs have been recorded, and specify the IDs of fixed bugs in the new release announcements. It may be a little bit less user-friendly, but while an answer "recorded to the tracker, ID nnn" is worse than an answer "fixed in build 2003mmdd", it's still better than no answer at all.</p>

<p>Trivial matters, right - but I'm learning the hard way. :-)</p>]]></description>
      <guid isPermaLink="false">89@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-03-09T00:30:31+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=89 
        </comments> 
       
    </item>

    <item>
      <title>20030305</title>
      <link>http://home.yole.ru/weblog/archives/000088.html</link>
      <description><![CDATA[<ul><li>Syndirella now does RSS autodiscovery only if the address specified in the "Add RSS feed" dialog points to a HTML page. If you specify the address of a broken RSS feed, a non-RSS XML file or some totally unrelated file (for example, a .GIF image), you will now get an error message immediately.</li>
<li>Syndirella now animates its tray icon for 30 seconds after a feed update that brought new items has been completed. After that, the icon turns solid red, and remains red while you still have unreasd items. When there are no unread items, the icon is colored blue.</li>
<li>The primitive HTML parser used for RSS autodiscovery now also understands attribute values surrounded by single quotes, not only double quotes.</li>
<li>Fixed several errors reported by Syndirella users.</li>
</ul>

<p>Download <a href="http://www.yole.ru/files/Syndirella_20030305.zip">binaries</a>, <a href="http://www.yole.ru/files/Syndirella_20030305-src.zip">sources</a> or <a href="http://www.yole.ru/files/Syndirella-20030305.exe">installer</a>.</p>]]></description>
      <guid isPermaLink="false">88@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-03-05T01:00:11+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=88 
        </comments> 
       
    </item>

    <item>
      <title>TFD in games</title>
      <link>http://home.yole.ru/weblog/archives/000086.html</link>
      <description><![CDATA[<p>Dan Dunham <a href="http://coding.strangesearch.net/archives/000033.html">writes</a> about using the test-first design in game development:<br />
<cite>After about two months of looking at bugs in Camelot, and looking over our master bug lists, I realized that ... well, almost none of them could have been caught by unit tests.</cite></p>

<p>So I'd like to tell you about a case of using TFD in game development in which I have participated a little bit myself. When we were starting a St.Petersburg XP Users Group, we were contacted by some guys from <a href="http://www.madia.ru">MADia</a>, and they told us that they were using XP for game development. Of course, I was really interested to hear about that, so I came to visit them and to see myself what they were doing and how.</p>

<p>By that time, they had just released their first original game, <a href="http://echelon.bethsoft.com/">Echelon</a>, and started the prototyping work for a future add-on to the game. One of the things they wanted to rewrite for the add-on was their menu system. The old code was quite ugly and limited, and they wanted to replace it with something that could be easily modified and extended with a standard scripting language. And they wanted to implement that in test-first mode.</p>

<p>I was really interested in getting some experience with XP in game development, so I offered my help with that project, and my Python expertise (which was quite limited, but still better than nothing). We paired with the lead developer of "Echelon" and together created an initial implementation of embedding Python into the game. Unfortunately, timing issues didn't let me continue working together with them, and I have basically lost the contact with them since that time.</p>

<p>A few months ago, the Echelon add-on <a href="http://www.buka.com/game/Game_8.htm">Wind Warriors</a> was released, and I bought it to see if anything remained of all the Python scripting idea. I was pleased to see that they did bring the Python-customizable UI to completion, and of course, all the Python source code was included with the game. And quite curiously, wherever I looked to read some code, I saw firstly unit tests. :-) Looks like the unit tests comprised about two thirds of the Python code.</p>

<p>It would be interesting to know if they used unit tests in their game logic code, written in C++, and whether they felt much gain from the tests. But still - here is an example of using TFD in games which you can examine yourself.</p>]]></description>
      <guid isPermaLink="false">86@http://home.yole.ru/weblog/</guid>
      <dc:subject>Games</dc:subject>
      <dc:date>2003-03-05T00:48:07+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=86 
        </comments> 
       
    </item>

    <item>
      <title>Not-quite-async HTTP</title>
      <link>http://home.yole.ru/weblog/archives/000085.html</link>
      <description><![CDATA[<p>From the first day of Syndirella development (when it was still called RSSistor), I decided that I would use the .NET asynchronous functions instead of explicit threading. I have quite a lot of experience writing multithreaded programs in the traditional way, using the Win32 API and pthreads, so the async functions looked both more interesting and more of a "right way" to do things. It took me a while to realize that the async functions don't make the usual threading problems magically go away - I still need to do proper locking, and I need to do UI stuff in the UI thread and use BeginInvoke() to pass the control there. The "not enough worker threads" problem was more of a surprise to me, but it was still quite easy to understand and to fix - putting a reasonable limit to the number of feeds updated at the same time is a good thing, in any case.</p>

<p>However, there is still one more problem that is not so easy to work around. If you start Syndirella and click on "Update all feeds", you will probably notice that the UI will get "locked" several times, and not respond to your actions for a couple of seconds. Not a proper behavior for asynchronous updates, right?</p>

<p>Actually, what Syndirella is actually doing when it's locked is resolving DNS host names. Although HttpWebRequest.BeginGetResponse() will download the response asynchronously, the DNS resolution is still done synchronously, and the function will not return until the DNS query is complete.</p>

<p>As it can be seen from the Rotor sources, the class responsible for DNS resolutions is called ServicePoint, and the query is done in its method called GetNextIPAddressInfo(). And while it is simple to do DNS queries asynchronously (Dns.BeginResolve() is readily available), it is not so easy to pass the DNS information to HttpWebRequest. So far, I have thought of only one solution not resorting to manual threading: I can parse the request URLs and replace the host name with a dotted-decimal IP address after the DNS resolution is complete (for example, a request to "home.yole.ru/weblog/index.xml" would be rewritten as "80.70.224.68/weblog/index.xml").</p>

<p>I don't want to implement this right now, because this will involve some risky changes. I'll need to implement a cache so that each host is not resolved on every request, and it would be best to have a limited time to live for each name resolution result (like 6 or 12 hours). But unless a better solution is found, that's what I will do in 0.92.</p>

<p>Hints on better ideas to solve this problem are welcome. :-)</p>]]></description>
      <guid isPermaLink="false">85@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-03-04T22:31:30+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=85 
        </comments> 
       
    </item>

    <item>
      <title>Outages</title>
      <link>http://home.yole.ru/weblog/archives/000084.html</link>
      <description><![CDATA[<p>First, I'm really sorry for the network outage which caused home.yole.ru to become unaccessible and the mail to yole@yole.ru to bounce for almost two full days. When I saw the problems, I immediately blamed the ISP and waited for them to fix the problem, and didn't really try to resolve anything myself - but of course, my network is configured correctly, there can't be any problems at my end! But it looks like that I could have fixed the problem simply by rebooting my PC.</p>

<p>So if you have written anything to me in the past days and got a bounce, please re-send your mail.</p>

<p>I'm actually searching for a paid hosting provider now, so I hope that all the outage problems will not repeat anymore. The main issue is CVS hosting - it always needs to be discussed separately, and not everyone can provide such a service. And I don't want to use the free hosting at SourceForge and similar sites. There are several reasons for that - SourceForge's occasional downtime, desire to control the repository myself, and the need to host some other projects that cannot really be called "open-source software", and thus shouldn't reside on SF.</p>

<p>Besides the network problems, the past week has been pretty busy for me. My birthday, its celebration with my friends from real life and from LiveJournal, my new <a href="http://www.site-m.com/sonus/spb.htm" title="Fender Squier Precision Bass">bass guitar</a> (it's actually sunburst colored, not black), <a href="http://www.elementalgames.com/eng/r_all.php">Space Rangers</a> (an excellent new game by a Russian company - a mix of Elite, Master of Orion and Star Control 2), a brief cold... well, you get the idea. I'll be getting back on track now.</p>]]></description>
      <guid isPermaLink="false">84@http://home.yole.ru/weblog/</guid>
      <dc:subject></dc:subject>
      <dc:date>2003-03-04T00:14:15+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=84 
        </comments> 
       
    </item>

    <item>
      <title>Syndirella testing tips</title>
      <link>http://home.yole.ru/weblog/archives/000083.html</link>
      <description><![CDATA[<p>Syndirella is getting ever closer to the release of the version 0.91. The release of 0.9 was plagued with quite a lot of problems (I even had to do two successive updates to fix the worst of them). I do not want the release of 0.91 to look the same. And I need your help.</p>

<p>First of all, if you ever reported a problem to me, please verify if it is fixed in the recent builds. If it is not, you should report it again. I will go through all the unanswered bug reports and try to contact everyone, but you will make my work easier if you confirm your reports after testing the latest build.</p>

<p>If you don't have any obvious problems, here are some tips for finding new ones. Generally, the main things to watch out for are drawing problems - specifically, drawing the list views and the toolbar. You should also check for resource exhaustion - load a lot of feeds into Syndirella, do some "heavy reading" (holding down the spacebar for a couple of seconds is a nice approximation), do some stuff with the toolbar and so on, and watch for exceptions signifying that Syndirella has run out of resources. There were some reports of resource leaks, and I've made some changes that could probably fix that, but I'm not too sure.</p>

<p>Another thing to be watched is the feed updates. Do all the feeds update correctly? Do you see the proper dates for feeds which have the item dates specified? Do any of the feeds get stuck in the "updating" state?</p>

<p>Please report problems by e-mail, not by ICQ and not by comments here. E-mail is much easier for me to keep track of.</p>

<p>And thanks in advance for your help!</p>]]></description>
      <guid isPermaLink="false">83@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-02-25T01:47:25+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=83 
        </comments> 
       
    </item>

    <item>
      <title>20030224</title>
      <link>http://home.yole.ru/weblog/archives/000082.html</link>
      <description><![CDATA[<ul><li>New date parser from Jeremy Dunck. The parser passes all the date tests in the RSS Validator testsuite with no problems. Thanks for the excellent job Jeremy!</li>
<li>Added support for logging. If you have ever had any problems with feed updates (for example, feeds stuck updating, or items marked as updated for no apparent reason), please run Syndirella with the "-log" command line parameter, and e-mail me the file "syndirella.log" in the Syndirella installation directory if you encounter any such problems.</li>
<li>Fixed a problem that caused Web feeds to get stuck in the "Updating" state if any HTTP problem occurred.</li>
<li>Better policy for handling feed update errors. If a feed update fails, Syndirella does two more retries with 1 minute intervals and then switches to retries once an hour.</li>
<li>Added the notion of "fatal update errors" (now reported for HTTP 403, 404 and 410). Fatal errors are shown as message boxes, and a feed with a fatal error is not updated until Syndirella is restarted.</li>
<li>Increased the size of the HTTP buffer from 1K to 8K. This should speed up various HTTP downloads in different places of Syndirella.</li>
</ul>

<p>Download <a href="http://www.yole.ru/files/Syndirella_20030224.zip">binaries</a>, <a href="http://www.yole.ru/files/Syndirella_20030224-src.zip">sources</a> or <a href="http://www.yole.ru/files/Syndirella-20030224.exe">installer</a>.</p>]]></description>
      <guid isPermaLink="false">82@http://home.yole.ru/weblog/</guid>
      <dc:subject>Syndirella</dc:subject>
      <dc:date>2003-02-24T00:45:55+03:00</dc:date>
       
        <comments> 
          http://home.yole.ru/blog/mt-comments.cgi?entry_id=82 
        </comments> 
       
    </item>


  </channel>
</rss>
