portage.git
16 years agoBug #225429 - In dblink.unmerge(), eliminate consumers having providers with
Zac Medico [Thu, 30 Oct 2008 03:04:08 +0000 (03:04 -0000)]
Bug #225429 - In dblink.unmerge(), eliminate consumers having providers with
the same soname as an installed library that is not preserved. This eliminates
libraries that are erroneously preserved due to a move from one directory to
another.

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

16 years agoMake config.setcpv() store the ebuild metadata inside self.configdict["pkg"],
Zac Medico [Wed, 29 Oct 2008 17:03:35 +0000 (17:03 -0000)]
Make config.setcpv() store the ebuild metadata inside self.configdict["pkg"],
and reuse this metadata inside doebuild() in order to avoid redundant
portdbapi.aux_get() calls.

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

16 years agoFix interaction between LinkageMap.rebuild() and the package replacement
Zac Medico [Wed, 29 Oct 2008 00:07:34 +0000 (00:07 -0000)]
Fix interaction between LinkageMap.rebuild() and the package replacement
process in order to avoid problems with stale or unaccounted NEEDED. This
solves a LinkageMap corruption issue which caused findConsumers to return
false positive inside dblink.unmerge().

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

16 years agoFix $ROOT handling inside LinkageMap.findConsumers().
Zac Medico [Tue, 28 Oct 2008 23:15:24 +0000 (23:15 -0000)]
Fix $ROOT handling inside LinkageMap.findConsumers().

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

16 years agoBug #238957 - When removing unneeded preserved libs inside dblink.unmerge(),
Zac Medico [Tue, 28 Oct 2008 23:04:14 +0000 (23:04 -0000)]
Bug #238957 - When removing unneeded preserved libs inside dblink.unmerge(),
use a digraph to properly track consumer relationships between preserved libs.
This fixes cases where preserved libs failed to be removed due to being
consumed by other preserved libs.

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

16 years agoUpdate the auto-add message to say "Manifest" instead of "digests". Thanks to
Zac Medico [Tue, 28 Oct 2008 21:22:22 +0000 (21:22 -0000)]
Update the auto-add message to say "Manifest" instead of "digests". Thanks to
grobian.

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

16 years agoRemove manifest1 digest-* autoadd code. Thanks to grobian.
Zac Medico [Tue, 28 Oct 2008 21:10:24 +0000 (21:10 -0000)]
Remove manifest1 digest-* autoadd code. Thanks to grobian.

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

16 years agoFix graph.get() so that it works as intended, returning the node corresponding
Zac Medico [Tue, 28 Oct 2008 20:53:46 +0000 (20:53 -0000)]
Fix graph.get() so that it works as intended, returning the node corresponding
to the given key.

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

16 years agoFix some incorrect $ROOT handling inside LinkageMap.
Zac Medico [Tue, 28 Oct 2008 09:25:56 +0000 (09:25 -0000)]
Fix some incorrect $ROOT handling inside LinkageMap.

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

16 years agoMake SetConfig.getSetAtoms() raise a PackageSetNotFound exception when
Zac Medico [Tue, 28 Oct 2008 09:07:39 +0000 (09:07 -0000)]
Make SetConfig.getSetAtoms() raise a PackageSetNotFound exception when
necessary and add handling code in emerge. This solves an unhandled
KeyError that was raise when a nested set did not exist. Thanks to
ABCD for reporting.

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

16 years agoFix incorrect $ROOT handling inside dblink._preserve_libs().
Zac Medico [Tue, 28 Oct 2008 05:30:33 +0000 (05:30 -0000)]
Fix incorrect $ROOT handling inside dblink._preserve_libs().

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

16 years agoPass $ROOT into the LinkageMap._ObjectKey constructor since it's needed for
Zac Medico [Tue, 28 Oct 2008 04:04:56 +0000 (04:04 -0000)]
Pass $ROOT into the LinkageMap._ObjectKey constructor since it's needed for
os.stat() and realpath() calls.

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

