After upgrade to perl-5.12; running "depclean" it lists many perl packages for removal: virtual/perl-Package-Constants virtual/perl-Compress-Raw-Zlib virtual/perl-Compress-Raw-Bzip2 dev-java/antlr perl-core/MIME-Base64 perl-core/Test-Simple perl-core/Archive-Tar perl-core/Test-Harness perl-core/IO-Compress perl-core/IO-Zlib perl-core/Digest-MD5 perl-core/CGI perl-core/Digest-SHA perl-core/Compress-Raw-Bzip2 perl-core/Sys-Syslog perl-core/digest-base perl-core/Compress-Raw-Zlib perl-core/version perl-core/DB_File perl-core/Package-Constants dev-java/gjdoc perl-core/libnet I retained them all as all of them have some dependency that are still in use. I've seen this happening but not so many packages; it happens on amd64 and x86; other users noticed it too. Reproducible: Always Portage 2.1.8.3 (default/linux/x86/10.0/desktop, gcc-4.4.4, glibc-2.11.2-r0, 2.6.30-gentoo-r8 i686) ================================================================= System uname: Linux-2.6.30-gentoo-r8-i686-AMD_Athlon-TM-_XP_2500+-with-gentoo-1.12.13 Timestamp of tree: Sat, 23 Oct 2010 02:30:01 +0000 distcc 3.1 i686-pc-linux-gnu [disabled] ccache version 2.4 [disabled] app-shells/bash: 4.1_p7 dev-java/java-config: 2.1.11 dev-lang/python: 2.6.5-r3, 3.1.2-r4 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.8.1-r2 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 2.3-r1 sys-devel/autoconf: 2.13, 2.65-r1 sys-devel/automake: 1.7.9-r2, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.1.2, 4.4.4-r2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.10 sys-devel/make: 3.81-r2 virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/fax /usr/share/X11/xkb /usr/share/config /var/spool/fax/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests collision-protect distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distro.ibidio.org/pub/linux/distributions/gentoo/ ftp:///ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.osuosl.org/ http://mirror.datapipe.net/gentoo http://gentoo.binarycompass.org" LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en en_US" MAKEOPTS="-j4" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/kde-sunset /var/lib/layman/voip" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X a52 aac acpi alsa apache2 berkdb bluetooth branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac foomaticdb fortran gdbm gif gpm gtk hal iconv ipv6 java jpeg kde kpathsea lcms ldap libnotify mad mikmod mng modules mp3 mp4 mpeg mudflap mysql ncurses nls nptl nptlonly ogg opengl openmp pam pango pcre pdf perl png ppds pppd python qt3support qt4 readline scanner sdl session spell ssl startup-notification svg sysfs tcpd tetex tiff truetype type1 unicode usb vorbis x264 x86 xcb xml xorg xulrunner xv xvid zlib" ALSA_CARDS="via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias cgi" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv vesa fbdev" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
What makes you think they are used by something?
Lets take for example first package: virtual/perl-Package-Constants equery d virtual/perl-Package-Constants [ Searching for packages depending on virtual/perl-Package-Constants... ] perl-core/Archive-Tar-1.54 (virtual/perl-Package-Constants) so perl-core/Archive-Tar-1.54 is dependent but mark for removal. However, running: equery d perl-core/Archive-Tar-1.54 [ Searching for packages depending on perl-core/Archive-Tar-1.54... ] virtual/perl-Archive-Tar-1.54 (~perl-core/Archive-Tar-1.54) it shows virtual/perl-Archive-Tar-1.54 depends on perl-core/Archive-Tar-1.54 and virtual/perl-Archive-Tar-1.54 is not mark for removal. I've check them all and they all show some dependency second or third level.
(In reply to comment #2) > Lets take for example first package: virtual/perl-Package-Constants > > equery d virtual/perl-Package-Constants > [ Searching for packages depending on virtual/perl-Package-Constants... ] > perl-core/Archive-Tar-1.54 (virtual/perl-Package-Constants) > > so perl-core/Archive-Tar-1.54 is dependent but mark for removal. > > However, running: > equery d perl-core/Archive-Tar-1.54 > [ Searching for packages depending on perl-core/Archive-Tar-1.54... ] > virtual/perl-Archive-Tar-1.54 (~perl-core/Archive-Tar-1.54) > > it shows virtual/perl-Archive-Tar-1.54 depends on perl-core/Archive-Tar-1.54 > and virtual/perl-Archive-Tar-1.54 is not mark for removal. > > I've check them all and they all show some dependency second or third level. > Makes perfect sense that virtual/perl-Archive-Tar-1.54 is NOT marked for removal but perl-core/Archive-Tar-1.54. perl-5.12* provides it! Look at the dependencies of virtual/perl-Archive-Tar-1.54: RDEPEND="|| ( ~dev-lang/perl-5.12.2 ~dev-lang/perl-5.12.1 ~perl-core/Archive-Tar-${PV} )" So, perl-5.12.2 satisfies the virtual. Life is good, you can remove perl-core/Archive-Tar now that you have perl-5.12.2, portage is correct. :) I'll close the bug now.
Thank you for the explanation; so "depclean" is correct, all these packages can be removed.
(In reply to comment #4) > Thank you for the explanation; so "depclean" is correct, all these packages can > be removed. > Yup, depclean is pretty smart nowdays regarding this stuff. The list looks "safe" to me, as most (all?) of the virtuals have this "perl-5.12* OR perl-core/foo" statement. Glad I could help, thanks for using Gentoo Linux :)