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

Nimbus JOSE JWT downgrade is a breaking change in Spring Boot 2.4.3 #25557

Closed
dkroehan opened this issue Mar 9, 2021 · 3 comments
Closed

Nimbus JOSE JWT downgrade is a breaking change in Spring Boot 2.4.3 #25557

dkroehan opened this issue Mar 9, 2021 · 3 comments
Labels
type: wiki-documentation A documentation update required on the wiki

Comments

@dkroehan
Copy link

dkroehan commented Mar 9, 2021

Hi!

When updating from Spring Boot 2.4.2 to Spring Boot 2.4.3 we discovered an undocumented breaking change on the managed version of Nimbus JOSE JWT library.

Spring Boot 2.4.3 contains the following change: #25070

This downgrades the library from 9.1.3 to 8.20.2

This is a breaking change as it throws the following NoSuchMethodError on our code base:

Caused by: java.lang.NoSuchMethodError: 'java.util.Map com.nimbusds.jwt.JWTClaimsSet.getJSONObjectClaim(java.lang.String)'

This dependency downgrade is not listed in the release notes: https://github.com/spring-projects/spring-boot/releases/tag/v2.4.3

I saw in the release notes of Spring Boot 2.5.2-M2 that it includes an update to Nimbus JOSE JWT 9.5
See: #25249

@spring-projects-issues spring-projects-issues added the status: waiting-for-triage An issue we've not yet triaged label Mar 9, 2021
@wilkinsona
Copy link
Member

Thanks for raising this. The change is listed in the release notes but it's not as prominent as we had intended. There's an entry in the list of bug fixes:

Managed versions of oauth2-oidc-sdk and nimbus-jose-jwt are incompatible #25070

I've updated the release notes to add a new entry at the top that describes the changes and suggests using nimbus-jose-jwt.version to move back to 9.x if you need to do so.

@wilkinsona wilkinsona added type: wiki-documentation A documentation update required on the wiki and removed status: waiting-for-triage An issue we've not yet triaged labels Mar 9, 2021
@dkroehan
Copy link
Author

dkroehan commented Mar 9, 2021

Thx for updating the release notes :)

The entry in the list of bug fixes helped me to actually find the root cause.

In general I didn't and also wouldn't expect any breaking changes in the list of bug fixes.

@wilkinsona
Copy link
Member

In general I didn't and also wouldn't expect any breaking changes in the list of bug fixes

That's an entirely reasonable expectation. Unfortunately, it was impossible to fix the problem without one and, after much consideration, we decided that the change we made was the least bad option. I think this is the first time we've made a breaking change in a maintenance release and we hope that it will also be the last.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: wiki-documentation A documentation update required on the wiki
Projects
None yet
Development

No branches or pull requests

3 participants