portage.git
19 years agoMerged from trunk 5334:5335
Fabian Groffen [Wed, 20 Dec 2006 19:32:07 +0000 (19:32 -0000)]
Merged from trunk 5334:5335

Fix broken exception handling syntax causing strange exception reported
in bug #158608.

svn path=/main/branches/prefix/; revision=5336

19 years agoMerged from trunk 5320:5333
Fabian Groffen [Wed, 20 Dec 2006 18:11:14 +0000 (18:11 -0000)]
Merged from trunk 5320:5333

For bug #158503, allow --nodeps to override blockers.

Increase cache hits in portdbapi.xmatch().

Use a separate digraph to store parent/child relationships (PDEPEND
relationships are not reversed) so that relationship is always known in
case a slot collision occurs.

New elog modules for dismerging messages into a single file/mail
(genone)

Make binarytree.move_ent() properly update PF.

For bug #158558, fix broken ebuild rename logic in vardbapi.move_ent().

For bug #158558, make the unmerge phase do automatic cleanup for broken
vardbapi.move_ent() in portage versions before 2.1.2.

Fix an import statement typo.

For bug #158608, don't attempt to use distlocks when it's detected that
the filesystem is readonly (unless "skiprocheck" is in FEATURES for some
strange reason).

Add missing newlines to the warning message that's printed when the user
has distlocks enabled together with skiprocheck and the filesystem is
readonly.

Give the user some advice whenever an invalid dependency string is
encountered.

Fix the invalid dependency message so there's no confusion about which
package has the problem.

svn path=/main/branches/prefix/; revision=5334

19 years agoMerged from trunk 5305:5318
Fabian Groffen [Mon, 18 Dec 2006 20:27:05 +0000 (20:27 -0000)]
Merged from trunk 5305:5318

remove pointless redirects to /dev/null when using hasq() (SpankMan)

force environment.bz2 to be clobbered if it already exists (SpankMan)

In depgraph.altlist(), pop as many leaf nodes as possible when no
relationship has been ignored.  This can halve the time taken for a
large merge order calculation.

Don't optimize depgraph.altlist() in reversed mode since the
optimization destroys --tree ouput.

Add --debug support for --depclean.

Do some minor cleanup of the --depclean code.

Make depclean skip empty depstrings.

Disable the spinner when --debug is enabled so that it doesn't
interfere.

Catch PortageException from portdbapi.aux_get since it can happen when
gpg is in FEATURES.

For bug #158354, make "No" the default response for unmerge actions.

svn path=/main/branches/prefix/; revision=5320

19 years agoMerged from trunk 5295:5305
Fabian Groffen [Mon, 18 Dec 2006 20:22:40 +0000 (20:22 -0000)]
Merged from trunk 5295:5305

Cache blocked slots for better efficiency.

For bug #157897, show parent nodes in order to help the user decide
about what action to take.

Cache KEYWORDS and EAPI metadata values in order to speed up
portdbapi.gvisible() calls.  This greatly improves repoman performance
(help emerge a little too).

Make sure eapi is defined in order to prevent a NameError.

Split ACCEPT_KEYWORDS before entering the loop for better efficiency.

Make repoman cache per-profile xmatch results.

For bug #158177, force configure scripts that automatically detect
ccache to respect FEATURES="-ccache".  Thanks to Horst Schirmeier
<gentoo@schirmeier.com> for this suggestion.

Fix global updates error handling to prevent a traceback with python-2.5
as reported in bug #158264.

Make dep_check validate all depstring atoms in order to prevent problems
from occuring later due to unexpected invalid atoms.

Make use_reduce raise an InvalidDependString exception for use?
conditionals that aren't followed by parenthesis and add appropriate
exception handling in dep_check.

svn path=/main/branches/prefix/; revision=5319

19 years agoMerged from trunk 5284:5294
Fabian Groffen [Thu, 14 Dec 2006 15:03:58 +0000 (15:03 -0000)]
Merged from trunk 5284:5294

For bug #157897, handle the case of multiple versions within a single
package slot have been pulled into the dependency graph.  If possible,
the package that has already been pulled in will be reused.  Otherwise,
an error message will advise the user to mask an unwanted version.

handle --cols when displaying blockers (SpankMan)

For bug #157897, add slot collision handling in depgraph.create(), since
create() is called from places other than select_dep().

Update the comment about depgraph.pkg_node_map since it now maps all
nodes added to the graph.

Use depgraph.pkg_node_map so simplify comparison against existing nodes
at the  beginning of depgraph.create().

Fix the --onlydeps conditional logic in depgraph.create().  These aren't
real nodes and shouldn't be added to the digraph, etc...

Remove redundant priority handling since that's always handled in
select_dep() for nodes that have parents.

Remove pointless unpacking of the parent node.

Make --columns blockers output more consistent when --quiet is not
enabled.

svn path=/main/branches/prefix/; revision=5295

19 years agoMerged from trunk 5271:5283
Fabian Groffen [Wed, 13 Dec 2006 16:22:34 +0000 (16:22 -0000)]
Merged from trunk 5271:5283

For bug #157823, ignore blocker collisions between two packages that are
already installed if no merge is currently scheduled for either of those
package slots.  These blockers will be handled as necessary the next
time that a merge of either package is triggered.

Make the fetch phase bail out if FETCHCOMMAND or RESUMECOMMAND are
missing.  Thanks to Flameeyes for reporting.

All portage.fetch() to succeed even if FETCHCOMMAND and RESUMECOMMAND
aren't defined.

Centralize all of the vardb metadata mangling in FakeVartree.

Store dependency metadata in depgraph.mydbapi so that it can be used in
place of the portdb for optimized dep_check calls in
depgraph.validate_blockers().

Optimize dep_check calls in depgraph.validate_blockers() by using a
fakedbapi instance instead of the real pordbapi (minimizes available
matches).

For higher efficiency, call self.__int__() instead of int(self).

For bug #157897, only let depgraph.create() inject "merge" nodes into
the final state dbapi.

For bug #157897, ensure that only "merge" nodes are stored in
digraph.pkg_node_map.

Move the biolerplate cpv_all() implementation from portdbapi to dbapi.

Track slot atom to digraph node mappings as the depgraph is built.  This
mapping will be used to detect node collisions for bug #157897.

Remove redundant digraph.pkg_node_map node insertions.  Once per
digraph.create() call will cover all nodes.

svn path=/main/branches/prefix/; revision=5284

19 years agoMerged from trunk 5265:5270
Fabian Groffen [Mon, 11 Dec 2006 19:42:42 +0000 (19:42 -0000)]
Merged from trunk 5265:5270

Ignore blockers when "--buildpkgonly" is enabled.

Ensure that the root of the vdb exists before attempting to lock it.
Thanks to Flameeyes for reporting.

When there are multiple packages occupying the same slot, only consider
the one with the highest COUNTER.  Thanks to leio for reporting.

For bug #157823, don't forget to split the USE.

