[ 
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)

Reply via email to