portage.git
16 years agoFix the 'inherit.autotools' check to account for apache-2_src_unpack()
Zac Medico [Mon, 16 Jun 2008 10:54:51 +0000 (10:54 -0000)]
Fix the 'inherit.autotools' check to account for apache-2_src_unpack()
calling eautoreconf. (trunk r10653)

svn path=/main/branches/2.1.2/; revision=10664

16 years agoAdd two new build log qa checks, suggested by Diego Pettenò:
Zac Medico [Mon, 16 Jun 2008 10:47:30 +0000 (10:47 -0000)]
Add two new build log qa checks, suggested by Diego Pettenò:

 * Detect automake "maintainer mode". See
   http://www.gentoo.org/proj/en/qa/autofailure.xml for more information.

 * Detect "Unrecognized options" messages from configure scripts.

(trunk r10652)

svn path=/main/branches/2.1.2/; revision=10663

16 years agoPass missing "installed" parameter into Package constructor. (trunk r10651)
Zac Medico [Mon, 16 Jun 2008 10:33:08 +0000 (10:33 -0000)]
Pass missing "installed" parameter into Package constructor. (trunk r10651)

svn path=/main/branches/2.1.2/; revision=10662

16 years agoFix config._accept_chost_re so it's only an instance variable.
Zac Medico [Sun, 15 Jun 2008 04:51:12 +0000 (04:51 -0000)]
Fix config._accept_chost_re so it's only an instance variable.
(trunk r10656)

svn path=/main/branches/2.1.2/; revision=10657

16 years agoAdd support for and ACCEPT_CHOSTS variable that controls masking behavior
Zac Medico [Sun, 15 Jun 2008 04:38:35 +0000 (04:38 -0000)]
Add support for and ACCEPT_CHOSTS variable that controls masking behavior
for binary packages wrt CHOST.  The variable is a space separated list of
chosts. It support regular expressions, so if the actual chost contains
any special characters then the user must escape them when setting
ACCEPT_CHOSTS. (trunk r10654)

svn path=/main/branches/2.1.2/; revision=10655

16 years agoHandle InvalidDependString in _package_cache.__setitem__(). (trunk r10648) v2.1.5.5
Zac Medico [Wed, 11 Jun 2008 09:36:18 +0000 (09:36 -0000)]
Handle InvalidDependString in _package_cache.__setitem__(). (trunk r10648)

svn path=/main/branches/2.1.2/; revision=10649

16 years agoBug #225767 - Suppress warnings for installed packages masked by keywords
Zac Medico [Wed, 11 Jun 2008 09:20:51 +0000 (09:20 -0000)]
Bug #225767 - Suppress warnings for installed packages masked by keywords
if there is an equivalent ebuild in the portage tree (same cpv) with
visible keywords. (trunk r10643:10646)

svn path=/main/branches/2.1.2/; revision=10647

16 years agoUse spawn() instead of system(). (trunk r10642)
Zac Medico [Wed, 11 Jun 2008 03:49:52 +0000 (03:49 -0000)]
Use spawn() instead of system(). (trunk r10642)

svn path=/main/branches/2.1.2/; revision=10643

16 years agoAdd another sanity check in the owners cache. (trunk r10640)
Zac Medico [Tue, 10 Jun 2008 05:34:55 +0000 (05:34 -0000)]
Add another sanity check in the owners cache. (trunk r10640)

svn path=/main/branches/2.1.2/; revision=10641

16 years agoUse isinstance() instead of handling TypeError. (trunk r10638)
Zac Medico [Tue, 10 Jun 2008 04:50:25 +0000 (04:50 -0000)]
Use isinstance() instead of handling TypeError. (trunk r10638)

svn path=/main/branches/2.1.2/; revision=10639

16 years agoBug #225285 - Allow digestcheck() to succeed when the Manifest is empty and
Zac Medico [Tue, 10 Jun 2008 04:17:52 +0000 (04:17 -0000)]
Bug #225285 - Allow digestcheck() to succeed when the Manifest is empty and
strict mode is disabled. (trunk r10636)

svn path=/main/branches/2.1.2/; revision=10637

16 years agoAdd some sanity checks and error tolerance in the owners cache.
Zac Medico [Tue, 10 Jun 2008 03:33:13 +0000 (03:33 -0000)]
Add some sanity checks and error tolerance in the owners cache.
(trunk r10633)

svn path=/main/branches/2.1.2/; revision=10634

16 years agoFix typo. (trunk r10631)
Zac Medico [Tue, 10 Jun 2008 02:14:39 +0000 (02:14 -0000)]
Fix typo. (trunk r10631)

svn path=/main/branches/2.1.2/; revision=10632

