Zac Medico [Fri, 1 Jul 2011 04:00:52 +0000 (21:00 -0700)]
preserve-libs: only preserve soname symlinks
This avoids calling the LinkageMapELF.isMasterLink() method, since the
only symlinks that are strictly required are the soname symlinks.
Zac Medico [Fri, 1 Jul 2011 02:23:23 +0000 (19:23 -0700)]
LinkageMapElf.findConsumers(): fix $ROOT handling
The code which checks the soname symlink was missing a join with
$ROOT.
Zac Medico [Fri, 1 Jul 2011 02:19:14 +0000 (19:19 -0700)]
LinkageMapElf: clarify findConsumers soname code
Here it referred to an soname symlink as a "master" link, which was
inconsistent with the meaning of "master" link used in the
isMasterLink() method.
Zac Medico [Fri, 1 Jul 2011 01:33:22 +0000 (18:33 -0700)]
LinkageMapElf.isMasterLink(): handle libproc
The version component of the libproc-3.2.8.so soname is formed
slightly differently than most other libraries.
Zac Medico [Thu, 30 Jun 2011 13:10:57 +0000 (06:10 -0700)]
UseFlagDisplay: fix USE_EXPAND_HIDDEN breakage
Zac Medico [Thu, 30 Jun 2011 12:49:18 +0000 (05:49 -0700)]
Fix a typo in a comment.
Zac Medico [Thu, 30 Jun 2011 10:17:31 +0000 (03:17 -0700)]
Fix a typo in a docstring.
Zac Medico [Thu, 30 Jun 2011 10:01:06 +0000 (03:01 -0700)]
LinkageMapELF.isMasterLink(): literally compare
Comparing the lengths of the names alone seems like too much of an
assumption, so literally compare the beginning of the soname to the
basename of the given file.
Zac Medico [Thu, 30 Jun 2011 08:53:16 +0000 (01:53 -0700)]
misc-functions.sh: remove stale NEEDED* files
Zac Medico [Thu, 30 Jun 2011 08:17:38 +0000 (01:17 -0700)]
Fix last commit to work regardless of nullglob.
Zac Medico [Thu, 30 Jun 2011 08:03:44 +0000 (01:03 -0700)]
ecompress: beware of -k in PORTAGE_COMPRESS_FLAGS
This will fix bug #372183.
Zac Medico [Thu, 30 Jun 2011 07:34:35 +0000 (00:34 -0700)]
config: filter repo-level make.defaults earlier
Zac Medico [Thu, 30 Jun 2011 06:56:36 +0000 (23:56 -0700)]
ebuild(1): use bintree.inject for "package" phase
Zac Medico [Thu, 30 Jun 2011 04:39:47 +0000 (21:39 -0700)]
ebuild(1): pass missing myrepo arg to aux_get
Zac Medico [Thu, 30 Jun 2011 04:26:20 +0000 (21:26 -0700)]
ebuild(1): pass "installed" arg to Package
Zac Medico [Thu, 30 Jun 2011 04:13:20 +0000 (21:13 -0700)]
ebuild(1): pass Package instance to setcpv
This should improve repo-level support, for bug #370693.
Zac Medico [Thu, 30 Jun 2011 03:36:07 +0000 (20:36 -0700)]
Only create soname symlinks in global libdirs.
This prevents false positives for private libraries installed by
pre-built packages under /opt.
Zac Medico [Thu, 30 Jun 2011 02:09:46 +0000 (19:09 -0700)]
config.setcpv(): simplify repo_env code
Zac Medico [Thu, 30 Jun 2011 01:50:54 +0000 (18:50 -0700)]
env_update: document ldconfig -X for bug #373341
Zac Medico [Thu, 30 Jun 2011 01:10:40 +0000 (18:10 -0700)]
RELEASE-NOTES: fix spelling of "respecting"
Zac Medico [Wed, 29 Jun 2011 11:37:08 +0000 (04:37 -0700)]
preserve-libs: don't preserve "master" symlink
There's no point in preserving the "master" symlink, since the soname
symlink is all that's strictly required.
Michał Górny [Tue, 28 Jun 2011 08:10:36 +0000 (10:10 +0200)]
Don't ever recreate root .so links on env-update.
We install .so symlinks with packages, so let's use that instead of
letting ldconfig update them for no reason. This should fix problems
with preserved-libs.
Zac Medico [Wed, 29 Jun 2011 09:18:21 +0000 (02:18 -0700)]
Detect/create missing soname symlinks for libs.
This will allow us to safely use the ldconfig -X option for all
ldconfig calls, an thereby avoid having ldconfig override our own
soname symlink policy which allows preserve-libs to work correctly
when libraries are downgraded as discussed in bug 373341.
Arfrever Frehtes Taifersar Arahesis [Tue, 28 Jun 2011 14:15:28 +0000 (16:15 +0200)]
read_corresponding_eapi_file(): Strip final \n from EAPI value.
Zac Medico [Tue, 28 Jun 2011 09:12:27 +0000 (02:12 -0700)]
Remove unimplemented "severe" FEATURES value.
This will fix bug #373301.
Zac Medico [Tue, 28 Jun 2011 09:06:36 +0000 (02:06 -0700)]
varexpand: handle backslashes like more like bash
For backslash expansion, this function used to behave like echo
-e, but that's not needed for our purposes. We want to behave like
bash does when expanding a variable assignment in a sourced file,
in which case it performs backslash removal for \\ and \$ but nothing
more. This will fix bash compatibility for the case reported in
bug #365033.
Arfrever Frehtes Taifersar Arahesis [Mon, 27 Jun 2011 19:33:17 +0000 (21:33 +0200)]
pkg_use_display(): Use use.expand and use.expand_hidden attributes.
Zac Medico [Mon, 27 Jun 2011 06:53:58 +0000 (23:53 -0700)]
Package.use: share identical frozenset instances
Zac Medico [Mon, 27 Jun 2011 02:32:06 +0000 (19:32 -0700)]
Fix CONFIG_PROTECT breakage from previous commit.
Zac Medico [Mon, 27 Jun 2011 00:34:13 +0000 (17:34 -0700)]
config: disallow per-package/repo CONFIG_PROTECT
In order for reliable etc-update behavior, CONFIG_PROTECT needs to be
a global constant (see bug 370693, comment #8).
Zac Medico [Mon, 27 Jun 2011 00:16:07 +0000 (17:16 -0700)]
Package: add use.expand/expand_hidden attributes
This allows the merge list display to account for repository-level
USE_EXPAND and USE_EXPAND_HIDDEN settings (see bug #370693).
Zac Medico [Sat, 25 Jun 2011 05:42:13 +0000 (22:42 -0700)]
prepare_features_dirs: fix ccache/distcc libdir
This will fix bug #355283.
Michał Górny [Fri, 24 Jun 2011 15:51:17 +0000 (17:51 +0200)]
Add a QA check for systemd unit file install.
Zac Medico [Fri, 24 Jun 2011 10:28:31 +0000 (03:28 -0700)]
repoman: fix broken set constructor usage
Zac Medico [Fri, 24 Jun 2011 10:21:20 +0000 (03:21 -0700)]
repoman: add new "dependency.unknown" warning
This checks for a dependency that refers to an unknown package (which
may be provided by an overlay), as requested in bug #372789.
Arfrever Frehtes Taifersar Arahesis [Thu, 23 Jun 2011 10:55:51 +0000 (12:55 +0200)]
Improve indentation for readability.
Zac Medico [Tue, 21 Jun 2011 08:14:47 +0000 (01:14 -0700)]
use_reduce: less strict for installed
Zac Medico [Tue, 21 Jun 2011 07:57:59 +0000 (00:57 -0700)]
extract_affecting_use: less strict for installed
Zac Medico [Tue, 21 Jun 2011 03:27:38 +0000 (20:27 -0700)]
config: fix repo KeyErrors
Zac Medico [Tue, 21 Jun 2011 01:31:17 +0000 (18:31 -0700)]
UseManager: avoid possible repo KeyErrors
Zac Medico [Tue, 21 Jun 2011 01:08:59 +0000 (18:08 -0700)]
config: repo-level make.defaults/package.use
This completes the implementation of bug #370693.
Zac Medico [Tue, 21 Jun 2011 00:43:13 +0000 (17:43 -0700)]
config: fix repositories attribute for clone
Zac Medico [Sun, 19 Jun 2011 19:44:21 +0000 (12:44 -0700)]
portage.5: document more repo-level config files
At the repository level, package.mask has been supported for some time.
Support for use.force, package.use.force, use.mask and package.use.mask
was recently added in commit
96ab7b436ceb3543f5158aab1fab48470c3f0b98.
Arfrever Frehtes Taifersar Arahesis [Sun, 19 Jun 2011 19:40:32 +0000 (21:40 +0200)]
Bug #370693: Handle package.use.force and package.use.mask files from master
repositories.
Arfrever Frehtes Taifersar Arahesis [Sun, 19 Jun 2011 16:37:56 +0000 (18:37 +0200)]
Bug #370693: Support use.force, package.use.force, use.mask and
package.use.mask files in ${repository}/profiles.
Zac Medico [Sat, 18 Jun 2011 22:09:07 +0000 (15:09 -0700)]
emaint binhost: add method for SIZE/MTIME checks
Zac Medico [Sat, 18 Jun 2011 19:51:12 +0000 (12:51 -0700)]
emaint binhost: check SIZE and MTIME
Zac Medico [Sat, 18 Jun 2011 17:53:42 +0000 (10:53 -0700)]
portageq: fix all_best_visible to fail early
This will fix bug #372193.
Zac Medico [Fri, 17 Jun 2011 22:35:29 +0000 (15:35 -0700)]
repoman: handle PermissionDenied from digestgen
This will fix bug #371987.
Zac Medico [Fri, 17 Jun 2011 21:58:37 +0000 (14:58 -0700)]
misspell-suggestions: filter the input cp
Obviously, we don't want to consider the input cp as a possible
suggestion, as reported in bug 372033.
Zac Medico [Fri, 17 Jun 2011 20:57:02 +0000 (13:57 -0700)]
treewalk: set REPLACING_VERSIONS later
Settings like this are better done after doebuild_environment, in case
doebuild_environment calls config.setcpv/reset. This avoids the need to
call backup_changes which is not really intended for per-package
settings since it tends to pollute the config instance with settings
that survive config.reset() calls.
Zac Medico [Fri, 17 Jun 2011 19:39:06 +0000 (12:39 -0700)]
doebuild: don't set REPLACING_VERSIONS for remove
Also, don't call backup_changes with this variable, since it's not
necessary and we don't want to pollute the config instance.
Zac Medico [Fri, 17 Jun 2011 19:25:31 +0000 (12:25 -0700)]
doebuild: export REPLACING_VERSIONS more
This is for api consumers like Sabayon's Entropy.
Zac Medico [Thu, 16 Jun 2011 20:03:43 +0000 (13:03 -0700)]
repoman: only report allmasked if ebuilds exist
Zac Medico [Thu, 16 Jun 2011 19:23:26 +0000 (12:23 -0700)]
prepare_build_dirs: skip FEATURES dirs more
We don't need to prepare ccache/distcc FEATURES dirs for pkg_info or
pkg_pretend phases. This will fix bug #371909.
Zac Medico [Thu, 16 Jun 2011 15:35:16 +0000 (08:35 -0700)]
expand_set_args: add root SetArg nodes to graph
This prevents get_dep_chain from triggering a KeyError some cases as
reported in bug #371767.
Zac Medico [Mon, 13 Jun 2011 22:13:17 +0000 (15:13 -0700)]
bintree: don't provide default VERSION header
We want to make sure that we know when the VERSION header is missing,
so we shouldn't provide a default value.
Zac Medico [Mon, 13 Jun 2011 21:50:04 +0000 (14:50 -0700)]
pkg_use_enabled: return early for built pkgs
Built/installed packages have frozen USE settings, so there's no sense
in considering them for autounmask USE config changes. They'll simply
be rejected by select_package, and an unbuilt ebuild will be selected
instead. This will fix bug 371423 by avoiding unnecessary use_reduce
calls on the deps of installed packages.
Zac Medico [Mon, 13 Jun 2011 15:25:58 +0000 (08:25 -0700)]
digestgen: spawn_nofetch (fix previous commit)
This call was erroneously removed in the previous commit. We have to
call spawn_nofetch since the fetch() function no longer calls it
automatically.
Zac Medico [Mon, 13 Jun 2011 13:40:39 +0000 (06:40 -0700)]
digestgen: always allow fetch from mirror://
This fixes repoman and ebuild(1) to fetch from mirror:// URIs even
though RESTRICT=fetch is set (this behavior already works for emerge
since it does not call fetch() via digestgen).
Zac Medico [Mon, 13 Jun 2011 13:01:26 +0000 (06:01 -0700)]
Scheduler: make --fetchonly skip pkg_pretend
Zac Medico [Sun, 12 Jun 2011 22:12:26 +0000 (15:12 -0700)]
test_merge_order: test smallest runtime cycle
In the case of multiple runtime cycles, where some cycles
may depend on smaller independent cycles, it's optimal
to merge smaller independent cycles before other cycles
that depend on them. Therefore, we search for the
smallest cycle in order to try and identify and prefer
these smaller independent cycles.
Arfrever Frehtes Taifersar Arahesis [Sat, 11 Jun 2011 19:12:09 +0000 (21:12 +0200)]
Fix a typo in a comment.
Zac Medico [Sat, 11 Jun 2011 16:26:47 +0000 (09:26 -0700)]
serialize_tasks: debug output for runtime cycles
Zac Medico [Sat, 11 Jun 2011 15:51:24 +0000 (08:51 -0700)]
serialize_tasks: asap ignore medium_soft earlier
This allows us to avoid the less efficient runtime cycle pathway for
cases in which an asap node is a leaf if medium_soft deps are ignored.
Ths should increase efficiency without changing behavior.
Zac Medico [Sat, 11 Jun 2011 09:05:51 +0000 (02:05 -0700)]
serialize_tasks: minimize runtime cycles more
Zac Medico [Sat, 11 Jun 2011 06:25:46 +0000 (23:25 -0700)]
serialize_tasks: minimize nodes in runtime cycles
When gathering the nodes belonging to a runtime cycle, we want to
minimize the number of nodes gathered, since this tends to produce
a more optimal merge order. Ignoring all medium_soft deps serves
this purpose.
Zac Medico [Sat, 11 Jun 2011 05:21:19 +0000 (22:21 -0700)]
depgraph._serialize_tasks: revert formatting diff
Zac Medico [Sat, 11 Jun 2011 03:58:38 +0000 (20:58 -0700)]
depgraph._serialize_tasks: move libperl/perl code
This ensures that all asap_nodes are explored before setting
prefer_asap to False.
Zac Medico [Sat, 11 Jun 2011 03:38:02 +0000 (20:38 -0700)]
bintree: verify that default REPO is legit
We need to check the RepoConfig.missing_repo_name attribute to make
sure the repo_name is really defined.
Zac Medico [Sat, 11 Jun 2011 02:58:33 +0000 (19:58 -0700)]
depgraph._serialize_tasks: tweak last commit more
Zac Medico [Sat, 11 Jun 2011 02:45:08 +0000 (19:45 -0700)]
depgraph._serialize_tasks: tweak last commit
This code is only intended when more than one node is selected.
Zac Medico [Sat, 11 Jun 2011 02:31:22 +0000 (19:31 -0700)]
test_fakedbapi: define PORTDIR, test missing IUSE
Zac Medico [Sat, 11 Jun 2011 02:17:10 +0000 (19:17 -0700)]
test_fakedbapi: use tempdir for config paths
Zac Medico [Sat, 11 Jun 2011 02:08:46 +0000 (19:08 -0700)]
Add tests for fakedbapi.
Zac Medico [Sat, 11 Jun 2011 01:30:37 +0000 (18:30 -0700)]
slot_collision_notice: don't omit any use dep
When USE flags are removed, it can be essential to see all broken
reverse dependencies here, so don't omit any. If the list is long,
people can simply use a pager.
Zac Medico [Sat, 11 Jun 2011 00:42:18 +0000 (17:42 -0700)]
show_unsatisfied_blockers: don't omit any pkgs
It can be essential to see all the packages here, so don't omit any.
If the list is long, people can simply use a pager.
Arfrever Frehtes Taifersar Arahesis [Sat, 11 Jun 2011 00:02:27 +0000 (02:02 +0200)]
Fix a typo.
Zac Medico [Fri, 10 Jun 2011 23:24:54 +0000 (16:24 -0700)]
depgraph._serialize_tasks: fix libperl/perl order
In some cases, the asap_nodes code caused selection of a large runtime
cycle that was obviously sub-optimal. Now such cases are detected and
avoided.
Zac Medico [Fri, 10 Jun 2011 17:19:36 +0000 (10:19 -0700)]
fakedbapi: add myrepo args for portdbapi compat
Zac Medico [Fri, 10 Jun 2011 12:21:06 +0000 (05:21 -0700)]
bintree: handle pkgindex CHOST header like REPO
This allows an existing CHOST header entry to properly override our
default.
Zac Medico [Fri, 10 Jun 2011 12:04:17 +0000 (05:04 -0700)]
bintree: always populate pkgindex REPO header
The previous code would only populate it when there was no existing
index file. Now, the default will be populated even if the file exists
already. If an existing pkgindex header already defines these keys,
then they will appropriately override our defaults.
Zac Medico [Fri, 10 Jun 2011 01:10:51 +0000 (18:10 -0700)]
Fix some typoes in docs and comments.
Zac Medico [Thu, 9 Jun 2011 22:08:29 +0000 (15:08 -0700)]
portage.5: doc repo and wildcard atom extensions
Zac Medico [Thu, 9 Jun 2011 18:48:19 +0000 (11:48 -0700)]
useflag/dep_re: less strict if eapi None
When eapi is None then validation is not as strict, since we want the
same to work for multiple EAPIs that may have slightly different rules.
Zac Medico [Thu, 9 Jun 2011 18:19:38 +0000 (11:19 -0700)]
SubProcess: fix status for _set_returncode caller
These callers don't intend to make WIFSIGNALED return True, so they
need to shift their codes 8 bits to the left. This ensures that
commit
88f5bf84e2fd23125910b2ecaffc035971445696 behaves as intended.
Zac Medico [Thu, 9 Jun 2011 16:19:33 +0000 (09:19 -0700)]
AbstractEbuildProcess: handle kill by signal
This will fix bug #368817.
Zac Medico [Thu, 9 Jun 2011 16:07:54 +0000 (09:07 -0700)]
SubProcess: make returncode like Popen
Zac Medico [Thu, 9 Jun 2011 15:43:40 +0000 (08:43 -0700)]
lockfile: use hasattr() instead of dir()
Zac Medico [Thu, 9 Jun 2011 15:11:08 +0000 (08:11 -0700)]
ebuild.sh: fix libdir for ccache/distcc
This will fix bug #355283.
Jeremy Murphy [Thu, 9 Jun 2011 14:34:35 +0000 (07:34 -0700)]
ebuild.sh: don't hardcode distcc pump path
Zac Medico [Thu, 9 Jun 2011 14:28:14 +0000 (07:28 -0700)]
test_use_reduce: test empty parens (bug 370565)
Arfrever Frehtes Taifersar Arahesis [Thu, 9 Jun 2011 14:23:28 +0000 (07:23 -0700)]
use_reduce: disallow empty parens
This will fix bug #370565.
Zac Medico [Thu, 9 Jun 2011 13:58:37 +0000 (06:58 -0700)]
getmaskingstatus: fix keywords logic
This will fix bug #370477.
Zac Medico [Thu, 9 Jun 2011 13:13:32 +0000 (06:13 -0700)]
getmaskingreason: EAPI metadata safety
Return early since otherwise we might produce invalid results given
that the EAPI is not supported.
Zac Medico [Thu, 9 Jun 2011 13:03:30 +0000 (06:03 -0700)]
show_masked_packages: EAPI metadata safety
When masked by EAPI, metadata is mostly useless since it doesn't
contain essential things like SLOT.
Arfrever Frehtes Taifersar Arahesis [Thu, 9 Jun 2011 13:00:55 +0000 (15:00 +0200)]
Fix a typo and update a comment.
Zac Medico [Thu, 9 Jun 2011 12:56:42 +0000 (05:56 -0700)]
_show_unsatisfied_dep: fix logic for EAPI mask
This will fix bug #370465.
Zac Medico [Thu, 9 Jun 2011 10:59:08 +0000 (03:59 -0700)]
SpawnTestCase: check returncode
Zac Medico [Thu, 9 Jun 2011 10:39:37 +0000 (03:39 -0700)]
locks: use a private constant for fcntl.lockf