portage.git
15 years agoKeep 2_pre* EAPI values in the deprecated list so that uninstalls still
Zac Medico [Mon, 9 Feb 2009 09:05:38 +0000 (09:05 -0000)]
Keep 2_pre* EAPI values in the deprecated list so that uninstalls still
work normally.

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

15 years agoRemove support for deprecated 2_pre* EAPI values.
Zac Medico [Mon, 9 Feb 2009 09:02:46 +0000 (09:02 -0000)]
Remove support for deprecated 2_pre* EAPI values.

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

15 years agoadd support for .xz compressed files like .lzma
Mike Frysinger [Sun, 8 Feb 2009 18:40:14 +0000 (18:40 -0000)]
add support for .xz compressed files like .lzma

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

15 years agoFilter the new hasg and hasgq functions inside save_ebuild_env().
Zac Medico [Sat, 7 Feb 2009 22:36:46 +0000 (22:36 -0000)]
Filter the new hasg and hasgq functions inside save_ebuild_env().

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

15 years agoEscape globs in hasgq arguments in order to prevent bash from trying
Zac Medico [Sat, 7 Feb 2009 19:41:09 +0000 (19:41 -0000)]
Escape globs in hasgq arguments in order to prevent bash from trying
to perform filename expansion.

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

15 years agocleanup econf() code -- use hasg* funcs in multilib code to avoid wrong/duplicate...
Mike Frysinger [Sat, 7 Feb 2009 09:45:45 +0000 (09:45 -0000)]
cleanup econf() code -- use hasg* funcs in multilib code to avoid wrong/duplicate parsing methods, move all handling to "$@" to avoid duplication, and make sure we prepend arguments coming from the ebuild rather than append -- only EXTRA_ECONF from user should override things

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

15 years agofix previous commit -- hasq isnt as cool as i thought and doesnt accept globs, so...
Mike Frysinger [Sat, 7 Feb 2009 09:26:08 +0000 (09:26 -0000)]
fix previous commit -- hasq isnt as cool as i thought and doesnt accept globs, so define a new hasg() func that does and use that

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

15 years agofix --libdir detection when econf is passed whitespace/empty arguments ... those...
Mike Frysinger [Sat, 7 Feb 2009 09:14:46 +0000 (09:14 -0000)]
fix --libdir detection when econf is passed whitespace/empty arguments ... those break the plain string expansion comparison

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

15 years agoFix digraph.clone() to properly clone priority lists.
Zac Medico [Thu, 5 Feb 2009 23:02:36 +0000 (23:02 -0000)]
Fix digraph.clone() to properly clone priority lists.

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

15 years agoMake DepPriority.__str__() indicate optional deps.
Zac Medico [Thu, 5 Feb 2009 20:40:24 +0000 (20:40 -0000)]
Make DepPriority.__str__() indicate optional deps.

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

15 years agoInside depgraph._serialize_tasks(), simplify the logic which delays selection
Zac Medico [Thu, 5 Feb 2009 06:36:46 +0000 (06:36 -0000)]
Inside depgraph._serialize_tasks(), simplify the logic which delays selection
of root nodes.

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

15 years agoFor python-3.0 compatibility, make dict-like classes modify their keys(),
Zac Medico [Wed, 4 Feb 2009 23:30:42 +0000 (23:30 -0000)]
For python-3.0 compatibility, make dict-like classes modify their keys(),
items(), and values() methods appropriatly for the current python version.

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

15 years agoWarn about WANT_AUTO(CONF|MAKE)=latest settings since they are redundant.
Zac Medico [Wed, 4 Feb 2009 19:18:45 +0000 (19:18 -0000)]
Warn about WANT_AUTO(CONF|MAKE)=latest settings since they are redundant.
Thanks to Petteri Räty <betelgeuse@g.o> for the initial patch.

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

15 years agoFix the priorities display in digraph.debug_print() so it shows the highest
Zac Medico [Wed, 4 Feb 2009 18:14:50 +0000 (18:14 -0000)]
Fix the priorities display in digraph.debug_print() so it shows the highest
priority (since multiple priorities are now supported).

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

