OidcSessionRegistry nullability issues
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Quiet
- Domain
- authentication, backend
Research direction
Start with the removeSessionInformation method in oauth2/oauth2-client/src/main/java/org/springframework/security/oauth2/client/oidc/session/OidcSessionRegistry.java, using the linked source location. Check the package nullability annotations against the documented nullable result, then verify that a Kotlin implementation with a nullable return type compiles and that the API documentation remains consistent.
Written by the indexing model from the issue text.
Description
Describe the bug
When upgrading to spring-security 7.1.0 a custom OidcSessionRegistry can no longer be built in Kotlin.
The documentation for org.springframework.security.oauth2.client.oidc.session.OidcSessionRegistry#removeSessionInformation(java.lang.String) mentions that the result could be null:
Returns: any found OidcSessionInformation, could be null
However, due to the presence of jspecify annotations in the package, the return type must never be null.
To Reproduce
Create a custom implementation of OidcSessionRegistry in kotlin, and observe that the below signature no longer compiles:
override fun removeSessionInformation(clientSessionId: String): OidcSessionInformation?
Expected behavior
org.springframework.security.oauth2.client.oidc.session.OidcSessionRegistry#removeSessionInformation(java.lang.String should declare a nullable return value, as the documentation otherwise specifies
Sample
N/A
- Dominant language
- Java
- Stars
- 9.6k
- Forks
- 6.3k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 52
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from spring-projects/spring-security
-
status: waiting-for-triage
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
spring-projects/spring-security#19733 ·
-
status: waiting-for-triage type: enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
spring-projects/spring-security#19730 ·
-
status: waiting-for-triage type: bug
Difficulty 1/5 Under an hour Newbie friendliness 90/100
spring-projects/spring-security#19728 ·
-
status: waiting-for-triage type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
spring-projects/spring-security#19725 ·
-
in: build type: task
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
spring-projects/spring-security#19717 ·
All issues in spring-projects/spring-security
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
infinispan/infinispan#18150 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
opensearch-project/k-NN#3597 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100