portage.git
13 years agoBug #273648 - Document restriction of S to WORKDIR fallback in EAPI 4.
Zac Medico [Mon, 16 Aug 2010 08:36:39 +0000 (01:36 -0700)]
Bug #273648 - Document restriction of S to WORKDIR fallback in EAPI 4.

13 years agoBug #273646 - Copy PMS section 12.1.2 EAPI 4 docs for REPLACING_VERSIONS
Zac Medico [Mon, 16 Aug 2010 08:15:34 +0000 (01:15 -0700)]
Bug #273646 - Copy PMS section 12.1.2 EAPI 4 docs for REPLACING_VERSIONS
and REPLACED_BY_VERSION variables.

13 years agoBug #273644 - Document that the KV variable is gone in EAPI 4.
Zac Medico [Mon, 16 Aug 2010 08:09:22 +0000 (01:09 -0700)]
Bug #273644 - Document that the KV variable is gone in EAPI 4.

13 years agoBug #273643 - Document that the AA variable is gone in EAPI 4.
Zac Medico [Mon, 16 Aug 2010 08:04:57 +0000 (01:04 -0700)]
Bug #273643 - Document that the AA variable is gone in EAPI 4.

13 years agoBug #273640 - Document that in EAPI 4 econf adds
Zac Medico [Mon, 16 Aug 2010 07:55:32 +0000 (00:55 -0700)]
Bug #273640 - Document that in EAPI 4 econf adds
--disable-dependency-tracking to configure arguments.

13 years agoBug #273636 - Document that in EAPI 4 doins and newins preserve symlinks.
Zac Medico [Mon, 16 Aug 2010 07:46:01 +0000 (00:46 -0700)]
Bug #273636 - Document that in EAPI 4 doins and newins preserve symlinks.

13 years agoBug #273631 - Add docs for EAPI 4 default src_install function.
Zac Medico [Mon, 16 Aug 2010 07:32:50 +0000 (00:32 -0700)]
Bug #273631 - Add docs for EAPI 4 default src_install function.

13 years agoBug #273626 - Add PMS docs for USE Dependency Defaults.
Zac Medico [Mon, 16 Aug 2010 07:19:20 +0000 (00:19 -0700)]
Bug #273626 - Add PMS docs for USE Dependency Defaults.

13 years agoBug #273622 - Add docs for pkg_pretend from PMS 10.1.2.
Zac Medico [Mon, 16 Aug 2010 07:10:56 +0000 (00:10 -0700)]
Bug #273622 - Add docs for pkg_pretend from PMS 10.1.2.

13 years agoEnable EbuildIpcDaemon support by default.
Zac Medico [Mon, 16 Aug 2010 03:59:26 +0000 (20:59 -0700)]
Enable EbuildIpcDaemon support by default.

13 years agoAdd support for /etc/portage/package.accept_keywords. If both
Zac Medico [Mon, 16 Aug 2010 03:46:39 +0000 (20:46 -0700)]
Add support for /etc/portage/package.accept_keywords. If both
package.accept_keywords and package.keywords are present, both
of them will be used, and values from package.accept_keywords
will override values from package.keywords. The
package.accept_keywords file is intended to replace the
package.keywords file, since profiles support a different form
of package.keywords which modifies effective KEYWORDS (rather
than ACCEPT_KEYWORDS). Note that bug #292083 requests support
for package.accept_keywords in profiles.

13 years agoImplement ExtendedAtomDict.iteritems(), so that it doesn't invoke
Zac Medico [Mon, 16 Aug 2010 03:06:11 +0000 (20:06 -0700)]
Implement ExtendedAtomDict.iteritems(), so that it doesn't invoke
the special __getitem__ behavior.

13 years agoFix make.conf code to handle None return value from getconfig().
Zac Medico [Mon, 16 Aug 2010 02:35:54 +0000 (19:35 -0700)]
Fix make.conf code to handle None return value from getconfig().