16 years agoPass $ROOT into portage.util.getlibpaths().
Zac Medico [Tue, 28 Oct 2008 03:41:32 +0000 (03:41 -0000)]
Pass $ROOT into portage.util.getlibpaths().

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

16 years agoReturn early from fetch() if no uris are given.
Zac Medico [Mon, 27 Oct 2008 22:35:43 +0000 (22:35 -0000)]
Return early from fetch() if no uris are given.

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

16 years agoIn fetch(), avoid the "Adjusting permissions recursively" message in cases
Zac Medico [Mon, 27 Oct 2008 22:19:45 +0000 (22:19 -0000)]
In fetch(), avoid the "Adjusting permissions recursively" message in cases
when the directory has just been created and therefore it must be empty.

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

16 years agoEnable bashrc even when $EBUILD_PHASE is unset, so it's possible to override
Zac Medico [Sun, 26 Oct 2008 07:55:41 +0000 (07:55 -0000)]
Enable bashrc even when $EBUILD_PHASE is unset, so it's possible to override
things like INSTALL_MASK.

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

16 years agoWhen creating the temporary $DISTDIR, do not try to set the uid since it
Zac Medico [Sat, 25 Oct 2008 18:20:16 +0000 (18:20 -0000)]
When creating the temporary $DISTDIR, do not try to set the uid since it
will fail when not running as root.

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

16 years agoFix preserve-libs code inside dblink.unmerge() so that it will join paths
Zac Medico [Fri, 24 Oct 2008 20:28:57 +0000 (20:28 -0000)]
Fix preserve-libs code inside dblink.unmerge() so that it will join paths
correctly when ROOT != /.

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

16 years agoWhen populating the fake $DISTDIR inside doebuild(), reuse existing symlinks
Zac Medico [Fri, 24 Oct 2008 00:07:21 +0000 (00:07 -0000)]
When populating the fake $DISTDIR inside doebuild(), reuse existing symlinks
when possible, instead of recreating the whole directory from scratch.

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

16 years agoAdd "subversion" to InheritAutotools._exempt_eclasses. Thanks to Arfrever.
Zac Medico [Thu, 23 Oct 2008 17:19:09 +0000 (17:19 -0000)]
Add "subversion" to InheritAutotools._exempt_eclasses. Thanks to Arfrever.

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

16 years agoAdd "bzr" to the lists of live eclasses.
Zac Medico [Thu, 23 Oct 2008 06:00:02 +0000 (06:00 -0000)]
Add "bzr" to the lists of live eclasses.

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

16 years agoAdd "bzr" to the lists of live eclasses.
Zac Medico [Thu, 23 Oct 2008 05:57:24 +0000 (05:57 -0000)]
Add "bzr" to the lists of live eclasses.

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

16 years agoBug #243224 - Add an exemption to the inherit.autotools check for ebuilds that
Zac Medico [Wed, 22 Oct 2008 17:59:25 +0000 (17:59 -0000)]
Bug #243224 - Add an exemption to the inherit.autotools check for ebuilds that
inherit git.eclass since the GIT_BOOTSTRAP variable may be used to call one of
autotools functions.

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

16 years agoFix grammar.
Zac Medico [Wed, 22 Oct 2008 16:15:07 +0000 (16:15 -0000)]
Fix grammar.

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

16 years agoAdd a PROPERTIES.syntax check.
Zac Medico [Wed, 22 Oct 2008 05:36:34 +0000 (05:36 -0000)]
Add a PROPERTIES.syntax check.

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

16 years agoDocument PROPERTIES=interactive.
Zac Medico [Wed, 22 Oct 2008 05:20:12 +0000 (05:20 -0000)]
Document PROPERTIES=interactive.

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

16 years agoBug #233296 - Add minimal PROPERTIES=interactive support by simply forcing
Zac Medico [Tue, 21 Oct 2008 23:24:31 +0000 (23:24 -0000)]
Bug #233296 - Add minimal PROPERTIES=interactive support by simply forcing
all package output to stdio whenever the merge list contains one or more
interactive packages.

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

