Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

tagg (277)

  (email not shown publicly)

Lars Thegler works for a danish telco, hacking Perl, and then some...

Journal of tagg (277)

Friday December 14, 2007
03:26 AM

As simple as possible, but no simpler

[ #35099 ]

I'm all for lowering the Schwartz factor, but it is annoying when CPAN authors remove all their older module versions the second they update it on CPAN.

Why? Because it leaves re-distributors (FreeBSD ports tree, in this case) with very little (no) time to upgrade the distribution. See, the FreeBSD ports tree contains the version number of the module, so when that module is removed from CPAN, it is not longer installable via the ports tree, until the maintainer has had time to 1) discover that the module has been upgraded, and 2) get it into the tree. Normally, with the vigilant maintainers and committers we have on the project, this doesn't take so long, maybe a day or two. On top of this, we have the delay of the user syncronising his local ports tree, but I would expect most users to do this before installing stuff, anyway.

So my message for CPAN authors is: please do remove old, stale modules from CPAN, but please keep a few of the newer versions, at least for a couple of weeks. This makes the life a bit easier for the rest of us. Thanks in advance :)


The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • I always find it useful if the last three or four versions are available so I can use the diff to research any questions about changes between versions. That works only so long as the distribution’s not deleted from CPAN.

  • I've taken to immediately deleting older versions of my modules, because I have a small enough userbase (i.e. maybe 2) that I want them all to keep up with the latest version. But since the old ones are still on backpan, could packagers just fetch from there instead?
    • What’s the point of having a mirror system if everyone fetches from BackPAN by default?

      • Define "everyone." First, most users want to install either a package or its prereqs. For them, either downloading the latest will be fine, or the package authors will have to do something special to maintain multiple release branches under the same name. Second, what's the point of having a mirror system if a packager downloads one (out-of-date) version once, then redistributes it through their own mirrors?
        • downloading the latest will be fine

          We’re talking about OS vendors like Linux distributions or FreeBSD here. For their users, downloading the latest released blessed by the package maintainer is what’s desired. Think of FreeBSD releases or Debian stable distributions: updates serve the purpose of propagating bug/security fixes only, but otherwise the system is as static as possible.

          And that answers your question about the value of everyone distributing outdated CPAN distribution releases as

            • Distributions have their own, er... distribution mechanisms outside of CPAN, so its mirroring is irrelevant as long as back versions are available *somewhere*.
            • I only have time to deal with one version of my modules, so for versions distributed through CPAN (i.e. by me), people should be working with the latest. There's nothing wrong with having old versions lying around on CPAN, but there's not much point, either -- I already have a VCS.
            • Where did I "object"?
            • Distributions have their own, er... distribution mechanisms outside of CPAN, so its mirroring is irrelevant as long as back versions are available *somewhere*.

              Not true, or at least not completely true. Fink, for one, has a really crappy mirror system, so I often get distros straight from CPAN. Authors who delete their releases too quickly are really irritating.

              Personally, I think ALL releases should stay on CPAN because who knows what stuff you (the author) broke when you put a new release up there. But
      • It seems that FreeBSD's ports system does it right. In /usr/ports/Mk/ there's a list of 15 or so CPAN sites, and the last of them is backpan.
  • In the Workflow team we are in that lucky situation that the guy maintaining Workflow in ports mailed me and asked to be notified of releases.

    Currently he is on our development list, which is quite low traffic, but I guess we will set up an announce list if traffic increases significantly, so people like him can get only the info they need easily.

    I can only recommend keeping in touch with the people who distribute your work - for free.