Zac Medico [Thu, 30 Sep 2010 22:45:07 +0000 (15:45 -0700)]
Fix findLicensePath() breakage from previous.
Zac Medico [Thu, 30 Sep 2010 22:13:20 +0000 (15:13 -0700)]
Make portdbapi.porttrees mutable once again.
The portdbapi.porttrees needs to be mutable for repoman, probably
some external api consumers. It's somewhat invasive to modify it,
but it's also quite useful.
Sebastian Luther [Thu, 30 Sep 2010 10:36:37 +0000 (12:36 +0200)]
More repository handling cleanup
Sebastian Luther [Thu, 30 Sep 2010 06:13:03 +0000 (08:13 +0200)]
Remove repos.conf handling from package/ebuild/config.py because it moved to repository/config.py
Zac Medico [Thu, 30 Sep 2010 19:04:25 +0000 (12:04 -0700)]
Fix readonly variable assignment for PORTAGE_BINPKG_TMPFILE when
ebuild(1) calls the 'package' phase.
Zac Medico [Wed, 29 Sep 2010 20:56:46 +0000 (13:56 -0700)]
Handle missing PORTDIR in RepoConfigLoader.mainRepo() and the
MaskManager constructor.
Zac Medico [Wed, 29 Sep 2010 20:43:08 +0000 (13:43 -0700)]
Tweak depgraph._show_unsatisfied_dep() display for AtomArg instances.
Fabian Groffen [Wed, 29 Sep 2010 19:07:28 +0000 (21:07 +0200)]
remove double prefix in LinkageMapELF
Zac Medico [Wed, 29 Sep 2010 17:11:57 +0000 (10:11 -0700)]
Add missing remember_source_file=True parameter to append_repo() call in the MaskManager constructor.
Zac Medico [Wed, 29 Sep 2010 15:57:50 +0000 (08:57 -0700)]
Invert portageq list_preserved_libs returncode meaning.
Thanks to Jeremy Olexa <darkside@g.o> for the suggestion.
Sebastian Luther [Wed, 29 Sep 2010 07:12:46 +0000 (09:12 +0200)]
search: code clean up
Fabian Groffen [Wed, 29 Sep 2010 11:43:37 +0000 (13:43 +0200)]
entries from preserved registry already include EPREFIX, so don't use EROOT on them
Fabian Groffen [Wed, 29 Sep 2010 11:35:31 +0000 (13:35 +0200)]
use ROOT iso EROOT with PreservedLibsRegistry, since all entries already have EPREFIX
Fabian Groffen [Wed, 29 Sep 2010 11:25:37 +0000 (13:25 +0200)]
use ROOT, not EROOT so we don't get a double prefix
Fabian Groffen [Wed, 29 Sep 2010 11:19:08 +0000 (13:19 +0200)]
use ROOT, not EROOT so we don't get a double prefix
Zac Medico [Tue, 28 Sep 2010 19:59:13 +0000 (12:59 -0700)]
Fix RepoConfigLoader so that it's possible to use PORTDIR_OVERLAY
to override the repo that PORTDIR refers to.
This fixes a regression which prevented a common repoman use case
from working in which the user has PORTDIR refering to a rsync
tree and has a separate cvs tree with the same repo_name as
PORTDIR. When the user tries to use repoman with the cvs tree,
the cvs repo is appended to PORTDIR_OVERLAY and we want it to
override the conflicting PORTDIR setting.
Zac Medico [Tue, 28 Sep 2010 18:47:57 +0000 (11:47 -0700)]
Fix a typo in a comment.
Zac Medico [Tue, 28 Sep 2010 18:46:00 +0000 (11:46 -0700)]
Fix breakage (from reposyntax branch) in repoman's ability to append
the current repo to PORTDIR_OVERLAY.
Sebastian Luther [Tue, 28 Sep 2010 13:14:01 +0000 (15:14 +0200)]
Get --exclude to work with --depclean and --prune
Thanks to forum member 'krinn' for the suggestion
Zac Medico [Tue, 28 Sep 2010 10:32:09 +0000 (03:32 -0700)]
Add basic repo atom support for emerge --resume.
Zac Medico [Mon, 27 Sep 2010 23:55:53 +0000 (16:55 -0700)]
Fix breakage in depgraph._serialize_tasks() blocker handling due
to addition of repo to Package._hash_key.
Zac Medico [Mon, 27 Sep 2010 22:17:14 +0000 (15:17 -0700)]
Fix depgraph._pkg() to not raise PackageNotFound when myrepo is None
and a package is found, so --resume works.
Zac Medico [Mon, 27 Sep 2010 21:43:18 +0000 (14:43 -0700)]
Omit repo from mtimedb resume mergelist entries since the format
is intended to be frozen.
Zac Medico [Mon, 27 Sep 2010 21:13:30 +0000 (14:13 -0700)]
Fix Task.__eq__() and __ne__() to explicitly compare the results
from _get_hash_key().
Michał Górny [Mon, 27 Sep 2010 18:24:45 +0000 (20:24 +0200)]
doman: ${mandir} can't contain complete suffix so don't check for it.
We're appending only a single character of manfile suffix to ${mandir},
so we don't need to expect having anything more in there.
Zac Medico [Mon, 27 Sep 2010 18:53:58 +0000 (11:53 -0700)]
Use realpath for portdbapi._repository_map and treemap since that's
how it was before the reposyntax branch was merged.
Zac Medico [Mon, 27 Sep 2010 18:40:02 +0000 (11:40 -0700)]
Use realpath for portdbapi.porttrees and porttree_root since that's
how it was prior to merge of the reposyntax branch.
Zac Medico [Mon, 27 Sep 2010 18:33:38 +0000 (11:33 -0700)]
Fix portdbapi.xmatch("minimum-visible") breakage where a repo
name is passed to cp_list instead of a repo path.
Arfrever Frehtes Taifersar Arahesis [Mon, 27 Sep 2010 13:32:08 +0000 (15:32 +0200)]
Fix some typos.
Zac Medico [Mon, 27 Sep 2010 07:21:10 +0000 (00:21 -0700)]
Use realpath(repo_path_real) to avoid a ValueError in
_RepoDisplay.repoStr() when overlay path has a symlink.
Sebastian Luther [Sat, 25 Sep 2010 14:20:48 +0000 (16:20 +0200)]
Improved profiles/p.mask handling
It's now possible for an repo to revert masks from the master for its own packages.
Sebastian Luther [Thu, 23 Sep 2010 05:54:57 +0000 (07:54 +0200)]
move repository.py to repository/config.py
Sebastian Luther [Wed, 22 Sep 2010 20:32:03 +0000 (22:32 +0200)]
reposyntax: Remove unneeded special case
Sebastian Luther [Wed, 22 Sep 2010 19:51:56 +0000 (21:51 +0200)]
reposyntax: Add repo config parser, but don't use config files for now
Sebastian Luther [Wed, 22 Sep 2010 09:56:01 +0000 (11:56 +0200)]
reposyntax: Fix backtrace caused by cache changes
Sebastian Luther [Wed, 22 Sep 2010 09:50:28 +0000 (11:50 +0200)]
reposyntax: Handle missing profiles/repo_name by setting repo_name to x-$(basename $path)
Sebastian Luther [Wed, 22 Sep 2010 08:50:17 +0000 (10:50 +0200)]
reposyntax: Let portdbapi.getRepositories return repos sorted by priority
Sebastian Luther [Wed, 22 Sep 2010 08:11:33 +0000 (10:11 +0200)]
reposyntax: Handle the "give me a Package for an ebuild from any repo" case better
Sebastian Luther [Wed, 22 Sep 2010 07:45:27 +0000 (09:45 +0200)]
reposyntax: Print cpv from all repos for "masked by" messages
Sebastian Luther [Wed, 22 Sep 2010 07:03:43 +0000 (09:03 +0200)]
Fix breakage from the last commit
Sebastian Luther [Tue, 21 Sep 2010 18:39:39 +0000 (20:39 +0200)]
reposyntax: Next try at fixing the package cache
Sebastian Luther [Tue, 21 Sep 2010 14:49:54 +0000 (16:49 +0200)]
reposyntax: Get the Package cache to work again
Sebastian Luther [Tue, 21 Sep 2010 10:42:16 +0000 (12:42 +0200)]
Fix breakage with old style virtuals from the last commit
Sebastian Luther [Tue, 21 Sep 2010 10:07:57 +0000 (12:07 +0200)]
reposyntax: Fix ignored slot spec if the same cpv is in several repos with different SLOT
Sebastian Luther [Tue, 21 Sep 2010 08:10:41 +0000 (10:10 +0200)]
reposyntax: Add support all over the place
Sebastian Luther [Tue, 21 Sep 2010 07:31:02 +0000 (09:31 +0200)]
reposyntax: add support in _config/*
Sebastian Luther [Tue, 21 Sep 2010 07:20:35 +0000 (09:20 +0200)]
reposyntax: Add support in config.py
Sebastian Luther [Sun, 26 Sep 2010 21:08:03 +0000 (23:08 +0200)]
backtracking: Take all branches in case of slot collisions
Zac Medico [Mon, 27 Sep 2010 05:52:52 +0000 (22:52 -0700)]
Revert one more change from bug #337178: parent_atoms is supposed
to refer to the new pkg, not the one to_be_masked.
Zac Medico [Mon, 27 Sep 2010 05:37:04 +0000 (22:37 -0700)]
Revert slot conflict behavior backtracking behavior changes from
bug #337178 and comment about reasoning for behavior.
We always mask existing_node since _select_package tries to avoid
slot conflicts when possible and therefore a conflict typically
means that existing_node was a poor choice.
Zac Medico [Sun, 26 Sep 2010 13:43:17 +0000 (06:43 -0700)]
Fix confusing messages shown by
depgraph._show_missed_update_slot_conflicts() since the fix from
bug #337178.
When depgraph._add_pkg() was fixed to mask the higher version in
4bc78ab0b563697b98527eebcdfe474863383cf0, we didn't adjust the
parent_atoms variable so that it would contain parent atoms from
the versions being masked. This resulted in confusing messages from
depgraph._show_missed_update_slot_conflicts().
Zac Medico [Sun, 26 Sep 2010 01:31:38 +0000 (18:31 -0700)]
Add PORTAGE_BINHOST sftp protocol support.
Zac Medico [Sun, 26 Sep 2010 00:51:07 +0000 (17:51 -0700)]
Fix a typo in a comment.
Zac Medico [Sat, 25 Sep 2010 23:43:10 +0000 (16:43 -0700)]
Add non-essential backslashes for clarity in GetConfigTestCase.
Zac Medico [Sat, 25 Sep 2010 23:40:01 +0000 (16:40 -0700)]
Add test cases for getconfig() bash compatibility with variables
from make.globals.
Zac Medico [Sat, 25 Sep 2010 22:05:22 +0000 (15:05 -0700)]
Add default values for FETCHCOMMAND_SSH and RESUMECOMMAND_SSH
that call rsync.
Zac Medico [Sat, 25 Sep 2010 21:56:05 +0000 (14:56 -0700)]
Fix varexpand() so that it doesn't do redundant quote removal that
is already handled by shlex.
This fixes a bug in getconfig() which caused it to remove backslash
characters it front of quote characters in cases where bash would
have preserved them when sourcing the same input.
Zac Medico [Sat, 25 Sep 2010 20:55:46 +0000 (13:55 -0700)]
Fix BinpkgVerifier so that it doesn't try to rename the file if
it doesn't exist.
Zac Medico [Sat, 25 Sep 2010 20:13:50 +0000 (13:13 -0700)]
Make MetaDataXML.format_maintainer_string() check a values to make
sure they are non-empty and not just whitespace.
Zac Medico [Sat, 25 Sep 2010 15:53:20 +0000 (08:53 -0700)]
Implement PORTAGE_BINHOST ssh:// protocol support by spawning ssh
and using it to stream the Packages file on stdout.
This assumes that you have ssh-agent running, for authentication.
For now, you won't be able to use this unless you define your own
FETCHCOMMAND_SSH and RESUMECOMMAND_SSH values. It's trivial to do
this if you create a helper script that calls rsync after
transforming the URI into the host:/path format that rsync uses.
Zac Medico [Sat, 25 Sep 2010 15:30:19 +0000 (08:30 -0700)]
In EbuildPhase, don't display Repository if the value is not available.
Zac Medico [Sat, 25 Sep 2010 14:16:22 +0000 (07:16 -0700)]
Move all imports in bintree.py to the top.
Zac Medico [Sat, 25 Sep 2010 13:30:11 +0000 (06:30 -0700)]
Make BinpkgFetcher use AsynchronousLock.
Zac Medico [Sat, 25 Sep 2010 10:10:42 +0000 (03:10 -0700)]
Fix catpkgsplit() to validate the category part. This fixes
vardbapi.cp_all() to reject invalid categories.
Zac Medico [Sat, 25 Sep 2010 08:28:48 +0000 (01:28 -0700)]
Bug #338588 - Allow quickpkg to create packages even though the
current user doesn't have permission to lock /var/db/pkg.
Zac Medico [Sat, 25 Sep 2010 08:17:44 +0000 (01:17 -0700)]
Bug #337465 - Enable EbuildIpcDaemon on Darwin and FreeBSD since
it seems fixed now.
This reverts commit
0906fee12ffe0ebd07e8952316f03927962af29b.
Zac Medico [Fri, 24 Sep 2010 02:39:39 +0000 (19:39 -0700)]
Make EbuildIpcDaemon._input_handler() handle EAGAIN from os.read()
for FreeBSD (bug 337465, comment #35).
Fabian Groffen [Thu, 23 Sep 2010 16:55:51 +0000 (18:55 +0200)]
Merge branch 'master' of git+ssh://git.overlays.gentoo.org/proj/portage
Arfrever Frehtes Taifersar Arahesis [Thu, 23 Sep 2010 16:57:05 +0000 (18:57 +0200)]
Add binpkg-logs to the list of supported features.
Fabian Groffen [Thu, 23 Sep 2010 16:55:22 +0000 (18:55 +0200)]
always use eroot with CONFIG_MEMORY_FILE
Zac Medico [Thu, 23 Sep 2010 07:07:08 +0000 (00:07 -0700)]
Bug #337465 - Make EbuildIpcDaemon._input_handler() use os.read()
since array.fromfile() and file.read() are both known to erroneously
return an empty string from this non-blocking fifo stream on FreeBSD.
Zac Medico [Thu, 23 Sep 2010 04:45:17 +0000 (21:45 -0700)]
Add support for FEATURES=binpkg-logs which is similar to unmerge-logs,
but applies to all binary package merges.
Zac Medico [Wed, 22 Sep 2010 03:07:01 +0000 (20:07 -0700)]
Fix a typo in a comment.
Zac Medico [Wed, 22 Sep 2010 02:56:29 +0000 (19:56 -0700)]
In EbuildIpc._receive_reply(), close the input_file when finished.
Zac Medico [Wed, 22 Sep 2010 02:54:29 +0000 (19:54 -0700)]
In EbuildIpc._wait(), use waitpid() instead of wait() since we really
only need to wait on one process.
Zac Medico [Wed, 22 Sep 2010 02:30:58 +0000 (19:30 -0700)]
Bug #337465 - Make ebuild-ipc use an array in order to force a
single atomic read of a whole pickle.
Zac Medico [Tue, 21 Sep 2010 21:18:25 +0000 (14:18 -0700)]
Bug #337465 - Disable EbuildIpcDaemon on Darwin and FreeBSD since
it reportedly triggers a tight loop in emerge.
This reverts commit
6085103bdd7623d941e3c6ae5905e66658c49fd7.
Zac Medico [Tue, 21 Sep 2010 18:40:25 +0000 (11:40 -0700)]
Make ebuild-ipc use select() for timeouts, instead of alarm signals.
Zac Medico [Tue, 21 Sep 2010 18:26:27 +0000 (11:26 -0700)]
Bug #338267 - Fix broken PORTAGE_BUILDDIR assertion in Binpkg when
PORTAGE_TMPDIR is a symlink.
Zac Medico [Tue, 21 Sep 2010 15:41:54 +0000 (08:41 -0700)]
Bug #338190 - Handle more exceptions inside getbinpkg.dir_get_metadata().
The ftplib.all_errors attribute is a useful collection of exceptions
to handle here. Thanks to Christian Kauhaus <kc@gocept.com> for the
suggestion.
Zac Medico [Tue, 21 Sep 2010 10:02:55 +0000 (03:02 -0700)]
Fix ConfigTestCase.testLicenseManager() breakage from from previous
commit.
Zac Medico [Tue, 21 Sep 2010 09:13:11 +0000 (02:13 -0700)]
Bug #300455 - Store LicenseManager._license_groups values as frozenset
in order to avoid false warnings about circular group references.
Sebastian Luther [Tue, 21 Sep 2010 06:41:39 +0000 (08:41 +0200)]
reposyntax: Add support in _sets/base.py
Zac Medico [Tue, 21 Sep 2010 03:10:12 +0000 (20:10 -0700)]
Fix default() and default_src_install() definitions to account for
the new EAPI 4 default src_install implementation.
Zac Medico [Tue, 21 Sep 2010 02:15:36 +0000 (19:15 -0700)]
Make ebuild-ipc use a normal read() call instead of array.fromfile()
since that should work fine for blocking IO.
Zac Medico [Tue, 21 Sep 2010 02:07:22 +0000 (19:07 -0700)]
Remove obsolete comment about non-blocking from
EbuildIpcDaemon._send_reply() since ebuild-ipc now uses blocking IO.
Zac Medico [Tue, 21 Sep 2010 01:43:10 +0000 (18:43 -0700)]
Make ebuild-ipc kill the child IO process before it exits due to timeout.
Zac Medico [Tue, 21 Sep 2010 01:17:23 +0000 (18:17 -0700)]
Fix ebuild-ipc to correctly handle non-zero return codes from
has_version ipc calls.
Zac Medico [Tue, 21 Sep 2010 01:06:56 +0000 (18:06 -0700)]
Rewrite ebuild-ipc timeout handling to use forks.
Use forks so that the child process can handle blocking IO
un-interrupted, while the parent handles all timeout
considerations. This helps to avoid possible race conditions
from interference between timeouts and blocking IO operations.
Zac Medico [Mon, 20 Sep 2010 23:36:06 +0000 (16:36 -0700)]
Remove obsolete docstring from _RepoDisplay.__str__().
Zac Medico [Mon, 20 Sep 2010 23:34:08 +0000 (16:34 -0700)]
Make ebuild-ipc show an additional 'read failed' message if the buffer
happens to be empty after the read loop.
Zac Medico [Mon, 20 Sep 2010 23:24:38 +0000 (16:24 -0700)]
If ebuild-ipc times out during read, check if the read buffer is
non-empty in order to try to avoid a possible race condition.
Sebastian Luther [Mon, 20 Sep 2010 11:29:42 +0000 (13:29 +0200)]
Tests: add resolver/test_output: Make sure we don't backtrace in the merge list printer
Sebastian Luther [Mon, 20 Sep 2010 10:50:23 +0000 (12:50 +0200)]
Move mergelist printing into resolver/output.py
Zac Medico [Mon, 20 Sep 2010 07:36:12 +0000 (00:36 -0700)]
Use git rev-list --format option to simplify _LazyVersion committer
timestamp code.
Zac Medico [Mon, 20 Sep 2010 07:20:57 +0000 (00:20 -0700)]
Revert "Update docompress helper docs from bug #260118, comment #26."
This reverts commit
50b39d4bbd4b0ca8d65f22793a044119a391f36f.
Ulrich Mueller [Mon, 20 Sep 2010 07:13:11 +0000 (09:13 +0200)]
Revert "Add option -s to docompress command."
This reverts commit
f2375609adc80ebe5395d84902af4045ecea2f73.
Sebastian Luther [Mon, 20 Sep 2010 06:25:37 +0000 (08:25 +0200)]
Always mask the higher version when backtracking due to a slot conflict
Zac Medico [Mon, 20 Sep 2010 02:58:29 +0000 (19:58 -0700)]
With waitpid and WNOHANG, only check the first element of the tuple
since the second element may vary (bug #337465, comment #12).
Zac Medico [Mon, 20 Sep 2010 00:55:27 +0000 (17:55 -0700)]
Optimize ResolverPlayground._create_ebuild_manifests() to use a single
config instance, and call digestgen() directly.