portage.git
15 years agoAdd support for FEATURES=parse-eapi-ebuild-head, which is similar to GLEP 55
Zac Medico [Mon, 23 Mar 2009 21:16:27 +0000 (21:16 -0000)]
Add support for FEATURES=parse-eapi-ebuild-head, which is similar to GLEP 55
except that the EAPI is parsed from the head of the ebuild (first 30 lines).
This feature is only intended for experimental purposes and should not be
enabled under normal circumstances.

svn path=/main/trunk/; revision=13173

15 years agoWhen calling doebuild() to spawn the 'depend' phase, just call config.setcpv()
Zac Medico [Mon, 23 Mar 2009 05:49:17 +0000 (05:49 -0000)]
When calling doebuild() to spawn the 'depend' phase, just call config.setcpv()
since that should be enough (no need for separate reset or reload calls).

svn path=/main/trunk/; revision=13170

15 years agoFix misc typos in comments.
Zac Medico [Mon, 23 Mar 2009 05:26:45 +0000 (05:26 -0000)]
Fix misc typos in comments.

svn path=/main/trunk/; revision=13168

15 years agoOnly check for ebuild/eclass modification when a relevant phase is called.
Zac Medico [Mon, 23 Mar 2009 01:27:51 +0000 (01:27 -0000)]
Only check for ebuild/eclass modification when a relevant phase is called.

svn path=/main/trunk/; revision=13150

15 years agoUse a separate if/then to group boolean or'd expressions together, rather
Zac Medico [Mon, 23 Mar 2009 00:57:29 +0000 (00:57 -0000)]
Use a separate if/then to group boolean or'd expressions together, rather
than a subshell.

svn path=/main/trunk/; revision=13149

15 years agoMake ebuild(1) detect ebuild/eclass changes and automatically source the
Zac Medico [Mon, 23 Mar 2009 00:44:23 +0000 (00:44 -0000)]
Make ebuild(1) detect ebuild/eclass changes and automatically source the
ebuild atain in this case (even though $T/environment may already exist).
This should help avoid confusion by ensuring that the latest changes to
the ebuild/eclasses are reflected in the environment.

svn path=/main/trunk/; revision=13148

15 years agoAdd "prepare" to the list of phases that trigger a warning about stale
Zac Medico [Sun, 22 Mar 2009 23:54:49 +0000 (23:54 -0000)]
Add "prepare" to the list of phases that trigger a warning about stale
${T}/environment.

svn path=/main/trunk/; revision=13147

15 years agoWhen triggering a fresh unpack inside dyn_unpack(), remove the
Zac Medico [Sun, 22 Mar 2009 23:47:49 +0000 (23:47 -0000)]
When triggering a fresh unpack inside dyn_unpack(), remove the
.prepared, .configured and .installed files along with the others.

svn path=/main/trunk/; revision=13146

15 years agoReplace xrange() usage with normal iteration and enumerate() where
Zac Medico [Sun, 22 Mar 2009 23:21:38 +0000 (23:21 -0000)]
Replace xrange() usage with normal iteration and enumerate() where
appropriate. Thanks to Douglass Anderson <dja@gendja.com> for the
initial patch.

svn path=/main/trunk/; revision=13145

15 years agoInside spawn(), avoid redundant os.access() and stat() calls on commonly
Zac Medico [Sun, 22 Mar 2009 22:05:47 +0000 (22:05 -0000)]
Inside spawn(), avoid redundant os.access() and stat() calls on commonly
spawned binaries such as BASH_BINARY, SANDBOX_BINARY, and FAKEROOT_BINARY.
Thanks to Piotr Jaroszyński <peper@g.o> for reporting.

svn path=/main/trunk/; revision=13144

15 years agoInside config.environ(), skip stat call on $T/environment for phases such
Zac Medico [Sun, 22 Mar 2009 21:31:23 +0000 (21:31 -0000)]
Inside config.environ(), skip stat call on $T/environment for phases such
as 'clean' and 'depend' where environment filtering isn't needed. Thanks to
Piotr Jaroszyński <peper@g.o> for reporting.

svn path=/main/trunk/; revision=13143

15 years agoRemove pointless usage of xrange(). Thanks to Douglass Anderson
Zac Medico [Sun, 22 Mar 2009 08:42:19 +0000 (08:42 -0000)]
Remove pointless usage of xrange(). Thanks to Douglass Anderson
<dja@gendja.com> for this patch.

svn path=/main/trunk/; revision=13142

15 years agoAdd a temporary workaround for bug #263081 (partially reverts r12757).
Zac Medico [Sun, 22 Mar 2009 08:37:07 +0000 (08:37 -0000)]
Add a temporary workaround for bug #263081 (partially reverts r12757).

svn path=/main/trunk/; revision=13141

15 years agoFix argument validation to allow file paths. Thanks to Arfrever for reporting.
Zac Medico [Sun, 22 Mar 2009 06:33:49 +0000 (06:33 -0000)]
Fix argument validation to allow file paths. Thanks to Arfrever for reporting.

svn path=/main/trunk/; revision=13140

15 years agoNormalize try/except indentation for compatibility with 2to3.
Zac Medico [Fri, 20 Mar 2009 08:28:19 +0000 (08:28 -0000)]
Normalize try/except indentation for compatibility with 2to3.

svn path=/main/trunk/; revision=13139

15 years agoFix try/except indentation so that 2to3 will recognize it.
Zac Medico [Thu, 19 Mar 2009 21:44:26 +0000 (21:44 -0000)]
Fix try/except indentation so that 2to3 will recognize it.

svn path=/main/trunk/; revision=13138

15 years agoFix try/except indentation so that 2to3 will recognize it.
Zac Medico [Thu, 19 Mar 2009 21:42:25 +0000 (21:42 -0000)]
Fix try/except indentation so that 2to3 will recognize it.

svn path=/main/trunk/; revision=13137

15 years agoMake sure mysettings.setcpv() always gets called when necessary inside
Zac Medico [Wed, 18 Mar 2009 23:46:28 +0000 (23:46 -0000)]
Make sure mysettings.setcpv() always gets called when necessary inside
doebuild_environment().

svn path=/main/trunk/; revision=13136

15 years agoAdd docstrings for the fd_pipes and returnpid parameters of doebuild().
Zac Medico [Wed, 18 Mar 2009 22:31:39 +0000 (22:31 -0000)]
Add docstrings for the fd_pipes and returnpid parameters of doebuild().

svn path=/main/trunk/; revision=13135

15 years agoMake config.features a set instead of a list.
Zac Medico [Wed, 18 Mar 2009 21:57:12 +0000 (21:57 -0000)]
Make config.features a set instead of a list.

svn path=/main/trunk/; revision=13134

15 years agoUpdate copyright headers.
Zac Medico [Wed, 18 Mar 2009 01:43:41 +0000 (01:43 -0000)]
Update copyright headers.

svn path=/main/trunk/; revision=13131

15 years agoIn order to avoid possible duplicate elog messages when using ebuild(1) to
Zac Medico [Wed, 18 Mar 2009 01:32:48 +0000 (01:32 -0000)]
In order to avoid possible duplicate elog messages when using ebuild(1) to
call the same phase multiple times, wipe out elog log files for the current
phase just before executing the phase. Thanks to Mike Frysinger <vapier@g.o>
for reporting.

svn path=/main/trunk/; revision=13130

15 years agoValidate argument atoms earlier for build actions. v2.2_rc26
Zac Medico [Tue, 17 Mar 2009 19:30:35 +0000 (19:30 -0000)]
Validate argument atoms earlier for build actions.

svn path=/main/trunk/; revision=13126

15 years agoRemove portage.internal docs (goes with previous commit).
Zac Medico [Tue, 17 Mar 2009 06:39:39 +0000 (06:39 -0000)]
Remove portage.internal docs (goes with previous commit).

svn path=/main/trunk/; revision=13119

15 years agoBug #262365 - Punt the prepalldocs check until there is an alternative
Zac Medico [Tue, 17 Mar 2009 05:52:27 +0000 (05:52 -0000)]
Bug #262365 - Punt the prepalldocs check until there is an alternative
available in EAPI 3.

svn path=/main/trunk/; revision=13118

15 years agoPunt fix-db.py since it's not really needed. It's been broken since 2.1.6
Zac Medico [Tue, 17 Mar 2009 05:41:37 +0000 (05:41 -0000)]
Punt fix-db.py since it's not really needed. It's been broken since 2.1.6
and nobody noticed until bug #262132 was filed.

svn path=/main/trunk/; revision=13117

15 years agoBug #262485 - Handle InvalidAtom from dep_expand().
Zac Medico [Tue, 17 Mar 2009 05:35:50 +0000 (05:35 -0000)]
Bug #262485 - Handle InvalidAtom from dep_expand().

svn path=/main/trunk/; revision=13116

15 years agoDo not create hardlinks when merging CONFIG_PROTECTed files since config
Zac Medico [Tue, 17 Mar 2009 01:18:21 +0000 (01:18 -0000)]
Do not create hardlinks when merging CONFIG_PROTECTed files since config
files shouldn't be hardlinked to eachother (for example, shadow installs
several identical config files inside /etc/pam.d/). Thanks to Caleb Cushing
<xenoterracide@gmail.com> for reporting.

svn path=/main/trunk/; revision=13115

15 years agoadd m68k diff from kolla
Mike Frysinger [Sun, 15 Mar 2009 02:19:06 +0000 (02:19 -0000)]
add m68k diff from kolla

svn path=/main/trunk/; revision=13114

15 years agoAdd make.conf for amd64-fbsd submitted by Timothy Redaelli <drizzt@g.o>.
Zac Medico [Sat, 14 Mar 2009 19:27:26 +0000 (19:27 -0000)]
Add make.conf for amd64-fbsd submitted by Timothy Redaelli <drizzt@g.o>.

svn path=/main/trunk/; revision=13113

15 years agoBug #262365 - Make the "portage.internal" category (prepalldocs check) a
Zac Medico [Fri, 13 Mar 2009 19:45:01 +0000 (19:45 -0000)]
Bug #262365 - Make the "portage.internal" category (prepalldocs check) a
warning instead of fatal.

svn path=/main/trunk/; revision=13109

15 years agoTweak grammar.
Zac Medico [Fri, 13 Mar 2009 18:37:23 +0000 (18:37 -0000)]
Tweak grammar.

svn path=/main/trunk/; revision=13108

15 years agoAdd missing brackets to [:upper:] and [:lower:] in _sb_append_var() tr
Zac Medico [Fri, 13 Mar 2009 00:10:11 +0000 (00:10 -0000)]
Add missing brackets to [:upper:] and [:lower:] in _sb_append_var() tr
arguments.

svn path=/main/trunk/; revision=13104

15 years agoFilter _sb_append_var in save_ebuild_env().
Zac Medico [Thu, 12 Mar 2009 18:41:27 +0000 (18:41 -0000)]
Filter _sb_append_var in save_ebuild_env().

svn path=/main/trunk/; revision=13091

15 years agocleanup sandbox env var handling -- make sure we dont insert empty : sections and...
Mike Frysinger [Thu, 12 Mar 2009 12:15:30 +0000 (12:15 -0000)]
cleanup sandbox env var handling -- make sure we dont insert empty : sections and avoid unnecessary eval usage

svn path=/main/trunk/; revision=13090

15 years agoBug #261670 - Automatically revert the CHOST metadata to the initial value v2.2_rc25
Zac Medico [Thu, 12 Mar 2009 06:32:32 +0000 (06:32 -0000)]
Bug #261670 - Automatically revert the CHOST metadata to the initial value
after src_install, in case the ebuild has changed it.

svn path=/main/trunk/; revision=13088

15 years agoUpdate docstring for EbuildBuildDir.clean_log().
Zac Medico [Thu, 12 Mar 2009 05:34:49 +0000 (05:34 -0000)]
Update docstring for EbuildBuildDir.clean_log().

svn path=/main/trunk/; revision=13072

15 years agoBug #261992 - Replace the EbuildBuildDir.clean() method with a clean_log()
Zac Medico [Thu, 12 Mar 2009 05:32:59 +0000 (05:32 -0000)]
Bug #261992 - Replace the EbuildBuildDir.clean() method with a clean_log()
method since log cleanup is all that's currently needed and shutil.rmtree()
can fail with "OSError: [Errno 36] File name too long" due to strange file
names, or on FreeBSD it can fail with EPERM due to file flags in $D.

svn path=/main/trunk/; revision=13071

15 years agoBug #261992 - Inside Binpkg._prefetch_exit(), avoid potention issues with
Zac Medico [Thu, 12 Mar 2009 05:20:48 +0000 (05:20 -0000)]
Bug #261992 - Inside Binpkg._prefetch_exit(), avoid potention issues with
shutil.rmtree() by just doing a minimal cleanup.

svn path=/main/trunk/; revision=13070

15 years agoMake dyn_clean ignore FEATURES=keepwork when [[ $EMERGE_FROM = binary ]]
Zac Medico [Thu, 12 Mar 2009 04:25:01 +0000 (04:25 -0000)]
Make dyn_clean ignore FEATURES=keepwork when [[ $EMERGE_FROM = binary ]]
and remove shutil.rmtree() call from Binpkg._clean_exit() since dyn_clean
is guaranteed to do a full clean now.

svn path=/main/trunk/; revision=13069

15 years agoWhen translating portage uid/gid to root uid/gid after src_install on
Zac Medico [Thu, 12 Mar 2009 03:48:10 +0000 (03:48 -0000)]
When translating portage uid/gid to root uid/gid after src_install on
FreeBSD, temporarily remove all file flags inside $D in order to avoid
EPERM errors. Thanks to Timothy Redaelli <drizzt@g.o> for reporting.

svn path=/main/trunk/; revision=13068

15 years agoUse posix compatible find -perm arguments. Thanks to Timothy Redaelli
Zac Medico [Thu, 12 Mar 2009 02:40:28 +0000 (02:40 -0000)]
Use posix compatible find -perm arguments. Thanks to Timothy Redaelli
<drizzt@g.o> for reporting.

svn path=/main/trunk/; revision=13067

15 years agoAlso add an einfo binary.
Zac Medico [Thu, 12 Mar 2009 01:45:52 +0000 (01:45 -0000)]
Also add an einfo binary.

svn path=/main/trunk/; revision=13066

15 years agoBug #262096 - Add separate eerror, elog, eqawarn, and ewarn binaries for
Zac Medico [Thu, 12 Mar 2009 01:44:02 +0000 (01:44 -0000)]
Bug #262096 - Add separate eerror, elog, eqawarn, and ewarn binaries for
use by non-bash programs running inside the ebuild environment, such as
sandbox.

svn path=/main/trunk/; revision=13065

