| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Atom.violated_conditionals() raises InvalidAtom.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
packages, no that it accounts for invalid metadata.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
Atom.unevaluated_atom.violated_conditionals() since in this case
the parent_use argument is required.
|
|
|
|
|
|
| |
Atom.violated_conditionals since the USE conditionals should have been
evaluated in dep_check() and we don't want to accidentally pass a
DependencyArg instance into _pkg_use_enabled().
|
|
|
|
|
| |
don't pass parent_use to Atom.violated_conditionals() since these atoms
already have already been through use_reduce() with the parent's USE.
|
|
|
|
|
| |
so that it only passes Package instances (not DependencyArg instances) into
_pkg_use_enabled().
|
| |
|
| |
|
|
|
|
| |
EAPI that does not support it.
|
|
|
|
| |
REQUIRED_USE.
|
|
|
|
|
| |
the package is not installed and it should have been validated and masked
already if necessary.
|
|
|
|
|
|
|
| |
with invalid metadata, and remove show_invalid_depstring_notice()
calls for installed packages since depgraph.display_problems() will
now show the invalid metadata masking reasons when it displays installed
packages that are masked.
|
|
|
|
|
|
| |
to avoid invalid or masked installed packages when necessary. This is
especially important for invalid packages since they need be replaced
so that their dependencies can be parsed for --depclean operations.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
ebuild environment. SIGPIPE is typically 13, but its better not to
assume that.
|
|
|
|
|
|
|
|
|
|
|
| |
depgraph._add_pkg_deps(), ignore invalid USE conditionals, since
these are a common problem and it's practical to ignore them for
installed packages.
TODO: For installed package, save any InvalidDependString info in
dynamic_config and wait until display_problems() to show it. For
packages that aren't installed, we should validate and mask them
before they are selected.
|
| |
|
| |
|
|
|
|
|
| |
no longer needed and it causes problems with environment overrides
of FEATURES.
|
| |
|
| |
|
|
|
|
|
|
|
| |
When checking ${PIPESTATUS[@]} for extraction of tar files in unpack(),
use a new assert_sigpipe_ok() function which behaves the same as the
existing assert() function except that it tolerates pipe writers being
killed by SIGPIPE.
|
|
|
|
|
|
| |
* Use iterators instead of sets for set.intersection() calls.
* Use digraph.__iter__ and __contains__ as shortcuts to digraph.nodes
access.
|
|
|
|
|
| |
allow_unstable_keywords is True before adding a package to
_needed_unstable_keywords.
|
| |
|
| |
|
|
|
|
| |
called the exit command via IPC.
|
| |
|
|
|
|
|
|
| |
since the code we are running reads PORTAGE_LOG_FILE, and we
want to avoid annoying "gzip: unexpected end of file" messages
when FEATURES=compress-build-logs is enabled.
|
|
|
|
| |
log, so PORTAGE_LOG_FILE is initialized.
|
|
|
|
| |
the addition of FEATURES=compress-build-logs support).
|
| |
|
|
|
|
| |
TypeError: writemsg() got an unexpected keyword argument 'file'
|
|
|
|
|
|
|
| |
all build logs to be compressed while they are being written. Log file
names have an extension that is appropriate for the compression type.
Currently, only gzip(1) compression is supported, so build logs will
have a '.gz' extension when this feature is enabled.
|
|
|
|
|
| |
ensure that we are using global features settings rather than those
from package.env.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
enhancements:
* The FEATURES variable is automatically synchronized upon modification.
* Modifications result in a permanent override that will cause the change
to propagate to the incremental stacking mechanism in config.regenerate().
This eliminates the need to call config.backup_changes() when FEATURES
is modified, since any overrides are guaranteed to persist despite calls
to config.reset().
This allows cleanup of all code that overrides FEATURES, and also allows
config.regenerate() to stack FEATURES such that special cases are not
needed for package.env handling inside config.setcpv().
|