portage.git
14 years agoBug #337180 - Add a strict_warn_for_unmatched_removal parameter for
Zac Medico [Wed, 15 Sep 2010 06:52:16 +0000 (23:52 -0700)]
Bug #337180 - Add a strict_warn_for_unmatched_removal parameter for
stack_lists() that will be useful for repoman, and disable it by default.

14 years agoLimit the spam caused by unmatched removal atoms
Sebastian Luther [Wed, 15 Sep 2010 06:29:10 +0000 (08:29 +0200)]
Limit the spam caused by unmatched removal atoms

14 years agoIn Package._validate_deps(), force unicode format string in
Zac Medico [Wed, 15 Sep 2010 06:32:43 +0000 (23:32 -0700)]
In Package._validate_deps(), force unicode format string in
check_required_use() exception handling (for python-2.x safety).

14 years agoMake Package._metadata_exception() use unicode format strings in order
Zac Medico [Wed, 15 Sep 2010 05:22:15 +0000 (22:22 -0700)]
Make Package._metadata_exception() use unicode format strings in order
to avoid UnicodeDecodeError in python-2.x.

This issue was reported in forum thread
http://forums.gentoo.org/viewtopic-t-844623.html where the following
traceback was posted:

  File "/usr/lib/portage/pym/_emerge/FakeVartree.py", line 195, in _pkg
    type_name="installed")
  File "/usr/lib/portage/pym/_emerge/Package.py", line 64, in __init__
    self._validate_deps()
  File "/usr/lib/portage/pym/_emerge/Package.py", line 93, in _validate_deps
    self._metadata_exception(k, e)
  File "/usr/lib/portage/pym/_emerge/Package.py", line 242, in _metadata_exception
    "%s: %s in '%s'" % (k, e, path))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 22: ordinal not in range(128)

14 years agoBug #336692 - When stack_lists() detects unmatched removal atoms,
Zac Medico [Wed, 15 Sep 2010 03:38:38 +0000 (20:38 -0700)]
Bug #336692 - When stack_lists() detects unmatched removal atoms,
account for cases in which the same profile is inherited multiple times
in the same stack.

14 years agoTests: test isvalidatom ::repo syntax support
Sebastian Luther [Tue, 14 Sep 2010 18:57:37 +0000 (20:57 +0200)]
Tests: test isvalidatom ::repo syntax support

14 years agoResolverPlayground: Add multi repo support
Sebastian Luther [Tue, 14 Sep 2010 18:45:55 +0000 (20:45 +0200)]
ResolverPlayground: Add multi repo support

14 years agoAdd :.repo syntax support for portage.util.{grabfile_package,grabdict_package}
Sebastian Luther [Tue, 14 Sep 2010 18:34:10 +0000 (20:34 +0200)]
Add :.repo syntax support for portage.util.{grabfile_package,grabdict_package}

14 years agoportage.dep: Add support for ::repo syntax to all functions and classes
Sebastian Luther [Tue, 14 Sep 2010 18:26:17 +0000 (20:26 +0200)]
portage.dep: Add support for ::repo syntax to all functions and classes

This also adds the dep_getrepo() function

14 years agoIn doebuild(), skip PORTAGE_BUILDDIR locking if it's already locked
Zac Medico [Wed, 15 Sep 2010 00:20:08 +0000 (17:20 -0700)]
In doebuild(), skip PORTAGE_BUILDDIR locking if it's already locked
or returnpid is True.

14 years agoMake IpcDaemonTestCase use a finally block to unlock PORTAGE_BUILDDIR. v2.2_rc82
Zac Medico [Tue, 14 Sep 2010 23:40:13 +0000 (16:40 -0700)]
Make IpcDaemonTestCase use a finally block to unlock PORTAGE_BUILDDIR.

14 years agoMake ebuild-ipc.py close the output_file before trying to re-open it
Zac Medico [Tue, 14 Sep 2010 22:53:39 +0000 (15:53 -0700)]
Make ebuild-ipc.py close the output_file before trying to re-open it
after it has timed out.

14 years agoBug #336433 - Don't filter the DCCC_PATH variable from environment since
Zac Medico [Tue, 14 Sep 2010 22:20:48 +0000 (15:20 -0700)]
Bug #336433 - Don't filter the DCCC_PATH variable from environment since
that breaks distcc ebuilds.

14 years agoOnly initialize Package.inherited to an empty set when it is None.
Zac Medico [Tue, 14 Sep 2010 21:25:49 +0000 (14:25 -0700)]
Only initialize Package.inherited to an empty set when it is None.

14 years agoEnsure that Package.inherited is always initialized, even if there is no
Zac Medico [Tue, 14 Sep 2010 16:36:45 +0000 (09:36 -0700)]
Ensure that Package.inherited is always initialized, even if there is no
INHERITED metadata available (like for binary packages).

14 years agoAdd option -s to docompress command.
Ulrich Mueller [Tue, 14 Sep 2010 16:27:52 +0000 (18:27 +0200)]
Add option -s to docompress command.

14 years agoMake EbuildBuildDir.unlock() use an asynchronous lock when locking the
Zac Medico [Tue, 14 Sep 2010 16:00:42 +0000 (09:00 -0700)]
Make EbuildBuildDir.unlock() use an asynchronous lock when locking the
category directory for removal.

14 years agoRevert "Remove ebuild-helpers/preplib (bug 102297)"
Zac Medico [Tue, 14 Sep 2010 15:08:51 +0000 (08:08 -0700)]
Revert "Remove ebuild-helpers/preplib (bug 102297)"

This reverts commit 811689f349a91b44448bc8e294903abf990eac45. The preplib
helper is still used by at least by stable sys-libs/lib-compat ebuilds.

14 years agoMake EbuildBuildDir use the PORTAGE_BUILDDIR variable instead of the
Zac Medico [Tue, 14 Sep 2010 14:49:30 +0000 (07:49 -0700)]
Make EbuildBuildDir use the PORTAGE_BUILDDIR variable instead of the
dir_path attribute.

14 years agoMake Binpkg call doebuild_environment() before constructing
Zac Medico [Tue, 14 Sep 2010 14:37:11 +0000 (07:37 -0700)]
Make Binpkg call doebuild_environment() before constructing
EbuildBuildDir, so PORTAGE_BUILDDIR is initialized first.

14 years agoFix some typos.
Arfrever Frehtes Taifersar Arahesis [Tue, 14 Sep 2010 13:09:08 +0000 (15:09 +0200)]
Fix some typos.

14 years agoDon't export PORTAGE_BUILDIR_LOCKED to the ebuild environment.
Zac Medico [Tue, 14 Sep 2010 09:37:02 +0000 (02:37 -0700)]
Don't export PORTAGE_BUILDIR_LOCKED to the ebuild environment.

14 years agoAdd a config.pkeywordsdict property for backward compatibility.
Zac Medico [Tue, 14 Sep 2010 09:14:48 +0000 (02:14 -0700)]
Add a config.pkeywordsdict property for backward compatibility.

14 years agoIn KeywordsManager.pkeywordsdict save values as tuples instead of lists.
Zac Medico [Tue, 14 Sep 2010 09:09:51 +0000 (02:09 -0700)]
In KeywordsManager.pkeywordsdict save values as tuples instead of lists.

14 years agoconfig: Add KeywordsManager
Sebastian Luther [Tue, 14 Sep 2010 08:41:33 +0000 (10:41 +0200)]
config: Add KeywordsManager

14 years agoMake ebuild-ipc timeout messages show which operation timed out.
Zac Medico [Tue, 14 Sep 2010 08:22:55 +0000 (01:22 -0700)]
Make ebuild-ipc timeout messages show which operation timed out.

14 years agoBug #336142 - Make ebuild-ipc.py keep trying to communicate indefinitely,
Zac Medico [Tue, 14 Sep 2010 08:08:41 +0000 (01:08 -0700)]
Bug #336142 - Make ebuild-ipc.py keep trying to communicate indefinitely,
as long as $PORTAGE_BUILDDIR is locked.

14 years agoMake IpcDaemonTestCase use EbuildBuildDir for lock creation.
Zac Medico [Tue, 14 Sep 2010 07:32:43 +0000 (00:32 -0700)]
Make IpcDaemonTestCase use EbuildBuildDir for lock creation.

14 years agoMake AbstractEbuildProcess lock PORTAGE_BUILDIR if it's not already
Zac Medico [Tue, 14 Sep 2010 05:49:03 +0000 (22:49 -0700)]
Make AbstractEbuildProcess lock PORTAGE_BUILDIR if it's not already
locked.

14 years agoBug #336142 - Use EbuildBuildDir for threaded locking of PORTAGE_BUILDDIR
Zac Medico [Tue, 14 Sep 2010 05:17:48 +0000 (22:17 -0700)]
Bug #336142 - Use EbuildBuildDir for threaded locking of PORTAGE_BUILDDIR
inside dblink.unmerge(), so that the scheduler can concurrently service
ipc calls in the main thread.

14 years agoUse EbuildBuildDir for PORTAGE_BUILDDIR locking inside doebuild().
Zac Medico [Tue, 14 Sep 2010 05:02:57 +0000 (22:02 -0700)]
Use EbuildBuildDir for PORTAGE_BUILDDIR locking inside doebuild().

14 years agoMake EbuildBuild call doebuild_environment() so that EbuildBuildDir
Zac Medico [Tue, 14 Sep 2010 04:53:29 +0000 (21:53 -0700)]
Make EbuildBuild call doebuild_environment() so that EbuildBuildDir
doesn't need to.

14 years agoBug #336142 - Add support for using a thread to wait for locks inside
Zac Medico [Tue, 14 Sep 2010 03:01:16 +0000 (20:01 -0700)]
Bug #336142 - Add support for using a thread to wait for locks inside
EbuildBuildDir.lock() so that the scheduler can concurrently service ipc
calls in the main thread.

14 years agoMake dblink.lockdb() use AsynchronousLock.
Zac Medico [Tue, 14 Sep 2010 02:48:18 +0000 (19:48 -0700)]
Make dblink.lockdb() use AsynchronousLock.

14 years agoAdd a new AsynchronousLock class that uses the portage.locks module to
Zac Medico [Tue, 14 Sep 2010 02:25:58 +0000 (19:25 -0700)]
Add a new AsynchronousLock class that uses the portage.locks module to
acquire a lock asynchronously, using a background thread.

14 years agoMake config.setinst() and get_virts_p() call getvirtuals() in order
Zac Medico [Tue, 14 Sep 2010 00:05:16 +0000 (17:05 -0700)]
Make config.setinst() and get_virts_p() call getvirtuals() in order
to ensure that we don't trigger the _treeVirtuals assertion in
VirtualsManager._compile_virtuals().

14 years agoIn depgraph._load_vdb(), after calling FakeVartree.sync(), update
Zac Medico [Mon, 13 Sep 2010 23:43:39 +0000 (16:43 -0700)]
In depgraph._load_vdb(), after calling FakeVartree.sync(), update
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

14 years agoTests: Add use_reduce test case for bug 120374
Sebastian Luther [Mon, 13 Sep 2010 17:06:27 +0000 (19:06 +0200)]
Tests: Add use_reduce test case for bug 120374

14 years agoRemove ebuild-helpers/preplib (bug 102297)
Sebastian Luther [Mon, 13 Sep 2010 16:46:32 +0000 (18:46 +0200)]
Remove ebuild-helpers/preplib (bug 102297)

14 years agoTests: Add resolver/test_missing_iuse_and_evaluated_atoms to make sure we don't miss...
Sebastian Luther [Mon, 13 Sep 2010 14:52:57 +0000 (16:52 +0200)]
Tests: Add resolver/test_missing_iuse_and_evaluated_atoms to make sure we don't miss a "missing IUSE"

14 years agoDon't miss a "missing IUSE" because of [foo?] -> [] evaluations.
Sebastian Luther [Mon, 13 Sep 2010 13:25:57 +0000 (15:25 +0200)]
Don't miss a "missing IUSE" because of [foo?] -> [] evaluations.

This patch also drops flags with EAPI 4 use dep defaults from use.required.

14 years agoBug #336142 - When looking of packages that own files for file collisions
Zac Medico [Mon, 13 Sep 2010 08:33:54 +0000 (01:33 -0700)]
Bug #336142 - When looking of packages that own files for file collisions
inside dblink.treewalk(), periodically yield to the scheduler so that
it can service ipc calls.

14 years agoMake sure atoms in profiles follow the profiles EAPI
Sebastian Luther [Mon, 13 Sep 2010 07:25:55 +0000 (09:25 +0200)]
Make sure atoms in profiles follow the profiles EAPI

14 years agoBug #336873 - Add a leading comma when matching --hash-style=gnu
Zac Medico [Mon, 13 Sep 2010 07:36:20 +0000 (00:36 -0700)]
Bug #336873 - Add a leading comma when matching --hash-style=gnu
in LDFLAGS, in order to try and filter out invalid settings.

14 years agoBug #336142 - Add support for using a thread to wait for locks inside
Zac Medico [Mon, 13 Sep 2010 07:23:34 +0000 (00:23 -0700)]
Bug #336142 - Add support for using a thread to wait for locks inside
dblink.lockdb() so that the scheduler can concurrently service ipc
calls in the main thread.

14 years agoAdd a 'condition' keyword argument to PollScheduler._schedule_wait()
Zac Medico [Mon, 13 Sep 2010 07:16:07 +0000 (00:16 -0700)]
Add a 'condition' keyword argument to PollScheduler._schedule_wait()
which is a callable that should return True when it is desirable for
the _schedule_wait() method to return.

14 years agoBug #337031 - Don't make "always overflow destination buffers" gcc v2.2_rc81
Zac Medico [Mon, 13 Sep 2010 02:49:29 +0000 (19:49 -0700)]
Bug #337031 - Don't make "always overflow destination buffers" gcc
warnings fatal for now.

14 years agoBug #336142 - Use a longer timeout for ebuild-ipc, in case the system is
Zac Medico [Mon, 13 Sep 2010 02:25:06 +0000 (19:25 -0700)]
Bug #336142 - Use a longer timeout for ebuild-ipc, in case the system is
heavily loaded.

14 years agoBug #336875 - Don't reference errno.ETIME since it's undefined on FreeBSD.
Zac Medico [Sun, 12 Sep 2010 21:37:14 +0000 (14:37 -0700)]
Bug #336875 - Don't reference errno.ETIME since it's undefined on FreeBSD.

14 years agoWhen fetching distfiles inside digestgen(), ignore conditional parts v2.2_rc80
Zac Medico [Sat, 11 Sep 2010 19:48:44 +0000 (12:48 -0700)]
When fetching distfiles inside digestgen(), ignore conditional parts
of RESTRICT since they don't apply unconditionally. Assume such
conditionals only apply on the client side where digestgen() does not
need to be called.

14 years agoFor digestgen(), add a matchnone parameter to use_reduce() that is the
Zac Medico [Sat, 11 Sep 2010 19:45:20 +0000 (12:45 -0700)]
For digestgen(), add a matchnone parameter to use_reduce() that is the
opposite of matchall.

14 years agoFix digestgen() to respect RESTRICT=fetch.
Zac Medico [Sat, 11 Sep 2010 19:18:03 +0000 (12:18 -0700)]
Fix digestgen() to respect RESTRICT=fetch.

14 years agoMake spawn_nofetch() call elog_process().
Zac Medico [Sat, 11 Sep 2010 18:06:32 +0000 (11:06 -0700)]
Make spawn_nofetch() call elog_process().

14 years agoMake the mail_summary elog module copy needed variables from the config
Zac Medico [Sat, 11 Sep 2010 17:53:43 +0000 (10:53 -0700)]
Make the mail_summary elog module copy needed variables from the config
instance, since we don't need to hold a reference for the whole thing.
This also makes it possible to rely on per-package variable settings that
may have come from /etc/portage/package.env, since we'll be isolated from
any future mutations of mysettings.

14 years agoFix typo in comment.
Zac Medico [Sat, 11 Sep 2010 04:36:23 +0000 (21:36 -0700)]
Fix typo in comment.

14 years agoMake digestgen() use spawn_nofetch() when necessary, since fetch()
Zac Medico [Sat, 11 Sep 2010 04:23:56 +0000 (21:23 -0700)]
Make digestgen() use spawn_nofetch() when necessary, since fetch()
no longer does it.

14 years agoFix typo in comment.
Zac Medico [Sat, 11 Sep 2010 04:06:42 +0000 (21:06 -0700)]
Fix typo in comment.

14 years agoSince pkg_nofetch is no longer called from fetch(), add a new
Zac Medico [Sat, 11 Sep 2010 03:48:49 +0000 (20:48 -0700)]
Since pkg_nofetch is no longer called from fetch(), add a new
spawn_nofetch() support for doebuild() and other fetch() callers
to use.

14 years agoIn doebuild(), don't trigger prepare_build_dirs() for the fetch phase
Zac Medico [Sat, 11 Sep 2010 01:52:56 +0000 (18:52 -0700)]
In doebuild(), don't trigger prepare_build_dirs() for the fetch phase
with RESTRICT=fetch since fetch() doesn't call pkg_nofetch anymore.

14 years agoRemove pkg_nofetch code from the fetch() function since it's currently broken (doebui...
Zac Medico [Sat, 11 Sep 2010 01:39:42 +0000 (18:39 -0700)]
Remove pkg_nofetch code from the fetch() function since it's currently broken (doebuild_environment raises TypeError due to missing mydbapi parameter) and this is a poor place to spawn pkg_nofetch anyway, especially given that the caller does not even pass in a portdbapi instance. For now, relocate the pkg_nofetch execution to EbuildBuild so that it works for emerge. TODO: Add pkg_nofetch support to fetch() callers where appropriate.

14 years agoFix typos in comments.
Arfrever Frehtes Taifersar Arahesis [Fri, 10 Sep 2010 23:22:59 +0000 (01:22 +0200)]
Fix typos in comments.

14 years agoconfig: Handle -atoms properly
Sebastian Luther [Fri, 10 Sep 2010 20:23:33 +0000 (22:23 +0200)]
config: Handle -atoms properly

Before this change -atoms could leak out of the place where they were defined.
Different repos could influence their profile/package.mask.
Profiles could influence profile/package.mask.
Note that the latter is not desirable because other than normal atoms, -atoms
have to exactly match the atom they remove. Because of this, the place specifying
the -atom has to now which atoms exists, which can only be the case if it (or in case
of a profiles, a parent profile) defines it.

14 years agoportage.util: Add optional remember_source_file parameter to some functions to make...
Sebastian Luther [Fri, 10 Sep 2010 20:20:25 +0000 (22:20 +0200)]
portage.util: Add optional remember_source_file parameter to some functions to make them return (token, file) pairs

This is useful to name the token's source file in error messages.
stack_lists has another new optional parameter: warn_for_unmatched_removal, which
warns for -atoms that don't remove anything.

14 years agoconfig/p.mask: config from other repos than PORTDIR comes before profiles (like PORTDIR)
Sebastian Luther [Fri, 10 Sep 2010 20:19:02 +0000 (22:19 +0200)]
config/p.mask: config from other repos than PORTDIR comes before profiles (like PORTDIR)

14 years agoTests: ebuild/test_config: Make sure -atoms in package.mask work as PMS wants it
Sebastian Luther [Fri, 10 Sep 2010 20:18:21 +0000 (22:18 +0200)]
Tests: ebuild/test_config: Make sure -atoms in package.mask work as PMS wants it

14 years agoResolverPlayground: Add ability to create a basic profile and repo config
Sebastian Luther [Fri, 10 Sep 2010 20:14:59 +0000 (22:14 +0200)]
ResolverPlayground: Add ability to create a basic profile and repo config

14 years agoBug #273282 - Make install_qa_check() eqawarn about installation into v2.2_rc79
Zac Medico [Fri, 10 Sep 2010 19:08:50 +0000 (12:08 -0700)]
Bug #273282 - Make install_qa_check() eqawarn about installation into
these deprecated directories:

    etc/app-defaults usr/man usr/info usr/X11R6 usr/doc usr/locale

14 years agoRemove redundant elog_process() call in EbuildBuild._fetch_exit().
Zac Medico [Fri, 10 Sep 2010 18:25:03 +0000 (11:25 -0700)]
Remove redundant elog_process() call in EbuildBuild._fetch_exit().

14 years agoFix the "alway overflow" eerror message to not use the message
Zac Medico [Fri, 10 Sep 2010 18:11:35 +0000 (11:11 -0700)]
Fix the "alway overflow" eerror message to not use the message
intended for "implicit pointer".

14 years agoMake the "always overflow" gcc warning code use a separate variable
Zac Medico [Fri, 10 Sep 2010 18:02:13 +0000 (11:02 -0700)]
Make the "always overflow" gcc warning code use a separate variable
from the "implicit pointer" code in install_qa_check(), so they
don't interfere.

14 years agoRemove redundant local retval declaration in has_version().
Zac Medico [Fri, 10 Sep 2010 17:47:47 +0000 (10:47 -0700)]
Remove redundant local retval declaration in has_version().

14 years agoEnsure that depgraph._show_unsatisfied_dep() doesn't suggest changes
Zac Medico [Fri, 10 Sep 2010 17:32:04 +0000 (10:32 -0700)]
Ensure that depgraph._show_unsatisfied_dep() doesn't suggest changes
to masked or forced USE flags.

14 years agoIn depgraph._show_unsatisfied_dep(), if the child package is masked then a
Zac Medico [Fri, 10 Sep 2010 16:22:44 +0000 (09:22 -0700)]
In depgraph._show_unsatisfied_dep(), if the child package is masked then a
change to parent USE is not a valid solution (a normal mask message should
be displayed instead).

14 years agoBug #336595 - Make dbapi.update_ents() calls quiet when appropriate in
Zac Medico [Fri, 10 Sep 2010 14:51:22 +0000 (07:51 -0700)]
Bug #336595 - Make dbapi.update_ents() calls quiet when appropriate in
_global_updates().

14 years agoglobal updates: Honor -q and don't repeat the legend
Sebastian Luther [Fri, 10 Sep 2010 10:18:53 +0000 (12:18 +0200)]
global updates: Honor -q and don't repeat the legend

14 years agoMake ebuild-ipc.py suppress IOError just like it does for EOFError
Zac Medico [Fri, 10 Sep 2010 07:26:25 +0000 (00:26 -0700)]
Make ebuild-ipc.py suppress IOError just like it does for EOFError
when the buffer is non-empty.

14 years agoMake ebuild-ipc.py handle exceptions from pickle.loads().
Zac Medico [Fri, 10 Sep 2010 07:14:03 +0000 (00:14 -0700)]
Make ebuild-ipc.py handle exceptions from pickle.loads().

14 years agoMake ebuild-ipc.py display EOFError if no data is read from the
Zac Medico [Fri, 10 Sep 2010 07:08:39 +0000 (00:08 -0700)]
Make ebuild-ipc.py display EOFError if no data is read from the
pipe.

14 years agoEliminate redunant elog_process() call in EbuildBuild._fetch_exit()
Zac Medico [Fri, 10 Sep 2010 06:57:29 +0000 (23:57 -0700)]
Eliminate redunant elog_process() call in EbuildBuild._fetch_exit()
which fetch has failed, since _unlock_builddir() will handle it
later.

14 years agoAdd missing comma in tuple.
Zac Medico [Fri, 10 Sep 2010 06:09:34 +0000 (23:09 -0700)]
Add missing comma in tuple.

14 years agoBug #267103 - In action_build(), check for config file updates in
Zac Medico [Fri, 10 Sep 2010 05:47:56 +0000 (22:47 -0700)]
Bug #267103 - In action_build(), check for config file updates in
/etc/portage and warn if necessary.

14 years agoMake the "warning: call to .* will always overflow destination buffer"
Zac Medico [Fri, 10 Sep 2010 05:34:34 +0000 (22:34 -0700)]
Make the "warning: call to .* will always overflow destination buffer"
gcc warning fatal. Thanks to Diego Pettenò <flameeyes@g.o> for the
suggestion.

14 years agoBug #336644 - Make ebuild-ipc.py use array.fromfile() to read pickles
Zac Medico [Fri, 10 Sep 2010 04:51:37 +0000 (21:51 -0700)]
Bug #336644 - Make ebuild-ipc.py use array.fromfile() to read pickles
in single atomic non-blocking read() calls, similar to how
AbstractPollTask._read_buf() does it. If the read fails, exit with
status 2 so that best_version() and has_version() can detect the
error and die when necessary.

14 years agoBug #336644 - Make EbuildIpcDaemon use AbstractPollTask._read_buf(),
Zac Medico [Fri, 10 Sep 2010 03:49:50 +0000 (20:49 -0700)]
Bug #336644 - Make EbuildIpcDaemon use AbstractPollTask._read_buf(),
for better handling of errors like "IOError: [Errno 11] Resource
temporarily unavailable". TODO: Apply a similar fix to ebuild-ipc.py.

14 years agoSplit out a AbstractPollTask._read_buf() helper method.
Zac Medico [Fri, 10 Sep 2010 03:05:19 +0000 (20:05 -0700)]
Split out a AbstractPollTask._read_buf() helper method.

14 years agoUse EROOT in chk_updated_cfg_files() calls.
Zac Medico [Fri, 10 Sep 2010 01:02:41 +0000 (18:02 -0700)]
Use EROOT in chk_updated_cfg_files() calls.

14 years agoBug #336499 - If RESTRICT=fetch is not set but pkg_nofetch is defined,
Zac Medico [Thu, 9 Sep 2010 23:47:45 +0000 (16:47 -0700)]
Bug #336499 - If RESTRICT=fetch is not set but pkg_nofetch is defined,
go ahead and run pkg_nofetch upon fetch failure. This allows specialized
messages to be displayed for problematic packages.

14 years agoMake Package.metadata.defined_phases return all possible phases when
Zac Medico [Thu, 9 Sep 2010 23:41:01 +0000 (16:41 -0700)]
Make Package.metadata.defined_phases return all possible phases when
DEFINED_PHASES is undefined. This makes it easy to do containment
checks to see if it's safe to skip execution of a given phase.

14 years agoIn EbuildBuild._pre_clean_exit() is _default_exit instead of
Zac Medico [Thu, 9 Sep 2010 23:24:29 +0000 (16:24 -0700)]
In EbuildBuild._pre_clean_exit() is _default_exit instead of
_final_exit where appropriate.

14 years agoBug #336651 - Fix Scheduler._restart_if_necessary() to correctly
Zac Medico [Thu, 9 Sep 2010 22:49:59 +0000 (15:49 -0700)]
Bug #336651 - Fix Scheduler._restart_if_necessary() to correctly
handle arguments like --exclude that are stored as a list since
they use the 'append' action.

14 years agoCombine prefetch conditionals in EbuildFetcher.
Zac Medico [Thu, 9 Sep 2010 17:13:23 +0000 (10:13 -0700)]
Combine prefetch conditionals in EbuildFetcher.

14 years agoMake EbuildFetcher always disable color in prefetch mode, since
Zac Medico [Thu, 9 Sep 2010 17:09:39 +0000 (10:09 -0700)]
Make EbuildFetcher always disable color in prefetch mode, since
prefetch output always goes to a log.

14 years agoIn update_config_files(), add a comment line showing a package move
Zac Medico [Thu, 9 Sep 2010 16:34:49 +0000 (09:34 -0700)]
In update_config_files(), add a comment line showing a package move
that has been applied. This is intended to reduce the risk given
that /etc/portage is in CONFIG_PROTECT_MASK, as discussed in bug

14 years agoUpdate --autounmask docs to note that it generates package.use settings.
Zac Medico [Thu, 9 Sep 2010 14:21:58 +0000 (07:21 -0700)]
Update --autounmask docs to note that it generates package.use settings.

14 years agorepoman: Add "x-modular": "xorg-2" to InheritDeprecated check as requested by scarabe...
Sebastian Luther [Thu, 9 Sep 2010 11:25:23 +0000 (13:25 +0200)]
repoman: Add "x-modular": "xorg-2" to InheritDeprecated check as requested by scarabeus (bug 326747, comment 6)

14 years agoImport ifilterfalse as filterfalse, for python3 compatibility.
Zac Medico [Thu, 9 Sep 2010 11:34:13 +0000 (04:34 -0700)]
Import ifilterfalse as filterfalse, for python3 compatibility.

14 years agomaintainer-info: Don't print 'no-herd' and don't print anything twice (bug 336550)
Sebastian Luther [Thu, 9 Sep 2010 09:15:04 +0000 (11:15 +0200)]
maintainer-info: Don't print 'no-herd' and don't print anything twice (bug 336550)

14 years agoAdd portage.util.unique_everseen
Sebastian Luther [Thu, 9 Sep 2010 09:13:08 +0000 (11:13 +0200)]
Add portage.util.unique_everseen

    List unique elements, preserving order. Remember all elements ever seen.
    Taken from itertools documentation.

14 years agoMake action_info() validate PORTAGE_TMPDIR since it uses it to solve
Zac Medico [Thu, 9 Sep 2010 04:05:32 +0000 (21:05 -0700)]
Make action_info() validate PORTAGE_TMPDIR since it uses it to solve
bug #336503.

14 years agoBug #336503 - Use PORTAGE_TMPDIR for the emerge --sync server timestamp
Zac Medico [Thu, 9 Sep 2010 03:47:34 +0000 (20:47 -0700)]
Bug #336503 - Use PORTAGE_TMPDIR for the emerge --sync server timestamp
tempfile, since with FEATURES=usersync, the default directory used by
the tempfile module may not be readbable by the usersync user.