portage.git
13 years agowhirlpool.py: skip tests during import
Zac Medico [Tue, 4 Oct 2011 16:39:58 +0000 (09:39 -0700)]
whirlpool.py: skip tests during import

13 years agoRepoConfig: sort __slots__
Zac Medico [Tue, 4 Oct 2011 15:33:41 +0000 (08:33 -0700)]
RepoConfig: sort __slots__

13 years agotestManifest: enable manifest-hashes
Zac Medico [Tue, 4 Oct 2011 06:17:22 +0000 (23:17 -0700)]
testManifest: enable manifest-hashes

13 years agorepoman: bail out if unsupported manifest-hashes
Zac Medico [Tue, 4 Oct 2011 05:42:22 +0000 (22:42 -0700)]
repoman: bail out if unsupported manifest-hashes

13 years agobest_match_to_list: order by version number
Zac Medico [Tue, 4 Oct 2011 04:44:46 +0000 (21:44 -0700)]
best_match_to_list: order by version number

This should fix the issue shown in bug 375265, comment #10.

13 years agoSuppress warnings with DeprecationWarning.
Zac Medico [Mon, 3 Oct 2011 20:14:08 +0000 (13:14 -0700)]
Suppress warnings with DeprecationWarning.

These manifest-hashes warnings are irrelevant to regular users, so suppress
them by default.

13 years agoWarn for questionable layout.conf manifest-hashes
Zac Medico [Mon, 3 Oct 2011 18:33:08 +0000 (11:33 -0700)]
Warn for questionable layout.conf manifest-hashes

13 years agomanfest.py: import constants directly
Zac Medico [Mon, 3 Oct 2011 17:42:25 +0000 (10:42 -0700)]
manfest.py: import constants directly

13 years agorepoman: account for GLEP 59 in RMD160 check
Zac Medico [Mon, 3 Oct 2011 10:02:10 +0000 (03:02 -0700)]
repoman: account for GLEP 59 in RMD160 check

13 years agoGLEP 59: use manifest-hashes list in layout.conf
Zac Medico [Mon, 3 Oct 2011 09:42:53 +0000 (02:42 -0700)]
GLEP 59: use manifest-hashes list in layout.conf

The manifest-hashes layout.conf setting simply overrides the hashes
that are generated. When unspecified, the MANIFEST2_HASH_DEFAULTS
constant is used instead (current value contains SHA1, SHA256, and
RMD160).

In order to enable SHA512 and WHIRLPOOL, and drop RMD160 and SHA1,
simply set "manifest-hashes = SHA256 SHA512 WHIRLPOOL" in layout.conf.
As with the previous boolean flags approach, manifest-hashes settings
become redundant and can be removed from layout.conf after a version
of portage with equivalent defaults is stable.

13 years agoImplement GLEP 59 with control via layout.conf.
Zac Medico [Mon, 3 Oct 2011 00:05:30 +0000 (17:05 -0700)]
Implement GLEP 59 with control via layout.conf.

The portage.const changes are derived from an earlier patch that was
submitted by Robin H. Johnson <robbat2@gentoo.org>:

http://archives.gentoo.org/gentoo-portage-dev/msg_911574e7cb615f67e4c21fc75c043f65.xml

This patch has no affect on a repository unless it contains a
metadata/layout.conf file which contains boolean flags that enable or
disable manifest hash types. The plan is to deploy portage with this
patch, and once it has been stabilized, add the following
metadata/layout.conf settings to gentoo-x86:

  manifest-rmd160 = false
  manifest-sha1 = false
  manifest-whirlpool = true

The above settings will become the default settings in a future portage
release, making them redundant and eligible for removal from
layout.conf (in order to avoid cluttering layout.conf with obsolete
information).

Future events:

After WHIRLPOOL is supported in stable portage:
- Add WHIRLPOOL to MANIFEST2_HASH_DEFAULTS.
- Remove SHA1 and RMD160 from MANIFEST2_HASH_*.
- Toggle gentoo-x86/metadata/layout.conf settings to match.

After WHIRLPOOL is supported in stable portage for at least 1 year:
- Change MANIFEST2_REQUIRED_HASH to WHIRLPOOL.
- Remove SHA256 from MANIFEST2_HASH_*.
- Toggle gentoo-x86/metadata/layout.conf settings to match.

