Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AVRO-3852: Upgrade CI tests to Java 21 GA release #2525

Merged
merged 4 commits into from
Oct 23, 2023

Conversation

iemejia
Copy link
Member

@iemejia iemejia commented Sep 26, 2023

What is the purpose of the change

(For example: This pull request improves file read performance by buffering data, fixing AVRO-XXXX.)

Verifying this change

(Please pick one of the following options)

This change is a trivial rework / code cleanup without any test coverage.

(or)

This change is already covered by existing tests, such as (please describe tests).

(or)

This change added tests and can be verified as follows:

(example:)

  • Extended interop tests to verify consistent valid schema names between SDKs
  • Added test that validates that Java throws an AvroRuntimeException on invalid binary data
  • Manually verified the change by building the website and checking the new redirect

Documentation

  • Does this pull request introduce a new feature? (yes / no)
  • If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@github-actions github-actions bot added Java Pull Requests for Java binding build labels Sep 26, 2023
@iemejia
Copy link
Member Author

iemejia commented Sep 26, 2023

Ah oups it seems version 21 is not yet released ok we will have to wait a bit then.
actions/setup-java#541

@iemejia
Copy link
Member Author

iemejia commented Oct 11, 2023

JDK 21 is available now so we should be good. PTAL @martin-g

mvn archetype:generate \
-DarchetypeGroupId=org.apache.avro \
-DarchetypeArtifactId=avro-service-archetype \
-DgroupId=org.apache.avro \
Copy link
Member

@martin-g martin-g Oct 11, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does it know which version of the archetype to use ?
I expect something like -DarchetypeArtifactVersion=1.12.0-SNAPSHOT to be specified too.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not want to do that to avoid having to update the current version on every release (usually project maintainers tend to forget that). I digged deeper and found that there is a way to do integration tests on maven archetypes so it is maybe a better solution (Avro already was doing it but it was not well configurated for modern maven standards).
https://maven.apache.org/archetype/maven-archetype-plugin/integration-test-mojo.html

I will update this in the PR

@iemejia
Copy link
Member Author

iemejia commented Oct 20, 2023

I fixed the archetypes integration tests which should pretty much cover the missing validation in each specific Java version. This should be good now. PTAL again @martin-g

@iemejia iemejia merged commit eeb1f02 into apache:main Oct 23, 2023
16 checks passed
@iemejia iemejia deleted the AVRO-3852-java21 branch October 23, 2023 06:37
RanbirK pushed a commit to RanbirK/avro that referenced this pull request May 13, 2024
* AVRO-3852: Upgrade CI tests to Java 21 GA release

* AVRO-3852: Fix maven archetype generation for multiple Java versions

* AVRO-3852: Test with JDK 22 EA distribution

* AVRO-3852: Fix maven archetype integration test
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Java Pull Requests for Java binding
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants