summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
Commit message (Collapse)AuthorAgeFilesLines
* implement the final part of FEATURES=preserved-libs and remove previously ↵Marius Mauch2007-12-031-1/+1
| | | | | | preserved libs that don't have any consumers left. Also fix the notice if preserved libs are found to use the preserved-rebuild package set instead of revdep-rebuild. svn path=/main/trunk/; revision=8821
* Synchronize self-reinstallation logic so that emerge will alwaysZac Medico2007-12-021-5/+1
| | | | | | | restart itself when dblink.merge() creates temporary copies of PORTAGE_{BIN,PYM}_PATH. svn path=/main/trunk/; revision=8803
* Show the pid in the "starting parallel fetching" message.Zac Medico2007-12-011-1/+2
| | | | svn path=/main/trunk/; revision=8794
* When os.waitid() raises OSError, discard the pid since there'sZac Medico2007-12-011-2/+3
| | | | | | no need to wait on it again. svn path=/main/trunk/; revision=8792
* After each merge, collect status from child processesZac Medico2007-12-011-2/+33
| | | | | | | in order to clean up zombies (such as the parallel-fetch process). svn path=/main/trunk/; revision=8791
* In chk_updated_cfg_files(), avoid scanning for config files forZac Medico2007-11-281-0/+4
| | | | | | | | paths that aren't writable by the current user. This prevents Permission denied errors from being triggered later when trying to scan subdirectories that are inaccessible. svn path=/main/trunk/; revision=8726
* --buildpkgonly will not merge anything, soZac Medico2007-11-261-0/+7
| | | | | | it cancels all binary package options. svn path=/main/trunk/; revision=8683
* Bug #124041 - Make emerge show an informative warning message when oneZac Medico2007-11-261-4/+33
| | | | | | | | or more eclasses override eclasses from PORTDIR. The warning can be permanently disabled by setting PORTAGE_ECLASS_WARNING_ENABLE="0" in /etc/make.conf. svn path=/main/trunk/; revision=8668
* * Load environment.bz2 for the pkg_config() phase.Zac Medico2007-11-251-1/+7
| | | | | | * Run the "clean" phase if pkg_config() succeeds. svn path=/main/trunk/; revision=8651
* In depgraph.altlist(), measure the bias of circularZac Medico2007-11-221-0/+20
| | | | | | | RDEPEND <-> PDEPEND relationships and use it to optimize merge order. svn path=/main/trunk/; revision=8593
* Generate an eerror elog message when an ebuild prerm orZac Medico2007-11-211-21/+0
| | | | | | postrm phase fails. svn path=/main/trunk/; revision=8577
* Use the existing RootConfig class to serve as a replacement forZac Medico2007-11-191-64/+58
| | | | | | | | | the EmergeConfig class. They both served roughly the same purpose and it was messy the way that EmergeConfig inherited from the portage.config class. It's better to avoid inheritance here, expecially since it doesn't provide anything really useful. svn path=/main/trunk/; revision=8525
* Fix --usepkgonly code in depgraph.select_files() so that itZac Medico2007-11-171-0/+2
| | | | | | only operates on the Package type that it expects. svn path=/main/trunk/; revision=8519
* In the slot collision display, show a maximum of 3 parentsZac Medico2007-11-141-0/+22
| | | | | | for each package in order to avoid flooding the display. svn path=/main/trunk/; revision=8500
* Make the slot collision display show all collisions insteadZac Medico2007-11-131-21/+27
| | | | | | of just the first one. svn path=/main/trunk/; revision=8498
* Make depgraph._complete_graph() properly specify SetArg instancesZac Medico2007-11-131-13/+24
| | | | | | | as parents of each Dependency, similar to the want that select_files() does. svn path=/main/trunk/; revision=8497
* Make depgraph._add_pkg() match the package with all possibleZac Medico2007-11-131-22/+26
| | | | | | args and add them to the digraph. svn path=/main/trunk/; revision=8496
* Remove the depgraph.pkg_node_map attribute and use otherZac Medico2007-11-121-45/+36
| | | | | | means to accomplish the same thing. svn path=/main/trunk/; revision=8495
* Add DependencyArg instances as parents of packages in theZac Medico2007-11-121-8/+21
| | | | | | | digraph since these relationships should be useful during backtracking. svn path=/main/trunk/; revision=8494
* * Remove all references to the obsolete Package.digraph_node attribute.Zac Medico2007-11-121-63/+51
| | | | | | | | * Reimplement Package comparison methods since the previous way didn't seem to function properly for dict keys. * Clean up depgraph._add_pkg() to use the Package object attributes. svn path=/main/trunk/; revision=8493
* Make the Package class emulate the interface of it's ownZac Medico2007-11-121-18/+18
| | | | | | | digraph_node tuple so that the Package instance itself can be added directly to the digraph. svn path=/main/trunk/; revision=8492
* * Provide reasonable default values for DependencyZac Medico2007-11-111-38/+35
| | | | | | | | | priority and depth attributes. * Remove depgraph.create() since it's no longer needed. * Remove depgraph._get_parent_sets() and instead get the information from DependencyArg attributes. svn path=/main/trunk/; revision=8489
* Fix depgraph._get_arg_for_pkg() so that it compares packageZac Medico2007-11-111-1/+5
| | | | | | types to help ensure a proper match. svn path=/main/trunk/; revision=8488
* Implement mapping of packages to instances of DependencyArgZac Medico2007-11-111-3/+22
| | | | | | | | | in depgraph._get_arg_for_pkg(). Among other things, this provides a way to know whether or not a specific package has been specified as an argument, which determines whether or not it can be removed from the graph during backtracking. svn path=/main/trunk/; revision=8487
* Wrap accesses to depgraph._set_atoms.findAtomForPackage() inZac Medico2007-11-111-7/+26
| | | | | | a new depgraph._get_arg_for_pkg() method. svn path=/main/trunk/; revision=8486
* Clean up expansion of set arguments in depgraph.select_files().Zac Medico2007-11-091-11/+13
| | | | svn path=/main/trunk/; revision=8482
* Fix incorrect type in depgraph._missing_args.Zac Medico2007-11-091-1/+1
| | | | svn path=/main/trunk/; revision=8476
* Create classes to encapsulate eache of the depgraph argumentZac Medico2007-11-091-24/+61
| | | | | | types: atoms, packages and sets. svn path=/main/trunk/; revision=8475
* For unsatisfied dependencies, shorten the per-package EAPI maskZac Medico2007-11-071-0/+12
| | | | | | | output and show an informative message whenever an EAPI mask is encountered. svn path=/main/trunk/; revision=8457
* Really fix broken logic for --update greedy slot atoms inZac Medico2007-11-071-1/+1
| | | | | | depgraph.select_files(). svn path=/main/trunk/; revision=8453
* Fix broken logic for --update greedy slot atoms inZac Medico2007-11-071-1/+3
| | | | | | depgraph.select_files(). svn path=/main/trunk/; revision=8452
* Make depgraph.select_files() perform internal expansion ofZac Medico2007-11-061-25/+42
| | | | | | | package set arguments since ideally the depgraph needs to be awary of the precise origin of each atom. svn path=/main/trunk/; revision=8451
* Simplify and fix bugs in is_valid_package_atom().Zac Medico2007-11-061-11/+5
| | | | svn path=/main/trunk/; revision=8445
* Fix create_world_atom() logic some more for bug #198129.Zac Medico2007-11-061-1/+4
| | | | svn path=/main/trunk/; revision=8439
* Bug #198129 - Prevent SLOT atoms like sys-devel/binutils:0Zac Medico2007-11-061-10/+28
| | | | | | | from being inappropriately recorded in the world file when USE=multislot is enabled. svn path=/main/trunk/; revision=8438
* Allow multislot packages to be added to the world fileZac Medico2007-11-051-9/+11
| | | | | | | | | | via --noreplace. Having these atoms in the world file will trigger recommendations to run emaint in some cases, like when running `emerge -e world`. The atoms need to be in the world file to prevent multislot packages from being removed by --depclean though. svn path=/main/trunk/; revision=8436
* Fix ignore_priority logic in depgraph.altlist() in orderZac Medico2007-11-021-0/+8
| | | | | | | | to handle some cases where it was possible for nodes to be selected without their PDEPENDs being propperly added to the asap_nodes list. svn path=/main/trunk/; revision=8360
* Collapse 2 identical code hunks into 1.Zac Medico2007-11-021-37/+18
| | | | svn path=/main/trunk/; revision=8359
* Optimize merge order to try and select nodes that only haveZac Medico2007-11-021-1/+20
| | | | | | | | | | | | | | | | unsatisfied PDEPEND slightly earlier. This solves a problem with xorg-server being merged too early during an all binary install (since DEPEND is ignored for binaries), triggering built_with_use() calls to fail as reported in bug #189966. Since DEPEND is discarded in cases like this, it is important to exploit the difference between PDEPEND and RDEPEND in order to optimize merge order. Without this optimization, the merge order is technically correct, but not as optimal as it should be and has lots of potential to trigger issues with built_with_use() or similar things that require better optimization of merge order. svn path=/main/trunk/; revision=8358
* In the 'there are no ebuilds to satisfy "foo"' message, discardZac Medico2007-11-011-0/+2
| | | | | | null/ from failed cpv_expand category expansion. svn path=/main/trunk/; revision=8357
* Make depgraph.select_files() recursively expand sets given asZac Medico2007-10-311-1/+8
| | | | | | | | | arguments so that containment tests in _get_parent_sets() properly match atoms in nested sets (like if world contains system). Otherwise, atoms from nested sets would get recorded in the world file. svn path=/main/trunk/; revision=8350
* Defer selection of package dependency atoms until they areZac Medico2007-10-311-14/+26
| | | | | | | | | actually needed since the appropriate atom selection behavior can change between the time that the package is initially added to the graph and when it's dependencies are traversed (like when --consistent is enabled). svn path=/main/trunk/; revision=8347
* Gather some ignored dependencies so that they can be properlyZac Medico2007-10-311-6/+16
| | | | | | processed by the depgraph when "conistent" mode is enabled. svn path=/main/trunk/; revision=8346
* Remove a few unused depgraph attributes.Zac Medico2007-10-311-13/+0
| | | | svn path=/main/trunk/; revision=8345
* Fix "args" set handling wrt $ROOT in depgraph._complete_graph().Zac Medico2007-10-301-1/+2
| | | | svn path=/main/trunk/; revision=8344
* Implement a "consistent" depgraph parameter (enabled by --consistent)Zac Medico2007-10-301-4/+151
| | | | | | | | | | that can be used ensure that installation of new packages does not break any deep dependencies of required sets (args, system, or world). Unfortunately, the performance penalty for small dep calculations is too great to enable this parameter by default. At least it will be useful for testing backtracking behavior when that is implemented. svn path=/main/trunk/; revision=8341
* Fix --depclean to use SetConfig.getSetAtoms() and also fix aZac Medico2007-10-281-8/+5
| | | | | | broken reference to packagesets which is now settings.sets. svn path=/main/trunk/; revision=8334
* Optimize stdout_spinner.update() methods so that they don'tZac Medico2007-10-281-3/+22
| | | | | | waste cpu time by flushing ouput to the tty too frequently. svn path=/main/trunk/; revision=8332
* Sort all dbapi.cp_list() results in ascending order andZac Medico2007-10-281-20/+6
| | | | | | | cache the results when possible. The order is preserved in dbapi.match() so those results are also sorted. svn path=/main/trunk/; revision=8329
* Replace depgraph._slot_node_map with _slot_pkg_map soZac Medico2007-10-271-35/+22
| | | | | | that it's easier to get existing Package instances. svn path=/main/trunk/; revision=8324