15 years agoUse ${x##*/} instead of calling basename.
Zac Medico [Thu, 12 Mar 2009 00:43:00 +0000 (00:43 -0000)]
Use ${x##*/} instead of calling basename.

svn path=/main/trunk/; revision=13064

15 years agoMove ebuild helpers into an ebuild-helpers subdirectory.
Zac Medico [Thu, 12 Mar 2009 00:28:45 +0000 (00:28 -0000)]
Move ebuild helpers into an ebuild-helpers subdirectory.

svn path=/main/trunk/; revision=13063

15 years agoUse absolute imports instead of relative.
Zac Medico [Thu, 12 Mar 2009 00:25:50 +0000 (00:25 -0000)]
Use absolute imports instead of relative.

svn path=/main/trunk/; revision=13062

15 years agoBug #262211 - Avoid triggering an InvalidAtom exception inside the Package
Zac Medico [Wed, 11 Mar 2009 23:59:13 +0000 (23:59 -0000)]
Bug #262211 - Avoid triggering an InvalidAtom exception inside the Package
constructor when SLOT is empty.

svn path=/main/trunk/; revision=13061

15 years agoBug #262211 - Make vardbapi.aux_get() translate empty SLOT to 0 since other
Zac Medico [Wed, 11 Mar 2009 23:49:03 +0000 (23:49 -0000)]
Bug #262211 - Make vardbapi.aux_get() translate empty SLOT to 0 since other
code expects non-empty SLOT (for generation package slot atoms).

svn path=/main/trunk/; revision=13060

15 years agoBug #262012 - Only trigger the slot conflict message about --newuse when
Zac Medico [Wed, 11 Mar 2009 22:28:16 +0000 (22:28 -0000)]
Bug #262012 - Only trigger the slot conflict message about --newuse when
the installed version is the same as the new one. If they are different
versions then there's some other problem.

svn path=/main/trunk/; revision=13059

15 years agoAdd new xpak.5 man page by Lars Hartmann <lars<at>chaotika<dot>org>.
Zac Medico [Wed, 11 Mar 2009 08:07:21 +0000 (08:07 -0000)]
Add new xpak.5 man page by Lars Hartmann <lars<at>chaotika<dot>org>.

svn path=/main/trunk/; revision=13056

15 years agoDon't default env=os.environ directly in the config constructor because v2.2_rc24
Zac Medico [Tue, 10 Mar 2009 08:15:57 +0000 (08:15 -0000)]
Don't default env=os.environ directly in the config constructor because
that makes it show environment variables in api docs generated by epydoc.

svn path=/main/trunk/; revision=12824

15 years agoUse slices instead of startswith inside manifest2AuxfileFilter().
Zac Medico [Tue, 10 Mar 2009 06:41:55 +0000 (06:41 -0000)]
Use slices instead of startswith inside manifest2AuxfileFilter().

svn path=/main/trunk/; revision=12823

15 years agoHandle ValueError and UnpicklingError inside PreservedLibsRegistry.load().
Zac Medico [Tue, 10 Mar 2009 06:14:56 +0000 (06:14 -0000)]
Handle ValueError and UnpicklingError inside PreservedLibsRegistry.load().

svn path=/main/trunk/; revision=12822

15 years agoUse protocol=2 for pickle.dump() calls, so that pickles written by py3k will
Zac Medico [Tue, 10 Mar 2009 06:04:17 +0000 (06:04 -0000)]
Use protocol=2 for pickle.dump() calls, so that pickles written by py3k will
be backward compatible.

svn path=/main/trunk/; revision=12821

15 years agoMake _src_uri_validate() identify the || operator as invalid and add a
Zac Medico [Tue, 10 Mar 2009 05:24:08 +0000 (05:24 -0000)]
Make _src_uri_validate() identify the || operator as invalid and add a
corresponding test case.

svn path=/main/trunk/; revision=12820

15 years agoRemove redundant conditional inside _src_uri_validate().
Zac Medico [Tue, 10 Mar 2009 05:16:11 +0000 (05:16 -0000)]
Remove redundant conditional inside _src_uri_validate().

svn path=/main/trunk/; revision=12819

15 years agoFix incorrect slice inside _src_uri_validate() and add new test case.
Zac Medico [Tue, 10 Mar 2009 05:04:33 +0000 (05:04 -0000)]
Fix incorrect slice inside _src_uri_validate() and add new test case.

svn path=/main/trunk/; revision=12818

15 years agoSimplify cmp_sort_key._cmp_key.__lt__().
Zac Medico [Tue, 10 Mar 2009 04:49:10 +0000 (04:49 -0000)]
Simplify cmp_sort_key._cmp_key.__lt__().

svn path=/main/trunk/; revision=12817

15 years agoInitialize UserDict.data in the constructor.
Zac Medico [Tue, 10 Mar 2009 04:28:21 +0000 (04:28 -0000)]
Initialize UserDict.data in the constructor.

svn path=/main/trunk/; revision=12816

15 years agoOptimize dbapi._cpv_sort_ascending() by calling vercmp directly instead of
Zac Medico [Tue, 10 Mar 2009 03:59:37 +0000 (03:59 -0000)]
Optimize dbapi._cpv_sort_ascending() by calling vercmp directly instead of
calling pkgcmp.

svn path=/main/trunk/; revision=12815

15 years agoBug #261852 - If an unexpected exception is raise from emerge_main() then
Zac Medico [Tue, 10 Mar 2009 02:11:51 +0000 (02:11 -0000)]
Bug #261852 - If an unexpected exception is raise from emerge_main() then
show the traceback after the mod_echo output to that the traceback isn't
obscured by mod_echo flooding.

svn path=/main/trunk/; revision=12814

15 years agoWhen the config_incrementals parameter is unspecified in the config
Zac Medico [Tue, 10 Mar 2009 00:55:22 +0000 (00:55 -0000)]
When the config_incrementals parameter is unspecified in the config
constructor, don't warn because it's ridiculous to require this parameter
when it's always the same anyway.

svn path=/main/trunk/; revision=12813

15 years agoSimplify environment cleansing that's done for the ROOT=/ config instance
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

15 years agoInside create_trees(), when cleansing the environment for the ROOT=/ config
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

15 years agoBug #261670 - Generate a QA Notice if CHOST (from dyn_install) has a value
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

15 years agoOnly execute src_test pre/post hooks when src_test is actually executed.
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

15 years agoAdd more QA warnings for econf calls during unexpected phases. Thanks to
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

15 years agoWhen generating variable names to hold EXPORT_FUNCTIONS argument in, use
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

15 years agoUse the ebuild_phase helper function to calls phase hooks and fix broken
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

15 years agoInside dyn_unpack(), only call pre/post phase hooks when src_unpack is
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

15 years agoFix _setitem() to account for the change to serialize_eclasses = False.
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

15 years agoMake manifest mode with --force option cause existing digests to be replaced
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

15 years agoReorganize code for --digests and FEATURES=digest.
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

15 years agoNever call digestgen() inside doebuild() which only 'fetch' has been
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

15 years agoBug #261675 - Generate manifests in advance when FEATURES=digest is enabled.
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

15 years agoBug #261675 - Also don't call digestgen() from parallel-fetch processes.
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

15 years agoBug #261675 - When doebuild() is called by emerge, don't call digestgen()
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

15 years agoMake the --digest warning message show for FEATURES=digest.
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

15 years agoReplace things like [[ $PORTAGE_BUILDDIR/.prepared -nt $WORKDIR ]] with
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

15 years agoGenerate a QA Notice when EXPORT_FUNCTIONS is called before inherit, since
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

15 years agofor pointers cast to 32bit ints, we always want to abort on 64bit systems, not just...
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

15 years agoFix typo from previous commit.
Zac Medico [Sun, 8 Mar 2009 21:27:24 +0000 (21:27 -0000)]
Fix typo from previous commit.

svn path=/main/trunk/; revision=12792

15 years agoAlso support + character in eclass names.
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

15 years agoTranslate period characters in eclass names when generating variable names
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

15 years agoMake EXPORT_FUNCTIONS store it's arguments in an environment variable and
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

15 years agoRevert previous 2 commits due to bugs.
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

15 years agoFix PECLASS logic inside inherit() so that ECLASS is always restored to the
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

15 years agoMake EXPORT_FUNCTIONS store it's arguments in an environment variable and
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

15 years agoImplement _getitem instead of __getitem__ so that the base class __getitem__
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

15 years agoIn LazyItemsDict.__deepcopy__(), enable deepcopy of lazy items as it was
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

15 years agoUse slice instead of startwith in stack_* incremental processing.
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

15 years agoRemove unnecessary list() from previous commit.
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

15 years agoFix an issue with incomplete deepcopy of _LazyItem instances inside
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

15 years agoFix __getitem__ to convert mtime to long, and remove unreachable code
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

15 years agoAlways use basestring instead of str with isinstance().
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

15 years agoAllow unicode type values in config.__setitem__(). Thanks to Arfrever Frehtes
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

15 years agoSimplify LazyItemsDict internals.
Zac Medico [Sat, 7 Mar 2009 02:41:39 +0000 (02:41 -0000)]
Simplify LazyItemsDict internals.

svn path=/main/trunk/; revision=12773

15 years agoFix LazyItemsDict.update() to create new _SingletonWrapper instances that
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

15 years agoAdd keyword argument support to LazyItemsDict.update().
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