portage.git
17 years agoFix the diefunc overlay message so that it doesn't trigger
Zac Medico [Wed, 21 Nov 2007 08:32:35 +0000 (08:32 -0000)]
Fix the diefunc overlay message so that it doesn't trigger
falsely in prerm or postrm. (trunk r8578)

svn path=/main/branches/2.1.2/; revision=8579

17 years agoMove environment saving from dyn_compile() to dyn_install()
Zac Medico [Wed, 21 Nov 2007 08:01:54 +0000 (08:01 -0000)]
Move environment saving from dyn_compile() to dyn_install()
so that state from src_install() is saved. (trunk r8575)

svn path=/main/branches/2.1.2/; revision=8576

17 years agoClean up some local variables that are needlessly saved
Zac Medico [Wed, 21 Nov 2007 07:40:05 +0000 (07:40 -0000)]
Clean up some local variables that are needlessly saved
in the environment. (trunk r8573)

svn path=/main/branches/2.1.2/; revision=8574

17 years agoFix an AttributeError for config.backupenv.
Zac Medico [Wed, 21 Nov 2007 06:26:53 +0000 (06:26 -0000)]
Fix an AttributeError for config.backupenv.

svn path=/main/branches/2.1.2/; revision=8572

17 years agoWhen ROOT != "/" we only want overrides from the calling
Zac Medico [Wed, 21 Nov 2007 04:50:38 +0000 (04:50 -0000)]
When ROOT != "/" we only want overrides from the calling
environment to apply to the config that's associated
with ROOT != "/", so we wipe out the "backupenv" for the
config that is associated with ROOT == "/" and regenerate
it's incrementals. Thanks to solar for the suggestion.
(trunk r8539)

svn path=/main/branches/2.1.2/; revision=8571

17 years agoSync with ebuild.sh and isolated-functions.sh as of trunk r8569. This
Zac Medico [Wed, 21 Nov 2007 04:44:20 +0000 (04:44 -0000)]
Sync with ebuild.sh and isolated-functions.sh as of trunk r8569. This
includes all the environment filtering enhancements that solve bugs
#46223 and #190128.

svn path=/main/branches/2.1.2/; revision=8570

17 years agoDisable logging and ${T}/environment saving during the
Zac Medico [Wed, 21 Nov 2007 04:13:17 +0000 (04:13 -0000)]
Disable logging and ${T}/environment saving during the
pkg_info() phase. (trunk r8526)

svn path=/main/branches/2.1.2/; revision=8568

17 years agoFix PROFILE_ONLY_VARIABLES handling in the config constructor
Zac Medico [Wed, 21 Nov 2007 04:06:26 +0000 (04:06 -0000)]
Fix PROFILE_ONLY_VARIABLES handling in the config constructor
so that variables are appropriately filtered from "backupenv",
since otherwise they can leak in from there. (trunk r8524)

svn path=/main/branches/2.1.2/; revision=8567

17 years agoBug #198398 - Enable Manifest generation when there are no hash
Zac Medico [Wed, 21 Nov 2007 03:55:53 +0000 (03:55 -0000)]
Bug #198398 - Enable Manifest generation when there are no hash
functions available for types such as RMD160. Now it's possible
to generate a Manifest when python-2.5 is built without ssl
support. MANIFEST1_REQUIRED_HASH and MANIFEST2_REQUIRED_HASH
are the only two functions that are strictly required now (MD5
and SHA1). (trunk r8521)

svn path=/main/branches/2.1.2/; revision=8566

17 years agoClean up vardbapi.counter_tick_core() and replace shell code
Zac Medico [Wed, 21 Nov 2007 00:14:15 +0000 (00:14 -0000)]
Clean up vardbapi.counter_tick_core() and replace shell code
with pure python.

svn path=/main/branches/2.1.2/; revision=8565

17 years agoSet IMAGE for minimal backward compatibility with
Zac Medico [Wed, 21 Nov 2007 00:06:18 +0000 (00:06 -0000)]
Set IMAGE for minimal backward compatibility with
overlays or user's bashrc, but don't export it.
(trunk r8511:8513)

svn path=/main/branches/2.1.2/; revision=8564

17 years agoBug #199311 - Make dblink.getcontents() show the path of the
Zac Medico [Wed, 21 Nov 2007 00:02:53 +0000 (00:02 -0000)]
Bug #199311 - Make dblink.getcontents() show the path of the
CONTENTS file when any kind of parse error occurs.
(trunk r8511)

svn path=/main/branches/2.1.2/; revision=8563

17 years agoFix quoting for `source ${EBUILD}`. (trunk r8503)
Zac Medico [Wed, 21 Nov 2007 00:00:59 +0000 (00:00 -0000)]
Fix quoting for `source ${EBUILD}`. (trunk r8503)

svn path=/main/branches/2.1.2/; revision=8562

17 years agoMake dir_get_metadata() return early if the current user does
Zac Medico [Tue, 20 Nov 2007 23:59:51 +0000 (23:59 -0000)]
Make dir_get_metadata() return early if the current user does
not have write access to /var/cache/edb. Thanks to Cardoe for
reporting. (trunk r8502)