15 years agoFix Scheduler._find_system_deps() so that it only traverses runtime deps.
Zac Medico [Wed, 4 Feb 2009 04:51:33 +0000 (04:51 -0000)]
Fix Scheduler._find_system_deps() so that it only traverses runtime deps.

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

15 years agoAdd support in digraph for multiple priorities per edge and support for
Zac Medico [Wed, 4 Feb 2009 04:05:24 +0000 (04:05 -0000)]
Add support in digraph for multiple priorities per edge and support for
callable ignore_priority arguments that can be used for finer grained
filtering.

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

15 years agoAdd UnmergeDepPriority.optional attribute, to avoid traceback.
Zac Medico [Wed, 4 Feb 2009 00:24:50 +0000 (00:24 -0000)]
Add UnmergeDepPriority.optional attribute, to avoid traceback.

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

15 years agoBug #256616 - Also consider deep runtime dependencies of system packages when
Zac Medico [Tue, 3 Feb 2009 22:58:16 +0000 (22:58 -0000)]
Bug #256616 - Also consider deep runtime dependencies of system packages when
adding packages to merge_wait_queue.

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

15 years agoFor optional deps pulled in by --with-bdeps=y, set DepPriority.buildtime to
Zac Medico [Tue, 3 Feb 2009 21:46:23 +0000 (21:46 -0000)]
For optional deps pulled in by --with-bdeps=y, set DepPriority.buildtime to
False.

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

15 years agoAdd a DepPriority.optional attribute for optional build time deps that are
Zac Medico [Tue, 3 Feb 2009 19:23:39 +0000 (19:23 -0000)]
Add a DepPriority.optional attribute for optional build time deps that are
pulled in by --with-bdeps=y.

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

15 years agoMake emerge --regen return non-zero if that are any failures. Thanks to Daniel
Zac Medico [Tue, 3 Feb 2009 18:02:28 +0000 (18:02 -0000)]
Make emerge --regen return non-zero if that are any failures. Thanks to Daniel
Robbins for reporting.

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

15 years agoUse portage.util.cmp_sort_key for python-3.0 compatibility.
Zac Medico [Tue, 3 Feb 2009 00:27:49 +0000 (00:27 -0000)]
Use portage.util.cmp_sort_key for python-3.0 compatibility.

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

15 years agoUse portage.util.cmp_sort_key for python-3.0 compatibility.
Zac Medico [Tue, 3 Feb 2009 00:18:27 +0000 (00:18 -0000)]
Use portage.util.cmp_sort_key for python-3.0 compatibility.

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

15 years agoUse portage.util.cmp_sort_key for python-3.0 compatibility.
Zac Medico [Tue, 3 Feb 2009 00:13:05 +0000 (00:13 -0000)]
Use portage.util.cmp_sort_key for python-3.0 compatibility.

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

15 years agoAdd a cmp_sort_key class which makes it easier to port code for python-3.0
Zac Medico [Mon, 2 Feb 2009 23:53:45 +0000 (23:53 -0000)]
Add a cmp_sort_key class which makes it easier to port code for python-3.0
compatibility. It works by generating key objects which use the given cmp
function to implement their __lt__ method.

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

15 years agoIn depgraph._serialize_tasks(), when separating uninstall nodes from leaf
Zac Medico [Mon, 2 Feb 2009 19:19:19 +0000 (19:19 -0000)]
In depgraph._serialize_tasks(), when separating uninstall nodes from leaf
nodes, do it earlier so that it covers more code paths.

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

15 years agoBug #256616 - Since dependencies on system packages are frequently unspecified,
Zac Medico [Mon, 2 Feb 2009 06:11:06 +0000 (06:11 -0000)]
Bug #256616 - Since dependencies on system packages are frequently unspecified,
merge them only when no builds are executing. When a system package finishes
building, it's added to a wait queue that is only processed when the number
of running builds drops to zero. All pending merges are then processed before
any new builds are allowed to start.

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

