Project:Perl/Ongoing tasks

High priority tasks

 * Fix repoman issues: dev-perl perl-core
 * Update virtuals (drop old versions, remove references to removed perl versions, add new perl versions under mask), details see below

Updating dev-lang/perl (new major version 5.x)
'''These notes are work in progess!!! Always add new ebuilds masked, both new dev-lang/perl and its corresponding new virtuals. '''


 * Version-bump perl-core/Module-CoreList and virtual/perl-Module-CoreList, so it has data about the new Perl version
 * Update your local Module-CoreList for convenience
 * Now or later, add new dev-lang/perl package.masked, with empty PERL_OLDVERSEN and updated version numbers in the dual_scripts table
 * In some cases, virtuals correspond to a "distribution", not a "module". For these virtuals, check and update the table on the Project:Perl/Distribution_virtuals distribution virtuals page
 * Add package.masked new virtuals for new core package versions included in the new Perl (only virtuals, no perl-core), or
 * Update existing virtuals with a revbump to include the new version if it provides the same core package (always list higher dev-lang/perl versions first in the virtual, no need to mask here)

Updating dev-lang/perl (new minor version 5.x.y)
These notes are work in progess!!!

Dropping a dev-lang/perl version
These notes are work in progess!!! Then, for each virtual/perl-*,
 * Remove the dev-lang/perl ebuild

Updating the virtuals
Important point: Virtuals can correspond to single modules or to CPAN distributions. See Project:Perl/Distribution_virtuals about the module versions inside distributions.

It's important that the versions inside dev-lang/perl are also present as virtuals. Why? Imagine dev-lang/perl-0.18 contains Module::Foo version Y, and virtual/perl-Module-Foo-X (with X smaller Y) is stable. Now we stabilize perl-0.18. If we don't have a virtual to stabilize, the old version will stay installed and shadow the newer one in perl-0.18!

Template for a virtual with corresponding dev-lang/perl version:
 * 1) Copyright 1999-2014 Gentoo Foundation
 * 2) Distributed under the terms of the GNU General Public License v2
 * 3) $Header: /var/cvsroot/gentoo-x86/virtual/perl-IO/perl-IO-1.310.0.ebuild,v 1.1 2014/07/07 19:40:40 dilfridge Exp $

EAPI=5

DESCRIPTION="Virtual for ${PN#perl-}" HOMEPAGE="" SRC_URI=""

LICENSE="" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE=""

DEPEND="" RDEPEND="	|| ( =dev-lang/perl-5.20* =dev-lang/perl-5.18* ~perl-core/${PN#perl-}-${PV} )	!perl-core/${PN#perl-}-${PV}-r999 "

Template for a virtual without corresponding dev-lang/perl version:
 * 1) Copyright 1999-2014 Gentoo Foundation
 * 2) Distributed under the terms of the GNU General Public License v2
 * 3) $Header: /var/cvsroot/gentoo-x86/virtual/perl-IO/perl-IO-1.310.0.ebuild,v 1.1 2014/07/07 19:40:40 dilfridge Exp $

EAPI=5

DESCRIPTION="Virtual for ${PN#perl-}" HOMEPAGE="" SRC_URI=""

LICENSE="" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE=""

DEPEND="" RDEPEND="~perl-core/${PN#perl-}-${PV}"

Virtuals that still need some attention
Things that have been skipped in this update pass and should be fixed: all done

Package requests on bugzilla
There's a huge number of ebuild requests on bugzilla for perl packages, many quite old... So, we leave this message on the bugs: Is anyone still interested in this package? If yes, please indicate so here and now! If noone replies within 30 days, the bug is closed.