16 years agoUse pkg.mtime instead of calling stat().
Zac Medico [Tue, 10 Jun 2008 01:19:15 +0000 (01:19 -0000)]
Use pkg.mtime instead of calling stat().

svn path=/main/branches/2.1.2/; revision=10630

16 years agoFix typo. (trunk r10628)
Zac Medico [Tue, 10 Jun 2008 01:07:54 +0000 (01:07 -0000)]
Fix typo. (trunk r10628)

svn path=/main/branches/2.1.2/; revision=10629

16 years agoFix missing initialization. (trunk r10626)
Zac Medico [Mon, 9 Jun 2008 23:25:47 +0000 (23:25 -0000)]
Fix missing initialization. (trunk r10626)

svn path=/main/branches/2.1.2/; revision=10627

16 years agoAdd CONTENTS indexing support for optimization of owner lookups. The
Zac Medico [Mon, 9 Jun 2008 15:34:21 +0000 (15:34 -0000)]
Add CONTENTS indexing support for optimization of owner lookups. The
vardbapi cache maintains a hash table (inside vdb_metadata.pickle)
that serves to index package contents by mapping the basename of file
to a list of possible packages that own it. This is used to optimize
owner lookups by narrowing the search down to a smaller number of
packages. It increases the size of vdb_metadata.pickle by approximately
30% and it's used in the following cases:

 * When an unexpected file collision occurs (whether
   or not collision-protect is enabled)

 * `emerge <filename>`

 * `portageq owners`

(trunk r10609)

svn path=/main/branches/2.1.2/; revision=10622

16 years agoWhen inside fakeroot, directories with portage's gid appear
Zac Medico [Mon, 9 Jun 2008 15:17:18 +0000 (15:17 -0000)]
When inside fakeroot, directories with portage's gid appear
to have root's gid. Therefore, use root's gid instead of
portage's gid to avoid spurrious permissions adjustments
when inside fakeroot. (trunk r10608)

svn path=/main/branches/2.1.2/; revision=10620

16 years agoBug #225285 - Allow digestcheck() to succeed when the Manifest is missing
Zac Medico [Mon, 9 Jun 2008 15:13:35 +0000 (15:13 -0000)]
Bug #225285 - Allow digestcheck() to succeed when the Manifest is missing
and strict mode is disabled. (trunk r10604)

svn path=/main/branches/2.1.2/; revision=10619

16 years agoMake portdbapi.aux_get() return float type for _mtime_. (trunk r10603)
Zac Medico [Mon, 9 Jun 2008 15:11:42 +0000 (15:11 -0000)]
Make portdbapi.aux_get() return float type for _mtime_. (trunk r10603)

svn path=/main/branches/2.1.2/; revision=10618

16 years agoAdd additional functions such as eaclocal and eautoheader to the
Zac Medico [Mon, 9 Jun 2008 15:09:42 +0000 (15:09 -0000)]
Add additional functions such as eaclocal and eautoheader to the
inherit.autotools regex. Thanks to Arfrever. (trunk r10602)

svn path=/main/branches/2.1.2/; revision=10617

16 years agoMake repoman pass Package instances into run_checks(), so that the checks
Zac Medico [Mon, 9 Jun 2008 15:08:01 +0000 (15:08 -0000)]
Make repoman pass Package instances into run_checks(), so that the checks
can use the Package.mtime and inherited attributes. (trunk r10599:10601)

svn path=/main/branches/2.1.2/; revision=10616

16 years agoBug #224271 - New check 'IUSE.undefined', renamed from generic
Zac Medico [Mon, 9 Jun 2008 14:36:04 +0000 (14:36 -0000)]
Bug #224271 - New check 'IUSE.undefined', renamed from generic
"ebuild.minorsyn'. (trunk r10593)

svn path=/main/branches/2.1.2/; revision=10615

16 years agoAs suggested by Flameeyes, add a new 'inherit.autotools' check which warns
Zac Medico [Mon, 9 Jun 2008 14:34:05 +0000 (14:34 -0000)]
As suggested by Flameeyes, add a new 'inherit.autotools' check which warns
when autotools has been inherited but none of the eautomake, eautoconf or
eautoreconf functions are called like they are supposed to be.
(trunk r10592)

svn path=/main/branches/2.1.2/; revision=10614

16 years agoremove old/unused gen_wrapper function (trunk r10591)
Zac Medico [Mon, 9 Jun 2008 14:26:47 +0000 (14:26 -0000)]
remove old/unused gen_wrapper function (trunk r10591)

svn path=/main/branches/2.1.2/; revision=10613

16 years agoAdd Package.counter and mtime attributes. (trunk r10587)
Zac Medico [Mon, 9 Jun 2008 14:22:44 +0000 (14:22 -0000)]
Add Package.counter and mtime attributes. (trunk r10587)

