portage.git
16 years agoIn install_mask(), discard stderr messages from the 'find' command
Zac Medico [Tue, 6 May 2008 20:26:47 +0000 (20:26 -0000)]
In install_mask(), discard stderr messages from the 'find' command
since some tokens from INSTALL_MASK can trigger lots of warnings
and errors that are irrelevant for our purposes. (trunk r10220)

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

16 years agoMake satisfied blockers "darkblue" by default. (trunk r10218)
Zac Medico [Tue, 6 May 2008 01:42:09 +0000 (01:42 -0000)]
Make satisfied blockers "darkblue" by default. (trunk r10218)

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

16 years agoFor consistency with the merge list display, show "block" instead
Zac Medico [Tue, 6 May 2008 00:36:24 +0000 (00:36 -0000)]
For consistency with the merge list display, show "block" instead
of "blocker" in the summary. (trunk r10216)

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

16 years agoDisplay satisfied blockers in green and show a small "b" instead of a
Zac Medico [Tue, 6 May 2008 00:16:31 +0000 (00:16 -0000)]
Display satisfied blockers in green and show a small "b" instead of a
big "B" (similar to "f" for satisfied fetch restrictions).
(trunk r10214)

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

16 years agoUse find -path -or -name to match basenames of files in INSTALL_MASK
Zac Medico [Mon, 5 May 2008 21:50:58 +0000 (21:50 -0000)]
Use find -path -or -name to match basenames of files in INSTALL_MASK
as suggested by solar in bug #219286, comment #8. (trunk r10212)

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

16 years agoCache results for Task.__hash__() calls. (trunk r10210)
Zac Medico [Mon, 5 May 2008 21:07:53 +0000 (21:07 -0000)]
Cache results for Task.__hash__() calls. (trunk r10210)

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

16 years agoUse vardbapi._excluded_dirs to filter results inside cp_list(). (trunk r10208)
Zac Medico [Mon, 5 May 2008 19:30:23 +0000 (19:30 -0000)]
Use vardbapi._excluded_dirs to filter results inside cp_list(). (trunk r10208)

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

16 years agoAdd -MERGING-.* to vardbapi._excluded_dirs. (trunk r10206)
Zac Medico [Mon, 5 May 2008 19:22:59 +0000 (19:22 -0000)]
Add -MERGING-.* to vardbapi._excluded_dirs. (trunk r10206)

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

16 years ago* In vardbapi.cpv_all() use catpkgsplit() for validation since that's what
Zac Medico [Mon, 5 May 2008 18:42:13 +0000 (18:42 -0000)]
* In vardbapi.cpv_all() use catpkgsplit() for validation since that's what
  with cp_all() uses.
* Use the listdir() dirsonly=1 parameter to avoid unnecessary stat calls
  via os.path.isdir()
(trunk r10204)

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

16 years agoHandle a potential InvalidData exception in vardbapi.cp_all(). (trunk r10202)
Zac Medico [Mon, 5 May 2008 16:55:47 +0000 (16:55 -0000)]
Handle a potential InvalidData exception in vardbapi.cp_all(). (trunk r10202)

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

16 years agoAdd "package" to EBUILD_PHASES since it's possible for einfo to be called
Zac Medico [Mon, 5 May 2008 06:36:27 +0000 (06:36 -0000)]
Add "package" to EBUILD_PHASES since it's possible for einfo to be called
by install_mask() during that phase. (trunk r10198)

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

16 years agoBug #219286 - Whitelist INSTALL_MASK so that it works properly for binary
Zac Medico [Mon, 5 May 2008 06:03:43 +0000 (06:03 -0000)]
Bug #219286 - Whitelist INSTALL_MASK so that it works properly for binary
packages. Also, filter INSTALL_MASK when saving or loading environment.bz2.
This also applies to PKG_INSTALL_MASK and DOC_SYMLINKS_DIR, so add them
too. (trunk r10195)

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

16 years ago* Fix --buildpkgonly logic to avoid an unwanted code path.
Zac Medico [Mon, 5 May 2008 06:00:20 +0000 (06:00 -0000)]
* Fix --buildpkgonly logic to avoid an unwanted code path.
* Remove unnecessary mtimedb.pop("resume", None) call.
(trunk r10194)

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

16 years agoBug #220171 - Filter out 'lost+found' directories in vardbapi.cpv_all()
Zac Medico [Mon, 5 May 2008 04:50:23 +0000 (04:50 -0000)]
Bug #220171 - Filter out 'lost+found' directories in vardbapi.cpv_all()
in order to avoid fatal 'Permission denied' errors. Currently, CVS and
names beginning with '.' are also filtered. (trunk r10192)

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

16 years agoUse writemsg() to warn about InvalidDependString exceptions that may
Zac Medico [Mon, 5 May 2008 03:31:40 +0000 (03:31 -0000)]
Use writemsg() to warn about InvalidDependString exceptions that may
occur for installed packages. (trunk r10190)

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

16 years agoUse a separate digraph to preserve irrelevant blocker relationships that
Zac Medico [Mon, 5 May 2008 03:27:58 +0000 (03:27 -0000)]
Use a separate digraph to preserve irrelevant blocker relationships that
are removed from depgraph._blocker_parents since the irrelevant blockers
are still needed for the blocker cache. (trunk r10188)

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

16 years agoFix misplaced variable. (trunk r10186)
Zac Medico [Mon, 5 May 2008 03:19:38 +0000 (03:19 -0000)]
Fix misplaced variable. (trunk r10186)

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

16 years agoIn the package uninstall sanity check, use RDEPEND from the currently
Zac Medico [Sun, 4 May 2008 19:48:00 +0000 (19:48 -0000)]
In the package uninstall sanity check, use RDEPEND from the currently
running 'sys-apps/portage' instance to create a set of protected atoms.
(trunk r10184)

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

16 years agoSimilar to the sys-apps/portage protection, also add protection against
Zac Medico [Sun, 4 May 2008 08:10:12 +0000 (08:10 -0000)]
Similar to the sys-apps/portage protection, also add protection against
inappropriately uninstalling either app-shells/bash or dev-lang/python.
(trunk r10171)

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

16 years agoDo more validation of resume data from the mtimedb. (trunk r10165)
Zac Medico [Sun, 4 May 2008 06:41:57 +0000 (06:41 -0000)]
Do more validation of resume data from the mtimedb. (trunk r10165)

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

16 years agoWhen a --resume list is rejected due to unsatisfied deps, display a
Zac Medico [Sun, 4 May 2008 05:51:51 +0000 (05:51 -0000)]
When a --resume list is rejected due to unsatisfied deps, display a
list of missing deps and which packages they belong to.
(trunk r10143)

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

16 years agoIn order to fix --tree display behave normally in --resume mode,
Zac Medico [Sun, 4 May 2008 05:25:58 +0000 (05:25 -0000)]
In order to fix --tree display behave normally in --resume mode,
properly add to the digraph all packages matched by arguments.
(trunk r10162)

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

16 years agoFix misplaced variable used as parameter to _load_favorites(). (trunk r10160)
Zac Medico [Sun, 4 May 2008 04:21:58 +0000 (04:21 -0000)]
Fix misplaced variable used as parameter to _load_favorites(). (trunk r10160)

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

16 years agoMake favorites handling in depgraph.select_files() consistent with
Zac Medico [Sun, 4 May 2008 04:09:49 +0000 (04:09 -0000)]
Make favorites handling in depgraph.select_files() consistent with
SetArg handling when the "system" set is added along with "world".

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

16 years agoFix package counters in depgraph.display() so they're only incremented
Zac Medico [Sun, 4 May 2008 03:46:52 +0000 (03:46 -0000)]
Fix package counters in depgraph.display() so they're only incremented
for "ordered" display nodes. (trunk r10157)

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