svn path=/main/branches/prefix/; revision=5271

19 years agoMerged from trunk 5261:5264
Fabian Groffen [Sun, 10 Dec 2006 21:53:39 +0000 (21:53 -0000)]
Merged from trunk 5261:5264

Don't collapse the tuple into a hash, since dict can use __eq__ to avoid
problems with hash collisions.  Thanks to Brian Harring for reporting.

For bug #157734, fix repoman isvalidatom() checks.  Thanks to Brian
Harring for the patch.

Add an allow_blockers parameter to isvalidatom so that the behavior is
optional.  Thanks to Brian Harring for the suggestion.

svn path=/main/branches/prefix/; revision=5265

19 years agoMerged from trunk 5259:5260
Fabian Groffen [Sun, 10 Dec 2006 16:16:47 +0000 (16:16 -0000)]
Merged from trunk 5259:5260

To minimize memory consumption and maximize performance, use hash values
for cache keys.

svn path=/main/branches/prefix/; revision=5261

19 years agoMerged from trunk 5247:5256
Fabian Groffen [Sun, 10 Dec 2006 11:23:47 +0000 (11:23 -0000)]
Merged from trunk 5247:5256

For bug #128809, process blockers for all installed packages.  Due to
the performance penalty incurred by additional dep_check calls, this is
only enabled with the --deep option.

Avoid unnecessary dbapi.cp_list() calls inside cpv_expand().

Cache the results of match_from_list() calls.

Cache results of dep_getcpv() calls.

Use dep_getcpv() inside dep_expand() for code sharing and caching.

Cache the results of fakedbapi.match() calls and clear the cache
automatically when necessary.

Initialize the match cache in the bindbapi constructor.

For bug #128809, optimize dep_check calls and enable the blocker
detection by default since the performance now seems acceptable.

Make sure the SLOT comes from the vardb instead of the portdb (for
multislot,   etc..). Thanks to jakub for reporting.

svn path=/main/branches/prefix/; revision=5259

19 years agoMerged from trunk 5238:5247
Fabian Groffen [Sun, 10 Dec 2006 11:20:04 +0000 (11:20 -0000)]
Merged from trunk 5238:5247

Add use.force support to dep_check for repoman especially. Thanks to
Flameeyes for reporting and tesing.

Use portage.isvalidatom() for atom validation in repoman.

Make isvalidatom() (and thus repoman) reject atoms containing |()
characters.  Thanks to Brian Harring for the suggestion.

Add ? to the invalid atom characters.

Clean up depstring/atom splitting and filtering.

For bug #157369, clean  when  cleanup has been triggered by changed
timestamps.  Also, allow FEATURES=keepwork to override the ebuild mtime
check.

This patch cleans up the blocker validation logic.  Unlike the previous
implementation, this one carefully considers each parent/block package
relationship in order to ensure that no unresolved blocks slip through.

Don't attempt to enforce merge order unless the blocker parent is
actually a "merge" node.

Escape a newline from the previous commit.

svn path=/main/branches/prefix/; revision=5258

19 years agoMerged from trunk 5226:5238 (+ one added modification in bin/repoman)
Fabian Groffen [Sun, 10 Dec 2006 11:16:12 +0000 (11:16 -0000)]
Merged from trunk 5226:5238 (+ one added modification in bin/repoman)

Indicate test failure with an exit code.

Remove all traces of FEATURES=cvs since code for that feature no longer
exists  (apparently since portage-2.1).
+ Remove traces of FEATURES=svn for the same reason

Clean up vardbapi.aux_get().

Remove locking from dbapi.aux_update() implementations so that the
caller can handle locking instead.

Go ahead and populate depgraph.mydbapi even when --emptytree is enabled
since it doesn't matter anymore (dep_check now returns all deps anyway).

Move the reset of the per-root initializations into the loop.

Remove unused depgraph.match() method.

Use tuples for digraph nodes in order to avoid lots of pointless join
and split calls.

Split some global updates functions out of depgraph and use them for
depclean when necessary.

Fix broken SLOT update logic in fakedbapi.cpv_inject().

adjust QA_* variable names for complex values of  like x86-fbsd

svn path=/main/branches/prefix/; revision=5257

19 years agoMerged from trunk 5212:5219
Fabian Groffen [Fri, 8 Dec 2006 08:12:21 +0000 (08:12 -0000)]
Merged from trunk 5212:5219

Add pretty basic vercmp unit testing...need more cases

Make all lock files hidden for bug #142369.

minor syntax changes ( in is faster than has_key ) and docstrings

Allow searching for action terms again

add some portage_util tests

Avoid bogus 'Deprecated use of action' warnings for valid commands such
as `emerge -s sync`.

Simplfy deprecated action parsing logic.

svn path=/main/branches/prefix/; revision=5226

19 years agoMerged from trunkk 5205:5212
Fabian Groffen [Fri, 8 Dec 2006 08:08:58 +0000 (08:08 -0000)]
Merged from trunkk 5205:5212

Share the same config instance between portagetree and portdbapi
instances since clone isn't needed here. Also, trigger population of
virtuals prior to cloning  in emerge.  This reduces the number of times
the virtuals are populated from 3  to just 1.

Enable FakeVartree to populate the virtuals so that the vdb doesn't have
to be  scanned separately.

portage_versions lacks a header or copyright notice :x

Catch an exception instead of using a redundant os.access call.

A quick docstring for vercmp.

s/zip/izip/  Thanks to Brian Harring for the suggestion.

s/zip/izip/ some more

svn path=/main/branches/prefix/; revision=5225

19 years agoMerged from trunk 5196:5205
Fabian Groffen [Fri, 8 Dec 2006 08:05:32 +0000 (08:05 -0000)]
Merged from trunk 5196:5205

For bug #157385, enable portage.digestgen() to fetch any distfiles for
which there are no existing digests.

Fix broken SRC_URI logic from the previous commit.

Fix broken SRC_URI logic in doebuild.

Make repoman bail out if it's unable to generate the Manifest.

For bug #157393, fix up ebuild path normalization so that it's
compatible with portdbapi handling and works properly with symlinks
(like crossdev creates).

Make sure the ebuild path is properly normalized.

Revert r5175 for bug #152127 since the original = behavior seems more
desirable.  We can change the >= and <= behavior instead.

For bug #152127, make vercmp give less value to implcit .0, so two
versions that aren't literally equal are not ambiguously given the same
value (in sorting, for example).

svn path=/main/branches/prefix/; revision=5224

19 years agoMerged from trunk 5188:5196
Fabian Groffen [Fri, 8 Dec 2006 08:01:42 +0000 (08:01 -0000)]
Merged from trunk 5188:5196

Use a fake vartree for depgraph calculations.  This minimizes the time
that a lock needs to be held on the vardb, and allows in-memory global
updates when necessary.

Delete the depgraph when it's no longer needed.

Use FakeVartree for vardb lock/cache during depclean.

Allow depclean to silently skip packages unmerged behind it's back.