13 years agoAdd support for /etc/portage/make.profile as an alternative to
Zac Medico [Mon, 16 Aug 2010 02:25:32 +0000 (19:25 -0700)]
Add support for /etc/portage/make.profile as an alternative to
/etc/make.profile. If both /etc/make.profile/ and
/etc/portage/make.profile/ exist, then /etc/make.profile/
will be preferred.

13 years agoAdd support for /etc/portage/make.conf. If present, this file will
Zac Medico [Mon, 16 Aug 2010 01:54:48 +0000 (18:54 -0700)]
Add support for /etc/portage/make.conf. If present, this file will
override settings from /etc/make.conf.

13 years agoRemove PollScheduler._schedule_waitpid() since this case isn't triggered
Zac Medico [Mon, 16 Aug 2010 00:22:36 +0000 (17:22 -0700)]
Remove PollScheduler._schedule_waitpid() since this case isn't triggered
anymore, now that PollScheduler._unregister() has be fixed to discard
unhandled events (so that reallocation of file descriptors no longer
triggers erroneous delivery of stale events).

13 years agoDon't handle KeyError when looking up event handlers, since
Zac Medico [Sun, 15 Aug 2010 23:35:20 +0000 (16:35 -0700)]
Don't handle KeyError when looking up event handlers, since
_unregister() automatically discards stale events now.

13 years agoFix PollScheduler._unregister() to discard any unhandled events
Zac Medico [Sun, 15 Aug 2010 23:30:02 +0000 (16:30 -0700)]
Fix PollScheduler._unregister() to discard any unhandled events
that belong to the unregistered file, in order to prevent these
events from being erroneously delivered to a future handler
that is using a reallocated file descriptor of the same numeric
value (causing extremely confusing bugs). Note that this is was
the cause of the intermittent bug that forced me to disable
EbuildIpcDaemon by default.

13 years agoFix SubProcess instances to call _set_returncode() when appropriate,
Zac Medico [Sun, 15 Aug 2010 21:34:14 +0000 (14:34 -0700)]
Fix SubProcess instances to call _set_returncode() when appropriate,
instead of setting self.returncode directly.

13 years agoRemove questionable lockfile removal code in dbapi.invalidentry().
Zac Medico [Sun, 15 Aug 2010 21:08:03 +0000 (14:08 -0700)]
Remove questionable lockfile removal code in dbapi.invalidentry().

13 years agoDispose of lock object after calling unlockfile(), in order to ensure
Zac Medico [Sun, 15 Aug 2010 20:51:47 +0000 (13:51 -0700)]
Dispose of lock object after calling unlockfile(), in order to ensure
that we only try to unlock it once.

13 years agoEvaluate SRC_URI and return early if there's nothing to fetch.
Zac Medico [Sun, 15 Aug 2010 18:39:40 +0000 (11:39 -0700)]
Evaluate SRC_URI and return early if there's nothing to fetch.

13 years agoMake DoebuildSpawnTestCase instantiate a minimal Package instance, and
Zac Medico [Sun, 15 Aug 2010 17:56:49 +0000 (10:56 -0700)]
Make DoebuildSpawnTestCase instantiate a minimal Package instance, and
fix code to tolerate missing metadata values in various places.

13 years agoRemove unuser return values from PollScheduler event handlers.
Zac Medico [Sun, 15 Aug 2010 16:27:38 +0000 (09:27 -0700)]
Remove unuser return values from PollScheduler event handlers.

13 years agoRemove redundant os.path.join() call in _init_ipc_fifos().
Zac Medico [Sun, 15 Aug 2010 16:17:17 +0000 (09:17 -0700)]
Remove redundant os.path.join() call in _init_ipc_fifos().

13 years agoAdd the "unexpected bash exit" case to the docstring.
Zac Medico [Sun, 15 Aug 2010 16:13:19 +0000 (09:13 -0700)]
Add the "unexpected bash exit" case to the docstring.

13 years agoAdd some ebuild metadata for realism.
Zac Medico [Sun, 15 Aug 2010 08:39:40 +0000 (01:39 -0700)]
Add some ebuild metadata for realism.