16 years agoFix some unwanted interaction between --tree display and unsatisfied
Zac Medico [Sun, 4 May 2008 03:27:10 +0000 (03:27 -0000)]
Fix some unwanted interaction between --tree display and unsatisfied
blockers in depgraph.display(). (trunk r10155)

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

16 years agoRemove obsolete tuple() usage inside depgraph.display(). (trunk r10153)
Zac Medico [Sun, 4 May 2008 02:10:55 +0000 (02:10 -0000)]
Remove obsolete tuple() usage inside depgraph.display(). (trunk r10153)

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

16 years agoFix spelling of _show_unsatisfied_blockers(). (trunk r10151)
Zac Medico [Sun, 4 May 2008 01:48:25 +0000 (01:48 -0000)]
Fix spelling of _show_unsatisfied_blockers(). (trunk r10151)

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

16 years agoIn BlockerData._load(), salvage as much cache as possible when some
Zac Medico [Sun, 4 May 2008 01:05:06 +0000 (01:05 -0000)]
In BlockerData._load(), salvage as much cache as possible when some
seems to be corrupt. (trunk r10149)

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

16 years agoValidate all the data types inside BlockerCache._load() so that
Zac Medico [Sun, 4 May 2008 00:51:29 +0000 (00:51 -0000)]
Validate all the data types inside BlockerCache._load() so that
any corruption is detected as soon as possible. (trunk r10147)

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

16 years agoWhen a resume list is rejected, display the invalid resume list data
Zac Medico [Sat, 3 May 2008 23:11:54 +0000 (23:11 -0000)]
When a resume list is rejected, display the invalid resume list data
in case the user is interested. This is enabled with --verbose or
--debug. (trunk r10145)

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

16 years agoReturn early from create_world_atom() if an atom matching the package
Zac Medico [Sat, 3 May 2008 22:42:24 +0000 (22:42 -0000)]
Return early from create_world_atom() if an atom matching the package
can't be found for some reason.

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

16 years agoDon't clean out old resume lists when in --ask or --pretend mode.
Zac Medico [Sat, 3 May 2008 21:23:40 +0000 (21:23 -0000)]
Don't clean out old resume lists when in --ask or --pretend mode.
(trunk r10141)

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

16 years agoWhen loadResumeCommand() rejects a resume list, give a more informative
Zac Medico [Sat, 3 May 2008 21:17:05 +0000 (21:17 -0000)]
When loadResumeCommand() rejects a resume list, give a more informative
explanation. (trunk r10139)

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

16 years agoFix display_problems() logic some more. (trunk r10135:10137)
Zac Medico [Sat, 3 May 2008 19:52:39 +0000 (19:52 -0000)]
Fix display_problems() logic some more. (trunk r10135:10137)

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

16 years agoImprove --resume handling of saved "favorites" argument atoms:
Zac Medico [Sat, 3 May 2008 19:25:07 +0000 (19:25 -0000)]
Improve --resume handling of saved "favorites" argument atoms:

* Save the favorites in oneshot mode too since they're still useful for
  restoring state upon --resume.

* Add a depgraph._load_favorites() method to resume state from a previous
  select_files() call. This allows Package instances to be matched with
  DependencyArg instances during graph creation.
(trunk r10134)

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

16 years ago* Move circular deps and blocker displays to depgraph.display_problems().
Zac Medico [Sat, 3 May 2008 08:25:40 +0000 (08:25 -0000)]
* Move circular deps and blocker displays to depgraph.display_problems().
* Always call display_problems() since calling it from inside display()
  can lead to unwanted recursion.
(trunk r10132)

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

16 years agoSimilar to the circular dependency display, handle the unsatisfied blocker
Zac Medico [Sat, 3 May 2008 06:00:02 +0000 (06:00 -0000)]
Similar to the circular dependency display, handle the unsatisfied blocker
display inside _serialize_tasks() since that's a convenient place to bail
out. (trunk r10130)

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