16 years agoSplit dep validation out of doebuild() and skip it when called by emerge since
Zac Medico [Tue, 21 Oct 2008 22:05:51 +0000 (22:05 -0000)]
Split dep validation out of doebuild() and skip it when called by emerge since
there's no need to do this every time emerge executes a phase.

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

16 years agoValidate PROPERTIES inside doebuild().
Zac Medico [Tue, 21 Oct 2008 21:45:57 +0000 (21:45 -0000)]
Validate PROPERTIES inside doebuild().

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

16 years agoRemove unused imports found by pyflakes.
Zac Medico [Tue, 21 Oct 2008 21:09:29 +0000 (21:09 -0000)]
Remove unused imports found by pyflakes.

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

16 years agoRemove needlessly complex error handling code from vardbapi.cpv_counter().
Zac Medico [Tue, 21 Oct 2008 21:05:18 +0000 (21:05 -0000)]
Remove needlessly complex error handling code from vardbapi.cpv_counter().

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

16 years agoUse normal return statements instead of calling sys.exit() inside
Zac Medico [Tue, 21 Oct 2008 20:55:35 +0000 (20:55 -0000)]
Use normal return statements instead of calling sys.exit() inside
dblink.mergeme().

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

16 years agoBug #186842 - Suppress file merge display, as previously done in --quiet mode, whenever
Zac Medico [Tue, 21 Oct 2008 08:39:00 +0000 (08:39 -0000)]
Bug #186842 - Suppress file merge display, as previously done in --quiet mode, whenever
--verbose is not enabled. Also, export PORTAGE_VERBOSE to the ebuild environment and use
it to control tar verbosity when creating binary packages.

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

16 years agoAdd PORTAGE_QUIET to the environment whitelist and filter it from the saved ebuild
Zac Medico [Tue, 21 Oct 2008 08:01:22 +0000 (08:01 -0000)]
Add PORTAGE_QUIET to the environment whitelist and filter it from the saved ebuild
environment.

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

16 years agoRemove redundant duplicate uri elimination code. It's already handled in
Zac Medico [Mon, 20 Oct 2008 19:15:20 +0000 (19:15 -0000)]
Remove redundant duplicate uri elimination code. It's already handled in
the fetch loop.

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

16 years agoPrefer thirdpartymirrors over normal mirrors in cases when the file does not
Zac Medico [Mon, 20 Oct 2008 19:11:15 +0000 (19:11 -0000)]
Prefer thirdpartymirrors over normal mirrors in cases when the file does not
yet exist on the normal mirrors. Thanks to Maurice van der Pot <griffon26@g.o>
for reporting.

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

16 years agoHandle the case that was intended to be fixed by r11702 (which got reverted).
Zac Medico [Mon, 20 Oct 2008 18:21:42 +0000 (18:21 -0000)]
Handle the case that was intended to be fixed by r11702 (which got reverted).

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

16 years agoRevert previous 2 commits since they broke "selective" behavior.
Zac Medico [Mon, 20 Oct 2008 00:44:52 +0000 (00:44 -0000)]
Revert previous 2 commits since they broke "selective" behavior.

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

16 years agoSimplify logic from the previous commit.
Zac Medico [Mon, 20 Oct 2008 00:30:10 +0000 (00:30 -0000)]
Simplify logic from the previous commit.

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

16 years agoRemove the "found_available_arg" variable from depgraph._select_pkg() and use
Zac Medico [Sun, 19 Oct 2008 17:33:14 +0000 (17:33 -0000)]
Remove the "found_available_arg" variable from depgraph._select_pkg() and use
the "matched_packages" variable instead. This solve a problem where the
"found_available_arg" flag is unreliable due to the slot filtering behavior
of depgraph._iter_atoms_for_pkg(). For example, a higher version in a
different slot than the available ebuild might be masked or unavailable, and
depgraph._iter_atoms_for_pkg() will not identify the available ebuild as
a match due to this installed package (which is not available for reinstall).

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

16 years agoRemove the unused portage.gpg module and portage_gpg_update.sh script.
Zac Medico [Fri, 17 Oct 2008 19:56:43 +0000 (19:56 -0000)]
Remove the unused portage.gpg module and portage_gpg_update.sh script.

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

16 years agoRemove support for FEATURES=gpg since it's already disabled and broken
Zac Medico [Fri, 17 Oct 2008 18:52:27 +0000 (18:52 -0000)]
Remove support for FEATURES=gpg since it's already disabled and broken
anyway. Thanks to DJ Anderson for the suggestion.

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

16 years agoIn fetch(), make sure all references to digests for zero-byte distfile are
Zac Medico [Fri, 17 Oct 2008 02:02:32 +0000 (02:02 -0000)]
In fetch(), make sure all references to digests for zero-byte distfile are
always discarded.

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

16 years agoIn fetch(), don't spawn pkg_nofetch unless PORTAGE_BUILDDIR exists since it
Zac Medico [Thu, 16 Oct 2008 23:04:31 +0000 (23:04 -0000)]
In fetch(), don't spawn pkg_nofetch unless PORTAGE_BUILDDIR exists since it
will die anyway due to the code for bug #239560 that's in ebuild.sh.

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

16 years agoBug #242304 - When a zero-byte distfile is detected inside fetch(), discard
Zac Medico [Thu, 16 Oct 2008 22:55:46 +0000 (22:55 -0000)]
Bug #242304 - When a zero-byte distfile is detected inside fetch(), discard
the digests and attempt to fetch the file if possible. This code is triggered
via digestgen() when appropriate, so it fixes all digestgen() callers,
including repoman.

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

16 years agoBug #229033 - When a Manifest is added automatically by repoman, it's in the
Zac Medico [Tue, 14 Oct 2008 22:14:05 +0000 (22:14 -0000)]
Bug #229033 - When a Manifest is added automatically by repoman, it's in the
"mynew" list, so move manifest paths from that list to the "mymanifests" list
when necessary.

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

16 years agoBug #241366 - Only suggest to run `emaint --check world` when the atom is
Zac Medico [Tue, 14 Oct 2008 21:37:53 +0000 (21:37 -0000)]
Bug #241366 - Only suggest to run `emaint --check world` when the atom is
a direct member of the world set (rather than from a nested set).

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

16 years agoWhen emerge --keep-going bails due to missing dependencies, show the error
Zac Medico [Tue, 14 Oct 2008 21:05:54 +0000 (21:05 -0000)]
When emerge --keep-going bails due to missing dependencies, show the error
message after the mod_echo output since otherwise the mod_echo output can
sweep the error message out of view. Thanks to Donnie Berkholz <dberkholz@g.o>
for reporting.

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

16 years agoMake sure the pkg_nofetch phase is only called once when in fetchonly mode.
Zac Medico [Mon, 13 Oct 2008 20:52:07 +0000 (20:52 -0000)]
Make sure the pkg_nofetch phase is only called once when in fetchonly mode.

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

16 years agoMake fetch() fetch as many files as possible, even if some fail, when in
Zac Medico [Mon, 13 Oct 2008 00:39:21 +0000 (00:39 -0000)]
Make fetch() fetch as many files as possible, even if some fail, when in
fetchonly mode.

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

16 years agoDon't return from fetch() due to fetch restriction when in "listonly" mode.
Zac Medico [Mon, 13 Oct 2008 00:21:01 +0000 (00:21 -0000)]
Don't return from fetch() due to fetch restriction when in "listonly" mode.

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

16 years agoBug #234301 - When fetch fails, include the path of the log file in the
Zac Medico [Sun, 12 Oct 2008 23:57:29 +0000 (23:57 -0000)]
Bug #234301 - When fetch fails, include the path of the log file in the
eerror message that's generated. This way it's easy for the user to find
the output from the fetcher or from the pkg_nofetch phase.

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

16 years agoBug #241118 - Re-enable pkg_nofetch for emerge --pretend --fetch, but direct
Zac Medico [Sun, 12 Oct 2008 23:17:56 +0000 (23:17 -0000)]
Bug #241118 - Re-enable pkg_nofetch for emerge --pretend --fetch, but direct
output to stderr. This requires PORTAGE_BUILDDIR locking for bug #239560 and
also for elog message storage.

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

16 years agoAdd an explicit note about bug #239560 in the relevant code.
Zac Medico [Sun, 12 Oct 2008 21:01:12 +0000 (21:01 -0000)]
Add an explicit note about bug #239560 in the relevant code.

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

16 years agoInside fetch(), don't call pkg_nofetch when in parallel-fetch mode since
Zac Medico [Sun, 12 Oct 2008 20:57:00 +0000 (20:57 -0000)]
Inside fetch(), don't call pkg_nofetch when in parallel-fetch mode since
it will get call again later anyway.

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

16 years agoNow that only prefetch (parallel-fetch) output goes to the global fetch
Zac Medico [Sun, 12 Oct 2008 19:59:32 +0000 (19:59 -0000)]
Now that only prefetch (parallel-fetch) output goes to the global fetch
log, update code to remove inappropriate references to this log.

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

16 years agoRemove the prefetch logic in EbuildFetcher._pipe() since prefetchers are
Zac Medico [Sun, 12 Oct 2008 02:15:00 +0000 (02:15 -0000)]
Remove the prefetch logic in EbuildFetcher._pipe() since prefetchers are
always in the background anyway.

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

16 years agoBuge #241100 - Make EbuildFetcher use a pty when appropriate, so that fetcher
Zac Medico [Sun, 12 Oct 2008 00:46:59 +0000 (00:46 -0000)]
Buge #241100 - Make EbuildFetcher use a pty when appropriate, so that fetcher
progress bars, like wget has, will work properly.

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

16 years agoMake the Scheduler class treat failed fetches the same as other failed
Zac Medico [Sun, 12 Oct 2008 00:09:40 +0000 (00:09 -0000)]
Make the Scheduler class treat failed fetches the same as other failed
packages, and don't bail out due to a failure when in --fetchonly mode.
This fixes an issue with --fetchonly bailing out instead of continuing
to fetch.

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

16 years agoIn EbuildFetcher._start(), in order to ensure that a new log is created when
Zac Medico [Sat, 11 Oct 2008 20:31:48 +0000 (20:31 -0000)]
In EbuildFetcher._start(), in order to ensure that a new log is created when
appropriate, clean up PORTAGE_BUILDDIR if appropriate.

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

16 years agoWhen warning about package categories that haven't been configured via
Zac Medico [Sat, 11 Oct 2008 19:34:10 +0000 (19:34 -0000)]
When warning about package categories that haven't been configured via
/etc/portage/categories, join the path with PORTAGE_CONFIGROOT. Thanks
to Ned Ludd <solar@g.o> for reporting.

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

16 years agoBug #241204 - Fix dbapi.invalidentry() calls inside vardbapi.cpv_all() to
Zac Medico [Sat, 11 Oct 2008 18:51:07 +0000 (18:51 -0000)]
Bug #241204 - Fix dbapi.invalidentry() calls inside vardbapi.cpv_all() to
correctly join the path via self.getpath().

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

16 years agoonly use dummy echos in do_file() when running in interactive mode
Mike Frysinger [Fri, 10 Oct 2008 22:02:15 +0000 (22:02 -0000)]
only use dummy echos in do_file() when running in interactive mode

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

16 years agoMigrate code from plain ValueError to AmbiguousPackageName where appropriate
Zac Medico [Fri, 10 Oct 2008 20:33:08 +0000 (20:33 -0000)]
Migrate code from plain ValueError to AmbiguousPackageName where appropriate
(inherits from ValueError for backward compatibility).

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

16 years agoBug #241132 - Handle AmbiguousPackageName exceptions for atoms passed to the
Zac Medico [Fri, 10 Oct 2008 20:25:19 +0000 (20:25 -0000)]
Bug #241132 - Handle AmbiguousPackageName exceptions for atoms passed to the
--info action.

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

