[
https://issues.apache.org/jira/browse/FINERACT-2483?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ralph Hopman resolved FINERACT-2483.
------------------------------------
Resolution: Fixed
> Add Lombok usage guidelines to CONTRIBUTING.md
> ----------------------------------------------
>
> Key: FINERACT-2483
> URL: https://issues.apache.org/jira/browse/FINERACT-2483
> Project: Apache Fineract
> Issue Type: Improvement
> Components: Docs
> Reporter: Ralph Hopman
> Assignee: Ralph Hopman
> Priority: Trivial
>
> Add a section documenting Lombok usage standards and best practices in the
> [CONTRIBUTING.md|https://github.com/apache/fineract/blob/develop/CONTRIBUTING.md]
> file to help contributors understand when and how to use Lombok annotations
> consistently across the codebase.
> h3. Changes
> * Add new "Lombok" section under "How We Code"
> * Document recommended annotations for different use cases:
> ** JPA entities: {{{}@Getter{}}}, {{{}@Setter{}}}, {{@NoArgsConstructor}}
> ** Service classes: {{{}@RequiredArgsConstructor{}}}, {{@Slf4j}}
> ** DTOs: {{@Data}}
> ** Configuration classes: {{@Builder}} with {{@Builder.Default}}
> * Document annotations to avoid (e.g., {{@Data}} on entities,
> {{{}@SneakyThrows{}}})
> * Reference existing
> [lombok.config|https://github.com/apache/fineract/blob/develop/lombok.config]
> configuration
> h3. Rationale
> The codebase extensively uses Lombok ({{{}@RequiredArgsConstructor{}}},
> {{{}@Slf4j{}}}, {{{}@Getter{}}}, {{{}@Setter{}}}, etc.) but has no
> documentation guiding contributors on proper usage patterns. This causes
> inconsistency and potential issues like using {{@Data}} on JPA entities.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)