Association Subscribers Manager and Open source stuffs - Tag - slackget10 Association Subscribers Manager & slack-get new official website and Infinity Perl blog. Here we discuss about Qt (Qt3 and Qt4), C++, Perl (lot of Perl !), Slackware Linux, KDE and more generally Open Source stuffs. 2011-11-12T01:54:02+01:00 Arnaud DUPUIS urn:md5:10245 Dotclear slack-get perl module change its name ! urn:md5:08e8ef2b533e7dcf2731bb864afe7d36 2007-12-03T07:32:00+01:00 Arnaud Dupuis Perl modules developmentModulePerlslack-getslackget10Slackware::Slackget Hi,<br /> Like I <a href="http://sourceforge.net/mailarchive/forum.php?thread_name=200711302206.44149.a.dupuis%40infinityperl.org&amp;forum_name=slack-get-10-devel"> announced on the developers' mailing list</a>, the slackget10 was about to die. It's now done. The PAUSE (Perl Authors Upload SErver) admins sent me an email confirming the creation of the Slackware::Slackget registered namespace on <a href="https://pause.perl.org">PAUSE</a>/<a href="http://www.cpan.org">CPAN.</a><br /> I will modify all the library to fit the new namespace and release the changes as soon as possible.<br /> One more thing : I created a new branch on the <a href="http://slack-get-10.svn.sourceforge.net/viewvc/slack-get-10/">SVN</a> for the GUI tests <img src="/themes/default/smilies/wink.png" alt=";-)" class="smiley" /><br /> <br /> Cya,<br /> <br /> Arnaud Dupuis<br /> http://www.infinityperl.org/post/2007/12/03/slack-get-perl-module-change-its-name#comment-form http://www.infinityperl.org/feed/atom/comments/181361 New Network backend mechanism urn:md5:0f5fad7924e0bfc2988e8cf6b7ae6304 2007-11-27T21:32:00+01:00 Arnaud Dupuis slack-get developmentPerlslack-getslackget10 Today I implemented the new slackget10::Network mechanism I wanted to. What is it you ask ?<br /> Clearly something which will help everything to be super-easy to improve. As you may know (or not) the slackget10::Network Perl Module has been completely redesigned and will be largely recoded.<br /> The changes are quite important and the API is completely new. It's now a front end module (like slackget10::Network::Connection is) and it aim at providing a unified interface for all kind of &quot;protocol&quot; implementation.<br /> The idea is to answer the question : &quot;what are you doing with an incoming network packet ?&quot;. The answer is simple : you decode it, you interpret it, you build the answer and you encode the answer before sending it. Hi,<br /> Today I implemented the new slackget10::Network mechanism I wanted to. What is it you ask ?<br /> Clearly something which will help everything to be super-easy to improve. As you may know (or not) the slackget10::Network Perl Module has been completely redesigned and will be largely recoded.<br /> The changes are quite important and the API is completely new. It's now a front end module (like slackget10::Network::Connection is) and it aim at providing a unified interface for all kind of &quot;protocol&quot; implementation.<br /> The idea is to answer the question : &quot;what are you doing with an incoming network packet ?&quot;. The answer is simple : you decode it, you interpret it, you build the answer and you encode the answer before sending it.<br /> Very well ! the new API behave exactly like that and you can test it with the last SVN revision of slack-get trunk (83) and the following code :<br /> <pre> <span style="font-weight: bold; color: rgb(0, 0, 0);">#!/usr/bin/perl</span><br /> <span style="font-weight: bold; color: rgb(0, 0, 0);">use</span><span style="font-weight: bold; color: rgb(0, 0, 0);">strict</span><span style="color: rgb(0, 0, 0);">;</span><br /> <span style="font-weight: bold; color: rgb(0, 0, 0);">use</span><span style="font-weight: bold; color: rgb(0, 0, 0);">warnings</span><span style="color: rgb(0, 0, 0);">;</span><br /> <span style="font-weight: bold; color: rgb(0, 0, 0);">use</span><span style="color: rgb(0, 0, 128);">slackget10::Network</span><span style="color: rgb(0, 0, 0);">;</span><br /> <span style="font-weight: bold; color: rgb(0, 0, 0);">my</span><span style="color: rgb(128, 0, 0);">$net</span><span style="color: rgb(0, 0, 0);"> = new </span><span style="color: rgb(0, 0, 128);">slackget10::Network</span><span style="color: rgb(0, 0, 0);"> ;</span><br /> <span style="font-weight: bold; color: rgb(0, 0, 0);">my</span><span style="color: rgb(128, 0, 0);">$message</span><span style="color: rgb(0, 0, 0);"> = </span><span style="color: rgb(128, 0, 0);">$net</span><span style="color: rgb(0, 0, 0);">-&gt;</span><span style="color: rgb(128, 0, 0);">decode</span><span style="color: rgb(0, 0, 0);">(</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(255, 108, 108);">&lt;?xml version=&quot;1.0&quot; ?&gt;</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(0, 0, 0);">.</span><br /> <span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(255, 108, 108);">&lt;SlackGetProtocol version=&quot;1.0&quot;&gt;</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(0, 0, 0);">.</span><br /> <span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(255, 108, 108);"> &lt;Enveloppe&gt;</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(0, 0, 0);">.</span><br /> <span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(255, 108, 108);"> &lt;Action id=&quot;123456&quot;&gt;get_connection_id&lt;/Action&gt;</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(0, 0, 0);">.</span><br /> <span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(255, 108, 108);"> &lt;/Enveloppe&gt;</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(0, 0, 0);">.</span><br /> <span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(255, 108, 108);">&lt;/SlackGetProtocol&gt;</span><span style="font-weight: bold; color: rgb(0, 128, 0);">'</span><span style="color: rgb(0, 0, 0);">);</span><br /> <span style="color: rgb(0, 0, 128);">print</span><span style="color: rgb(128, 0, 0);">$net</span><span style="color: rgb(0, 0, 0);">-&gt;</span><span style="color: rgb(128, 0, 0);">encode</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(128, 0, 0);">$message</span><span style="color: rgb(0, 0, 0);">), </span><span style="font-weight: bold; color: rgb(0, 128, 0);">&quot;</span><span style="color: rgb(255, 0, 255);">\n</span><span style="font-weight: bold; color: rgb(0, 128, 0);">&quot;</span><span style="color: rgb(0, 0, 0);">;</span> </pre> I think it's quite a natural of of doing things. Of course, the sg10::Network class provide the interpret() method !<br /> And to actually do the encoding and decoding part it rely on slackget10::Network::Backend::* class.<br /> I already coded the slackget10::Network::Backend::XML backend and do not plan on coding other backends until I have decided how to implements secure connections.<br /> I will work on tutorials/howto which will describes how to code network backends and add the support for new protocol for the slackget10::Network::Connection class.<br /> <br /> See ya !<br /> <br /> Arnaud Dupuis<br /> http://www.infinityperl.org/post/2007/11/27/New-Network-backend-mechanism#comment-form http://www.infinityperl.org/feed/atom/comments/179673 New slackget10 Perl Module release - version 0.11 urn:md5:71253ac783d72b3fe4f2afbc24937a97 2007-11-11T21:21:00+01:00 Arnaud Dupuis Perl modules developmentModulePerlslack-getslackget10 <p>Hi,</p> Well.. I changed so much slackget10::Network::Connection* modules that I made a release of the whole module on CPAN !<br /> This release features :<br /> <ul> <li><strong>Dynamic driver loading</strong>. As explained in another post I made the driver loading code completly dynamic. From now on, you just have a slackget10::Network::Connection::&lt;PROTOCOL&gt;.pm module to add support for &lt;protocol&gt;:// protocol to slackget10::Network::Connection.pm.</li> <li><strong>New slackget10::Network::Connection API</strong>. Loads of things have changed in the API of this class. First it's now event driven and it means you have to pass a InlineStates =&gt; {} parameter to the constructor. Then the old construction behavior (with only one parameter) is now deprecated and unsupported. Please have a look at the <a hreflang="en" href="http://search.cpan.org/perldoc?slackget10::Network::Connection">documentation</a> for more information about this.</li> <li><strong>New slackget10::Network::Connection::*.pm API</strong>. It's now way easier to create a protocol driver ! You just have to create a module with the 3 followings methods defined inside : __test_server(), __get_file(), __fetch_file(). They'll be called by slackget10::Network::Connection.pm wich will take care of everything (like event throwing).</li> </ul> This class is now fully usable out of the box in other programs than just slack-get, and that was one of the goal of the slackget10 module !<br /> I'll made a HOWTO on the <a href="http://slack-get-10.wiki.sourceforge.net/">wiki</a> to explain how to create a driver.<br /> <br /> Good day<br /> <br /> Arnaud Dupuis<br /> http://www.infinityperl.org/post/2007/11/11/New-slackget10-Perl-Module-release-version-011#comment-form http://www.infinityperl.org/feed/atom/comments/174231 Week end planning urn:md5:8843629657f786bdcbfbfcdcc055e992 2007-11-10T15:46:00+01:00 Arnaud Dupuis slack-get developmentPerlslack-getslackget10 <p>Hi ,</p> <p>I'm working a lot on slack-get this week end ! Today's morning was concentrated on slackget10::Network::Connection modifications. I made quite a lot of them. I made two major changes in the module architecture :</p> <ol> <li>I made the protocol driver's loading completly dynamic (no more static, hardcoded hash table to track authorized protocols)</li> <li>I changed all drivers (slackget10::Network::Connection::*) and made them independents from the slackget10::Config. The &quot;config&quot; parameter is not required anymore. In place of this option you have to give the &quot;download_directory&quot;.</li> </ol> The other thing I planned for the week end is to polish my skills with Qt4. I'll try to make the configuration widget for the GUI this week end... even if I can't promise anything.<br /> <br /> I also updates the <a href="http://slack-get-10.wiki.sourceforge.net/">Wiki</a> by creating some API documentation pages.<br /> <br /> Let's keep the pace !<br /> <br /> Arnaud Dupuis<br /> http://www.infinityperl.org/post/2007/11/10/Week-end-planning#comment-form http://www.infinityperl.org/feed/atom/comments/173910 new release of the slack-get Perl Module - slackget10-0.10 urn:md5:8eeed0fa1cddab6169448146c8cc2a2f 2007-10-24T06:50:00+02:00 Arnaud Dupuis slack-get ModulePerlslack-getslackget10Slackware <p>Hi all !</p> <br /> After doubt and interrogation, even after I though to dismiss the slack-et project it couldn't be helped... I enjoy developing this tool !<br /> So be it. Here is the latest release of the slack-get Perl Module. Tons of thing are new since there was a not-released version...<br /> This release main features are :<br /> <ul> <li>loads of bugfixes (starting with the test suite)</li> <li>removed unused modules</li> <li>removed deprecated modules</li> </ul> Well a lot of things !<br /> <br /> I'm now working on the slack-get communication protocol. This protocol is full XML based and have to be well designed to support all situation of usage.<br /> It also have to be bulletproof and highly error resistant.<br /> <br /> By the way the slack-get devel mailing list have open, please find more information on this at <a hreflang="en" href="http://sourceforge.net/mail/?group_id=162636">Sourceforge</a> , you can also find more informations about <a hreflang="en" href="http://sourceforge.net/svn/?group_id=162636">slack-get SVN</a> on Sourceforge.<br /> <br /> You can find all documentation and source of the new version of slackget10 on <a hreflang="en" href="http://search.cpan.org/%7Edupuisarn/slackget10-0.10/">CPAN</a><br /> <br /> That's all for the moment.<br /> <br /> Good day<br /> <br /> Arnaud Dupuis<br /> http://www.infinityperl.org/post/2007/10/24/new-release-of-the-slack-get-Perl-Module-slackget10-010#comment-form http://www.infinityperl.org/feed/atom/comments/166924