BUGFIX: Using the refactor script: "Rename field" in a @(Super)Builder-marked file in eclipse or VSCode would cause issues. [Issue #3181] (projectlombok/lombok#3181).
BUGFIX: Using val together with any call to a method that explicitly resolves to a default impl in an interface didn't work in javac. [Issue #3242](projectlombok/lombok#3242).
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).
You can trigger a rebase of this PR 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)
Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
Bumps org.projectlombok:lombok from 1.18.18 to 1.18.28.
Changelog
Sourced from org.projectlombok:lombok's changelog.
Commits
57a886b
[release] pre-release version bump375891f
[build] Check version before allowing release250bc06
[fixes #3406] Find jdt.core classloader if initialized in batch mode3f51b25
Remove eclipse specific classes in ExtensionMethod patch signaturesb80ff39
[fixup]2079eba
[build] Fixingant edge.release
.afceb13
[fixes #3373] Find references for extension methodsd56b576
[changelog]e051df9
Reduce allocations from JavacHandlerUtil.typeMatches()02fe21f
[jdk20] Reorder JavacAST child nodes for JCEnhancedForLoopYou can trigger a rebase of this PR 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)