eclipse / microprofile-open-api

Microprofile open api
Apache License 2.0
131 stars 81 forks source link

Update to use the parent pom 2.6 and prepare for the release 3.1 #547

Closed Emily-Jiang closed 1 year ago

MikeEdgar commented 1 year ago

We'll need to drop JDK 8 from the CI process: https://github.com/eclipse/microprofile-open-api/blob/master/.github/workflows/build.yml#L11

It might be good to add 17 at the same time as well.

Azquelt commented 1 year ago

Looks like the parent pom is still specifying Java 8, which doesn't work when there are EE10 dependencies. https://github.com/eclipse/microprofile-parent/blob/f5dcc33183f3b1f274fc1d526a9c21f581f6fa35/pom.xml#L35-L36

If the parent pom is sticking with Java 8 for now, I think we need to override that so that the OpenAPI TCK can depend on JAX-RS annotations.

MikeEdgar commented 1 year ago

Looks like the parent pom is still specifying Java 8, which doesn't work when there are EE10 dependencies. https://github.com/eclipse/microprofile-parent/blob/f5dcc33183f3b1f274fc1d526a9c21f581f6fa35/pom.xml#L35-L36

That should be OK. This project should still create JDK 8-compatible binaries, but the CI won't be able to run with JDK 8 (see my earlier comment). I am fine to bump the output to Java 11 bytecode, but I thought that would be avoided unless the API/features requires it.

Azquelt commented 1 year ago

Ah, that's ok then, I'd wrongly interpreted the failures on the build from ci.eclipse.org. I guess it just needs updating to use Java 11 as well.

Emily-Jiang commented 1 year ago

Let me remove Java 8 from CI job as the mininum Java version for Jakarta EE 10 is Java 11.

Emily-Jiang commented 1 year ago

I have fixed the CI jobs to only run with Java 11 as the apis from CDI, JAX-RS in Jakarta EE 10 compile with Java 11.

Emily-Jiang commented 1 year ago

Changes look good to me. I'll also try this PR with SmallRye OpenAPI to be aware of any problems. It looks like the Eclipse Jenkins job is also still running with JDK 8.

yep, looking at it right now.

Emily-Jiang commented 1 year ago

I had a look at the Jenkins job and it seems to do with the microprofile parent java compilation. I have updated it to be 11 here. @MikeEdgar if you can review it, it will be good as I can do another microprofile-parent 3.0-RC2 to test it out. thanks

MikeEdgar commented 1 year ago

@Emily-Jiang , I updated the Jenkins job to use Eclipse Temurin JDK 11. The PR might need another push or open/close to trigger another build.

MikeEdgar commented 1 year ago

Re-reading the thread Version changes for new Jakarta EE versions, I'm now questioning whether this update should happen. Without changes to the API/spec in this project, I think compiling against the old Jakarta dependency is the correct thing to do and will not prevent usage with newer Jakarta versions.

Emily-Jiang commented 1 year ago

Re-reading the thread Version changes for new Jakarta EE versions, I'm now questioning whether this update should happen. Without changes to the API/spec in this project, I think compiling against the old Jakarta dependency is the correct thing to do and will not prevent usage with newer Jakarta versions.

@MikeEdgar The release plan for MP 6.0 has specified that all updated specs need to align with Jakarta EE 10 core profile while the unchanged specs don't need to such as Config, Rest Client, Health and Fault Tolerance. As for Open API 3.1, I thought it over and I think what you said makes sense. I will discuss this more in the next week's call. Let's leave this PR open for the time being.

Emily-Jiang commented 1 year ago

@Azquelt @MikeEdgar I have updated the PR accordingly using the parent pom of 2.6