16 years agoUse absolute paths for files in ${DISTDIR}. Thanks to RB <aoz.syn@gmail.com>
Zac Medico [Sat, 3 May 2008 04:19:04 +0000 (04:19 -0000)]
Use absolute paths for files in ${DISTDIR}. Thanks to RB <aoz.syn@gmail.com>
for this patch. (trunk r10127)

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

16 years agoBug #219294 - Fix 'date' and 'cut' arguments for BSD userland. Thanks to
Zac Medico [Sat, 3 May 2008 04:17:57 +0000 (04:17 -0000)]
Bug #219294 - Fix 'date' and 'cut' arguments for BSD userland. Thanks to
RB <aoz.syn@gmail.com> for this patch. (trunk r10126)

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

16 years agoMove --resume options handling to the beginning of action_build() so
Zac Medico [Sat, 3 May 2008 03:49:45 +0000 (03:49 -0000)]
Move --resume options handling to the beginning of action_build() so
that the current options are updated with the saved options as soon
as possible. (trunk r10122:10124)

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

16 years agoMake --nodeps automatically disable --tree. (trunk r10121)
Zac Medico [Sat, 3 May 2008 03:28:06 +0000 (03:28 -0000)]
Make --nodeps automatically disable --tree. (trunk r10121)

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

16 years agoFix depgraph.loadResumeCommand() to identify an unsatisfied dependency
Zac Medico [Sat, 3 May 2008 02:57:06 +0000 (02:57 -0000)]
Fix depgraph.loadResumeCommand() to identify an unsatisfied dependency
and invalidate the resume list in that case. (trunk r10119)

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

