Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 4364

Summary: "emerge clean" not finding all packages properly
Product: Portage Development Reporter: Maik Schreiber <blizzy-keyword-gentoo_bugs2.a8a736>
Component: UnclassifiedAssignee: Daniel Robbins (RETIRED) <drobbins>
Status: RESOLVED FIXED    
Severity: normal CC: blizzy-keyword-gentoo_bugs2.a8a736, dave
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Maik Schreiber 2002-06-30 16:33:48 UTC
Today I updated from gcc-2.95.3-r5 to gcc-2.95.3-r7. After updating, I tried 

emerge -p clean

as usual, but it didn't show anything. Then I tried

emerge -p unmerge "<sys-devel/gcc-2.95.3-r7"

and it worked.

I get the same results when updating sun-jdk (did so recently updating
sun-jdk-1.4.0-r4 to sun-jdk-1.4.0-r5).
Comment 1 Maik Schreiber 2002-06-30 16:37:37 UTC
I forgot to say that this is with Portage 2.0.8.
Comment 2 Dave Nellans 2002-07-05 01:57:03 UTC
i can verify that this happens for me as well...  happens mostly on ebuild
revision updates but sometimes on buxfix, ie 1.1.1 to 1.1.2, revisions when the
api's do not change so packages depending on these should not require the old
version.  this has happened for me since 1.8.x of portage

dave
Comment 3 Maik Schreiber 2002-07-05 05:22:00 UTC
I think this is only happening with packages that do not fall into either of
these two categories:

- the package is a "system" package (/etc/make.profile/packages, lines with
leading "*")
- the package is a "world" package (/var/cache/edb/world)

All those packages that do not fall into either of these categories are simple
dependencies for other packages that can only be found when scanning through
*every* installed package searching for updated dependencies. Only scanning
through "system" or "world" packages is not enough, since a dependency could
also be updated for a non-world, non-system package as well.
Comment 4 Daniel Robbins (RETIRED) gentoo-dev 2002-07-11 03:33:55 UTC
Blizzy, 

see if you can reproduce this with Portage 2.0.11.  If so, reply to this bug;
otherwise close it.
Comment 5 Maik Schreiber 2002-07-11 08:54:51 UTC
Here's what I have found out with Portage 2.0.11:

I made two packages, fake1-1.0 and fake2-1.0. fake2 depends on fake1 (any
version). I installed fake2 using "emerge fake2", pretending I'm not interested
in any dependencies, just that fake2 is installed. Portage correctly installed
fake1-1.0 and fake2-1.0.

I then created fake1-1.1 and fake2-1.1. Now comes the interesting part. "emerge
fake2" installs only fake2-1.1, not fake1-1.1. To the contrary, "emerge -u
fake2" installed fake1-1.1, too.

In any case, "emerge -p clean" showed correct results, including old installed
versions of fake1.

I don't know if Portage is behaving correctly by not paying attention to updated
dependencies when not using the -u flag. Shall I file another bug report?
Comment 6 Maik Schreiber 2002-07-14 01:38:56 UTC
Today I've updated from glibc-2.2.5-r4 to glibc-2.2.5-r5. After that, "emerge -p
clean" did not show anything to be cleaned at all, but glibc clearly is a core
package. This was with Portage 2.0.13 this time.
Comment 7 Maik Schreiber 2002-07-26 13:44:30 UTC
Today with Portage 2.0.18:

Updated from sys-apps/which-2.13 to 2.14. Output from "emerge -p clean" doesn't
show anything in regard to sys-apps/which.
Comment 8 Daniel Robbins (RETIRED) gentoo-dev 2002-07-26 14:00:53 UTC
This should be fixed in Portage 2.0.19.
Comment 9 Maik Schreiber 2002-07-28 07:13:53 UTC
Sorry to reopen this one, but...

Portage 2.0.20: I had dev-java/jikes-1.15 installed, which was also registered
in "world". I then updated to jikes-1.16. "emerge -p clean" doesn't show it, though.
Comment 10 Maik Schreiber 2002-07-28 07:15:31 UTC
This is the output from "emerge -p prune":

>>> These are the packages that I would unmerge:

 app-shells/bash-completion
    selected: 20020624
   protected: 20020727
     omitted: none

 dev-java/jikes
    selected: 1.15
   protected: 1.16
     omitted: none

 sys-libs/db
    selected: 1.85-r1
   protected: 3.2.3h-r4
     omitted: none


As you can see, I even forgot bash-completion, which is also in "world" and
which I've updated yesterday.
Comment 11 Maik Schreiber 2002-07-28 07:33:16 UTC
Portage 2.0.21, output from "emerge -p prune":

>>> These are the packages that I would unmerge:

 app-shells/bash-completion
    selected: 20020624
   protected: 20020727
     omitted: none

 sys-libs/db
    selected: 1.85-r1
   protected: 3.2.9
     omitted: none

 sys-apps/which
    selected: 2.13
   protected: 2.14
     omitted: none

 dev-java/jikes
    selected: 1.15
   protected: 1.16
     omitted: none

 dev-libs/cyrus-sasl
    selected: 1.5.27-r4
   protected: 2.1.5-r2
     omitted: none

 dev-libs/glib
    selected: 1.2.10-r4
   protected: 2.0.4-r1
     omitted: none


Output from "emerge -p clean":

>>> These are the packages that I would unmerge:

>>> No outdated packages were found on your system.
Comment 12 Daniel Robbins (RETIRED) gentoo-dev 2002-07-30 14:38:31 UTC
We don't clean unslotted ebuilds, which is what was confusing blizzy.  I'm
closing this bug.