As simple as possible, but no simpler

tagg on 2007-12-14T08:26:57

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 :)


/Lars


Another reason: search.cpan.org tools

Aristotle on 2007-12-14T11:18:44

I always find it useful if the last three or four versions are available so I can use the search.cpan.org diff to research any questions about changes between versions. That works only so long as the distribution’s not deleted from CPAN.

Hm...

educated_foo on 2007-12-14T14:10:56

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?

Re:Hm...

Aristotle on 2007-12-14T21:34:54

What’s the point of having a mirror system if everyone fetches from BackPAN by default?

Define "everyone"

educated_foo on 2007-12-14T23:42:36

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?

Re:Define "everyone"

Aristotle on 2007-12-15T07:02:38

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 well.

I don’t understand why you object in the first place, though. Do you think it’s a burden for module authors to leave a few recent versions around? Do you think it will cause harm if distributions lag behind CPAN by a bit, and if so, how does it stack up against the harm of distributions keeping up with the bleeding edge of CPAN without giving package maintainers the chance to check if the latest releases work in the OS in question?

Re:Define "everyone"

educated_foo on 2007-12-15T18:30:04

  • 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"?

Re:Define "everyone"

ChrisDolan on 2007-12-16T03:15:11

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 I understand quite clearly why others disagree with that opinion.

Re:Hm...

srezic on 2007-12-15T09:34:12

It seems that FreeBSD's ports system does it right. In /usr/ports/Mk/bsd.sites.mk there's a list of 15 or so CPAN sites, and the last of them is backpan.

Get to know your porter

jonasbn on 2007-12-14T19:49:48

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.