svn path=/main/branches/2.1.2/; revision=8561

17 years ago* Replace references to deprecated ${IMAGE} with equivalent ${D}.
Zac Medico [Tue, 20 Nov 2007 23:54:19 +0000 (23:54 -0000)]
* Replace references to deprecated ${IMAGE} with equivalent ${D}.
* Remove redundant trailing slashes and fix quoting.
(trunk r8501)

svn path=/main/branches/2.1.2/; revision=8560

17 years agoMake 'full' the default mode, since 'scan' can be annoying when it
Zac Medico [Tue, 20 Nov 2007 23:36:18 +0000 (23:36 -0000)]
Make 'full' the default mode, since 'scan' can be annoying when it
omits relevant info. (trunk r8499)

svn path=/main/branches/2.1.2/; revision=8558

17 years agoIn the slot collision display, show a maximum of 3 parents
Zac Medico [Tue, 20 Nov 2007 23:22:20 +0000 (23:22 -0000)]
In the slot collision display, show a maximum of 3 parents
for each package in order to avoid flooding the display.
(trunk r8500)

svn path=/main/branches/2.1.2/; revision=8557

17 years agoMake the slot collision display show all collisions instead
Zac Medico [Tue, 20 Nov 2007 23:19:13 +0000 (23:19 -0000)]
Make the slot collision display show all collisions instead
of just the first one. (trunk r8498)

svn path=/main/branches/2.1.2/; revision=8556

17 years agoFix blocker handling to properly handle SLOT atoms in
Zac Medico [Tue, 20 Nov 2007 22:18:23 +0000 (22:18 -0000)]
Fix blocker handling to properly handle SLOT atoms in
depgraph.validate_blockers(). (trunk r8495)

svn path=/main/branches/2.1.2/; revision=8555

17 years agoBug #197797 - Set umask to 022 so that created files (such as the
Zac Medico [Tue, 20 Nov 2007 21:59:43 +0000 (21:59 -0000)]
Bug #197797 - Set umask to 022 so that created files (such as the
world file) have sane permissions.

svn path=/main/branches/2.1.2/; revision=8554

17 years agoMake diefunc() clean up QA_INTERCEPTORS in case it is
Zac Medico [Tue, 20 Nov 2007 21:58:03 +0000 (21:58 -0000)]
Make diefunc() clean up QA_INTERCEPTORS in case it is
called from inherit() since sed called below. (trunk
r8490)

svn path=/main/branches/2.1.2/; revision=8553

17 years agoConvert all the checks in repoman.checks to use a new LineCheck
Zac Medico [Tue, 20 Nov 2007 21:44:10 +0000 (21:44 -0000)]
Convert all the checks in repoman.checks to use a new LineCheck
interface that takes a single line as an argument. This has at
least a few of benefits:

* Eliminates lots of redundant code
* Error messages are ordered by line number across all checks

The performance is slightly worse due to the increased number
of method calls, but it's not really noticeable in comparison
to the time consumed by dependency checks.

Thanks to Petteri Räty <betelgeuse@gentoo.org> for the initial
patch which I only made a few minor modifications to.
(trunk r8483)

Make the EbuildQuote.missing_quotes regex accept single
quotes where it accepts double quotes in order to
eliminate some false positives. Thanks to Krzysiek
Pawlik <nelchael@gentoo.org> for reporting.
(trunk r8485)

svn path=/main/branches/2.1.2/; revision=8552

17 years agoRemove the workaround for \n -> \r\n transformations in
Zac Medico [Tue, 20 Nov 2007 20:07:15 +0000 (20:07 -0000)]
Remove the workaround for \n -> \r\n transformations in
SpawnTestCase.testLogfile() since the problem is solved
by the patch from bug #198491. (trunk r8474)

svn path=/main/branches/2.1.2/; revision=8551

17 years agoBug #198491 - Disable termios.OPOST post-processing of output on
Zac Medico [Tue, 20 Nov 2007 20:05:12 +0000 (20:05 -0000)]
Bug #198491 - Disable termios.OPOST post-processing of output on
the slave pty file descriptor since otherwise weird things like
\n -> \r\n transformations may occur. Thanks to Ulrich Mueller
<ulm@gentoo.org> for this patch. (trunk r8473)

svn path=/main/branches/2.1.2/; revision=8550

17 years agomake.globals should not be relative to config_root
Zac Medico [Tue, 20 Nov 2007 20:02:50 +0000 (20:02 -0000)]
make.globals should not be relative to config_root
because it only contains constants. (trunk r8471)

svn path=/main/branches/2.1.2/; revision=8549

17 years agoTweak EOutput.term_columns calculation for TERM="dumb" so
Zac Medico [Tue, 20 Nov 2007 19:59:39 +0000 (19:59 -0000)]
Tweak EOutput.term_columns calculation for TERM="dumb" so
that it behaves like TERM="cons25" currently does. Thanks
to Ulrich Mueller <ulm@gentoo.org> for the patch.
(trunk r8468)

