jakartaee / rest

Jakarta RESTful Web Services
Other
351 stars 114 forks source link

jakarta.ws.rs:all:4.0.0-M2 missing in Maven Central #1252

Closed jskillin-idt closed 3 months ago

jskillin-idt commented 3 months ago

Hey all,

This is my first time interacting with the Jakarta repository group, so let me know if this is missing information, or filed in the wrong place.

I have discovered, by trying to build using a Gradle build which is fetching POM metadata about the latest releases, that the 4.0.0-M2 release is missing the "all" artifact in Maven Central.

In my situation, all I had to do was depend on jakarta.ws.rs:jakarta.ws.rs-api:4.0.0-M2 in my build.gradle to see the issue.

Once I have an issue number I'll edit this issue with a reproducer to demonstrate how I arrived at this bug. Perhaps I have a misunderstanding in how this repository's releases interact with Maven Central, and how these milestone releases are expected to be used, and the reproducer will demonstrate that clearly.

Edit: reproducer is here: https://github.com/jskillin-idt/jakartaee-rest-issues-1252

Edit 2: I should probably describe how to use the reproducer. :) Simply run ./gradlew build from the root of the repository's main branch.

jamezp commented 3 months ago

Hello @jskillin-idt. We are trying to sort out the issue of being able to release 4.0.0. The 4.0.0-M2 on Maven central unfortunately is not correct. The current release is 3.1.0 with 4.0.0 coming out very soon. Hopefully before the end of the week.

One thing to note is 4.0.0 is a new API and there may be a lag in a final release of implementations.

jskillin-idt commented 3 months ago

There is probably no purpose, then, in removing or fixing the 4.0.0-M2 release in Maven Central? I'll work on a way for my build to ignore the 4.0.0-M2 as an exception, if the plan is just to let the 4.0.0-M2 remain published as is and let a future release supersede.

jamezp commented 3 months ago

Yeah, hopefully a release will be out soon. With Maven Central you can't really remove or replace archives. It's probably best to work off SNAPSHOTS of main for now if you're trying to implement the API.

jskillin-idt commented 3 months ago

Unfortunately, my situation far more mundane than trying to implement the latest API. :smile: I am using dynamic version ranges in Gradle, and 4.0.0-M2 happened to be selected as the upper end of that range, which caused Gradle to try to parse the metadata of 4.0.0-M2, which then triggered a failure when certain POMs didn't exist as needed to complete resolution.

The issue is simple enough to work around until the latest version on Maven Central changes. I appreciate you taking the time to reply to my comments.

jamezp commented 3 months ago

Given that I will close this. If for some reason you feel this needs to be reopened please feel free to reopen it.

I will say, once 4.0.0 is out you'd need to change your implementation. The new API will have methods not implemented in currently released RESTEasy, Jersey, etc.

senivam commented 2 months ago

fix for the described issue is on the infrastructure (Jenkins job). Advice on the fix is described in the #1253