summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
Commit message (Collapse)AuthorAgeFilesLines
* Bug #249805 - Add some more PreservedLibsRegistry.pruneNonExisting() calls,Zac Medico2008-12-041-0/+3
| | | | | | | to avoid a KeyError from LinkageMap.findConsumers() triggered inside display_preserved_libs(). svn path=/main/trunk/; revision=12152
* Make sure depgraph._slot_conflict_explanation() doesn't display the sameZac Medico2008-12-041-1/+1
| | | | | | atom more than once. svn path=/main/trunk/; revision=12150
* Bug #249185 - For common cases in which USE deps trigger SLOT conflicts, giveZac Medico2008-12-041-18/+98
| | | | | | a short explanation and suggest a course of action to solve the problem. svn path=/main/trunk/; revision=12148
* Break references between the depgraph and the dropped tasks insideZac Medico2008-12-031-0/+1
| | | | | | | Scheduler._calc_resume_list(), since the tasks are now saved for display at the end. svn path=/main/trunk/; revision=12146
* When --keep-going drops packages due to unsatisfied dependencies, includeZac Medico2008-12-031-0/+1
| | | | | | | them in the list of packgaes that "failed to build or install" that's displayed at the end. svn path=/main/trunk/; revision=12144
* Fix depgraph._dep_check_composite_db._visible() to reject installed packagesZac Medico2008-12-021-7/+7
| | | | | | | | | that are masked. This is necessary for correct choices in || deps when we want to ensure that installed masked packages are not preferred over other available choices that are not masked. Thanks to Jan Kundrát <jkt@g.o> for reporting this issue and testing the patch. svn path=/main/trunk/; revision=12138
* Bug #249185 - For more useful output in cases when one or more USE depsZac Medico2008-12-011-50/+122
| | | | | | | | trigger "SLOT conflicts", show the specific atoms that triggered the conflict. TODO: Distiguish between various possible causes and tailor messages to suit them. svn path=/main/trunk/; revision=12125
* Change depgraph._slot_collision_info() from a set to a dict that containsZac Medico2008-11-301-11/+16
| | | | | | | sets of packages pulled into a given slot. This will make the data easier to analyze when implementing a fix for bug #249185. svn path=/main/trunk/; revision=12124
* Add a sanity check inside depgraph._add_pkg() to ensure that the dependenciesZac Medico2008-11-291-1/+5
| | | | | | of the same package are never processed more than once. svn path=/main/trunk/; revision=12122
* Make Scheduler.merge() bail out early if PORTAGE_TMPDIR is not properly set.Zac Medico2008-11-261-0/+16
| | | | svn path=/main/trunk/; revision=12103
* Bug #248782 - Handle permission error in EbuildFetchonly.execute() if ↵Zac Medico2008-11-261-1/+6
| | | | | | | | PORTAGE_TMPDIR is not writable. svn path=/main/trunk/; revision=12092
* Remove world and system targets for emerge --help since it no longer works ↵Zac Medico2008-11-251-29/+0
| | | | | | | | now that they are sets rather than actions. svn path=/main/trunk/; revision=12086
* Inside profile_check(), call validate_ebuild_environment() to generateZac Medico2008-11-241-0/+2
| | | | | | some extra profile warnings when appropriate. svn path=/main/trunk/; revision=12066
* Make emerge detect an invalid profile an bail out for anything exceptZac Medico2008-11-241-0/+20
| | | | | | | | --help, --info, --sync, and --version actions. When bailing out, suggest to revert back to the previous profile configuration advise the user which actions are allowed with an invalid profile. svn path=/main/trunk/; revision=12065
* Fix the code from bug #245358 so that it's guaranteed to traverse all theZac Medico2008-11-231-6/+8
| | | | | | way to a root node, even when circular deps are encountered. svn path=/main/trunk/; revision=12051
* When displaying anscestors of an unstatisfied dependency (code from bugZac Medico2008-11-231-0/+5
| | | | | | | #245358), avoid a potential infinite loop and memory leak triggered by circular dependencies. Thanks to Peter Weller <welp@g.o> for reporting. svn path=/main/trunk/; revision=12045
* Bug #247776 - Show a warning message if CONFIG_PROTECT is empty.Zac Medico2008-11-211-0/+9
| | | | svn path=/main/trunk/; revision=12022
* Bug #248059 - Make --depclean more tolerant of invalid atoms in dependenciesZac Medico2008-11-211-5/+4
| | | | | | of packages that will be uninstalled anyway. svn path=/main/trunk/; revision=12020
* Bug #248059 - In action_depclean(), ignore invalid atoms in deps of packagesZac Medico2008-11-211-1/+4
| | | | | | to be uninstalled. svn path=/main/trunk/; revision=12018
* In EbuildProcess._start(), don't open the log file during the clean phaseZac Medico2008-11-211-1/+5
| | | | | | | | since the open file can result in an nfs lock on $T/build.log which prevents the clean phase from removing $T. Thanks to Jeremy Olexa <darkside@g.o> for reporting. svn path=/main/trunk/; revision=12016
* In JobStatusDisplay, always flush the output stream after writing to it.Zac Medico2008-11-211-0/+4
| | | | svn path=/main/trunk/; revision=12014
* When given an ambiguous ebuild name to install, format the list of choicesZac Medico2008-11-211-8/+37
| | | | | | | in emerge --search format if --quiet mode is not enabled, otherwise just show a brief list. Thanks to Markus Meier <maekke@g.o> for the suggestion. svn path=/main/trunk/; revision=12012
* Bug #247370 - Use a private PORTAGE_TMPDIR for --fetchonly mode in orderZac Medico2008-11-201-6/+12
| | | | | | | | | | | do avoid locking the normal build dir location (similar to bug #245231). The EbuildFetchPretend class is renamed to EbuildFetchonly and it's used for --fetchonly mode regardless of whether --pretend is enabled. Also, fix stdout/stderr flushing in JobStatusDisplay.displayMessage() and portage.spawn() to ensure output always occurs in the correct order when displaying pkg_nofetch() output in --fetchonly mode. svn path=/main/trunk/; revision=12006
* Remove --fetchonly --resume time.sleep() call which is an artifact from theZac Medico2008-11-191-5/+0
| | | | | | previous parallel-fetch implementation. svn path=/main/trunk/; revision=12001
* Move the repo_name check/warning into a function.Zac Medico2008-11-181-23/+27
| | | | svn path=/main/trunk/; revision=11995
* When warning about 'missing repo_name', also give the exact path where theZac Medico2008-11-181-9/+17
| | | | | | | | entry should exist, and explain that it should be a plain text file containing a unique name of the first line. This should give the users enough information to correct the problem without needing to seek help. svn path=/main/trunk/; revision=11994
* When a "slot conflict" occurs due to USE dependencies, display the usualZac Medico2008-11-161-1/+4
| | | | | | | slot conflict output together with the unsatisfied USE dependency output, since both might be useful. svn path=/main/trunk/; revision=11960
* Fix logic inside PollScheduler._can_add_job() so that load average isZac Medico2008-11-151-1/+1
| | | | | | properly considered when a single job is running. svn path=/main/trunk/; revision=11958
* Inside depgraph._add_pkg(), handle the case where multiple differentZac Medico2008-11-151-0/+14
| | | | | | | | | instances of the same version (typically one installed and another not yet installed) have been pulled into the graph due to a USE dependency. The "slot collision" display is not helpful in a case like this, so display it as an unsatisfied dependency. Thanks to Peter Volkov <pva@g.o> for reporting. svn path=/main/trunk/; revision=11954
* Check the return value from depgraph._add_pkg() when adding library consumersZac Medico2008-11-151-2/+5
| | | | | | inside action_depclean(). svn path=/main/trunk/; revision=11953
* Make depgraph.display_problems() send unsatisfied dependency ouput to stdout,Zac Medico2008-11-151-4/+6
| | | | | | for parsing by programs such as autounmask. svn path=/main/trunk/; revision=11949
* Bug #246853 - Redirect all ouput from depgraph.display_problems() to stderr.Zac Medico2008-11-151-0/+22
| | | | svn path=/main/trunk/; revision=11948
* Bug #236207 - Replace some hardcoded colors with color codes, and useZac Medico2008-11-151-23/+33
| | | | | | portage.output.EOutput() where appropriate. svn path=/main/trunk/; revision=11935
* Bug #173284 - Update config update counting code in chk_updated_cfg_files()Zac Medico2008-11-151-3/+3
| | | | | | so hidden directories are ignored. svn path=/main/trunk/; revision=11933
* Make post_emerge() exit early if it detects that the vdb state hasn't changed.v2.2_rc14Zac Medico2008-11-111-0/+9
| | | | | | | This works by comparing a hash of the COUNTER values for all packages in the vdb. svn path=/main/trunk/; revision=11859
* Allow --keep-going to continue in some cases when a runtime dependency hasZac Medico2008-11-111-2/+9
| | | | | | | failed to build or install. This involves pruning off the parts of the graph containing installed packages with unsatisfied dependencies. svn path=/main/trunk/; revision=11858
* Simplify code for cloning config instances inside Scheduler.merge().Zac Medico2008-11-111-1/+1
| | | | svn path=/main/trunk/; revision=11856
* Fix logic from previous commit in Scheduler._choose_pkg() to ensure thatZac Medico2008-11-111-1/+2
| | | | | | the --nodeps code is only triggered when --jobs > 1. svn path=/main/trunk/; revision=11848
* When in --nodeps mode, make Scheduler._set_digraph() discard the digraph andZac Medico2008-11-111-3/+4
| | | | | | make Scheduler._choose_pkg() always return the task at the front of the queue. svn path=/main/trunk/; revision=11847
* Inside depgraph.loadResumeCommand(), initialize self._scheduler_graph whenZac Medico2008-11-111-0/+1
| | | | | | | in --nodeps mode in order to avoid an AttributeError later when self.schedulerGraph() is called. svn path=/main/trunk/; revision=11846
* Fix --jobs parallel scheduling to ensure that temporary simultaneousZac Medico2008-11-101-39/+35
| | | | | | | | | installation of conflicting packages is avoided when appropriate (especially for !!atom blockers), but allowed in specific cases that require it. This is accomplished by reversing specific uninstall edges in the digraph, while possibly leaving some edges in there original state. svn path=/main/trunk/; revision=11845
* Revert r11839 since it's not necessarily desired to invert all uninstallZac Medico2008-11-101-4/+5
| | | | | | | edges. TODO: Invert only the specific edges that the depgraph has decided are necessary and allowed to be inverted. svn path=/main/trunk/; revision=11844
* Remove unused formatter code in show_invalid_depstring_notice().Zac Medico2008-11-091-3/+0
| | | | svn path=/main/trunk/; revision=11841
* Make show_invalid_depstring_notice() send output to stderr via writemsg_level().Zac Medico2008-11-091-12/+5
| | | | svn path=/main/trunk/; revision=11840
* Inside Scheduler._reverse_uninstall_edges(), iover all nodes rather than justZac Medico2008-11-091-1/+4
| | | | | | | | | | the merge list, because some uninstall nodes may not be in the merge list since they will be performed as part of an upgrade within a slot. This solves a problem with Scheduler._choose_pkg() not parallelizing in some cases when it should, due to an uninstall node not having it's edge reversed like it's supposed to. svn path=/main/trunk/; revision=11839
* Move initialization of Scheduler._background from the constructor to theZac Medico2008-11-091-13/+32
| | | | | | | | merge() method so that a potential InvalidDependString exception can be handled there, causing merge() to return unsuccessfully. This avoids having to raise an exception from the constructor. svn path=/main/trunk/; revision=11838
* Add PROPERTIES=interactive support in depgraph.display() and theZac Medico2008-11-091-0/+20
| | | | | | PackageCounters class. svn path=/main/trunk/; revision=11837
* Fix $ROOT handlink inside display_preserved_libs().Zac Medico2008-11-081-3/+3
| | | | svn path=/main/trunk/; revision=11829
* Handle CommandNotFound exceptions if the scanelf binary happens to be missing,Zac Medico2008-11-081-12/+22
| | | | | | and disable preserve-libs code in that case. svn path=/main/trunk/; revision=11827
* Remove the special package.keywords mask warning from bug #223447 sinceZac Medico2008-11-061-34/+4
| | | | | | | --depclean now uses the depgraph class and therefore should be more consistent with the update algorithm. svn path=/main/trunk/; revision=11815