15 years agoFix logic inside depgraph._serialize_tasks() to avoid the circular runtime
Zac Medico [Mon, 2 Feb 2009 01:03:47 +0000 (01:03 -0000)]
Fix logic inside depgraph._serialize_tasks() to avoid the circular runtime
deps path in some cases when it's not appropriate. This solves a case that
was reported, in which the perl was merged before libperl due do perl and
lots of it's deps being selected all at once. In this case, so many packages
were selected at once that the cmp_circular_bias() sort did not order them
very well (though it normally works fine with a smaller number of packages).
Thanks to Daniel Robbins for reporting this issue and helping me reproduce
it.

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

15 years agoImplement Manifest2Entry.__ne__() so that comparisons inside Manifest.write()
Zac Medico [Sat, 31 Jan 2009 20:43:26 +0000 (20:43 -0000)]
Implement Manifest2Entry.__ne__() so that comparisons inside Manifest.write()
work properly (to avoid rewriting an identical manifest when possible).

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

15 years agoAlways ignore hidden files when generating Manifests. Thanks to Christian
Zac Medico [Sat, 31 Jan 2009 20:29:17 +0000 (20:29 -0000)]
Always ignore hidden files when generating Manifests. Thanks to Christian
Ruppert for reporting.

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

15 years agoFix color in merge list [ebuild ] display, so it's the same regardless of
Zac Medico [Thu, 29 Jan 2009 18:34:39 +0000 (18:34 -0000)]
Fix color in merge list [ebuild   ] display, so it's the same regardless of
$ROOT.

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

15 years ago- hardened gets way to many misfiled bugs related to qa-execstack. Make it clear...
Ned Ludd [Wed, 28 Jan 2009 22:25:51 +0000 (22:25 -0000)]
- hardened gets way to many misfiled bugs related to qa-execstack. Make it clear that bugs go to the maintainers of the pkg and not hardened for fun and profit

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

15 years agoIn EbuildFetcher._start(), don't touch the build dir when in prefetch mode.
Zac Medico [Wed, 28 Jan 2009 18:39:48 +0000 (18:39 -0000)]
In EbuildFetcher._start(), don't touch the build dir when in prefetch mode.
In this case, logging goes to emerge-fetch.log and the builddir should not be
touched since otherwise it could interfere with another instance of the same
cpv concurrently being built for a different $ROOT (currently, builds only
cooperate with prefetchers that are spawned for the same $ROOT). Thanks to
Daniel Robbins for reporting this issue.

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

15 years agoWhen scheduling builds in parallel for --jobs, avoid potential build dir
Zac Medico [Wed, 28 Jan 2009 08:47:38 +0000 (08:47 -0000)]
When scheduling builds in parallel for --jobs, avoid potential build dir
collisions in cases when the same exact cpv needs to be merged to multiple
$ROOTs (like when building stages). Thanks for Daniel Robbins for reporting
this issue and troubleshooting it.

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

15 years agoFix die() usage in ebuild phase examples. Thanks to Jeremy Olexa
Zac Medico [Sun, 25 Jan 2009 01:27:30 +0000 (01:27 -0000)]
Fix die() usage in ebuild phase examples. Thanks to Jeremy Olexa
<darkside@g.o> for this patch.

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

15 years agoAdd messages before and after the src_prepare phase. Thanks to Arfrever for
Zac Medico [Sun, 25 Jan 2009 00:18:22 +0000 (00:18 -0000)]
Add messages before and after the src_prepare phase. Thanks to Arfrever for
this patch.

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

15 years agoRemove the emerge-fetch.log lock message code from fetch() since this is
Zac Medico [Sat, 24 Jan 2009 19:14:19 +0000 (19:14 -0000)]
Remove the emerge-fetch.log lock message code from fetch() since this is
handled by the EbuildBuild class when it synchronizes with the prefetcher.

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

15 years agoInside fetch(), only mention /var/log/emerge-fetch.log in locking messages
Zac Medico [Sat, 24 Jan 2009 18:26:08 +0000 (18:26 -0000)]
Inside fetch(), only mention /var/log/emerge-fetch.log in locking messages
when called by emerge.

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

15 years agoInside depgraph._dep_expand(), filter use dbapi.cp_list() to filter out
Zac Medico [Fri, 23 Jan 2009 21:15:34 +0000 (21:15 -0000)]
Inside depgraph._dep_expand(), filter use dbapi.cp_list() to filter out
any results from dbapi.cp_all() that happen to not contain any ebuilds.
Thanks to Jeremy Olexa <darkside@g.o> for reporting.

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

15 years agoAdd an ignore_priority parameter to digraph.parent_nodes().
Zac Medico [Thu, 22 Jan 2009 22:26:49 +0000 (22:26 -0000)]
Add an ignore_priority parameter to digraph.parent_nodes().

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

15 years agoFix typo in previous commit.
Zac Medico [Thu, 22 Jan 2009 22:00:24 +0000 (22:00 -0000)]
Fix typo in previous commit.

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

15 years agoInside depgraph._add_dep(), drop unnecessary build-time deps if there is
Zac Medico [Thu, 22 Jan 2009 21:33:50 +0000 (21:33 -0000)]
Inside depgraph._add_dep(), drop unnecessary build-time deps if there is
no package available to satisfy it.

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

15 years agoInside depgraph.loadResumeCommand(), always enable deep traversal of
Zac Medico [Thu, 22 Jan 2009 21:13:52 +0000 (21:13 -0000)]
Inside depgraph.loadResumeCommand(), always enable deep traversal of
dependencies. This is necessary for correct --keep-going or --resume operation
in case a package from a group of circularly dependent packages fails.

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

15 years agoInside depgraph.loadResumeCommand(), when appropriate, complete the graph
Zac Medico [Thu, 22 Jan 2009 05:55:24 +0000 (05:55 -0000)]
Inside depgraph.loadResumeCommand(), when appropriate, complete the graph
before analyzing any unsatisfied deps that may exist.

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

15 years agoMake depgraph._add_dep() ignore fewer dependencies when not in --deep mode, by
Zac Medico [Thu, 22 Jan 2009 02:56:00 +0000 (02:56 -0000)]
Make depgraph._add_dep() ignore fewer dependencies when not in --deep mode, by
making it so that it will always account for dependencies on packages that are
already installed.

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

15 years agoMake listdir(ignorecvs=True) ignore .git directories. Thanks to Christian
Zac Medico [Thu, 22 Jan 2009 00:51:19 +0000 (00:51 -0000)]
Make listdir(ignorecvs=True) ignore .git directories. Thanks to Christian
Ruppert for the suggestion.

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

15 years agoFix interaction between ignorelist and ignorecvs parameters inside cacheddir().
Zac Medico [Thu, 22 Jan 2009 00:43:44 +0000 (00:43 -0000)]
Fix interaction between ignorelist and ignorecvs parameters inside cacheddir().
Thanks to Christian Ruppert for reporting.

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

15 years agoBug #199408 - Always enable the skip_masked and skip_unsatisfied for the
Zac Medico [Wed, 21 Jan 2009 22:49:42 +0000 (22:49 -0000)]
Bug #199408 - Always enable the skip_masked and skip_unsatisfied for the
resume_depgraph() function. This will cause emerge --resume to automatically
drop masked packages (without the need to specify --skipfirst).

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

15 years agoIn depgraph.loadResumeCommand(), account for unsatisfied dependencies of
Zac Medico [Wed, 21 Jan 2009 21:27:20 +0000 (21:27 -0000)]
In depgraph.loadResumeCommand(), account for unsatisfied dependencies of
installed packages if they are in the subgraph of dependencies of a package
which is scheduled to be installed.

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

15 years agoInside depgraph.loadResumeCommand(), ignore unsatisified dependencies that
Zac Medico [Wed, 21 Jan 2009 06:36:36 +0000 (06:36 -0000)]
Inside depgraph.loadResumeCommand(), ignore unsatisified dependencies that
are pulled in by installed packages. This is needed in order to avoid having
--keep-going bail out needlessly when one of a group of circularly dependent
packages fails to install after one or more of the group have already been
installed. TODO: Add sanity checks to make sure that it's really safe to
ignore all the deps that can be ignored by this code.

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

