summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/__init__.py
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* Make depgraph._select_atoms() more flexible by allowingZac Medico2007-10-271-5/+9
| | | | | | the repositories to be passed in as a parameter. svn path=/main/trunk/; revision=8319
* Reuse an existing EmergeConfig instance instead ofZac Medico2007-10-271-1/+1
| | | | | | constructing a new one. svn path=/main/trunk/; revision=8318
* Fix broken $ROOT handling for setconfig in the MergeTaskZac Medico2007-10-271-6/+10
| | | | | | constructor. svn path=/main/trunk/; revision=8317
* Make emerge add sets to the world file as one would expect.Zac Medico2007-10-261-4/+16
| | | | svn path=/main/trunk/; revision=8308
* Prevent premature expansion of old-style virtualsZac Medico2007-10-261-0/+10
| | | | | | inside depgraph.select_files(). svn path=/main/trunk/; revision=8306
* Optimize the algorithm used for expansion of setZac Medico2007-10-261-4/+13
| | | | | | arguments into atoms. svn path=/main/trunk/; revision=8305
* use SetConfig.getSetAtoms instead of PackageSet.getAtoms for expanding sets ↵Marius Mauch2007-10-261-2/+3
| | | | | | to allow recursion, and drop the default 'sets/' prefix for setnames svn path=/main/trunk/; revision=8302
* use a @ prefix for sets, and replace world/system with their real prefixed ↵Marius Mauch2007-10-261-3/+10
| | | | | | names if found on the commandline svn path=/main/trunk/; revision=8301
* For the emergelog message, send in the original list ofZac Medico2007-10-251-3/+3
| | | | | | arguments that exists before expansion of sets. svn path=/main/trunk/; revision=8290
* Filter atoms that come from sets when generatingZac Medico2007-10-251-4/+9
| | | | | | the list of atoms to record in the world file. svn path=/main/trunk/; revision=8288
* For the global AUTOCLEAN, pass an empty list into unmerge()Zac Medico2007-10-251-1/+1
| | | | | | so it behaves like it used to. svn path=/main/trunk/; revision=8287
* Spit out a depgraph._get_existing_pkg() method for getting anZac Medico2007-10-251-19/+26
| | | | | | existing Package instance added to the graph for a given SLOT. svn path=/main/trunk/; revision=8286
* Make the Package class generate the digraph nodes.Zac Medico2007-10-251-21/+29
| | | | svn path=/main/trunk/; revision=8285
* Fix inverted logic error.Zac Medico2007-10-251-1/+1
| | | | svn path=/main/trunk/; revision=8284
* Convert depgraph creation from using recursive calls toZac Medico2007-10-241-52/+86
| | | | | | | using a stack of dependencies which will be more suitable for implementation of backtracking. svn path=/main/trunk/; revision=8283