13 years agoPass along PORTAGE_USERNAME and PORTAGE_GRPNAME since they
Zac Medico [Sun, 15 Aug 2010 08:18:19 +0000 (01:18 -0700)]
Pass along PORTAGE_USERNAME and PORTAGE_GRPNAME since they
need to be inherited by ebuild subprocesses.

13 years agoMake create_trees() pass along PORTAGE_GRPNAME and PORTAGE_USERNAME
Zac Medico [Sun, 15 Aug 2010 08:12:11 +0000 (01:12 -0700)]
Make create_trees() pass along PORTAGE_GRPNAME and PORTAGE_USERNAME
to all config instances.

13 years agoAvoid KeyError if PORTAGE_USERNAME or PORTAGE_GRPNAME are unset.
Zac Medico [Sun, 15 Aug 2010 08:05:26 +0000 (01:05 -0700)]
Avoid KeyError if PORTAGE_USERNAME or PORTAGE_GRPNAME are unset.

13 years agoPass along PORTAGE_USERNAME and PORTAGE_GRPNAME inside _load_config()
Zac Medico [Sun, 15 Aug 2010 07:57:30 +0000 (00:57 -0700)]
Pass along PORTAGE_USERNAME and PORTAGE_GRPNAME inside _load_config()
since since they need to be inherited by ebuild subprocesses.

13 years agoAdd some more info to the 'Cannot chown a lockfile' message, since
Zac Medico [Sun, 15 Aug 2010 07:41:08 +0000 (00:41 -0700)]
Add some more info to the 'Cannot chown a lockfile' message, since
it's being triggered on the buildbot.

13 years agoSet PORTAGE_PYTHON for ebuild.sh subprocesses.
Zac Medico [Sun, 15 Aug 2010 07:14:10 +0000 (00:14 -0700)]
Set PORTAGE_PYTHON for ebuild.sh subprocesses.

13 years agoDoebuildSpawnTestCase: Invoke portage.package.ebuild.doebuild.spawn()
Zac Medico [Sun, 15 Aug 2010 07:07:36 +0000 (00:07 -0700)]
DoebuildSpawnTestCase: Invoke portage.package.ebuild.doebuild.spawn()
with a minimal environment. This gives coverage to some of the ebuild
execution internals, like ebuild.sh, EbuildSpawnProcess, and
EbuildIpcDaemon.

13 years agoBug #332799 - Don't download lzma snapshots if tarsync is installed.
Zac Medico [Sun, 15 Aug 2010 05:18:17 +0000 (22:18 -0700)]
Bug #332799 - Don't download lzma snapshots if tarsync is installed.

13 years agoDisable EbuildIpcDaemon for now, since it seems to be triggering
Zac Medico [Sun, 15 Aug 2010 03:11:57 +0000 (20:11 -0700)]
Disable EbuildIpcDaemon for now, since it seems to be triggering
intermittent build failures in my stage builds. For testing purposes
set PORTAGE_IPC_DAEMON_ENABLE=1 to enable EbuildIpcDaemon.

13 years agoportage.dep: Integrate the functionality of flatten into use_reduce
Sebastian Luther [Sat, 14 Aug 2010 23:24:24 +0000 (01:24 +0200)]
portage.dep: Integrate the functionality of flatten into use_reduce

13 years agoAdd support for NOCOLOR variable.
Zac Medico [Sat, 14 Aug 2010 18:37:31 +0000 (11:37 -0700)]
Add support for NOCOLOR variable.

13 years agoMerge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage
Zac Medico [Sat, 14 Aug 2010 18:15:36 +0000 (11:15 -0700)]
Merge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage

13 years agoPass $USE via IPC in order to ensure that we have the correct value for
Zac Medico [Sat, 14 Aug 2010 18:13:01 +0000 (11:13 -0700)]
Pass $USE via IPC in order to ensure that we have the correct value for
built/installed packages, since the config class doesn't currently provide
a way to access built/installed $USE that would work in all possible
scenarios.

13 years agoUse more correct paths to byte-compiled Python modules with Python 3.2
Arfrever Frehtes Taifersar Arahesis [Sat, 14 Aug 2010 18:04:03 +0000 (20:04 +0200)]
Use more correct paths to byte-compiled Python modules with Python 3.2
and remove empty __pycache__ directories.

