If you emerge a package that is masked using keywords, and after that do a pretend update world while not allowing testing portage will try to downgrade to a non-testing version. I believe this behaviour is inconsistent with the old-style masks (/usr/portage/profile/package.mask), and also undesirable. An option to choose between behaviour is also possible.
i'd vote no on changing current functionality, but thats me ;)
I'd prefer changing the behaviour. Possibly so that it can be configured. The reason for this is: I don't object to testing packages out. For some packages though, I just want them to work. I'm just not fond of testing out the latest/greatest gcc, the moment it arives. This means I don't want ~x86 in my default ACCEPT_KEYWORDS. Sometimes I just run: ACCEPT_KEYWORD="~x86" emerge -p -u world and select those packages I wish to check out. In general I don't really remember which packages I emerged with testing keywords. So when I want to do a general update I must guess at which packages I merged testing, and not select those from to emerge (I do a pretend first). If the behaviour would be changed so that keyword-masked packages(for the right arch) would not be downgraded, it would make things a lot easier for me, and I guess a lot of other gentoo users too. (I know of one guy from the gentoo-user list)
Sticky variables are coming. This will wait until then.
*** Bug 11570 has been marked as a duplicate of this bug. ***
*** Bug 12156 has been marked as a duplicate of this bug. ***
*** Bug 12634 has been marked as a duplicate of this bug. ***
*** Bug 11012 has been marked as a duplicate of this bug. ***
*** Bug 16874 has been marked as a duplicate of this bug. ***
Created attachment 15607 [details, diff] patch for portage-2.0.49_pre16 Small patch to read a file /etc/portage/package.keyword and disable ~arch masking for packages in this file. It's a adaption from the patch on bug 13616. Format for package.keyword is one cat/pkg per line (no version information).
Was 'emerge {--update , -U} available when this bug was submitted? Anyway, the patch should be obsoleted as it is now incorporated into the patch for 13616: ------- Additional Comment #60 From Max Kalika 2003-08-07 14:14 EST ------- Created an attachment (id=15715) portage.py-2.0.49_pre17-per_package_use_flags.patch Here's the newest and shiniest version with the following changes: - fix dictionaries/lists trying to make it into the environment - fix per-package USE overriding global when global contains -* - enable per-package ACCEPT_KEYWORDS functionality by creating a /etc/portage/package.keywords with the following format: [mod]cat/pkg[-version] accept_keyword1 [accept_keyword2 ...] Where optional "mod" is the standard portage package range modifier (<=>).
*** This bug has been marked as a duplicate of 13616 ***