svn path=/main/branches/2.1.2/; revision=10611

16 years agoAdd vardbapi.aux_get() support for an "_mtime_" value which corresponds to
Zac Medico [Mon, 9 Jun 2008 14:20:45 +0000 (14:20 -0000)]
Add vardbapi.aux_get() support for an "_mtime_" value which corresponds to
the installed package directory's mtime (numeric value from stat result).
This value can be used to validate indexes or caches used in the optimization
of vdb query operations for various types of package metadata such as
dependencies and file contents. (trunk r10586)

svn path=/main/branches/2.1.2/; revision=10610

16 years agoInside, create_trees(), pass target_root="/" into the config constructor
Zac Medico [Sat, 7 Jun 2008 23:52:19 +0000 (23:52 -0000)]
Inside, create_trees(), pass target_root="/" into the config constructor
when necessary to override the setting in make.conf. (trunk r10598)

svn path=/main/branches/2.1.2/; revision=10599

16 years agoValidate ROOT from make.conf. (trunk r10596)
Zac Medico [Sat, 7 Jun 2008 22:51:52 +0000 (22:51 -0000)]
Validate ROOT from make.conf. (trunk r10596)

svn path=/main/branches/2.1.2/; revision=10597

16 years agoMake load_emerge_config() filter out empty PORTAGE_CONFIGROOT and ROOT
Zac Medico [Sat, 7 Jun 2008 22:42:44 +0000 (22:42 -0000)]
Make load_emerge_config() filter out empty PORTAGE_CONFIGROOT and ROOT
values, and those containing only whitespace. (trunk r10594)

svn path=/main/branches/2.1.2/; revision=10595

16 years agoBug #224271 - Add a 'IUSE is not defined' ebuild.minorsyn warning.
Zac Medico [Sat, 7 Jun 2008 09:28:08 +0000 (09:28 -0000)]
Bug #224271 - Add a 'IUSE is not defined' ebuild.minorsyn warning.
(trunk r10589)

svn path=/main/branches/2.1.2/; revision=10590

16 years agoBug #224713 - Avoid TypeError when make.conf is missing: v2.1.5.4
Zac Medico [Wed, 4 Jun 2008 23:51:57 +0000 (23:51 -0000)]
Bug #224713 - Avoid TypeError when make.conf is missing:
TypeError: argument of type 'NoneType' is not iterable
(trunk r10582)

svn path=/main/branches/2.1.2/; revision=10583

16 years agoMention PORTAGE_RO_DISTDIRS in the DISTDIR docs. (trunk r10580)
Zac Medico [Wed, 4 Jun 2008 21:15:58 +0000 (21:15 -0000)]
Mention PORTAGE_RO_DISTDIRS in the DISTDIR docs. (trunk r10580)

svn path=/main/branches/2.1.2/; revision=10581

16 years agoUse sets for more accurate cache modification counts in BlockerCache and
Zac Medico [Wed, 4 Jun 2008 20:41:35 +0000 (20:41 -0000)]
Use sets for more accurate cache modification counts in BlockerCache and
vardbapi. (trunk r10578)

svn path=/main/branches/2.1.2/; revision=10579

16 years agoUpdate --depclean and package.provided docs to indicate interaction
Zac Medico [Wed, 4 Jun 2008 02:01:00 +0000 (02:01 -0000)]
Update --depclean and package.provided docs to indicate interaction
between them. (trunk r10563)

svn path=/main/branches/2.1.2/; revision=10573

16 years agoFix regex for compatibility with the regex implementation from FreeBSD's
Zac Medico [Wed, 4 Jun 2008 01:53:47 +0000 (01:53 -0000)]
Fix regex for compatibility with the regex implementation from FreeBSD's
libc (used by bash on FreeBSD). Thanks to Alexis Ballier <aballier@g.o>
for the patch. (trunk r10558)

svn path=/main/branches/2.1.2/; revision=10572

16 years agoTweak the installed masked code from bug #223447 so that it less noisy
Zac Medico [Wed, 4 Jun 2008 01:49:25 +0000 (01:49 -0000)]
Tweak the installed masked code from bug #223447 so that it less noisy
by suppressing masking messages for packages that haven't been pulled
into the current dependency graph. (trunk r10553)

svn path=/main/branches/2.1.2/; revision=10571

16 years agoUse float mtime instead of int for finer granularity in vardbapi.match()
Zac Medico [Wed, 4 Jun 2008 01:42:16 +0000 (01:42 -0000)]
Use float mtime instead of int for finer granularity in vardbapi.match()
cache staleness checks. (trunk r10550)

svn path=/main/branches/2.1.2/; revision=10570

