[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Versioned provides ... a necessity !



According to Jules Bean:
> On Wed, 10 Feb 1999, Chip Salzenberg wrote:
> > According to Jules Bean:
> > > For their own reaons, which are opaque to me [but are almost certainly
> > > documented somewhere - try perl5-porters] upstream has decided to change
> > > the path-names.  They've done this because they think most modules won't
> > > continute to work, I imagine.  So we shouldn't defy their policy.
> > 
> > No; only the BINARY interface for shared libs has changed incompatibly.
> > Any Perl-only module that's compatible with e.g. 5.004 should work
> > without change under 5.005.
> 
> In which case, there's no reason why we (debian, that is) shouldn't have a
> shared lib directory between 5.004 and 5.005 (and 5.006...), is there?

Well, that depends.  Are you at all interested in having 5.004 and
5.005 coexist?  If not, then: No, there's no reason not to just
upgrade /usr/lib/perl in place.

> So we could move all our (non-binary) modules to a directory whose name
> isn't going to change, and use it for subsequent versions.

Yes.

The 'upstream' policy from us perl5-porters is *not* that Perl
versions _must_ coexist.  The upstream policy is that the Perl
distribution must _permit_ coexistence for those users who want it.
(Perl isn't about forcing people to do things the 'right' way.)

But if you _are_ interested in coexistence, then I think you should
also have /usr/lib/perl5.005 for 5.005's standard modules,
/usr/lib/perl5.004 for 5.004's standard modules, etc.  And also
/usr/lib/perl5 for modules that work with any of the supported Perl
version (5.004+, basically).

You may want to consider putting all modules that aren't distributed
with Perl into a directory separate from Perl's standard modules.
That'll ease administration of Perl upgrades and other things.

> Modules which *do* in fact require a particular version (perhaps because
> they use a new feature) could then be installed in the version specific
> directory.

Right.

> Except then they won't be available in the next version.

No help for that.  You can't compile a .so against object files that
don't yet exist.  :-(
-- 
Chip Salzenberg      - a.k.a. -      <chip@perlsupport.com>
      "When do you work?"   "Whenever I'm not busy."


Reply to: