Zac Medico [Thu, 8 Dec 2011 18:03:00 +0000 (10:03 -0800)]
etc-update: experimental prefix support
Zac Medico [Thu, 8 Dec 2011 17:57:00 +0000 (09:57 -0800)]
Whitelist/filter __PORTAGE_TEST_EPREFIX.
Zac Medico [Thu, 8 Dec 2011 17:46:55 +0000 (09:46 -0800)]
Support FEATURES=force-prefix.
This adjusts the logic from commit
ff52f9dc31004becb8022e6437088d01917f413c to use FEATURES=force-prefix
instead of USE=prefix. This has the advantage that we don't have to
make any assumptions about the USE=prefix.
Zac Medico [Thu, 8 Dec 2011 07:26:02 +0000 (23:26 -0800)]
dispatch-conf: experimental prefix support
Zac Medico [Thu, 8 Dec 2011 06:43:06 +0000 (22:43 -0800)]
Save EPREFIX in vdb when appropriate.
The prefix branch already does this since it makes it easy to use
chpathtool to adjust the content of a binary package so that it will
work in a different EPREFIX from the one is was built for.
Zac Medico [Thu, 8 Dec 2011 06:22:31 +0000 (22:22 -0800)]
Make USE=prefix enable EPREFIX in all EAPIs.
This is safe because the prefix flag should be masked in all non-prefix
profiles, and older EAPIs would otherwise be useless with prefix
configurations. This brings compatibility with the prefix branch of
portage, which also supports EPREFIX for all EAPIs (for obvious
reasons).
Zac Medico [Wed, 7 Dec 2011 19:20:39 +0000 (11:20 -0800)]
man: document fixpackages for bug #393517
Zac Medico [Tue, 6 Dec 2011 22:21:03 +0000 (14:21 -0800)]
sets.docbook: fix 'strictly' spelling
Zac Medico [Tue, 6 Dec 2011 21:57:34 +0000 (13:57 -0800)]
ebuild.sh: don't export inherit E_* vars
Zac Medico [Tue, 6 Dec 2011 19:06:24 +0000 (11:06 -0800)]
emerge-webrsync: use --quiet with --check-news
This suppresses output if there are no relevant items.
Zac Medico [Tue, 6 Dec 2011 19:01:10 +0000 (11:01 -0800)]
emerge-webrsync: call emerge --check-news
Zac Medico [Tue, 6 Dec 2011 18:52:50 +0000 (10:52 -0800)]
action_sync: fix git_sync_timestamps KeyError
This fixes the case where $PORTDIR doesn't exist prior to sync.
Zac Medico [Mon, 5 Dec 2011 02:28:03 +0000 (18:28 -0800)]
ebuild.sh: add note about quoting export ${FOO}=
Zac Medico [Mon, 5 Dec 2011 01:52:37 +0000 (17:52 -0800)]
ebuild.sh: quote sandbox export args
Zac Medico [Sun, 4 Dec 2011 23:55:49 +0000 (15:55 -0800)]
fix logic from last commit
Zac Medico [Sun, 4 Dec 2011 23:43:36 +0000 (15:43 -0800)]
depgraph: fix case insensitive search for unsat
This fixes an interaction between the code from commits
9ce6da43ab90c4dab97ebf3b8339e5dbc113a0a8 and
cbe44d92ff13b8a22f5b4215b73078ce600c6bf4, so that we don't discard
matches that are identical except for differnces in upper/lower case.
Zac Medico [Fri, 2 Dec 2011 18:30:25 +0000 (10:30 -0800)]
action_depclean: fix return code
The fixes some cases where emerge.log would show that depclean was
unsuccessful when it was really successful but there was nothing to
remove.
Zac Medico [Fri, 2 Dec 2011 06:14:13 +0000 (22:14 -0800)]
Handle OSError from os.read and loop if needed.
Looping fixes EbuildMetadataPhase failures for ebuilds that produce
more than 4096 bytes of metadata, broken since commit
b432a1b3051d91546649e8f3190675767461d8e8.
Zac Medico [Fri, 2 Dec 2011 03:24:10 +0000 (19:24 -0800)]
process._exec: tweak opt_name for PyPy
PyPy 1.7 will die due to "libary path not found" if argv[0] does not
contain the full path of the binary.
Zac Medico [Fri, 2 Dec 2011 02:34:08 +0000 (18:34 -0800)]
PipeReader: use os.read/write
Zac Medico [Fri, 2 Dec 2011 02:07:21 +0000 (18:07 -0800)]
test_uniqueArray.py: fix 'is' usage PyPy incompat
Zac Medico [Fri, 2 Dec 2011 01:43:57 +0000 (17:43 -0800)]
AsynchronousLock: use os.read/write
Similar to commit
b432a1b3051d91546649e8f3190675767461d8e8, don't use
unecessary file objects. It also happens that these changes fix
compatibility issues with PyPy.
Zac Medico [Thu, 1 Dec 2011 23:25:31 +0000 (15:25 -0800)]
checksum.py: detect PyPy crashes in hashlib
Use a fork to try and PyPy by digesting random data with hashlib
functions. It doesn't look like a bug has been reported upstream for
this yet, so it may or may not be reproducible by others. Anyway, this
allows me to avoid crashing the main PyPy process until I find a real
fix.
Zac Medico [Thu, 1 Dec 2011 21:22:00 +0000 (13:22 -0800)]
_emerge/EbuildMetadataPhase.py: use os.read()
There's no need for a file object, and file objects introduce
complexity that can lead to bugs as mentioned in bug 337465 comment 31,
so use os.read() directly on the file descriptor.
Zac Medico [Thu, 1 Dec 2011 21:05:24 +0000 (13:05 -0800)]
_emerge/SubProcess.py: support int fd in _files
Zac Medico [Thu, 1 Dec 2011 20:34:52 +0000 (12:34 -0800)]
MergeProcess: check if _elog_reader_fd is None
It seems saner to check for None, given that _elog_reader_fd is an int,
even though it will probably never be zero.
Zac Medico [Thu, 1 Dec 2011 17:52:23 +0000 (09:52 -0800)]
locks.py: use flock with PyPy for issue 747
Mike Frysinger [Wed, 30 Nov 2011 20:23:36 +0000 (15:23 -0500)]
make.conf(5): clarify "repo" and "defaults" sources for USE_ORDER
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Tue, 29 Nov 2011 16:24:06 +0000 (08:24 -0800)]
doebuild: disable noauto for binary packages
Zac Medico [Tue, 29 Nov 2011 04:52:41 +0000 (20:52 -0800)]
movefile: tweak unicode handling
Zac Medico [Tue, 29 Nov 2011 04:25:54 +0000 (20:25 -0800)]
movefile: chown/mod before rename
Zac Medico [Tue, 29 Nov 2011 03:09:10 +0000 (19:09 -0800)]
movefile: avoid redundant string concatenations
Zac Medico [Tue, 29 Nov 2011 03:00:15 +0000 (19:00 -0800)]
movefile: remove unused lchown
Arfrever Frehtes Taifersar Arahesis [Tue, 29 Nov 2011 01:26:04 +0000 (02:26 +0100)]
Preserve extended attributes on regular files when using Python >=3.3.
Zac Medico [Sun, 27 Nov 2011 20:53:55 +0000 (12:53 -0800)]
Revert "dblink.mergeme(): Merge files in alphabetic order."
This reverts commit
1d4ac47c28706094230cb2c4e6ee1c1c71629aa0.
As discussed on the gentoo-portage-dev mailing list, if we don't have
a compelling reason to sort here then it's just a waste:
http://archives.gentoo.org/gentoo-portage-dev/msg_67b08fcd7a1b832b347caf1b19362cbb.xml
Zac Medico [Sun, 27 Nov 2011 20:52:04 +0000 (12:52 -0800)]
_get_dep_chain: fix KeyError, bug #392059
This fixes a regression since commit
57cc4e3e8991e7c4394d1dff7698aa62ed2a286b, which make a faulty
assumption that the digraph contained all of the edges contained in
parent_atoms.
Zac Medico [Sat, 26 Nov 2011 02:56:54 +0000 (18:56 -0800)]
config: fix make.defaults inherit of make.globals
Since commit
e544ee13527a0568de2b556510280ed96fc1b3ff, make.defaults
inheritance of variables from make.globals has been broke, since that
commit excluded make.globals from expand_map. This broke settings like
PORTAGE_ELOG_CLASSES="${PORTAGE_ELOG_CLASSES} qa" from the developer
profile, as reported in bug #391323, comment #4.
Arfrever Frehtes Taifersar Arahesis [Sat, 26 Nov 2011 01:52:49 +0000 (02:52 +0100)]
dblink.mergeme(): Merge files in alphabetic order.
Zac Medico [Fri, 25 Nov 2011 19:35:32 +0000 (11:35 -0800)]
elog/mod_syslog: fix 1 char msgs, bug #390965
Zac Medico [Fri, 25 Nov 2011 05:28:58 +0000 (21:28 -0800)]
emerge-webrsync: new gpg key, bug #331537
Zac Medico [Mon, 21 Nov 2011 17:12:32 +0000 (09:12 -0800)]
repoman: fix svn "abiguous workdir", bug #391199
Zac Medico [Mon, 21 Nov 2011 14:59:57 +0000 (06:59 -0800)]
man/emerge.1: note that --jobs redirects output
Zac Medico [Sun, 20 Nov 2011 18:54:19 +0000 (10:54 -0800)]
emerge --help: show --quiet-build
Zac Medico [Fri, 18 Nov 2011 21:11:05 +0000 (13:11 -0800)]
_prepare_self_update: detect if already called
This is should never be triggered by portage, but it's possible that
an API consumer might trigger it somehow.
Zac Medico [Fri, 18 Nov 2011 19:40:48 +0000 (11:40 -0800)]
Schduler: _check_temp_dir in _handle_self_update
Zac Medico [Fri, 18 Nov 2011 18:20:21 +0000 (10:20 -0800)]
collect_ebuild_messages: handle \r, bug #390833
Zac Medico [Fri, 18 Nov 2011 05:57:58 +0000 (21:57 -0800)]
resolver/output: unused imports
Zac Medico [Fri, 18 Nov 2011 05:33:37 +0000 (21:33 -0800)]
_make_msgfunction: convert to class
Zac Medico [Fri, 18 Nov 2011 05:15:53 +0000 (21:15 -0800)]
config: tweak mapping implementation more
Zac Medico [Fri, 18 Nov 2011 03:26:18 +0000 (19:26 -0800)]
config: centralize mapping impl in _getitem/pop
Zac Medico [Fri, 18 Nov 2011 02:55:28 +0000 (18:55 -0800)]
collect_ebuild_messages: validate msg type
This will handle invalid message types like the one that triggers the
KeyError in dblink._elog_process for bug #390833. It will also output
the content of the line in order to help diagnose the source of
corruption.
Zac Medico [Fri, 18 Nov 2011 01:43:20 +0000 (17:43 -0800)]
emerge --changelog: omit entry for current ver
This is a regression from commit
69d7f169ba2e27cf56746791331c63a019357100, reported in bug #390893.
Zac Medico [Fri, 18 Nov 2011 01:26:01 +0000 (17:26 -0800)]
depgraph: don't merge portage asap
There's no need to do this anymore, because we don't restart since
commit
d3f704a425a50b5cfa997a25866929b30f1b7d0f.
Zac Medico [Thu, 17 Nov 2011 23:25:03 +0000 (15:25 -0800)]
Tweak the last commit.
Zac Medico [Thu, 17 Nov 2011 23:10:13 +0000 (15:10 -0800)]
Skip the "resume after portage update" routine.
Instead, finish the whole job using a copy of the currently running
instance. This allows us to avoid the complexities of emerge --resume,
such as the differences in option handling between different portage
versions, as reported in bug #390819.
Zac Medico [Thu, 17 Nov 2011 13:44:41 +0000 (05:44 -0800)]
Show action as --action in emerge.log arg list.
Zac Medico [Thu, 17 Nov 2011 13:39:02 +0000 (05:39 -0800)]
Show option arguments in emerge.log arg list.
Zac Medico [Thu, 17 Nov 2011 05:15:00 +0000 (21:15 -0800)]
pkg_pretend: handle interruption more
Zac Medico [Thu, 17 Nov 2011 03:43:00 +0000 (19:43 -0800)]
pkg_pretend: tweak final cleanup logic
This ensures that the clean phase will not run if the user interrupts
emerge before the build dir is locked.
Zac Medico [Thu, 17 Nov 2011 02:09:10 +0000 (18:09 -0800)]
Scheduler.py: remove unused vars (pyflakes)
Zac Medico [Thu, 17 Nov 2011 01:38:48 +0000 (17:38 -0800)]
Tweak emerge --quiet-build default handling.
Since --quiet-build is enabled be default, there's no need to have it
in the options dict except when it is enabled.
Zac Medico [Thu, 17 Nov 2011 01:25:21 +0000 (17:25 -0800)]
pkg_pretend: lock before unpacking binpkg xpak
This fixes a regression from the previous commit.
Zac Medico [Wed, 16 Nov 2011 21:14:42 +0000 (13:14 -0800)]
pkg_pretend: clean first for bug #390711
Zac Medico [Wed, 16 Nov 2011 18:43:51 +0000 (10:43 -0800)]
emerge --quiet-build: don't set PORTAGE_QUIET
The PORTAGE_QUIET controls lots of stuff that really should only be
controlled by --quiet, especially now that --quiet-build is enabled by
default. For example, PORTAGE_QUIET supresses the successful checksum
display that is produced by emerge --fetchonly.
Zac Medico [Wed, 16 Nov 2011 18:24:34 +0000 (10:24 -0800)]
xterm title HOSTNAME support, bug #390699
Zac Medico [Sun, 13 Nov 2011 20:33:43 +0000 (12:33 -0800)]
checksum.py: handle pycrypto breakage
Zac Medico [Fri, 11 Nov 2011 21:23:46 +0000 (13:23 -0800)]
make.conf: sync PORTAGE_ELOG_SYSTEM example
Synchronize the PORTAGE_ELOG_SYSTEM example with the default
make.globals setting.
Zac Medico [Fri, 11 Nov 2011 15:42:11 +0000 (07:42 -0800)]
Enable emerge --quiet-build by default.
See discussion on the gentoo-dev mailing list:
http://archives.gentoo.org/gentoo-dev/msg_4f0401066abe2dc04458a952ac2a17bd.xml
Zac Medico [Thu, 10 Nov 2011 03:11:35 +0000 (19:11 -0800)]
Move ccache/distcc PATH code to doebuild_env.
Zac Medico [Wed, 9 Nov 2011 18:48:36 +0000 (10:48 -0800)]
Use local EPREFIX for uniformity.
The EPREFIX variable is not readonly in EAPI 0, 1, and 2, so we can
declare EPREFIX as a local variable. We must be careful not to let this
variable leak into the environment of ebuild/eclass functions that we
call, since bash propagates local variables to nested function calls.
Zac Medico [Wed, 9 Nov 2011 18:42:00 +0000 (10:42 -0800)]
Use local ED for uniformity.
The ED variable is not readonly in EAPI 0, 1, and 2, so we can declare
ED as a local variable. We must be careful not to let this variable
leak into the environment of ebuild/eclass functions that we call,
since bash propagates local variables to nested function calls.
Zac Medico [Wed, 9 Nov 2011 18:13:17 +0000 (10:13 -0800)]
Use get(REQUIRED_USE) for emphasis.
None of these cases should raise KeyError, but use get(REQUIRED_USE)
anyway to emphasize that care must be taken.
Zac Medico [Wed, 9 Nov 2011 03:23:22 +0000 (19:23 -0800)]
depgraph: fix possible REQUIRED_USE KeyError
This goes with commit
a0961708ced50c90497811058eda6f4513d2986d.
Zac Medico [Wed, 9 Nov 2011 02:41:16 +0000 (18:41 -0800)]
_doebuild_path: fix EAPI 3 helpers PATH
Zac Medico [Wed, 9 Nov 2011 02:36:24 +0000 (18:36 -0800)]
phase-functions.sh: remove stray echo
Zac Medico [Wed, 9 Nov 2011 00:21:07 +0000 (16:21 -0800)]
Include EPREFIX directories in PATH.
This relocates the PATH generation code from ebuild.sh to
doebuild_environment, which helps to eliminate duplicate code.
Zac Medico [Tue, 8 Nov 2011 19:28:02 +0000 (11:28 -0800)]
has/best_version: fix grammar in docs
Zac Medico [Tue, 8 Nov 2011 19:24:35 +0000 (11:24 -0800)]
ecompressdir: remove 'continue' from loop logic
Hopefully this helps us avoid errors in loop logic like bug #389047.
Zac Medico [Tue, 8 Nov 2011 16:13:32 +0000 (08:13 -0800)]
tests/emerge: best/has_version with prefix EAPI
Zac Medico [Mon, 7 Nov 2011 21:38:33 +0000 (13:38 -0800)]
test_multislot: fix EAPI
Arfrever Frehtes Taifersar Arahesis [Mon, 7 Nov 2011 21:14:39 +0000 (22:14 +0100)]
depgraph._queue_disjunctive_deps(): Pass EAPI to portage.dep.Atom().
Zac Medico [Mon, 7 Nov 2011 20:42:28 +0000 (12:42 -0800)]
best/has_version: fix eroot assignment
Zac Medico [Mon, 7 Nov 2011 20:19:53 +0000 (12:19 -0800)]
Only support ROOT override for best/has_version.
In the context of ebuilds, ROOT=/ override is the only common case, so
it makes sense to only support ROOT overrides.
Arfrever Frehtes Taifersar Arahesis [Mon, 7 Nov 2011 20:11:31 +0000 (21:11 +0100)]
Allow repository dependencies in command line arguments for --config and --info actions.
Zac Medico [Mon, 7 Nov 2011 19:16:09 +0000 (11:16 -0800)]
Fix best/has_version ROOT override for EAPI 3-4.
This has been broken since commit
ab484dc9a2612aa6709fad3ff926c8589a706637. In order to support prefix,
callers will have to override EROOT instead.
Zac Medico [Mon, 7 Nov 2011 18:33:47 +0000 (10:33 -0800)]
Fix breakage from last commit.
Arfrever Frehtes Taifersar Arahesis [Mon, 7 Nov 2011 18:28:05 +0000 (19:28 +0100)]
Avoid initial spaces in some variables.
Zac Medico [Mon, 7 Nov 2011 15:27:23 +0000 (07:27 -0800)]
REQUIRED_USE: don't save in built packages
It should be safe to assume that REQUIRED_USE is satisfied if the
package is built, so it's a waste to save it. Also, fix code which
assumes that built Package instances have a REQUIRED_USE key in their
metadata.
Zac Medico [Mon, 7 Nov 2011 08:45:01 +0000 (00:45 -0800)]
environment.bz2: filter more variables
Zac Medico [Mon, 7 Nov 2011 08:32:18 +0000 (00:32 -0800)]
save_ebuild_env: filter more functions
dyn_pretend
helpers_die
nonfatal
register_success_hook
Zac Medico [Mon, 7 Nov 2011 08:14:29 +0000 (00:14 -0800)]
Handle empty PORTAGE_COMPRESS for bug #389047.
This fixes a case where empty PORTAGE_COMPRESS made ecompressdir forget
to call restore_skip_dirs, such that docompress -x resulted in files
not being installed due to hide_skip_dirs hiding them permanently.
Zac Medico [Mon, 7 Nov 2011 07:37:33 +0000 (23:37 -0800)]
emerge --changelog: ChangeLog-YYYY, bug #389611
Zac Medico [Mon, 7 Nov 2011 06:32:30 +0000 (22:32 -0800)]
Respect --usepkgonly in suggestions, bug #389617
Zac Medico [Mon, 7 Nov 2011 06:01:51 +0000 (22:01 -0800)]
Add emerge --moo action for bug #389609.
Zac Medico [Sun, 6 Nov 2011 05:43:34 +0000 (22:43 -0700)]
runtests.sh: use 0 to control arg parse loop
Zac Medico [Sat, 5 Nov 2011 18:53:20 +0000 (11:53 -0700)]
Enable colors during the depend phase.
Zac Medico [Wed, 2 Nov 2011 04:57:10 +0000 (21:57 -0700)]
phase-helpers.sh: fix best/has_version for prefix
Zac Medico [Wed, 2 Nov 2011 02:26:56 +0000 (19:26 -0700)]
test_dodir: fix breakage from last commit
We have to set the EAPI for prefix code to work.
Zac Medico [Wed, 2 Nov 2011 02:17:19 +0000 (19:17 -0700)]
Add EPREFIX and ED support in all ebuild helpers.
This allows our prefix tests to use helpers like insinto, doins, and dosym.
Zac Medico [Wed, 2 Nov 2011 01:47:56 +0000 (18:47 -0700)]
Merge install_qa_check_prefix from prefix branch.