Re: Perl upgrade risks

From: Almut Behrens (almut_behrens_at_gmx.net)
Date: 06/30/05

  • Next message: Simon: "Protecting against spoofing with IPTABLES"
    Date: Thu, 30 Jun 2005 02:42:50 +0200
    To: debian-user@lists.debian.org
    
    

    On Wed, Jun 29, 2005 at 05:45:56PM -0300, Antonio Lobato wrote:
    >
    > I have a Debian Woody server running a lot of services such as
    > cyrus/postfix, apache, mysql-server, jabberd2, and more... Such as a
    > good woody system, my Perl is 5.6.1, and there are tons of scripts
    > that I made and even normal system scripts that uses this perl
    > version. Now I'll install a software (bandersnatch, for jabberd2 chat
    > logging) that needs Perl 5.8.0 a least.
    >
    > Well, I can pinning the system to woody/oldstable and upgrade only
    > Perl to 5.8.7 (stable), but my question is: Will such Perl upgrade
    > (from 5.6.1 to 5.8.7) break some old script?
    >
    > This is a production server and I have to be sure that I can do it.

    I don't think there's a clear Yes or No answer. It very much depends on
    exactly what features the perl code in question is using.
    Having issued that warning, I should add that, according to my
    experience with upgrading perl versions, it usually doesn't cause any
    problems -- except if the code contains exceptionally dirty hacks.
    The main problem here is that you'd typically not know...

    So, I think, you essentially have two options:

    (1) Read through all "perldelta"[1] documents to get an idea of what
    has changed from version to version, and then somehow figure out whether
    any of that applies to the perl code you're using. (Definitely sounds
    like a lot of work, with an unsure outcome...)

    (2) Install the new perl 5.8.7 in /usr/local and leave 5.6.1 as it is.
    This is probably the safest bet. In your software that needs >5.8.0,
    make sure you're calling the new version, i.e. replace #!/usr/bin/perl
    with #!/usr/local/bin/perl (or wherever you've put it).
    I'm not entirely sure how involved it is to install the standard debian
    package in a different location (such that the binary also pulls in its
    correct libs...(!)), so in case of doubt I'd "simply" build perl from
    source.

    Good luck,
    Almut

    [1] with each perl version there's a perldelta.pod file containing the
    changes since the previous release (there's also a "Changes" file, but
    that's probably too detailed for the purpose at hand). You can read it
    with "perldoc perldelta", but as mentioned, that only contains the most
    recent changes. To get an idea of the cumulative changes from 5.6.1 to
    5.8.7, you'd have to read (and merge in your head) all perldelta files
    that have appeared in between... In case you're still not scared off
    by now ;) you can find them all here:
    http://perldoc.perl.org/perl.html#Miscellaneous

    -- 
    To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org 
    with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
    

  • Next message: Simon: "Protecting against spoofing with IPTABLES"

    Relevant Pages

    • [Full-Disclosure] PR0V1NG RFP WR0NG
      ... Agree that the presented Perl code has issues, and I agree that it's very ... I've taken a sample perl test script which reads: ... Server: Netscape-Enterprise/4.1 ... I'm a washed out sell out capitalizing on my 10 seconds of fame for writing some crappy advisories and some shitty perl code. ...
      (Full-Disclosure)
    • Re: Parsing a file that has labels
      ... Let me explain the above perl code. ... As such a character doesn't exist that means the whole ... replace every occurrence of the regexp, ...
      (comp.unix.shell)
    • Re: Parsing a file that has labels
      ... > Let me explain the above perl code. ... there's something to know about perl regexps. ... As such a character doesn't exist that means the whole ... replace every occurrence of the regexp, ...
      (comp.unix.shell)
    • RE: perl DBI oracle and error ORA 06502
      ... procedure, schema, some data and the exact perl code that calls it. ... I would also need the name of and version your OS, perl, DBI, ... DBD::Oracle, The Oracle client you are running and the Oracle DB ... The problem shows in the perl code. ...
      (perl.dbi.users)
    • Re: Interview Questions
      ... folks who were going to be writing perl code ... for some portion of the CGI project? ... worded coding problem - hence whether they should ...
      (perl.beginners)