16 years agoCreate a new AmbiguousPackageName exception to raise from
Zac Medico [Fri, 10 Oct 2008 20:15:43 +0000 (20:15 -0000)]
Create a new AmbiguousPackageName exception to raise from
portage.cpv_expand(). It inherits from ValueError, for
backward compatibility with calling code that already
handles ValueError.

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

16 years agoGrab make.globals from GLOBAL_CONFIG_PATH if available and fall back to the
Zac Medico [Thu, 9 Oct 2008 23:29:54 +0000 (23:29 -0000)]
Grab make.globals from GLOBAL_CONFIG_PATH if available and fall back to the
legacy location if necessary.

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

16 years agoAt the end of dyn_clean(), also remove the $CATEGORY directory if possible. v2.2_rc12
Zac Medico [Thu, 9 Oct 2008 20:31:04 +0000 (20:31 -0000)]
At the end of dyn_clean(), also remove the $CATEGORY directory if possible.

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

16 years agoRemove redundant os.close(master_fd) call inside SpawnProcess._start() since
Zac Medico [Thu, 9 Oct 2008 20:03:37 +0000 (20:03 -0000)]
Remove redundant os.close(master_fd) call inside SpawnProcess._start() since
that file discriptor is referenced by a file object which already has an
appropriate close() call. This fixes an 'IOError: [Errno 9] Bad file
descriptor' exception which was raised when attempting to close the file
object.

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

16 years agoFix code from previous commit so it properly checks $eapi to verify that
Zac Medico [Thu, 9 Oct 2008 19:46:07 +0000 (19:46 -0000)]
Fix code from previous commit so it properly checks $eapi to verify that
src_prepare is really a supported phase function.

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

16 years agoBug #240684 - Fix _ebuild_arg_to_phase() to handle the src_prepare phase
Zac Medico [Thu, 9 Oct 2008 19:32:20 +0000 (19:32 -0000)]
Bug #240684 - Fix _ebuild_arg_to_phase() to handle the src_prepare phase
so that the default() function is properly created.

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

16 years agoIn EbuildFetcher._set_returncode(), don't clean up PORTAGE_BUILDDIR if
Zac Medico [Thu, 9 Oct 2008 01:10:49 +0000 (01:10 -0000)]
In EbuildFetcher._set_returncode(), don't clean up PORTAGE_BUILDDIR if
keepwork or keeptemp are in FEATURES.

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

16 years agoDon't show the repo display when the merge list is empty.
Zac Medico [Wed, 8 Oct 2008 22:47:15 +0000 (22:47 -0000)]
Don't show the repo display when the merge list is empty.

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

16 years agoFix apparent breakage from r11593 (slot dep support):
Zac Medico [Wed, 8 Oct 2008 22:35:31 +0000 (22:35 -0000)]
Fix apparent breakage from r11593 (slot dep support):
* Handle KeyError from element.getAttribute() in makeAtom() and makeVersion().
* Avoid 'sre_constants.error: unmatched group' exceptions in revisionMatch()
  when the atom does not have a slot.

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

16 years agoIn EbuildBuild._fetch_exit(), clean up the fetch log if fetch was successful.
Zac Medico [Wed, 8 Oct 2008 18:25:39 +0000 (18:25 -0000)]
In EbuildBuild._fetch_exit(), clean up the fetch log if fetch was successful.

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

16 years agoUse separate temp directories in order to avoid potential name collisions.
Zac Medico [Wed, 8 Oct 2008 18:03:07 +0000 (18:03 -0000)]
Use separate temp directories in order to avoid potential name collisions.

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

16 years agoSince EbuildBuild no longer directs it's EbuildFetcher instance's output
Zac Medico [Wed, 8 Oct 2008 16:16:35 +0000 (16:16 -0000)]
Since EbuildBuild no longer directs it's EbuildFetcher instance's output
to the global fetch log, there's no need to schedule it on the fetch
queue.

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

