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

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.
  • all known users of UNIVERSAL::require (CPANTS++, cpansearch++)

    Er... are you assuming that all users of UNIVERSAL::require have their code on CPAN? :-)
    • Er... are you assuming that all users of UNIVERSAL::require have their code on CPAN? :-)
      Yet Another Reason to Release to CPAN. ( YARRC?) You get early notice when a module you rely upon is changed.
      • True, but sometimes... you just can't :-)
      • Are you kidding?

        You want us to drop every silly web application we've ever written for every client into CPAN?

        Stuff that contains business logic that only applies to a guava farmer working in the north-western tasmania local government area of Tasman, who uses Quickbooks and has Internet Explorer specific functionality?
    • Er... are you assuming that all users of UNIVERSAL::require have their code on CPAN? :-)
      No, just all known users. Look inside the Makefile.PL for how everyone else is informed.
      • Hum, that is a good idea. However, shouldn't it ask "Do you want to install this thing, because it might screw things up?" instead of just saying "Hey, watch out, because you might just have screwed things up..." (I'm thinking automated instalations here)

        I might be getting something wrong, though, and I'm not sure whether you'd be able to prevent the instalation from within Makefile.PL. Probably.
        • You're right, I should ask the user using prompt(). I'd probably have it default to "Yes" most of the time as it would be far too obnoxious for someone to fire off an automated install and then have it fail halfway through because I made some trivial backwards incompatibility. Though if I was to have made the require change I'd have it default to "no".

          I might be getting something wrong, though, and I'm not sure whether you'd be able to prevent the instalation from within Makefile.PL. Probably.

          There is t

          • There's another issue... you're checking whether the module is already available and deciding whether the guy is using it depending on it being instaled before... what if he used it before, but is now installing things on a brand new machine? :-\

            There is the simple expedient of just not producing a Makefile.

            Indeed :-)
            • There's another issue... you're checking whether the module is already available and deciding whether the guy is using it depending on it being instaled before... what if he used it before, but is now installing things on a brand new machine?

              In that case then its being installed as a dependency of something which itself has not yet been installed. When the dependent thing gets installed its own tests will run and detect if the incompatibility caused a problem.

              Oh... you do have tests, right?

              • Right, but maybe printing out a notice explaining what's happening would help, in that case (telling the user that maybe installing a previous version would solve the problem).

                That, however, poses a problem, as the module was already installed... but maybe you can somehow detect, er... something else O:-)