Class VersioningExtension

java.lang.Object
com.cleanroommc.versioning.gradle.VersioningExtension

public abstract class VersioningExtension extends Object
Configures the version label and exposes the computed version.
  • Constructor Summary

    Constructors
    Constructor
    Description
    VersioningExtension(org.gradle.api.model.ObjectFactory objects)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract org.gradle.api.provider.Property<String>
    The path prefix marking a development branch, develop by default.
    abstract org.gradle.api.provider.Property<String>
    The pre-release label commits are counted under, dev by default.
    abstract org.gradle.api.provider.MapProperty<String,String>
    Additional pre-release identifiers, rendered as .<key>.<value> after the label in insertion order.
    abstract org.gradle.api.provider.Property<String>
    The branch a release tag has to be reachable from, master by default.
    org.gradle.api.provider.Property<Stage>
    The release stage.
    abstract org.gradle.api.provider.Property<String>
    The version assigned to project.version.
    void
    setStage(Stage value)
     
    void
    Sets the stage from its name, case insensitively.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • VersioningExtension

      @Inject public VersioningExtension(org.gradle.api.model.ObjectFactory objects)
      Parameters:
      objects - the injected object factory
  • Method Details

    • getReleaseBranch

      public abstract org.gradle.api.provider.Property<String> getReleaseBranch()
      The branch a release tag has to be reachable from, master by default.
      Returns:
      the release branch name
    • getDevelopmentPrefix

      public abstract org.gradle.api.provider.Property<String> getDevelopmentPrefix()
      The path prefix marking a development branch, develop by default. A branch named <prefix>/<major>.<minor> stays on that version and only advances the label.
      Returns:
      the development branch prefix
    • getLabel

      public abstract org.gradle.api.provider.Property<String> getLabel()
      The pre-release label commits are counted under, dev by default.
      Returns:
      the label
    • getMetadata

      public abstract org.gradle.api.provider.MapProperty<String,String> getMetadata()
      Additional pre-release identifiers, rendered as .<key>.<value> after the label in insertion order. Under GitHub Actions the run number is emitted as run ahead of these.
      Returns:
      the metadata
    • getStage

      public org.gradle.api.provider.Property<Stage> getStage()
      The release stage. Unset, it comes from the versioning.stage Gradle property, and failing that it is Stage.BETA while the version line is below 1.0.0 and Stage.RELEASE from there on.
      Returns:
      the stage
    • setStage

      public void setStage(Stage value)
      Parameters:
      value - the stage
    • setStage

      public void setStage(String value)
      Sets the stage from its name, case insensitively.
      Parameters:
      value - the stage name
      Throws:
      IllegalArgumentException - if the text names no stage
    • getVersion

      public abstract org.gradle.api.provider.Property<String> getVersion()
      The version assigned to project.version. The plugin wires and locks this.
      Returns:
      the computed version
    • toString

      public String toString()
      Overrides:
      toString in class Object