16 years agoBefore returning config instances from Scheduler._allocate_config(), call the
Zac Medico [Wed, 8 Oct 2008 03:27:43 +0000 (03:27 -0000)]
Before returning config instances from Scheduler._allocate_config(), call the
config.reset() method to make sure all settings from the previous package get
flushed out (such as PORTAGE_LOG_FILE). This fixes a case where
PORTAGE_LOG_FILE leaked from the previous package to the clean phase of the
next one, resulting in an IOError due to the path being invalid and the parent
directory being nonexistent.

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

16 years agoGenerate elog messages for failed fetches. This restores some functionality
Zac Medico [Tue, 7 Oct 2008 20:48:17 +0000 (20:48 -0000)]
Generate elog messages for failed fetches. This restores some functionality
that was removed in r11645.

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

16 years agoInstead of using inheritance, reference the ConfigParser part of SetConfig as
Zac Medico [Tue, 7 Oct 2008 16:00:55 +0000 (16:00 -0000)]
Instead of using inheritance, reference the ConfigParser part of SetConfig as
an attribute in case we want to swap out the ConfigParser implemention and no
longer want to implement the whole interface.

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

16 years agoMake "qawarnings" a normal set since the missingvars code might modify it.
Zac Medico [Tue, 7 Oct 2008 15:51:30 +0000 (15:51 -0000)]
Make "qawarnings" a normal set since the missingvars code might modify it.

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

16 years agoChange the "qawarnings" variable from a list to a set.
Zac Medico [Tue, 7 Oct 2008 15:36:49 +0000 (15:36 -0000)]
Change the "qawarnings" variable from a list to a set.

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

16 years agoMake HOMEPAGE.missing fatal again since, in cases when homepages are no longer
Zac Medico [Tue, 7 Oct 2008 15:31:42 +0000 (15:31 -0000)]
Make HOMEPAGE.missing fatal again since, in cases when homepages are no longer
available, we can use a link to some site like packages.gentoo.org or
www.unmaintained-free-software.org.

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

16 years agoWhen EbuildBuild encounters a failed fetch, propagee the log path so that
Zac Medico [Tue, 7 Oct 2008 09:03:45 +0000 (09:03 -0000)]
When EbuildBuild encounters a failed fetch, propagee the log path so that
it can be properly displayed in the status display.

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

16 years agoMake EbuildFetcher clean up the build dir after failures in fetchonly mode
Zac Medico [Tue, 7 Oct 2008 08:52:45 +0000 (08:52 -0000)]
Make EbuildFetcher clean up the build dir after failures in fetchonly mode
since the log is in emerge-fetch.log anyway.

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

16 years agoMake EbuildFetcher direct fetch output to the normal build log. By keeping the
Zac Medico [Tue, 7 Oct 2008 08:40:33 +0000 (08:40 -0000)]
Make EbuildFetcher direct fetch output to the normal build log. By keeping the
output in the build log instead of the global emerge-fetch.log file, output
from a possible fetch failure can be recovered and displayed later.
TODO: Convert failed fetch to elog message as suggested in bug #234301.

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

16 years agoFix EbuildFetcher._wait_hook() so it can be called more than once without
Zac Medico [Tue, 7 Oct 2008 08:04:55 +0000 (08:04 -0000)]
Fix EbuildFetcher._wait_hook() so it can be called more than once without
throwing an AttributeError.

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

16 years agoBug #234301 - Add support to EbuildFetcher to collect elog messages that
Zac Medico [Tue, 7 Oct 2008 02:01:01 +0000 (02:01 -0000)]
Bug #234301 - Add support to EbuildFetcher to collect elog messages that
might be generated during the pkg_nofetch phase. This involves maintaining
a lock on PORTAGE_BUILDDIR where the elog messages are collected, and
cleaning up PORTAGE_BUILDDIR before releasing the lock.

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

