summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
Commit message (Collapse)AuthorAgeFilesLines
* Bug #172812 - If any Uninstall tasks need to be executed in orderZac Medico2008-04-251-58/+108
| | | | | | | | to avoid a conflict, complete the graph with any dependencies that may have been initially neglected (to ensure that unsafe Uninstall tasks are properly identified and blocked from execution). svn path=/main/trunk/; revision=9965
* Update description of "complete" depgraph param.Zac Medico2008-04-241-3/+1
| | | | svn path=/main/trunk/; revision=9964
* Rename the "consistent" depgraph parameter to "complete" since what itZac Medico2008-04-241-5/+5
| | | | | | | really means is that the graph will be complete in the sense that no known dependencies are neglected. svn path=/main/trunk/; revision=9963
* Fix interaction between automatic uninstall and options like --pretend,Zac Medico2008-04-241-1/+3
| | | | | | --fetchonly, and --buildpkgonly. svn path=/main/trunk/; revision=9956
* Handle potential InvalidDependString exceptions when match packages toZac Medico2008-04-241-14/+21
| | | | | | system and world atoms in depgraph.altlist(). svn path=/main/trunk/; revision=9955
* Fix broken mtimedb resume list handling for automatic uninstall tasks.Zac Medico2008-04-241-5/+7
| | | | svn path=/main/trunk/; revision=9954
* Combine --nodeps spinner logic.Zac Medico2008-04-241-5/+4
| | | | svn path=/main/trunk/; revision=9953
* Bug #172812 - When automatically uninstalling packages, build the nextZac Medico2008-04-241-8/+13
| | | | | | package in the merge list before executing scheduled uninstall tasks. svn path=/main/trunk/; revision=9952
* Split out a _dequeue_uninstall_tasks() method.Zac Medico2008-04-241-7/+12
| | | | svn path=/main/trunk/; revision=9951
* Reset the state variables for leaf node selection in depgraph.altlist()Zac Medico2008-04-241-0/+6
| | | | | | when appropriate. svn path=/main/trunk/; revision=9950
* Bug #172812 - Protect packages from being removed from the world fileZac Medico2008-04-231-3/+4
| | | | | | during automatic uninstallation. svn path=/main/trunk/; revision=9949
* Bug #172812 - Automatically uninstall packages to avoid blocker conflicts.Zac Medico2008-04-231-84/+269
| | | | | | | | | | | | | | | | | | | The intention is to only uninstall packages that would be removed by --depclean (after the updates) anyway. To prevent automatic uninstallation of packages that the user probably wants to keep, the following types of packages will not be automatically unmerged: * Installed packages that have been pulled into the current dependency graph. Note that this check is not necessarily complete unless the --complete-graph option is enabled, making other sanity checks necessary. * Installed packages matched by atoms from the system set. For safety, these are unmerged after being replaced by another version. * Installed packages matched by atoms from the world set, if there is no matching replacement in the current dependency graph. svn path=/main/trunk/; revision=9946
* Bug #172812 - Add an Uninstall class derived from the Package class, forZac Medico2008-04-221-24/+57
| | | | | | packages that may need to be uninstalled to avoid conflicts. svn path=/main/trunk/; revision=9945
* Swap --nospinner and --oneshot for alphabetical ordering.Zac Medico2008-04-211-1/+1
| | | | svn path=/main/trunk/; revision=9941
* Bug #218439 - Improve alignment in short emerge --help options output.Zac Medico2008-04-211-5/+6
| | | | svn path=/main/trunk/; revision=9940
* In show_slot_collision_notice(), refer to the problem as a "slot conflict"Zac Medico2008-04-211-2/+3
| | | | | | since that's how I'm refering to it in the docs. svn path=/main/trunk/; revision=9938
* In action_metadata(), properly put the source cache in readonly mode.Zac Medico2008-04-211-1/+1
| | | | svn path=/main/trunk/; revision=9936
* Bug #218202 - Make sure the spinner is quiet in --nodep mode.Zac Medico2008-04-181-0/+2
| | | | svn path=/main/trunk/; revision=9924
* Handle potential InvalidDependString exceptions from visible().Zac Medico2008-04-161-4/+11
| | | | svn path=/main/trunk/; revision=9912
* Comment some more on the significance of passing the graph_db and parentZac Medico2008-04-151-1/+8
| | | | | | | into depgraph._select_atoms() to solve some cases of bug #1343 while avoiding unresolvable direct circular dependencies. svn path=/main/trunk/; revision=9904
* Add support to depgraph._select_atoms() to take a "parent" parameterZac Medico2008-04-151-2/+7
| | | | | | | | | | | | and use that to try and avoid unresolvable direct circular dependencies when necessary. Also, make atom selection more consistent with the graph to solve some cases of bug #1343. This improves the fix from bug #141118 to work in cases when a virtual is not yet installed but it has been pulled into the graph. For example, see the case of in Bug #163801#c17, where we want kaffe to satisfy virtual/jdk-1.4 without an extra jvm being pulled in unnecessarily. svn path=/main/trunk/; revision=9901
* Revert part of atom selection consistency improvement from r9873 since itZac Medico2008-04-151-1/+12
| | | | | | | | | | in some cases it triggers unresolvable direct circular dependencies. For example, this happens with gwydion-dylan which depends on either itself or gwydion-dylan-bin. In case gwydion-dylan is not yet installed, gwydion-dylan-bin needs to be selected in order to avoid a an unresolvable direct circular dependency. svn path=/main/trunk/; revision=9900
* Bug #217664 - Fix emerge 'by path' package argument handling so thatZac Medico2008-04-141-0/+2
| | | | | | Package instances are properly cached (avoiding a KeyError later). svn path=/main/trunk/; revision=9898
* Fix some breakage in the allow_unsatisfied handling.Zac Medico2008-04-141-4/+7
| | | | svn path=/main/trunk/; revision=9886
* Call depgraph._add_dep() to add package dependencies to the graphZac Medico2008-04-141-4/+3
| | | | | | as soon as possible rather than pushing them onto the stack. svn path=/main/trunk/; revision=9885
* Split out a depgraph._add_dep() method.Zac Medico2008-04-141-54/+59
| | | | svn path=/main/trunk/; revision=9884
* * For optimal atom selection, use PackageVirtualDbapi instances in placeZac Medico2008-04-131-18/+4
| | | | | | | | of the vardb for all dep_check() calls. * Replace dep_check_trees in depgraph.validate_blockers() with the equivalent self._graph_trees reference. svn path=/main/trunk/; revision=9879
* To optimize consistency of atom selections, add all of the root packagesZac Medico2008-04-131-4/+7
| | | | | | to the graph before processing any dependencies. svn path=/main/trunk/; revision=9874
* Improve lookahead for new-style virtuals:Zac Medico2008-04-131-9/+30
| | | | | | | | | | | | | | | | | * Substitue the graph tree for the vartree in dep_check() since we want atom selections to be consistent with package selections have already been made. * Add the selected package to the graph as soon as possible so that later dep_check() calls can use it as feedback for making more consistent atom selections. * Expand all slots of new-style virtuals inside _dep_check_composite_db so that lookahead examines a matched slots. This solves some cases of bug #1343, and extends the fix for bug #141118 to work in cases when a virtual is not yet installed but it has been pulled into the graph. svn path=/main/trunk/; revision=9873
* Fix the _dep_check_composite_db visibility filtering some more.Zac Medico2008-04-131-9/+18
| | | | svn path=/main/trunk/; revision=9872
* Fix _dep_check_composite_db.match() so that it doesn't exempt the highestZac Medico2008-04-131-3/+0
| | | | | | slot from visibility checks. svn path=/main/trunk/; revision=9871
* Make _dep_check_composite_db match() return multiple slots so thatZac Medico2008-04-131-15/+36
| | | | | | | it behaves more like other dbapi instances would, and also make it inherit from dbapi. svn path=/main/trunk/; revision=9870
* In --buildpkgonly mode, don't discard RDEPEND and PDEPEND if --empty orZac Medico2008-04-131-4/+6
| | | | | | | --deep are enabled. The makes it possible to run `emerge -eB world` and have every single package rebuilt (without actually installing anything). svn path=/main/trunk/; revision=9860
* Rename the undocumented --conistent option to --complete-graph and addZac Medico2008-04-112-4/+17
| | | | | | some docs. svn path=/main/trunk/; revision=9846
* Tweak --buildpkgonly and fakeroot logic so that --buildpkgonly can beZac Medico2008-04-111-6/+11
| | | | | | used by a non-root user to build binary packages with fakeroot. svn path=/main/trunk/; revision=9825
* Nest the DepcheckCompositeDB class inside the depgraph class since it'sZac Medico2008-04-101-86/+86
| | | | | | not intended for use elsewhere. svn path=/main/trunk/; revision=9823
* Rename variable pkg_cpv to pkg_str.Zac Medico2008-04-101-7/+7
| | | | svn path=/main/trunk/; revision=9821
* Fix "pkg" variable name collisions in depgraph.display().Zac Medico2008-04-101-13/+12
| | | | svn path=/main/trunk/; revision=9819
* Make the CHOST visibility check tolerant of missing CHOST metadata.Zac Medico2008-04-101-7/+9
| | | | svn path=/main/trunk/; revision=9817
* Remove an unused function.Zac Medico2008-04-101-11/+0
| | | | svn path=/main/trunk/; revision=9810
* Implement expansion of catgories in DepcheckCompositeDB.match() for oldZac Medico2008-04-101-1/+42
| | | | | | installed packages that may contain atoms that are not fully qualified. svn path=/main/trunk/; revision=9808
* Iterate over a copy of the digraph nodes so that removal can't breakZac Medico2008-04-101-2/+2
| | | | | | the iterator. svn path=/main/trunk/; revision=9799
* Make sure that everything except Package nodes is ignored when doingZac Medico2008-04-101-4/+12
| | | | | | the --buildpkgonly digraph.hasallzeros() check. svn path=/main/trunk/; revision=9797
* Use cached Package instances in depgraph.display().Zac Medico2008-04-101-11/+4
| | | | svn path=/main/trunk/; revision=9794
* * Make depclean/prune use cached Package instances for visibility checks.Zac Medico2008-04-101-4/+18
| | | | | | | | | * Make FakeVartree wrap dbapi.match() to make sure the metadata in Package instances gets updated for any cpv that is returned from a match() call, since the metadata can be accessed directly from the Package instance instead of via aux_get(). svn path=/main/trunk/; revision=9789
* Make FakeVartree use PackageVirtualDbapi instead of fakedbapi so that it canZac Medico2008-04-101-7/+23
| | | | | | populate and utilize a cache of Package instances. svn path=/main/trunk/; revision=9788
* Improve used of cached Package instances in depgraph._select_pkg_from_graph().Zac Medico2008-04-101-13/+4
| | | | svn path=/main/trunk/; revision=9787
* Replace the fakdbapi class that is used to track depgraph state with aZac Medico2008-04-101-18/+103
| | | | | | | | similar PackageVirtualDbapi class that uses Package instances internally. This eliminates some redundancy since the Package instances can be reused elsewhere, unlike the internal data structures used by fakedbapi. svn path=/main/trunk/; revision=9786
* Add some docs for the DepcheckCompositeDB class.Zac Medico2008-04-091-0/+7
| | | | svn path=/main/trunk/; revision=9785
* When checking atoms without categories against the installed packages, justZac Medico2008-04-091-2/+3
| | | | | | check for existence of the cat/pn rather that a full match. svn path=/main/trunk/; revision=9779