From mboxrd@z Thu Jan  1 00:00:00 1970
Received: from lists.gentoo.org ([140.105.134.102] helo=robin.gentoo.org)
	by nuthatch.gentoo.org with esmtp (Exim 4.62)
	(envelope-from <gentoo-perl+bounces-511-garchives=archives.gentoo.org@gentoo.org>)
	id 1HYhNU-0007Cn-P1
	for garchives@archives.gentoo.org; Tue, 03 Apr 2007 11:40:45 +0000
Received: from robin.gentoo.org (localhost [127.0.0.1])
	by robin.gentoo.org (8.14.0/8.14.0) with SMTP id l33BeV1v000819;
	Tue, 3 Apr 2007 11:40:31 GMT
Received: from eastrmmtao103.cox.net (eastrmmtao103.cox.net [68.230.240.9])
	by robin.gentoo.org (8.14.0/8.14.0) with ESMTP id l33BeTmJ000814
	for <gentoo-perl@lists.gentoo.org>; Tue, 3 Apr 2007 11:40:30 GMT
Received: from eastrmimpo02.cox.net ([68.1.16.120])
          by eastrmmtao103.cox.net
          (InterMail vM.7.05.02.00 201-2174-114-20060621) with ESMTP
          id <20070403114023.HZIE24015.eastrmmtao103.cox.net@eastrmimpo02.cox.net>
          for <gentoo-perl@lists.gentoo.org>;
          Tue, 3 Apr 2007 07:40:23 -0400
Received: from torchwood.datanode.net ([68.110.242.20])
	by eastrmimpo02.cox.net with bizsmtp
	id ibgM1W00B0T704L0000000; Tue, 03 Apr 2007 07:40:23 -0400
Received: from paradox.datanode.net (unknown [172.16.1.106])
	by torchwood.datanode.net (Postfix) with ESMTP id 2D98DA0047
	for <gentoo-perl@lists.gentoo.org>; Tue,  3 Apr 2007 07:40:21 -0400 (EDT)
Received: by paradox.datanode.net (Postfix, from userid 1000)
	id 51CD56CC05C; Tue,  3 Apr 2007 07:40:20 -0400 (EDT)
Date: Tue, 3 Apr 2007 07:40:19 -0400
From: Michael Cummings <mcummings@gentoo.org>
To: gentoo-perl@lists.gentoo.org
Subject: [gentoo-perl] [RFC] Some thoughts on the next release of perl
Message-ID: <20070403114019.GA20273@paradox.datanode.net>
Mail-Followup-To: gentoo-perl@lists.gentoo.org
Precedence: bulk
List-Post: <mailto:gentoo-perl@lists.gentoo.org>
List-Help: <mailto:gentoo-perl+help@gentoo.org>
List-Unsubscribe: <mailto:gentoo-perl+unsubscribe@gentoo.org>
List-Subscribe: <mailto:gentoo-perl+subscribe@gentoo.org>
List-Id: Gentoo Linux mail <gentoo-perl.gentoo.org>
X-BeenThere: gentoo-perl@gentoo.org
Reply-To: gentoo-perl@gentoo.org
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature"; boundary="Qxx1br4bt0+wmkIi"
Content-Disposition: inline
X-Operating-System: Linux 2.6.18-gentoo x86_64
User-Agent: Mutt/1.5.13 (2006-08-11)
X-Archives-Salt: db09cf91-ae13-45fd-84dd-98ea70dfa8f3
X-Archives-Hash: 467c05e02b33711cacc3052e0eb2fb4b


--Qxx1br4bt0+wmkIi
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

* libperl.a vs libperl.so - Policy dictates that whenever possible, if a li=
brary
  can be made either way, that both should be generated and provided for th=
ose
  apps that need the static library to build against. Up till now,
  sys-devel/libperl has built the dynamic library, and dev-lang/perl has bu=
ilt
  the static library as it built perl (and thereby linked perl against the
  static). I'd like to suggest we reverse this process - let sys-devel/libp=
erl
  build the static library for those that need it, but build the dynamic li=
brary
  alongside perl. The benefits here would be a smaller footprint for perl, =
and
  less hassle if someone rebuilds perl with new use flags (such as ithreads=
).

* Redoing the re-order @INC patch - I've had discussions lately with folks,=
 both
  on this list and in bugs, about the order we alter the @INC in. Our rever=
se
  @INC patch sets the order to vendor->site->core. For Gentoo provided modu=
les,
  this means that any modules we provide override anything else. However, t=
here
  are a growing number of users that prefer/need to use CPAN directly, which
  installs modules to site, meaning our ebuilds override those modules. In a
  perfect world this would be acceptable, except that if you're using CPAN
  directly, that means you have need of the module *now* - but the required=
 qa
  periods for ebuilds (which I'm not arguing against) mean that it will be =
at
  least 30 days until we have a new module marked stable, assuming your arc=
h is
  even in the list and we're on the ball (which I know I haven't always bee=
n to
  say the least). Part of this reordering would be to also reverse the orde=
r of
  how vendor/site, so that we @INC would go (for example):

  /usr/lib/perl5/vendor_perl
  /usr/lib/perl5/vendor_perl/5.8.8
  /usr/lib/perl5/vendor_perl/5.8.8/i686-linux

  for vendor (same for site_perl). The rationale being to try and keep thin=
gs
  as version agnostic as possible. This coupled with my previous bullet
  (libperl.so) and my next thought (slotting perl) would, at least in theor=
yand
  completely untested and unconfirmed, mean that so long as the
  libperl.so.<version> that the module was built against still exists, then=
 perl
  should be able to continue to load most of the modules. We might still ne=
ed to
  do a little perl-cleaner action, but it wouldn't be nearly as painful as =
it
  has been in the past.

* Slotted perl - I know this was a quest of yuval's for some time, not sure=
 what
  if any progress has been made (yuval?). My train of random thought on thi=
s is
  that perl binaries/scripts would install to
  /usr/$(get_libdir)/perl5/$(perl_version)/bin, and we would generate a
  perl-config tool, akin to (and possibly ripped from) the java-config tool
  where you could select which perl was your active perl. This would mean
  installing libperl.so to its normal location, which is actually under
  /usr/$(get_libdir)/perl5/($perl_version)/$(arch)-linux/CORE and using the
  perl-config tool to link it.


I know that I've brought these thoughts up before, and even played with the=
m a
bit, and never made any real progress. But with the next release of perl lo=
oming
ever closer on the horizon, I'd like to see the upgrade process go much more
smoothly for our users (this last bit directed at the devs on the list, but
hopefully the rest of you won't be offended by the sentiment). perl-cleaner
works (mostly)(sometimes)(as well as can be expected), but it would be idea=
l to
only need such a tool in dire circumstances. Comments welcome :)=20

~mcummings

--=20

-----o()o----------------------------------------------
Michael Cummings   |    #gentoo-dev, #gentoo-perl
Gentoo Perl Dev    |    on irc.freenode.net=20
Gentoo/SPARC
Gentoo/AMD64
GPG: 0543 6FA3 5F82 3A76 3BF7  8323 AB5C ED4E 9E7F 4E2E
-----o()o----------------------------------------------

Hi, I'm a .signature virus! Please copy me in your ~/.signature.

--Qxx1br4bt0+wmkIi
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.3 (GNU/Linux)

iD8DBQFGEj0jq1ztTp5/Ti4RAp5AAKCV6EBZ10T6jfdBsQ3cLH0ela+pfACfamR9
KFYYOpx9O3pj/thP0h9ZNXs=
=Kidh
-----END PGP SIGNATURE-----

--Qxx1br4bt0+wmkIi--
-- 
gentoo-perl@gentoo.org mailing list