16 years agoIn fetch(), never call the pkg_nofetch phase when in "listonly" mode.
Zac Medico [Mon, 6 Oct 2008 20:58:29 +0000 (20:58 -0000)]
In fetch(), never call the pkg_nofetch phase when in "listonly" mode.

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

16 years agoIn doebuild(), don't create build dirs when "listonly" fetch mode.
Zac Medico [Mon, 6 Oct 2008 20:51:23 +0000 (20:51 -0000)]
In doebuild(), don't create build dirs when "listonly" fetch mode.

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

16 years agoIn order to avoid "waiting for lock" messages
Zac Medico [Mon, 6 Oct 2008 20:12:20 +0000 (20:12 -0000)]
In order to avoid "waiting for lock" messages
at the beginning, which annoy users, never
spawn a prefetcher for the first package.

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

16 years agoFix KeyError raised from display_preserved_libs() when the realpath is used
Zac Medico [Mon, 6 Oct 2008 02:47:37 +0000 (02:47 -0000)]
Fix KeyError raised from display_preserved_libs() when the realpath is used
as a key in consumer_map instead of the orignal path that was returned from
the PreservedLibsRegistry.

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

16 years agoBug #240022 - Avoid duplicate output for the same library (due to symlinks)
Zac Medico [Sun, 5 Oct 2008 18:47:57 +0000 (18:47 -0000)]
Bug #240022 - Avoid duplicate output for the same library (due to symlinks)
in display_preserved_libs() by using os.path.realpath() to group duplicate
references together. Thanks to Fabian Groffen <grobian@g.o> for the initial
patch.

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

16 years agoMake HOMEPAGE.missing a warning since some packages become homeless even
Zac Medico [Sun, 5 Oct 2008 17:04:09 +0000 (17:04 -0000)]
Make HOMEPAGE.missing a warning since some packages become homeless even
though they still continue to work. Thanks to Robin H. Johnson <robbat2@g.o>
for the suggestion.

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

16 years agoAvoid raising a KeyError from display_preserved_libs() in cases when no
Zac Medico [Sun, 5 Oct 2008 16:57:47 +0000 (16:57 -0000)]
Avoid raising a KeyError from display_preserved_libs() in cases when no
owners are found for a particular library consumer.

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

16 years agoIn dyn_clean, cd to $PORTAGE_BUILDDIR/.. before attempting to remove it since
Zac Medico [Sun, 5 Oct 2008 16:31:26 +0000 (16:31 -0000)]
In dyn_clean, cd to $PORTAGE_BUILDDIR/.. before attempting to remove it since
some kernels, such as Solaris, return EINVAL when an attempt is made to remove
the current working directory. Thanks to Fabian Groffen <grobian@g.o> for
reporting.

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

16 years agoBug #239529 - When doins is called on a symlink to a directory, preserve the
Zac Medico [Sun, 5 Oct 2008 16:04:31 +0000 (16:04 -0000)]
Bug #239529 - When doins is called on a symlink to a directory, preserve the
name of the symlink for the installed directory. This involves temporarily
renaming the directory and then renaming it back again.

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

16 years ago* When ensuring sane $PWD in ebuild.sh, die if the `cd "$PORTAGE_BUILDDIR"`
Zac Medico [Sun, 5 Oct 2008 05:09:33 +0000 (05:09 -0000)]
* When ensuring sane $PWD in ebuild.sh, die if the `cd "$PORTAGE_BUILDDIR"`
  call fails.
* Create $PORTAGE_BUILDDIR for the "fetch" phase too since it might be
  necessary to call pkg_nofetch.

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

16 years agoOnly update the confmem file when something has changed.
Zac Medico [Sun, 5 Oct 2008 04:20:08 +0000 (04:20 -0000)]
Only update the confmem file when something has changed.

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

16 years agoFix PreservedLibsRegistry.store() so that it only rewrites the data file when
Zac Medico [Sun, 5 Oct 2008 04:12:32 +0000 (04:12 -0000)]
Fix PreservedLibsRegistry.store() so that it only rewrites the data file when
something has changed.

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