append a platform to the list of mismatched platforms.
Platforms are added via this instead of injected via the constructor so that we can loop over a list of mismatches and just add them rather than perform some kind of calculation mismatch summary before creation.
Defaults to use Ruby’s program prefix and suffix.
True if version
satisfies this Requirement
.
remove trailing zeros segments before first letter or at the end of the version
returns an integer in (-infty, 0] a number closer to 0 means the dependency is less constraining
dependencies w/ 0 or 1 possibilities (ignoring version requirements) are given very negative values, so they always sort first, before dependencies that are unconstrained
Returns true when it is possible and safe to update the cache directory.
Return the list of all array-oriented instance variables.
Special loader for YAML
files. When a Specification
object is loaded from a YAML
file, it bypasses the normal Ruby object initialization routine (initialize). This method makes up for that and deals with gems of different ages.
input
can be anything that YAML.load() accepts: String
or IO
.
Return the latest specs, optionally including prerelease specs if prerelease
is true.
Is name
a required attribute?
Required specification attributes
Activate all unambiguously resolved runtime dependencies of this spec. Add any ambiguous dependencies to the unresolved list to be resolved later, as needed.
List of dependencies that are used for development
List of dependencies that will automatically be activated at runtime.
Does a sanity check on the specification.
Raises InvalidSpecificationException if the spec does not pass the checks.
Only runs checks that are considered necessary for the specification to be functional.
Issues a warning for each file to be packaged which is world-readable.
Implementation for Specification#validate_permissions