Update language level to JDK 17#3967
Draft
alecgrieser wants to merge 5 commits intoFoundationDB:mainfrom
Draft
Conversation
This updates the required project language level from 11 to 17, which is the next LTS version. This is a breaking change, in that downstream projects will need to update their language level to match. As a benefit, though, we get to use JDK 17 features that we've previously refrained from using for backwards compatibility reasons. To showcase this, I've updated some of our test files to use text blocks to more naturally specify the schema template, and I've updated one callsite to use `Stream::toList` instead of `Collectors::toList`. This resolves FoundationDB#2360.
normen662
reviewed
Feb 26, 2026
| create index t3_i4 as select count(col2) from t3 group by col1 | ||
| create index t3_i5 as select sum(col1) from t3 | ||
| create index t3_i6 as select sum(col1) from t3 group by col2 | ||
| """; |
| <component name="NullableNotNullManager"> | ||
| <option name="myDefaultNullable" value="javax.annotation.Nullable" /> | ||
| <option name="myDefaultNotNull" value="javax.annotation.Nonnull" /> | ||
| <option name="myOrdered" value="true" /> |
Contributor
There was a problem hiding this comment.
Probably don't want that one.
Collaborator
Author
There was a problem hiding this comment.
Do you know what it does? This is something that the IDE added for me when I updated the JDK version. I can take it out, but I'd prefer to know what exactly it was doing
Collaborator
There was a problem hiding this comment.
Looks to record a migration to ordered list.
Collaborator
Author
There was a problem hiding this comment.
Okay, that sounds like we should include it then. This also adds a few more elements to the list, but that sounds fine, as it just means the static analysis is able to understand more of our dependencies' annotations
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.
This updates the required project language level from 11 to 17, which is the next LTS version. This is a breaking change, in that downstream projects will need to update their language level to match. As a benefit, though, we get to use JDK 17 features that we've previously refrained from using for backwards compatibility reasons. To showcase this, I've updated some of our test files to use text blocks to more naturally specify the schema template, and I've updated one callsite to use
Stream::toListinstead ofCollectors::toList.This resolves #2360.