15 years agoWhen in --keep-going mode, don't suppress the list of failed packages display
Zac Medico [Mon, 19 Jan 2009 09:57:35 +0000 (09:57 -0000)]
When in --keep-going mode, don't suppress the list of failed packages display
at the end when there is only one failure, since the failure may have occurred
much earlier and the related output may not be visible any longer.

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

15 years agoBug #255358 - Add new RDEPEND.implicit warning to detect the caes where DEPEND v2.2_rc23
Zac Medico [Sun, 18 Jan 2009 23:15:47 +0000 (23:15 -0000)]
Bug #255358 - Add new RDEPEND.implicit warning to detect the caes where DEPEND
is set and RDEPEND is unset in the ebuild, since this triggers implicit
RDEPEND=$DEPEND assignment.

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

15 years agoFix false positive in the 'unused local USE-description' warning. Thanks to
Zac Medico [Fri, 16 Jan 2009 22:24:06 +0000 (22:24 -0000)]
Fix false positive in the 'unused local USE-description' warning. Thanks to
Alexis Ballier <aballier@g.o> for reporting.

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

15 years agoIdentify which package has unused local USE descriptions, in case more than
Zac Medico [Fri, 16 Jan 2009 22:01:56 +0000 (22:01 -0000)]
Identify which package has unused local USE descriptions, in case more than
one package is being scanned. Thanks to Thomas Sachau <tommy@g.o> for reporting.

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

15 years agoRevert chown behavior change from the previous commit, so that chown will
Zac Medico [Fri, 16 Jan 2009 19:27:20 +0000 (19:27 -0000)]
Revert chown behavior change from the previous commit, so that chown will
not be called on a pre-existing file.

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

15 years agoBug #255101 - Fix 'Permission denied' error handling in
Zac Medico [Fri, 16 Jan 2009 06:39:46 +0000 (06:39 -0000)]
Bug #255101 - Fix 'Permission denied' error handling in
NewsManager.getUnreadItems(). If there's no permission to lock the unread
file, skip the lock and try to read the file anyway.

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

15 years agoCall depgraph._set_args() inside _load_favorites(), to eliminate duplicate
Zac Medico [Wed, 14 Jan 2009 21:37:38 +0000 (21:37 -0000)]
Call depgraph._set_args() inside _load_favorites(), to eliminate duplicate
code.

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

15 years agoDrop the kernel version from the commit message for all platforms. Thanks to
Zac Medico [Wed, 14 Jan 2009 20:36:50 +0000 (20:36 -0000)]
Drop the kernel version from the commit message for all platforms. Thanks to
Fabian Groffen <grobian@g.o> for the suggestion.

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

15 years agoDon't show the running Linux kernel version in the commit message, since it
Zac Medico [Wed, 14 Jan 2009 20:32:38 +0000 (20:32 -0000)]
Don't show the running Linux kernel version in the commit message, since it
might leak information that would be useful to attackers. Thanks to Ned Ludd
<solar@g.o> for the suggestion.

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

15 years agoFix repoman conditionals inside _expand_new_virtuals() to use v2.2_rc22
Zac Medico [Wed, 14 Jan 2009 06:00:31 +0000 (06:00 -0000)]
Fix repoman conditionals inside _expand_new_virtuals() to use
config.local_config instead of checking for portdbapi type.

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

15 years agoAdd some more variables to config._env_blacklist to ensure that they never
Zac Medico [Wed, 14 Jan 2009 03:32:32 +0000 (03:32 -0000)]
Add some more variables to config._env_blacklist to ensure that they never
leak in from the calling environment.

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

15 years agoMake sure spawn() always initializes opt_name because later code assumes that it is.
Zac Medico [Wed, 14 Jan 2009 03:16:11 +0000 (03:16 -0000)]
Make sure spawn() always initializes opt_name because later code assumes that it is.

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

