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.
Zac Medico [Sun, 30 Oct 2011 07:15:57 +0000 (00:15 -0700)]
_profile_node: use collections.namedtuple
Zac Medico [Sun, 30 Oct 2011 07:08:22 +0000 (00:08 -0700)]
news.py: remove unused 'updates' variable
Zac Medico [Sun, 30 Oct 2011 06:52:42 +0000 (23:52 -0700)]
_legacy_globals: fix grammar in comment
Arfrever Frehtes Taifersar Arahesis [Sun, 30 Oct 2011 06:40:52 +0000 (07:40 +0100)]
Fix typos in comments.
Zac Medico [Sun, 30 Oct 2011 06:20:53 +0000 (23:20 -0700)]
git_sync_timestamps: validation_chf == mtime
Zac Medico [Sun, 30 Oct 2011 05:24:58 +0000 (22:24 -0700)]
egencache: tweak redundant write check condition
We can use the raise_stat_collision attribute to determine when it is
necessary to check for redundant writes.
Zac Medico [Sun, 30 Oct 2011 00:25:42 +0000 (17:25 -0700)]
env_update: lstrip os.sep in join with eprefix
Zac Medico [Sat, 29 Oct 2011 23:52:06 +0000 (16:52 -0700)]
portagetree: remove broken depcheck method
It called dep_check without the required third argument.
Zac Medico [Sat, 29 Oct 2011 23:43:21 +0000 (16:43 -0700)]
Use dbapi._known_keys more.
Zac Medico [Sat, 29 Oct 2011 23:10:13 +0000 (16:10 -0700)]
cache/template.__getitem__: filter INHERITED
Never return INHERITED, since portdbapi.aux_get() will generate it
automatically from _eclasses_, and we want to omit it in comparisons
between cache entries like those that egencache uses to avoid redundant
writes (see commit
0e120da008c9d0d41c9372c81145c6e153028a6d).
Zac Medico [Sat, 29 Oct 2011 22:43:35 +0000 (15:43 -0700)]
action_metadata: clean up src entry validation
This eliminates a bunch of redundant eclasses code that we handle with
template.validate_entry() instead.
Zac Medico [Sat, 29 Oct 2011 21:41:38 +0000 (14:41 -0700)]
EbuildMetadataPhase: use /dev/null for stdin
Zac Medico [Sat, 29 Oct 2011 21:31:00 +0000 (14:31 -0700)]
actions.py: remove unused variables
Zac Medico [Sat, 29 Oct 2011 20:55:07 +0000 (13:55 -0700)]
action_metadata: use auxdbkeys to compare entries
This borrows the approach that egencache uses since commit
0e120da008c9d0d41c9372c81145c6e153028a6d.
Zac Medico [Sat, 29 Oct 2011 20:36:23 +0000 (13:36 -0700)]
egencache: avoid redundant md5-dict writes
The pms cache already does this automatically, since __setitem__ calls
are used to detect stat collisions in order to solve bug #139134.
Zac Medico [Sat, 29 Oct 2011 19:38:51 +0000 (12:38 -0700)]
egencache: ensure correct porttrees
The GenCache class assumes that portdb.porttrees[0] is the desired
tree, so assert that it is true. The behavior should have already been
correct, since PORTDIR_OVERLAY was already set to an empty string when
necessary.
Zac Medico [Sat, 29 Oct 2011 18:56:14 +0000 (11:56 -0700)]
egencache: fix StatCollision handling breakage
This has been broken since the _eclasses_ structure changed in commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212.
Zac Medico [Sat, 29 Oct 2011 18:33:27 +0000 (11:33 -0700)]
egencache: update ebuild_hash.mtime after utime
Zac Medico [Sat, 29 Oct 2011 17:48:30 +0000 (10:48 -0700)]
emerge --metadata: support md5-dict
This adds support to action_metadata() for use of arbitrary validation
methods, which were introduced in commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212.
Zac Medico [Sat, 29 Oct 2011 08:16:11 +0000 (01:16 -0700)]
man/portage.5: profile-formats example
Zac Medico [Sat, 29 Oct 2011 08:11:09 +0000 (01:11 -0700)]
man/portage.5: cache-formats example
Zac Medico [Sat, 29 Oct 2011 07:59:02 +0000 (00:59 -0700)]
egencache: multiple cache-formats support
If layout.conf contains "cache-formats = md5-dict pms", egencache will
now write both formats.
Zac Medico [Sat, 29 Oct 2011 06:57:29 +0000 (23:57 -0700)]
git_sync_timestamps: fix breakage
This has been broken since metadbmodule support was removed in commit
d4ea29bf6a3ce35d49e0f54f9173e3a6e42da2d6.
Zac Medico [Sat, 29 Oct 2011 06:15:21 +0000 (23:15 -0700)]
RepoConfig: add iter_pregenerated_caches method
This will be used by egencache to generate cache for all supported
formats.
Zac Medico [Sat, 29 Oct 2011 05:35:01 +0000 (22:35 -0700)]
quickpkg: fix regression in hardlink support
Hardlink support has been broken since commit
4198da0184aaec30c41f2e5d2c7af71c4d35b662, which omitted the hardlink
logic from TarFile.gettarinfo().
Daniel Robbins [Sat, 29 Oct 2011 04:06:00 +0000 (04:06 +0000)]
Fix an issue where emerge will abort when merge starts if we have a file in our Manifest that does not exist on disk, even with thin-manifest enabled.
Zac Medico [Sat, 29 Oct 2011 04:17:11 +0000 (21:17 -0700)]
Deprecate unused 'virtual' constructor parameters
Zac Medico [Sat, 29 Oct 2011 03:34:34 +0000 (20:34 -0700)]
_trees_dict: define __slots__
Zac Medico [Sat, 29 Oct 2011 03:26:18 +0000 (20:26 -0700)]
portageq: refer to <eroot> instead of <root>
Since commit
a715b65f7bd36409c1283e6911265d1f4405ab7a, portageq takes
EROOT as the first argument of commands that require a root argument.
So, update the docs to refer to <eroot> instead of <root>.
Zac Medico [Sat, 29 Oct 2011 03:20:29 +0000 (20:20 -0700)]
Use EROOT to validate path arguments.
Zac Medico [Sat, 29 Oct 2011 03:10:23 +0000 (20:10 -0700)]
Use any() instead of list(filter()).
Zac Medico [Sat, 29 Oct 2011 00:12:11 +0000 (17:12 -0700)]
Use bytes instead of unicode with isinstance.
This is preferred since the bytes type is available in all supported
python versions, while the unicode type is only available in python2.
Zac Medico [Fri, 28 Oct 2011 22:20:35 +0000 (15:20 -0700)]
ResolverPlayground: remove unused root attribute
Zac Medico [Fri, 28 Oct 2011 22:06:50 +0000 (15:06 -0700)]
config: discard profiles_complex attribute
Like LocationsManager, it's only used in the constructor, so there's
no need to hold a reference after the constructor completes.
Zac Medico [Fri, 28 Oct 2011 20:13:07 +0000 (13:13 -0700)]
Check for bytes instead of unicode in args.
This simplifies the checks since the bytes type is available in all
supported python versions, while the unicode type is only available in
python2.
Zac Medico [Fri, 28 Oct 2011 18:03:02 +0000 (11:03 -0700)]
quickpkg: fix unicode for bug #388773
Zac Medico [Fri, 28 Oct 2011 07:21:05 +0000 (00:21 -0700)]
SetConfig: use read_file/readfp for unicode
Zac Medico [Fri, 28 Oct 2011 07:17:25 +0000 (00:17 -0700)]
RepoConfigLoader: python3.2 readfp deprecation
Zac Medico [Fri, 28 Oct 2011 06:48:44 +0000 (23:48 -0700)]
RepoConfigLoader: use readfp for unicode
Zac Medico [Fri, 28 Oct 2011 06:20:26 +0000 (23:20 -0700)]
RepoConfigLoader: sort layout.conf attributes
Zac Medico [Fri, 28 Oct 2011 06:17:19 +0000 (23:17 -0700)]
RepoConfigLoader: support incremental aliases
This allows a user to discard unwanted aliases that are specified in
a repo's layout.conf.
Zac Medico [Fri, 28 Oct 2011 05:38:31 +0000 (22:38 -0700)]
RepoConfigLoader: comment on masters override
Zac Medico [Fri, 28 Oct 2011 05:30:34 +0000 (22:30 -0700)]
RepoConfig.update(): getattr/setattr loop
Zac Medico [Fri, 28 Oct 2011 05:14:51 +0000 (22:14 -0700)]
parse_layout_conf: comment on masters fallback
Zac Medico [Fri, 28 Oct 2011 04:55:28 +0000 (21:55 -0700)]
Fix profile-formats spelling in messages.
Zac Medico [Fri, 28 Oct 2011 02:48:16 +0000 (19:48 -0700)]
MaskManager: portage-1-compat warnings.warn
Zac Medico [Fri, 28 Oct 2011 02:32:49 +0000 (19:32 -0700)]
stacklevel=3 for properties warnings
There's an extra level for the @property wrapper.
Zac Medico [Fri, 28 Oct 2011 02:15:34 +0000 (19:15 -0700)]
Fix mydcfg from last commit.
Zac Medico [Fri, 28 Oct 2011 02:04:25 +0000 (19:04 -0700)]
config: remove cruft
The mygcfg and packages_list attributes are both useless.
Zac Medico [Fri, 28 Oct 2011 01:45:19 +0000 (18:45 -0700)]
grab_pmask: use local repo_config reference
The previous code worked, but it looked wrong because it was using the
'repo' variable from the parent scope.
Zac Medico [Fri, 28 Oct 2011 01:17:55 +0000 (18:17 -0700)]
Fix missed ROOT -> EROOT changes.
These go along with commit
a715b65f7bd36409c1283e6911265d1f4405ab7a.
Zac Medico [Fri, 28 Oct 2011 00:53:51 +0000 (17:53 -0700)]
create_trees: ensure trees is _trees_dict type
Zac Medico [Thu, 27 Oct 2011 20:49:40 +0000 (13:49 -0700)]
LocationsManager: extensible _profile_node object
Use immutable object attrubutes instead of tuples, for extensibility.
Zac Medico [Thu, 27 Oct 2011 19:41:42 +0000 (12:41 -0700)]
parse_layout_conf: grab repo_name for error msgs
This allows us to avoid duplicate warnings for 'unspecified' repo since
parse_layout_conf is initially called without specifying the repo in
LocationsManager.load_profiles().