Re: Perl policy for managing modules ?
>>"Raphael" == Raphael Hertzog <email@example.com> writes:
Raphael> Le Thu, Oct 08, 1998 at 09:57:36AM -0400, Dan Jacobowitz écrivait:
>> My question is, why are we so intent on removing the versioned
>> component even though we have lost binary compatibility? I understand
Raphael> Because most of the perl modules will work with all coming
Raphael> version of perl.
I guess I am confused. How do we know this? How can we be
certain that there shall not be any further binary incompatibilities
introduced in Perl? The fact that the upstream releases are
maintianing the versioned component seems to imply that no such
(implied) promise has been made by the perl 5 porters group.
Raphael> Because Debian doesn't allow different version of the same
Raphael> package to be on the same machine.
Hmm. The statement is indeed true, I just seem to be too dense
to see how it applies. Say the new Perl (released in jan 1999, say)
is binary incompatible to 5.005. I have a module, foo. How does this
scheme prevent a recompilation then?
Are we just putting all our eggs in the basket that despite
the record, there shall never be any incompatible perl releases?
Raphael> Because we don't want to have to update the packages that
Raphael> contains modules each time a new perl version comes out.
This, I agree with. The solution proposed either is a kludge,
or I am missing the point.
Me, I would create the current and all future versions of Perl
which are binary compatible to have the link:
/usr/lib/perl5/$arch/$version --> /usr/lib/perl5/$arch/<code name>
No modules need be recompiled when the new perl comes out,
since all of them really reside in <code name> dir.
When a new incompatible Perl comes out, we change the <code
name>, and recompile.
What am I missing?
When you meet a master swordsman, show him your sword. When you meet
a man who is not a poet, do not show him your poem. Rinzai, ninth
century Zen master
Manoj Srivastava <firstname.lastname@example.org> <http://www.datasync.com/%7Esrivasta/>
Key C7261095 fingerprint = CB D9 F4 12 68 07 E4 05 CC 2D 27 12 1D F5 E8 6E