Zac Medico [Sun, 19 Sep 2010 06:23:27 +0000 (23:23 -0700)]
Fix incorrect depgraph_sets reference in depgraph._load_favorites().
Zac Medico [Sun, 19 Sep 2010 06:01:26 +0000 (23:01 -0700)]
Invert SetArg conditional in depgraph._set_args(), for clarity.
Zac Medico [Sun, 19 Sep 2010 00:33:17 +0000 (17:33 -0700)]
Add multiple $ROOT support to depgraph._iter_atoms_for_pkg().
Zac Medico [Sat, 18 Sep 2010 23:36:23 +0000 (16:36 -0700)]
Add digraph --debug output in calc_depclean() for the case when
it bails out due to unresolved dependencies.
Zac Medico [Sat, 18 Sep 2010 14:47:59 +0000 (07:47 -0700)]
Fix ebuild-ipc.py to timeout if necessary when opening input_file
in blocking mode.
Zac Medico [Sat, 18 Sep 2010 12:25:33 +0000 (05:25 -0700)]
Fix breakage in population of dynamic_config._set_atoms since the
fix from bug #337540.
Zac Medico [Sat, 18 Sep 2010 11:58:40 +0000 (04:58 -0700)]
Use blocking IO in ebuild-ipc.py and EbuildIpcDaemon._send_reply(),
in hopes that it will be more portable (see bug #337465).
Zac Medico [Sat, 18 Sep 2010 11:24:31 +0000 (04:24 -0700)]
Disable EbuildIpcDaemon for Darwin (similar issues to FreeBSD).
Zac Medico [Sat, 18 Sep 2010 11:12:34 +0000 (04:12 -0700)]
Fix lockfile() to close the file descriptor before raising TryAgain.
Zac Medico [Sat, 18 Sep 2010 10:48:53 +0000 (03:48 -0700)]
Fix the "Unmatch removal atoms" (second try) to show the correct
number of undisplayed atoms when there are more than 3.
Fabian Groffen [Sat, 18 Sep 2010 10:35:41 +0000 (12:35 +0200)]
catch another case where using EROOT is absolutely not correct:
when reading files from CONTENTS, don't prepend EROOT, since the package
already HAS prefix recorded in CONTENTS
Fabian Groffen [Sat, 18 Sep 2010 10:26:58 +0000 (12:26 +0200)]
Drop PREFIX LOCAL markers
Fabian Groffen [Sat, 18 Sep 2010 09:53:04 +0000 (11:53 +0200)]
Fix off-by-one; don't print useless "and 0 more" message.
Zac Medico [Sat, 18 Sep 2010 09:28:55 +0000 (02:28 -0700)]
Bug #337826 - Fix spawn_nofetch() to create the private
PORTAGE_TMPDIR before calling doebuild_environment().
Zac Medico [Sat, 18 Sep 2010 08:27:18 +0000 (01:27 -0700)]
Fix --autounmask get_dep_chain() function to traverse nested sets.
Zac Medico [Sat, 18 Sep 2010 07:58:29 +0000 (00:58 -0700)]
Never traverse the same node twice when showing parents in
depgraph._show_unsatisfied_dep().
Zac Medico [Sat, 18 Sep 2010 07:36:49 +0000 (00:36 -0700)]
When depgraph._show_unsatisfied_dep() displays parents, traverse nested
sets.
Zac Medico [Sat, 18 Sep 2010 06:27:49 +0000 (23:27 -0700)]
Make depgraph._pkg_visibility_check() when --autounmask is not
enabled.
Zac Medico [Sat, 18 Sep 2010 05:39:07 +0000 (22:39 -0700)]
Use _unicode_decode() to force unicode format strings inside
digraph.debug_print().
Zac Medico [Sat, 18 Sep 2010 05:23:54 +0000 (22:23 -0700)]
Put more variables in PORTAGE_READONLY_VARS instead of using
save_ebuild_env() to unset them.
Zac Medico [Sat, 18 Sep 2010 04:27:08 +0000 (21:27 -0700)]
Rename READONLY_EBUILD_METADATA and READONLY_PORTAGE_VARS to start
with PORTAGE_, and make them both readonly.
Zac Medico [Sat, 18 Sep 2010 04:18:39 +0000 (21:18 -0700)]
Remove unused PORTAGE_MASTER_PID variable.
Zac Medico [Sat, 18 Sep 2010 03:57:06 +0000 (20:57 -0700)]
Add virtual/linux-sources to repoman's RDEPEND.suspect check.
http://archives.gentoo.org/gentoo-dev/msg_adb45dedc05bc023de23be90015e8629.xml
Zac Medico [Sat, 18 Sep 2010 02:08:42 +0000 (19:08 -0700)]
Don't unset PORTAGE_BUILDDIR in save_ebuild_env() since it's
readonly now.
Zac Medico [Sat, 18 Sep 2010 01:59:40 +0000 (18:59 -0700)]
Add PORTAGE_BUILDDIR to READONLY_PORTAGE_VARS since it's extremely
important now that ebuild-ipc relies on it.
Zac Medico [Sat, 18 Sep 2010 01:52:05 +0000 (18:52 -0700)]
Make EbuildIpcDaemon._input_handler() use a blanket exception
handler for pickle.loads() since that can raise practically
any exception when given corrupt data.
Zac Medico [Fri, 17 Sep 2010 22:01:04 +0000 (15:01 -0700)]
Update emerge --autounmask docs to indicate support for LICENSE
masks.
Fabian Groffen [Thu, 9 Sep 2010 15:42:51 +0000 (17:42 +0200)]
don't use EROOT or an upgrade of a package will result in the package being unmerged!
Fabian Groffen [Sun, 5 Sep 2010 20:12:23 +0000 (22:12 +0200)]
Do NOT use EROOT when merging files to the live filesystem! It inevitably makes double offsets occur
Sebastian Luther [Fri, 17 Sep 2010 12:50:19 +0000 (14:50 +0200)]
--autounmask: Support license changes
Zac Medico [Fri, 17 Sep 2010 11:21:38 +0000 (04:21 -0700)]
Bug #337540 - Record nested package set information in the digraph.
A new depgraph._expand_set_args() method adds nested SetArg instances
to the digraph, in order to record parent -> child relationships from
nested sets.
Zac Medico [Fri, 17 Sep 2010 02:42:46 +0000 (19:42 -0700)]
Move traversal of world_sets from calc_depclean() to
depgraph._complete_graph().
With this patch, nested set traversal is only used for removal
operations like --depclean and --prune. A later patch will introduce
similar traversal for all operations, in order to solve bug #337540.
Zac Medico [Thu, 16 Sep 2010 22:25:23 +0000 (15:25 -0700)]
Bug #337702 - Fix config.load_best_module() to raise ImportError from
the indentation block that caught it.
In python3, we get a "RuntimeError: No active exception to reraise"
exception if we try to call raise after completion of the indentation
block were the last exception was caught.
Zac Medico [Thu, 16 Sep 2010 17:15:21 +0000 (10:15 -0700)]
Fix misspelling of DependencyArg.__eq__() method.
Zac Medico [Thu, 16 Sep 2010 11:32:31 +0000 (04:32 -0700)]
Make Package __str__ and __unicode__ methods more like DependencyArg.
Zac Medico [Thu, 16 Sep 2010 11:09:06 +0000 (04:09 -0700)]
Make RepoDisplay __str__ and __unicode__ methods more like
DependencyArg.
Zac Medico [Thu, 16 Sep 2010 10:34:08 +0000 (03:34 -0700)]
Bug #337603 - Fix invalid '/etc/make.profile is not a symlink' message
displayed when /etc/portage/make.profile is perfectly valid.
Zac Medico [Thu, 16 Sep 2010 10:24:12 +0000 (03:24 -0700)]
Make EbuildPhase display "Package" and "Repository" instead of "CPV"
and "REPO" the the start of the build log.
Zac Medico [Thu, 16 Sep 2010 10:20:12 +0000 (03:20 -0700)]
Add missing noiselevel parameter to writemsg_stdout() call from previous
commit.
Zac Medico [Thu, 16 Sep 2010 10:18:44 +0000 (03:18 -0700)]
Make UseFlagDisplay __str__ and __unicode__ methods more like
DependencyArg, and add tests.
Zac Medico [Thu, 16 Sep 2010 08:24:44 +0000 (01:24 -0700)]
Update docompress helper docs from bug #260118, comment #26.
Zac Medico [Thu, 16 Sep 2010 03:01:21 +0000 (20:01 -0700)]
Make PortageException __str__ and __unicode__ methods more like
DependencyArg, and add tests.
Zac Medico [Thu, 16 Sep 2010 02:41:14 +0000 (19:41 -0700)]
Add tests for DependencyArg __str__ and __unicode__ methods.
Zac Medico [Thu, 16 Sep 2010 02:39:00 +0000 (19:39 -0700)]
Implement DependencyArg __equals__, __hash__, and __unicode__ methods.
Arfrever Frehtes Taifersar Arahesis [Wed, 15 Sep 2010 15:24:18 +0000 (17:24 +0200)]
Fix typo in comment.
Zac Medico [Wed, 15 Sep 2010 11:01:22 +0000 (04:01 -0700)]
Bug #337465 - Disable EbuildIpcDaemon on FreeBSD since it doesn't
work yet.
Zac Medico [Wed, 15 Sep 2010 08:21:21 +0000 (01:21 -0700)]
Tweak stack_lists() strict_warn_for_unmatched_removal logic.
Zac Medico [Wed, 15 Sep 2010 07:27:09 +0000 (00:27 -0700)]
Bug #337180 - Add a --unmatched-removal option for stricter checking
of package.mask and package.unmask files for unmatched removal atoms.
Zac Medico [Wed, 15 Sep 2010 06:52:16 +0000 (23:52 -0700)]
Bug #337180 - Add a strict_warn_for_unmatched_removal parameter for
stack_lists() that will be useful for repoman, and disable it by default.
Sebastian Luther [Wed, 15 Sep 2010 06:29:10 +0000 (08:29 +0200)]
Limit the spam caused by unmatched removal atoms
Zac Medico [Wed, 15 Sep 2010 06:32:43 +0000 (23:32 -0700)]
In Package._validate_deps(), force unicode format string in
check_required_use() exception handling (for python-2.x safety).
Zac Medico [Wed, 15 Sep 2010 05:22:15 +0000 (22:22 -0700)]
Make Package._metadata_exception() use unicode format strings in order
to avoid UnicodeDecodeError in python-2.x.
This issue was reported in forum thread
http://forums.gentoo.org/viewtopic-t-844623.html where the following
traceback was posted:
File "/usr/lib/portage/pym/_emerge/FakeVartree.py", line 195, in _pkg
type_name="installed")
File "/usr/lib/portage/pym/_emerge/Package.py", line 64, in __init__
self._validate_deps()
File "/usr/lib/portage/pym/_emerge/Package.py", line 93, in _validate_deps
self._metadata_exception(k, e)
File "/usr/lib/portage/pym/_emerge/Package.py", line 242, in _metadata_exception
"%s: %s in '%s'" % (k, e, path))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 22: ordinal not in range(128)
Zac Medico [Wed, 15 Sep 2010 03:38:38 +0000 (20:38 -0700)]
Bug #336692 - When stack_lists() detects unmatched removal atoms,
account for cases in which the same profile is inherited multiple times
in the same stack.
Sebastian Luther [Tue, 14 Sep 2010 18:57:37 +0000 (20:57 +0200)]
Tests: test isvalidatom ::repo syntax support
Sebastian Luther [Tue, 14 Sep 2010 18:45:55 +0000 (20:45 +0200)]
ResolverPlayground: Add multi repo support
Sebastian Luther [Tue, 14 Sep 2010 18:34:10 +0000 (20:34 +0200)]
Add :.repo syntax support for portage.util.{grabfile_package,grabdict_package}
Sebastian Luther [Tue, 14 Sep 2010 18:26:17 +0000 (20:26 +0200)]
portage.dep: Add support for ::repo syntax to all functions and classes
This also adds the dep_getrepo() function
Zac Medico [Wed, 15 Sep 2010 00:20:08 +0000 (17:20 -0700)]
In doebuild(), skip PORTAGE_BUILDDIR locking if it's already locked
or returnpid is True.
Zac Medico [Tue, 14 Sep 2010 23:40:13 +0000 (16:40 -0700)]
Make IpcDaemonTestCase use a finally block to unlock PORTAGE_BUILDDIR.
Zac Medico [Tue, 14 Sep 2010 22:53:39 +0000 (15:53 -0700)]
Make ebuild-ipc.py close the output_file before trying to re-open it
after it has timed out.
Zac Medico [Tue, 14 Sep 2010 22:20:48 +0000 (15:20 -0700)]
Bug #336433 - Don't filter the DCCC_PATH variable from environment since
that breaks distcc ebuilds.
Zac Medico [Tue, 14 Sep 2010 21:25:49 +0000 (14:25 -0700)]
Only initialize Package.inherited to an empty set when it is None.
Zac Medico [Tue, 14 Sep 2010 16:36:45 +0000 (09:36 -0700)]
Ensure that Package.inherited is always initialized, even if there is no
INHERITED metadata available (like for binary packages).
Ulrich Mueller [Tue, 14 Sep 2010 16:27:52 +0000 (18:27 +0200)]
Add option -s to docompress command.
Zac Medico [Tue, 14 Sep 2010 16:00:42 +0000 (09:00 -0700)]
Make EbuildBuildDir.unlock() use an asynchronous lock when locking the
category directory for removal.
Zac Medico [Tue, 14 Sep 2010 15:08:51 +0000 (08:08 -0700)]
Revert "Remove ebuild-helpers/preplib (bug 102297)"
This reverts commit
811689f349a91b44448bc8e294903abf990eac45. The preplib
helper is still used by at least by stable sys-libs/lib-compat ebuilds.
Zac Medico [Tue, 14 Sep 2010 14:49:30 +0000 (07:49 -0700)]
Make EbuildBuildDir use the PORTAGE_BUILDDIR variable instead of the
dir_path attribute.
Zac Medico [Tue, 14 Sep 2010 14:37:11 +0000 (07:37 -0700)]
Make Binpkg call doebuild_environment() before constructing
EbuildBuildDir, so PORTAGE_BUILDDIR is initialized first.
Arfrever Frehtes Taifersar Arahesis [Tue, 14 Sep 2010 13:09:08 +0000 (15:09 +0200)]
Fix some typos.
Zac Medico [Tue, 14 Sep 2010 09:37:02 +0000 (02:37 -0700)]
Don't export PORTAGE_BUILDIR_LOCKED to the ebuild environment.
Zac Medico [Tue, 14 Sep 2010 09:14:48 +0000 (02:14 -0700)]
Add a config.pkeywordsdict property for backward compatibility.
Zac Medico [Tue, 14 Sep 2010 09:09:51 +0000 (02:09 -0700)]
In KeywordsManager.pkeywordsdict save values as tuples instead of lists.
Sebastian Luther [Tue, 14 Sep 2010 08:41:33 +0000 (10:41 +0200)]
config: Add KeywordsManager
Zac Medico [Tue, 14 Sep 2010 08:22:55 +0000 (01:22 -0700)]
Make ebuild-ipc timeout messages show which operation timed out.
Zac Medico [Tue, 14 Sep 2010 08:08:41 +0000 (01:08 -0700)]
Bug #336142 - Make ebuild-ipc.py keep trying to communicate indefinitely,
as long as $PORTAGE_BUILDDIR is locked.
Zac Medico [Tue, 14 Sep 2010 07:32:43 +0000 (00:32 -0700)]
Make IpcDaemonTestCase use EbuildBuildDir for lock creation.
Zac Medico [Tue, 14 Sep 2010 05:49:03 +0000 (22:49 -0700)]
Make AbstractEbuildProcess lock PORTAGE_BUILDIR if it's not already
locked.
Zac Medico [Tue, 14 Sep 2010 05:17:48 +0000 (22:17 -0700)]
Bug #336142 - Use EbuildBuildDir for threaded locking of PORTAGE_BUILDDIR
inside dblink.unmerge(), so that the scheduler can concurrently service
ipc calls in the main thread.
Zac Medico [Tue, 14 Sep 2010 05:02:57 +0000 (22:02 -0700)]
Use EbuildBuildDir for PORTAGE_BUILDDIR locking inside doebuild().
Zac Medico [Tue, 14 Sep 2010 04:53:29 +0000 (21:53 -0700)]
Make EbuildBuild call doebuild_environment() so that EbuildBuildDir
doesn't need to.
Zac Medico [Tue, 14 Sep 2010 03:01:16 +0000 (20:01 -0700)]
Bug #336142 - Add support for using a thread to wait for locks inside
EbuildBuildDir.lock() so that the scheduler can concurrently service ipc
calls in the main thread.
Zac Medico [Tue, 14 Sep 2010 02:48:18 +0000 (19:48 -0700)]
Make dblink.lockdb() use AsynchronousLock.
Zac Medico [Tue, 14 Sep 2010 02:25:58 +0000 (19:25 -0700)]
Add a new AsynchronousLock class that uses the portage.locks module to
acquire a lock asynchronously, using a background thread.
Zac Medico [Tue, 14 Sep 2010 00:05:16 +0000 (17:05 -0700)]
Make config.setinst() and get_virts_p() call getvirtuals() in order
to ensure that we don't trigger the _treeVirtuals assertion in
VirtualsManager._compile_virtuals().
Zac Medico [Mon, 13 Sep 2010 23:43:39 +0000 (16:43 -0700)]
In depgraph._load_vdb(), after calling FakeVartree.sync(), update
self._frozen_config.pkgsettings so that it has populated virtuals.
This solves allows us to avoid triggering an AssertionError reported
at http://forums.gentoo.org/viewtopic-t-844519.html with the following
traceback:
Calculating dependencies... done!
Traceback (most recent call last):
File "/usr/bin/emerge", line 43, in <module>
retval = emerge_main()
File "/usr/lib/portage/pym/_emerge/main.py", line 1683, in emerge_main
myopts, myaction, myfiles, spinner)
File "/usr/lib/portage/pym/_emerge/actions.py", line 204, in action_build
settings, trees, mtimedb, myopts, myparams, spinner)
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 6047, in resume_depgraph
myparams, spinner)
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 6070, in _resume_depgraph
skip_masked=skip_masked)
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 5617, in _loadResumeCommand
if not self._add_pkg(task, None):
File "/usr/lib/portage/pym/_emerge/depgraph.py", line 893, in _add_pkg
pkgsettings.setinst(pkg.cpv, pkg.metadata)
File "/usr/lib/portage/pym/portage/package/ebuild/config.py", line 1757, in setinst
self._virtuals_manager.add_depgraph_virtuals(mycpv, virts)
File "/usr/lib/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 199, in add_depgraph_virtuals
self.getvirtuals()
File "/usr/lib/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 156, in getvirtuals
self._compile_virtuals()
File "/usr/lib/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 131, in _compile_virtuals
"any query about virtuals"
AssertionError: _populate_treeVirtuals() must be called before any query about virtuals
Sebastian Luther [Mon, 13 Sep 2010 17:06:27 +0000 (19:06 +0200)]
Tests: Add use_reduce test case for bug 120374
Sebastian Luther [Mon, 13 Sep 2010 16:46:32 +0000 (18:46 +0200)]
Remove ebuild-helpers/preplib (bug 102297)
Sebastian Luther [Mon, 13 Sep 2010 14:52:57 +0000 (16:52 +0200)]
Tests: Add resolver/test_missing_iuse_and_evaluated_atoms to make sure we don't miss a "missing IUSE"
Sebastian Luther [Mon, 13 Sep 2010 13:25:57 +0000 (15:25 +0200)]
Don't miss a "missing IUSE" because of [foo?] -> [] evaluations.
This patch also drops flags with EAPI 4 use dep defaults from use.required.
Zac Medico [Mon, 13 Sep 2010 08:33:54 +0000 (01:33 -0700)]
Bug #336142 - When looking of packages that own files for file collisions
inside dblink.treewalk(), periodically yield to the scheduler so that
it can service ipc calls.
Sebastian Luther [Mon, 13 Sep 2010 07:25:55 +0000 (09:25 +0200)]
Make sure atoms in profiles follow the profiles EAPI
Zac Medico [Mon, 13 Sep 2010 07:36:20 +0000 (00:36 -0700)]
Bug #336873 - Add a leading comma when matching --hash-style=gnu
in LDFLAGS, in order to try and filter out invalid settings.
Zac Medico [Mon, 13 Sep 2010 07:23:34 +0000 (00:23 -0700)]
Bug #336142 - Add support for using a thread to wait for locks inside
dblink.lockdb() so that the scheduler can concurrently service ipc
calls in the main thread.
Zac Medico [Mon, 13 Sep 2010 07:16:07 +0000 (00:16 -0700)]
Add a 'condition' keyword argument to PollScheduler._schedule_wait()
which is a callable that should return True when it is desirable for
the _schedule_wait() method to return.
Zac Medico [Mon, 13 Sep 2010 02:49:29 +0000 (19:49 -0700)]
Bug #337031 - Don't make "always overflow destination buffers" gcc
warnings fatal for now.
Zac Medico [Mon, 13 Sep 2010 02:25:06 +0000 (19:25 -0700)]
Bug #336142 - Use a longer timeout for ebuild-ipc, in case the system is
heavily loaded.
Zac Medico [Sun, 12 Sep 2010 21:37:14 +0000 (14:37 -0700)]
Bug #336875 - Don't reference errno.ETIME since it's undefined on FreeBSD.
Zac Medico [Sat, 11 Sep 2010 19:48:44 +0000 (12:48 -0700)]
When fetching distfiles inside digestgen(), ignore conditional parts
of RESTRICT since they don't apply unconditionally. Assume such
conditionals only apply on the client side where digestgen() does not
need to be called.
Zac Medico [Sat, 11 Sep 2010 19:45:20 +0000 (12:45 -0700)]
For digestgen(), add a matchnone parameter to use_reduce() that is the
opposite of matchall.
Zac Medico [Sat, 11 Sep 2010 19:18:03 +0000 (12:18 -0700)]
Fix digestgen() to respect RESTRICT=fetch.