Zac Medico [Sun, 15 Feb 2009 04:59:03 +0000 (04:59 -0000)]
Fix isvalidatom to properly identify an invalid atom such as
'dev-java/nanoxml*'. Thanks to Vlastimil Babka <caster@g.o> for reporting.
svn path=/main/trunk/; revision=12614
Zac Medico [Sun, 15 Feb 2009 02:35:35 +0000 (02:35 -0000)]
Fix merge order calculation so that the circular runtime path isn't entered
when it's possible to select a node that only has unsatisfied PDEPEND. This
reverts an unintended change from the patch for bug #250020, and solves a
problem with libperl being merged after perl when building stage 1.
svn path=/main/trunk/; revision=12613
Zac Medico [Sat, 14 Feb 2009 22:08:49 +0000 (22:08 -0000)]
Bug #250020 - When calculating merge order, try to ensure that packages
listed in DEPEND are updated before whenever possible (even though the
DEPEND may already be satisfied by an installed instance). The changes
to the merge order algorithm should also account for many common cases of
bug #199856, but does not necessarily solve all cases. Whenever possible,
the new algorithm avoids dropping dependencies that are satisfied by installed
packages. Such dependencies are only dropped in a couple of cases:
* when solving circular dependencies
* when promoting packages to in the merge list (either
due an unsatisfied PDEPEND or a portage upgrade)
svn path=/main/trunk/; revision=12612
Zac Medico [Sat, 14 Feb 2009 21:33:58 +0000 (21:33 -0000)]
In depgraph._serialize_tasks(), when appropriate, execute uninstall tasks
sooner. This solves some cases of bug #256870 since there is a smaller window
of time for some other failure to cause the uninstall to get discarded.
svn path=/main/trunk/; revision=12611
Zac Medico [Sat, 14 Feb 2009 19:52:59 +0000 (19:52 -0000)]
For the --buildpkgonly digraph.hasallzeros() check, remove "nomerge" nodes
from the graph. This makes it unnecessary to tweak the dependency priority
for onlydeps packages inside depgraph._add_pkg_dep().
svn path=/main/trunk/; revision=12610
Zac Medico [Sat, 14 Feb 2009 19:22:06 +0000 (19:22 -0000)]
Automatically export QA_PRESTRIPPED if it's set. Thanks to Raúl Porcel
<armin76@g.o> for reporting.
svn path=/main/trunk/; revision=12609
Zac Medico [Fri, 13 Feb 2009 03:29:01 +0000 (03:29 -0000)]
In depgraph._serialize_tasks(), verify that an uninstall task has at least one
theoretically mergeable parent before choosing to reverse it's edges.
svn path=/main/trunk/; revision=12605
Zac Medico [Fri, 13 Feb 2009 02:53:53 +0000 (02:53 -0000)]
Fix Scheduler._prevent_builddir_collisions() to skip non-Package instances
when necessary.
svn path=/main/trunk/; revision=12604
Zac Medico [Thu, 12 Feb 2009 23:12:41 +0000 (23:12 -0000)]
Add a new "portage.internal" warning for prepalldocs usage since the council
ruled that it shouldn't be used in ebuilds. Thanks to Petteri Räty
<betelgeuse@g.o> for the initial patch.
svn path=/main/trunk/; revision=12603
Zac Medico [Thu, 12 Feb 2009 21:43:38 +0000 (21:43 -0000)]
* Remove outdated comment about qa_source() return value (with typo).
* Update copyright header.
Thanks to Jeremy Olexa <darkside@g.o> for reporting.
svn path=/main/trunk/; revision=12602
Zac Medico [Thu, 12 Feb 2009 03:53:07 +0000 (03:53 -0000)]
Inside portage.fetch(), check for the case where FETCOMMAND creates a
directory where a file is expected. This can happen if FETCHCOMMAND
erroneously contains wget's -P option where it should instead have -O, as
reported in bug #258433, comment #16.
svn path=/main/trunk/; revision=12601
Zac Medico [Thu, 12 Feb 2009 03:20:05 +0000 (03:20 -0000)]
Bug #258433 - In portage.fetch(), check for missing ${FILE} parameter in
FETCHCOMMAND or RESUMECOMMAND and bail out early if necessary.
svn path=/main/trunk/; revision=12600
Zac Medico [Wed, 11 Feb 2009 20:34:40 +0000 (20:34 -0000)]
Inside depgraph._select_atoms(), only trigger the circular dependency
avoidance code for buildtime dependencies. This solves a problem with
virtual/mysql inappropriately pulling in mysql-community from PDEPEND
when satisfying deps of plain mysql. Thanks to Krzysiek Pawlik <nelchael@g.o>
for reporting this issue:
http://archives.gentoo.org/gentoo-dev/msg_efce154d642fe6ede38d084a33c7f949.xml
svn path=/main/trunk/; revision=12599
Zac Medico [Tue, 10 Feb 2009 21:37:57 +0000 (21:37 -0000)]
Bug #258433 - Note FETCHCOMMAND and RESUMECOMMAND requirements wrt ${FILE}
for compatibility with EAPI 2.
svn path=/main/trunk/; revision=12598
Zac Medico [Mon, 9 Feb 2009 09:38:31 +0000 (09:38 -0000)]
Document EAPI 3_pre1.
svn path=/main/trunk/; revision=12597
Zac Medico [Mon, 9 Feb 2009 09:25:39 +0000 (09:25 -0000)]
Add new EAPI 3_pre1 value, and disable unpack() support for *.xz for earlier
EAPI values.
svn path=/main/trunk/; revision=12596
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Zac Medico [Thu, 22 Jan 2009 22:00:24 +0000 (22:00 -0000)]
Fix typo in previous commit.
svn path=/main/trunk/; revision=12550
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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