| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This prevents the following traceback which was reported in forum
thread 847007:
File "pym/_emerge/depgraph.py", line 3694, in _merge_order_bias
mygraph.order.sort(key=cmp_sort_key(cmp_merge_preference))
File "pym/portage/util/__init__.py", line 808, in __lt__
return self._cmp_func(self._obj, other._obj) < 0
File "pym/_emerge/depgraph.py", line 3675, in cmp_merge_preference
if node1.operation == 'uninstall':
AttributeError: 'SetArg' object has no attribute 'operation'
|
|
|
|
|
|
| |
The --buildpkgonly option does not negate the need for _load_vdb(),
at least not with the --resume option since otherwise the
select_pkg_from_graph() method fails to select installed packages.
|
| |
|
|
|
|
| |
to addition of repo to Package._hash_key.
|
|
|
|
|
|
|
|
|
|
| |
version if appropriate.
Generally, we mask the higher version since this solves common
cases in which a lower version is needed so that all dependencies
will be satisfied (bug #337178). However, if existing_node happens
to be installed then we mask that since this is a common case that
is triggered when --update is not enabled.
|
|
|
|
| |
to refer to the new pkg, not the one to_be_masked.
|
|
|
|
|
|
|
|
| |
bug #337178 and comment about reasoning for behavior.
We always mask existing_node since _select_package tries to avoid
slot conflicts when possible and therefore a conflict typically
means that existing_node was a poor choice.
|
|
|
|
|
|
|
|
|
|
|
| |
depgraph._show_missed_update_slot_conflicts() since the fix from
bug #337178.
When depgraph._add_pkg() was fixed to mask the higher version in
4bc78ab0b563697b98527eebcdfe474863383cf0, we didn't adjust the
parent_atoms variable so that it would contain parent atoms from
the versions being masked. This resulted in confusing messages from
depgraph._show_missed_update_slot_conflicts().
|
|
|
|
| |
list printer
|
| |
|
| |
|
|
|
|
| |
updates args with _set_args().
|
| |
|
| |
|
| |
|
|
|
|
| |
fix from bug #337540.
|
| |
|
|
|
|
| |
depgraph._show_unsatisfied_dep().
|
|
|
|
| |
sets.
|
|
|
|
| |
enabled.
|
| |
|
|
|
|
|
|
| |
A new depgraph._expand_set_args() method adds nested SetArg instances
to the digraph, in order to record parent -> child relationships from
nested sets.
|
|
|
|
|
|
|
|
| |
depgraph._complete_graph().
With this patch, nested set traversal is only used for removal
operations like --depclean and --prune. A later patch will introduce
similar traversal for all operations, in order to solve bug #337540.
|
|
|
|
| |
DependencyArg.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
self._frozen_config.pkgsettings so that it has populated virtuals.
This solves allows us to avoid triggering an AssertionError reported
at http://forums.gentoo.org/viewtopic-t-844519.html with the following
traceback:
Calculating dependencies... done!
Traceback (most recent call last):
File "/usr/bin/emerge", line 43, in <module>
retval = emerge_main()
File "/usr/lib/portage/pym/_emerge/main.py", line 1683, in emerge_main
myopts, myaction, myfiles, spinner)
File "/usr/lib/portage/pym/_emerge/actions.py", line 204, in action_build
settings, trees, mtimedb, myopts, myparams, spinner)
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 6047, in resume_depgraph
myparams, spinner)
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 6070, in _resume_depgraph
skip_masked=skip_masked)
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 5617, in _loadResumeCommand
if not self._add_pkg(task, None):
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 893, in _add_pkg
pkgsettings.setinst(pkg.cpv, pkg.metadata)
File "/usr/lib/portage/pym/portage/package/ebuild/config.py", line 1757, in setinst
self._virtuals_manager.add_depgraph_virtuals(mycpv, virts)
File "/usr/lib/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 199, in add_depgraph_virtuals
self.getvirtuals()
File "/usr/lib/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 156, in getvirtuals
self._compile_virtuals()
File "/usr/lib/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 131, in _compile_virtuals
"any query about virtuals"
AssertionError: _populate_treeVirtuals() must be called before any query about virtuals
|
|
|
|
| |
This patch also drops flags with EAPI 4 use dep defaults from use.required.
|
|
|
|
| |
to masked or forced USE flags.
|
|
|
|
|
| |
change to parent USE is not a valid solution (a normal mask message should
be displayed instead).
|
| |
|
|
|
|
|
| |
for availability and visibilty checks. This provides consistency
with install operations, so we don't get install/uninstall cycles.
|
| |
|
|
|
|
| |
visiblity checks with self._pkg_visibility_check().
|
|
|
|
| |
object.
|
|
|
|
|
| |
USE settings for installed packages when --newuse is enabled in
cases when none of the packages match a given USE dep.
|
|
|
|
|
| |
Package instances whose root_config attribute is a specially optimized
RootConfig that has a FakeVartree instead of a real vartree.
|
|
|
|
| |
to packages in the FakeVartrees.
|
|
|
|
|
|
|
| |
_scheduler_graph_config instead of just a digraph. This new
object includes instances of FakeVartree and a package cache
that is pruned to contain only installed packages or those
in the digraph.
|
|
|
|
| |
sets.
|
|
|
|
| |
USE settings for installed packages when --newuse is enabled.
|
| |
|
| |
|
|
|
|
| |
and parent changes exist
|
|
|
|
| |
depgraph._show_unsatisfied_dep() calls it.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
to the front of the merge list when it is reinstalled.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
in the upcoming 2.1.9 branch which will not have sets support but will
still have the code in private and disabled form.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Atom.violated_conditionals() raises InvalidAtom.
|