| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
It makes more sense to use EROOT instead of ROOT for keys in mappings
like portage.db, since it allows for multiple prefixes to exist
simultaneously within the same map without having a key collision.
This affects all portageq commands which take a <root> parameter, since
that parameter now corresponds to EROOT instead of ROOT. None of this
makes any difference for non-prefix users, since EROOT and ROOT are
identical when EPREFIX is empty.
|
| |
|
|
|
|
|
|
|
|
| |
Since this is considered a "legacy" feature by PMS 5.2.7, there
shouldn't be any need to support it anymore. Profiles can use
package.mask to get similar results, and package.mask additionally
allows for comments which are conveniently displayed by emerge. This
will fix bug #377907.
|
| |
|
|
|
|
|
| |
This allows the merge list display to account for repository-level
USE_EXPAND and USE_EXPAND_HIDDEN settings (see bug #370693).
|
|
|
|
|
| |
The Package class uses an UNKNOWN_REPO constant so that MergeListItem
can distinguish this case.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This eliminates an expensive getattr call in _get_hash_key(), which
greatly improves depgraph performance on a weak ARM cpu.
|
|
|
|
|
|
|
|
|
| |
PROVIDE virtuals have been banned from Gentoo's tree (see bug #365505),
so these checks aren't needed anymore. The PROVIDE.syntax check is kept
in the Package class since PROVIDE is still supported for backward
compatibility, and therefore invalid syntax can still have negative
effects. This check can be removed if/when backward compatibilty is
completely dropped.
|
|
|
|
|
|
| |
Hopefully this makes the logic more understandable, though it may
support fewer cases. If we want to handle more cases then hopefully
we can do it without making the code too complex.
|
| |
|
| |
|
|
|
|
| |
Misc. whitespace cleanup
|
| |
|
| |
|
|
|
|
| |
code, optimizing as much as possible.
|
|
|
|
|
|
| |
Prefer the highest priority repo, even when the ebuild from the higher
priority repo requires USE adjustments due to USE deps or REQUIRED_USE.
This will fix bug #350254.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
is intended to be frozen.
|
| |
|
| |
|
|
|
|
| |
check_required_use() exception handling (for python-2.x safety).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to avoid UnicodeDecodeError in python-2.x.
This issue was reported in forum thread
http://forums.gentoo.org/viewtopic-t-844623.html where the following
traceback was posted:
File "/usr/lib/portage/pym/_emerge/FakeVartree.py", line 195, in _pkg
type_name="installed")
File "/usr/lib/portage/pym/_emerge/Package.py", line 64, in __init__
self._validate_deps()
File "/usr/lib/portage/pym/_emerge/Package.py", line 93, in _validate_deps
self._metadata_exception(k, e)
File "/usr/lib/portage/pym/_emerge/Package.py", line 242, in _metadata_exception
"%s: %s in '%s'" % (k, e, path))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 22: ordinal not in range(128)
|
| |
|
|
|
|
| |
INHERITED metadata available (like for binary packages).
|
|
|
|
|
| |
DEFINED_PHASES is undefined. This makes it easy to do containment
checks to see if it's safe to skip execution of a given phase.
|
| |
|
|
|
|
| |
portage.exception.InvalidDependString.
|
|
|
|
|
| |
PROVIDE, and RESTRICT, and generate IUSE.missing errors for repoman
when appropriate.
|
|
|
|
|
|
| |
conditional which references a flag that is not listed in IUSE.
Also split out a Package._metadata_exception() method to handle
IUSE.missing for *DEPEND and SRC_URI.
|
|
|
|
|
|
|
|
|
|
| |
in cases when it's irrelevant (should re-evaluate these when new EAPIs
are deployed):
* EAPI.incompatible IUSE defaults
* EAPI.incompatible *DEPEND
* *DEPEND conditionals missing from IUSE
* SRC_URI.syntax
|
|
|
|
|
|
| |
about masked installed packages, customize the InvalidDependString
display to show the path of the *DEPEND file that contains the
invalid dependency.
|
| |
|
|
|
|
|
|
|
|
| |
InvalidAtom exceptions, make use_reduce() raise InvalidDependString
exceptions that encapsulate InvalidAtom exceptions, and make
Package._validate_deps() use the InvalidAtom categories when
recording the invalid metadata for use by repoman. Also, remove
the EAPI.incompatible code from repoman that's no longer used.
|
| |
|
|
|
|
| |
EAPI that does not support it.
|
|
|
|
| |
REQUIRED_USE.
|
| |
|
|
|
|
|
|
| |
so that the depgraph won't select them unless they are already installed
and there is no other choice. This should trigger automatic reinstallation
of installed packages that have invalid metadata.
|
|
|
|
|
|
|
| |
object that simply returns boolean, and update consumers.
* Make check_required_use() take a callable for the iuse parameter,
and pass in Package.use.is_valid_flag or iuse.__contains__ as
appropriate.
|
| |
|
|
|
|
|
| |
use_reduce now uses either a regex or, if provided, a is_valid_flag function
to validate use flags
|