Fix depclean so the fake vartree is used in dep_check calls.

Always silently ingnore missing packages during unmerge.

Remove all traces of the unmerge raise_on_missing parameter.

Fix indentation.

svn path=/main/branches/prefix/; revision=5223

19 years agoOops, commands was not imported, only the function, so no need to call
Fabian Groffen [Wed, 6 Dec 2006 21:09:00 +0000 (21:09 -0000)]
Oops, commands was not imported, only the function, so no need to call
it absolute.

svn path=/main/branches/prefix/; revision=5188

19 years agoMerged from trunk 5183:5185
Fabian Groffen [Wed, 6 Dec 2006 20:42:14 +0000 (20:42 -0000)]
Merged from trunk 5183:5185

Remove dependence on the vartree api by using equivalent vardbapi calls.

Only call calc_changelog if there is an installed version in the same
slot.

svn path=/main/branches/prefix/; revision=5187

19 years agocheck given paths first, then fall back to some hard-coded ones.
Fabian Groffen [Wed, 6 Dec 2006 20:40:01 +0000 (20:40 -0000)]
check given paths first, then fall back to some hard-coded ones.

svn path=/main/branches/prefix/; revision=5186

19 years agoAdd missing slash
Fabian Groffen [Wed, 6 Dec 2006 20:26:31 +0000 (20:26 -0000)]
Add missing slash

svn path=/main/branches/prefix/; revision=5183

19 years agoMerged from trunk 5179:5180
Fabian Groffen [Wed, 6 Dec 2006 19:43:53 +0000 (19:43 -0000)]
Merged from trunk 5179:5180

Remove unused depgraph.is_newer_ver_installed() method.

svn path=/main/branches/prefix/; revision=5182

19 years agoPimp Repoman version thingy such that I can better see where I did what.
Fabian Groffen [Wed, 6 Dec 2006 19:41:51 +0000 (19:41 -0000)]
Pimp Repoman version thingy such that I can better see where I did what.

svn path=/main/branches/prefix/; revision=5181

19 years agoMerged from trunk 5177:5178
Fabian Groffen [Wed, 6 Dec 2006 19:28:18 +0000 (19:28 -0000)]
Merged from trunk 5177:5178

Implement fakedbapi.aux_update().

svn path=/main/branches/prefix/; revision=5179

19 years agoMerged from trunk 5172:5176
Fabian Groffen [Wed, 6 Dec 2006 19:26:56 +0000 (19:26 -0000)]
Merged from trunk 5172:5176

For bug #157134, make `emerge --digest` automatically reload the config
with FEATURES=digest enabled globally.

Fix up mtimedb["ldpath"] references broken by the previous commit.

Make match_to_list = behavior consistent with >= and <= for bug #152127.

Sync match_to_list >=, <=, etc.. code with the new = code.

svn path=/main/branches/prefix/; revision=5177

19 years agoMerged from trunk 5165:5171
Fabian Groffen [Mon, 4 Dec 2006 20:35:50 +0000 (20:35 -0000)]
Merged from trunk 5165:5171

When portdbapi.aux_get() generates a KeyError in
portage.getmaskingstatus(), handle it by reporting "corruption".

Make `repoman fix` work with the new ebuild Manifest checks during
depend phase.

Update the RESTRICT=binchecks docs.  Thanks to jakub for the suggestion
and antarus for the patch.

For `ebuild --force digest`, exempt the depend phase from Manifest
checks.

Use portage.chdir() instead of os.chdir() in order to avoid an 'OSError:
[Errno 2] No such file or directory' if the working directory doesn't
exist.  Thanks to Caster for reporting.

svn path=/main/branches/prefix/; revision=5172

19 years agoJust use EPREFIX, as we imported it.
Fabian Groffen [Mon, 4 Dec 2006 09:54:10 +0000 (09:54 -0000)]
Just use EPREFIX, as we imported it.

svn path=/main/branches/prefix/; revision=5170

19 years agoMerged from trunk 5163:5164
Fabian Groffen [Sun, 3 Dec 2006 20:05:39 +0000 (20:05 -0000)]
Merged from trunk 5163:5164

drop RESTRICT=stricter since every aspect it covers can be handled
properly via other means

svn path=/main/branches/prefix/; revision=5165