svn path=/main/branches/2.1.2/; revision=8548

17 years agoDon't do:
Zac Medico [Tue, 20 Nov 2007 19:41:06 +0000 (19:41 -0000)]
Don't do:
Calculating dependencies |Fetching binary packages info...
but instead put "Fetching ..." on it's own line. (trunk r8466)

svn path=/main/branches/2.1.2/; revision=8547

17 years agoBug #198492 - Make quickpkg create $PKGDIR if it doesn't
Zac Medico [Tue, 20 Nov 2007 19:36:37 +0000 (19:36 -0000)]
Bug #198492 - Make quickpkg create $PKGDIR if it doesn't
already exist. (trunk r8464)

svn path=/main/branches/2.1.2/; revision=8546

17 years agoIt is not cool and/or helpfull to see an HTML dump of some
Zac Medico [Tue, 20 Nov 2007 19:31:55 +0000 (19:31 -0000)]
It is not cool and/or helpfull to see an HTML dump of some
page in case it is not what is expected (like a 404).
(trunk r8462)

svn path=/main/branches/2.1.2/; revision=8545

17 years agoFor unsatisfied dependencies, shorten the per-package EAPI mask
Zac Medico [Tue, 20 Nov 2007 19:30:17 +0000 (19:30 -0000)]
For unsatisfied dependencies, shorten the per-package EAPI mask
output and show an informative message whenever an EAPI mask is
encountered. (trunk r8457)

svn path=/main/branches/2.1.2/; revision=8544

17 years agoSynchronize vardbapi._aux_cache_keys with trunk. It's important
Zac Medico [Sun, 18 Nov 2007 04:23:36 +0000 (04:23 -0000)]
Synchronize vardbapi._aux_cache_keys with trunk. It's important
at least to include RESTRICT since the depgraph uses that one
and therefore it should be cached to improve performance. The
others aren't strictly necessary at this time, but it's good to
be in sync with trunk.

svn path=/main/branches/2.1.2/; revision=8522

17 years agoRemove the usage.obsolete "KEYWORDS contain -*" warning since people v2.1.3.19
Zac Medico [Tue, 6 Nov 2007 17:27:52 +0000 (17:27 -0000)]
Remove the usage.obsolete "KEYWORDS contain -*" warning since people
are using -* to indicate that a package should not be tried on archs
other than those for which it already has KEYWORDS.

svn path=/main/branches/2.1.2/; revision=8448

17 years agoSimplify and fix bugs in is_valid_package_atom(). (trunk r8445)
Zac Medico [Tue, 6 Nov 2007 10:05:07 +0000 (10:05 -0000)]
Simplify and fix bugs in is_valid_package_atom(). (trunk r8445)

svn path=/main/branches/2.1.2/; revision=8446

