Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 203067 - app-portage/eix: REDUNDANT_IF_MIXED should be defaultly set to "some-installed"
Summary: app-portage/eix: REDUNDANT_IF_MIXED should be defaultly set to "some-installed"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: Stefan Schweizer (RETIRED)
URL:
Whiteboard:
Keywords: InVCS
: 211192 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-12-22 20:22 UTC by Arfrever Frehtes Taifersar Arahesis (RETIRED)
Modified: 2008-02-24 10:48 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2007-12-22 20:22:51 UTC
app-portage/eix: eix-test-obsolete incorrectly matches packages with "**" in /etc/portage/package.keywords.

$ eix-test-obsolete

No non-matching entries in /etc/portage/package.keywords.
No non-matching entries in /etc/portage/package.mask.
No non-matching entries in /etc/portage/package.unmask.
No non-matching or empty entries in /etc/portage/package.use.
No non-matching or empty entries in /etc/portage/package.cflags.
The names of all installed packages are in the database.


Redundant in /etc/portage/package.keywords:

[I] sys-devel/binutils (2.18.50.0.3@08.11.2007): Tools necessary to build programs

No redundant entries in /etc/portage/package.mask (or test switched off).
No redundant entries in /etc/portage/package.unmask (or test switched off).
No redundant entries in /etc/portage/package.use (or test switched off).
No redundant entries in /etc/portage/package.cflags (or test switched off).
No uninstalled entries in /etc/portage/package.keywords (or test switched off).
No uninstalled entries in /etc/portage/package.mask (or test switched off).
No uninstalled entries in /etc/portage/package.unmask (or test switched off).
No uninstalled entries in /etc/portage/package.use (or test switched off).
No uninstalled entries in /etc/portage/package.cflags (or test switched off).
All installed versions of packages are in the database (or test switched off).
$ cat /etc/portage/package.keywords
sys-devel/binutils **
$ grep KEYWORDS /usr/portage/sys-devel/binutils/binutils-2.18.50.0.3.ebuild
KEYWORDS=""
$ 

If I delete this entry from package.keywords, then Portage will want to downgrade Binutils.
Comment 1 Martin Väth 2007-12-23 16:59:48 UTC
It's not a bug, it's a feature :)

What is triggering the match is
  REDUNDANT_IF_MIXED=some

More precisely, the "some" refers to some of the stable versions (which are stabilized by your ACCEPT_KEYWORDS=x86) - for these versions both keywords x86 and ** apply, and so you have some sort of redundancy.

Solution: Either set
   REDUNDANT_IF_MIXED=some-installed
or something similar, or let '**' apply only to the versions which you mean, i.e. edit you /etc/portage/package.keywords to contain only e.g.
   >=sys-devel/binutils-2.18.50
Comment 2 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2007-12-23 18:14:35 UTC
(In reply to comment #1)
> It's not a bug, it's a feature :)
> 
> What is triggering the match is
>   REDUNDANT_IF_MIXED=some
> 
> More precisely, the "some" refers to some of the stable versions (which are
> stabilized by your ACCEPT_KEYWORDS=x86)

I don't have any stable versions installed.
ACCEPT_KEYWORDS="x86 ~x86" doesn't apply to 2.18.50.0.3 which has KEYWORDS="".

$ eix ^binutils$
[I] sys-devel/binutils
     Available versions:  [P](~*)2.15 2.16.1-r3 (*)2.16.91.0.6 2.17 2.17-r1 (~)2.17-r2 (*)2.17.50.0.12 (*)2.17.50.0.16 (*)2.17.50.0.17 (~)2.18 2.18-r1 (**)2.18.50.0.1 (**)2.18.50.0.2 (**)2.18.50.0.3 {multislot multitarget nls test vanilla}
     Installed versions:  2.18.50.0.3(18:36:50 08.11.2007)(nls -multislot -multitarget -test -vanilla)
     Homepage:            http://sources.redhat.com/binutils/
     Description:         Tools necessary to build programs

