javalin / javalin/javalin-openapi

Make `OpenApiAnnotationProcessor` support incremental Gradle builds

Open
#236 6 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Kotlin
Stars
67
Forks
24
PR merge metrics
No merged PRs in 30d

Description

I'm getting a warning in the Gradle output of my build:
```
Full recompilation is required because io.javalin.openapi.processor.OpenApiAnnotationProcessor is not incremental.
```
Not high priority, but would be nice to have incremental build support for the annotation processor. Would especially help if there are a large number of `OpenApi` annotations.
Would also be nice to have an option to disable pretty printing for smaller OpenApi spec files ([relevant code](https://github.com/javalin/javalin-openapi/blob/414aff9a6938b49fe5775969f5a43cbafb84d223/openapi-annotation-processor/src/main/kotlin/io/javalin/openapi/processor/generators/OpenApiGenerator.kt#L260)).

Contributor guide

Open the contributing guide

Research direction

Start by inspecting OpenApiAnnotationProcessor and the Gradle annotation-processing requirements for incremental support. Then review openapi-annotation-processor/src/main/kotlin/io/javalin/openapi/processor/generators/OpenApiGenerator.kt around line 260 for the pretty-printing request. Done means the processor no longer triggers full recompilation and generated OpenAPI output can disable pretty printing.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin
Domain
build-system, developer-experience
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.