13 years agoFix the ACCEPT_LICENSE setting that's generated for eutils check_license()
Zac Medico [Sat, 14 Aug 2010 17:46:57 +0000 (10:46 -0700)]
Fix the ACCEPT_LICENSE setting that's generated for eutils check_license()
to account for package.license.

13 years agoWhen in background mode, set NOCOLOR=true in order to prevent color
Zac Medico [Sat, 14 Aug 2010 17:21:45 +0000 (10:21 -0700)]
When in background mode, set NOCOLOR=true in order to prevent color
codes from showing up in logs, since we're not displaying to a terminal
anyway. Thanks to Brian Harring for the suggestion.

13 years agoAdd PORTAGE_PYTHON to _environ_whitelist.
Zac Medico [Sat, 14 Aug 2010 17:05:42 +0000 (10:05 -0700)]
Add PORTAGE_PYTHON to _environ_whitelist.

13 years agoMove PORTAGE_PYTHON setting to doebuild_environment() so that it
Zac Medico [Sat, 14 Aug 2010 17:01:55 +0000 (10:01 -0700)]
Move PORTAGE_PYTHON setting to doebuild_environment() so that it
doesn't pollute os.environ.

13 years agoMove 'phase' attribute to AbstractEbuildProcess from subclasses, so
Zac Medico [Sat, 14 Aug 2010 16:37:43 +0000 (09:37 -0700)]
Move 'phase' attribute to AbstractEbuildProcess from subclasses, so
the _get_phase() method isn't needed.

13 years agoAdd a QueryCommand.settings attribute and use it so that $USE
Zac Medico [Sat, 14 Aug 2010 16:20:49 +0000 (09:20 -0700)]
Add a QueryCommand.settings attribute and use it so that $USE
doesn't have to be passed to the daemon in has_version and
best_version calls.

13 years agoFix EbuildSpawnProcess to use self.settings.environ() for the spawn
Zac Medico [Sat, 14 Aug 2010 15:25:45 +0000 (08:25 -0700)]
Fix EbuildSpawnProcess to use self.settings.environ() for the spawn
environment, so all AbstractEbuildProcess subclasses are consistent
in this way.

13 years agoportage.dep: Integrate the functionality of dep_opconvert into use_reduce
Sebastian Luther [Sat, 14 Aug 2010 14:34:25 +0000 (16:34 +0200)]
portage.dep: Integrate the functionality of dep_opconvert into use_reduce

13 years agoMake sure PORTAGE_IPC_DAEMON is only in the environment for
Zac Medico [Sat, 14 Aug 2010 07:58:25 +0000 (00:58 -0700)]
Make sure PORTAGE_IPC_DAEMON is only in the environment for
appropriate phases (it was leaking into clean/cleanrm from
previous phases.

13 years agoFix _schedule spelling in _schedule_waitpid().
Zac Medico [Sat, 14 Aug 2010 07:13:58 +0000 (00:13 -0700)]
Fix _schedule spelling in _schedule_waitpid().

13 years agoAdd a PollScheduler._schedule_waitpid() method for SubProcess._wait()
Zac Medico [Sat, 14 Aug 2010 07:10:07 +0000 (00:10 -0700)]
Add a PollScheduler._schedule_waitpid() method for SubProcess._wait()
 to use as an alternative to hanging up the scheduler in a blocking
waitpid call.

13 years agoAtom.violated_conditionals: Use iuse.is_valid_flag instead of iuse.all
Sebastian Luther [Sat, 14 Aug 2010 06:43:34 +0000 (08:43 +0200)]
Atom.violated_conditionals: Use iuse.is_valid_flag instead of iuse.all

13 years agoAdd a SIGUSR1 handling to trigger pdb.set_trace().
Zac Medico [Sat, 14 Aug 2010 05:02:09 +0000 (22:02 -0700)]
Add a SIGUSR1 handling to trigger pdb.set_trace().

13 years agoAdd back the POLLHUP handling for now since PipeReaderTestCase breaks
Zac Medico [Sat, 14 Aug 2010 04:53:39 +0000 (21:53 -0700)]
Add back the POLLHUP handling for now since PipeReaderTestCase breaks
without it.

13 years agoStop handling POLLHUP events, since we're only polling for input and
Zac Medico [Sat, 14 Aug 2010 04:29:54 +0000 (21:29 -0700)]
Stop handling POLLHUP events, since we're only polling for input and
POLLHUP is really intendend for purposes of output polling. Hopefully
this solves a problem with POLLHUP events causing premature
unregistration of event handlers (and subsequent hang in waitpid).

13 years agoDefine basestring for python3.
Zac Medico [Sat, 14 Aug 2010 04:05:10 +0000 (21:05 -0700)]
Define basestring for python3.

13 years agoImplement use dependency defaults
Sebastian Luther [Wed, 24 Mar 2010 07:22:58 +0000 (08:22 +0100)]
Implement use dependency defaults

13 years agoDon't call exit after pkg_nofetch since that prevents the ebuild-ipc
Zac Medico [Sat, 14 Aug 2010 03:03:22 +0000 (20:03 -0700)]
Don't call exit after pkg_nofetch since that prevents the ebuild-ipc
callback from executing.

13 years agoFilter PORTAGE_PYTHON in save_ebuild_env().
Zac Medico [Sat, 14 Aug 2010 02:07:23 +0000 (19:07 -0700)]
Filter PORTAGE_PYTHON in save_ebuild_env().

13 years agoMerge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage
Zac Medico [Sat, 14 Aug 2010 02:01:14 +0000 (19:01 -0700)]
Merge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage

13 years agoAdd a SIGUSR1 handler to trigger pdb.set_trace().
Zac Medico [Sat, 14 Aug 2010 02:00:44 +0000 (19:00 -0700)]
Add a SIGUSR1 handler to trigger pdb.set_trace().

13 years agoUse /usr/bin/python when PORTAGE_PYTHON variable is empty.
Arfrever Frehtes Taifersar Arahesis [Sat, 14 Aug 2010 01:11:41 +0000 (03:11 +0200)]
Use /usr/bin/python when PORTAGE_PYTHON variable is empty.
It avoids some errors during upgrade from older Portage versions.

13 years agoSet PORTAGE_PYTHON in processes executed by portage.process._exec().
Arfrever Frehtes Taifersar Arahesis [Sat, 14 Aug 2010 00:15:08 +0000 (02:15 +0200)]
Set PORTAGE_PYTHON in processes executed by portage.process._exec().

13 years agoportage.os is apparently imported, so os doesn't need to be imported.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 22:45:51 +0000 (00:45 +0200)]
portage.os is apparently imported, so os doesn't need to be imported.

13 years agoAdd a script, which simplifies testing with multiple versions of Python.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 22:41:28 +0000 (00:41 +0200)]
Add a script, which simplifies testing with multiple versions of Python.

13 years agoEnsure that all Python processes use the same version of Python.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 22:28:36 +0000 (00:28 +0200)]
Ensure that all Python processes use the same version of Python.

13 years agoSetup EBUILD_MASTER_PID at the bottom, for scripts that source
Zac Medico [Fri, 13 Aug 2010 19:49:16 +0000 (12:49 -0700)]
Setup EBUILD_MASTER_PID at the bottom, for scripts that source
ebuild.sh.

13 years agoHandle KeyError due to stale events.
Zac Medico [Fri, 13 Aug 2010 19:33:48 +0000 (12:33 -0700)]
Handle KeyError due to stale events.

13 years agoSet o-r on ipc fifos since the are sensitive to reading.
Zac Medico [Fri, 13 Aug 2010 19:24:12 +0000 (12:24 -0700)]
Set o-r on ipc fifos since the are sensitive to reading.

13 years agoBug #315615 - Use EbuildIpcDaemon to implement has_version and best_version.
Zac Medico [Fri, 13 Aug 2010 19:14:06 +0000 (12:14 -0700)]
Bug #315615 - Use EbuildIpcDaemon to implement has_version and best_version.
This provides performance benefits and also avoids permissions issues with
FEATURES=userpriv.

13 years agoRename SubProcess._zombie() to _orphan_process_warn() and clarify
Zac Medico [Fri, 13 Aug 2010 17:53:59 +0000 (10:53 -0700)]
Rename SubProcess._zombie() to  _orphan_process_warn() and clarify
the eerror message.

13 years agoMove EBUILD_MASTER_PID and associated SIGTERM trap into ebuild_main()
Zac Medico [Fri, 13 Aug 2010 17:32:48 +0000 (10:32 -0700)]
Move EBUILD_MASTER_PID and associated SIGTERM trap into ebuild_main()
since it seems more reliable this way. This helps us avoid having
EbuildIpcDaemon need to send a kill signal (and triggering the
zombie message too). This is especially important for the die helper
which is called by other helpers for EAPI 4.

13 years agoDisable the die() stack trace when called by the die helper.
Zac Medico [Fri, 13 Aug 2010 16:37:15 +0000 (09:37 -0700)]
Disable the die() stack trace when called by the die helper.

13 years agoRemove message about race conditions in die, solved by EbuildIpcDaemon.
Zac Medico [Fri, 13 Aug 2010 15:35:53 +0000 (08:35 -0700)]
Remove message about race conditions in die, solved by EbuildIpcDaemon.

13 years agoWrite eerror messages to the log file, and only to stdout when
Zac Medico [Fri, 13 Aug 2010 15:29:37 +0000 (08:29 -0700)]
Write eerror messages to the log file, and only to stdout when
appropriate.

13 years agoMerge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage
Zac Medico [Fri, 13 Aug 2010 14:52:50 +0000 (07:52 -0700)]
Merge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage

13 years agoAdd QA check for libtool libraries in Python site-packages directories.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 14:52:54 +0000 (16:52 +0200)]
Add QA check for libtool libraries in Python site-packages directories.

13 years agoBug #278895 - After EbuildIpcDaemon identifies an ebuild process that
Zac Medico [Fri, 13 Aug 2010 14:47:56 +0000 (07:47 -0700)]
Bug #278895 - After EbuildIpcDaemon identifies an ebuild process that
has left an orphan child process running in the background, generate
an eerror message about a 'zombie' process and note the pid.

13 years agoAdd QA check for static libraries in Python site-packages directories.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 14:46:34 +0000 (16:46 +0200)]
Add QA check for static libraries in Python site-packages directories.

13 years agoRemove files generated by testCompileModules.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 14:28:22 +0000 (16:28 +0200)]
Remove files generated by testCompileModules.

13 years agoFix some comments.
Arfrever Frehtes Taifersar Arahesis [Fri, 13 Aug 2010 14:23:35 +0000 (16:23 +0200)]
Fix some comments.

13 years agoUse EbuildIpcDaemon to replace the functionality of
Zac Medico [Fri, 13 Aug 2010 14:05:12 +0000 (07:05 -0700)]
Use EbuildIpcDaemon to replace the functionality of
EBUILD_EXIT_STATUS_FILE.

13 years agoUse SpawnProcess instead of doebuild.spawn().
Zac Medico [Fri, 13 Aug 2010 14:03:43 +0000 (07:03 -0700)]
Use SpawnProcess instead of doebuild.spawn().

13 years ago* Fix IndexError in PollScheduler._next_poll_event() by raising
Zac Medico [Fri, 13 Aug 2010 13:31:59 +0000 (06:31 -0700)]
* Fix IndexError in PollScheduler._next_poll_event() by raising
  StopIteration instead.
* Add an optional timeout parameter to PollScheduler._schedule_wait()
  (this will be used in a later commit).

13 years agoCall pickle.load() directly on the input pipe, and handle exceptions.
Zac Medico [Fri, 13 Aug 2010 06:58:22 +0000 (23:58 -0700)]
Call pickle.load() directly on the input pipe, and handle exceptions.

13 years agoRefactor interaction between EbuildIpcDaemon and ExitCommand.
Zac Medico [Fri, 13 Aug 2010 06:11:53 +0000 (23:11 -0700)]
Refactor interaction between EbuildIpcDaemon and ExitCommand.

13 years agoClean up a bit.
Zac Medico [Fri, 13 Aug 2010 05:33:56 +0000 (22:33 -0700)]
Clean up a bit.

13 years agoMake IpcDaemonTestCase demonstrate an EbuildIpcDaemon based
Zac Medico [Fri, 13 Aug 2010 05:08:56 +0000 (22:08 -0700)]
Make IpcDaemonTestCase demonstrate an EbuildIpcDaemon based
replacement for EBUILD_EXIT_STATUS_FILE.

13 years agoSplit out an EbuildIpcDaemon class from FifoIpcDaemon.
Zac Medico [Fri, 13 Aug 2010 03:46:53 +0000 (20:46 -0700)]
Split out an EbuildIpcDaemon class from FifoIpcDaemon.

13 years agoFix inverted logic in eapi_supports_prefix() call, which causes a
Zac Medico [Fri, 13 Aug 2010 01:42:08 +0000 (18:42 -0700)]
Fix inverted logic in eapi_supports_prefix() call, which causes a
regression such that ED, EPREFIX, and EROOT where not set in EAPI 3
ebuild environments (just for portage-9999 users).

13 years agoMake locks quiet since unintended locking messages displayed on
Zac Medico [Thu, 12 Aug 2010 18:39:31 +0000 (11:39 -0700)]
Make locks quiet since unintended locking messages displayed on
stdout could corrupt the intended output of this program.

13 years agoDon't use unicode wrapper for mkfifo since it only allows string
Zac Medico [Thu, 12 Aug 2010 18:21:43 +0000 (11:21 -0700)]
Don't use unicode wrapper for mkfifo since it only allows string
arguments in python3.

13 years agoAdd some pieces of an IPC framework that will eventually allow ebuild
Zac Medico [Thu, 12 Aug 2010 17:01:02 +0000 (10:01 -0700)]
Add some pieces of an IPC framework that will eventually allow ebuild
processes can to communicate with portage's main python process.

Here are a few possible uses:

1) Robust subshell/subprocess die support. This allows the ebuild
   environment to reliably die without having to rely on signal IPC.

2) Delegation of portageq calls to the main python process, eliminating
   performance and userpriv permission issues.

3) Reliable ebuild termination in cases when the ebuild has accidentally
   left orphan processes running in the backgraound (as in bug 278895).

13 years agoTests: ResolverPlayground: more debug stuff
Sebastian Luther [Thu, 12 Aug 2010 15:31:43 +0000 (17:31 +0200)]
Tests: ResolverPlayground: more debug stuff

13 years agoAvoid unnecessary sys.hexversion conditional.
Zac Medico [Thu, 12 Aug 2010 13:51:11 +0000 (06:51 -0700)]
Avoid unnecessary sys.hexversion conditional.

13 years agoFactor EBUILD_EXIT_STATUS_FILE code out of AbstractEbuildProcess
Zac Medico [Thu, 12 Aug 2010 12:56:22 +0000 (05:56 -0700)]
Factor EBUILD_EXIT_STATUS_FILE code out of AbstractEbuildProcess
subclasses and into AbstractEbuildProcess itself.

13 years agoTests: ResolverPlayground: add debug option to not supress depgraph output
Sebastian Luther [Thu, 12 Aug 2010 12:00:13 +0000 (14:00 +0200)]
Tests: ResolverPlayground: add debug option to not supress depgraph output

Useful for debugging test cases.

13 years agoTests: ResolverPlayground: create world file
Sebastian Luther [Thu, 12 Aug 2010 11:55:55 +0000 (13:55 +0200)]
Tests: ResolverPlayground: create world file

13 years agoConsolidate EBUILD_EXIT_STATUS_FILE handling in doebuild.spawn()
Zac Medico [Thu, 12 Aug 2010 11:21:05 +0000 (04:21 -0700)]
Consolidate EBUILD_EXIT_STATUS_FILE handling in doebuild.spawn()
and subclasses of AbstractEbuildProcess.