summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
Commit message (Collapse)AuthorAgeFilesLines
* emerge: add 3 new options similar to --excludeDavid James2011-04-272-40/+116
| | | | | | | | | | | | | | | | | | | | | | | Add --nousepkg-atoms, --useoldpkg-atoms, and --reinstall-atoms flag to Portage reinstall-atoms accepts a space separated list of package names or slot atoms. Emerge will treat matching packages as if they are not installed, and reinstall them if necessary. useoldpkg-atoms accepts a space separated list of package names or slot atoms. Emerge will prefer matching binary packages over newer unbuilt packages. This is useful in case you want to request that a particular package won't be rebuilt from source. nousepkg-atoms accepts a space separated list of package names or slot atoms. Emerge will ignore matching binary packages. Change-Id: I0d73039c6a4cd63695b28ffc80215628e0e05c95 BUG=chromium-os:12507 TEST=Try out the flag Review URL: http://codereview.chromium.org/6577024
* --autounmask: Don't change masked/forced flagsSebastian Luther2011-04-271-0/+4
| | | | This will fix bug #364701.
* expand_new_virt: don't traverse blockersZac Medico2011-04-271-0/+6
|
* expand_new_virt: validate EAPI, IUSE and USEZac Medico2011-04-271-4/+25
|
* expand_new_virt: eliminate cpv_getkeyZac Medico2011-04-271-2/+1
|
* expand_new_virt: use stack for recursionZac Medico2011-04-261-24/+25
|
* Fix a typo.Arfrever Frehtes Taifersar Arahesis2011-04-261-1/+1
|
* emerge --info: support new-style virtualsZac Medico2011-04-261-23/+62
| | | | This will fix bug #364673.
* Remove unnecessary sync in Scheduler.py.David James2011-04-111-1/+1
| | | | | | | | | | | | | | If we are passed a fakevartree object, it should already be sync'd, so there is no need to sync it again here. This sync is only needed when we create a new FakeVartree, so I moved the sync to the right place to fix this. BUG=chromium-os:14035 TEST=Build a bunch of packages with this patch. Change-Id: I89d79cf946f4c0c27ad585ad7c88a41985260342 Review URL: http://codereview.chromium.org/6813084
* Fix a typo in a comment.Zac Medico2011-04-101-1/+1
|
* Scheduler: add more info in docstring commentsZac Medico2011-04-101-1/+7
| | | | This clarifies the purposes of _system_merge_started and _choose_pkg.
* Display: fix fetch restrict msg for RO_DISTDIRSZac Medico2011-03-311-2/+2
| | | | This will fix bug #361463.
* chk_updated_info_files: handle --quietZac Medico2011-03-301-3/+5
| | | | This will fix bug #361257.
* Scheduler: pkg_to_replace beware old-style virtZac Medico2011-03-261-1/+2
|
* BlockerDB: add SLOT match in discardBlockerZac Medico2011-03-261-1/+3
|
* MergeListItem: inherit _poll and _waitZac Medico2011-03-261-8/+0
|
* unmerge: fix PORTAGE_BACKGROUND logicZac Medico2011-03-261-0/+7
|
* Reoranize PackageMerge/MergeListItem interaction.Zac Medico2011-03-265-32/+22
|
* PackageMerge: call wait() for conformityZac Medico2011-03-251-2/+1
|
* Update header timestamps for modified files.Zac Medico2011-03-256-6/+6
|
* MergeProcess: call elog_process for replaced pkgsZac Medico2011-03-252-4/+0
|
* PollScheduler: tweak _unregister event cleanupZac Medico2011-03-251-5/+9
|
* PollScheduler: handle missing log directoryZac Medico2011-03-251-12/+23
| | | | | This can be triggered by AbstractPollTask._log_poll_exception(), as reported by Michael Haubenwallner <haubi@gentoo.org> for AIX.
* MergeProcess: Fix PORTAGE_BACKGROUND/LOG_FILE useZac Medico2011-03-243-14/+24
| | | | | | | | In this subprocess we don't want PORTAGE_BACKGROUND to suppress stdout/stderr output since they are pipes. We also don't want to open PORTAGE_LOG_FILE, since it will already be opened by the parent process, so we set the PORTAGE_BACKGROUND="subprocess" value for use in conditional logging code involving PORTAGE_LOG_FILE.
* Preserve elog message continuity during updates.Zac Medico2011-03-242-0/+4
| | | | | | This integrates the fix from commit 8209aeab647b1ab80a64d5931069b3533776ef75 with the asynchronous merge changes from commit 7535cabdf2fab76fc55df83643157613dfd66be9.
* Merge packages asynchronously in Portage.David James2011-03-245-53/+61
| | | | | | | | This allows for the scheduler to continue to run while packages are being merged and installed, allowing for additional parallelism and making better use of the CPUs. Review URL: http://codereview.chromium.org/6713043
* Update Portage to sync BlockerDB at init.David James2011-03-243-30/+25
| | | | | | | | | | | | Currently, Portage syncs the BlockerDB before every merge. This slows down merges considerably because it requires reading the entire vardb from disk. Since Portage doesn't merge conflicting packages anyway, we can optimize this by just reading the vardb at initialization and caching that. Change-Id: I6701926f022ef3aa2da10482fc8b09573ae24610 Review URL: http://codereview.chromium.org/6688037
* emerge: support [ y | n ] for --askZac Medico2011-03-242-3/+18
| | | | | | This allows --ask to be enabled via EMERGE_DEFAULT_OPTS, and then temporarily disabled via the command-line. This may be useful for programs that call emerge non-interactively, as in bug #360233.
* get_dep_chain: handle InvalidDependStringZac Medico2011-03-231-2/+6
|
* chk_updated_cfg_files: fix whitespace in messageZac Medico2011-03-201-1/+2
| | | | Thanks to Dennis Schridde in bug #359681.
* emerge_main: add "args" parameter (sys.argv[1:])Zac Medico2011-03-201-7/+12
| | | | | Also, fix local portage.debug import so that "global portage" is not necessary.
* TaskSequence: also call CompositeTask._cancel()Zac Medico2011-03-181-0/+1
| | | | | | This is a regression from commit 363a7478a100495d2e8597bc6c6d2fdac94339e0 but it's usually not noticeable with Ctrl-C since SIGINT is propagated to nested processes.
* Update timestamps in headers of modified files.v2.2.0_alpha28Zac Medico2011-03-184-4/+4
|
* PackageVirtualDbapi: fix get() for reposyntaxZac Medico2011-03-182-3/+3
|
* CompositeTask: fix _wait for TASK_QUEUEDZac Medico2011-03-181-3/+19
| | | | | | | Though this case might never have been triggered, the logic was broken for cases in which self.cancelled was false and a task was queued. In this case we need to call back into the scheduler until the queued task is started or we are cancelled, whichever comes first.
* EbuildIpcDaemon: use non-blocking writeZac Medico2011-03-171-5/+24
| | | | | | | | | | | This prevents the Scheduler from hanging if the client is killed before we can send the reply, as reported by David James: http://codereview.chromium.org/6713003 This commit depends on ebuild-ipc (the client) opening the other side of this fifo before it sends its request, which has already been added in commit eff879ff0ce7dcc1ce68d5f16de1ec73051f8c18.
* AsynchronousLock: implement _cancelZac Medico2011-03-171-0/+8
|
* AsynchronousTask: add _cancel template methodZac Medico2011-03-167-17/+21
|
* Update Scheduler to protect against infinite loopDavid James2011-03-161-4/+2
| | | | | If we have running tasks, but we're not listening to these tasks, we're going to loop forever. So throw an exception in this case.
* Scheduler: tweak prefetcher cancellation logicZac Medico2011-03-164-7/+16
| | | | | This should prevent "TypeError: an integer is required" raised from waitpid when trying to cancel a prefetcher that never started.
* CompositeTask: handle unstarted terminated tasksZac Medico2011-03-163-6/+24
|
* CompositeTask: fix assertion in _waitZac Medico2011-03-161-0/+5
|
* AsynchronousTask: always call wait() if cancelledZac Medico2011-03-164-10/+7
| | | | | | This is needed in order to ensure that exit listeners are called. Subclasses call the base class cancel() method in order to inherit the wait() call.
* Scheduler: terminate _merge_wait_queueZac Medico2011-03-161-0/+4
|
* slot_conflict: tweak message and fix grammarZac Medico2011-03-151-1/+1
|
* emerge: support [ y | n ] for --quietv2.2.0_alpha27Zac Medico2011-03-142-5/+31
| | | | | | This allows --quiet and --quiet-build to be enabled via EMERGE_DEFAULT_OPTS, and then temporarily disabled via the command- line.
* Update timestamps in headers of modified files.Zac Medico2011-03-141-1/+1
|
* Scheduler: fix AttributeError in _terminate_tasksZac Medico2011-03-121-1/+4
| | | | | Thanks to David James <davidjames@google.com> for reporting this error: AttributeError: 'EbuildPhase' object has no attribute 'merge'
* PollScheduler: tweek termination logicZac Medico2011-03-104-11/+36
| | | | | | | | | * PollScheduler and all subclasses now use the _terminated_tasks variable to check whether or not _terminate_tasks() has been called, and behave appropriately in that case. * The _schedule_tasks() method now has documentation about the relationship with _terminate_tasks() and _terminated_tasks.
* PollScheduler: call _terminate_tasks in _scheduleZac Medico2011-03-101-7/+11
| | | | | This prevents it from being called while the _schedule_tasks() implementation is running, in order to avoid potential interference.