summaryrefslogtreecommitdiffstats
path: root/bin/emerge
Commit message (Collapse)AuthorAgeFilesLines
* Never uninstall sys-apps/portage except through replacement. (trunk r10003)Zac Medico2008-04-271-0/+4
| | | | svn path=/main/branches/2.1.2/; revision=10004
* Bug #219369 - Enable automatic upgrage or downgrade to a versionZac Medico2008-04-271-0/+20
| | | | | | | | 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
* Take the classes that initialize variables in __slots__ with keywordZac Medico2008-04-271-42/+31
| | | | | | | constructor arguments and make them all derive from a new SlotObject class. (trunk r9994) svn path=/main/branches/2.1.2/; revision=9995
* Create a digraph.difference_update() method and use it to amortize theZac Medico2008-04-271-6/+10
| | | | | | cost of removing nodes from the digraph.order list. (trunk r9992) svn path=/main/branches/2.1.2/; revision=9993
* Remove unnecessary "mydbapi" variable in depgraph.display(). (trunk r9990)Zac Medico2008-04-271-14/+3
| | | | svn path=/main/branches/2.1.2/; revision=9991
* Bug #172812 - When a package needs to be uninstalled in advance ratherZac Medico2008-04-271-24/+77
| | | | | | | | | | | 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
* Add a PackageVirtualDbapi.copy() method. (trunk r9982)Zac Medico2008-04-271-0/+9
| | | | svn path=/main/branches/2.1.2/; revision=9988
* Use digraphs to clean up blocker reference counting in the depgraph.Zac Medico2008-04-271-45/+47
| | | | | | (trunk r9981) svn path=/main/branches/2.1.2/; revision=9987
* Don't assume that altlist() will succeed inside display_problems().Zac Medico2008-04-271-1/+1
| | | | | | (trunk r9980) svn path=/main/branches/2.1.2/; revision=9986
* * Add a Blocker class to use instead of tuples.Zac Medico2008-04-271-5/+24
| | | | | | | | * Fix the Task constructor to properly traverse __slots__ of all inherited classes. (trunk r9979) svn path=/main/branches/2.1.2/; revision=9985
* Refactor the way that depgraph.altlist(), _complete_graph(), andZac Medico2008-04-271-28/+22
| | | | | | | | 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
* Don't duplicate "system" in xterm titles either.Zac Medico2008-04-251-2/+2
| | | | svn path=/main/branches/2.1.2/; revision=9975
* Don't show "world" twice in the xterm titles. Thanks to armin76 for reporting.Zac Medico2008-04-251-1/+3
| | | | svn path=/main/branches/2.1.2/; revision=9974
* Add some more spinner.update() calls in possibly time consuming loops.Zac Medico2008-04-251-0/+4
| | | | | | (trunk r9968) svn path=/main/branches/2.1.2/; revision=9969
* Bug #172812 - If any Uninstall tasks need to be executed in orderZac Medico2008-04-251-63/+111
| | | | | | | | | 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). (trunk r9962:9965) svn path=/main/branches/2.1.2/; revision=9966
* Combine --nodeps spinner logic. (trunk r9953)Zac Medico2008-04-241-5/+4
| | | | svn path=/main/branches/2.1.2/; revision=9958
* Bug #172812 - Automatically uninstall packages to avoid blocker conflicts.Zac Medico2008-04-241-111/+358
| | | | | | (trunk r9944:9956) svn path=/main/branches/2.1.2/; revision=9957
* 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. (trunk r9938) svn path=/main/branches/2.1.2/; revision=9939
* In action_metadata(), properly put the source cache in readonly mode.Zac Medico2008-04-211-1/+1
| | | | | | (trunk r9936) svn path=/main/branches/2.1.2/; revision=9937
* Bug #218202 - Make sure the spinner is quiet in --nodep mode. (trunk r9924)Zac Medico2008-04-181-0/+2
| | | | svn path=/main/branches/2.1.2/; revision=9925
* Handle potential InvalidDependString exceptions from visible(). (trunk r9912)Zac Medico2008-04-161-4/+11
| | | | svn path=/main/branches/2.1.2/; revision=9913
* 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. (trunk r9904) svn path=/main/branches/2.1.2/; revision=9905
* 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 Bug #163801#c17, where we want kaffe to satisfy virtual/jdk-1.4 without an extra jvm being pulled in unnecessarily. (trunk r9901) svn path=/main/branches/2.1.2/; revision=9903
* 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. (trunk r9900) svn path=/main/branches/2.1.2/; revision=9902
* 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). (trunk r9898) svn path=/main/branches/2.1.2/; revision=9899
* * Call depgraph._add_dep() to add package dependencies to the graphZac Medico2008-04-141-6/+8
| | | | | | | | as soon as possible rather than pushing them onto the stack. (trunk r9885) * Fix some breakage in the allow_unsatisfied handling. (trunk r9886) svn path=/main/branches/2.1.2/; revision=9889
* Split out a depgraph._add_dep() method. (trunk r9884)Zac Medico2008-04-141-54/+59
| | | | svn path=/main/branches/2.1.2/; revision=9888
* * 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. (trunk r9879) svn path=/main/branches/2.1.2/; revision=9880
* To optimize consistency of atom selections, add all of the root packagesZac Medico2008-04-131-4/+7
| | | | | | to the graph before processing any dependencies. (trunk r9874) svn path=/main/branches/2.1.2/; revision=9878
* Improve lookahead for new-style virtuals:Zac Medico2008-04-131-9/+30
| | | | | | | | | | | | | | | | | | | * Substitute the graph tree for the vartree in dep_check() since we want atom selections to be consistent with package selections that 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 all 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. (trunk r9873) svn path=/main/branches/2.1.2/; revision=9877
* Make _dep_check_composite_db match() return multiple slots so thatZac Medico2008-04-131-15/+42
| | | | | | | it behaves more like other dbapi instances would, and also make it inherit from dbapi. (trunk r9869:9872) svn path=/main/branches/2.1.2/; revision=9876
* 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). (trunk r9860) svn path=/main/branches/2.1.2/; revision=9861
* Make binarytree.prevent_collision() adjust permissions on directoriesZac Medico2008-04-121-6/+0
| | | | | | | and raise a PermissionDenied error if the required directories is not writable. (trunk r9850) svn path=/main/branches/2.1.2/; revision=9851
* Rename the undocumented --conistent option to --complete-graph and addZac Medico2008-04-111-3/+3
| | | | | | some docs. (trunk r9846) svn path=/main/branches/2.1.2/; revision=9847
* Copy group mode bits from $PKGDIR when creating subdirectories.Zac Medico2008-04-111-0/+6
| | | | | | (trunk r9827) svn path=/main/branches/2.1.2/; revision=9828
* 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. (trunk r9825) svn path=/main/branches/2.1.2/; revision=9826
* Nest the DepcheckCompositeDB class inside the depgraph class since it'sZac Medico2008-04-101-86/+86
| | | | | | not intended for use elsewhere. (trunk r9823) svn path=/main/branches/2.1.2/; revision=9824
* Rename variable pkg_cpv to pkg_str. (trunk r9821)Zac Medico2008-04-101-7/+7
| | | | svn path=/main/branches/2.1.2/; revision=9822
* Fix "pkg" variable name collisions in depgraph.display(). (trunk r9819)Zac Medico2008-04-101-13/+12
| | | | svn path=/main/branches/2.1.2/; revision=9820
* Make the CHOST visibility check tolerant of missing CHOST metadata.Zac Medico2008-04-101-7/+9
| | | | | | (trunk r9817) svn path=/main/branches/2.1.2/; revision=9818
* Remove an unused function. (trunk r9810)Zac Medico2008-04-101-11/+0
| | | | svn path=/main/branches/2.1.2/; revision=9814
* 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. (trunk r9808) svn path=/main/branches/2.1.2/; revision=9813
* Iterate over a copy of the digraph nodes so that removal can't breakZac Medico2008-04-101-2/+2
| | | | | | the iterator. (trunk r9799) svn path=/main/branches/2.1.2/; revision=9800
* Make sure that everything except Package nodes is ignored when doingZac Medico2008-04-101-4/+12
| | | | | | the --buildpkgonly digraph.hasallzeros() check. (trunk r9797) svn path=/main/branches/2.1.2/; revision=9798
* Add some docs for the DepcheckCompositeDB class. (trunk r9785)Zac Medico2008-04-101-0/+7
| | | | svn path=/main/branches/2.1.2/; revision=9796
* Use cached Package instances in depgraph.display(). (trunk r9794)Zac Medico2008-04-101-11/+4
| | | | svn path=/main/branches/2.1.2/; revision=9795
* * 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(). (trunk r9789) svn path=/main/branches/2.1.2/; revision=9793
* Make FakeVartree use PackageVirtualDbapi instead of fakedbapi so that it canZac Medico2008-04-101-7/+23
| | | | | | populate and utilize a cache of Package instances. (trunk r9788) svn path=/main/branches/2.1.2/; revision=9792
* Improve used of cached Package instances in depgraph._select_pkg_from_graph().Zac Medico2008-04-101-13/+4
| | | | | | (trunk r9787) svn path=/main/branches/2.1.2/; revision=9791
* Replace the fakedbapi 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. (trunk r9786) svn path=/main/branches/2.1.2/; revision=9790