16 years agoAdd modification threshold for BlockerCache.flush(), to avoid wasteful IO.
Zac Medico [Wed, 4 Jun 2008 01:37:28 +0000 (01:37 -0000)]
Add modification threshold for BlockerCache.flush(), to avoid wasteful IO.
(trunk r10549)

svn path=/main/branches/2.1.2/; revision=10569

16 years agoFix vardbapi.flush_cache() so that it only updates the cache when the
Zac Medico [Wed, 4 Jun 2008 01:23:05 +0000 (01:23 -0000)]
Fix vardbapi.flush_cache() so that it only updates the cache when the
number of uncached packages reaches a certain threshold (currently 5).
The cache file can be several megabytes in size, so updating it for
every vdb change is wasteful. (trunk r10548)

svn path=/main/branches/2.1.2/; revision=10568

16 years agoFit typo. (trunk r10566)
Zac Medico [Wed, 4 Jun 2008 01:08:08 +0000 (01:08 -0000)]
Fit typo. (trunk r10566)

svn path=/main/branches/2.1.2/; revision=10567

16 years agoAdd support for a PORTAGE_RO_DISTDIRS variable. When a given file does not
Zac Medico [Wed, 4 Jun 2008 01:03:08 +0000 (01:03 -0000)]
Add support for a PORTAGE_RO_DISTDIRS variable. When a given file does not
exist in DISTDIR, search for the file in this list of directories. Search
order is from left to right. Note that the current implementation works by
creating a symlink inside DISTDIR, but that may change in the future.
(trunk r10547, r10550:10552, and r10564)

svn path=/main/branches/2.1.2/; revision=10565

16 years agoFix typo. (trunk r10538) v2.1.5.3
Zac Medico [Sun, 1 Jun 2008 08:33:18 +0000 (08:33 -0000)]
Fix typo. (trunk r10538)

svn path=/main/branches/2.1.2/; revision=10539

16 years agoMention masked packages in another --resume message. (trunk r10535)
Zac Medico [Sun, 1 Jun 2008 05:01:45 +0000 (05:01 -0000)]
Mention masked packages in another --resume message. (trunk r10535)

svn path=/main/branches/2.1.2/; revision=10537

16 years agoReference depgraph.UnsatisfiedResumeDep instead of mydepgraph since the
Zac Medico [Sun, 1 Jun 2008 05:00:53 +0000 (05:00 -0000)]
Reference depgraph.UnsatisfiedResumeDep instead of mydepgraph since the
latter can trigger an UnboundLocalError in some cases (^C for example).
(trunk r10533)

svn path=/main/branches/2.1.2/; revision=10536

16 years agoUpdate the --skipfirst dropped packages warning to mention "masking"
Zac Medico [Sun, 1 Jun 2008 04:52:17 +0000 (04:52 -0000)]
Update the --skipfirst dropped packages warning to mention "masking"
in addition to unsatisfied dependencies.

svn path=/main/branches/2.1.2/; revision=10534

16 years agoUpdate the UnsatisfiedResumeDep display to distinguish masked packages
Zac Medico [Sun, 1 Jun 2008 04:40:07 +0000 (04:40 -0000)]
Update the UnsatisfiedResumeDep display to distinguish masked packages
from those with unsatisfied dependencies. (trunk r10529)

svn path=/main/branches/2.1.2/; revision=10531

16 years agoRevert changes wrt argument atoms in the previous commit since it's not
Zac Medico [Sun, 1 Jun 2008 04:38:06 +0000 (04:38 -0000)]
Revert changes wrt argument atoms in the previous commit since it's not
really useful. (trunk r10528)

svn path=/main/branches/2.1.2/; revision=10530

