summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
Commit message (Collapse)AuthorAgeFilesLines
* resume_depgraph: fix breakage from reposyntaxZac Medico2011-07-111-1/+3
| | | | | This is a major regression that has been triggering lots of complaints about emerge --keep-going.
* Log maintainer info for pretend and nofetch.Zac Medico2011-07-111-4/+11
| | | | | | Also, suppress this maintainer info from going to stdout since it's intended for the log and it doesn't necessarily need to be visible elsewhere. This will fix bug #374809.
* is_valid_package_atom: fix circular importZac Medico2011-07-112-16/+15
| | | | | | Due to a quirk in python import behavior, this only failed nondeterministically. However, the new preinst sanity test in the portage-9999 ebuild tends to trigger it more often for some people.
* Migrate from codecs.open() to io.open().Zac Medico2011-07-106-22/+27
| | | | | | | | | | | | | | | | | The io.open() function is the same as the built-in open() function in python3, and its implementation is optimized in python-2.7 and later. In addition to the possible performance improvement, this also allows us to avoid any future compatibility issues with codecs.open() that may arise if it is delegated to the built-in open() function as discussed in PEP 400. The main caveat involved with io.open() is that TextIOWrapper.write() raises TypeError if given raw bytes, unlike the streams returned from codecs.open(). This is mainly an issue for python2 since literal strings are raw bytes. We handle this by wrapping TextIOWrapper.write() arguments with our _unicode_decode() function. Also, the atomic_ofstream class overrides the write() method in python2 so that it performs automatic coercion to unicode when necessary.
* circular_dependency: fix total_flags calcZac Medico2011-07-101-2/+2
|
* depgraph: more debug output for _add_pkgZac Medico2011-07-102-17/+44
| | | | | This should make it easier to debug cases like bug 374423, among others.
* slot_collision: fix more for bug 374423Zac Medico2011-07-101-0/+9
|
* slot_collision: fix AttributeError for bug 374423Zac Medico2011-07-101-0/+14
|
* depgraph: reject USE conditionals in argumentsZac Medico2011-07-091-0/+8
|
* circular_dependency: fix REQUIRED_USE testZac Medico2011-07-091-0/+17
|
* circular_dependency: fix ridiculously long loopZac Medico2011-07-091-10/+0
| | | | | | | | The flags from REQUIRED_USE were added to affecting_use, which was not really necessary and was a bad idea because a number of flags in affecting_use affects our number of loops exponentially. This will fix bug #374397 in which the large number of flags in the REQUIRED_USE of dev-lang/php-5.3.6-r1 triggered execution of 2 ^ 45 loops.
* slot_collision: be consistent with missing IUSEZac Medico2011-07-091-7/+14
| | | | | | Special handling for missing IUSE that was introduced in commit 9a193d42032005396800eb30e550691513529c79 is also useful in one more spot.
* circular_dependency: show debug graph earlierZac Medico2011-07-092-2/+11
| | | | | This might help in some cases like bug 374397 where we're troubleshooting the circular_dependency code.
* circular_dependency: use itertools.product()Zac Medico2011-07-091-24/+3
| | | | | Python's cartesian product function does exactly what we want, so use it to simplify our code.
* depgraph: include pkg.repo in debug outputZac Medico2011-07-091-2/+3
|
* getportageversion: omit implicit -r0 for libcZac Medico2011-07-081-1/+4
|
* Qualify "missed update" message as WARNING.Zac Medico2011-07-081-2/+2
|
* add FEATURES=allow-missing-manifestsBrian Harring2011-07-061-1/+2
| | | | | | | The feature is as it sounds- primarily useful for temporary trees or instances where manifests aren't used. Signed-off-by: Brian Harring <ferringb@gmail.com>
* Show repository in error message about missing USE flags.Arfrever Frehtes Taifersar Arahesis2011-07-031-1/+1
|
* UseFlagDisplay: fix USE_EXPAND_HIDDEN breakageZac Medico2011-06-301-1/+1
|
* Detect/create missing soname symlinks for libs.Zac Medico2011-06-291-0/+10
| | | | | | | This will allow us to safely use the ldconfig -X option for all ldconfig calls, an thereby avoid having ldconfig override our own soname symlink policy which allows preserve-libs to work correctly when libraries are downgraded as discussed in bug 373341.
* pkg_use_display(): Use use.expand and use.expand_hidden attributes.Arfrever Frehtes Taifersar Arahesis2011-06-271-4/+2
|
* Package.use: share identical frozenset instancesZac Medico2011-06-261-4/+12
|
* Package: add use.expand/expand_hidden attributesZac Medico2011-06-262-9/+25
| | | | | This allows the merge list display to account for repository-level USE_EXPAND and USE_EXPAND_HIDDEN settings (see bug #370693).
* use_reduce: less strict for installedZac Medico2011-06-211-4/+10
|
* extract_affecting_use: less strict for installedZac Medico2011-06-212-4/+14
|
* misspell-suggestions: filter the input cpZac Medico2011-06-171-1/+7
| | | | | Obviously, we don't want to consider the input cp as a possible suggestion, as reported in bug 372033.
* expand_set_args: add root SetArg nodes to graphZac Medico2011-06-161-0/+5
| | | | | This prevents get_dep_chain from triggering a KeyError some cases as reported in bug #371767.
* pkg_use_enabled: return early for built pkgsZac Medico2011-06-131-1/+3
| | | | | | | | Built/installed packages have frozen USE settings, so there's no sense in considering them for autounmask USE config changes. They'll simply be rejected by select_package, and an unbuilt ebuild will be selected instead. This will fix bug 371423 by avoiding unnecessary use_reduce calls on the deps of installed packages.
* Scheduler: make --fetchonly skip pkg_pretendZac Medico2011-06-131-3/+4
|
* test_merge_order: test smallest runtime cycleZac Medico2011-06-121-0/+6
| | | | | | | | | In the case of multiple runtime cycles, where some cycles may depend on smaller independent cycles, it's optimal to merge smaller independent cycles before other cycles that depend on them. Therefore, we search for the smallest cycle in order to try and identify and prefer these smaller independent cycles.
* Fix a typo in a comment.v2.2.0_alpha40Arfrever Frehtes Taifersar Arahesis2011-06-111-1/+1
|
* serialize_tasks: debug output for runtime cyclesZac Medico2011-06-111-1/+12
|
* serialize_tasks: asap ignore medium_soft earlierZac Medico2011-06-111-5/+11
| | | | | | This allows us to avoid the less efficient runtime cycle pathway for cases in which an asap node is a leaf if medium_soft deps are ignored. Ths should increase efficiency without changing behavior.
* serialize_tasks: minimize runtime cycles moreZac Medico2011-06-111-3/+6
|
* serialize_tasks: minimize nodes in runtime cyclesZac Medico2011-06-101-30/+30
| | | | | | | When gathering the nodes belonging to a runtime cycle, we want to minimize the number of nodes gathered, since this tends to produce a more optimal merge order. Ignoring all medium_soft deps serves this purpose.
* depgraph._serialize_tasks: revert formatting diffZac Medico2011-06-101-6/+5
|
* depgraph._serialize_tasks: move libperl/perl codeZac Medico2011-06-101-14/+17
| | | | | This ensures that all asap_nodes are explored before setting prefer_asap to False.
* depgraph._serialize_tasks: tweak last commit moreZac Medico2011-06-101-3/+3
|
* depgraph._serialize_tasks: tweak last commitZac Medico2011-06-101-7/+9
| | | | This code is only intended when more than one node is selected.
* slot_collision_notice: don't omit any use depZac Medico2011-06-101-14/+16
| | | | | | When USE flags are removed, it can be essential to see all broken reverse dependencies here, so don't omit any. If the list is long, people can simply use a pager.
* show_unsatisfied_blockers: don't omit any pkgsZac Medico2011-06-101-17/+10
| | | | | It can be essential to see all the packages here, so don't omit any. If the list is long, people can simply use a pager.
* depgraph._serialize_tasks: fix libperl/perl orderZac Medico2011-06-101-5/+17
| | | | | | In some cases, the asap_nodes code caused selection of a large runtime cycle that was obviously sub-optimal. Now such cases are detected and avoided.
* SubProcess: fix status for _set_returncode callerZac Medico2011-06-095-9/+9
| | | | | | These callers don't intend to make WIFSIGNALED return True, so they need to shift their codes 8 bits to the left. This ensures that commit 88f5bf84e2fd23125910b2ecaffc035971445696 behaves as intended.
* AbstractEbuildProcess: handle kill by signalZac Medico2011-06-091-5/+19
| | | | This will fix bug #368817.
* SubProcess: make returncode like PopenZac Medico2011-06-091-6/+10
|
* show_masked_packages: EAPI metadata safetyZac Medico2011-06-091-0/+3
| | | | | When masked by EAPI, metadata is mostly useless since it doesn't contain essential things like SLOT.
* _show_unsatisfied_dep: fix logic for EAPI maskZac Medico2011-06-091-6/+9
| | | | This will fix bug #370465.
* unmerge: show virtual in system unmerge warningZac Medico2011-06-081-1/+9
| | | | | | This is intended to clarify the messages shown in bug #370295, so that it's obvious when a package is a member of the system set due to it being a virtual provider.
* autounmask-write: prefer package.accept_keywordsZac Medico2011-06-081-2/+2
|