Summary: | emerge fails with AttributeError traceback after dependency calculation | ||
---|---|---|---|
Product: | Portage Development | Reporter: | unixway.drive+bugs.gentoo |
Component: | Core - Interface (emerge) | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | sebastian_ml |
Priority: | Normal | Keywords: | InVCS |
Version: | 2.1 | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 373933 | ||
Attachments: |
output of `emerge --pretend --debug --backtrack=0 kopete`
output of `emerge --pretend --debug --backtrack=0 --autounmask=n kopete` fix the AttributeError fix another AttributeError case fix a third AttributeError case |
Description
unixway.drive+bugs.gentoo
2011-07-08 10:08:11 UTC
Please attach output for the same command with the --debug option: emerge --pretend --debug kopete &> debug.log (In reply to comment #1) > Please attach output for the same command with the --debug option: > > emerge --pretend --debug kopete &> debug.log Also use --backtrack=0 to make the log smaller. Created attachment 279431 [details]
output of `emerge --pretend --debug --backtrack=0 kopete`
(In reply to comment #3) > Created attachment 279431 [details] > output of `emerge --pretend --debug --backtrack=0 kopete` Please repeat this with --autounmask=n added to the options and attache the log. It looks like the conflict that leads to this might be due to x11-libs/qt-gui-4.7.2 having USE=qt3support disabled while kde-base/kopete-4.6.3 requires that qt3support be enabled. Created attachment 279469 [details]
output of `emerge --pretend --debug --backtrack=0 --autounmask=n kopete`
well, now it ends up without a traceback
Created attachment 279563 [details, diff]
fix the AttributeError
Save as /tmp/attributeerror.patch and apply as follows:
patch /usr/lib/portage/pym/_emerge/resolver/slot_collision.py /tmp/attributeerror.patch
This probably fixes your issue. Please test.
well, it still fails: thriller@xn--rih ~ >>> sudo emerge -av kopete Password: These are the packages that would be merged, in order: Calculating dependencies... done! Traceback (most recent call last): File "/usr/bin/emerge", line 43, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1907, in emerge_main myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 302, in action_build mydepgraph.display_problems() File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 5998, in display_problems self._display_problems() File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 6019, in _display_problems self._show_slot_collision_notice() File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 702, in _show_slot_collision_notice self._dynamic_config._slot_conflict_handler = slot_conflict_handler(self) File "/usr/lib64/portage/pym/_emerge/resolver/slot_collision.py", line 129, in __init__ self._prepare_conflict_msg_and_check_for_specificity() File "/usr/lib64/portage/pym/_emerge/resolver/slot_collision.py", line 352, in _prepare_conflict_msg_and_check_for_specificity if use in violated_atom.use.enabled or \ AttributeError: 'NoneType' object has no attribute 'enabled' Ah! The primitive debugging tool called print(repr(violated_atom)) reports u'~x11-libs/qt-core-4.7.2' with or without a patch. Created attachment 279587 [details, diff] fix another AttributeError case (In reply to comment #8) > Ah! The primitive debugging tool called print(repr(violated_atom)) reports > > u'~x11-libs/qt-core-4.7.2' Thanks, that helped a lot. This patch applies on top of the first one. It will definitely solve the problem, since it explicitly checks the attribute that triggered the AttributeError. Calculating dependencies... done! Traceback (most recent call last): File "/usr/bin/emerge", line 43, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1907, in emerge_main myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 302, in action_build mydepgraph.display_problems() File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 5998, in display_problems self._display_problems() File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 6019, in _display_problems self._show_slot_collision_notice() File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 702, in _show_slot_collision_notice self._dynamic_config._slot_conflict_handler = slot_conflict_handler(self) File "/usr/lib64/portage/pym/_emerge/resolver/slot_collision.py", line 154, in __init__ new_solutions = self._check_configuration(config, all_conflict_atoms_by_slotatom, conflict_nodes) File "/usr/lib64/portage/pym/_emerge/resolver/slot_collision.py", line 604, in _check_configuration for flag in violated_atom.use.required: AttributeError: 'NoneType' object has no attribute 'required' Created attachment 279595 [details, diff]
fix a third AttributeError case
This applies on top of the other 2 patches. Hopefully this is the last one.
Everything works now, thanks! Thanks for testing. This is fixed in 2.1.10.5 and 2.2.0_alpha44. *** Bug 376167 has been marked as a duplicate of this bug. *** |