16 years agoMake --skipfirst tolerate masked packages by dropping them (similar to
Zac Medico [Sun, 1 Jun 2008 01:41:04 +0000 (01:41 -0000)]
Make --skipfirst tolerate masked packages by dropping them (similar to
how it would drop a package that has an unsatisfied dependency).
(trunk r10526)

svn path=/main/branches/2.1.2/; revision=10527

16 years agoMake PackageSet._setAtoms() use existing Atom instances when available.
Zac Medico [Sat, 31 May 2008 23:16:16 +0000 (23:16 -0000)]
Make PackageSet._setAtoms() use existing Atom instances when available.
(trunk r10523)

svn path=/main/branches/2.1.2/; revision=10524

16 years agoFix create_world_atom() to take a Package instance in it's arguments.
Zac Medico [Sat, 31 May 2008 20:15:45 +0000 (20:15 -0000)]
Fix create_world_atom() to take a Package instance in it's arguments.
(trunk r10521)

svn path=/main/branches/2.1.2/; revision=10522

16 years agoAdd some isvalidatom() test cases with "null" and missing category.
Zac Medico [Sat, 31 May 2008 09:37:28 +0000 (09:37 -0000)]
Add some isvalidatom() test cases with "null" and missing category.
(trunk r10519)

svn path=/main/branches/2.1.2/; revision=10520

16 years ago* Tweak isvalidatom() to treat "null" category as valid, but missing category
Zac Medico [Sat, 31 May 2008 09:17:07 +0000 (09:17 -0000)]
* Tweak isvalidatom() to treat "null" category as valid, but missing category
  as invalid (previously both where treated as invalid).

* Fix a spot inside emerge's unmerge() function that sometimes generates
  invalid atoms by adding an unnecessary "=" to the front. Even when in
  cases that resulted in a valid atom here, adding the "=" was redundant
  because dep_expand() does that automatically now (for backward compat).
(trunk r10516)

svn path=/main/branches/2.1.2/; revision=10517

16 years agoOptimize the new --skipfirst code so that in only has to build
Zac Medico [Sat, 31 May 2008 02:08:25 +0000 (02:08 -0000)]
Optimize the new --skipfirst code so that in only has to build
a new depgraph one time when there are unsatisfied deps. This
works by recursively traversing the digraph to remove the parent
packages whose deps become unsatisfied when their dependencies are
pruned from the mergelist. (trunk r10512:10514)

svn path=/main/branches/2.1.2/; revision=10515

16 years agoFix PackageSet.findAtomForPackage() to find the most specific atom since
Zac Medico [Fri, 30 May 2008 23:53:13 +0000 (23:53 -0000)]
Fix PackageSet.findAtomForPackage() to find the most specific atom since
it can affect behavior when deciding whether or not to add a slot atom to
the world file. (trunk r10511)

svn path=/main/branches/2.1.2/; revision=10512

16 years agoNow that dbapi._iter_match() is guaranteed to return a real iterator with
Zac Medico [Fri, 30 May 2008 21:20:11 +0000 (21:20 -0000)]
Now that dbapi._iter_match() is guaranteed to return a real iterator with
a next() method, we can just call next() and handle StopIteration.
(trunk r10509)

svn path=/main/branches/2.1.2/; revision=10510

16 years agoFor consistency, make sure that a normal iterator is always returned
Zac Medico [Fri, 30 May 2008 20:47:42 +0000 (20:47 -0000)]
For consistency, make sure that a normal iterator is always returned
from dbapi._iter_match() (and never a list). This way the caller can
be sure that the returned object has a next() method. (trunk r10507)

svn path=/main/branches/2.1.2/; revision=10508

16 years agoMake the use_cache=0 listdir() implementation inside vardbapi.cpv_all()
Zac Medico [Fri, 30 May 2008 20:24:08 +0000 (20:24 -0000)]
Make the use_cache=0 listdir() implementation inside vardbapi.cpv_all()
raise a PermissionDenied error when appropriate. (trunk r10505)

svn path=/main/branches/2.1.2/; revision=10506

16 years agoPass a mutable config instance into get_masking_status(). Currently
Zac Medico [Fri, 30 May 2008 09:58:34 +0000 (09:58 -0000)]
Pass a mutable config instance into get_masking_status(). Currently
it doesn't matter for installed packages but it's safer to be
consistent to avoid accidental breakage in the future.
(trunk r10503)

svn path=/main/branches/2.1.2/; revision=10504

16 years agoMake PackageSet.findAtomForPackage() just return the first atom found
Zac Medico [Fri, 30 May 2008 06:56:40 +0000 (06:56 -0000)]
Make PackageSet.findAtomForPackage() just return the first atom found
since best_match_to_list() won't work correctly for atoms matched
via PROVIDE. (trunk r10501)

svn path=/main/branches/2.1.2/; revision=10502

16 years agoSimplify None Package.slot handling in match_from_list(). (trunk r10499)
Zac Medico [Fri, 30 May 2008 01:09:13 +0000 (01:09 -0000)]
Simplify None Package.slot handling in match_from_list(). (trunk r10499)

svn path=/main/branches/2.1.2/; revision=10500

16 years agoFix Atom attribute handling in get_operator() and dep_getslot() to account
Zac Medico [Fri, 30 May 2008 00:38:22 +0000 (00:38 -0000)]
Fix Atom attribute handling in get_operator() and dep_getslot() to account
for None return values. (trunk r10497)

svn path=/main/branches/2.1.2/; revision=10498

16 years agoCreate Atom instances earlier to avoid redundant validation. (trunk r10495)
Zac Medico [Fri, 30 May 2008 00:13:34 +0000 (00:13 -0000)]
Create Atom instances earlier to avoid redundant validation. (trunk r10495)

svn path=/main/branches/2.1.2/; revision=10496

16 years agoWhen dropping deps from the resume list, make sure that the loop can't
Zac Medico [Thu, 29 May 2008 23:41:57 +0000 (23:41 -0000)]
When dropping deps from the resume list, make sure that the loop can't
be infinite. (trunk r10493)

svn path=/main/branches/2.1.2/; revision=10494

16 years agoUse Package.metadata instead of calling dbapi.aux_get(). (trunk r10491)
Zac Medico [Thu, 29 May 2008 23:32:40 +0000 (23:32 -0000)]
Use Package.metadata instead of calling dbapi.aux_get(). (trunk r10491)

svn path=/main/branches/2.1.2/; revision=10492

16 years agoUse a frozenset instead of a list for containment tests. (trunk r10489)
Zac Medico [Thu, 29 May 2008 23:11:25 +0000 (23:11 -0000)]
Use a frozenset instead of a list for containment tests. (trunk r10489)

svn path=/main/branches/2.1.2/; revision=10490

16 years agoFix typo. (trunk r10487)
Zac Medico [Thu, 29 May 2008 22:54:59 +0000 (22:54 -0000)]
Fix typo. (trunk r10487)

svn path=/main/branches/2.1.2/; revision=10488

16 years agoUse izip() to eliminate temporary dict instances. (trunk r10485)
Zac Medico [Thu, 29 May 2008 22:38:32 +0000 (22:38 -0000)]
Use izip() to eliminate temporary dict instances. (trunk r10485)

svn path=/main/branches/2.1.2/; revision=10486

16 years agoUse portage_exception.InvalidAtom directly instead of from portage_dep.
Zac Medico [Thu, 29 May 2008 21:34:51 +0000 (21:34 -0000)]
Use portage_exception.InvalidAtom directly instead of from portage_dep.

svn path=/main/branches/2.1.2/; revision=10484

16 years agoMake --skipfirst handle missing dependencies by dropping the merge tasks
Zac Medico [Thu, 29 May 2008 21:19:48 +0000 (21:19 -0000)]
Make --skipfirst handle missing dependencies by dropping the merge tasks
that have missing dependencies. This involves creating an entirely new
depgraph each time that a missing dependency is discovered. This isn't
the most efficient approach but it's simple and it works well.

This new behavior can server as a fix for bug #12768 by calling emerge
--resume --skipfirst each time that emerge exits unsuccessfully. This
was possible before, but now packages with unsatisfied dependencies
will be properly identified and dropped from the list.
(trunk r10477:10482)

svn path=/main/branches/2.1.2/; revision=10483

16 years agoSave the content of CONFIG_MEMORY_FILE in dblink.treewalk() _before_
Zac Medico [Thu, 29 May 2008 05:27:40 +0000 (05:27 -0000)]
Save the content of CONFIG_MEMORY_FILE in dblink.treewalk() _before_
unmerging other instances, in order to avoid overwritting/undoing
the pruning that's done during unmerge. (trunk r10476)

svn path=/main/branches/2.1.2/; revision=10477

16 years agoMake the unmerge time CONFIG_MEMORY_FILE pruning slightly more aggressive,
Zac Medico [Thu, 29 May 2008 04:56:18 +0000 (04:56 -0000)]
Make the unmerge time CONFIG_MEMORY_FILE pruning slightly more aggressive,
so that anything not claimed by another package in the same slot is
pruned. (trunk r10474)

svn path=/main/branches/2.1.2/; revision=10475

16 years agoFilter out installed keyword masked packages when populating
Zac Medico [Thu, 29 May 2008 00:39:46 +0000 (00:39 -0000)]
Filter out installed keyword masked packages when populating
RootConfig.visible_pkgs since otherwise such packages can trigger
undesireable results inside depgraph._iter_atoms_for_pkg().
(trunk r10471)

svn path=/main/branches/2.1.2/; revision=10473

16 years agoFix the code from bug #220341 so that it matches the atom against the
Zac Medico [Thu, 29 May 2008 00:37:59 +0000 (00:37 -0000)]
Fix the code from bug #220341 so that it matches the atom against the
installed package, like it's supposed to. (trunk r10470)

svn path=/main/branches/2.1.2/; revision=10472

16 years ago* Update the fix from bug #220341 to protect USE deps from being neglected.
Zac Medico [Wed, 28 May 2008 22:16:22 +0000 (22:16 -0000)]
* Update the fix from bug #220341 to protect USE deps from being neglected.
* Skip redundant Atom construction in select_package().
(trunk r10466:10468)

svn path=/main/branches/2.1.2/; revision=10469

16 years agoBug #223447 - Adjust the "installed packages are masked" display to recognize
Zac Medico [Wed, 28 May 2008 08:52:07 +0000 (08:52 -0000)]
Bug #223447 - Adjust the "installed packages are masked" display to recognize
packages that are masked by keywords and are eligible for uninstallation by
depclean. This is a workaround for the fact that depclean may fail to
recognize that the package is eligible for uninstall due to differences in
visibility filtering which can lead to differences in || dep evaluation.
TODO: Share visibility code to fix this inconsistency. (trunk r10465)

svn path=/main/branches/2.1.2/; revision=10466

16 years agoMake set_term_size() handle the CommandNotFound exception if stty
Zac Medico [Wed, 28 May 2008 01:35:55 +0000 (01:35 -0000)]
Make set_term_size() handle the CommandNotFound exception if stty
is missing for some reason. (trunk r10461)

svn path=/main/branches/2.1.2/; revision=10464

16 years agoConvert doman to use bash's =~ operator instead of calling egrep.
Zac Medico [Wed, 28 May 2008 01:30:51 +0000 (01:30 -0000)]
Convert doman to use bash's =~ operator instead of calling egrep.
(trunk r10460)

svn path=/main/branches/2.1.2/; revision=10463

16 years agoFix breakage due to frozenset being immutable. (trunk r10455)
Zac Medico [Tue, 27 May 2008 10:20:38 +0000 (10:20 -0000)]
Fix breakage due to frozenset being immutable. (trunk r10455)

svn path=/main/branches/2.1.2/; revision=10456

16 years agoMake config._init_dirs() preserver /tmp and /var/tmp permissions if
Zac Medico [Tue, 27 May 2008 07:56:26 +0000 (07:56 -0000)]
Make config._init_dirs() preserver /tmp and /var/tmp permissions if
those directories already exist. This gives freedom to the user to
adjust permissions to suit their taste. (trunk r10451:10453)

svn path=/main/branches/2.1.2/; revision=10454

16 years agoFix a typo from the previous commit. (trunk r10450)
Zac Medico [Tue, 27 May 2008 06:23:55 +0000 (06:23 -0000)]
Fix a typo from the previous commit. (trunk r10450)

svn path=/main/branches/2.1.2/; revision=10451

16 years agoUse new Package.use and iuse attributes to avoid extra split() calls.
Zac Medico [Tue, 27 May 2008 06:12:43 +0000 (06:12 -0000)]
Use new Package.use and iuse attributes to avoid extra split() calls.
(trunk r10448)

svn path=/main/branches/2.1.2/; revision=10449

16 years agoFix breakage in the BlockerDB constructor. (trunk r10443)
Zac Medico [Tue, 27 May 2008 04:38:12 +0000 (04:38 -0000)]
Fix breakage in the BlockerDB constructor. (trunk r10443)

svn path=/main/branches/2.1.2/; revision=10444

16 years agoMerge code for the Package.root_config attribute from trunk r10440,
Zac Medico [Tue, 27 May 2008 04:32:58 +0000 (04:32 -0000)]
Merge code for the Package.root_config attribute from trunk r10440,
excluding USE deps code.

svn path=/main/branches/2.1.2/; revision=10442

16 years agoBug #223685 - Use the finally clause to collect elog messages just
Zac Medico [Tue, 27 May 2008 00:50:40 +0000 (00:50 -0000)]
Bug #223685 - Use the finally clause to collect elog messages just
before releasing the build dir lock, so they never get missed.
(trunk r10438)

svn path=/main/branches/2.1.2/; revision=10439

16 years agoAdd some debug output for arguments and their associated atoms, to help in
Zac Medico [Tue, 27 May 2008 00:11:47 +0000 (00:11 -0000)]
Add some debug output for arguments and their associated atoms, to help in
debugging problems similar to bug #223735. (trunk r10436)

svn path=/main/branches/2.1.2/; revision=10437

16 years agoDon't silently swallow instances of UnpicklingError since they are easily
Zac Medico [Mon, 26 May 2008 23:29:25 +0000 (23:29 -0000)]
Don't silently swallow instances of UnpicklingError since they are easily
triggered by storing instances of custom classes in a pickle.
(trunk r10432:10434)

svn path=/main/branches/2.1.2/; revision=10435

16 years agoAvoid triggering "cPickle.UnpicklingError: Global and instance pickles
Zac Medico [Mon, 26 May 2008 23:05:46 +0000 (23:05 -0000)]
Avoid triggering "cPickle.UnpicklingError: Global and instance pickles
are not supported." errors that are triggered when the pickle contains
custom classes. (trunk r10431)

svn path=/main/branches/2.1.2/; revision=10432

16 years agoSkip source_all_bashrcs() when $EBUILD_PHASE is not set. (trunk r10429)
Zac Medico [Mon, 26 May 2008 20:24:02 +0000 (20:24 -0000)]
Skip source_all_bashrcs() when $EBUILD_PHASE is not set. (trunk r10429)

svn path=/main/branches/2.1.2/; revision=10430

16 years ago* Enable config.setcpv() to use a Package instance in place of a cpv.
Zac Medico [Mon, 26 May 2008 09:21:29 +0000 (09:21 -0000)]
* Enable config.setcpv() to use a Package instance in place of a cpv.
* Make depgraph._select_package() pass Package instances into setcpv() calls.
* Enable the Package constructor to use an iterable for metadata items.
(trunk r10427)

svn path=/main/branches/2.1.2/; revision=10428

16 years agoFix a broken reference to the Package.cpv_slot attribute. (trunk r10425)
Zac Medico [Mon, 26 May 2008 00:35:07 +0000 (00:35 -0000)]
Fix a broken reference to the Package.cpv_slot attribute. (trunk r10425)

svn path=/main/branches/2.1.2/; revision=10426

16 years ago* Add support for Package instances in match_from_list().
Zac Medico [Sun, 25 May 2008 22:56:02 +0000 (22:56 -0000)]
* Add support for Package instances in match_from_list().
* Remove the Package.cpv_slot attribute.
(trunk r10418:10423)

svn path=/main/branches/2.1.2/; revision=10424

16 years ago* Fix PackageSet.findAtomForPackage() to take a Package instance as
Zac Medico [Sun, 25 May 2008 09:01:18 +0000 (09:01 -0000)]
* Fix PackageSet.findAtomForPackage() to take a Package instance as
  an argument.
* Simplify PackageSet.findAtomForPackage() by implementing it on top
  of iterAtomsForPackage().
(trunk r10415)

svn path=/main/branches/2.1.2/; revision=10416

16 years agoFacilitate creation of Atom instances in a few obvious places:
Zac Medico [Sun, 25 May 2008 08:19:22 +0000 (08:19 -0000)]
Facilitate creation of Atom instances in a few obvious places:

 * PackageSet._setAtoms()
 * AtomArg and PackageArg constructors.
(trunk r10413)

svn path=/main/branches/2.1.2/; revision=10414

16 years agoCreate Atom instances when validating atoms inside _expand_new_virtuals().
Zac Medico [Sun, 25 May 2008 05:12:46 +0000 (05:12 -0000)]
Create Atom instances when validating atoms inside  _expand_new_virtuals().
(trunk r10396)

svn path=/main/branches/2.1.2/; revision=10412

16 years agoRemove redundant SLOT dep code in portdbapi.xmatch() since it's now
Zac Medico [Sun, 25 May 2008 04:40:43 +0000 (04:40 -0000)]
Remove redundant SLOT dep code in portdbapi.xmatch() since it's now
handled by dbapi._iter_match(). (trunk r10410)

svn path=/main/branches/2.1.2/; revision=10411

16 years agoFix paren_reduce() so that it appropriately raises an InvalidDependString()
Zac Medico [Sun, 25 May 2008 04:23:16 +0000 (04:23 -0000)]
Fix paren_reduce() so that it appropriately raises an InvalidDependString()
in some cases, instead of a nonsense ValueError. (trunk r10393)

svn path=/main/branches/2.1.2/; revision=10409

16 years agoFix paren_reduce() so that it appropriately raises an InvalidDependString()
Zac Medico [Sun, 25 May 2008 04:21:33 +0000 (04:21 -0000)]
Fix paren_reduce() so that it appropriately raises an InvalidDependString()
in some cases, instead of a nonsense AttributeError. (trunk r10392)

svn path=/main/branches/2.1.2/; revision=10408

16 years agoFix use_reduce() so that it appropriately raises an InvalidDependString
Zac Medico [Sun, 25 May 2008 04:19:38 +0000 (04:19 -0000)]
Fix use_reduce() so that it appropriately raises an InvalidDependString
instead of an IndexError in some cases (avoid IndexError by using slice
notation). (trunk r10391)

svn path=/main/branches/2.1.2/; revision=10407

16 years agoBug #223417 - Make the vardbapi.cpv_all() use_cache parameter useful
Zac Medico [Sun, 25 May 2008 04:15:50 +0000 (04:15 -0000)]
Bug #223417 - Make the vardbapi.cpv_all() use_cache parameter useful
for forcing direct os.listdir() calls. This is more of an issue now
that these listdir() calls are frequently triggered when merging
packages (due to things like blocker and preserve-libs handling).
(trunk r10390)

svn path=/main/branches/2.1.2/; revision=10406