After SHA-3 is approved:
- Add new hashes to MANIFEST2_HASH_*.

After SHA-3 is supported in stable portage:
- Toggle gentoo-x86/metadata/layout.conf settings to match.

After layout.conf settings correspond to defaults in stable portage:
- Remove redundant settings from gentoo-x86/metadata/layout.conf.

13 years agoManifest.create(): tweak assume-digests code
Zac Medico [Sun, 2 Oct 2011 23:43:27 +0000 (16:43 -0700)]
Manifest.create(): tweak assume-digests code

If we have a local file, before we assume that we don't need to compute
any digests, make sure that the pre-computed digest types are exactly
the same types that we desire.

13 years agoManifest.create(): pass allow_* to constructor
Zac Medico [Sun, 2 Oct 2011 22:53:39 +0000 (15:53 -0700)]
Manifest.create(): pass allow_* to constructor

This fixes commit f3101b3adce6731790f80f83fafece54b7bd8a63 to ensure
that Manifest.create() works correctly.

13 years agoPrefer slot conflict over blocker display.
Zac Medico [Sun, 2 Oct 2011 20:22:07 +0000 (13:22 -0700)]
Prefer slot conflict over blocker display.

The slot conflict display has better noise reduction than the
unsatisfied blockers display, so skip unsatisfied blockers display if
there are slot conflicts (see bug #385391). Note that this reverses
the logic from bug 159310, since the slot conflict display has evolved
a lot since then.

13 years agoprint_changelog: if no changelogs, no newline
Zac Medico [Sun, 2 Oct 2011 20:09:52 +0000 (13:09 -0700)]
print_changelog: if no changelogs, no newline

This will fix bug #385413.

13 years agodblink._elog_process: handle newlines in messages
Zac Medico [Sun, 2 Oct 2011 19:52:57 +0000 (12:52 -0700)]
dblink._elog_process: handle newlines in messages

This will fix bug #385341.

13 years agochecksum.py: use fchksum.fmd5t directly
Zac Medico [Sun, 2 Oct 2011 06:31:52 +0000 (23:31 -0700)]
checksum.py: use fchksum.fmd5t directly

13 years agochecksum.py: lazily import bundled whirlpool
Zac Medico [Sun, 2 Oct 2011 06:01:17 +0000 (23:01 -0700)]
checksum.py: lazily import bundled whirlpool

13 years agoManifest2 hash backend provider: mhash
Robin H. Johnson [Sat, 1 Oct 2011 07:40:54 +0000 (07:40 +0000)]
Manifest2 hash backend provider: mhash

Offer mhash as a provider for Manifest2 hash generation and validation.
This is important as either of pycrypto or fchksum offer an accelerated
Whirlpool implementation, and hashlib might not offer it. Additionally,
the mhash implementation is accelerated and ships with a rigorious
testsuite.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
13 years agowhirlpool.py: handle xrange for python3
Zac Medico [Sun, 2 Oct 2011 05:42:22 +0000 (22:42 -0700)]
whirlpool.py: handle xrange for python3

13 years agoManifest2 hash: SHA512
Robin H. Johnson [Sat, 1 Oct 2011 07:40:53 +0000 (07:40 +0000)]
Manifest2 hash: SHA512

Provide SHA512 hash algorithm to be used as new Manifest2 hash.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
13 years agoManifest2 hash: Whirlpool
Robin H. Johnson [Sat, 1 Oct 2011 07:40:52 +0000 (07:40 +0000)]
Manifest2 hash: Whirlpool

Provide public-domain implementation of the Whirlpool hash algorithm to
be used as new Manifest2 hash.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
13 years agoRefactor RMD160 hashlib code for less-hardcoding
Robin H. Johnson [Sat, 1 Oct 2011 07:40:51 +0000 (07:40 +0000)]
Refactor RMD160 hashlib code for less-hardcoding

To be used shortly for WHIRLPOOL as well as RMD160.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
13 years agoConvert _generate_hash_function into a class.
Zac Medico [Sun, 2 Oct 2011 05:17:52 +0000 (22:17 -0700)]
Convert _generate_hash_function into a class.

13 years agoConvert create_color_func into a class.
Zac Medico [Sun, 2 Oct 2011 04:58:35 +0000 (21:58 -0700)]
Convert create_color_func into a class.

13 years agoAdd tests for KEYWORDS masking.
Zac Medico [Sun, 2 Oct 2011 02:13:20 +0000 (19:13 -0700)]
Add tests for KEYWORDS masking.

13 years agoKeywordsManager: support ~* in KEYWORDS
Zac Medico [Sun, 2 Oct 2011 02:12:52 +0000 (19:12 -0700)]
KeywordsManager: support ~* in KEYWORDS

This allows ~* in KEYWORDS to be match by any unstable keyword in the
user's configuration, similar to how * in KEYWORDS already matches any
user configuration. Thanks to Daniel Robbins <drobbins@funtoo.org> for
the suggestion.

Also, the warning about * or -* in KEYWORDS is now gone, so that
ebuilds from the funtoo tree will be usable without triggering
warnings like this. If necessary, we can add ways to selectively
enable these kinds of warnings via layout.conf and/or repos.conf.

13 years agodispatch-conf: fix replace-wscomments pattern
Ryan Hill [Sun, 2 Oct 2011 00:34:14 +0000 (17:34 -0700)]
dispatch-conf: fix replace-wscomments pattern

This will fix bug #375613.

13 years agorepos.conf: implement trust-authoritative-cache
Zac Medico [Fri, 30 Sep 2011 22:05:00 +0000 (15:05 -0700)]
repos.conf: implement trust-authoritative-cache

This controls whether or not the layout.conf
"authoritative-cache = true" setting will be trusted for a particular
repo. It can be enabled globally by setting
"trust-authoritative-cache = true" in the [DEFAULT] section of
repos.conf.

13 years agoFix 'authoritative' spelling.
Zac Medico [Fri, 30 Sep 2011 19:08:31 +0000 (12:08 -0700)]
Fix 'authoritative' spelling.

13 years agolayout.conf: allow a repository to state the cache is authorative
Brian Harring [Fri, 30 Sep 2011 09:37:04 +0000 (02:37 -0700)]
layout.conf: allow a repository to state the cache is authorative

By authorative, this means "the cache is accurate; skip validation".  While
a useful hint for a slight speedup in validation, the true gain is for
repositories that are distributed in a fashion that doesn't preserve mtime;
git primarily.  Setting authorative-cache = true results in portage
skipping mtime validation checks for the bundled cache, allowing
for git vcs based repos to distribute a cache.

BUG=chromium-os:21049
TEST=dump a cache into metadata/cache, touch it to now, set layout.conf
     to authorative-cache=true, verify it doesn't generate cache entries
     for that repo.

Change-Id: I92423e679bc171d2411a18d6d3ac22e8ef457753

13 years agodepgraph: tweak virtual transition code
Zac Medico [Fri, 30 Sep 2011 17:04:11 +0000 (10:04 -0700)]
depgraph: tweak virtual transition code

This fixes a false --binpkg-respect-use warning that's triggered by
erroneous USE/IUSE comparison between the new-style virtual and an
old-style virtual match.

13 years agodepgraph: pull in new-style virtuals more
Zac Medico [Fri, 30 Sep 2011 08:30:00 +0000 (01:30 -0700)]
depgraph: pull in new-style virtuals more

This causes new-style virtuals to get pulled in for virtuals that are
already satisfied by installed old-style virtuals. This case is common,
due to PROVIDE being (removed without revision bump) from lots of
ebuilds.

13 years agorepoman: never force unsigned manifest commit v2.2.0_alpha60
Zac Medico [Thu, 29 Sep 2011 16:48:55 +0000 (09:48 -0700)]
repoman: never force unsigned manifest commit

This removes a special case where manifests would first be commited
without signatures for category-level or greater commits. This case
behavior wasn't very useful anyway, and would be a problem if the
unsigned manifests got rejected by a commit hook (as may happen in the
near future).

13 years agotweak "missed updates" code from last commit
Zac Medico [Thu, 29 Sep 2011 01:41:22 +0000 (18:41 -0700)]
tweak "missed updates" code from last commit

13 years agodepgraph: verify "missed updates"
Zac Medico [Thu, 29 Sep 2011 01:10:06 +0000 (18:10 -0700)]
depgraph: verify "missed updates"

Since the change involving slot conflict parent atoms in commit
6cea2091526659521d35be6c8dc7733f69f1a760, we want to check to make
sure we don't display any false positives in the "missed updates".

13 years agodispatch-conf: tweak pager basename comparison
Zac Medico [Thu, 29 Sep 2011 00:36:08 +0000 (17:36 -0700)]
dispatch-conf: tweak pager basename comparison

13 years agodispatch-conf: support PAGER var for bug #384663
Zac Medico [Wed, 28 Sep 2011 18:41:44 +0000 (11:41 -0700)]
dispatch-conf: support PAGER var for bug #384663

13 years agoetc-update: support PAGER env var for bug #384663
Zac Medico [Wed, 28 Sep 2011 17:47:08 +0000 (10:47 -0700)]
etc-update: support PAGER env var for bug #384663

13 years agoarchive-conf: dispatch_conf import bug #384665
Ruggero Morsucci [Wed, 28 Sep 2011 13:50:04 +0000 (06:50 -0700)]
archive-conf: dispatch_conf import bug #384665

13 years agodoebuild: allow_missing_manifests AttributeError
Zac Medico [Wed, 28 Sep 2011 13:46:19 +0000 (06:46 -0700)]
doebuild: allow_missing_manifests AttributeError

13 years agoManifest.write(): tweak unlink logic
Zac Medico [Wed, 28 Sep 2011 06:48:59 +0000 (23:48 -0700)]
Manifest.write(): tweak unlink logic

This narrows the range of possible behaviors, such that the manifest
will always be either written or unlinked, eliminating the possiblity
that a stale manifest will ever be allowed to slip through without
being overwritten or unlinked.

13 years agomanifest: controllable per repo
Brian Harring [Fri, 23 Sep 2011 23:43:28 +0000 (16:43 -0700)]
manifest: controllable per repo

This adds three states to layout.conf key use-manifest; false, true, and strict.

false means "don't use manifests at all"
true means "use and generate manifests, but allow them to be missing"
strict means "manifests must be used everywhere in this repo"

BUG=chromium-os:11308
TEST=repoman manifest usage.

13 years agodepgraph: handle unicode exception for bug 384749
Zac Medico [Wed, 28 Sep 2011 05:26:27 +0000 (22:26 -0700)]
depgraph: handle unicode exception for bug 384749

13 years agomerge: handle \r in file names for bug #384597
Zac Medico [Tue, 27 Sep 2011 16:46:02 +0000 (09:46 -0700)]
merge: handle \r in file names for bug #384597

13 years agoporttree.py: remove unused variables
Zac Medico [Tue, 27 Sep 2011 14:58:26 +0000 (07:58 -0700)]
porttree.py: remove unused variables

13 years agoCleanup unused variables / imports reported by pyflakes.
David James [Tue, 27 Sep 2011 00:48:09 +0000 (17:48 -0700)]
Cleanup unused variables / imports reported by pyflakes.

Change-Id: I92890279dc69974da94cc9a8a5483ddd295512d4

13 years agotests/emerge: call ebuild(1)
Zac Medico [Mon, 26 Sep 2011 19:41:53 +0000 (12:41 -0700)]
tests/emerge: call ebuild(1)

13 years agoportdbapi.xmatch: fix unknown repo / return empty
Zac Medico [Sat, 24 Sep 2011 22:23:29 +0000 (15:23 -0700)]
portdbapi.xmatch: fix unknown repo / return empty

We want to return an empty list for the match-* methods, otherwise an
empty string.

13 years agoportdbapi: deprecate unused 'visible' method
Zac Medico [Sat, 24 Sep 2011 22:03:07 +0000 (15:03 -0700)]
portdbapi: deprecate unused 'visible' method

13 years agoportdbapi.xmatch: combine match-all with others
Zac Medico [Sat, 24 Sep 2011 21:44:36 +0000 (14:44 -0700)]
portdbapi.xmatch: combine match-all with others

This eliminates redundant code.

13 years agoportdbapi.xmatch: combine minimum-all/*-visible
Zac Medico [Sat, 24 Sep 2011 21:31:48 +0000 (14:31 -0700)]
portdbapi.xmatch: combine minimum-all/*-visible

This eliminates redundant code.

13 years agoportdbapi.xmatch: combine *-visible code
Zac Medico [Sat, 24 Sep 2011 21:18:41 +0000 (14:18 -0700)]
portdbapi.xmatch: combine *-visible code

This allows match-visible to avoid calling match-all, which allows it
to avoid an extra loop over all repos.

13 years agoportdbapi.xmatch: optimize minimum-visible
Zac Medico [Sat, 24 Sep 2011 20:58:16 +0000 (13:58 -0700)]
portdbapi.xmatch: optimize minimum-visible

Also, make repoman cache IUSE, since that's required for _match_use to
work effciently. This will eliminate lots of redundant aux_get calls
for repoman, triggered by USE deps.

13 years agodbapi: split _match_use from _iter_match_use
Zac Medico [Sat, 24 Sep 2011 20:47:34 +0000 (13:47 -0700)]
dbapi: split _match_use from _iter_match_use

13 years agoportdbapi: tweak single-tree optimization
Zac Medico [Sat, 24 Sep 2011 20:14:59 +0000 (13:14 -0700)]
portdbapi: tweak single-tree optimization

This optimizes aux_get and cp_list for cases where we only have a
single tree, which is common for repoman and ebuild(1).

13 years agoportdbapi.xmatch: use _visible more
Zac Medico [Sat, 24 Sep 2011 19:50:06 +0000 (12:50 -0700)]
portdbapi.xmatch: use _visible more

13 years agoInvalidate 'no-herd', there will be no special herds.
Michał Górny [Fri, 23 Sep 2011 09:15:35 +0000 (11:15 +0200)]
Invalidate 'no-herd', there will be no special herds.

13 years agoportdbapi: split _visible from _iter_visible
Zac Medico [Sat, 24 Sep 2011 19:27:39 +0000 (12:27 -0700)]
portdbapi: split _visible from _iter_visible

13 years agoportdbapi: move repo loop to _iter_visible
Zac Medico [Sat, 24 Sep 2011 19:05:00 +0000 (12:05 -0700)]
portdbapi: move repo loop to _iter_visible

This allows use to avoid using a set to eliminate duplicates, since we
can break out of the repo loop as soon as a given cpv is found to be
visible.

13 years agopordbapi: split _iter_visible method from visible
Zac Medico [Sat, 24 Sep 2011 18:29:35 +0000 (11:29 -0700)]
pordbapi: split _iter_visible method from visible

13 years agoportdbapi: combine gvisible and visible methods
Zac Medico [Sat, 24 Sep 2011 18:13:14 +0000 (11:13 -0700)]
portdbapi: combine gvisible and visible methods

There's no need to have separate methods, and this allows us to avoid
using separate aux_get calls in each method.

13 years agoportageq best_visible: use match-all-cpv-only
Zac Medico [Fri, 23 Sep 2011 21:00:26 +0000 (14:00 -0700)]
portageq best_visible: use match-all-cpv-only

13 years agoportdbapi.xmatch: deprecate *match-list
Zac Medico [Fri, 23 Sep 2011 20:50:45 +0000 (13:50 -0700)]
portdbapi.xmatch: deprecate *match-list

These don't mesh well with multi-repo support.

13 years agoportdbapi.xmatch: fix minimum-all for multi-repo
Zac Medico [Fri, 23 Sep 2011 20:00:57 +0000 (13:00 -0700)]
portdbapi.xmatch: fix minimum-all for multi-repo

13 years agoFix cp_list mytree argument for match-all.
Zac Medico [Fri, 23 Sep 2011 19:52:58 +0000 (12:52 -0700)]
Fix cp_list mytree argument for match-all.

This is a regression from commit
3d07f74a2fb2e0480e126335f6981218f60da824.

13 years agoinstall_hooks: fix variable name for PORTAGE_CONFIGROOT
Fabian Groffen [Fri, 23 Sep 2011 18:35:29 +0000 (20:35 +0200)]
install_hooks: fix variable name for PORTAGE_CONFIGROOT

in addition, omit the leading slash, since PORTAGE_CONFIGROOT contains a
trailing slash

13 years agoportdbapi.xmatch: fix match-all for multi-repo
Zac Medico [Fri, 23 Sep 2011 18:19:13 +0000 (11:19 -0700)]
portdbapi.xmatch: fix match-all for multi-repo

13 years agoman/emerge.1: fix spelling of behavior
Zac Medico [Fri, 23 Sep 2011 17:56:15 +0000 (10:56 -0700)]
man/emerge.1: fix spelling of behavior

13 years agoRevert "unpack: handle non-gz files from deb2targz"
Zac Medico [Fri, 23 Sep 2011 17:46:38 +0000 (10:46 -0700)]
Revert "unpack: handle non-gz files from deb2targz"

This reverts commit dd7c57ecb90949ce3306394cfe262566b87351ca.
We'll do this in a new EAPI, as discussed in bug #384147.

13 years agounpack: handle non-gz files from deb2targz
Zac Medico [Fri, 23 Sep 2011 17:12:19 +0000 (10:12 -0700)]
unpack: handle non-gz files from deb2targz

This will fix bug #384147.

13 years agoFix a typo.
Arfrever Frehtes Taifersar Arahesis [Fri, 23 Sep 2011 04:03:38 +0000 (06:03 +0200)]
Fix a typo.

13 years agoFix 'shopt: +s: invalid shell option name' error.
Arfrever Frehtes Taifersar Arahesis [Fri, 23 Sep 2011 03:23:01 +0000 (05:23 +0200)]
Fix 'shopt: +s: invalid shell option name' error.

13 years agoportdbapi.xmatch: deprecate list-visible
Zac Medico [Fri, 23 Sep 2011 02:29:53 +0000 (19:29 -0700)]
portdbapi.xmatch: deprecate list-visible

13 years agoFix Atom.with_repo() bugs.
Zac Medico [Fri, 23 Sep 2011 01:54:52 +0000 (18:54 -0700)]
Fix Atom.with_repo() bugs.

13 years agoFix minimum/bestmatch-visible for multi-repo.
Zac Medico [Fri, 23 Sep 2011 01:47:04 +0000 (18:47 -0700)]
Fix minimum/bestmatch-visible for multi-repo.

13 years agoportdbapi: handle multi-repo visiblity
Zac Medico [Fri, 23 Sep 2011 00:53:45 +0000 (17:53 -0700)]
portdbapi: handle multi-repo visiblity

This will fix bug #384063. The xmatch list-visible mode was previously
used to cache a list of all visible cpvs for a given cp, but this is
not useful when there can be duplicate cpvs with different visibility
from multiple repos.

13 years agoAtom: add a with_repo method for adding a repo
Zac Medico [Fri, 23 Sep 2011 00:47:48 +0000 (17:47 -0700)]
Atom: add a with_repo method for adding a repo

13 years agofetch: remove stray print for bug 383859
Zac Medico [Fri, 23 Sep 2011 00:17:28 +0000 (17:17 -0700)]
fetch: remove stray print for bug 383859

13 years agoportageq best_visible: multi-repo support
Zac Medico [Thu, 22 Sep 2011 23:52:47 +0000 (16:52 -0700)]
portageq best_visible: multi-repo support

This will fix bug #384063.

13 years agoTest direct virtual circular dep for bug #384107.
Zac Medico [Thu, 22 Sep 2011 19:06:18 +0000 (12:06 -0700)]
Test direct virtual circular dep for bug #384107.

13 years agoTest || choice circular handling.
Zac Medico [Thu, 22 Sep 2011 18:19:05 +0000 (11:19 -0700)]
Test || choice circular handling.

13 years agoTweak auto --binpkg-respect-use more.
Zac Medico [Thu, 22 Sep 2011 15:44:48 +0000 (08:44 -0700)]
Tweak auto --binpkg-respect-use more.

We don't want to check for --rebuilt-binaries here, unless --usepkg
is also enabled. In fact, we can skip the --rebuilt-binaries check
since people who really want to ensure that binary packages are used
as much as possible will typically specify --usepkgonly (or
--getbinpkgonly which implies --usepkgonly).

13 years agoTweak automatic --binpkg-respect-use behavior.
Zac Medico [Thu, 22 Sep 2011 03:03:03 +0000 (20:03 -0700)]
Tweak automatic --binpkg-respect-use behavior.

If --binpkg-respect-use is not explicitly specified, we enable the
behavior automatically (like requested in bug #297549), as long as it
doesn't strongly conflict with other options that have been specified.
Strongly conflicting options currently include --usepkgonly and
--rebuilt-binaries.

13 years agoMake --binpkg-respect-use=y the default
Sebastian Luther [Thu, 22 Sep 2011 02:04:11 +0000 (19:04 -0700)]
Make --binpkg-respect-use=y the default

Explicitly stating --binpkg-respect-use=y will disable the ignored
binary warning. This will fix bug #297549.

13 years agoWarn about ignored binary packages with non matching USE
Sebastian Luther [Thu, 22 Sep 2011 01:59:17 +0000 (18:59 -0700)]
Warn about ignored binary packages with non matching USE

13 years agoadd install hooks
Brian Harring [Wed, 21 Sep 2011 22:50:28 +0000 (15:50 -0700)]
add install hooks

13 years agoemerge: add --complete-graph-if-new-ver < y | n >
Zac Medico [Wed, 21 Sep 2011 19:32:19 +0000 (12:32 -0700)]
emerge: add --complete-graph-if-new-ver < y | n >

Trigger the --complete-graph behavior if an installed package version will
change (upgrade or downgrade). This option is enabled by default.

13 years agoPoint users to the man page instead of duplicating it in --help
Sebastian Luther [Wed, 21 Sep 2011 14:11:06 +0000 (07:11 -0700)]
Point users to the man page instead of duplicating it in --help

13 years agoautounmask: Always use unresticted atoms for license and USE changes
Sebastian Luther [Wed, 21 Sep 2011 12:23:44 +0000 (14:23 +0200)]
autounmask: Always use unresticted atoms for license and USE changes

See bug 379333.

13 years agoReject inconsistent backtrack parameters
Sebastian Luther [Mon, 19 Sep 2011 13:07:08 +0000 (15:07 +0200)]
Reject inconsistent backtrack parameters

If backtracking masks a package that caused another package to
be masked, we declare this backtracking node as invalid. The
backtracker should be able to find another node that gives a
valid solution if one exists. This fixes bug 375573.

13 years agoDocument ** keyword for --autounmask-keep-masks.
Zac Medico [Mon, 19 Sep 2011 16:03:24 +0000 (09:03 -0700)]
Document ** keyword for --autounmask-keep-masks.

13 years agoSuggest --autounmask-keep-masks for ** keyword.
Zac Medico [Mon, 19 Sep 2011 15:53:55 +0000 (08:53 -0700)]
Suggest --autounmask-keep-masks for ** keyword.

13 years agoSuggest --autounmask-keep-masks instead of --autounmask=n
Sebastian Luther [Mon, 19 Sep 2011 11:05:23 +0000 (13:05 +0200)]
Suggest --autounmask-keep-masks instead of --autounmask=n

Currently emerge suggests --autounmask=n if any configuration
change is proposed. With this patch it will print a suggestion
only for mask changes, as these are the changes people complain
most about. It will suggest --autounmask-keep-masks in this case.

13 years agoautounmask: Add --autounmask-keep-masks option
Sebastian Luther [Mon, 19 Sep 2011 14:32:08 +0000 (07:32 -0700)]
autounmask: Add --autounmask-keep-masks option

Disables creation of p.unmask entries to allow users
to insist on their masks and hope for another conflict
resolution (i.e. missed update). This fixes bug 372485.

13 years agoautounmask: Add --autounmask-unrestricted-atoms option
Sebastian Luther [Mon, 19 Sep 2011 11:45:35 +0000 (13:45 +0200)]
autounmask: Add --autounmask-unrestricted-atoms option

The default behavior of --autounmask is now changed back to
the original one, namely to use '=' operators. The
--autounmask-unrestricted-atoms option allows the use of '>='
operators whenever possible. This addresses the issues raised
in bugs 372405, 374331 and 379333.

13 years agobin/ebuild: simplify PORTDIR_OVERLAY query v2.2.0_alpha59
Zac Medico [Mon, 19 Sep 2011 03:17:44 +0000 (20:17 -0700)]
bin/ebuild: simplify PORTDIR_OVERLAY query

There's no need to query os.environ here, because portage.settings
will inherit the value automatically.

13 years agoTest --prune with virtual slots.
Zac Medico [Mon, 19 Sep 2011 03:05:35 +0000 (20:05 -0700)]
Test --prune with virtual slots.

13 years agoenv_update: add more vardbapi fallback code
Zac Medico [Sun, 18 Sep 2011 23:45:20 +0000 (16:45 -0700)]
env_update: add more vardbapi fallback code

For API consumers that call this function without the vardbapi
parameter, it whould continue to work correctly in all the cases
that worked before the vardbapi was added.

13 years agoenv_update: use global vardbapi as fallback
Zac Medico [Sun, 18 Sep 2011 22:47:45 +0000 (15:47 -0700)]
env_update: use global vardbapi as fallback