Repository navigation
DO NOT MERGE: Bump to 2.2.0 (release review and CI check only) - #249
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jmao-denver
requested review from
devinrsmith
and
a balanced review from Copilot
October 19, 2026 23:07
There was a problem hiding this comment.
🟢 Approval recommended
Version declarations are consistent, and the changelog matches the supplied release context with no blocking issues identified.
No open issues 🎉
What changed in this PR
Prepares JPY 2.2.0 for release review and CI validation. Publication follows the documented release-branch process; do not use the merge button.
Changes:
- Sets Python and Maven versions to
2.2.0. - Finalizes the changelog and records dependency and build fixes.
| File | Description |
|---|---|
| pom.xml | Removes the Maven -SNAPSHOT qualifier. |
| jpyutil.py | Removes the Python .dev0 qualifier. |
| CHANGES.md | Marks 2.2.0 released and adds five changelog entries. |
Review effort: Balanced
devinrsmith
previously approved these changes
Oct 19, 2026
actions/setup-java v6 (jpy-consortium#244) no longer writes the gpg.passphrase server entry to settings.xml. It sets gpg.passphraseEnvName instead, which maven-gpg-plugin only reads from 3.2.0 on. With 3.0.1 the plugin found no passphrase and gpg failed with "No pinentry" in publish-jar. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
devinrsmith
previously approved these changes
Oct 20, 2026
Maven 3.10, on ubuntu-24.04 since image 20261012, leaves maven-metadata-local.xml in the central-publishing bundle. Central rejects the deployment with "Bundle has content that does NOT have a .pom file". See mavenplugins/central-publishing-maven-plugin#79. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
devinrsmith
approved these changes
Oct 20, 2026
devinrsmith
approved these changes
Oct 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Do not merge this PR with the merge button. It exists only for review and a CI check of the 2.2.0 release commits.
This PR has three commits:
CHANGES.mdand the.dev0and-SNAPSHOTqualifiers fromjpyutil.pyandpom.xml. It adds changelog lines for Bump actions/checkout from 6 to 7 #240, Bump actions/setup-python from 6 to 7 #242, Bump actions/setup-java from 5 to 6 #244, Bump docker/bake-action from 7.2.0 to 7.4.0 #246 and fix: fetch bullseye packages from archive.debian.org #247. The fix: DH-23469: Support Python 3.15 #245 lines were already there.publish-jarjob.Why the maven-gpg-plugin bump
The first publish run for 7cc1f66 (run 39343321417) uploaded the wheels to PyPI. Its
publish-jarjob failed while signing the jars, withgpg: signing failed: No pinentry. Nothing reached Maven Central.The cause is #244, which moved the workflow from
actions/setup-javav5 to v6.~/.m2/settings.xml, which tells Maven where to find the GPG passphrase.gpg.passphraseserver entry that holds the passphrase. maven-gpg-plugin 3.0.1 reads that entry by default.gpg.passphraseEnvNameproperty instead, which names the environment variable that holds the passphrase.gpg.passphraseEnvNamefrom 3.2.0 on. With 3.0.1 the plugin found no passphrase. gpg then tried to prompt for one, and a CI runner has no prompt.The PR checks for #244 passed because signing only runs on
release/v*branches.Why the Maven 3.9.16 pin
The second publish run for 8210394 (run 39356752123) signed and uploaded the jars. Maven Central then rejected the deployment during validation:
ubuntu-24.04runner image ships Maven 3.10.0 since image 20261012. The 2.1.0 release ran on Maven 3.9.x.central-publishing-maven-pluginpacksmaven-metadata-local.xmlinto the artifact folder of the upload bundle, next to the version folders. Central rejects any folder in the bundle that has files but no.pom.The
publish-jarjob now generates a Maven wrapper for 3.9.16 and deploys with./mvnw. Only that job changes. The wrapper files are made on the runner and are not committed.How this PR is used
release/v*branches, so neither fix can be tested here.release/v2.2.0on this repo. The PyPI upload fails there because 2.2.0 is already on PyPI.publish-jarruns on its own and stages the jars on Maven Central. They are published by hand in the Central portal. c85e97f is taggedv2.2.0.master. GitHub marks this PR as merged on its own.A squash or rebase merge would put different commits on master than the ones tagged and published. That is why the button must not be used.
🤖 Generated with Claude Code