$ 
Comment 3 Martin Väth 2007-12-24 00:56:35 UTC
(In reply to comment #2)
> (In reply to comment #1)
> >   REDUNDANT_IF_MIXED=some
> 
> I don't have any stable versions installed.

"some" (which is the default) does not only apply to installed versions.
If you want that the "mixed" test only applies to installed versions, set
  REDUNDANT_IF_MIXED=some-installed
Comment 4 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2007-12-24 17:05:07 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > (In reply to comment #1)
> > >   REDUNDANT_IF_MIXED=some
> > 
> > I don't have any stable versions installed.
> 
> "some" (which is the default) does not only apply to installed versions.
> If you want that the "mixed" test only applies to installed versions, set
>   REDUNDANT_IF_MIXED=some-installed

OK. REDUNDANT_IF_MIXED shouldn't be defaultly set to entirely useless value. It should be defaultly set to "some-installed".
Comment 5 Martin Väth 2007-12-24 19:27:17 UTC
(In reply to comment #4)
> REDUNDANT_IF_MIXED shouldn't be defaultly set to entirely useless value.

It is not entirely useless, as it really reports some sort of redundancy which you might miss otherwise. (In fact, your "unnecessary" unmasking of a stable version *is* some sort of reduncancy - just think of the case that this stable version might be a different slot...)

It is often really a matter of taste what somebody considers as redundant - that's why there are so many customizations made available for this feature (in fact, I even have REDUNDANT_IF_MIXED=false in my personal settings since I like to unmask some packages not officially supported by amd64 yet with "~x86 x86 ~amd64" which would always be matched by REDUNDANT_IF_MIXED).

The policy for the REDUNDANT_IF-defaults is to report anything which by some sane way might possibly be considered as some sort of redundancy - at the risk of some "false" alerts. The advantage is that at least this policy is very consistent and easy to remember, so there are no plans to change it...
Comment 6 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2008-02-12 13:49:07 UTC
REDUNDANT_IF_MIXED="false" since r541.
Comment 7 Jakub Moc (RETIRED) gentoo-dev 2008-02-23 19:58:12 UTC
Please don't resolve bugs unfixed in CVS.
Comment 8 Jakub Moc (RETIRED) gentoo-dev 2008-02-23 19:58:35 UTC
*** Bug 211192 has been marked as a duplicate of this bug. ***
Comment 9 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2008-02-23 20:02:06 UTC
$ svn log -r541 https://svn.gentooexperimental.org/eix
------------------------------------------------------------------------
r541 | martin.vaeth | 2008-02-10 21:22:10 +0100 (nie, 10.02.2008) | 6 lines

Make REDUNDANT_IF_MIXED=false the default, see
http://bugs.gentoo.org/show_bug.cgi?id=203067
Make $((...)) tests more compatible for "bad" shells.
Fix some warning of IRIX' compiler.
Minor cosmetic changes.

------------------------------------------------------------------------
$ 

eix-0.10.5 was released on 2008-02-21, so it probably contains the change which was committed on 2008-02-10.
Comment 10 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2008-02-23 20:09:55 UTC
$ svn log -vr558 https://svn.gentooexperimental.org/eix
------------------------------------------------------------------------
r558 | martin.vaeth | 2008-02-21 19:34:04 +0100 (czw, 21.02.2008) | 1 line
Zmodyfikowane ścieżki:
   A /tags/release-0.10.5 (z /trunk:557)

Tagging the 0.10.5 release of the eix project
------------------------------------------------------------------------
$ 
Comment 11 Jakub Moc (RETIRED) gentoo-dev 2008-02-23 21:09:53 UTC
(In reply to comment #9)
> eix-0.10.5 was released on 2008-02-21, so it probably contains the change which
> was committed on 2008-02-10.

Clearly not according to bug 211192 

Comment 12 Martin Väth 2008-02-24 08:54:00 UTC
Sorry for my late reply. The change *is* in eix-0.10.4 and 0.10.5.
In bug 211192 the change had no effect, because an old /etc/eixrc was used,
thus overriding the new defaults by the old ones.