15 years agoIn spawn(), put the full cpv in opt_name, instead of just $PF. Thanks to
Zac Medico [Wed, 14 Jan 2009 02:45:05 +0000 (02:45 -0000)]
In spawn(), put the full cpv in opt_name, instead of just $PF. Thanks to
Diego Pettenò <flameeyes@g.o> for the suggestion.

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

15 years agoBug #254825 - Add a note about the need to use `ebuild --force <ebuild file>
Zac Medico [Wed, 14 Jan 2009 00:43:51 +0000 (00:43 -0000)]
Bug #254825 - Add a note about the need to use `ebuild --force <ebuild file>
manifest` to update distfiles digests.

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

15 years agoInside digestgen(), don't unnecessarily call fetch() in cases when the there
Zac Medico [Wed, 14 Jan 2009 00:20:33 +0000 (00:20 -0000)]
Inside digestgen(), don't unnecessarily call fetch() in cases when the there
are no hashes for comparison and the file already exists in $DISTDIR.

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

15 years agoBug #254825 - Improve messages that are displayed when manifest generation
Zac Medico [Wed, 14 Jan 2009 00:15:16 +0000 (00:15 -0000)]
Bug #254825 - Improve messages that are displayed when manifest generation
bails out due to a changed distfile digest.

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

15 years agoBug #254860 - Add another missing str -> atom conversion inside
Zac Medico [Tue, 13 Jan 2009 22:21:08 +0000 (22:21 -0000)]
Bug #254860 - Add another missing  str -> atom conversion inside
_expand_new_virtuals().

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

15 years agoUse a new 'usersync' feature to control dropping of privileges for --sync,
Zac Medico [Tue, 13 Jan 2009 21:27:30 +0000 (21:27 -0000)]
Use a new 'usersync' feature to control dropping of privileges for --sync,
since it's fairly common for people to have inconsistent permissions between
$PORTDIR and contained files/directories.

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

15 years agoBug #254860 - Inside _expand_new_virtuals(), generate instances of Atom
Zac Medico [Tue, 13 Jan 2009 21:02:30 +0000 (21:02 -0000)]
Bug #254860 - Inside _expand_new_virtuals(), generate instances of Atom
instead of plain strings, so calling code can assume that only Atom instances
will be returned when strict mode is enabled.

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

15 years agoSimplify depgraph._select_pkg_from_graph() by using match_pkgs().
Zac Medico [Tue, 13 Jan 2009 04:43:40 +0000 (04:43 -0000)]
Simplify depgraph._select_pkg_from_graph() by using match_pkgs().

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

15 years agoWhen selecting greedy package inside depgraph._greedy_slots(), make sure v2.2_rc21
Zac Medico [Mon, 12 Jan 2009 17:48:37 +0000 (17:48 -0000)]
When selecting greedy package inside depgraph._greedy_slots(), make sure
the selected packages have the same cp as the highest selected version.

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

15 years agoMention the blocker_lookahead parameter in the depgraph._greedy_slots()
Zac Medico [Mon, 12 Jan 2009 17:36:54 +0000 (17:36 -0000)]
Mention the blocker_lookahead parameter in the depgraph._greedy_slots()
docstring.

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

15 years agoWhen checking for conflicts between packages inside depgraph._greedy_slots(),
Zac Medico [Mon, 12 Jan 2009 16:47:01 +0000 (16:47 -0000)]
When checking for conflicts between packages inside depgraph._greedy_slots(),
never double-check any of the pairs.

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

15 years agoInvalidate some more caches inside depgraph._set_args().
Zac Medico [Mon, 12 Jan 2009 09:51:10 +0000 (09:51 -0000)]
Invalidate some more caches inside depgraph._set_args().

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

15 years agoFix comment about the greedy slots code.
Zac Medico [Mon, 12 Jan 2009 05:11:24 +0000 (05:11 -0000)]
Fix comment about the greedy slots code.

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

15 years agoBug #241808 - When loading options for --resume, discard the --color option
Zac Medico [Sun, 11 Jan 2009 23:31:56 +0000 (23:31 -0000)]
Bug #241808 - When loading options for --resume, discard the --color option
so it doesn't override the current setting.

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

15 years agoMake the greedy slot atom code from bug #150361 look ahead for conflicts
Zac Medico [Sun, 11 Jan 2009 22:36:06 +0000 (22:36 -0000)]
Make the greedy slot atom code from bug #150361 look ahead for conflicts
between the packages that will be pulled in. If a conflict is discovered,
drop the greedy slot atom for the older slot. This solves a problem reported
by kde4 users when running `emerge -u <atom>` for a package that has the
kdeprefix flag disabled. In this case, the newer slot blocks the older slot.
In order to allow the older slot to be automatically uninstalled, the atom
for the older slot needs to be excluded from the graph. Thanks to Maciej
Mrozowski for testing this patch.

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

15 years agoFix a TypeError which occurs in pretend commit mode when vcs is None. Thanks
Zac Medico [Sun, 11 Jan 2009 19:42:13 +0000 (19:42 -0000)]
Fix a TypeError which occurs in pretend commit mode when vcs is None. Thanks
to Fabian Groffen <grobian@g.o> for reporting.

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

15 years agoIf necessary, use /proc/loadavg to emulate os.getloadavg().
Zac Medico [Sun, 11 Jan 2009 05:07:27 +0000 (05:07 -0000)]
If necessary, use /proc/loadavg to emulate os.getloadavg().

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

15 years agoWhen displaying parents of unsolved blockers, prefer parents that are not
Zac Medico [Sat, 10 Jan 2009 23:01:22 +0000 (23:01 -0000)]
When displaying parents of unsolved blockers, prefer parents that are not
directly involved in a conflict.

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

15 years agoWhen displaying parents of unsolved blockers, reduce noise by pruning packages
Zac Medico [Sat, 10 Jan 2009 22:26:11 +0000 (22:26 -0000)]
When displaying parents of unsolved blockers, reduce noise by pruning packages
that are only pulled in by other conflict packages.

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

15 years agoEnable use.{mask,force} and package.use.{mask,forc} as-directory in profiles.
Zac Medico [Sat, 10 Jan 2009 22:00:49 +0000 (22:00 -0000)]
Enable use.{mask,force} and package.use.{mask,forc} as-directory in profiles.

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

15 years agoBug #254421 - Make dir_get_metadata() handle 'Connection refused' socket.error
Zac Medico [Sat, 10 Jan 2009 19:52:44 +0000 (19:52 -0000)]
Bug #254421 - Make dir_get_metadata() handle 'Connection refused' socket.error
from ftplib connection attempt.

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

15 years agoInside action_sync(), check for the git binary when necessary and bail out
Zac Medico [Sat, 10 Jan 2009 19:26:30 +0000 (19:26 -0000)]
Inside action_sync(), check for the git binary when necessary and bail out
with a helpful message if it doesn't exist. Thanks to Caleb Cushing
<xenoterracide@gmail.com> for the initial patch.

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

15 years agoAdd a "quiet" parameter to the EOutput constructor, and also flush
Zac Medico [Sat, 10 Jan 2009 19:13:57 +0000 (19:13 -0000)]
Add a "quiet" parameter to the EOutput constructor, and also flush
stderr/stdout stream in the constructor.

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

15 years agoUse ebegin/eend to indicate when waiting for a lock and when it's acquired.
Zac Medico [Sat, 10 Jan 2009 19:07:58 +0000 (19:07 -0000)]
Use ebegin/eend to indicate when waiting for a lock and when it's acquired.
Thanks to Petteri Räty <belegeuse@g.o> for the suggestion.

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

15 years agoInside config._getKeywords(), ignore -* in KEYWORDS, to prevent it from
Zac Medico [Sat, 10 Jan 2009 10:43:36 +0000 (10:43 -0000)]
Inside config._getKeywords(), ignore -* in KEYWORDS, to prevent it from
causing preceeding values to be discarded.

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

15 years agoAdd a new 'metadata.warning' category and a check which detects local USE
Zac Medico [Sat, 10 Jan 2009 10:14:17 +0000 (10:14 -0000)]
Add a new 'metadata.warning' category and a check which detects local USE
descriptions that are not used in any ebuilds. Thanks to Markus Meier
<maekke@g.o> for the initial patch.

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

15 years agoFix broken code inside config._getKeywords().
Zac Medico [Sat, 10 Jan 2009 09:11:08 +0000 (09:11 -0000)]
Fix broken code inside config._getKeywords().

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

15 years agoEnable package.keywords as-directory in profiles.
Zac Medico [Sat, 10 Jan 2009 08:56:38 +0000 (08:56 -0000)]
Enable package.keywords as-directory in profiles.

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

15 years agoBug #55321 - Add support for package.keywords in profiles. In profiles,
Zac Medico [Sat, 10 Jan 2009 08:40:35 +0000 (08:40 -0000)]
Bug #55321 - Add support for package.keywords in profiles. In profiles,
package.keywords modifies effective KEYWORDS values for a given ebuild. This
behavior is notably different from /etc/portage/package.keywords, which
instead modifies effective ACCEPT_KEYWORDS.

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

15 years ago* Enable the recursive option in profile package.use parsing.
Zac Medico [Sat, 10 Jan 2009 07:24:46 +0000 (07:24 -0000)]
* Enable the recursive option in profile package.use parsing.
* Enable package.umask in all the same locations as package.mask.

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

15 years agoWhen there are unresolved blockers, display the conflicting packages along
Zac Medico [Sat, 10 Jan 2009 06:24:52 +0000 (06:24 -0000)]
When there are unresolved blockers, display the conflicting packages along
with the packages that pulled them in (similar to the slot conflict display).
This is helpful for troubleshooting cases in which blockers don't solve
automatically and the reasons are not apparent from the normal merge list
display.

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

15 years agoRevert r12405 since it will be more convenient to use a separate graph to
Zac Medico [Sat, 10 Jan 2009 04:03:19 +0000 (04:03 -0000)]
Revert r12405 since it will be more convenient to use a separate graph to
store blocked package edges.

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

15 years agoRemove unused myblocker_parents variable inside depgraph._serialize_tasks().
Zac Medico [Sat, 10 Jan 2009 01:01:04 +0000 (01:01 -0000)]
Remove unused myblocker_parents variable inside depgraph._serialize_tasks().

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

15 years agoAdd Blocker -> Blocked Package edges to depgraph._unsolvable_blockers since
Zac Medico [Sat, 10 Jan 2009 00:57:41 +0000 (00:57 -0000)]
Add Blocker -> Blocked Package edges to depgraph._unsolvable_blockers since
these edges will be useful for implementing an enhanced blocker display.

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

15 years agoDon't assume that the package metadata contains a "repository" key.
Zac Medico [Fri, 9 Jan 2009 22:51:08 +0000 (22:51 -0000)]
Don't assume that the package metadata contains a "repository" key.

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

15 years agoWhen merging a package from an overlay, append 'from $repository' to the
Zac Medico [Fri, 9 Jan 2009 22:25:50 +0000 (22:25 -0000)]
When merging a package from an overlay, append 'from $repository' to the
'>>> Emerging' message (where $repository is the repo_name of the source
repository). Thanks to Jeroen Roovers <jer@g.o> for the suggestion.

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

15 years agoMake die() to show a message indicating the repository that an ebuild came
Zac Medico [Fri, 9 Jan 2009 11:19:07 +0000 (11:19 -0000)]
Make die() to show a message indicating the repository that an ebuild came
from, and do it during any phase for both ebuilds and binary packages. Now
PORTAGE_REPO_NAME is initialized inside config.setcpv() for both ebuilds
and binary packages, so it's always available inside ebuild.sh.

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

15 years agoBug #253563 - Replace hardcoded green/red color strings with GOOD/BAD. Thanks
Zac Medico [Fri, 9 Jan 2009 02:18:42 +0000 (02:18 -0000)]
Bug #253563 - Replace hardcoded green/red color strings with GOOD/BAD. Thanks
to Vsevolod Kozlov <sevakda@gmail.com> for the initial patch.

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