Class::Persist 0.30

I’ve done something I’ve wanted to do for ages – get another release of Class::Persist out. This one I consider massively improved over the last one – it’s dropped some of the nastier dependancies, doesn’t require it’s own magic database tables to be created, can properly put objects into more than one database, and, my […]

Bot::BasicBot 0.5

Bot::BasicBot 0.50 is released. The big thing in this one is nick tracking – the bot will keep track of what nicks are in a given channel, and if they’re opped or not – this is mostly so I can re-write slavorg on top of Bot::BasicBot, and bin slavorg2…

Release Frenzy!

Had a bit of a release thing over the weekend, new versions of Bot::BasicBot, URI::Title, AudioFile::Identify::MusicBrainz were released, and I’ve also given the world URI::Find::Simple. Now I need a release of Bot::BasicBot::Pluggable to sync it up with Bot::BasicBot, and I have some german translations to integrate into CGI::Wiki::Kwiki. Insane, I tell you.


After much muttering back and forth between blech and I, I have written and released AudioFile::Identify::MusicBrainz. The old MusicBrainz client relied on the C library they distribute, which was silly for something that sent and recieved pure RDF, so a pure-perl implementation was just begging to be written. So, upsides, it works, there’s exactly one sort […]


Ah ha! I have a blogroll. Ph33r me. In other news, Template::Plugin::XML::Simple is really nifty. <p class="code"> [% USE blogroll = XML.Simple(‘/export/home/tomi/web/’) %] &lt;p class=header&gt;blogroll&lt;/p&gt; &lt;p&gt; [% FOREACH section = blogroll.body.outline %] &lt;a href="[% section.htmlUrl %]"&gt;[% section.text %]&lt;/a&gt; [% UNLESS loop.last %]&lt;br /&gt;[% END %] [% END %] &lt;/p&gt;

Bot-BasicBot-Pluggable 0.04 released

Hah, finally I bullied simon into releasing Bot::BasicBot 0.04, allowing me to release a version of Bot::BasicBot::Pluggable that actually installs and builds and works. Thanks, Simon. I’ve bumped the version number to keep in sync with BasicBot, not totally sure why, as I suspect I’ll rapidly overtake it, but I’d like to get >10E-1 at […]

broken tick

I’m releasing another Bot::BasicBot at the moment, to change the semantics of the tick() method. Instead of getting called every 5 seconds, you now need to return a value from the tick() method, and you will be called again in that many seconds. this is waaay more useful than before, but of course it’ll break […]


I was reading this article on m3u files and decided to scratch one of my long-term itches, building a decent windows playlist on the file server. It’s a.. large collection, so I don’t want to build things on the client end, you see, it takes bloody ages. Up till now, I’ve just created a list of […]


Well, in the end, rather than fold my code into CGI::Wiki and its example scripts, Kake has persuaded me to release the thing as an actual module. So, the world now has CGI::Wiki::Formatter::Kwiki and CGI::Wiki::Kwiki. I’m not sure about the name of the latter, but given that is was mostly written as a Kwiki importer […]