17 years agoGo ahead and exempt selected profile-specific USE_EXPAND
Zac Medico [Tue, 6 Nov 2007 08:35:56 +0000 (08:35 -0000)]
Go ahead and exempt selected profile-specific USE_EXPAND
flags from IUSE QA Notices since we are planning to make
these particular flags into implicit members of IUSE.
We can make this extensible later, but for now we just
want to eliminate some useless QA Notices (a subset of
bug #70648). We're not exempting any non profile-
specific USE_EXPAND flags here. For non profile-specific
flags, we intend to implement an IUSE syntax extension
(bug #133327). (trunk r8442)

svn path=/main/branches/2.1.2/; revision=8443

17 years agoRemove the installed package masking hack from bug #149816 since
Zac Medico [Tue, 6 Nov 2007 07:26:26 +0000 (07:26 -0000)]
Remove the installed package masking hack from bug #149816 since
installed packages should be able to satisfy dependencies whether
they are masked or not (matches current trunk behavior).

svn path=/main/branches/2.1.2/; revision=8441

17 years agoAllow multislot packages to be added to the world file
Zac Medico [Tue, 6 Nov 2007 07:00:39 +0000 (07:00 -0000)]
Allow multislot packages to be added to the world file
via --noreplace. Having these atoms in the world file
will trigger recommendations to run emaint in some
cases, like when running `emerge -e world`. The atoms
need to be in the world file to prevent multislot
packages from being removed by --depclean though.
(trunk r8436)

Bug #198129 - Prevent SLOT atoms like  sys-devel/binutils:0
from being inappropriately recorded in the world file when
USE=multislot is enabled.
(trunk r8437:8439)

svn path=/main/branches/2.1.2/; revision=8440

17 years agoPort the EbuildNestedDie check from trunk since the
Zac Medico [Mon, 5 Nov 2007 06:50:39 +0000 (06:50 -0000)]
Port the EbuildNestedDie check from trunk since the
python version is much faster than the old one that
uses grep.

svn path=/main/branches/2.1.2/; revision=8430

17 years agoMake exception strings more informative. (trunk r8426)
Zac Medico [Sun, 4 Nov 2007 20:59:59 +0000 (20:59 -0000)]
Make exception strings more informative. (trunk r8426)

svn path=/main/branches/2.1.2/; revision=8427

17 years agoFix indentation typo.
Zac Medico [Sun, 4 Nov 2007 19:54:22 +0000 (19:54 -0000)]
Fix indentation typo.

svn path=/main/branches/2.1.2/; revision=8425

17 years agoMake Manifest.create() do some basic validation of ebuild
Zac Medico [Sun, 4 Nov 2007 18:01:46 +0000 (18:01 -0000)]
Make Manifest.create() do some basic validation of ebuild
file names like portdbapi.cp_list() would do. (trunk r8423)

svn path=/main/branches/2.1.2/; revision=8424

17 years agoIn portdbapi.cp_list(), validate the ebuild name to ensure
Zac Medico [Sun, 4 Nov 2007 09:31:30 +0000 (09:31 -0000)]
In portdbapi.cp_list(), validate the ebuild name to ensure
that it matches the name of the package. (trunk r8421)

svn path=/main/branches/2.1.2/; revision=8422

17 years agoClean up ACCEPT_KEYWORDS incremental stacking logic and
Zac Medico [Sun, 4 Nov 2007 06:54:43 +0000 (06:54 -0000)]
Clean up ACCEPT_KEYWORDS incremental stacking logic and
fix some minor inconsistencies. (trunk r8418)

svn path=/main/branches/2.1.2/; revision=8419

17 years agoIn fetch(), replace checksum_failure_counts dict with single
Zac Medico [Sun, 4 Nov 2007 05:36:19 +0000 (05:36 -0000)]
In fetch(), replace checksum_failure_counts dict with single
int counter. (trunk r8416)

svn path=/main/branches/2.1.2/; revision=8417

17 years agoGenerate a usage.obsolete warning whenever
Zac Medico [Sun, 4 Nov 2007 03:33:32 +0000 (03:33 -0000)]
Generate a usage.obsolete warning whenever
-* is found in KEYWORDS. (trunk r8414)

svn path=/main/branches/2.1.2/; revision=8415

17 years agoMake fetch() behave like the ebuild has RESTRICT="primaryuri"
Zac Medico [Sun, 4 Nov 2007 02:15:39 +0000 (02:15 -0000)]
Make fetch() behave like the ebuild has RESTRICT="primaryuri"
after 2 checksum failures for a fetched file. This should
increase the probability of fetching the correct file before
the maximum number of tries is reached. (trunk r8412)

svn path=/main/branches/2.1.2/; revision=8413

17 years agoFor sanity, pass an actual list of keys into aux_get() instead
Zac Medico [Sun, 4 Nov 2007 00:25:10 +0000 (00:25 -0000)]
For sanity, pass an actual list of keys into aux_get() instead
of iterating over a set that happens to be mutable (though it
remains constant in practice). (trunk r8410)

svn path=/main/branches/2.1.2/; revision=8411

17 years agoBug #197797 - Do not actively clear o+rx permission bits
Zac Medico [Sat, 3 Nov 2007 23:49:19 +0000 (23:49 -0000)]
Bug #197797 - Do not actively clear o+rx permission bits
on the /var/lib/portage directory. Only clear the o+w
bits. This allows users who aren't in the portage group
to have read access to the world file by default, but
administrators can explicitly chmod o-rx that directory
if necessary, and portage will leave those bits alone.

This makes the permission settings in dblink.treewalk()
consistent with those that are already defined in
config._init_dirs().
(trunk r8408)

svn path=/main/branches/2.1.2/; revision=8409

17 years agoCall die() so that the $TMP directory is always properly
Zac Medico [Sat, 3 Nov 2007 22:51:50 +0000 (22:51 -0000)]
Call die() so that the $TMP directory is always properly
cleaned up. (trunk r8405)

svn path=/main/branches/2.1.2/; revision=8407

17 years agoif mode=1 and `dialog` is not usable, abort #197990 by DominikBuerkle
Zac Medico [Sat, 3 Nov 2007 22:50:59 +0000 (22:50 -0000)]
if mode=1 and `dialog` is not usable, abort #197990 by DominikBuerkle
(trunk r8402)

svn path=/main/branches/2.1.2/; revision=8406

17 years agoBug #197965 - When fetch() encounters a checksum failure,
Zac Medico [Sat, 3 Nov 2007 22:18:42 +0000 (22:18 -0000)]
Bug #197965 - When fetch() encounters a checksum failure,
look for an identical file from a previous checksum failure
in order to avoid consuming unnecessary disk space with
duplicate files. (trunk r8401)

Bug #197965 - Make fetch() bail out after 5 checksum
failures for a particular file since downloading the
same file repeatedly from every single available
mirror is a waste of bandwidth and time. (trunk r8403)

svn path=/main/branches/2.1.2/; revision=8404

17 years agoFix update_config_files() so that it uses update_dbentry()
Zac Medico [Sat, 3 Nov 2007 19:19:56 +0000 (19:19 -0000)]
Fix update_config_files() so that it uses update_dbentry()
to handle update commands since that already supports
slotmove commands for SLOT atoms. (trunk r8397)

svn path=/main/branches/2.1.2/; revision=8398

17 years agoRevert to backward compatible masking behavior with respect
Zac Medico [Sat, 3 Nov 2007 17:13:18 +0000 (17:13 -0000)]
Revert to backward compatible masking behavior with respect
to -* in KEYWORDS and package.keywords since -* behavior
changes are not essential at this time and a change in this
long standing behavior has potential to confuse lots of
users.

svn path=/main/branches/2.1.2/; revision=8395

17 years agoIn portage.fetch(), condense digest check output to a single
Zac Medico [Sat, 3 Nov 2007 16:48:06 +0000 (16:48 -0000)]
In portage.fetch(), condense digest check output to a single
line for all digests. (trunk r8385)

svn path=/main/branches/2.1.2/; revision=8394

17 years agoRemove redundant code from previous commit. (trunk r8392)
Zac Medico [Sat, 3 Nov 2007 16:38:03 +0000 (16:38 -0000)]
Remove redundant code from previous commit. (trunk r8392)

svn path=/main/branches/2.1.2/; revision=8393

17 years agoBug #197932 - Make dbapi._cpv_sort_ascending()
Zac Medico [Sat, 3 Nov 2007 16:34:57 +0000 (16:34 -0000)]
Bug #197932 - Make dbapi._cpv_sort_ascending()
preserve explicit -r0 for consistency in findname
and aux_get calls. (trunk r8390)

svn path=/main/branches/2.1.2/; revision=8391

17 years agoSynchronize getmaskingreason() and getmaskingstatus() with
Zac Medico [Sat, 3 Nov 2007 08:21:10 +0000 (08:21 -0000)]
Synchronize getmaskingreason() and getmaskingstatus() with
trunk so that behavior is the same for things like SLOT deps
and -* in package.keywords.

svn path=/main/branches/2.1.2/; revision=8386

17 years agoSort scanlist and ebuildlist to ensure that repoman always
Zac Medico [Fri, 2 Nov 2007 22:39:58 +0000 (22:39 -0000)]
Sort scanlist and ebuildlist to ensure that repoman always
processes packages in a predictable order. (trunk r8383)

svn path=/main/branches/2.1.2/; revision=8384

17 years agoMake portdbapi.gvisible() use portdbapi._aux_cache_keys
Zac Medico [Fri, 2 Nov 2007 08:52:37 +0000 (08:52 -0000)]
Make portdbapi.gvisible() use portdbapi._aux_cache_keys
for metadata pulls. (trunk r8381)

svn path=/main/branches/2.1.2/; revision=8382

17 years agoReturn early from config._getMaskAtom() as soon as a matching
Zac Medico [Fri, 2 Nov 2007 08:35:07 +0000 (08:35 -0000)]
Return early from config._getMaskAtom() as soon as a matching
unmask atom is found. (trunk r8379)

svn path=/main/branches/2.1.2/; revision=8380

17 years agoOptimize merge order to try and select nodes that only have
Zac Medico [Fri, 2 Nov 2007 07:43:53 +0000 (07:43 -0000)]
Optimize merge order to try and select nodes that only have
unsatisfied PDEPEND slightly earlier. This solves a problem
with xorg-server being merged too early during an all binary
install (since DEPEND is ignored for binaries), triggering
built_with_use() calls to fail as reported in bug #189966.
Since DEPEND is discarded in cases like this, it is
important to exploit the difference between PDEPEND and
RDEPEND in order to optimize merge order. Without this
optimization, the merge order is technically correct, but
not as optimal as it should be and has lots of potential to
trigger issues with built_with_use() or similar things that
require better optimization of merge order.
(trunk r8357:8359)

Fix ignore_priority logic in depgraph.altlist() in order
to handle some cases where it was possible for nodes to
be selected without their PDEPENDs being propperly added
to the asap_nodes list. (trunk r8360)

svn path=/main/branches/2.1.2/; revision=8378

17 years agoRemove an extra \$ from the EbuildQuote.var_reference regex
Zac Medico [Fri, 2 Nov 2007 07:30:30 +0000 (07:30 -0000)]
Remove an extra \$ from the EbuildQuote.var_reference regex
so that it will properly match things like variable references
without braces, like $S. (trunk r8354)

Properly escape { and } characters in regular expressions even
though it seems to work either way. (trunk r8355)

svn path=/main/branches/2.1.2/; revision=8377

17 years agoAdd a check for redundant cd "${S}" statements on the first
Zac Medico [Fri, 2 Nov 2007 07:24:55 +0000 (07:24 -0000)]
Add a check for redundant cd "${S}" statements on the first
line of src_(compile|install|test) ebuild methods. Thanks to
Petteri Räty <betelgeuse@gentoo.org> for this patch.
(trunk r8351 and r8353)

svn path=/main/branches/2.1.2/; revision=8376

17 years agoFix diefunc() so that it doesn't report that the ebuild is from
Zac Medico [Fri, 2 Nov 2007 07:18:43 +0000 (07:18 -0000)]
Fix diefunc() so that it doesn't report that the ebuild is from
an overlay when EMERGE_FROM == binary. (trunk r8349)

svn path=/main/branches/2.1.2/; revision=8375

17 years agoUpdate the FEATURES=mirror docs to more accurately reflect behavior.
Zac Medico [Fri, 2 Nov 2007 07:17:45 +0000 (07:17 -0000)]
Update the FEATURES=mirror docs to more accurately reflect behavior.
(trunk r8348)

Bug #197594 - Document FEATURES="lmirror". (trunk r8373)

svn path=/main/branches/2.1.2/; revision=8374

17 years agoRemove a few unused depgraph attributes. (trunk r8345)
Zac Medico [Fri, 2 Nov 2007 06:50:18 +0000 (06:50 -0000)]
Remove a few unused depgraph attributes. (trunk r8345)

svn path=/main/branches/2.1.2/; revision=8372

17 years agoOptimize stdout_spinner.update() methods so that they don't
Zac Medico [Fri, 2 Nov 2007 06:46:34 +0000 (06:46 -0000)]
Optimize stdout_spinner.update() methods so that they don't
waste cpu time by flushing output to the tty too frequently.
(trunk r8332)

svn path=/main/branches/2.1.2/; revision=8371

17 years agoIn portage.fetch(), condense digest check output to a single
Zac Medico [Fri, 2 Nov 2007 06:41:21 +0000 (06:41 -0000)]
In portage.fetch(), condense digest check output to a single
line for all digests. (trunk r8316)

svn path=/main/branches/2.1.2/; revision=8370

17 years agoOptimize repoman visibility checks to access as little
Zac Medico [Fri, 2 Nov 2007 06:39:03 +0000 (06:39 -0000)]
Optimize repoman visibility checks to access as little
metadata as possible. (improves performance especially
in cases where metadata needs to be generated). This
works by starting at the lowest version since that's
most likely to have keywords and it returns as soon as
the first visible package is found. (trunk r8309)

svn path=/main/branches/2.1.2/; revision=8369

17 years agoOptimize repoman to share portdbapi.cp_list() results
Zac Medico [Fri, 2 Nov 2007 06:25:08 +0000 (06:25 -0000)]
Optimize repoman to share portdbapi.cp_list() results
between all profiles since those results never change.
The cached results also propagate to the xmatch
match-all when appropriate (old-style virtuals are
excluded since they are profile dependent).
(trunk r8313)

svn path=/main/branches/2.1.2/; revision=8368

17 years agoSort all dbapi.cp_list() results in ascending order and
Zac Medico [Fri, 2 Nov 2007 06:20:49 +0000 (06:20 -0000)]
Sort all dbapi.cp_list() results in ascending order and
cache the results when possible. The order is preserved
in dbapi.match() so those results are also sorted.
(trunk r8329)

svn path=/main/branches/2.1.2/; revision=8367

17 years agoFactor the KEYWORDS masking logic out of portdbapi.visible()
Zac Medico [Fri, 2 Nov 2007 06:05:00 +0000 (06:05 -0000)]
Factor the KEYWORDS masking logic out of portdbapi.visible()
and move it to config._getMissingEeywords(). (trunk r7997)

Factor package.mask and profile masking logic out of
portdbapi.visible() and move it to config._getMaskAtom()
and _getProfileMaskAtom(). (trunk r8001)

These are prerequisites for important repoman optimizations
that will be ported from trunk.

svn path=/main/branches/2.1.2/; revision=8365

17 years agoRewrite the dblink.getcontents() code to use str.split(" ")
Zac Medico [Fri, 2 Nov 2007 05:29:03 +0000 (05:29 -0000)]
Rewrite the dblink.getcontents() code to use str.split(" ")
for splitting CONTENTS lines so that even file paths that
end with spaces can be handled. This patch makes the fix for
bug #196836#c6 more complete. Some code for parsing old
malformed symlink entries has been removed sinces it's
probably not useful or worth maintaining anymore.
(trunk r8337)

svn path=/main/branches/2.1.2/; revision=8364

17 years agoIf the title string is too big then xtermTitle() can
Zac Medico [Fri, 2 Nov 2007 05:15:35 +0000 (05:15 -0000)]
If the title string is too big then xtermTitle() can
misbehave by causing the terminal to echo some of the
characters and generate a "beep" sound. (trunk r8289)

svn path=/main/branches/2.1.2/; revision=8363

17 years agoMake world atoms non-greedy for SLOTs in action_depclean()
Zac Medico [Fri, 2 Nov 2007 05:11:15 +0000 (05:11 -0000)]
Make world atoms non-greedy for SLOTs in action_depclean()
and depgraph.xcreate() since users can simply add SLOT atoms
to world for any specific SLOTs that they want to keep.

svn path=/main/branches/2.1.2/; revision=8362

17 years agoprotect variables specified in PROFILE_ONLY_VARIABLES from
Zac Medico [Fri, 2 Nov 2007 04:56:09 +0000 (04:56 -0000)]
protect variables specified in PROFILE_ONLY_VARIABLES from
being set by the user (trunk r8251:8253, r8255, and r8259)

svn path=/main/branches/2.1.2/; revision=8361

17 years agoDon't show the "checking files for package collisions" message v2.1.3.16
Zac Medico [Tue, 23 Oct 2007 05:44:11 +0000 (05:44 -0000)]
Don't show the "checking files for package collisions" message
when --quiet is enabled. (trunk r8248)

svn path=/main/branches/2.1.2/; revision=8249

17 years agoFix the version Id tag. (trunk r8243)
Zac Medico [Tue, 23 Oct 2007 02:41:45 +0000 (02:41 -0000)]
Fix the version Id tag. (trunk r8243)

svn path=/main/branches/2.1.2/; revision=8244

17 years agoFix config.setinst() to return early when the given
Zac Medico [Tue, 23 Oct 2007 01:13:06 +0000 (01:13 -0000)]
Fix config.setinst() to return early when the given
package already provides the virtual. (trunk r8240)

svn path=/main/branches/2.1.2/; revision=8241

17 years agoRemove a redundant self.treeVirtuals deepcopy from the
Zac Medico [Tue, 23 Oct 2007 00:50:42 +0000 (00:50 -0000)]
Remove a redundant self.treeVirtuals deepcopy from the
config constructor. (trunk r8238)

svn path=/main/branches/2.1.2/; revision=8239

17 years agoBug #196652 - Check for useless ABOUT-NLS|COPYING|LICENSE
Zac Medico [Tue, 23 Oct 2007 00:32:07 +0000 (00:32 -0000)]
Bug #196652 - Check for useless ABOUT-NLS|COPYING|LICENSE
files in dodoc arguments. (trunk r8236)

svn path=/main/branches/2.1.2/; revision=8237

17 years agoIn depgraph.create(), if a direct circular dependency is
Zac Medico [Mon, 22 Oct 2007 22:41:32 +0000 (22:41 -0000)]
In depgraph.create(), if a direct circular dependency is
not an unsatisfied buildtime dependency then drop it here
since otherwise it can skew the merge order calculation
in an unwanted way. (trunk r8233)

svn path=/main/branches/2.1.2/; revision=8234

17 years agoFix portage_exception namespace typo.
Zac Medico [Mon, 22 Oct 2007 21:09:28 +0000 (21:09 -0000)]
Fix portage_exception namespace typo.

svn path=/main/branches/2.1.2/; revision=8232

17 years agoRemove slashes that cause problems when unpacking files with
Zac Medico [Mon, 22 Oct 2007 20:33:08 +0000 (20:33 -0000)]
Remove slashes that cause problems when unpacking files with
relative paths (bug #196565) (trunk r8200)

svn path=/main/branches/2.1.2/; revision=8231

17 years agoBug #196435 - Add some more references to quickpkg(1) since
Zac Medico [Mon, 22 Oct 2007 20:28:22 +0000 (20:28 -0000)]
Bug #196435 - Add some more references to quickpkg(1) since
sometimes people don't realize that it exists. (trunk r8185)

svn path=/main/branches/2.1.2/; revision=8230

17 years agoIn depgraph.create(), don't ignore direct circular dependencies
Zac Medico [Mon, 22 Oct 2007 18:49:02 +0000 (18:49 -0000)]
In depgraph.create(), don't ignore direct circular dependencies
anymore since altlist() is able to handle it properly in cases
where the dependency is satisfied. If the dep is unsatisfied
then it can not be ignored. (trunk r8225)

Allow the depgraph to add old-style virtual providers but prefer
any pre-existing providers over new ones that are added. This
prevents things like ghc-6.4.2 from selecting itself to satisfy
it's own virtual/ghc dependency (creating a circular dependency)
in cases where it should select the default ghc-bin provider.
(trunk r8185:8187)

svn path=/main/branches/2.1.2/; revision=8229

17 years agoBug #196680 - Handle a CacheError inside mirror_cache() when
Zac Medico [Mon, 22 Oct 2007 03:52:44 +0000 (03:52 -0000)]
Bug #196680 - Handle a CacheError inside mirror_cache() when
reading from the source cache. (trunk r8222)

svn path=/main/branches/2.1.2/; revision=8223

17 years agoBug #196537 - Make portageq check that the <root> parameter
Zac Medico [Sun, 21 Oct 2007 06:24:20 +0000 (06:24 -0000)]
Bug #196537 - Make portageq check that the <root> parameter
is an existing directory and exit gracefully if not.
(trunk r8195)

svn path=/main/branches/2.1.2/; revision=8196

17 years agoHandle EnvironmentError instead of OSError since open()
Zac Medico [Thu, 18 Oct 2007 21:10:21 +0000 (21:10 -0000)]
Handle EnvironmentError instead of OSError since open()
actually raises IOError. Also, treat a missing SLOT
file as SLOT="" since it is currently possible to
install an ebuild with an undefined SLOT even though
repoman generates a SLOT.missing error with such an
ebuild. (trunk r8174)

svn path=/main/branches/2.1.2/; revision=8175

17 years agoBug #195375 - Make dblink.treewalk() read inforoot/SLOT since
Zac Medico [Thu, 18 Oct 2007 19:33:04 +0000 (19:33 -0000)]
Bug #195375 - Make dblink.treewalk() read inforoot/SLOT since
it differs from the expected SLOT value when when USE=multislot
is enabled. A warning message will be shown if the slot differs
and --quiet mode is not enabled. (trunk r8172)

svn path=/main/branches/2.1.2/; revision=8173

17 years agoAdjust quote usage in collision-protect eerror
Zac Medico [Thu, 18 Oct 2007 03:20:53 +0000 (03:20 -0000)]
Adjust quote usage in collision-protect eerror
output. (trunk r8170)

svn path=/main/branches/2.1.2/; revision=8171

17 years agoFix collision-protect so that it properly cancels the
Zac Medico [Thu, 18 Oct 2007 02:41:45 +0000 (02:41 -0000)]
Fix collision-protect so that it properly cancels the
preinst phase like it used to. (trunk r8168)

svn path=/main/branches/2.1.2/; revision=8169

17 years agoFix the normalize_needed regex to properly match //
Zac Medico [Wed, 17 Oct 2007 21:44:42 +0000 (21:44 -0000)]
Fix the normalize_needed regex to properly match //
anywhere in the path. Also add support for detection
of . or .. where appropriate. (trunk r8166)

svn path=/main/branches/2.1.2/; revision=8167

17 years agoBug #196043 - Unify the ouput handling for file collisions
Zac Medico [Wed, 17 Oct 2007 20:48:08 +0000 (20:48 -0000)]
Bug #196043 - Unify the ouput handling for file collisions
so that similar eerror messages are generated whether or
not collision-protect is enabled. (trunk r8163)

svn path=/main/branches/2.1.2/; revision=8165

17 years agoAlways unlink the .installed flag prior to merge since
Zac Medico [Wed, 17 Oct 2007 20:41:22 +0000 (20:41 -0000)]
Always unlink the .installed flag prior to merge since
portage.movefile() never leaves intact. (trunk r6986)

svn path=/main/branches/2.1.2/; revision=8164

17 years agoAdd missing "to" to fix grammar. (trunk r8161)
Zac Medico [Wed, 17 Oct 2007 04:36:19 +0000 (04:36 -0000)]
Add missing "to" to fix grammar. (trunk r8161)

svn path=/main/branches/2.1.2/; revision=8162

17 years agoBug #196043 - Update the file collision ewarn notice
Zac Medico [Wed, 17 Oct 2007 03:01:41 +0000 (03:01 -0000)]
Bug #196043 - Update the file collision ewarn notice
to try and clarify the cases when a bug should NOT
be filed. Also, recommend the new `portageq owners /
<filename>` command since it works properly even
when paths are ambiguous due to symlinked
directories. (trunk r8155)

svn path=/main/branches/2.1.2/; revision=8160

17 years agoBug #196043 - Implement a `portageq owners <root> [<filename>]+`
Zac Medico [Wed, 17 Oct 2007 02:59:48 +0000 (02:59 -0000)]
Bug #196043 - Implement a `portageq owners <root> [<filename>]+`
command that is suitable for identifying all packages that own
one or more files when a file collision has occurred. This uses
dblink.isowner() so that the query works properly even when
paths are ambiguous due to symlinked directories. (trunk r8154)

svn path=/main/branches/2.1.2/; revision=8159

17 years agoOptimize dblink.isowner() to use fewer stat calls by
Zac Medico [Wed, 17 Oct 2007 02:58:06 +0000 (02:58 -0000)]
Optimize dblink.isowner() to use fewer stat calls by
only collecting stat results for parent directories.
This provides equivalent accuracy to the previous
approach but will perform much better when used to
scan all installed packages for owners in the event
of a file collision. (trunk r8153)

svn path=/main/branches/2.1.2/; revision=8158

17 years agoFix a typo.
Zac Medico [Wed, 17 Oct 2007 02:56:19 +0000 (02:56 -0000)]
Fix a typo.

svn path=/main/branches/2.1.2/; revision=8157

17 years agoIn dblink.getcontents(), use a regular expression to detect
Zac Medico [Wed, 17 Oct 2007 02:51:48 +0000 (02:51 -0000)]
In dblink.getcontents(), use a regular expression to detect
when path normalization is required. Also, only join with
${ROOT} when necessary. This allows unnecessary normpath
and join calls to be optimized away in the general case,
reducing the cpu time for `equery belongs <filename>` by
about 50%. (trunk r8150:8152)

svn path=/main/branches/2.1.2/; revision=8156