Skip to content

Commit 503a0c6

Browse files
docs: document minimum Lombok version for builder feature, refs #45 (#46)
Users need Lombok 1.18.2+ when using @GenerateDto(builder = true) because @SuperBuilder was introduced in that release. Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent cfa83ef commit 503a0c6

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

docs/dto-builder-pattern.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Use this when you want **Lombok’s builder** on generated DTOs. Project Equilib
55
## Prerequisites
66

77
- **`@GenerateDto(builder = true)`** on your domain (or API) class.
8-
- **Lombok** on your classpath and on the **annotation processor path** (see the main README). Project Equilibrium does not replace Lombok; it generates code that Lombok then expands.
8+
- **Lombok 1.18.2 or higher** on your classpath and on the **annotation processor path** (see the main README). Project Equilibrium does not replace Lombok; it generates code that Lombok then expands. Version 1.18.2 is the minimum because `@SuperBuilder` was introduced in that release.
99

1010
If you do not need builders, omit `builder` and use constructors and setters instead.
1111

docs/ecosystem.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,14 @@ Use [MapStruct](https://mapstruct.org/) `@Mapper` interfaces to map between doma
1717

1818
Different modules can standardize on different pieces: for example, generated DTOs in an API module and MapStruct mappers in an adapter layer.
1919

20+
## Lombok version compatibility
21+
22+
Project Equilibrium has **no runtime dependency** on Lombok. When you enable `@GenerateDto(builder = true)`, the processor emits `@SuperBuilder` and `@Builder.Default` annotations into generated source code. Your project's Lombok then expands these during its own annotation processing pass.
23+
24+
- **Minimum Lombok version for builders:** **1.18.2** (`@SuperBuilder` was introduced in this release)
25+
- **No maximum version constraint** — Equilibrium emits standard Lombok annotations as string literals, so any newer Lombok version that supports `@SuperBuilder` will work
26+
- **Without builders:** Lombok is entirely optional; Equilibrium has no Lombok dependency
27+
2028
## Related guides
2129

2230
- [DTO builder pattern](dto-builder-pattern.md) when using Lombok `@SuperBuilder` on generated DTOs

0 commit comments

Comments
 (0)