Class AndroidGitSemVerExtension
-
- All Implemented Interfaces:
public class AndroidGitSemVerExtension extends GitSemVerExtensionThe plugin extension with the DSL.
Supports the following properties:
minimumVersion, defaulting to 0.1.0
developmentIdentifier, the identifier for the in-development versions
noTagIdentifier, the identifier for early versions of the project, when no tags are available yet
fullHash, whether to use the full commit hash as build metadata
maxVersionLength, cuts the version to the specified length. Useful for some destinations, e.g., the Gradle Plugin Portal, which limits version numbers to 20 chars.
developmentCounterLength, how many digits to use for the counter
enforceSemanticVersioning, whether the system should fail or just warn in case a non-SemVer compatible version gets produced
preReleaseSeparator, how to separate the pre-release information. Changing this value may generate non-SemVer-compatible versions.
buildMetadataSeparator, how to separate the pre-release information. Some destinations (e.g., the Gradle Plugin Portal) do not support the default value '+'. A reasonable alternative is using '-', lifting the build metadata to a pre-release segment.
distanceCounterRadix, the radix for the commit counter. Defaults to base 36. Bases from 2 to 36 allowed.
versionPrefix, to be used in case tags are prefixed with some symbols before the semantic version (e.g., v1.0.0 is prefixed with "v").
includeLightweightTags, to be used in case lightweight tags should be considered.
forceVersionPropertyName, the name of the property that, if set, will force the plugin to use the specified version. By default, the property name is "forceVersion".
incrementalCode, whether to use the incremental version code or not (default: true)
versionCodeMajorDigits, the number of digits to use for the major version (default: 3)
versionCodeMinorDigits, the number of digits to use for the minor version (default: 3)
versionCodePatchDigits, the number of digits to use for the patch version (default: 3)
-
-
Field Summary
Fields Modifier and Type Field Description public final static StringEXTENSION_NAMEprivate final Property<Boolean>incrementalCodeprivate final Property<Integer>versionCodeMajorDigitsprivate final Property<Integer>versionCodeMinorDigitsprivate final Property<Integer>versionCodePatchDigitsprivate final Property<String>buildMetadataSeparatorprivate final Property<Integer>developmentCounterLengthprivate final Property<String>developmentIdentifierprivate final Property<Integer>distanceCounterRadixprivate final Property<Boolean>enforceSemanticVersioningprivate final Property<String>forceVersionPropertyNameprivate final Property<Boolean>fullHashprivate final Property<Boolean>includeLightweightTagsprivate final Property<Integer>maxVersionLengthprivate final Property<String>minimumVersionprivate final Property<String>noTagIdentifierprivate final Property<String>preReleaseSeparatorprivate final Property<String>versionPrefix
-
Constructor Summary
Constructors Constructor Description AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode, Property<Integer> versionCodeMajorDigits, Property<Integer> versionCodeMinorDigits, Property<Integer> versionCodePatchDigits)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode, Property<Integer> versionCodeMajorDigits, Property<Integer> versionCodeMinorDigits)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode, Property<Integer> versionCodeMajorDigits)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier)AndroidGitSemVerExtension(Project project, Property<String> minimumVersion)AndroidGitSemVerExtension(Project project)
-
Method Summary
Modifier and Type Method Description final Property<Boolean>getIncrementalCode()final Property<Integer>getVersionCodeMajorDigits()final Property<Integer>getVersionCodeMinorDigits()final Property<Integer>getVersionCodePatchDigits()final IntegercomputeVersionCode()Computes the version code. -
Methods inherited from class org.danilopianini.gradle.gitsemver.GitSemVerExtension
assignGitSemanticVersion, commitNameBasedUpdateStrategy, computeVersion, excludeLightweightTags, findClosestTag, getBuildMetadataSeparator, getDevelopmentCounterLength, getDevelopmentIdentifier, getDistanceCounterRadix, getEnforceSemanticVersioning, getForceVersionPropertyName, getFullHash, getIncludeLightweightTags, getMaxVersionLength, getMinimumVersion, getNoTagIdentifier, getPreReleaseSeparator, getVersionPrefix -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode, Property<Integer> versionCodeMajorDigits, Property<Integer> versionCodeMinorDigits, Property<Integer> versionCodePatchDigits)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode, Property<Integer> versionCodeMajorDigits, Property<Integer> versionCodeMinorDigits)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode, Property<Integer> versionCodeMajorDigits)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName, Property<Boolean> incrementalCode)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags, Property<String> forceVersionPropertyName)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix, Property<Boolean> includeLightweightTags)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix, Property<String> versionPrefix)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator, Property<Integer> distanceCounterRadix)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator, Property<String> buildMetadataSeparator)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning, Property<String> preReleaseSeparator)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength, Property<Boolean> enforceSemanticVersioning)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength, Property<Integer> developmentCounterLength)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash, Property<Integer> maxVersionLength)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier, Property<Boolean> fullHash)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier, Property<String> noTagIdentifier)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion, Property<String> developmentIdentifier)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project, Property<String> minimumVersion)
-
AndroidGitSemVerExtension
AndroidGitSemVerExtension(Project project)
-
-
Method Detail
-
getIncrementalCode
final Property<Boolean> getIncrementalCode()
-
getVersionCodeMajorDigits
final Property<Integer> getVersionCodeMajorDigits()
-
getVersionCodeMinorDigits
final Property<Integer> getVersionCodeMinorDigits()
-
getVersionCodePatchDigits
final Property<Integer> getVersionCodePatchDigits()
-
computeVersionCode
final Integer computeVersionCode()
Computes the version code.
-
-
-
-