- FEATURE: You can now configure
@FieldNameConstants
to CONSTANT_CASE
the generated constants, using a lombok.config
option. See the FieldNameConstants documentation. .
- FEATURE: You can now suppress generation of the
builder
method when using @Builder
; usually because you're only interested in the toBuilder
method. As a convenience we won't emit warnings about missing @Builder.Default
annotations when you do this.
- FEATURE: You can now change the access modifier of generated builder classes. .
- FEATURE: When using
@NonNull
, or any other annotation that would result in a null-check, you can configure to generate an assert statement instead. .
- FEATURE: Lombok now knows exactly how to treat
@com.fasterxml.jackson.annotation.JsonProperty
and will copy it to the right places for example when making builders. .
- PLATFORM: A few lombok features (most notably delombok) failed on JDK12.
- BUGFIX: var/val on methods that return an intersection type would now work in Eclipse.
- BUGFIX: Fix for java6 regression if a field has javadoc.
- BUGFIX: Delombok now delomboks java10's own
var
as var
and not as the actual underlying type.
- BUGFIX: If you use
@Builder
and manually write the build()
method in your builder class, javac would error out instead of deferring to your implementation.
- BUGFIX:
@SuperBuilder
together with @Singular
on non-lists would produce an erroneous emptyList
call. .
- IMPROBABLE BREAKING CHANGE: For fields and parameters marked non-null, if the method body starts with an assert statement to ensure the value isn't null, no code to throw an exception will be generated.
- IMPROBABLE BREAKING CHANGE: When using
ecj
to compile java code with @Builder
or @SuperBuilder
in it, and a builder setter method was generated for a @NonNull
-marked method, no explicit null check would be present. However, running javac
on the exact same file would produce the null check. Now ecj also produces this null check. .