16 years ago* Check for masked packages in the --resume merge list and bail
Zac Medico [Sat, 3 May 2008 02:31:39 +0000 (02:31 -0000)]
* Check for masked packages in the --resume merge list and bail
  out in that case (bug #199408).

* In depgraph.loadResumeCommand(), create a dependency graph from
  the resume list. This ensures that the merge list has it's
  dependencies satisfied. It also enables --tree display together
  with --resume.

* Fix --resume mode to check for unsatisfied blockers and bail out when
  necessary.

* Add --nodeps to the parallel-fetch --resume options since recalculation of
  deps is a a waste here.

* Delete the resume list(s) if there is an unsatisfied block.

(trunk r10113:10117)

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

16 years agoAdd a PackageVirtualDbapi.__iter__() method and use it to iterate over
Zac Medico [Fri, 2 May 2008 22:33:31 +0000 (22:33 -0000)]
Add a PackageVirtualDbapi.__iter__() method and use it to iterate over
all installed packages in depgraph.validate_blockers(). (trunk r10112)

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

16 years agoUse match_pkgs() to simplify package comparison. (trunk r10110)
Zac Medico [Fri, 2 May 2008 22:13:02 +0000 (22:13 -0000)]
Use match_pkgs() to simplify package comparison. (trunk r10110)

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

16 years agoMove the blocker cache validation into depgraph.validate_blockers().
Zac Medico [Fri, 2 May 2008 21:49:26 +0000 (21:49 -0000)]
Move the blocker cache validation into depgraph.validate_blockers().
(trunk r10108)

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

16 years agoIn depgraph.validate_blockers(), discard any "uninstall" tasks scheduled
Zac Medico [Fri, 2 May 2008 21:10:37 +0000 (21:10 -0000)]
In depgraph.validate_blockers(), discard any "uninstall" tasks scheduled
by previous calls, since those tasks may not make sense given the current
graph state. (trunk r10106)

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

16 years agoWhen searching for a "sys-apps/portage" installation task, use match_pkgs()
Zac Medico [Fri, 2 May 2008 20:31:33 +0000 (20:31 -0000)]
When searching for a "sys-apps/portage" installation task, use match_pkgs()
instead of sequential search. (trunk r10104)

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

16 years agoUse Package.cp attribute instead of calling cpv_getkey(). (trunk r10102)
Zac Medico [Fri, 2 May 2008 20:17:04 +0000 (20:17 -0000)]
Use Package.cp attribute instead of calling cpv_getkey(). (trunk r10102)

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

16 years agoUse Package instance attributes to clean up and simplify
Zac Medico [Fri, 2 May 2008 20:02:45 +0000 (20:02 -0000)]
Use Package instance attributes to clean up and simplify
depgraph.validate_blockers(). (trunk r10100)

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

16 years agoIn depgraph._serialize_tasks(), filter "nomerge" nodes at a more appropriate
Zac Medico [Fri, 2 May 2008 19:22:09 +0000 (19:22 -0000)]
In depgraph._serialize_tasks(), filter "nomerge" nodes at a more appropriate
place. (trunk r10098)

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

16 years agoIn depgraph._complete_graph(), use cached Package instances instead
Zac Medico [Fri, 2 May 2008 19:03:28 +0000 (19:03 -0000)]
In depgraph._complete_graph(), use cached Package instances instead
of constructing new ones. (trunk r10096)

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

16 years agoValidate resume list data some more. (trunk r10094)
Zac Medico [Fri, 2 May 2008 18:28:56 +0000 (18:28 -0000)]
Validate resume list data some more. (trunk r10094)

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

16 years agoClean up merge list handling:
Zac Medico [Fri, 2 May 2008 17:56:21 +0000 (17:56 -0000)]
Clean up merge list handling:
* In depgraph.loadResumeCommand(), populate _serialized_tasks_cache so that
  it can be returned from depgraph.altlist().
* Handle --skipfirst instide depgraph.loadResumeCommand(), and fix it to skip
  the first "merge" task and never skip "uninstall" tasks.
* Always get the merge list from depgraph.altlist() instead of using
  the mtimedb directly. The list returned from depgraph.altlist()
  contains Package instances with cached metadata.
* Remove obsolete code from depgraph.display() and MergeTask.merge() since
  the merge list always comes from depgraph.altlist() now, and never directly
  from the mtimedb.
(trunk r10092)

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

16 years agocheck if PORTAGE_TMPDIR is mounted readonly/noexec (bug #219957)
Zac Medico [Fri, 2 May 2008 03:33:09 +0000 (03:33 -0000)]
check if PORTAGE_TMPDIR is mounted readonly/noexec (bug #219957)
(trunk r10069)

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

16 years agoFix broken variable references found by pyflakes. (trunk r10072)
Zac Medico [Fri, 2 May 2008 03:24:05 +0000 (03:24 -0000)]
Fix broken variable references found by pyflakes. (trunk r10072)

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

16 years agoSkip group/owner tarsync options for tarsync if chown on /usr/portage
Zac Medico [Fri, 2 May 2008 02:57:45 +0000 (02:57 -0000)]
Skip group/owner tarsync options for tarsync if chown on /usr/portage
fails, since the user might still be able to sync even though the
chown call is not permitted. (trunk r10070)

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

16 years agoBug #219837 - Adjust date calculations some more and show an
Zac Medico [Fri, 2 May 2008 02:28:20 +0000 (02:28 -0000)]
Bug #219837 - Adjust date calculations some more and show an
informative ewarn message when bailing out due to a newer
snapshot being unavailable. (trunk r10067)

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

16 years agoFix variable rename breakage: pkg -> pkg.cpv (trunk r10065)
Zac Medico [Thu, 1 May 2008 20:34:51 +0000 (20:34 -0000)]
Fix variable rename breakage: pkg -> pkg.cpv (trunk r10065)

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

16 years agoWhen adding blockers for installed packages to the graph, use cached
Zac Medico [Thu, 1 May 2008 19:20:44 +0000 (19:20 -0000)]
When adding blockers for installed packages to the graph, use cached
Package instances instead of constructing new ones. (trunk r10062)

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

16 years agoBug #219918 - Remove the last traces of PORTAGE_TMPFS.
Zac Medico [Thu, 1 May 2008 18:11:22 +0000 (18:11 -0000)]
Bug #219918 - Remove the last traces of PORTAGE_TMPFS.

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

16 years agoremove PORTAGE_TMPFS comment
Marius Mauch [Thu, 1 May 2008 11:55:00 +0000 (11:55 -0000)]
remove PORTAGE_TMPFS comment

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

16 years agoDetect an old version of tarsync and use bzip2 compression in that case.
Zac Medico [Thu, 1 May 2008 07:27:31 +0000 (07:27 -0000)]
Detect an old version of tarsync and use bzip2 compression in that case.
(trunk r10056)

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

16 years agoSort blockers when caching them. (trunk r10054)
Zac Medico [Thu, 1 May 2008 05:43:32 +0000 (05:43 -0000)]
Sort blockers when caching them. (trunk r10054)

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

16 years agoDon't add blockers to the graph more times than necessary. (trunk r10052)
Zac Medico [Thu, 1 May 2008 05:31:45 +0000 (05:31 -0000)]
Don't add blockers to the graph more times than necessary. (trunk r10052)

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

16 years ago* Add a Package.operation attribute and use it to distinguish "uninstall"
Zac Medico [Thu, 1 May 2008 04:20:51 +0000 (04:20 -0000)]
* Add a Package.operation attribute and use it to distinguish "uninstall"
  operations. (trunk r10050)

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

16 years agoFix 2 more types.InstanceType comparisons that are broken by
Zac Medico [Wed, 30 Apr 2008 19:45:54 +0000 (19:45 -0000)]
Fix 2 more types.InstanceType comparisons that are broken by
the transition of dbapi to new-style classes. (trunk r6188)

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

16 years agoBug #219837 - Adjust date calculations to improve accuracy. (trunk r10047)
Zac Medico [Wed, 30 Apr 2008 18:28:16 +0000 (18:28 -0000)]
Bug #219837 - Adjust date calculations to improve accuracy. (trunk r10047)

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

16 years agoHandle a KeyError when validating the blocker cache. (trunk r10045)
Zac Medico [Wed, 30 Apr 2008 09:00:46 +0000 (09:00 -0000)]
Handle a KeyError when validating the blocker cache. (trunk r10045)

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

16 years ago* Fix dep_check() so that it doesn't expand virtual blockers since the
Zac Medico [Wed, 30 Apr 2008 08:50:44 +0000 (08:50 -0000)]
* Fix dep_check() so that it doesn't expand virtual blockers since the
  un-expanded virtual atom is more useful for maintaining a cache of
  blocker atoms.

* Expand virtual blockers in depgraph.validate_blockers(), since it's
  not done by dep_check() anymore.

* If blocker data from the graph is available, use it to validate the
  blocker cache and update the cache if it seems invalid.

* Make BlockerCache._load() more tolerant to installs/uninstalls so
  so that cache isn't rebuilt so often.
(trunk r10040:10043)

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

16 years agoFix "deep" logic in depgraph._complete_graph() so that it always
Zac Medico [Wed, 30 Apr 2008 00:11:58 +0000 (00:11 -0000)]
Fix "deep" logic in depgraph._complete_graph() so that it always
properly recognizes whether or not "deep" was previously enabled.
(trunk r10039)

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

16 years agoMake unmerge() group packages by cat/pn when the order doesn't matter, so
Zac Medico [Tue, 29 Apr 2008 18:33:35 +0000 (18:33 -0000)]
Make unmerge() group packages by cat/pn when the order doesn't matter, so
the display appears like earlier versions of portage. (trunk r10037)

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

16 years agoPrevent some more visible downgrades from possibly being missed (bug #219369).
Zac Medico [Tue, 29 Apr 2008 03:33:29 +0000 (03:33 -0000)]
Prevent some more visible downgrades from possibly being missed (bug #219369).
(trunk r10033:10035)

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

16 years agoHandle a potential KeyError in depgraph.display() when in --resume mode
Zac Medico [Mon, 28 Apr 2008 22:23:32 +0000 (22:23 -0000)]
Handle a potential KeyError in depgraph.display() when in --resume mode
and a package scheduled for uninstall is no longer installed. (trunk r10032)

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

16 years agoWhen a package scheduled for uninstall isn't installed anymore, move
Zac Medico [Mon, 28 Apr 2008 21:16:37 +0000 (21:16 -0000)]
When a package scheduled for uninstall isn't installed anymore, move
on to the next task. (trunk r10030)

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

16 years agoFix spelling. (trunk r10028)
Zac Medico [Mon, 28 Apr 2008 20:44:56 +0000 (20:44 -0000)]
Fix spelling. (trunk r10028)

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

16 years agoAdd a Package.pv_split attibute to optimize version comparison
Zac Medico [Mon, 28 Apr 2008 20:31:12 +0000 (20:31 -0000)]
Add a Package.pv_split attibute to optimize version comparison
operators. (trunk r10026)

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

16 years agoFor bug #211833, be explicit that the pkg_prerm() and pkg_postrm() removal
Zac Medico [Mon, 28 Apr 2008 17:35:13 +0000 (17:35 -0000)]
For bug #211833, be explicit that the pkg_prerm() and pkg_postrm() removal
phases are the ones that are skipped. (trunk r10024)

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

16 years agoAs suggested by Chr. Schaefer in bug #211833, comment #15, note that
Zac Medico [Mon, 28 Apr 2008 17:25:48 +0000 (17:25 -0000)]
As suggested by  Chr. Schaefer in bug #211833, comment  #15, note that
removal of the environment.bz2 file is preferred since it may allow the
removal phases to execute successfully. (trunk r10022)

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

16 years agoAdd comma to ("__weakref__",) so that it's a tuple instead of a string.
Zac Medico [Mon, 28 Apr 2008 06:00:59 +0000 (06:00 -0000)]
Add comma to ("__weakref__",) so that it's a tuple instead of a string.
Thanks to ferringb. (trunk r10020)

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

16 years agoTry to format the elog message better for bug #211833, separating
Zac Medico [Mon, 28 Apr 2008 03:41:31 +0000 (03:41 -0000)]
Try to format the elog message better for bug #211833, separating
paragraphs for easier reading. (trunk r10018)

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

16 years agoUse write_atomic() for manifest updates. (trunk r10016)
Zac Medico [Mon, 28 Apr 2008 02:34:44 +0000 (02:34 -0000)]
Use write_atomic() for manifest updates. (trunk r10016)

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

16 years agoFix PackageVirtualDbapi.cpv_inject() to make sure packages with duplicate
Zac Medico [Mon, 28 Apr 2008 02:03:48 +0000 (02:03 -0000)]
Fix PackageVirtualDbapi.cpv_inject() to make sure packages with duplicate
cpv or slot are handled correctly. (trunk r10014)

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

16 years agoBug #211833 - When an ebuild removal phase fails, notify the user that
Zac Medico [Mon, 28 Apr 2008 01:46:58 +0000 (01:46 -0000)]
Bug #211833 - When an ebuild removal phase fails, notify the user that
removal of environment.bz2 file will cause the ebuild to be sourced and
eclasses from the current portage tree will be used when necessary.
(trunk r10009)

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

16 years agoBug #218854 - Fix depgraph._iter_atoms_for_pkg() so that argument atoms
Zac Medico [Mon, 28 Apr 2008 01:41:15 +0000 (01:41 -0000)]
Bug #218854 - Fix depgraph._iter_atoms_for_pkg() so that argument atoms
only match the highest visible slot. (trunk r10006:10008)

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

16 years agoFix the EbuildQuote check to ignore "echo" and the elog functions since
Zac Medico [Mon, 28 Apr 2008 01:30:49 +0000 (01:30 -0000)]
Fix the EbuildQuote check to ignore "echo" and the elog functions since
people might not want quotes in those cases. (trunk r10006)

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

16 years ago* Remove the only remaining sys.exit() calls inside the depgraph class.
Zac Medico [Mon, 28 Apr 2008 01:29:34 +0000 (01:29 -0000)]
* Remove the only remaining sys.exit() calls inside the depgraph class.
* Fix _unknown_internal_error() to work with zero arguments.
(trunk r10005)

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

16 years agoNever uninstall sys-apps/portage except through replacement. (trunk r10003)
Zac Medico [Sun, 27 Apr 2008 20:16:52 +0000 (20:16 -0000)]
Never uninstall sys-apps/portage except through replacement. (trunk r10003)

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

16 years agoBug #219369 - Enable automatic upgrage or downgrade to a version
Zac Medico [Sun, 27 Apr 2008 19:56:50 +0000 (19:56 -0000)]
Bug #219369 - Enable automatic upgrage or downgrade to a version
with visible KEYWORDS when the installed version is masked by
KEYWORDS, but never reinstall the same exact version only due to
a KEYWORDS mask. (trunk r10001)

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

16 years agoTake the classes that initialize variables in __slots__ with keyword
Zac Medico [Sun, 27 Apr 2008 07:26:25 +0000 (07:26 -0000)]
Take the classes that initialize variables in __slots__ with keyword
constructor arguments and make them all derive from a new SlotObject
class. (trunk r9994)

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

16 years agoCreate a digraph.difference_update() method and use it to amortize the
Zac Medico [Sun, 27 Apr 2008 06:38:37 +0000 (06:38 -0000)]
Create a digraph.difference_update() method and use it to amortize the
cost of removing nodes from the digraph.order list. (trunk r9992)

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

16 years agoRemove unnecessary "mydbapi" variable in depgraph.display(). (trunk r9990)
Zac Medico [Sun, 27 Apr 2008 00:44:34 +0000 (00:44 -0000)]
Remove unnecessary "mydbapi" variable in depgraph.display(). (trunk r9990)

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

16 years agoBug #172812 - When a package needs to be uninstalled in advance rather
Zac Medico [Sun, 27 Apr 2008 00:32:06 +0000 (00:32 -0000)]
Bug #172812 - When a package needs to be uninstalled in advance rather
than through replacement, show the corresponding [blocks] entries in the
displayed list. In order to show more structure in the --tree display,
expand Package -> Uninstall edges into Package -> Blocker -> Uninstall
edges. Also, create edges between a package's own blockers and it's
Uninstall task since it's blockers become irrelevant as soon as it's
uninstalled. (trunk r9983)

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

16 years agoAdd a PackageVirtualDbapi.copy() method. (trunk r9982)
Zac Medico [Sun, 27 Apr 2008 00:26:28 +0000 (00:26 -0000)]
Add a PackageVirtualDbapi.copy() method. (trunk r9982)

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

16 years agoUse digraphs to clean up blocker reference counting in the depgraph.
Zac Medico [Sun, 27 Apr 2008 00:25:51 +0000 (00:25 -0000)]
Use digraphs to clean up blocker reference counting in the depgraph.
(trunk r9981)

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

16 years agoDon't assume that altlist() will succeed inside display_problems().
Zac Medico [Sun, 27 Apr 2008 00:23:47 +0000 (00:23 -0000)]
Don't assume that altlist() will succeed inside display_problems().
(trunk r9980)

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

16 years ago* Add a Blocker class to use instead of tuples.
Zac Medico [Sun, 27 Apr 2008 00:23:03 +0000 (00:23 -0000)]
* Add a Blocker class to use instead of tuples.
* Fix the Task constructor to properly traverse __slots__ of all inherited
  classes.
(trunk r9979)

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

16 years agoRefactor the way that depgraph.altlist(), _complete_graph(), and
Zac Medico [Sun, 27 Apr 2008 00:21:24 +0000 (00:21 -0000)]
Refactor the way that depgraph.altlist(), _complete_graph(), and
validate_blockers() interact with eachother. This simplifies things
by eliminating the need for recursive calls to validate_blockers().
(trunk r9977)

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

16 years agoDon't duplicate "system" in xterm titles either.
Zac Medico [Fri, 25 Apr 2008 17:33:28 +0000 (17:33 -0000)]
Don't duplicate "system" in xterm titles either.

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