summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/depgraph.py
Commit message (Collapse)AuthorAgeFilesLines
...
* Bug #335642 - Also make show_masked_packages() display to stdout sinceZac Medico2010-09-011-2/+2
| | | | depgraph._show_unsatisfied_dep() calls it.
* Bug #335642 - Revert depgraph._show_unsatisfied_dep() to display toZac Medico2010-09-011-14/+14
| | | | | | | | | stdout, so that app-portage/autounmask continues to work. Note that depgraph.display_problems() temporarily overrides the stdout stream to point to stderr, so mask messages shown there continue to go to stderr. Maybe the emerge --autounmask will eventually make app-portage/autounmask obsolete, but for now we should support both approaches since emerge --autounmask is relatively experimental.
* Fix depgraph._serialize_tasks() so that portage-9999 is always promotedZac Medico2010-08-311-1/+3
| | | | to the front of the merge list when it is reinstalled.
* When portage updates itself and the new version either inheritsZac Medico2010-08-311-1/+3
| | | | | | | | | git.eclass or has 9999 in its version, trigger the 'use copy of current sources for install, then restart portage' routine. This is required since with the live git portage-9999 ebuild we can't use the version to detect incompatible changes to ebuild.sh. This issue was noticed due to recent versions of ebuild.sh expecting PORTAGE_BZIP2_COMMAND to be set, causing incompatibility with installed portage-9999 instances.
* Rename the portage.sets module to portage._sets since it will be usefulZac Medico2010-08-301-2/+2
| | | | | in the upcoming 2.1.9 branch which will not have sets support but will still have the code in private and disabled form.
* Fix some typos.Arfrever Frehtes Taifersar Arahesis2010-08-291-1/+1
|
* If there are circular dependencies, and circular_dependency_handlerZac Medico2010-08-281-3/+6
| | | | | | doesn't have a message, eliminate root nodes before calling digraph.debug_print(). If --debug is enabled then do this even if circular_dependency_handler has a message.
* In depgraph._show_unsatisfied_dep(), show some debug info ifZac Medico2010-08-281-5/+12
| | | | Atom.violated_conditionals() raises InvalidAtom.
* Fix breakage from previous commit.Zac Medico2010-08-261-0/+2
|
* Use Package.visible to simplify visibility checks for installedZac Medico2010-08-261-11/+1
| | | | packages, no that it accounts for invalid metadata.
* Ensure SystemExit is never caught.Zac Medico2010-08-261-2/+2
|
* Remove obsolete TODO comment.Zac Medico2010-08-251-3/+0
|
* Just raise InvalidDependString in cases when it shouldn't happen sinceZac Medico2010-08-251-11/+7
| | | | | the package is not installed and it should have been validated and masked already if necessary.
* Make _get_masking_status() return masking reasons for installed packagesZac Medico2010-08-251-11/+9
| | | | | | | with invalid metadata, and remove show_invalid_depstring_notice() calls for installed packages since depgraph.display_problems() will now show the invalid metadata masking reasons when it displays installed packages that are masked.
* Bug #334365 - Fix depgraph._wrapped_select_pkg_highest_available_imp()Zac Medico2010-08-251-4/+20
| | | | | | to avoid invalid or masked installed packages when necessary. This is especially important for invalid packages since they need be replaced so that their dependencies can be parsed for --depclean operations.
* Bug #334365 - Mask packages with invalid metadata as early as possible,Zac Medico2010-08-251-11/+10
| | | | | | so that the depgraph won't select them unless they are already installed and there is no other choice. This should trigger automatic reinstallation of installed packages that have invalid metadata.
* Bug #334365 - When parsing dependencies of installed packages inZac Medico2010-08-251-2/+27
| | | | | | | | | | | depgraph._add_pkg_deps(), ignore invalid USE conditionals, since these are a common problem and it's practical to ignore them for installed packages. TODO: For installed package, save any InvalidDependString info in dynamic_config and wait until display_problems() to show it. For packages that aren't installed, we should validate and mask them before they are selected.
* More _pkg_use_enabled fixesSebastian Luther2010-08-241-18/+22
|
* * Use iterators instead of keys() when possible.Zac Medico2010-08-231-8/+8
| | | | | | * Use iterators instead of sets for set.intersection() calls. * Use digraph.__iter__ and __contains__ as shortcuts to digraph.nodes access.
* In depgraph._select_pkg_highest_available_imp(), make sureZac Medico2010-08-231-1/+2
| | | | | allow_unstable_keywords is True before adding a package to _needed_unstable_keywords.
* Pass a keyword hint from getmaskingstatus() to the autounmask code.Zac Medico2010-08-231-2/+11
|
* Fix broken writemsg call in depgraph._resolve() that triggers this error:Zac Medico2010-08-211-1/+1
| | | | TypeError: writemsg() got an unexpected keyword argument 'file'
* --autounmask: If we can't do a change because of REQUIRED_USE, give at least ↵Sebastian Luther2010-08-201-11/+41
| | | | a good error message
* --autounmask: Don't do use changes if they violate REQUIRED_USESebastian Luther2010-08-201-19/+32
| | | | This also fixes some pkg.use.enabled / _pkg_use_enabled(pkg) bugs
* slot collision handler: Work correctly with --autounmaskSebastian Luther2010-08-201-3/+1
|
* Add experimental EPREFIX/EROOT support to the config and vartreeZac Medico2010-08-191-4/+1
| | | | | | | | | classes, and use it in ResolverPlayground to emulate a prefix-like environment. This fixes ResolverPlayground so that it doesn't have to abuse the --root and --root-deps options in order to create a testing environment. Instead it simply creates a temporary EPREFIX. WARNING: EPREFIX/EROOT support is experimental and may be incomplete for cases in which EPREFIX is non-empty.
* Rename the bdeps_root variable to depend_root, since it's used to controlZac Medico2010-08-191-4/+4
| | | | | DEPEND and in the future we may have separate build-time dep types for host and target.
* Eliminate the bdeps_optional variables inside depgraph._add_pkg_deps(),Zac Medico2010-08-191-4/+3
| | | | and use the pkg.built attribute instead.
* Move the clever parts of depgraph._show_circular_deps into its own module.Sebastian Luther2010-08-191-155/+13
| | | | This also fixes some bugs related to autounmask.
* cycle-finder: Don't try to change flags that are in use.{make,focrce}Sebastian Luther2010-08-191-16/+5
|
* When suggesting solutions inside _show_circular_deps(), ignore solutionsZac Medico2010-08-181-0/+16
| | | | that involve changes to use.mask or use.force settings.
* Fix deprecation warnings from paren_reduce.Zac Medico2010-08-181-2/+2
|
* Fix small bug in _show_circular_deps and add some testsSebastian Luther2010-08-181-2/+1
|
* _show_circular_deps: Ignore solution that violate use dpendencies specified ↵Sebastian Luther2010-08-181-6/+39
| | | | by parents. Warn the user if there are many cycles.
* _show_circular_deps: Stop prunning the graph to show (other) parents of the ↵Sebastian Luther2010-08-181-14/+0
| | | | involved packages in the merge list
* _show_circular_deps: Fix handling of 'None' returned by ↵Sebastian Luther2010-08-181-1/+2
| | | | extract_affecting_use and remove debug output
* _emerge.depgraph._show_circular_deps(): Find suggestions if an atom occures ↵Sebastian Luther2010-08-181-11/+66
| | | | more than once in a dep string
* Print suggestions for circular dependenciesSebastian Luther2010-08-181-8/+44
|
* _emerge.depgraph._show_circular_deps(): Display only the smallest cycleSebastian Luther2010-08-181-1/+31
|
* * Replace config._iuse_implicit_re with a callable _iuse_implicit_matchZac Medico2010-08-181-7/+2
| | | | | | | object that simply returns boolean, and update consumers. * Make check_required_use() take a callable for the iuse parameter, and pass in Package.use.is_valid_flag or iuse.__contains__ as appropriate.
* Pass is_valid_flag to use_reduce if possibleSebastian Luther2010-08-161-3/+3
|
* Atom.violated_conditionals: Use iuse.is_valid_flag instead of iuse.allSebastian Luther2010-08-131-2/+3
|
* Implement use dependency defaultsSebastian Luther2010-08-131-8/+24
|
* autounmask: Print use flag that trigger a given dep in commentsSebastian Luther2010-08-121-2/+33
|
* _emerge.depgraph: use writemsg() instead of print() (to silence tests)Sebastian Luther2010-08-121-48/+40
|
* Tests: resolver/test_slot_collisions: Check for slot_collision_solutionsSebastian Luther2010-08-121-2/+5
|
* slot_collision_handler: Return a string instead of priting the messages to ↵Sebastian Luther2010-08-121-3/+9
| | | | screen.
* Add new slot collision handler in _emerge/resolver/slot_collision.pySebastian Luther2010-08-121-186/+7
|
* autounmask: Print comments for USE changes tooSebastian Luther2010-08-121-0/+1
|
* Make REQUIRED_USE work again. Without paren_reduce this time.Sebastian Luther2010-08-111-9/+7
|