Zac Medico [Tue, 10 Mar 2009 00:49:56 +0000 (00:49 -0000)]
Simplify environment cleansing that's done for the ROOT=/ config instance
when ROOT!=/. A new "env" config constructor parameter is used to allow
the caller to avoid having the config instance polluted by os.environ.
svn path=/main/trunk/; revision=12812
Zac Medico [Tue, 10 Mar 2009 00:05:25 +0000 (00:05 -0000)]
Inside create_trees(), when cleansing the environment for the ROOT=/ config
instance, call config.reset() so that configdict['env'] is cleared as was
originally intended here. This prevents thinks like CHOST overrides from the
calling environment from inappropriately being applied to ROOT=/.
svn path=/main/trunk/; revision=12811
Zac Medico [Mon, 9 Mar 2009 22:53:50 +0000 (22:53 -0000)]
Bug #261670 - Generate a QA Notice if CHOST (from dyn_install) has a value
which differs from the initial setting.
svn path=/main/trunk/; revision=12810
Zac Medico [Mon, 9 Mar 2009 21:47:14 +0000 (21:47 -0000)]
Only execute src_test pre/post hooks when src_test is actually executed.
svn path=/main/trunk/; revision=12809
Zac Medico [Mon, 9 Mar 2009 20:37:56 +0000 (20:37 -0000)]
Add more QA warnings for econf calls during unexpected phases. Thanks to
Diego Elio Pettenò <flameeyes@g.o> for the suggestion.
svn path=/main/trunk/; revision=12808
Zac Medico [Mon, 9 Mar 2009 10:32:13 +0000 (10:32 -0000)]
When generating variable names to hold EXPORT_FUNCTIONS argument in, use
$ECLASS_DEPTH as a unique id since it's a lot simpler then encoding the
eclass name in the variable name.
svn path=/main/trunk/; revision=12806
Zac Medico [Mon, 9 Mar 2009 09:45:28 +0000 (09:45 -0000)]
Use the ebuild_phase helper function to calls phase hooks and fix broken
trap calls that try to unset multiple signal handlers at once without
passing - as the first argument.
svn path=/main/trunk/; revision=12805
Zac Medico [Mon, 9 Mar 2009 09:13:33 +0000 (09:13 -0000)]
Inside dyn_unpack(), only call pre/post phase hooks when src_unpack is
called (when .unpacked does not already exist).
svn path=/main/trunk/; revision=12804
Zac Medico [Mon, 9 Mar 2009 06:53:12 +0000 (06:53 -0000)]
Fix _setitem() to account for the change to serialize_eclasses = False.
svn path=/main/trunk/; revision=12803
Zac Medico [Mon, 9 Mar 2009 06:03:06 +0000 (06:03 -0000)]
Make manifest mode with --force option cause existing digests to be replaced
for any files that exist in ${DISTDIR}. This provides an alternative to
ebuild --force manifest for updating existing distfiles digests. Digests
are assumed to be corect for files that do not exist in ${DISTDIR} since
the user could simply remove the whole Manifest if they wanted to regenerate
digests for all files (and it's safer to regenerate as few as possible
because it's less probably that a valid digest will get replaced by an
invalid one).
svn path=/main/trunk/; revision=12802
Zac Medico [Mon, 9 Mar 2009 03:56:56 +0000 (03:56 -0000)]
Reorganize code for --digests and FEATURES=digest.
svn path=/main/trunk/; revision=12801
Zac Medico [Mon, 9 Mar 2009 03:47:10 +0000 (03:47 -0000)]
Never call digestgen() inside doebuild() which only 'fetch' has been
requested since it's not needed in this case.
svn path=/main/trunk/; revision=12800
Zac Medico [Mon, 9 Mar 2009 02:30:36 +0000 (02:30 -0000)]
Bug #261675 - Generate manifests in advance when FEATURES=digest is enabled.
svn path=/main/trunk/; revision=12799
Zac Medico [Mon, 9 Mar 2009 02:04:34 +0000 (02:04 -0000)]
Bug #261675 - Also don't call digestgen() from parallel-fetch processes.
svn path=/main/trunk/; revision=12798
Zac Medico [Mon, 9 Mar 2009 01:50:33 +0000 (01:50 -0000)]
Bug #261675 - When doebuild() is called by emerge, don't call digestgen()
for FEATURES=digest because it's redundant and it can cause interference
with parallel-fetch and parallel builds.
svn path=/main/trunk/; revision=12797
Zac Medico [Mon, 9 Mar 2009 01:33:46 +0000 (01:33 -0000)]
Make the --digest warning message show for FEATURES=digest.
svn path=/main/trunk/; revision=12796
Zac Medico [Mon, 9 Mar 2009 01:17:37 +0000 (01:17 -0000)]
Replace things like [[ $PORTAGE_BUILDDIR/.prepared -nt $WORKDIR ]] with
simply [[ -e $PORTAGE_BUILDDIR/.prepared ]] since the timestamp of
$WORKDIR is practically always newer due to the other hidden files that are
created there as each phase is executed. Thanks to Alfredo Tupone <tupone@g.o>
for reporting.
svn path=/main/trunk/; revision=12795
Zac Medico [Sun, 8 Mar 2009 22:29:35 +0000 (22:29 -0000)]
Generate a QA Notice when EXPORT_FUNCTIONS is called before inherit, since
it's incompatible with <=portage-2.1.6.7.
svn path=/main/trunk/; revision=12794
Mike Frysinger [Sun, 8 Mar 2009 21:40:35 +0000 (21:40 -0000)]
for pointers cast to 32bit ints, we always want to abort on 64bit systems, not just when FEATURES=stricter
svn path=/main/trunk/; revision=12793
Zac Medico [Sun, 8 Mar 2009 21:27:24 +0000 (21:27 -0000)]
Fix typo from previous commit.
svn path=/main/trunk/; revision=12792
Zac Medico [Sun, 8 Mar 2009 21:25:29 +0000 (21:25 -0000)]
Also support + character in eclass names.
svn path=/main/trunk/; revision=12791
Zac Medico [Sun, 8 Mar 2009 21:09:00 +0000 (21:09 -0000)]
Translate period characters in eclass names when generating variable names
to store EXPORT_FUNCTIONS arguments. Thanks to Arfrever for reporting.
svn path=/main/trunk/; revision=12788
Zac Medico [Sun, 8 Mar 2009 08:14:48 +0000 (08:14 -0000)]
Make EXPORT_FUNCTIONS store it's arguments in an environment variable and
perform the function generation after the current inherit call has returned.
This allows an eclass to call EXPORT_FUNCTIONS either before or after it
inherits other eclasses, and the result is still the same. Thanks to
Donnie Berkholz <dberkholz@g.o> for reporting.
svn path=/main/trunk/; revision=12785
Zac Medico [Sun, 8 Mar 2009 07:44:02 +0000 (07:44 -0000)]
Revert previous 2 commits due to bugs.
svn path=/main/trunk/; revision=12784
Zac Medico [Sun, 8 Mar 2009 06:53:55 +0000 (06:53 -0000)]
Fix PECLASS logic inside inherit() so that ECLASS is always restored to the
correct value after recursion (previously it would be restored to the wrong
value if more than one eclass was passed into the inherit call).
svn path=/main/trunk/; revision=12783
Zac Medico [Sun, 8 Mar 2009 06:26:09 +0000 (06:26 -0000)]
Make EXPORT_FUNCTIONS store it's arguments in an environment variable and
perform the function generation after the current inherit call has returned.
This way an eclass can call EXPORT_FUNCTIONS either before or after it
inherits other eclasses, and the result is still the same. Thanks to
Donnie Berkholz <dberkholz@g.o> for reporting.
svn path=/main/trunk/; revision=12782
Zac Medico [Sun, 8 Mar 2009 05:25:18 +0000 (05:25 -0000)]
Implement _getitem instead of __getitem__ so that the base class __getitem__
implementation is used for _mtime_ and _eclasses_ handling.
svn path=/main/trunk/; revision=12781
Zac Medico [Sat, 7 Mar 2009 23:05:30 +0000 (23:05 -0000)]
In LazyItemsDict.__deepcopy__(), enable deepcopy of lazy items as it was
before. This requires _LazyItem.__deepcopy__() to be overridden since
the default implementation can fail silently, leaving some attributes unset.
svn path=/main/trunk/; revision=12780
Zac Medico [Sat, 7 Mar 2009 22:27:25 +0000 (22:27 -0000)]
Use slice instead of startwith in stack_* incremental processing.
svn path=/main/trunk/; revision=12779
Zac Medico [Sat, 7 Mar 2009 21:36:56 +0000 (21:36 -0000)]
Remove unnecessary list() from previous commit.
svn path=/main/trunk/; revision=12778
Zac Medico [Sat, 7 Mar 2009 21:34:50 +0000 (21:34 -0000)]
Fix an issue with incomplete deepcopy of _LazyItem instances inside
LazyItemsDict.__deepcopy__(). Thanks to Arfrever for reporting.
svn path=/main/trunk/; revision=12777
Zac Medico [Sat, 7 Mar 2009 20:25:19 +0000 (20:25 -0000)]
Fix __getitem__ to convert mtime to long, and remove unreachable code
from _parse_data().
svn path=/main/trunk/; revision=12776
Zac Medico [Sat, 7 Mar 2009 19:40:18 +0000 (19:40 -0000)]
Always use basestring instead of str with isinstance().
svn path=/main/trunk/; revision=12775
Zac Medico [Sat, 7 Mar 2009 19:10:20 +0000 (19:10 -0000)]
Allow unicode type values in config.__setitem__(). Thanks to Arfrever Frehtes
Taifersar Arahesis for this patch.
svn path=/main/trunk/; revision=12774
Zac Medico [Sat, 7 Mar 2009 02:41:39 +0000 (02:41 -0000)]
Simplify LazyItemsDict internals.
svn path=/main/trunk/; revision=12773
Zac Medico [Sat, 7 Mar 2009 00:05:30 +0000 (00:05 -0000)]
Fix LazyItemsDict.update() to create new _SingletonWrapper instances that
reference self.
svn path=/main/trunk/; revision=12772
Zac Medico [Fri, 6 Mar 2009 20:50:53 +0000 (20:50 -0000)]
Add keyword argument support to LazyItemsDict.update().
svn path=/main/trunk/; revision=12771
Zac Medico [Fri, 6 Mar 2009 20:24:03 +0000 (20:24 -0000)]
Remove unused import.
svn path=/main/trunk/; revision=12770
Zac Medico [Fri, 6 Mar 2009 05:04:21 +0000 (05:04 -0000)]
Define __slots__ for classes derived from ObjectProxy.
svn path=/main/trunk/; revision=12769
Zac Medico [Fri, 6 Mar 2009 04:48:24 +0000 (04:48 -0000)]
Send message about unset RESUMECOMMAND to stderr instead of stdout.
svn path=/main/trunk/; revision=12768
Zac Medico [Fri, 6 Mar 2009 04:29:56 +0000 (04:29 -0000)]
Make digraph store a single priority list for each edge instead of two
identical lists.
svn path=/main/trunk/; revision=12767
Zac Medico [Fri, 6 Mar 2009 03:56:37 +0000 (03:56 -0000)]
whitespace cleanup
svn path=/main/trunk/; revision=12766
Zac Medico [Fri, 6 Mar 2009 03:24:49 +0000 (03:24 -0000)]
Fix failure exit status. Thanks to Brian Harring.
svn path=/main/trunk/; revision=12765
Zac Medico [Thu, 5 Mar 2009 05:44:20 +0000 (05:44 -0000)]
Make config.categories a sorted tuple so that portdbapi can reuse it.
svn path=/main/trunk/; revision=12760
Zac Medico [Thu, 5 Mar 2009 05:21:36 +0000 (05:21 -0000)]
Add tests for use_reduce() and paren_reduce().
svn path=/main/trunk/; revision=12759
Zac Medico [Thu, 5 Mar 2009 05:08:00 +0000 (05:08 -0000)]
Use enumerate() inside use_reduce() validation code.
svn path=/main/trunk/; revision=12758
Zac Medico [Thu, 5 Mar 2009 04:43:39 +0000 (04:43 -0000)]
Use basestring instead of str for isinstance check inside use_reduce() so
that it works with unicode and remove related unicode to str workaround
code from the sqlite cache module.
svn path=/main/trunk/; revision=12757
Zac Medico [Thu, 5 Mar 2009 04:28:15 +0000 (04:28 -0000)]
Remove unnecessary setting of default values to empty strings inside
database._getitem().
svn path=/main/trunk/; revision=12756
Zac Medico [Thu, 5 Mar 2009 04:19:07 +0000 (04:19 -0000)]
Make the first argument of update() methods be an optional positional argument
instead of a keyword argument.
svn path=/main/trunk/; revision=12755
Zac Medico [Thu, 5 Mar 2009 03:59:10 +0000 (03:59 -0000)]
Make --searchdesc imply --search inside parse_opts().
svn path=/main/trunk/; revision=12754
Zac Medico [Thu, 5 Mar 2009 03:53:38 +0000 (03:53 -0000)]
Only generate PORTAGE_COUNTER_HASH for actions that can involve vdb
modification.
svn path=/main/trunk/; revision=12753
Zac Medico [Thu, 5 Mar 2009 03:43:03 +0000 (03:43 -0000)]
Make --version and action.
svn path=/main/trunk/; revision=12752
Zac Medico [Thu, 5 Mar 2009 03:03:50 +0000 (03:03 -0000)]
Set Unpickler.find_global = None when possible and handle AttributeError
for py3k.
svn path=/main/trunk/; revision=12751
Zac Medico [Thu, 5 Mar 2009 01:40:55 +0000 (01:40 -0000)]
Remove unnecessary creation of lists when iterating over digraphs for
--buildpkgonly hasallzeros check.
svn path=/main/trunk/; revision=12750
Zac Medico [Wed, 4 Mar 2009 23:02:04 +0000 (23:02 -0000)]
Bug #261082 - Prefer remote package instances whenever --getbinpkg is enabled
(previously local instances were preferred unless --getbinpkgonly was enabled).
svn path=/main/trunk/; revision=12749
Zac Medico [Wed, 4 Mar 2009 21:16:33 +0000 (21:16 -0000)]
Make glsa-check executable.
svn path=/main/trunk/; revision=12748
Zac Medico [Wed, 4 Mar 2009 20:30:17 +0000 (20:30 -0000)]
Bug #261082 - Fix --getbinpkgonly code in binarytree._populate() to
update the aux_get cache when it's appropriate for a remote package
to override a local package.
svn path=/main/trunk/; revision=12747
Zac Medico [Wed, 4 Mar 2009 04:14:18 +0000 (04:14 -0000)]
Bug #256289 - When displaying an unsatisfied USE dep and all packages with
the required IUSE are masked, show a normal "masked package" message for
the package(s) that have the required IUSE (instead of showing the unmasked
packages with missing IUSE).
svn path=/main/trunk/; revision=12746
Zac Medico [Wed, 4 Mar 2009 02:26:24 +0000 (02:26 -0000)]
Fix vdb entry writting code in dyn_install() to avoid generating empty entries
in some cases. Thanks to Ned Ludd <solar@g.o> for reporting.
svn path=/main/trunk/; revision=12745
Zac Medico [Tue, 3 Mar 2009 03:39:57 +0000 (03:39 -0000)]
Make KeyValuePairFileLoader store the values as a strings instead of a lists.
svn path=/main/trunk/; revision=12744
Zac Medico [Tue, 3 Mar 2009 00:11:33 +0000 (00:11 -0000)]
ACCEPT_CHOSTS applies to unbuilt ebuild now (not just binary packages).
svn path=/main/trunk/; revision=12743
Zac Medico [Mon, 2 Mar 2009 23:51:12 +0000 (23:51 -0000)]
Fix KeyValuePairFileLoader to only split on '=' once and strip whitespace
for keys and values.
svn path=/main/trunk/; revision=12742
Zac Medico [Mon, 2 Mar 2009 22:59:59 +0000 (22:59 -0000)]
When ACCEPT_CHOSTS is set, enable CHOST masking for unbuilt ebuilds. This
behaves as a sanity check to protect people who are cross-compiling from
accidentally merging an ebuild with CHOST set incorrectly. Thanks to Ned
Ludd <solar@g.o> for reporting the problem.
svn path=/main/trunk/; revision=12741
Zac Medico [Mon, 2 Mar 2009 22:37:58 +0000 (22:37 -0000)]
Use PORTAGE_USE when evaluating LICENSE inside portdbapi.gvisible().
svn path=/main/trunk/; revision=12740
Zac Medico [Mon, 2 Mar 2009 21:50:22 +0000 (21:50 -0000)]
When fetch() is called and there is an existing file with the wrong size that
is smaller than PORTAGE_FETCH_RESUME_MIN_SIZE, rename the file instead of
deleting it. This is more friendly for cases in which the user is attempting
to regenerate the digest but has not used `ebuild --force foo.ebuild manifest`
like they're supposed to. Thanks to Patrick Lauer <patrick@g.o> for reporting.
svn path=/main/trunk/; revision=12739
Zac Medico [Sun, 1 Mar 2009 21:06:37 +0000 (21:06 -0000)]
Don't give portage group write permissions on the mtimedb since it's not
really needed.
svn path=/main/trunk/; revision=12738
Zac Medico [Sun, 1 Mar 2009 20:39:41 +0000 (20:39 -0000)]
Thanks to Petteri Räty <betelgeuse@gentoo.org> for this new cache module which
uses extended attributes (via pyxattr) to attach metadata cache directly to
the ebuild files themselves.
svn path=/main/trunk/; revision=12737
Zac Medico [Sun, 1 Mar 2009 06:29:07 +0000 (06:29 -0000)]
Remove redundant long(_mtime_) conversion since template handles it now.
svn path=/main/trunk/; revision=12736
Zac Medico [Sun, 1 Mar 2009 06:25:07 +0000 (06:25 -0000)]
* Fix portage.cache.template.database.__getitem__() to validate the _mtime_
field and raise a CacheCorruption exception if necessary.
* Make _mtime_ and _eclasses_ validation code in portdbapi and mirror_cache()
assume that these fields are the correct type (otherwise a CacheCorruption
exeception should be raised earlier).
* Fix the sqlite module to implement _getitem() so that it properly inherits
__getitem__() _mtime_ and _eclasses_ handling.
svn path=/main/trunk/; revision=12735
Zac Medico [Sun, 1 Mar 2009 00:05:41 +0000 (00:05 -0000)]
Skip the code from bug #259954 when $ROOT != / since it shouldn't matter if
there are unsatisfied system runtime deps in this case.
svn path=/main/trunk/; revision=12734
Zac Medico [Sat, 28 Feb 2009 08:27:56 +0000 (08:27 -0000)]
When checking ebuild content, use codecs.open() to force utf_8 encoding for
py3k compatibility (all ebuilds should have utf_8 encoding).
svn path=/main/trunk/; revision=12733
Zac Medico [Sat, 28 Feb 2009 05:43:29 +0000 (05:43 -0000)]
In _ensure_default_encoding(), make sure the default encoding is normalized.
svn path=/main/trunk/; revision=12732
Zac Medico [Sat, 28 Feb 2009 05:20:35 +0000 (05:20 -0000)]
Add support to _ensure_default_encoding() for the same ascii and utf_8
aliases that encodings.aliases has.
svn path=/main/trunk/; revision=12731
Zac Medico [Sat, 28 Feb 2009 01:06:30 +0000 (01:06 -0000)]
Make Atom instances consume less memory by implementing str methods at the
class level instead of referencing bound str methods.
svn path=/main/trunk/; revision=12730
Zac Medico [Fri, 27 Feb 2009 05:23:37 +0000 (05:23 -0000)]
Use Popen.communicate() to avoid a potential deadlock.
svn path=/main/trunk/; revision=12729
Zac Medico [Fri, 27 Feb 2009 04:17:14 +0000 (04:17 -0000)]
Open then temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12728
Zac Medico [Fri, 27 Feb 2009 04:14:22 +0000 (04:14 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12727
Zac Medico [Fri, 27 Feb 2009 04:11:03 +0000 (04:11 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12726
Zac Medico [Fri, 27 Feb 2009 04:03:00 +0000 (04:03 -0000)]
Use os.fdopen() on file descriptors returned from mkstemp().
svn path=/main/trunk/; revision=12725
Zac Medico [Fri, 27 Feb 2009 03:54:57 +0000 (03:54 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12724
Zac Medico [Fri, 27 Feb 2009 03:46:40 +0000 (03:46 -0000)]
Open the temp file in text mode for py3k compatibility.
svn path=/main/trunk/; revision=12723
Zac Medico [Fri, 27 Feb 2009 03:24:13 +0000 (03:24 -0000)]
Use unicode() so that 2to3 handles py3k compatibility.
svn path=/main/trunk/; revision=12722
Zac Medico [Fri, 27 Feb 2009 03:08:03 +0000 (03:08 -0000)]
Fix CommandOutputSet to decode binary command output in py3k.
svn path=/main/trunk/; revision=12721
Zac Medico [Fri, 27 Feb 2009 02:43:45 +0000 (02:43 -0000)]
Fix PipeReader and PipeReaderTestCase to work with binary strings in py3k.
svn path=/main/trunk/; revision=12720
Zac Medico [Fri, 27 Feb 2009 01:20:49 +0000 (01:20 -0000)]
Loosen EMakeParallelDisabled.re so it can match more variations.
svn path=/main/trunk/; revision=12719
Zac Medico [Fri, 27 Feb 2009 01:08:01 +0000 (01:08 -0000)]
Add a new upstream.workaround check for hardcoded MAKEOPTS=-j1 (previously
only emake -j1 was recognized). Thanks to Maciej Mrozowski <reavertm@poczta.fm>
for this patch.
svn path=/main/trunk/; revision=12718
Zac Medico [Fri, 27 Feb 2009 00:48:30 +0000 (00:48 -0000)]
Fix test breakage due to change in calling order of AsynchronousTask start
listeners from r12713.
svn path=/main/trunk/; revision=12717
Zac Medico [Fri, 27 Feb 2009 00:03:26 +0000 (00:03 -0000)]
Fix a case in which a SRC_URI is incorrectly idendified as invalid, and add
a corresponding test case. Thanks to Jacob Floyd for reporting.
svn path=/main/trunk/; revision=12716
Zac Medico [Thu, 26 Feb 2009 08:40:41 +0000 (08:40 -0000)]
Remove recursion code from Scheduler._system_merge_started() since indirect
deps are checked when the corresponding parent is merged.
svn path=/main/trunk/; revision=12715
Zac Medico [Thu, 26 Feb 2009 07:50:49 +0000 (07:50 -0000)]
In traversing deps to add to Scheduler._unsatisfied_system_deps, only traverse
completed 'merge' nodes since those are the only ones that need to be checked
for unsatisfied runtime deps, and it's normal for nodes that aren't yet
complete to have unsatisfied runtime deps.
svn path=/main/trunk/; revision=12714
Zac Medico [Thu, 26 Feb 2009 04:26:07 +0000 (04:26 -0000)]
Bug #259954 - Do not spawn parallel build when the system is in a fragile
state due to a system package having an unsatisfied runtime dependency
(such as sys-libs/pam having an unsatisfied PDEPEND on sys-auth/pambase).
svn path=/main/trunk/; revision=12713
Mike Frysinger [Thu, 26 Feb 2009 04:03:10 +0000 (04:03 -0000)]
reject all set*id binaries that have DT_RPATH:$ORIGIN #260331
svn path=/main/trunk/; revision=12712
Zac Medico [Thu, 26 Feb 2009 01:15:02 +0000 (01:15 -0000)]
Remove stray parenthesis.
svn path=/main/trunk/; revision=12711
Zac Medico [Thu, 26 Feb 2009 00:59:06 +0000 (00:59 -0000)]
Inside depgraph._merge_order_bias(), promote deep system runtime deps toward
the front of the merge list. This should help optimize merge order to account
for implicit system dependencies.
svn path=/main/trunk/; revision=12710
Zac Medico [Thu, 26 Feb 2009 00:00:59 +0000 (00:00 -0000)]
Implement BlockerDepPriority.__str__().
svn path=/main/trunk/; revision=12709
Zac Medico [Wed, 25 Feb 2009 23:50:34 +0000 (23:50 -0000)]
Fix typo in DepPriority.__str__().
svn path=/main/trunk/; revision=12708
Zac Medico [Wed, 25 Feb 2009 20:21:12 +0000 (20:21 -0000)]
Implement lazy evaluation of USE_EXPAND variables in config.setcpv(), since
those variables are only needed when an ebuild shell is spawned. Thanks to
Marat Radchenko <slonopotamusorama@gmail.com> for testing this patch. He
reports a 14% reduction in the time consumed for `emerge -vpe world` on an
ARM device (from 3m12.008s to 2m45.055s).
svn path=/main/trunk/; revision=12707
Zac Medico [Wed, 25 Feb 2009 07:50:34 +0000 (07:50 -0000)]
In mirror_cache(), normalize EAPI by mapping EAPI=0 to empty.
svn path=/main/trunk/; revision=12706
Zac Medico [Tue, 24 Feb 2009 23:16:42 +0000 (23:16 -0000)]
Bug #259882 - Disable the ignore-previously-merged option by default since
emerge's confmem already provides similar functionality which is a little
safer.
svn path=/main/trunk/; revision=12705
Zac Medico [Tue, 24 Feb 2009 05:14:37 +0000 (05:14 -0000)]
If deepcopy() raises a TypeError for a lazy item that has been added via a
call to LazyItemsDict.addLazySingleton(), automatically evaluate the
the singleton and instead call deepcopy() on the result.
svn path=/main/trunk/; revision=12704