Zac Medico [Fri, 3 Jun 2011 12:15:50 +0000 (05:15 -0700)]
Remove FEATURES=preserve-libs config/docs.
Support for FEATURES=preserve-libs is disabled in the stable branch.
Zac Medico [Fri, 3 Jun 2011 12:05:53 +0000 (05:05 -0700)]
portage.const: toggle constants for stable branch
_ENABLE_DYN_LINK_MAP = False
_ENABLE_PRESERVE_LIBS = False
_ENABLE_REPO_NAME_WARN = False
_ENABLE_SET_CONFIG = False
_SANDBOX_COMPAT_LEVEL = "16"
Zac Medico [Mon, 17 Oct 2011 05:44:08 +0000 (22:44 -0700)]
tests/repoman: fix manifests before adding to git
Zac Medico [Mon, 17 Oct 2011 05:20:10 +0000 (22:20 -0700)]
portdbapi.aux_get: remove redunant EAPI code
This code only needs to exist in _metadata_callback.
Zac Medico [Mon, 17 Oct 2011 04:22:18 +0000 (21:22 -0700)]
repoman: support --echangelog=force
Allows forced ChangeLog generation even when the vcs has detected that
the ChangeLog has already been modified.
Zac Medico [Mon, 17 Oct 2011 03:45:10 +0000 (20:45 -0700)]
UpdateChangeLog: show trivial if nothing else
Like echangelog does, show ChangeLog or Manifest if there are no other
changes to display.
Zac Medico [Mon, 17 Oct 2011 03:03:25 +0000 (20:03 -0700)]
perform_checksum: OSerror to PermissionDenied
Zac Medico [Mon, 17 Oct 2011 03:00:08 +0000 (20:00 -0700)]
hashed_path: convert OSError to PermissionDenied
Zac Medico [Mon, 17 Oct 2011 02:56:01 +0000 (19:56 -0700)]
man/repoman.1: update date in header
Zac Medico [Mon, 17 Oct 2011 02:51:00 +0000 (19:51 -0700)]
repoman: handle subprocess bug with Python 3.1
Zac Medico [Mon, 17 Oct 2011 02:34:19 +0000 (19:34 -0700)]
tests/repoman: test commit with git
These tests only run if the git binary is found. They include testing
of new --echangelog=y option.
Zac Medico [Mon, 17 Oct 2011 01:46:41 +0000 (18:46 -0700)]
tests/emerge: test --regen and --metadata
Zac Medico [Mon, 17 Oct 2011 01:11:22 +0000 (18:11 -0700)]
UpdateChangeLog: update copyright year in header
This feature got dropped on commit
b655137b7b5f87c11a7e742b7ef0e028a1139677.
Zac Medico [Mon, 17 Oct 2011 00:39:47 +0000 (17:39 -0700)]
repoman: simplify autoadd code
Zac Medico [Mon, 17 Oct 2011 00:11:08 +0000 (17:11 -0700)]
UpdateChangeLog: optimize and add unicode support
Also:
* copy the old header from the old ChangeLog if it exists, in case it
contains a non-gentoo header
* don't add a header if the old ChangeLog exists and doesn't contain
a header
Fabian Groffen [Sun, 16 Oct 2011 22:31:07 +0000 (15:31 -0700)]
repoman: implemented echangelog functionality
Instead of calling echangelog, which on its turn has to query the VCS
again, use the existing information on changes made to the current
directory, and update the ChangeLog from Python itself.
This avoids a call to echangelog, and avoids again retrieving the same
VCS information as repoman already did. It makes repoman independent
from external tools it didn't install itself, and should be faster in
general.
Zac Medico [Sun, 16 Oct 2011 21:13:45 +0000 (14:13 -0700)]
hashed_path: convert stat OSError to FileNotFound
This makes it consistent with perform_checksum call which also raises
FileNotFound instead of OSError.
Zac Medico [Sun, 16 Oct 2011 20:26:46 +0000 (13:26 -0700)]
EbuildMetadataPhase: avoid redundant EAPI parsing
Zac Medico [Sun, 16 Oct 2011 19:44:11 +0000 (12:44 -0700)]
man/emerge.1: update date in header
Sebastian Luther [Sun, 16 Oct 2011 18:43:17 +0000 (20:43 +0200)]
Add --binpkg-exclude option
This options disables creation of binary packages, no matter
what enabled it in the first place. See bug 386903.
Arfrever Frehtes Taifersar Arahesis [Sun, 16 Oct 2011 12:49:58 +0000 (14:49 +0200)]
Fix a typo in a comment.
Zac Medico [Sun, 16 Oct 2011 06:18:39 +0000 (23:18 -0700)]
RepoConfig: sort __slots__
Zac Medico [Sun, 16 Oct 2011 05:58:56 +0000 (22:58 -0700)]
_pull_valid_cache: pass unicode to hashed_path
This removes a conversion to bytes that should have been removed in
commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212. The hashed_path
location attribute should always be unicode, for consistency will path
handling throughout portage. The hashed_path class internally uses the
portage portage.os wrapper to ensure that paths are encoded as utf_8
bytes when they are passed to the real os module for stat calls.
Zac Medico [Sun, 16 Oct 2011 00:34:06 +0000 (17:34 -0700)]
MetadataRegen: remove unused import
Zac Medico [Sun, 16 Oct 2011 00:02:50 +0000 (17:02 -0700)]
egencache: remove unused import
Zac Medico [Sat, 15 Oct 2011 23:28:04 +0000 (16:28 -0700)]
EbuildMetadataPhase: tweak metadata_callback usage
For parse-eapi-ebuild-head, we want to assign self.metadata from the
return value, for conformity with usage elsewhere.
Zac Medico [Sat, 15 Oct 2011 23:10:18 +0000 (16:10 -0700)]
egencache: add _mtime_ to metadata
This fixes a regression in FEATURES=parse-eapi-ebuild-head support
for egencache since commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212.
If the metadata does not contain _mtime_ here, then _setitem from
cache.metadata.database will raise KeyError.
Zac Medico [Sat, 15 Oct 2011 22:55:31 +0000 (15:55 -0700)]
EbuildMetadataPhase: fix parse-eapi-ebuild-head
This fixes bugs that can only be triggered by egencache since
other callers handle parse-eapi-ebuild-head earlier.
Zac Medico [Sat, 15 Oct 2011 22:46:37 +0000 (15:46 -0700)]
EbuildMetadataPhase: fix broken _metadata_callback
This fixes a regression in FEATURES=parse-eapi-ebuild-head support
for egencache since commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212.
Zac Medico [Sat, 15 Oct 2011 22:32:55 +0000 (15:32 -0700)]
repoman: remove unused imports
Zac Medico [Sat, 15 Oct 2011 21:43:32 +0000 (14:43 -0700)]
bin/ebuild: don't set PORTAGE_CALLER
This removes the last reference to PORTAGE_CALLER.
Zac Medico [Sat, 15 Oct 2011 21:40:28 +0000 (14:40 -0700)]
fixpackages: don't use PORTAGE_CALLER
Zac Medico [Sat, 15 Oct 2011 20:28:44 +0000 (13:28 -0700)]
portdbapi.aux_get: fix broken _metadata_callback
This fixes a regression in FEATURES=parse-eapi-ebuild-head support
since commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212.
Zac Medico [Sat, 15 Oct 2011 19:34:09 +0000 (12:34 -0700)]
EbuildMetadataPhase: use b''.join() for bytes
Zac Medico [Sat, 15 Oct 2011 18:58:26 +0000 (11:58 -0700)]
repoman: handle categories for multiple masters
Also, copy repoman_settings.categories to each individual
profile's dep_settings.categories attribute, in order to ensure
that portdbapi.cp_list() uses the correct category set.
Zac Medico [Sat, 15 Oct 2011 18:38:35 +0000 (11:38 -0700)]
frozenset categories optimize pordbapi.cp_list()
Zac Medico [Sat, 15 Oct 2011 18:20:06 +0000 (11:20 -0700)]
repoman: validate categories for vcs files
Fabian Groffen [Sat, 15 Oct 2011 12:41:13 +0000 (14:41 +0200)]
FindVCS: support Subversion 1.7
Since subversion 1.7, only a top-level .svn dir is used. Make FindVCS
also deal with that. (Tested with repoman on Prefix SVN-based tree.)
Zac Medico [Sat, 15 Oct 2011 06:11:02 +0000 (23:11 -0700)]
emerge --metadata: fix empty INHERITED handling
Since changes to eclass validation code in commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212, validation of cache for
packages with empty INHERITED metadata has been broken due to failure
to distinguish between None and empty dict return values from
eclass.cache.validate_and_rewrite_cache().
Zac Medico [Sat, 15 Oct 2011 05:10:28 +0000 (22:10 -0700)]
emerge --metadata: fix breakage
The hunk that got removed from action_metadata in commit
d4ea29bf6a3ce35d49e0f54f9173e3a6e42da2d6 is actually needed when
FEATURES=metadata-transfer is enabled.
Zac Medico [Sat, 15 Oct 2011 03:21:18 +0000 (20:21 -0700)]
repoman: simplify digestgen and gpgsign loops
We can re-use the vcs_files_to_cps() function from commit
9c9145a9e3c2d8d1bcebf791ce2188add656fee2.
Zac Medico [Sat, 15 Oct 2011 03:03:21 +0000 (20:03 -0700)]
repoman: optimize --if-modified and --echangelog
Avoid unnecessary nested loops.
Zac Medico [Sat, 15 Oct 2011 02:54:39 +0000 (19:54 -0700)]
repoman --echangelog: fix manifest-only commmits
Zac Medico [Sat, 15 Oct 2011 02:33:32 +0000 (19:33 -0700)]
repoman --if-modified: handle removed files
Zac Medico [Sat, 15 Oct 2011 01:49:13 +0000 (18:49 -0700)]
eclass_cache: fix cache_getter typo
This triggered a regression since commit
2ed1cb53cc4158af08c22d466b15b9a9a7767212 that caused cache entries
containing eclass paths to appear invalid.
Brian Harring [Fri, 14 Oct 2011 09:40:00 +0000 (02:40 -0700)]
layout.conf: add git friendly pregenerated cache format
Enabled via cache-format = md5-dict
This format is essentially just flat_hash, using md5 rather than mtime,
and dropping the path component from _eclasses_ entries.
From a speed standpoint, the md5 overhead is ~16% in comparison to mtime,
timed on a modern sandybridge; specifically, validating 29k nodes takes
~8.8s for flat_md5, while the pms norm is ~7.7s.
That said, the cache is /usable/ in places PMS is not; in those cases,
it can definitely be a win since even if the cache is partially old,
it's better than regenerating everything from scratch.
(cherry picked from commit
95ddf97e2f7e7d3f6a072604b2df5f77e9298558)
Change-Id: Ic3561369b7a8be7f86480f339ab1686fddea6dff
Brian Harring [Fri, 14 Oct 2011 06:27:22 +0000 (23:27 -0700)]
cache: rewrite to support arbitrary validation method
Specifically, the cache can use any portage supported checksum method,
or use the standard mtime approach. In addition, support controlling
whether or not paths are stored, and generally try to restore some
of the centralization/encapsulation that was in place originally.
(cherry picked from commit
bc1aed614fb588f0ade5bcb5d1265a8db0f8d247)
Change-Id: Ic38057e7dbb15063c64a93c99e66e113a7d4c70e
Brian Harring [Fri, 14 Oct 2011 08:07:57 +0000 (01:07 -0700)]
cache.util: drop completely dead module/code
Looks of it, this code was copied/mangled into action_metadata; the
noise/callbacks in use don't do anything, so drop them, the dead code,
and clean up the exception handling to reflect the new reality
(cherry picked from commit
320890fadbedf678119ac06d458ed6086075431e)
Zac Medico [Fri, 14 Oct 2011 19:31:19 +0000 (12:31 -0700)]
repoman: handle unicode in echangelog args
Zac Medico [Fri, 14 Oct 2011 17:55:31 +0000 (10:55 -0700)]
repoman: add --echangelog=<y|n> for bug #337853
This option will call echangelog for each package that has modified
files and does not have a modified ChangeLog. Gentoo's council has
decided that this option will be enabled by default for the "gentoo"
repository. If desired, we can add a metadata/layout.conf setting so
that other repositories can control the default behavior.
Zac Medico [Fri, 14 Oct 2011 16:29:37 +0000 (09:29 -0700)]
repoman: support REPOMAN_DEFAULT_OPTS variable
Zac Medico [Fri, 14 Oct 2011 15:30:17 +0000 (08:30 -0700)]
Revert "Use plain ascii encoding for this file"
This reverts commit
2a4b07c8d0105ea7418ea3afc9e777a7a396fc46.
Current python ebuilds no longer remove the encodings directory when
USE=ebuild is enabled, so now it's possible to use UTF8 encoding in
python source files without triggering unsightly SyntaxError messages
when python_mod_optimize is compiling byte-code files.
Sebastian Luther [Fri, 14 Oct 2011 10:55:22 +0000 (12:55 +0200)]
Update --prune man page entry (bug 387011)
Zac Medico [Fri, 14 Oct 2011 07:01:08 +0000 (00:01 -0700)]
RELEASE-NOTES: FEATURES=fixpackages unconditional
This should help people who get warnings about unknown value(s) in
FEATURES due to having FEATURES=fixpackages enabled in make.conf even
though it's been enabled by default for almost 3 years (bug #386871).
Zac Medico [Fri, 14 Oct 2011 06:40:02 +0000 (23:40 -0700)]
Fix inverted QA_SONAME_NO_SYMLINK logic.
Zac Medico [Fri, 14 Oct 2011 06:23:48 +0000 (23:23 -0700)]
Don't generate soname symlinks for bug #387053.
The symlink is not really needed now that the QA notice has been
available for some time (testing since 2.1.10.4, and stable
since 2.1.10.11).
Zac Medico [Fri, 14 Oct 2011 06:14:40 +0000 (23:14 -0700)]
Add QA_SONAME_NO_SYMLINK for bug #387053.
Zac Medico [Fri, 14 Oct 2011 05:13:03 +0000 (22:13 -0700)]
quickpkg: optimize */* matches
Zac Medico [Fri, 14 Oct 2011 05:04:04 +0000 (22:04 -0700)]
portageq match: wildcard support
Zac Medico [Fri, 14 Oct 2011 00:23:28 +0000 (17:23 -0700)]
_pull_valid_cache: fix readonly delete logic
Brian Harring [Thu, 13 Oct 2011 23:26:03 +0000 (16:26 -0700)]
layout.conf: make the pregenerated cache format controllable
Controllable via 'cache-format', currently it supports only one cache;
'pms', and defaults to it. If an unsupported cache-format is specified,
the cache is disabled. If pms is specified and metadata/cache directory
doesn't exist, the cache is disabled.
Finally, this rips out the best module support for locally overriding
the cache format used for pregenerated caches; this functionality made
zero sense (upstream determines the format, we use what is available).
Zac Medico [Thu, 13 Oct 2011 21:58:17 +0000 (14:58 -0700)]
quickpkg: use AmbiguousPackageName
Zac Medico [Thu, 13 Oct 2011 21:53:45 +0000 (14:53 -0700)]
quickpkg: fix '*' in arg extended atom check
This check isn't really accurate due to the =* operator, and we don't
want to reject =* atoms when they omit the category.
Zac Medico [Thu, 13 Oct 2011 21:27:03 +0000 (14:27 -0700)]
layout.conf: revert authoritative-cache support
Those who wanted it have decided to use a different approach.
Zac Medico [Thu, 13 Oct 2011 20:58:16 +0000 (13:58 -0700)]
digestcheck: handle allow_missing for distfiles
Zac Medico [Thu, 13 Oct 2011 15:14:18 +0000 (08:14 -0700)]
quickpkg_extended_atom: handle =* operator
Sebastian Luther [Thu, 13 Oct 2011 13:03:34 +0000 (15:03 +0200)]
quickpkg: Support extended atoms
Mike Frysinger [Thu, 13 Oct 2011 02:50:57 +0000 (22:50 -0400)]
xpak(5): fix grammar, spelling, style, and add more content
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Tue, 11 Oct 2011 23:45:46 +0000 (16:45 -0700)]
Remove FEATURES=fixpackages support.
This reduces the probability of users encountering issues related to
package moves when they disable --dynamic-deps, and --package-moves=n
can be set in EMERGE_DEFAULT_OPTS if package moves need to be
temporarily avoided for some reason.
Zac Medico [Tue, 11 Oct 2011 20:57:49 +0000 (13:57 -0700)]
Ensure correct IUSE in vdb for bug #386829.
Zac Medico [Tue, 11 Oct 2011 18:28:18 +0000 (11:28 -0700)]
bin/ebuild: add --version option
Mike Frysinger [Tue, 11 Oct 2011 17:28:45 +0000 (13:28 -0400)]
prepstrip: make sure eu-strip embeds right filename
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Tue, 11 Oct 2011 17:27:44 +0000 (10:27 -0700)]
fetch: tweak space msg for bug #386797
Zac Medico [Tue, 11 Oct 2011 16:56:43 +0000 (09:56 -0700)]
elog_process: fix ridicoulus newlines bug #386771
This fixes a regression since commit
8a119ea94ecc6668797e3a1358465ef3733f3a3e
which added a newline after each character. This boosts efficiency since we no
longer convert a strings to lists of characters.
Mike Frysinger [Tue, 11 Oct 2011 04:49:48 +0000 (00:49 -0400)]
prepstrip: add support for elfutils strip
If people use strip from the elfutils package, take advantage of some of
its neat features (like splitting + stripping in one step).
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 11 Oct 2011 04:40:09 +0000 (00:40 -0400)]
prepstrip: extract buildid with readelf to avoid debugedit when possible
The readelf utility is much more common than debugedit.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 11 Oct 2011 02:28:55 +0000 (22:28 -0400)]
prepstrip: avoid a `dirname` with a simple ${var%/*}
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Mon, 10 Oct 2011 19:33:04 +0000 (12:33 -0700)]
FakeVartree: disable match wrapper if necessary
Zac Medico [Mon, 10 Oct 2011 18:21:30 +0000 (11:21 -0700)]
FakeVartree: type from last commit
Zac Medico [Mon, 10 Oct 2011 18:20:12 +0000 (11:20 -0700)]
FakeVartree: fix sync for --dynamic-deps=n
Zac Medico [Mon, 10 Oct 2011 18:13:12 +0000 (11:13 -0700)]
Scheduler: fix myopts typo from last commit
Zac Medico [Mon, 10 Oct 2011 18:01:36 +0000 (11:01 -0700)]
Add emerge --dynamic-deps <y|n> option.
This makes it possible to disable the dynamic dependency updates that
FakeVartree performs by default.
WARNING: If --dynamic-deps is disabled, then it is necessary to
ensure that an alternative method is used to handle package moves
in dependencies of installed packages. Normally, this is handled
by FEATURES="fixpackages", which is enabled by default and may be
disabled via make.conf(5). Alternatively, in order to manually apply
package moves, run `emaint --fix moveinst` after each emerge --sync
operation (see emaint(1)).
Zac Medico [Mon, 10 Oct 2011 14:36:39 +0000 (07:36 -0700)]
mod_syslog: add newlines for bug #386627
This fixes omission of newlines in syslog messages since commit
ca7bef7821876791a26a5f9df6938f4c77fe571f.
Zac Medico [Mon, 10 Oct 2011 14:21:54 +0000 (07:21 -0700)]
elog_process: add newlines for bug #386627
This fixes omission of newlines in saved messages since commit
ca7bef7821876791a26a5f9df6938f4c77fe571f.
Zac Medico [Mon, 10 Oct 2011 06:27:16 +0000 (23:27 -0700)]
prepstrip: tweak style of debugedit checks
Make the checks more like the FEATURES/RESTRICT checks from commit
286675a500998e536dbbf2ee2dfe1fedf4290b38.
Zac Medico [Mon, 10 Oct 2011 06:04:33 +0000 (23:04 -0700)]
prepstrip: merge debugedit checks more
Use a ${debugedit_found} to remember if it's found or not, and use
${debugedit_warned} to avoid showing duplicate warnings.
Mike Frysinger [Mon, 10 Oct 2011 02:27:35 +0000 (22:27 -0400)]
prepstrip: optimize duplicate calls to `has`
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 22:53:53 +0000 (18:53 -0400)]
prepstrip: merge debugedit checks
Avoid checking for debugedit multiple times.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 22:43:17 +0000 (18:43 -0400)]
tests/dodir: check relative path by itself
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 22:34:35 +0000 (18:34 -0400)]
tests: setup default bin env more
We want the default testing env to match default portage env.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 18:43:11 +0000 (14:43 -0400)]
prepstrip: optimize chmod slightly
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Mon, 10 Oct 2011 02:21:54 +0000 (19:21 -0700)]
tests/__init__: return int from main()
Zac Medico [Mon, 10 Oct 2011 01:55:30 +0000 (18:55 -0700)]
tests/__init__: import print_function
Zac Medico [Mon, 10 Oct 2011 01:40:32 +0000 (18:40 -0700)]
MaskManager: fix "Unmatched removal", bug #386569
Zac Medico [Mon, 10 Oct 2011 00:15:31 +0000 (17:15 -0700)]
Skip PORTAGE_TMPDIR write check for fetchonly.
Bug #286201
Zac Medico [Mon, 10 Oct 2011 00:05:23 +0000 (17:05 -0700)]
show_ignored_binaries: filter noise, bug #386379
Mike Frysinger [Sun, 9 Oct 2011 18:43:01 +0000 (14:43 -0400)]
tests: add --list flag to show available tests
Trying to guess at what runtests actually wants in terms of command line
tests is pretty hard. Any invalid value just gives you an ugly traceback.
So add a helper --list option so the user can easily figure out what the
code wants *exactly*.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 18:42:01 +0000 (14:42 -0400)]
tests: add a --help option to make runtest more friendly
At the moment, trying to do `./runtests.h -h` just produces an ugly and
indecipherable traceback. Make it a bit more friendly.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 18:39:39 +0000 (14:39 -0400)]
tests: split up getTests into helper funcs to avoid duplication
This avoids a little duplication between the getTestFromCommandLine and
getTests funcs, and they'll get utilized even more in follow up patches.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 9 Oct 2011 18:38:10 +0000 (14:38 -0400)]
runtests: make sure we are in the right dir
The code assumes we're in the top of the tree (when it tries to run with
the full path "pym/portage/tests/runTests"), so try to make sure we are
in the right place to allow things like `../runtests.sh` to "just work".
Signed-off-by: Mike Frysinger <vapier@gentoo.org>