YACSmoking with POE

BinGOs on 2006-09-15T16:45:00

So this week I finally got around to doing what I had been threatening to do for a long time .... wrap a POE framework around CPAN::YACSmoke

Why would I contemplate such madness?

  • I like POE >:)
  • I wanted more control over what CPAN::YACSmoke was doing
  • I could extend the functionality at a later date
  • Just because ....

My main gripe with CPAN::YACSmoke was that if a particular module test 'hung' for some reason it would just sit there for hours until I happened to notice it.

So, I'd already 'borrowed' the article querying algorithm from Bot::CPAN and adapted it to my own NNTP module and reading AudreyT's cpants article set out to write something using POE.

The result is here

To use it you'll need:

  • POE
  • POE::Component::Client::NNTP
  • Mail::Internet
  • CPAN::YACSmoke + CPANPLUS

My only doubts have been with the recommended 40,000 second wait after a distribution has been uploaded before testing. Any advice would be gratefully received


ooohhhh! sexxah!

grinder on 2006-09-16T07:42:30

I like it! I want it!

As for the 4e5 wait, I would suggest looking at CPAN Mirror Status to look for the sweet spot of closest mirror most regularly updated fetch the goodies from that.

Or, what I would plan to do once I get my hands on your code, is that since I have a local CPAN mirror, I would just put the list of new modules into a queue.

Then, each time I refresh my mirror, I would smoke all the new distributions that have arrived, and cross them off the list. As I don't sync off funet, but rather a local mirror I tend to run over 24 hours behind, but I really don't think that's an issue.

Re:ooohhhh! sexxah!

BinGOs on 2006-09-16T15:58:59

>:o]

After I posted the comment about the time delay I noticed some test reports from imacat hitting perl.cpan.testers that seemed to confirm the 11 hour wait.

You have given me much food for thought. I've also been giving the whole thing much thought, along the lines of interfaces to control what is happening within the daemon.

I'm away on holiday this week, so I shall have to ponder on it offline