Zac Medico [Fri, 6 Aug 2010 06:35:33 +0000 (23:35 -0700)]
Fix scope issue that could cause 'retval' variable to be undefined.
Zac Medico [Fri, 6 Aug 2010 02:35:37 +0000 (19:35 -0700)]
Bug #331271 - Fix USE_EXPAND wildcards so that the USE="linguas_*
-linguas_en_US" case is handled correctly.
Zac Medico [Thu, 5 Aug 2010 23:02:25 +0000 (16:02 -0700)]
Bug #331271 - Fix USE_EXPAND wildcards so that the USE="linguas_en_US
-linguas_*" case is handled correctly.
Zac Medico [Thu, 5 Aug 2010 22:22:53 +0000 (15:22 -0700)]
Use ValueError.args since direct indexing of ValueError is not
supported in python3, as reported in bug 241132, commment #4.
Zac Medico [Thu, 5 Aug 2010 22:11:24 +0000 (15:11 -0700)]
Add a test case for lazyimport._preload_portage_submodules().
Zac Medico [Thu, 5 Aug 2010 20:34:47 +0000 (13:34 -0700)]
Add a fake _test_ option to myopts that can be used for conditional test code.
Zac Medico [Thu, 5 Aug 2010 20:33:38 +0000 (13:33 -0700)]
Use a ResolverPlayground.cleanup() method to cleanup temporary directories.
Sebastian Luther [Thu, 5 Aug 2010 14:29:31 +0000 (16:29 +0200)]
Tests: Add resolver/test_eapi (2 tests disabled)
The resolver accepts EAPI-0 ebuilds with IUSE defaults and slot dependencies.
Sebastian Luther [Thu, 5 Aug 2010 13:47:00 +0000 (15:47 +0200)]
Tests: Add resolver/test_simple and the resolver test infrastructure
Sebastian Luther [Thu, 5 Aug 2010 13:45:22 +0000 (15:45 +0200)]
_emerge.depgraph: If "/" not in trees, treat target_root as running_root (needed for tests)
Arfrever Frehtes Taifersar Arahesis [Thu, 5 Aug 2010 20:06:02 +0000 (22:06 +0200)]
Make some variables local.
Arfrever Frehtes Taifersar Arahesis [Thu, 5 Aug 2010 19:28:25 +0000 (21:28 +0200)]
Bug #301915: Add QA check for byte-compiled Python modules.
Arfrever Frehtes Taifersar Arahesis [Thu, 5 Aug 2010 14:51:34 +0000 (16:51 +0200)]
EOFError can still be raised by array.fromfile() in Python >=2.6.6 and >=2.7.1.
Arfrever Frehtes Taifersar Arahesis [Thu, 5 Aug 2010 13:02:20 +0000 (15:02 +0200)]
Bug #330937: Handle IOError raised by remaining calls to array.fromfile().
Zac Medico [Thu, 5 Aug 2010 10:46:20 +0000 (03:46 -0700)]
Simplify passing of the backtracking parameters from one graph
to the next.
Zac Medico [Thu, 5 Aug 2010 09:45:29 +0000 (02:45 -0700)]
* Add a --autounmask[=n] option and for now leave it disable
by default in order to minimize the impact of any bugs.
* If _wrapped_select_pkg_highest_available_imp returns an installed
package when the user has not explicitly requested for this package
to be replaced (typically via an atom on the command line), reject
the installed package and try to unmask one.
Sebastian Luther [Thu, 5 Aug 2010 07:39:44 +0000 (09:39 +0200)]
_emerge.depgraph.get_backtrack_parameters(): Return a dict instead of a tuple
Sebastian Luther [Thu, 5 Aug 2010 07:23:32 +0000 (09:23 +0200)]
_emerge.depgraph: Keep _needed_user_config_changes during backtracking
Sebastian Luther [Thu, 5 Aug 2010 06:52:27 +0000 (08:52 +0200)]
_emerge.depgraph: Use _pkg_visibility_check() everywhere
Sebastian Luther [Wed, 4 Aug 2010 21:31:21 +0000 (23:31 +0200)]
Automatically take packages masked by ~arch if needed and inform the user
Zac Medico [Thu, 5 Aug 2010 06:18:52 +0000 (23:18 -0700)]
Bug #308835 - Make econf() use sed to substitute $CONFIG_SHELL in
the shebang of configure scripts when appropriate.
Zac Medico [Thu, 5 Aug 2010 05:32:52 +0000 (22:32 -0700)]
Bug #330179 - Ensure that depgraph._show_unsatisfied_dep() only shows
masked packages if one of them satisfies required IUSE.
Zac Medico [Thu, 5 Aug 2010 05:22:44 +0000 (22:22 -0700)]
Bug #330179 - Fix depgraph._show_unsatisfied_dep() to show a masked
package when possible, instead of 'Missing IUSE' message for an
unmasked package.
Zac Medico [Thu, 5 Aug 2010 05:06:59 +0000 (22:06 -0700)]
Bug #285191 - Add back the RDEPEND.implicit warning to detect the cases
where DEPEND is set and RDEPEND is unset in the ebuild, since this
triggers implicit RDEPEND=$DEPEND assignment (prior to EAPI 4) and is
forbidden by the QA team.
Sebastian Luther [Mon, 26 Jul 2010 19:16:58 +0000 (21:16 +0200)]
repoman: Check if the prefix.eclass is inherited if eprefixify is used. Thanks to Jeremy Olexa (darkside) for the initial patch.
Zac Medico [Wed, 4 Aug 2010 07:50:25 +0000 (00:50 -0700)]
Add a sanity check in _preload_portage_submodules() to ensure that the
loop always terminates.
Zac Medico [Wed, 4 Aug 2010 04:14:42 +0000 (21:14 -0700)]
Fix infinite loop in _preload_portage_submodules().
Zac Medico [Wed, 4 Aug 2010 03:51:18 +0000 (20:51 -0700)]
Fix typo in docstring.
Zac Medico [Wed, 4 Aug 2010 03:42:36 +0000 (20:42 -0700)]
Bug #330645 - Make _unregister_module_proxy() detect partially imported
modules (indicated when an AttributeError is caught) and handle them
appropriately.
Zac Medico [Wed, 4 Aug 2010 02:33:55 +0000 (19:33 -0700)]
Bug #330645 - Use more lazy imports for the portage.data module, in
order to avoid circular import triggered by missing 'portage' user
or group.
Zac Medico [Tue, 3 Aug 2010 18:46:45 +0000 (11:46 -0700)]
Remove code related to $DISTDIR/.locks since that directory is
actually unused.
Zac Medico [Tue, 3 Aug 2010 08:40:04 +0000 (01:40 -0700)]
Make ExtendedAtomDict.__getitem__() return the value directly from
self._extended when given a wildcard (rather than make an unnecessary
copy).
Zac Medico [Tue, 3 Aug 2010 08:34:10 +0000 (01:34 -0700)]
Move the */* code out of loops for greater efficiency.
Sebastian Luther [Tue, 3 Aug 2010 08:10:56 +0000 (10:10 +0200)]
Make the effect of */* atoms in package.{use,license,properties} show up in emerge --info
Zac Medico [Tue, 3 Aug 2010 04:14:41 +0000 (21:14 -0700)]
Only populate the binarytree for actions that need it (search or
install actions).
Arfrever Frehtes Taifersar Arahesis [Tue, 3 Aug 2010 01:37:02 +0000 (03:37 +0200)]
Bug #330937: Handle IOError raised by array.fromfile().
Zac Medico [Sun, 1 Aug 2010 09:33:08 +0000 (02:33 -0700)]
* Make _world_repo_match() try to match both atoms, so it still works
if the world file and vdb are slighly out of sync wrt package moves.
* Write world file updates at the earliest opportunity.
Zac Medico [Sun, 1 Aug 2010 08:14:51 +0000 (01:14 -0700)]
Make update_config_files() take a dict of {repo_name: list} since it's more
efficient this way, and this function can't be called separately for each
repo if /etc/portage is under CONFIG_PROTECT (because it would produce
separate updated files for each repo).
Zac Medico [Sun, 1 Aug 2010 08:11:41 +0000 (01:11 -0700)]
Fix NameError for ConfigProtect.
Zac Medico [Sun, 1 Aug 2010 05:34:03 +0000 (22:34 -0700)]
Just return boolean to indicate whether or not updates have been performed,
since that's all that the calling code currently needs.
Zac Medico [Sun, 1 Aug 2010 05:23:28 +0000 (22:23 -0700)]
Move the mtimedb timestamps code out of an unnecessary loop.
Zac Medico [Sun, 1 Aug 2010 04:45:18 +0000 (21:45 -0700)]
Always use shlex_split() to split CONFIG_PROTECT{,_MASK}.
Zac Medico [Thu, 29 Jul 2010 05:34:59 +0000 (22:34 -0700)]
Add a warning message to the --package-moves[=n] docs, noting that
should remain enabled under normal circumstances.
Zac Medico [Wed, 28 Jul 2010 15:14:34 +0000 (08:14 -0700)]
Add a --package-moves[=n] option that can be used to control the
"Performing Global Updates" routine. This option is enabled by
default.
Zac Medico [Wed, 28 Jul 2010 14:55:17 +0000 (07:55 -0700)]
Document --depclean-lib-check[=n].
Zac Medico [Wed, 28 Jul 2010 14:39:42 +0000 (07:39 -0700)]
Fix calc_depclean() to skip the topological sort code when there's
nothing selected for removal.
Zac Medico [Wed, 28 Jul 2010 04:30:45 +0000 (21:30 -0700)]
Tweak global updates handling so that updates from $PORTDIR are applied
for all of the following cases:
* package is missing repository metadata
* package has repository metadata, but the source repository does not
have a profiles/updates/ directory
* package has repository metadata, but the source repository is not
currently accessible via PORTDIR_OVERLAY
Zac Medico [Wed, 28 Jul 2010 01:05:01 +0000 (18:05 -0700)]
Fix UnboundLocalError for do_upgrade_packagesmessage.
Zac Medico [Wed, 28 Jul 2010 00:52:11 +0000 (17:52 -0700)]
Fix UnboundLocalError for timestamps variable.
Zac Medico [Wed, 28 Jul 2010 00:45:27 +0000 (17:45 -0700)]
Make dbapi.update_ents() take a dict of {repo_name: list}, since it's
most efficient to process all repos at once.
Michał Górny [Thu, 8 Jul 2010 10:58:01 +0000 (12:58 +0200)]
Fallback to updates from PORTDIR if repository has no 'updates' dir.
As a backwards-compatibility measure, if a particular repository doesn't
come with an 'updates' directory, fallback to updates from
dbapi.porttree_root.
Michał Górny [Thu, 8 Jul 2010 10:40:45 +0000 (12:40 +0200)]
Add repository-wide updates support to emaint.
Michał Górny [Thu, 8 Jul 2010 10:01:33 +0000 (12:01 +0200)]
Support repository-wide updates in FakeVartree.
Michał Górny [Thu, 8 Jul 2010 09:06:28 +0000 (11:06 +0200)]
Limit repository-wide dbentry updates.
Update dbentries only when the repository the package comes from matches
the repository update comes from.
Michał Górny [Mon, 5 Jul 2010 09:21:23 +0000 (11:21 +0200)]
Support repository-wide updates.
Support reading repository-wide update files. Apply them as long as the
'repository' for vardb entry matches the repository update is
originating from. For world and configuration files, use the best vardb
match.
Zac Medico [Tue, 27 Jul 2010 20:19:00 +0000 (13:19 -0700)]
Make the world-candidate package set attribute default to False, since
[usersets] is the only one for which it is True in the default config.
Sebastian Luther [Tue, 27 Jul 2010 11:46:09 +0000 (13:46 +0200)]
extended atom syntax: Add comment to make.conf man page
Sebastian Luther [Tue, 27 Jul 2010 09:32:22 +0000 (11:32 +0200)]
Tests: add sets/base/testInternalPackageSet
Sebastian Luther [Tue, 27 Jul 2010 08:55:46 +0000 (10:55 +0200)]
portage.sets: Don't allow extended atoms unless explicitly told to
Michał Górny [Tue, 27 Jul 2010 07:31:47 +0000 (09:31 +0200)]
Use a directory for the default set configuration.
Expect /usr/share/portage/config/sets to be a directory containing any
number of set configuration files. The default Portage sets.conf should
be now installed as sets/portage.conf, and other ebuilds are free to
install their own set configuration files there.
Zac Medico [Tue, 27 Jul 2010 07:10:15 +0000 (00:10 -0700)]
Fix PackageSet._updateAtomMap() to use ExtendedAtomDict.setdefault()
since ExtendedAtomDict__getitem__ doesn't allow modification of
items.
David James [Wed, 21 Jul 2010 01:28:54 +0000 (01:28 +0000)]
Fix race condition in Portage symlink creation.
Zac Medico [Tue, 27 Jul 2010 05:47:23 +0000 (22:47 -0700)]
Fix ExtendedAtomDict so get() and __getitem__() behave consistently,
since otherwise it can be quite confusing.
Zac Medico [Tue, 27 Jul 2010 05:08:52 +0000 (22:08 -0700)]
Make ExtendedAtomDict inherit from MutableMapping, and fix __getitem__
to raise KeyError if given a non-string argument.
Zac Medico [Mon, 26 Jul 2010 09:26:58 +0000 (02:26 -0700)]
Allow the --depclean library consumer check to be disabled by
--depclean-lib-check=n.
Zac Medico [Mon, 26 Jul 2010 08:16:33 +0000 (01:16 -0700)]
If more than 20 file collisions occur, only look up the first 20 since
get_owners is slow for large numbers of files.
Zac Medico [Mon, 26 Jul 2010 08:02:56 +0000 (01:02 -0700)]
When the iter_owners dblink cache becomes full, do not finish processing
the current path, and go directly to the low-memory implemention.
Zac Medico [Sun, 25 Jul 2010 21:59:56 +0000 (14:59 -0700)]
Make extended_cp_match() use re.escape() for safety, and since the result is
cached here anyway.
Zac Medico [Sun, 25 Jul 2010 21:45:32 +0000 (14:45 -0700)]
Bug #329159 - If there are merge collisions are detected, only search for
owners if either collision-protect or protect-owned is enabled.
Zac Medico [Sun, 25 Jul 2010 21:31:09 +0000 (14:31 -0700)]
Make iter_owners() switch to a slower but lower-memory mode if the number
of given files > 10 or dynamically if the dblink_cache grows to 20
instances.
Sebastian Luther [Sun, 25 Jul 2010 19:42:00 +0000 (12:42 -0700)]
Bug #329803 - Make unmerge() show a machine-readable list of selected packages.
Zac Medico [Sun, 25 Jul 2010 19:11:19 +0000 (12:11 -0700)]
Make extended_cp_match() cache regular expressions for re-use.
Zac Medico [Sun, 25 Jul 2010 18:23:28 +0000 (11:23 -0700)]
Add a gc.collect() call inside iter_owers(), since people are reporting
high memory usage there. We should really only use this function to search
for a small number of files. Larger numbers of files should use a different
algorithm that will ensure that each CONTENTS file is only parsed once.
Zac Medico [Sun, 25 Jul 2010 17:56:48 +0000 (10:56 -0700)]
Re-implement extended_cp_match() using regex, and only support cp (instead
of full atoms) since that all we need.
Zac Medico [Sun, 25 Jul 2010 17:21:11 +0000 (10:21 -0700)]
Fix description of FEATURES=fixlafiles.
Sebastian Luther [Sun, 25 Jul 2010 07:12:59 +0000 (09:12 +0200)]
FEATURES: Rename lafilefixing -> fixlafiles
Sebastian Luther [Sat, 24 Jul 2010 18:19:56 +0000 (20:19 +0200)]
extended atom syntax: Allow wildcards in all places
Zac Medico [Sat, 24 Jul 2010 20:52:44 +0000 (13:52 -0700)]
Handle UnicodeDecodeError from subprocess.getstatusoutput() calls, reported
with python3.1.
Sebastian Luther [Fri, 23 Jul 2010 19:12:07 +0000 (21:12 +0200)]
portage.dep._use_dep: better validation, enable all tests
Sebastian Luther [Fri, 23 Jul 2010 13:43:40 +0000 (15:43 +0200)]
portage.dep.isvalidatom(): Add support for atoms with wildcards
Sebastian Luther [Fri, 23 Jul 2010 13:21:05 +0000 (15:21 +0200)]
Test: Add dep/test_best_match_to_list
Sebastian Luther [Fri, 23 Jul 2010 12:53:57 +0000 (14:53 +0200)]
Tests: dep/test_match_from_list: Complete rewrite
Sebastian Luther [Fri, 23 Jul 2010 12:28:19 +0000 (14:28 +0200)]
Tests: Extend dep/testAtom.py and add test cases for wildcards Two failing tests disabled for now.
Sebastian Luther [Fri, 23 Jul 2010 12:25:11 +0000 (14:25 +0200)]
portage.tests.TestCase: Add assertRaisesMsg() from pkgcore
Sebastian Luther [Fri, 23 Jul 2010 11:05:42 +0000 (13:05 +0200)]
--exclude: Add support for atoms with wildcards
Sebastian Luther [Fri, 23 Jul 2010 10:56:55 +0000 (12:56 +0200)]
portage.sets: Add support for atoms with wildcards
Sebastian Luther [Fri, 23 Jul 2010 10:38:19 +0000 (12:38 +0200)]
Make atoms with wildcards work in package.properties
Sebastian Luther [Fri, 23 Jul 2010 10:36:08 +0000 (12:36 +0200)]
Make atoms with wildcards work in package.license
Sebastian Luther [Fri, 23 Jul 2010 10:26:13 +0000 (12:26 +0200)]
Make atoms with wildcards work in package.mask and package.unmask
Sebastian Luther [Fri, 23 Jul 2010 10:13:53 +0000 (12:13 +0200)]
Make atoms with wildcards in package.use work
Sebastian Luther [Fri, 23 Jul 2010 10:13:04 +0000 (12:13 +0200)]
portage.dep.{match_from_list,best_match_to_list}: Add support for wildcards in atoms
Sebastian Luther [Fri, 23 Jul 2010 07:54:41 +0000 (09:54 +0200)]
portage.ebuild.config: Allow wildcards in atoms in user configuration
Sebastian Luther [Fri, 23 Jul 2010 07:41:20 +0000 (09:41 +0200)]
portage.util.grab*(): Add optional parameter to allow wildscards in atoms
Sebastian Luther [Fri, 23 Jul 2010 07:36:31 +0000 (09:36 +0200)]
portage.dep.Atom: Add optional parameter to allow wildcards (*/*, cat/*, */pkg)
Zac Medico [Wed, 21 Jul 2010 01:38:20 +0000 (18:38 -0700)]
Move the mod_echo import to the top, so the module is pre-loaded.
Zac Medico [Wed, 21 Jul 2010 00:13:11 +0000 (17:13 -0700)]
Remove 'mysettings' arguments from finalize() functions since the
shouldn't be needed for backward compatibility anymore.
Zac Medico [Tue, 20 Jul 2010 13:12:49 +0000 (06:12 -0700)]
Bug #328935 - Document ${ACTION} substitution in PORTAGE_ELOG_MAILSUBJECT.
Zac Medico [Mon, 19 Jul 2010 22:49:05 +0000 (15:49 -0700)]
Bug #328317 - If libc is artifically promoted in the merge list
(for bug #303567), promote os-headers before it.
Mike Frysinger [Mon, 19 Jul 2010 21:19:46 +0000 (17:19 -0400)]
install_qa_check: catch more gcc warnings
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Mon, 19 Jul 2010 18:04:17 +0000 (11:04 -0700)]
In portdbapi.getfetchsizes(), only split PORTAGE_RO_DISTDIRS when necessary.