Skip to content

[kotlin-server][JAX-RS] Add useTags to kotlin-server JAXRS code generator#22970

Open
feczkob wants to merge 4 commits intoOpenAPITools:masterfrom
feczkob:fix/20342-kotlin-server-jaxrs-usetags
Open

[kotlin-server][JAX-RS] Add useTags to kotlin-server JAXRS code generator#22970
feczkob wants to merge 4 commits intoOpenAPITools:masterfrom
feczkob:fix/20342-kotlin-server-jaxrs-usetags

Conversation

@feczkob
Copy link

@feczkob feczkob commented Feb 13, 2026

Fixes #20342

@karismann @Zomzog @andrewemery @4brunu @yutaka0m @stefankoppier @e5l @dennisameling could you please take a look?

PR checklist

  • Read the contribution guidelines.
  • Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community.
  • Run the following to build the project and update samples:
    ./mvnw clean package || exit
    ./bin/generate-samples.sh ./bin/configs/*.yaml || exit
    ./bin/utils/export_docs_generators.sh || exit
    
    (For Windows users, please run the script in WSL)
    Commit all changed files.
    This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master.
    These must match the expectations made by your contribution.
    You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example ./bin/generate-samples.sh bin/configs/java*.
    IMPORTANT: Do NOT purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
  • File the PR against the correct branch: master (upcoming 7.x.0 minor release - breaking changes with fallbacks), 8.0.x (breaking changes without fallbacks)
  • If your PR solves a reported issue, reference it using GitHub's linking syntax (e.g., having "fixes #123" present in the PR description)
  • If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.

Summary by cubic

Adds a useTags option to the kotlin-server JAXRS generator to control API grouping and class names, and computes a common path applied to class-level @path and shown in docs. Fixes #20342.

  • New Features
    • New additionalProperty: useTags (JAXRS-spec only). When true or not set, group by tags; when false, group by base path segment.
    • Computes commonPath per API and applies @path("{{commonPath}}") at the class level; method-level @path uses the remaining segments. README now shows full paths (commonPath + operation path).
    • Updates docs, config, tests, and samples to reflect the option and path changes.

Written for commit af4d93d. Summary will update on new commits.

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 issues found across 10 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="samples/server/petstore/kotlin-server/jaxrs-spec/README.md">

<violation number="1" location="samples/server/petstore/kotlin-server/jaxrs-spec/README.md:37">
P2: README API endpoint table now omits resource prefixes (e.g., /pet, /store, /user), producing incomplete paths and misleading documentation.</violation>
</file>

<file name="modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java">

<violation number="1" location="modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java:788">
P2: Default useTags=false is ignored unless the option is explicitly provided, so omitted configuration falls back to tag-based grouping (useTags=true behavior), contradicting the documented default.</violation>
</file>

Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Add one-off context when rerunning by tagging @cubic-dev-ai with guidance or docs links (including llms.txt)
  • Ask questions if you need clarification on any suggestion

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[REQ] [kotlin-server] commonPath in @Path annotation - useTags

1 participant