FEATURE: @ToString has an annotation parameter called onlyExplicitlyIncluded. There's now a config key lombok.toString.onlyExplicitlyIncluded to set this property as well. [Issue #2849](projectlombok/lombok#2849).
FEATURE: Turning a field named uShape into a getter is tricky: getUShape or getuShape? The community is split on which style to use. Lombok does getUShape, but if you prefer the getuShape style, add to lombok.config: lombok.accessors.capitalization = beanspec. [Issue #2693](projectlombok/lombok#2693) [Pull Request #2996](projectlombok/lombok#2996). Thanks @YonathanSherwin!
FEATURE: You can now use @Accessors(makeFinal = true) to make final getters, setters, and with-ers. [Issue #1456](projectlombok/lombok#1456).
BUGFIX: Delomboking code with @Builder.Default in it would generate different code vs lombok itself. [Issue #3053](projectlombok/lombok#3053).
BUGFIX: Combining @NonNullByDefault and lombok.addNullAnnotations would generate two @Nullable annotations and thus generate a compiler error. [Issue #3120](projectlombok/lombok#3120). Thanks @JohnPaulTaylorII!
BUGFIX VerifyError would show up in the latest eclipse release when using various refactor scripts. [Issue #3134](projectlombok/lombok#3134).
BUGFIX: The various @Log annotations can now be placed on inner enums and records. [Issue #2990](projectlombok/lombok#2990).
SECURITY: A widely reported security issue with log4j2 (CVE-2021-44228) has absolutely no effect on either lombok itself nor does usage of lombok on its own, or even the usage of lombok's @Log4j2, cause any issues whatsoever: You have to ship your own log4j2 dependency in your app - update that to 2.17 or otherwise mitigate this issue (see the CVE page). To avoid unneccessary warnings from dependency checkers, our dep on log4j2, which is used solely for testing, isn't shipped by us, and cannot be exploited in any way, has been updated to 2.17.1. [Issue #3063](projectlombok/lombok#3063)
IMPROBABLE BREAKING CHANGE: Lombok now understands a few more annotations that imply "this field should not ever contain a null reference". Lombok will thus copy some of these new annotations e.g. to generated getters and the like. [Pull Request #2904](projectlombok/lombok#2904)
IMPROBABLE BREAKING CHANGE: If the underlying compiler and --release / --source option is 10 or higher, lombok's val is now replaced by final var. That means compound declarations such as val x = 10, y = 12; now fail (lombok's old val implementation supported it, javac's var does not), but IDE support in particular is more reliable. We decided it was worth the tradeoff.
PLATFORM: All lombok features updated to act in a sane fashion with JDK16's record feature. In particular, you can annotate record components with @NonNull to have lombok add null checks to your compact constructor (which will be created if need be).
BUGFIX: Lombok interacts properly with the new save actions in eclipse 2021-03.
POTENTIAL BUGFIX: lombok + errorprone could cause IllegalArgumentException if using the MissingSummary bug pattern. [Issue #2730](projectlombok/lombok#2730).
Commits
ba0f128 [versioning] pre-release version bump 1.18.24
6594d95 [fixes #3169] Snippet for @Singular didn't include the clearCollection meth...
773b374 [build] Replace JDK test targets from v14 en v16 to v17 (LTS) and v18 (just r...
0549388 [build] It was ever so slightly broken since last commit. fixed.
578e4b8 Merge pull request #3164 from Submohr/patch-1
71fcc0a Merge pull request #3155 from Rawi01/extensionmethod-conditional-methodref
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps lombok from 1.18.18 to 1.18.24.
Changelog
Sourced from lombok's changelog.
Commits
ba0f128
[versioning] pre-release version bump 1.18.246594d95
[fixes #3169] Snippet for@Singular
didn't include the clearCollection meth...773b374
[build] Replace JDK test targets from v14 en v16 to v17 (LTS) and v18 (just r...0549388
[build] It was ever so slightly broken since last commit. fixed.578e4b8
Merge pull request #3164 from Submohr/patch-171fcc0a
Merge pull request #3155 from Rawi01/extensionmethod-conditional-methodref1eb1a8b
[Issue #3143] [changelog]c8607ba
#3143 Review and update jopatai's work on the maven/ecj agent jarc489a99
Fix typo in StandardException documentationd4975cf
[fixes #3153] Improve the handling of ExtensionMethod argumentsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)