19 years ago- fixed emerge not reporting on files which need updating (missing call
Fabian Groffen [Sun, 3 Dec 2006 13:33:20 +0000 (13:33 -0000)]
- fixed emerge not reporting on files which need updating (missing call
  to chk_updated_cfg_files)
- cosmetic change to import/use EPREFIX
- Drop wheelgroup warning, as it makes no sense in prefix.

svn path=/main/branches/prefix/; revision=5163

19 years agoMerged from trunk 5158:5161
Fabian Groffen [Sun, 3 Dec 2006 09:58:52 +0000 (09:58 -0000)]
Merged from trunk 5158:5161

Skip digest checks when digest is in features.

Make portage.digestgen() automatically exempt the depend phase from
Manifest checks so that it works for repoman without triggering a digest
verification failure.

Move the global statement out of the try block so that it's clearly in
scope for the finally block.

svn path=/main/branches/prefix/; revision=5162

19 years agoMerged from trunk 5149:5157
Fabian Groffen [Sat, 2 Dec 2006 15:21:14 +0000 (15:21 -0000)]
Merged from trunk 5149:5157

Always verify the ebuild checksums before executing it.  Thanks to solar
for the suggestion and antarus for the initial patch.

For manifest and digest phases, use a global variable to temporarily
exempt the depend phase from manifest checks (in cache regeneration is
triggered).

Temporarily exempt the depend phase during the help phase also.

Avoid checking the same Manifest several times in a row during a regen
with an empty cache.

For consistent behavior in all timezones, make emerge-webrsync use UTC
time for decisions about which snapshots to download.

Only attempt to verify the Manifest if the ebuild is actually in a
portage tree.

Make sure that *all* of the ebuilds are listed in the Manifest.

Make sure that all depend phases triggered by the digest phase are
exempt from digest checks.

svn path=/main/branches/prefix/; revision=5158

19 years agoMerged from trunk 5145:5148
Fabian Groffen [Fri, 1 Dec 2006 18:33:20 +0000 (18:33 -0000)]
Merged from trunk 5145:5148

add ReST template to be used for manpage/make.globals/make.conf.example
generation later on (+ fixes)

svn path=/main/branches/prefix/; revision=5149

19 years agoMerged from trunk 5141:5143
Fabian Groffen [Wed, 29 Nov 2006 22:00:18 +0000 (22:00 -0000)]
Merged from trunk 5141:5143

Make sure QUIET mode is exported to the environment properly when using
-q mode.

No point in forking a call to true when we can simply use the bash
internal of : for true.

svn path=/main/branches/prefix/; revision=5145

19 years agoOn a second thought it's much better if portage makes sure it can find
Fabian Groffen [Wed, 29 Nov 2006 21:41:57 +0000 (21:41 -0000)]
On a second thought it's much better if portage makes sure it can find
its own binaries itself.  This also solves problems during
bootstrapping, since the portage binpath now always ends up last.

svn path=/main/branches/prefix/; revision=5144

19 years agoI hope this time I really get the path right.
Fabian Groffen [Wed, 29 Nov 2006 19:54:26 +0000 (19:54 -0000)]
I hope this time I really get the path right.

svn path=/main/branches/prefix/; revision=5141

19 years agoIt comes in handy sometimes to have access to your own executables.
Fabian Groffen [Wed, 29 Nov 2006 19:44:56 +0000 (19:44 -0000)]
It comes in handy sometimes to have access to your own executables.

svn path=/main/branches/prefix/; revision=5140

19 years agoFix default path order
Fabian Groffen [Wed, 29 Nov 2006 18:48:58 +0000 (18:48 -0000)]
Fix default path order

svn path=/main/branches/prefix/; revision=5139

19 years agoMerged from trunk 5132:5135
Fabian Groffen [Sun, 26 Nov 2006 16:38:30 +0000 (16:38 -0000)]
Merged from trunk 5132:5135

Never overwrite an untouched config file and trigger config protection
instead (in case the new config has an unwanted change).  In cases where
an installed package in the same slot owns a protected file that will be
merged, bump the mtime on the installed file in order to ensure that it
isn't unmerged.  Thanks to Ciaran McCreesh <ciaranm@ciaranm.org> for his
suggestion on bug #8423, comment #40.

Update the dblink.isprotected() docstring.

For bug #8423, make etc-update preserve timestamps when possible.

svn path=/main/branches/prefix/; revision=5138

19 years agoUse latest/default autotools, unset possibly unused variable
Fabian Groffen [Sun, 26 Nov 2006 11:18:46 +0000 (11:18 -0000)]
Use latest/default autotools, unset possibly unused variable

svn path=/main/branches/prefix/; revision=5132

19 years agoRequire Python 2.4
Fabian Groffen [Sun, 26 Nov 2006 11:11:28 +0000 (11:11 -0000)]
Require Python 2.4

svn path=/main/branches/prefix/; revision=5131

19 years agoMerged from trunk 5128:5129
Fabian Groffen [Sun, 26 Nov 2006 11:01:12 +0000 (11:01 -0000)]
Merged from trunk 5128:5129

For bug #8423, allow the merge phase to overwrite untouched config files
and also allow the unmerge phase to unmerge untouched config files.

svn path=/main/branches/prefix/; revision=5130

19 years agoMerged from trunk 5120:5123
Fabian Groffen [Thu, 23 Nov 2006 17:13:30 +0000 (17:13 -0000)]
Merged from trunk 5120:5123

For bug #150585, stack package.keywords incrementally so that -keyword
works as expected for any incremental variable.  This brings the
gvisible and getmaskingstatus logic into sync so that the confusing
(masked by: ) message will not be generated in cases where
package.keywords contains -keyword followed by keyword.

For bug #156014, always round up the next kB so that it doesn't show 0
kB when some small file still needs to be fetched.

Allow -keyword to be matched since some ebuilds use it.  Thanks to Brian
Harring reporting on bug #150585.

svn path=/main/branches/prefix/; revision=5124

19 years agoMerged from trunk 5113:5119
Fabian Groffen [Wed, 22 Nov 2006 18:38:15 +0000 (18:38 -0000)]
Merged from trunk 5113:5119

For bug #142993, make sure that chown and chgrp calls preserve S_ISUID
and S_ISGID mode bits.

Fix apply_permissions logic for cases where mode is unspecified.

Fix bit mask support when preserving S_ISUID and S_ISGID in
apply_permissions.
Really fix bit mask support when preserving S_ISUID and S_ISGID in
apply_permissions.

Fix a KeyError in emerge --info <pkg> when there is no matching ebuild
in the tree.  Thanks to Bo ?\195?\152rsted Andresen
<bo.andresen@zlin.dk> for reporting.

Use portage_data.lchown for compatibility.

svn path=/main/branches/prefix/; revision=5120

19 years agoAlso for digests hold that svn list won't show added files, so run svn
Fabian Groffen [Mon, 20 Nov 2006 20:53:06 +0000 (20:53 -0000)]
Also for digests hold that svn list won't show added files, so run svn
status afterwards to get them.

svn path=/main/branches/prefix/; revision=5109

19 years agoMerged from trunk 5091:5107
Fabian Groffen [Mon, 20 Nov 2006 17:51:48 +0000 (17:51 -0000)]
Merged from trunk 5091:5107

Use mydbapi is None to eliminate the return_all_deps parameter from
dep_check and dep_zapdeps.  The result is the same and this way we
avoid having an additional parameter with overlapping meaning.

Allow dep_wordreduce to mark things satisfied by package.provided even
when mydbapi is None.

For depclean, just pass in None for mydbapi (instead of an empty
fakedbapi instance) since that's now supported.

Remove redundant package.provided handling that is now covered by
dep_wordreduce.

Allow the ROOT setting to come from make.conf.  Thanks to Daniel
Barkalow <barkalow@iabervon.org> for this patch (submitted on the
gentoo-portage-dev mailing list).

For bug #155739, only check if a dep is in the args when myroot ==
self.target_root.

Print a warning message if a user requests a package from
package.provided (since it won't be merged).

Enable PORTAGE_CONFIGROOT to be set via an new --config-root option.
Thanks to Daniel Barkalow <barkalow@iabervon.org> for the initial patch
(submitted on the gentoo-portage-dev mailing list).

svn path=/main/branches/prefix/; revision=5108

19 years agoImproved repoman SVN support:
Fabian Groffen [Sun, 19 Nov 2006 17:02:23 +0000 (17:02 -0000)]
Improved repoman SVN support:
- svn list returns outdated information if not preceded by svn update
- svn list doesn't return information on newly added files, so for SVN
  run svn status to get the added files
This fixes problems with phantom files being reported as not added,
while they either don't exist any more in the repo, or are added for
sure.

svn path=/main/branches/prefix/; revision=5090

19 years agoMerged from trunk 5080:5088
Fabian Groffen [Sun, 19 Nov 2006 16:39:04 +0000 (16:39 -0000)]
Merged from trunk 5080:5088

Revert ACCEPT_LICENSE support, since license group support is a
requirement and it remain unimplemented.  This brings trunk back into
sync with the 2.1.2 branch.

For bug #155559, force depclean dep_check calls to preference installed
packages.

Use fake_vardb for cached aux_get calls.

Fix portdbapi.cpv_all() so that it actually returns a list of all
available ebuilds.

svn path=/main/branches/prefix/; revision=5089

19 years agoMerged from trunk 5060:5075
Fabian Groffen [Fri, 17 Nov 2006 18:26:25 +0000 (18:26 -0000)]
Merged from trunk 5060:5075

Pull in the new-style virtuals and install them so that the vdb has
complete standalone dep info, in case a portage tree isn't available.

For bug #141118, make dep_zapdeps assign zero cost to new-style
virtuals.

Revert the depclean message, since new-style virtuals will now be kept.

Update the _expand_new_virtuals docstring with a not about zero cost for
new-style virtuals.

Fix _expand_new_virtuals so that it doesn't allow any virtual deps to go
unaccounted for.

Integrate old-style virtuals handling into _expand_new_virtuals() and
prefer new-style over old-style whenever they are available.

For bug #155484, apply PORTAGE_NICENESS as soon as possible (especially
before global updates).

Make fixpackages use PORTAGE_NICENESS.

svn path=/main/branches/prefix/; revision=5077

19 years agoDon't use hard-coded group names, but use the portage group from
Fabian Groffen [Thu, 16 Nov 2006 21:36:06 +0000 (21:36 -0000)]
Don't use hard-coded group names, but use the portage group from
configure instead.

svn path=/main/branches/prefix/; revision=5060

19 years agoMerged from trunk 5027:5057
Fabian Groffen [Thu, 16 Nov 2006 19:55:52 +0000 (19:55 -0000)]
Merged from trunk 5027:5057

For bug #154989, use a single lock on /var/db/pkg since finer grained
locking is unnecessary and often insufficient.

For bug #154989, lock /var/db/pkg while determining which packages to
unmerge,  then release the lock.  The lock will be reacquired/released
for each individual unmerge, allowing opportunities for other processes
to acquire it.

Use try/finally to ensure that locks are properly released in
portdbapi.aux_get().

Use try/finally to ensure that locks are properly released in
perform_checksum().

Use try/finally to ensure that locks are properly released in
emergelog().

Use try/finally to ensure that locks are properly released in
dblink.unmerge().

Remove reentrance support for dblink.lockdb() since it's no longer used
and it  won't necessarily work correctly now that a global vdb lock is
used.

For bug #154986, show the usual "Filesize does not match recorded size"
message even for fetch restricted files.

For bug #154897, show a summary of fetch restrictions if there are any.

Cache depgraph.altlist results, since altlist is called multiple times
and can be time consuming for a large depgraph.

Make fakedbapi support generic metadata instead of just slots.

Remove useless unmerge() call after collision-protect has prevented
anything  from being merged.

Fix a lock file leak.

Make portage.global_updates() return any updates that may have been
performed.

Only reload the config if global updates have actually been performed.

Automatically convert --ask to --pretend when the user doesn't have the
privileges for --ask.  Thanks to Daniel Barkalow <barkalow@iabervon.org>
for the initial patch (submitted on gentoo-portage mailing list).

Don't try to lock the vdb unless privileges are sufficient.

For bug #141118, make dep_check do recursive expansion of new-style
virtuals.

Add a note about removal of new-style virtuals in the depclean output.

svn path=/main/branches/prefix/; revision=5059

19 years agoSubversion doesn't eat svn+http://, so remove the "svn+" part when
Fabian Groffen [Mon, 13 Nov 2006 21:39:01 +0000 (21:39 -0000)]
Subversion doesn't eat svn+, so remove the "svn+" part when
feeding it to svn checkout.

svn path=/main/branches/prefix/; revision=5026

19 years agoMerged from trunk 5020:5023
Fabian Groffen [Mon, 13 Nov 2006 21:32:24 +0000 (21:32 -0000)]
Merged from trunk 5020:5023

For bug #154921, prevent an IndexError when a + is in USE.

For bug #154919, when depclean is unable to resolve dependencies, notify
the user that it may be necessary to manually uninstalled packages that
no longer exist in the portage tree.

svn path=/main/branches/prefix/; revision=5025

19 years agoDon't announce as SVN if on CVS.
Fabian Groffen [Sun, 12 Nov 2006 16:52:17 +0000 (16:52 -0000)]
Don't announce as SVN if on CVS.

svn path=/main/branches/prefix/; revision=5020

19 years agoIt takes some time... but then you have Repoman playing nice with SVN
Fabian Groffen [Sun, 12 Nov 2006 16:48:12 +0000 (16:48 -0000)]
It takes some time... but then you have Repoman playing nice with SVN
repos!

svn path=/main/branches/prefix/; revision=5019

19 years agoGiving Repoman a big fling such that it spins on SVN also.
Fabian Groffen [Sun, 12 Nov 2006 14:38:07 +0000 (14:38 -0000)]
Giving Repoman a big fling such that it spins on SVN also.

svn path=/main/branches/prefix/; revision=5018

19 years agoWiping off the dust of Repoman's SVN support.
Fabian Groffen [Sun, 12 Nov 2006 10:44:44 +0000 (10:44 -0000)]
Wiping off the dust of Repoman's SVN support.

svn path=/main/branches/prefix/; revision=5017

19 years agoOur repo is called "portage-overlay" iso "portage".
Fabian Groffen [Sun, 12 Nov 2006 09:19:05 +0000 (09:19 -0000)]
Our repo is called "portage-overlay" iso "portage".

Fix call to chk_updated_cfg_files such that we don't look (and fail) in
the root filesystem if that's not EPREFIX.

svn path=/main/branches/prefix/; revision=5016

19 years agoAdded SVN support for syncing next to CVS support.
Fabian Groffen [Sun, 12 Nov 2006 08:33:40 +0000 (08:33 -0000)]
Added SVN support for syncing next to CVS support.

svn path=/main/branches/prefix/; revision=5015

19 years agoMerged from trunk 4998:5012
Fabian Groffen [Sun, 12 Nov 2006 08:17:34 +0000 (08:17 -0000)]
Merged from trunk 4998:5012

Thanks again to Chris White for these additional portage_dep docstrings.

Make digestcheck() fail if an ebuild isn't listed in the Manifest.
Thanks to pva for reporting.

Fix emerge --sync with a cvs:// uri so that it runs
/etc/portage/bin/post_sync  like it would with a normal rsync:// uri.
Thanks to drizzt for reporting.

Fix initial cvs checkout logic for bug #100478.

For initial gentoo-x86 checkout, if $PORTDIR exists and is empty then
remove it so that the gentoo-x86 checkout can replace it.

For bug #154554, validate all profile virtuals atoms.

Fix depgraph.pkg_node_map so that it properly supports $ROOT.

svn path=/main/branches/prefix/; revision=5014

19 years agoMerged from trunk 4986:4987
Fabian Groffen [Wed, 8 Nov 2006 21:23:42 +0000 (21:23 -0000)]
Merged from trunk 4986:4987

Thanks to Chris White for these portage_dep docstrings.

svn path=/main/branches/prefix/; revision=4997

19 years agoMerged from trunk 4965:4984
Fabian Groffen [Wed, 8 Nov 2006 07:21:21 +0000 (07:21 -0000)]
Merged from trunk 4965:4984

Minimize getvirtuals() calls and dict lookups inside dep_virtual().

Fix validate_blockers() so that a package doesn't block itself via a
virtual that it provides.

Print the number of upgrades, downgrades, etc. next to size of
downloads.  Thanks to Bo ?\195?\152rsted Andresen <bo.andresen@zlin.dk>
for the initial patch from bug #153847.

Thanks to Chris White for these portage_checksum docstrings.

Thanks to Bo ?\195?\152rsted Andresen <bo.andresen@zlin.dk> for this
output fix for bug #153847.

Plug some holes in the blocker validation logic so that nothing can slip
through.

Remove some stray blocker validation logic.

s/grabdict/grabdict_package/ for bug #63429.

For bug #154207, add a note about package.provided to the depclean
warning message.

Add --newuse back to the suggested options in the depclean warning
message, since it's still needed in some cases.

svn path=/main/branches/prefix/; revision=4986

19 years agoMerged from trunk 4961:4962
Fabian Groffen [Mon, 6 Nov 2006 21:12:46 +0000 (21:12 -0000)]
Merged from trunk 4961:4962

Simplify the new-style -> old-style virtuals bridge by doing it
implicitly for  all virtuals instead of explicit scanning for available
new-style virtuals.

svn path=/main/branches/prefix/; revision=4965

19 years agoRemove temp source copy, ls the tarbal we created for easy copy and
Fabian Groffen [Mon, 6 Nov 2006 21:08:56 +0000 (21:08 -0000)]
Remove temp source copy, ls the tarbal we created for easy copy and
pasting

svn path=/main/branches/prefix/; revision=4964

19 years agoMerged from trunk 4946:4959
Fabian Groffen [Mon, 6 Nov 2006 20:44:34 +0000 (20:44 -0000)]
Merged from trunk 4946:4959

Prevent the --newuse check in depgraph.create() that is intended for the
ebuild type from being done on binary packages (which can lead to a
KeyError).  The --newuse check for binaries is elsewhere (in
select_dep).

Ensure that sys-apps/portage is as close as possible to the beginning of
the merge list.  This is accomplished by merging it before any soft
deps that it may have.

Remove "update portage before proceeding" message that is no longer
relevant.

Remove old code the used to bump portage near the top of the merge list.
It's ineffective now that a complete depgraph is built.

Make sure the node is still in the graph so that a KeyError can't
happen.

For bug #154223, bridge new-style virtuals into old-style virtuals in
order to prevent old-style virtuals from making new-style virtuals
invisible.

Make config.add_new_virtuals() work properly even if self.virtuals has
previously been initialized.

For bug #154220, run /etc/portage/bin/post_sync at the end of
emerge-webrsync.

svn path=/main/branches/prefix/; revision=4961

19 years agoInject EPREFIX in settings such that it becomes available to e.g.
Fabian Groffen [Sun, 5 Nov 2006 15:58:12 +0000 (15:58 -0000)]
Inject EPREFIX in settings such that it becomes available to e.g.
portageq which uses it.  This used to be the case, but somehow recent
patches removed this on freshly installed boxes.

svn path=/main/branches/prefix/; revision=4942

19 years agoNo need to make a lot of noise.
Fabian Groffen [Sun, 5 Nov 2006 15:39:52 +0000 (15:39 -0000)]
No need to make a lot of noise.

svn path=/main/branches/prefix/; revision=4941

19 years agoDon't check ROOT for writability, but ROOT + EPREFIX instead.
Fabian Groffen [Sun, 5 Nov 2006 09:15:37 +0000 (09:15 -0000)]
Don't check ROOT for writability, but ROOT + EPREFIX instead.

Don't remove EPREFIX from file listings, it confuses as to whether the
paths are correct or not.

svn path=/main/branches/prefix/; revision=4940

19 years agoMerged from trunk 4915:4929
Fabian Groffen [Sat, 4 Nov 2006 18:18:02 +0000 (18:18 -0000)]
Merged from trunk 4915:4929

For bug #153951, fail with a simple "Permission denied" error if the
merge phase doesn't have write access to $ROOT.

Silently omit info_pkgs that aren't installed.  Thanks to solar.

When transferring cache after sync, compare all metadata to make sure it
is identical (don't trust _mtime_ and _eclasses_ alone).  Local tests
show that this can add approximately 15% more time to the metadata
update, but it's needed for things like bug #153591.

Make sure trg is defined.

Fix --ignore-default-opts for bug #153980.

Revert implicit rdepend behavior back to the way it was in
portage-2.0.51.  Thanks to vapier for the patch.  The original change
seems to have been an  accidentally hunk (referencing bug #58819) that
was committed to cvs along with another patch in revision 1.201.2.32 of
ebuild.sh.

svn path=/main/branches/prefix/; revision=4939

19 years agoUse prefixed path
Fabian Groffen [Sat, 4 Nov 2006 18:12:28 +0000 (18:12 -0000)]
Use prefixed path

svn path=/main/branches/prefix/; revision=4938

19 years agoKind of funny, but it saves a lot of bytes, and makes the stuff easier
Fabian Groffen [Sat, 4 Nov 2006 17:32:27 +0000 (17:32 -0000)]
Kind of funny, but it saves a lot of bytes, and makes the stuff easier
readable.  Looks like importing EPREFIX from portage_const makes it
available on global scope, like in Java it would be.  No real change,
just conceptual from portage_const.EPREFIX to EPREFIX, which seems to
work fine so far.

svn path=/main/branches/prefix/; revision=4937

19 years agoReally fix autoconf-2.60 misery:
Fabian Groffen [Sat, 4 Nov 2006 17:29:37 +0000 (17:29 -0000)]
Really fix autoconf-2.60 misery:
- don't run autoheader if we don't have config.h (Thanks flameeyes!)
- clean up mess with errors and warnings so we actually see what's
  happening
- make sure we abort mission if autoconfing the bunch fails
- require autoconf 2.60 now, as we changed the configure script to do
  it's dirty voodoo based on the output of 2.60, which is different from
  its predecessor(s)

svn path=/main/branches/prefix/; revision=4936

19 years agoautoconf-2.60 is annoying. Add AC_CONFIG_HEADERS([config.h]) because it
Fabian Groffen [Sat, 4 Nov 2006 15:11:17 +0000 (15:11 -0000)]
autoconf-2.60 is annoying.  Add AC_CONFIG_HEADERS([config.h]) because it
wants it, and remove it afterwards because we don't need it.

svn path=/main/branches/prefix/; revision=4935

19 years agoAlso use prefix in dispatch_conf
Fabian Groffen [Sat, 4 Nov 2006 09:55:44 +0000 (09:55 -0000)]
Also use prefix in dispatch_conf

svn path=/main/branches/prefix/; revision=4934

19 years agoFix trivial, but rather painful bug, of storing ED in D.
Fabian Groffen [Thu, 2 Nov 2006 20:45:31 +0000 (20:45 -0000)]
Fix trivial, but rather painful bug, of storing ED in D.

svn path=/main/branches/prefix/; revision=4915

19 years agoMerged from trunk 4905:4912 a colourful set of patches
Fabian Groffen [Thu, 2 Nov 2006 18:38:24 +0000 (18:38 -0000)]
Merged from trunk 4905:4912 a colourful set of patches

Implement --color < y | n > for bug #42115 and deprecate --nocolor.
When --color is not specified, rely on the old NOCOLOR variable and/or
stdout auto-detection.

Document the new --color < y | n > option for bug #42115.

Add --color < y | n > help output for bug #42115.

Remove broken nocolor() call, since thats handled internally by the
output module anyway.

Fix the USE_ORDER docs for bug #153764.  Thanks to Alec Warner for the
initial patch.

svn path=/main/branches/prefix/; revision=4914

19 years agoMerged from trunk 4892:4903
Fabian Groffen [Wed, 1 Nov 2006 12:02:45 +0000 (12:02 -0000)]
Merged from trunk 4892:4903

For bug #153295, make load_infodir ignore files that contain null bytes.

For bug #153282, automatically find the owner package(s) in the event of
a fatal file collision (since the collision is fatal, the performance
hit doesn't matter).

For bug #129670, skip the replace-cvs and replace-wscomments tests if
the diff exit code indicates two two binary files that differ.

For bug #116616, only run the post_process phase if necessary.

svn path=/main/branches/prefix/; revision=4905

19 years agoMerged from trunk 4883:4889
Fabian Groffen [Tue, 31 Oct 2006 21:14:14 +0000 (21:14 -0000)]
Merged from trunk 4883:4889

Rely on PYTHONPATH instead of PORTAGE_PYM_PATH for locating portage's
python modules, then fall back to an explicit sys.path insertion if an
ImportError occurs.

Fix a KeyError when the profile doesn't define default USE.

Add support for frozen config files for which updates are automatically
zapped.  Thanks to Bo ?\195?\152rsted Andresen for the initial patch
from bug #151685.

Recommend people use `emake` rather than `make` when installing with
DESTDIR.

svn path=/main/branches/prefix/; revision=4892

19 years agoSync error message with check
Fabian Groffen [Tue, 31 Oct 2006 20:57:37 +0000 (20:57 -0000)]
Sync error message with check

svn path=/main/branches/prefix/; revision=4891

19 years agoMerged from trunk 4876:4881
Fabian Groffen [Mon, 30 Oct 2006 20:01:26 +0000 (20:01 -0000)]
Merged from trunk 4876:4881

For bug #153295, do a sanity check for non-string types in
config.environ().

For getmaskingstatus messages, don't assume ARCH is a valid keyword,
since that assumption is not necessarily correct for operating systems
other than Linux.  Thanks to Diego Petteno for reporting.

Just use stat instead of lstat for config protect, so that broken
symlinks are just ignored.

svn path=/main/branches/prefix/; revision=4883

19 years agoMerged from trunk 4871:4872
Fabian Groffen [Sun, 29 Oct 2006 20:30:32 +0000 (20:30 -0000)]
Merged from trunk 4871:4872

Use a tuple for __slots__ so that it's immutable.

svn path=/main/branches/prefix/; revision=4876

19 years agobump python requirements to >= 2.3.1 as 2.3 has a bug which makes
Fabian Groffen [Sun, 29 Oct 2006 16:21:35 +0000 (16:21 -0000)]
bump python requirements to >= 2.3.1 as 2.3 has a bug which makes
portage die.

svn path=/main/branches/prefix/; revision=4875

19 years agoDon't require root, it makes no sense in prefix here. Maybe later
Fabian Groffen [Sun, 29 Oct 2006 15:21:05 +0000 (15:21 -0000)]
Don't require root, it makes no sense in prefix here.  Maybe later

svn path=/main/branches/prefix/; revision=4874

19 years agoMerged from trunk 4866:4869
Fabian Groffen [Sun, 29 Oct 2006 13:43:34 +0000 (13:43 -0000)]
Merged from trunk 4866:4869

Prevent an attribute error AttributeError for invalid binary packages
for which there is no CATEGORY data.

Don't forget to continue for invalid binpkgs.

svn path=/main/branches/prefix/; revision=4871

19 years agoForgot some ${D}'s to replace
Fabian Groffen [Sat, 28 Oct 2006 16:01:35 +0000 (16:01 -0000)]
Forgot some ${D}'s to replace

svn path=/main/branches/prefix/; revision=4866

19 years agoMerged from trunk 4857:4863
Fabian Groffen [Sat, 28 Oct 2006 15:59:07 +0000 (15:59 -0000)]
Merged from trunk 4857:4863

Avoid a TypeError with emerge -kN when there's no matching ebuild.

Use mtree to save/restore bsd file flags before/after prepall and
installation.  Thanks to Diego Pettenò for this patch (related
to bug #153109).

svn path=/main/branches/prefix/; revision=4865

19 years agoMerged from trunk 4847:4855
Fabian Groffen [Fri, 27 Oct 2006 21:51:36 +0000 (21:51 -0000)]
Merged from trunk 4847:4855

Do not pass the "clean" parameter to doebuild since it causes ${T} to be
cleaned up when it shouldn't be.  Thanks to Mr_Bones_ for reporting.

Don't bother to insert /usr/lib/portage/pym into sys.path from inside a
module.  That's the caller's job.

Add --with-bdeps to emerge --help output.

Update help for --deep.

Update help for greedy behavior of --update.

Add backward compatibility code for cache modules that override has_key
instead of __contains__.

svn path=/main/branches/prefix/; revision=4857

19 years agoMerged from trunk 4816:4828
Fabian Groffen [Thu, 26 Oct 2006 17:40:15 +0000 (17:40 -0000)]
Merged from trunk 4816:4828

For bug #152726, ignore hidden files in vardbapi.cp_list().

For full compatibility with older versions of portage, write the path in
the serialized _eclasses_ when possible.

Fix broken is_eclass_data_valid comparison logic.

Test for basestring instead of types.DictType so that the test more
generic.

Reverse the relationship between __contains__ and has_key in all cache
classes since python handles the "in" operator more efficiently than a
has_key method call.

Streamline portage pythonpath handling and add an override analog to how
the bash side does it.

rename getmaskingreason() to getpmaskcomment() to clarify its function,
report each license as a separate mask instead of combining them all
together into a single value for getmaskingstatus()

need a mutable config instance to use setcpv

add function getlicensetexts() to extract license texts relevant to a
given cpv (to be used by emerge masked by display)

show licenses or pointer to license files on 'masked by' message

svn path=/main/branches/prefix/; revision=4831

19 years agoSANDBOX should be a full path, use sandbox from prefix.
Fabian Groffen [Thu, 26 Oct 2006 17:21:33 +0000 (17:21 -0000)]
SANDBOX should be a full path, use sandbox from prefix.

svn path=/main/branches/prefix/; revision=4830

19 years agoPython is kind of weird with arguments and strings... it doesn't bail
Fabian Groffen [Thu, 26 Oct 2006 17:16:27 +0000 (17:16 -0000)]
Python is kind of weird with arguments and strings... it doesn't bail
out, but doesn't concatenate either.

svn path=/main/branches/prefix/; revision=4829

19 years agoFix etc-update
Fabian Groffen [Thu, 26 Oct 2006 16:09:14 +0000 (16:09 -0000)]
Fix etc-update

svn path=/main/branches/prefix/; revision=4825

19 years agoMerged from trunk 4812:4815
Fabian Groffen [Wed, 25 Oct 2006 17:40:43 +0000 (17:40 -0000)]
Merged from trunk 4812:4815

Remove ACCEPT_LICENSE docs until they're really implemented.

Improve reconstruct_eclasses error handling.

For the time being, write a variation of the old _eclass_ format so that
cache written only forces a regen for older versions of portage rather
than a ValueError due to failed long() conversion.

svn path=/main/branches/prefix/; revision=4816

19 years agoMerged from trunk 4796:4810
Fabian Groffen [Tue, 24 Oct 2006 20:00:06 +0000 (20:00 -0000)]
Merged from trunk 4796:4810

Add some ACCEPT_LICENSE docs.

Put the package.keywords docs in alphabetical order with the others.

Add some package.license docs.

Add news about ACCEPT_LICENSE and package.license.

Make config.load_infodir also load the data into the env layer in order
to ensure that it has preference over what may have been there.

Don't limit the size of USE in config.load_infodir.

Add package.license to the list of files.

Don't put -* in the env layer, since that layer isn't part of the
incremental stacking in regenerate.

In getmaskingstatus(), add missing check for * in acceptable_licenses.

Don't display the "Please update portage" message in --quiet mode.
Thanks to solar.

Remove paths from _eclasses_ serialization in the cache.  This makes the
mtimes of the eclasses the only thing that distinguishes them, but the
probablility of collision is negligible.  This same _eclasses_ format
will be used to serialize eclass mtimes in cache that is distributed via
the rsync mirrors.  The deserialization code can handle mixtures of both
the old and new formats.

Enable recognition of _mtime_ that doesn't rely on cache mtime mangling.

Add ACCEPT_LICENSE back to incrementals so that profiles can affect it.

Disable ACCEPT_LICENSE support until the details of license groups are
decided and implemented.

svn path=/main/branches/prefix/; revision=4812

19 years agomisc fixes to get prefix going again without double prefixes and stuff
Fabian Groffen [Tue, 24 Oct 2006 19:55:59 +0000 (19:55 -0000)]
misc fixes to get prefix going again without double prefixes and stuff

svn path=/main/branches/prefix/; revision=4811

19 years agoMisc prefix fixes
Fabian Groffen [Sun, 22 Oct 2006 14:31:25 +0000 (14:31 -0000)]
Misc prefix fixes

svn path=/main/branches/prefix/; revision=4796

19 years agoMerged from trunk 4785:4794
Fabian Groffen [Sun, 22 Oct 2006 14:03:16 +0000 (14:03 -0000)]
Merged from trunk 4785:4794

Optimize config.setcpv so that it only calls regenerate when necessary.
Thanks to Jason Stubbs for the initial patch from bug #17367.

Use reset instead of regenerate (revert part of the previous commit) in
order to properly clear the env layer of the config.

Fix visibility checks so that binary packages aren't masked just because
there is no matching ebuild in the tree.

Call load_infodir before the setup phase for binary packages so that USE
is properly set.

Don't put empty incrementals in the environment, unless they are already
set.

Add support for masking of packages via ACCEPT_LICENSE and
/etc/portage/package.license.  Thanks to Jason Stubbs for the initial
patch from bug #17367.

s/str_matches/acceptable_licenses/ typo

Fix gcc version parsing once again for bug #137786. sigh. :)

svn path=/main/branches/prefix/; revision=4795

19 years agoOnce again throw everything to the other side. Now:
Fabian Groffen [Sat, 21 Oct 2006 18:01:46 +0000 (18:01 -0000)]
Once again throw everything to the other side.  Now:
$D and $ROOT are like normal portage,
$ED and $EROOT are the prefixed versions of their non-E variants.

svn path=/main/branches/prefix/; revision=4785

19 years agoMerged from trunk 4770:4783
Fabian Groffen [Sat, 21 Oct 2006 15:16:01 +0000 (15:16 -0000)]
Merged from trunk 4770:4783

Allow an empty PROMPT_COMMAND for bug #152157.

For bug #152175, trigger greedy --update behavior when an atom matches a
slot that isn't installed yet.

Apply the fix for bug #152175 to system/world greedy behavior.

In greedy atom handlink, filter binary package for visiblity.

More filtering binary package for visiblity in greedy atom handling.

Add nodes to the fakedb in depgraph.create instead of
depgraph.select_deps.  It used to be in select_deps only for the case of
packages that depend on themselves for bootstrap, but that hack isn't
needed anymore because dep_check  returns all deps now.

Update the docs regarding delay of config.setinst calls for bootstrap
deps on old-style virtuals.

Remove redunant population of the fakedb in depgraph.validate_blockers,
since r4776 makes it unnecessary.

Add news about new-style virtuals being usable for bootstrap deps on
self.

Add package.use to the list of files supported in profiles.

Add news about package.use in profiles and default USE in ebuilds via
+flag in IUSE.

For bug #152157, don't send a redundant escape sequence with
${PROMPT_COMMAND}.

Also check keyword visibility via gvisible.

svn path=/main/branches/prefix/; revision=4784

19 years agoMerged from trunk 4768:4769
Fabian Groffen [Fri, 20 Oct 2006 21:31:26 +0000 (21:31 -0000)]
Merged from trunk 4768:4769

We there is a circular deps panic in reversed mode, do the circular deps
output without reversed mode since it should reduce the noise level.

svn path=/main/branches/prefix/; revision=4770

19 years agoFix collision-protect and cleanup a bit
Fabian Groffen [Fri, 20 Oct 2006 15:45:10 +0000 (15:45 -0000)]
Fix collision-protect and cleanup a bit

svn path=/main/branches/prefix/; revision=4768

19 years agoMerged from trunk 4765:4766
Fabian Groffen [Fri, 20 Oct 2006 15:33:08 +0000 (15:33 -0000)]
Merged from trunk 4765:4766

Clean up the blocker validation logic so that "blocks" nodes are no
longer stored in the main digraph.

svn path=/main/branches/prefix/; revision=4767

19 years agoMerged from trunk 4758:4763
Fabian Groffen [Fri, 20 Oct 2006 08:01:22 +0000 (08:01 -0000)]
Merged from trunk 4758:4763

Only call altlist() to validate blockers when necessary.

For userpriv, call setgroups with all groups that the portage user
belongs to (bug #137610).

Remove special case of --emptytree in depgraph.display().  Thanks to
Jason Stubbs for this patch from bug #152030.

Make dosed use sed -i instead of a temp file.  Thanks to Tim Cera for
this patch from bug #152017.

svn path=/main/branches/prefix/; revision=4765