Skip to content

A managed dependency with 'RELEASE' version is not resolved correctly #4983

Open
@crankydillo

Description

<version>RELEASE</version> doesn't get resolved to the latest release.

The POM I have below works if I use it with mvn:3.9.9.

What version of OpenRewrite are you using?

main branch, rewrite-maven module

How are you running OpenRewrite?

IDE

What is the smallest, simplest way to reproduce the problem?

Add the following to MavenParserTest:

    @Test
    @DisplayName("Using RELEASE for GAV version in dependency management")
    void releaseInDepMgmt() {
        rewriteRun(
          pomXml(
            """
              <project>
                <groupId>com.mycompany.app</groupId>
                <artifactId>my-app</artifactId>
                <version>1</version>
                
                <dependencyManagement>
                  <dependencies>
                     <dependency>
                      <groupId>org.springframework.boot</groupId>
                      <artifactId>spring-boot-dependencies</artifactId>
                      <version>RELEASE</version>
                      <type>pom</type>
                      <scope>import</scope>
                    </dependency>
                  </dependencies>
                </dependencyManagement>
                <dependencies>
                  <dependency>
                    <groupId>org.junit.jupiter</groupId>
                    <artifactId>junit-jupiter</artifactId>
                  </dependency>
                </dependencies>
              </project>
              """
          )
        );
    }

What did you see instead?

I expected no error, but got a failing test:

Caused by: org.openrewrite.maven.MavenDownloadingException: org.springframework.boot:spring-boot-dependencies:RELEASE failed. Unable to download POM: org.springframework.boot:spring-boot-dependencies:RELEASE. Tried repositories:
https://repo.maven.apache.org/maven2: HTTP 404
	at org.openrewrite.maven.internal.MavenPomDownloader.download(MavenPomDownloader.java:660)
	at org.openrewrite.maven.tree.ResolvedPom$Resolver.mergeDependencyManagement(ResolvedPom.java:812)
	at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolveParentDependenciesRecursively(ResolvedPom.java:445)
	at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolveParentsRecursively(ResolvedPom.java:397)
	at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolve(ResolvedPom.java:368)
	at org.openrewrite.maven.tree.ResolvedPom.resolve(ResolvedPom.java:182)
	at org.openrewrite.maven.tree.Pom.resolve(Pom.java:193)
	at org.openrewrite.maven.tree.Pom.resolve(Pom.java:175)
	at org.openrewrite.maven.MavenParser.parseInputs(MavenParser.java:113)
	... 7 more

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    • Status

      No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions