Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^2: Apple says sorry for Mac Perl breakage (sort @INC)

by ruzam (Curate)
on Mar 25, 2009 at 15:27 UTC ( [id://753154]=note: print w/replies, xml ) Need Help??


in reply to Re: Apple says sorry for Mac Perl breakage (sort @INC)
in thread Apple says sorry for Mac Perl breakage

Just meditating, but to me it makes perfect sense to me that the directory search path comes in this order, especially when it comes to core. I think it follows a philosophy of 'adding on' modules, not 'enhancing existing' modules with over-rides. I think the distribution directories should contain nothing but core, tested and proven to work in harmony with the rest of the OS and attempting to upgrade them should not be taken lightly with a simple user search path over-ride. From an application point of view we're quite comfortable with over-riding just about anything in Perl, but from an OS point of view, I don't think you want that to happen (easily anyway).

What shocks me is that the core modules that Apple broke where 'upgraded' by users because the the Apple versions were old and out of date. The finger pointing at search path order seems to have overshadowed the fact that Apple has neglected to keep it's Perl core up to date.

  • Comment on Re^2: Apple says sorry for Mac Perl breakage (sort @INC)

Replies are listed 'Best First'.
Re^3: Apple says sorry for Mac Perl breakage (sort @INC)
by mr_mischief (Monsignor) on Mar 26, 2009 at 19:47 UTC
    You make a good point about not using the user's module updates for the system tools. However, the system tools should normally be run as a superuser account, which shouldn't normally be used for day-to-day production programming.

    Beyond that, even system-wide system-specific module upgrades shouldn't change anything for OS distro utilities that use the modules. If they're packaging perl, the Perl modules, and packaging the apps that depend upon those modules, then the packagers of those dependent apps should have no problem knowing and using the exact paths to the original versions. There's even an optional vendor_perl directory one can configure during the perl build that's just like the site_perl directory. Mandriva uses it, so why not Apple?

    I can understand the hesitation for a company that sells products based on "it just works" to bundle the latest and greatest software in their distribution all the time. I'm sure they only use things they're had time to test as units and in integration. While being on the cutting edge is great for some, when you're selling boxes to lots of people and want few support issues, you usually do stay back a few releases for stability and testing reasons.

      This is simply a result of distros (Linux, *BSD, etc.) and Operating System vendors encouraging bad practices. There should really be two installations of Perl. One for the OS/sysadmins to use and one for developers/general use.

      Elda Taluta; Sarks Sark; Ark Arks

        There should really be two installations of Perl. One for the OS/sysadmins to use and one for developers/general use.
        "hey jim... did you install CGI::Prototype like I asked?"

        "yeah".

        "I don't think you did it right... web apps still not launching."

        "no, really... here's my 'sudo cpan' command showing what got done."

        "weird... wonder why the web app isn't seeing it."

        See... that's not much better.

        I'm sorry, but was this intended to be a replay to my node? I made four very specific points, none of which you specifically addressed.

        Having a separate installation that is installed by the user for his own use is a good idea (and a best practice, really), but it is not strictly necessary if perl is installed and configured completely correctly.

        It's a quite bad idea, IMO, to provide two separate installations out of the box as merlyn points out so humorously. A savvy user should install one's own. A less savvy user either won't mess with the system perl or shouldn't.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://753154]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (3)
As of 2024-04-24 04:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found