codegen-java should support generating record classes instead of regular classes whenever possible.
(codegen-kotlin already generates data classes whenever possible.)
I have this almost working, but one important question remains: how to deal with backward compatibility?
One option is to introduce a —generate-records flag and only generate record classes if this flag is set.
Another option is to ask users to stay on the 0.27 code generator until they are ready to switch to record classes.
In any case, generating record classes should eventually become the default.
Yeah, definitely. Now with Java 11 dropped, the code generator should generate records. I think this is okay as a breaking change (generate java records by default, require flag to retain old behavior).
codegen-java should support generating record classes instead of regular classes whenever possible. (codegen-kotlin already generates data classes whenever possible.)
I have this almost working, but one important question remains: how to deal with backward compatibility?
One option is to introduce a
—generate-records
flag and only generate record classes if this flag is set. Another option is to ask users to stay on the 0.27 code generator until they are ready to switch to record classes. In any case, generating record classes should eventually become the default.