I'm gonna stop blogging here. Not because of the nice grey background or the lack of rounded corners or not being able to upload images that other people have whined about. I'm mostly irritated at being occasionally logged out between me reading someone's journal entry and me posting a comment. And even worse, at the same sometimes happening while I write a journal entry. I could put up with that while this place still had a "critical mass" of people whose journals I regularly read, but as more and more of them go elsewhere, the irritation becomes more important.
The first new entry is there, with a nifty hack for doing #includes in POD.
This is rightly hailed as a classic, being one of the clearest accounts of day-to-day Roman life for those outside the nobility and political and military elite during the Empire. And of course it is a fine example of political satire, with many subtle and not-to-subtle digs at public figures and writers of the era. All of this makes it a great academic read. And as such, I enjoyed it.
Unfortunately, it's a lousy novel. That's not the author's fault, but is simply because large chunks of the text have been lost over the last 1900 years so there are jarring gaps. While we can, to a limited extent, reconstruct parts of it, all that tells us is what the broad arc of the story might have been. You could cut chunks out of any good story, and then largely rebuild the tale, but if you were to read it with those chunks missing (which is the case with my copy of the Satyricon, which lacks even the briefest of inline notes about the missing sections) it would still not be a good read. It's almost a pity that the practice of translators/editors filling in the blanks themselves hasn't taken off, at least for mass-market paperbacks. But then, I suppose, there isn't a mass-market because it's not about some ghastly footballer or pig-faced slag from Essex.
This is, unfortunately, one only for those with an academic interest in the era.
New versions of Devel-CheckOS, Number-Phone-UK, and CPAN-FindDependencies recently. The first two fix some rather subtle bugs, the last just updates a dependency to require a new version of Parse::CPAN::Packages that doesn't conflict with the latest Moose.
And the hot chicks? Well, from my RT.CPAN queue: "hello My name is miss Mabel Dagba i saw your profile here
Oops. In cases where the most recent version of a distribution was a developer-only release it was preferring to index that than the public release, but also realising that it shouldn't index developer-only releases. End result: Module-Build 0.32 not being indexed because the most recent version is 0.32_01, and so all kinds of modules that depend on it not working from this 'ere mirror.
A year to the day after Ian Tegebo sent me a patch for CPAN::FindDependencies, I've finally applied it, hacked on it a bit, and released it.
With Ian's magic, it can now resolve dependencies for distributions where there's no META.yml but there is a Makefile.PL. Since this involves downloading stuff form the intertubes and executing it, this feature is disabled by default.
Obviously, I won't enable this on deps.cpantesters.org.
So, about 2000 years ago, Jesus died so that we could have a four day weekend. What a nice chap!
I spent the first of those four days cleaning up my RT.CPAN queues and fixing some problems that CPAN-testers had found with my modules - see the shiny new versions of File::Overwrite and Palm::Treo680MessagesDB.
Unfortunately, these were problems that only showed up on Windows. Even with the excellent Strawberry Perl, Windows is incredibly hard to use, so this was very frustrating. I think I'd actually rather have not had the time, as it ended up just being a few hours of misery. So the bastard was kidding all along, he didn't die so I could have a nice four day weekend. DAMN YOU JESUS.
I think I've worked all the serious bugs out of the CP5.6.2AN, so as of this afternoon, my perl 5.6.2 testing machine is using http://cp5.6.2an.barnyard.co.uk/ as its CPAN mirror. It is a BackPAN with a custom 02packages file which lists the modules in the latest version of each distribution to have a PASS result in the CPAN-testers database for perl 5.6.2.
Because it's an up-to-date backpan I can still ask it for things like A/AU/AUTHOR/New-Dist-1.0.tar.gz and test them (even if there's no passes in the database, so no entries in the index), but when the Build.PL or Makefile.PL specifies Some::Module as a dependency, it will look in the index and find a version of that module that works on the perl I'm testing with, so even if the most recent version of Some::Module doesn't work on 5.6.2, I can still test to see whether New-Dist does. Hurrah!
There's also a version for perl 5.8.8, and I can very quickly add other versions on request.
Both sites update shortly after 6am every morning, and source code is available here. If you would like to clone my git repo, email me to ask for the username/password.
The aim of this project is to minimise the pain if for some reason you are stuck on an old version of perl. This includes 5.8.x, as there are now modules where the latest version only works on perl 5.10.
At the recent QA Hackathon in Birmingham (which was great - many thanks to Birmingham.pm for organising it, and to the hotel for having a rubbish network so I actually worked instead of dicking around on IRC) I worked on my idea for the Comprehensive Perl $version Archive Network, or CPXXXAN for short, mostly so I can make jokes about hot module-on-module action.
It is intended to be a set of CPAN "mirrors" which only contain distributions which pass their tests on a particular version of perl, with their 02packages index files set up correctly so that if, eg, you go to the mirror for perl 5.6.2, you'll get DBI 1.604, which works, instead of DBI 1.607, which doesn't.
While you might think that this is pointless - the argument is that "people who don't upgrade perl won't want to upgrade modules" - consider that recent releases of some distributions now require perl 5.10, even though that's only just over a year old. 5.6.2 just makes a convenient test case.
In Birmingham, I tested it and got it all working on my laptop, using a subset of the data (specifically, distributions beginning with DBI or DBD). Now I'm building the 5.6.2 index for the whole of the CPAN. It's taking a very long time, but I'm not that concerned, as I'm unlikely to update the indices more than once a month. Even so, any Clues about how to make my SQL more efficient would be most welcome. See the schema and the query that figures out what the most recent passing distribution is and what modules are in it.
All the code if in my git repo, email me if you want access.