-
-
Notifications
You must be signed in to change notification settings - Fork 639
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
Make Java17+ version and transform some classes to records (Tuples, Either, Try and Validation) #2765
Comments
This is duplicate/overlap with #2764. |
+1 on that ... but please first release 1.0.0 then release a 2.x with java 17+ requirements |
@pertl I think we just need to figure out who will do the release :-) |
I don't think this is either a good idea to do now or a good idea in general. Consider
switch (opt) {
case Option.none() -> {}
case Option.some(var x) -> {}
} And that will just be better than making things records since we don't need to compromise any backwards compatibility for it. |
To be clear, I am in favor of upping the baseline version of Java required. Thats whatever. It needs to happen eventually to take advantage of patterns anyways. Might as well align on the "tip and tail" thing brian goetz brings up. |
@bowbahdoe The current discussions are going more in the direction of releasing current code as 1.0.0, then circling back to this type of advancement ins 2.0.0. |
I vehemently disagree with doing any sort of 2.0 that doesn't also change G:A and package + module names so both can coexist. (while i'm dumping opinions on direction) |
Personally, I'm leaning towards releasing I synced with Daniel, and it seems like there's consensus that the current courageous 1.0.0 attempts went nowhere and that a reset is needed. I need to do some digging on my own to understand how severe the problem is. However, if that's the indeed the case, then |
Many Java projects statistically already use Java 17+ version (actually it is required for supported versions of the most popular Java framework, Spring), so maybe it's time for VAVr to follow this trend too?
Java 16+ has JEP 395 with
record
which is very interesting for FP concepts:So I think it would be great to declare Java 17 support as the minimum possible version and convert some classes to records - especially Tuples, Either, Try and Validation - so that Java 21 users can use Pattern Matching with them.
The text was updated successfully, but these errors were encountered: