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