Stories
Slash Boxes
Comments
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 ]

schwern (1528)

schwern
  (email not shown publicly)
http://schwern.net/
AOL IM: MichaelSchwern (Add Buddy, Send Message)
Jabber: schwern@gmail.com

Schwern can destroy CPAN at his whim.

Journal of schwern (1528)

Saturday January 23, 2010
09:00 PM

The return of perl5i!

[ #40125 ]

After an extended period in hibernation, perl5i returns to CPAN with a rack of new changes since the last CPAN release. Thanks to Bruno Vecchi, Chas Owens, Darian Patrick, Jeff Lavallee, Michael Greb, rjbs, benh and chromatic for contributing!

Why was it deleted from CPAN? Version numbers. I'd used my usual ISO date integer style versioning but realized pretty quick that I need full X.Y.Z versioning to indicate incompatible changes. Yes, perl5i is planning to be incompatible but without breaking your code!

How? By allowing you to declare what major version of perl5i you rely on. At this point its most likely going to be "use perl5i::2" which has the nice benefit of also allowing you to declare a dependency on perl5i::2. Easy peasy.

The question remains, what should "use perl5i" do? Should it A) load the currently installed version of perl5i? Or B) die with instructions on what to do? A is convenient, but means you'll get (probably unknowingly) walloped by an incompatibility later. B is a little inconvenient, but it makes the planned incompatibilities explicit and visible. The existence of a perl5i command line program (which also works on the #! line) makes A less of a concern if you want to go that route. So likely in short order "use perl5i" won't work any more. But I'd still like your thoughts on the matter.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • I will run and package this for debian.
    • Awesome! That will make it a bit less dep-tastic for Debian users.

      • Might take a little while: Needs the following modules for which there are no debian packages available - Time::y2038 - autobox::Core - autobox::List::Util - autovivification - autobox::dump - CLASS - DateTime::Format::Epoch Some of those are easy to package (like CLASS), others might be a little harder. :)
        • Well, I packaged CLASS and uploaded it to the debian repos. There is some question if the ftpmasters will accept it, they don't like small packages and this one is not that large.

          It is in my personal repo however should anyone want to use that to download CLASS, here is the linke they should add to their sources.list:

          # Jeremiah Foster's deb repository:
          deb http://www.jeremiahfoster.com/apt [jeremiahfoster.com] sid main contrib non-free
          deb-src http://www.jeremiahfoster.com/apt [jeremiahfoster.com] sid main contrib non-free

          • If you make it clear to them that its a dependency of a more useful module I'd think that would sway them. Otherwise they're effectively rejecting perl5i.

            • Yeah. This is a known problem unfortunately. We have been down this road with Moose modules. They just have a hard and fast rule that the package has to be a $number SLOC, which is arbitrary I know.
  • I like option A. Because maybe I have some other top-level perl wrapper, so just having the wrapper doesn't make me feel all warm and fuzzy like. :)