portage.git
16 years agoAdd some sanity checks and error tolerance in the owners cache. v2.2_pre8
Zac Medico [Tue, 10 Jun 2008 03:31:30 +0000 (03:31 -0000)]
Add some sanity checks and error tolerance in the owners cache.

svn path=/main/trunk/; revision=10633

16 years agoFix typo.
Zac Medico [Tue, 10 Jun 2008 02:13:59 +0000 (02:13 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10631

16 years agoFix typo.
Zac Medico [Tue, 10 Jun 2008 01:05:45 +0000 (01:05 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10628

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

svn path=/main/trunk/; revision=10626

16 years agoRemove unused PackageVirtualDbapi.__getitem__() method.
Zac Medico [Mon, 9 Jun 2008 14:24:09 +0000 (14:24 -0000)]
Remove unused PackageVirtualDbapi.__getitem__() method.

svn path=/main/trunk/; revision=10612

16 years agoAdd CONTENTS indexing support for optimization of owner lookups. The
Zac Medico [Mon, 9 Jun 2008 13:55:06 +0000 (13:55 -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`

The

svn path=/main/trunk/; revision=10609

16 years agoWhen inside fakeroot, directories with portage's gid appear
Zac Medico [Sun, 8 Jun 2008 20:23:14 +0000 (20:23 -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.

svn path=/main/trunk/; revision=10608

16 years agomake sure that scanelf is called with the right paths, and properly register all...
Marius Mauch [Sun, 8 Jun 2008 19:01:17 +0000 (19:01 -0000)]
make sure that scanelf is called with the right paths, and properly register all preserved objects to fix bug #223591

svn path=/main/trunk/; revision=10607

16 years agoBug #225285 - Allow digestcheck() to succeed when the Manifest is missing
Zac Medico [Sun, 8 Jun 2008 05:11:39 +0000 (05:11 -0000)]
Bug #225285 - Allow digestcheck() to succeed when the Manifest is missing
and strict mode is disabled.

svn path=/main/trunk/; revision=10604

16 years agoMake portdbapi.aux_get() return float type for _mtime_.
Zac Medico [Sun, 8 Jun 2008 04:20:21 +0000 (04:20 -0000)]
Make portdbapi.aux_get() return float type for _mtime_.

svn path=/main/trunk/; revision=10603

16 years agoAdd additional functions such as eaclocal and eautoheader to the
Zac Medico [Sun, 8 Jun 2008 03:15:06 +0000 (03:15 -0000)]
Add additional functions such as eaclocal and eautoheader to the
inherit.autotools regex. Thanks to Arfrever.

svn path=/main/trunk/; revision=10602

16 years agoFix typo.
Zac Medico [Sun, 8 Jun 2008 02:22:43 +0000 (02:22 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10601

16 years agoMake repoman pass Package instances into run_checks(), so that the checks
Zac Medico [Sun, 8 Jun 2008 02:19:46 +0000 (02:19 -0000)]
Make repoman pass Package instances into run_checks(), so that the checks
can use the Package.mtime and inherited attributes.

svn path=/main/trunk/; revision=10600

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

svn path=/main/trunk/; revision=10598

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

svn path=/main/trunk/; revision=10596

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

svn path=/main/trunk/; revision=10594

16 years agoBug #224271 - New check 'IUSE.undefined', renamed from generic
Zac Medico [Sat, 7 Jun 2008 22:18:17 +0000 (22:18 -0000)]
Bug #224271 - New check 'IUSE.undefined', renamed from generic
'ebuild.minorsyn'.

svn path=/main/trunk/; revision=10593

16 years agoAs suggested by Flameeyes, add a new 'inherit.autotools' check which warns
Zac Medico [Sat, 7 Jun 2008 22:07:21 +0000 (22:07 -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.

svn path=/main/trunk/; revision=10592

16 years agoremove old/unused gen_wrapper function
Mike Frysinger [Sat, 7 Jun 2008 17:18:35 +0000 (17:18 -0000)]
remove old/unused gen_wrapper function

svn path=/main/trunk/; revision=10591

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

svn path=/main/trunk/; revision=10589

16 years agoAdd a PackageVirtualDbapi.__getitem__() method.
Zac Medico [Fri, 6 Jun 2008 00:22:35 +0000 (00:22 -0000)]
Add a PackageVirtualDbapi.__getitem__() method.

svn path=/main/trunk/; revision=10588

16 years agoAdd Package.counter and mtime attributes.
Zac Medico [Thu, 5 Jun 2008 23:35:23 +0000 (23:35 -0000)]
Add Package.counter and mtime attributes.

svn path=/main/trunk/; revision=10587

16 years agoAdd vardbapi.aux_get() support for an "_mtime_" value which corresponds to
Zac Medico [Thu, 5 Jun 2008 17:30:46 +0000 (17:30 -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.

svn path=/main/trunk/; revision=10586

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

svn path=/main/trunk/; revision=10582

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

svn path=/main/trunk/; revision=10580

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

svn path=/main/trunk/; revision=10578

16 years agoUse platform module to make it clear what we're displaying. Instead of
Zac Medico [Wed, 4 Jun 2008 03:50:44 +0000 (03:50 -0000)]
Use platform module to make it clear what we're displaying.  Instead of
an 'uname -mrp' call use platform.platform() to describe the system in
emerge --info. (branches/prefix r10555)

svn path=/main/trunk/; revision=10575

16 years agoUse "platform" module instead of os.uname, or -- even worse -- a system
Zac Medico [Wed, 4 Jun 2008 03:47:56 +0000 (03:47 -0000)]
Use "platform" module instead of os.uname, or -- even worse -- a system
call to uname.  Change repoman's identification string not to use
"processor" on Linux (where it is huge), Interix (where it doesn't
exist) and AIX/HP-UX (where it prints "unknown"), but "machine" instead.
(branches/prefix r10554)

svn path=/main/trunk/; revision=10574

16 years agoFix typo.
Zac Medico [Wed, 4 Jun 2008 01:07:32 +0000 (01:07 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10566

16 years agoUse a distdir_writable variable in fetch(), for better control of write
Zac Medico [Wed, 4 Jun 2008 00:48:07 +0000 (00:48 -0000)]
Use a distdir_writable variable in fetch(), for better control of write
operations inside ${DISTDIR}.

svn path=/main/trunk/; revision=10564

16 years agoUpdate --depclean and package.provided docs to indicate interaction
Zac Medico [Tue, 3 Jun 2008 23:33:54 +0000 (23:33 -0000)]
Update --depclean and package.provided docs to indicate interaction
between them.

svn path=/main/trunk/; revision=10563

16 years agoMake PackagesSystemSet.description refer to the real profile rather than
Zac Medico [Tue, 3 Jun 2008 20:44:29 +0000 (20:44 -0000)]
Make PackagesSystemSet.description refer to the real profile rather than
/etc/portage/profile when possible.

svn path=/main/trunk/; revision=10561

16 years agoAvoid an unhandled IndexError thrown from the PackagesSystemSet constructor
Zac Medico [Tue, 3 Jun 2008 20:37:11 +0000 (20:37 -0000)]
Avoid an unhandled IndexError thrown from the PackagesSystemSet constructor
when neither /etc/make.profile nor /etc/portage/profile exist.

svn path=/main/trunk/; revision=10560

16 years agoFix regex for compatibility with the regex implementation from FreeBSD's
Zac Medico [Tue, 3 Jun 2008 20:11:00 +0000 (20:11 -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.

svn path=/main/trunk/; revision=10558

16 years agoTweak the installed masked code from bug #223447 so that it less noisy
Zac Medico [Tue, 3 Jun 2008 09:38:56 +0000 (09:38 -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.

svn path=/main/trunk/; revision=10553

16 years agoFix typo.
Zac Medico [Tue, 3 Jun 2008 06:51:49 +0000 (06:51 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10552

16 years agoWhen pruning the digests to optimize parallel-fetch, use a separate dict
Zac Medico [Tue, 3 Jun 2008 06:50:32 +0000 (06:50 -0000)]
When pruning the digests to optimize parallel-fetch, use a separate dict
so that the original digests are still available if a file needs to be
downloaded.

svn path=/main/trunk/; revision=10551

16 years agoUse float mtime instead of int for finer granularity in vardbapi.match()
Zac Medico [Tue, 3 Jun 2008 05:41:32 +0000 (05:41 -0000)]
Use float mtime instead of int for finer granularity in vardbapi.match()
cache staleness checks.

svn path=/main/trunk/; revision=10550

16 years agoAdd modification threshold for BlockerCache.flush(), to avoid wasteful IO.
Zac Medico [Tue, 3 Jun 2008 04:04:14 +0000 (04:04 -0000)]
Add modification threshold for BlockerCache.flush(), to avoid wasteful IO.

svn path=/main/trunk/; revision=10549

16 years agoFix vardbapi.flush_cache() so that it only updates the cache when the
Zac Medico [Tue, 3 Jun 2008 03:45:58 +0000 (03:45 -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.

svn path=/main/trunk/; revision=10548

16 years agoAdd support for a PORTAGE_RO_DISTDIRS variable. When a given file does not
Zac Medico [Tue, 3 Jun 2008 02:24:40 +0000 (02:24 -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.

svn path=/main/trunk/; revision=10547

16 years agoDon't unset PORTAGE_BINPKG_FILE because it's readonly.
Zac Medico [Tue, 3 Jun 2008 01:41:09 +0000 (01:41 -0000)]
Don't unset PORTAGE_BINPKG_FILE because it's readonly.

svn path=/main/trunk/; revision=10546

16 years agoFilter PORTAGE_BINPKG_FILE in save_ebuild_env().
Zac Medico [Sun, 1 Jun 2008 18:28:04 +0000 (18:28 -0000)]
Filter PORTAGE_BINPKG_FILE in save_ebuild_env().

svn path=/main/trunk/; revision=10541

16 years agoFix typo.
Zac Medico [Sun, 1 Jun 2008 08:33:00 +0000 (08:33 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10538

16 years agoMention masked packages in another --resume message.
Zac Medico [Sun, 1 Jun 2008 04:58:37 +0000 (04:58 -0000)]
Mention masked packages in another --resume message.

svn path=/main/trunk/; revision=10535

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

svn path=/main/trunk/; revision=10533

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

svn path=/main/trunk/; revision=10532

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

svn path=/main/trunk/; revision=10529

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

svn path=/main/trunk/; revision=10528

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

svn path=/main/trunk/; revision=10526

16 years agoFix EditablePackageSet.update() to create Atom instances when necessary.
Zac Medico [Sun, 1 Jun 2008 01:27:21 +0000 (01:27 -0000)]
Fix EditablePackageSet.update() to create Atom instances when necessary.

svn path=/main/trunk/; revision=10525

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

svn path=/main/trunk/; revision=10523

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

svn path=/main/trunk/; revision=10521

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

svn path=/main/trunk/; revision=10519

16 years agoFix TypeError: 'tuple' object does not support item assignment
Zac Medico [Sat, 31 May 2008 09:24:01 +0000 (09:24 -0000)]
Fix TypeError: 'tuple' object does not support item assignment

svn path=/main/trunk/; revision=10518

16 years ago* Tweak isvalidatom() to treat "null" category as valid, but missing category
Zac Medico [Sat, 31 May 2008 09:11:25 +0000 (09:11 -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).

svn path=/main/trunk/; revision=10516

16 years agoClean up reference to parts of the first graph for --skipfirst.
Zac Medico [Sat, 31 May 2008 02:06:01 +0000 (02:06 -0000)]
Clean up reference to parts of the first graph for --skipfirst.

svn path=/main/trunk/; revision=10514

16 years agoOptimize the new --skipfirst code so that in only has to build
Zac Medico [Sat, 31 May 2008 01:54:11 +0000 (01:54 -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.

svn path=/main/trunk/; revision=10513

16 years agoFix PackageSet.findAtomForPackage() to find the most specific atom since
Zac Medico [Fri, 30 May 2008 23:46:08 +0000 (23:46 -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.

svn path=/main/trunk/; revision=10511

16 years agoNow that dbapi._iter_match() is guaranteed to return a real iterator with
Zac Medico [Fri, 30 May 2008 21:14:32 +0000 (21:14 -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.

svn path=/main/trunk/; revision=10509

16 years agoFor consistency, make sure that a normal iterator is always returned
Zac Medico [Fri, 30 May 2008 20:46:05 +0000 (20:46 -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.

svn path=/main/trunk/; revision=10507

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

svn path=/main/trunk/; revision=10505

16 years agoPass a mutable config instance into get_masking_status(). Currently
Zac Medico [Fri, 30 May 2008 09:56:20 +0000 (09:56 -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.

svn path=/main/trunk/; revision=10503

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

svn path=/main/trunk/; revision=10501

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

svn path=/main/trunk/; revision=10499

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

svn path=/main/trunk/; revision=10497

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

svn path=/main/trunk/; revision=10495

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

svn path=/main/trunk/; revision=10493

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

svn path=/main/trunk/; revision=10491

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

svn path=/main/trunk/; revision=10489

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

svn path=/main/trunk/; revision=10487

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

svn path=/main/trunk/; revision=10485

16 years agoClean up references to unsatisfied_parents.
Zac Medico [Thu, 29 May 2008 21:00:16 +0000 (21:00 -0000)]
Clean up references to unsatisfied_parents.

svn path=/main/trunk/; revision=10482

16 years agoClean up reference to dropped_tasks when finished.
Zac Medico [Thu, 29 May 2008 20:52:13 +0000 (20:52 -0000)]
Clean up reference to dropped_tasks when finished.

svn path=/main/trunk/; revision=10481

16 years agoWhen --skipfirst drops packages due to unsatisfied dependencies, display
Zac Medico [Thu, 29 May 2008 20:44:08 +0000 (20:44 -0000)]
When --skipfirst drops packages due to unsatisfied dependencies, display
a warning message with the list of dropped packages.

svn path=/main/trunk/; revision=10480

16 years agoClean up exception reference from previous commit.
Zac Medico [Thu, 29 May 2008 19:56:42 +0000 (19:56 -0000)]
Clean up exception reference from previous commit.

svn path=/main/trunk/; revision=10479

16 years agoMake --skipfirst handle missing dependencies by dropping the merge tasks
Zac Medico [Thu, 29 May 2008 19:50:50 +0000 (19:50 -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.

svn path=/main/trunk/; revision=10478

16 years agoSave the content of CONFIG_MEMORY_FILE in dblink.treewalk() _before_
Zac Medico [Thu, 29 May 2008 05:23:18 +0000 (05:23 -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.

svn path=/main/trunk/; revision=10476

16 years agoMake the unmerge time CONFIG_MEMORY_FILE pruning slightly more aggressive,
Zac Medico [Thu, 29 May 2008 04:53:15 +0000 (04:53 -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.

svn path=/main/trunk/; revision=10474

16 years agoFilter out installed keyword masked packages when populating
Zac Medico [Thu, 29 May 2008 00:35:09 +0000 (00:35 -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().

svn path=/main/trunk/; revision=10471

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

svn path=/main/trunk/; revision=10470

16 years agoSkip redundant Atom construction in select_package().
Zac Medico [Wed, 28 May 2008 22:12:18 +0000 (22:12 -0000)]
Skip redundant Atom construction in select_package().

svn path=/main/trunk/; revision=10468

16 years agoUpdate the fix from bug #220341 to protect USE deps from being neglected.
Zac Medico [Wed, 28 May 2008 22:06:45 +0000 (22:06 -0000)]
Update the fix from bug #220341 to protect USE deps from being neglected.

svn path=/main/trunk/; revision=10467

16 years agoBug #223447 - Adjust the "installed packages are masked" display to recognize
Zac Medico [Wed, 28 May 2008 08:31:06 +0000 (08:31 -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.

svn path=/main/trunk/; revision=10465

16 years agoMake the new behavior from bug #222439 conditional on EAPI being something
Zac Medico [Wed, 28 May 2008 01:27:56 +0000 (01:27 -0000)]
Make the new behavior from bug #222439 conditional on EAPI being something
other than 0 or 1.

svn path=/main/trunk/; revision=10462

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

svn path=/main/trunk/; revision=10461

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

svn path=/main/trunk/; revision=10460

16 years agoBug #222439 - Add doman support for foo.lang.N filenames. Behavior is
Zac Medico [Tue, 27 May 2008 23:08:22 +0000 (23:08 -0000)]
Bug #222439 - Add doman support for foo.lang.N filenames. Behavior is
as follows:

 foo.1    -> man/man1/foo.1
 foo.lang.1 -> man/lang/man1/foo.1

Thanks to Yuri Vasilevski for the initial patch. I've modified it to
use bash's =~ operator and corresponding $BASH_REMATCH array.

svn path=/main/trunk/; revision=10459

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

svn path=/main/trunk/; revision=10455

16 years agoFix typo.
Zac Medico [Tue, 27 May 2008 07:53:32 +0000 (07:53 -0000)]
Fix typo.

svn path=/main/trunk/; revision=10453

16 years agoMake config._init_dirs() preserver /tmp and /var/tmp permissions if
Zac Medico [Tue, 27 May 2008 07:48:19 +0000 (07:48 -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.

svn path=/main/trunk/; revision=10452

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

svn path=/main/trunk/; revision=10450

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

svn path=/main/trunk/; revision=10448

16 years agoSet Atom.use = None when there are no USE deps (instead of the empty
Zac Medico [Tue, 27 May 2008 05:45:48 +0000 (05:45 -0000)]
Set Atom.use = None when there are no USE deps (instead of the empty
tuple returned from dep_getusedeps()).

svn path=/main/trunk/; revision=10447

16 years agoRepoman only checks IUSE for USE deps, so don't evaluate conditional USE deps
Zac Medico [Tue, 27 May 2008 05:42:28 +0000 (05:42 -0000)]
Repoman only checks IUSE for USE deps, so don't evaluate conditional USE deps
in this case.

svn path=/main/trunk/; revision=10446

16 years agoFix dbapi._iter_match_use() to escape IUSE values when necessary.
Zac Medico [Tue, 27 May 2008 04:50:37 +0000 (04:50 -0000)]
Fix dbapi._iter_match_use() to escape IUSE values when necessary.

svn path=/main/trunk/; revision=10445

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

svn path=/main/trunk/; revision=10443

16 years agoDefine __slots__ for the _use_dep class.
Zac Medico [Tue, 27 May 2008 04:10:11 +0000 (04:10 -0000)]
Define __slots__ for the _use_dep class.

svn path=/main/trunk/; revision=10441

16 years agoFix USE dep matching support in match_from_list() so that it checks
Zac Medico [Tue, 27 May 2008 04:04:28 +0000 (04:04 -0000)]
Fix USE dep matching support in match_from_list() so that it checks
to make sure the package supports all specified IUSE. This involves
updating all Package, FakeVartree, and BlockerDB constructor
arguments to implement a Package.root_config attribute that's used
to access implicit IUSE.

svn path=/main/trunk/; revision=10440

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

svn path=/main/trunk/; revision=10438