Skip to content

Temurin .tool-versions specifier not parsed #719

Open
@alexpearce

Description

@alexpearce

Description:

A .tool-versions file with a valid Temurin version specifier is parsed as having a null version.

Given the following .tool-versions:

java temurin-21.0.5+11.0.LTS

I can install Java locally with asdf:

asdf plugin-add java https://github.com/halcyon/asdf-java.git
asdf install java

(The list of valid versions is given by asdf list-all java.)

But with the following action configuration:

- uses: actions/[email protected]
    with:
      distribution: "temurin"
      java-version-file: ".tool-versions"

The action fails to parse the version.

Relevant debug log:

  ##[debug]java-version input is empty, looking for java-version-file input
  ##[debug]Parsed version from file 'null'
  Error: No supported version was found in file .tool-versions
  ##[debug]Node Action run completed with exit code 1
  ##[debug]Finishing: Set up Java

This happens because the version regex does not accept the trailing .0.LTS. In other words, a .tool-versions content of java temurin-21.0.5+11 would pass the regex, but would not be a version known to the asdf plugin.

Task version:

v4.6.0.

Platform:

  • Ubuntu
  • macOS
  • Windows

Runner type:

  • Hosted
  • Self-hosted

Repro steps:

Create .tool-versions file at repository root with contents:

java temurin-21.0.5+11.0.LTS

Use action configuration:

- uses: actions/[email protected]
        with:
          distribution: "temurin"
          java-version-file: ".tool-versions"

Expected behavior:

The action should install Temurin JDK 21.0.5+11.0.LTS.

Actual behavior:

The action does not parse the version.

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions