Skip to content

Using cached versionProvider in configuration breaks version calculation #870

Description

@piomar123

I have tags including the branch name, e.g. release-main-1.2.3 or release-other-3.4.5 and I configured the plugin as below:

scmVersion {
    tag {
        prefix.set("release-${scmPosition.branch}-")
    }
 }

Unfortunately, the result of gradle currentVersion always results in Project version: 0.1.0-SNAPSHOT.

I finally found that accessing anything from the cached versionProvider (in this case scmPosition) in the configuration breaks the version calculation. The solution was to use the uncached provider:

prefix.set("release-${uncached.position.branch}-")

And this gives the correct currentVersion: Project version: 1.2.3

The problem is that this feature is not documented nor I could find any info about the issue with using the cached provider. Am I missing something?

I know about branchPrefix property but it feels too limiting.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions