2774 Commits

Author SHA1 Message Date
Benjamin Einaudi
8ef4a480cb fixes(spring) add JsonProperty on setter (#22978)
* extract jacksonAnnotation partial template
* extract xmkAccessorAnnotation partial template
* apply jacksonAnnotation partial template on both getter and setter

Fixes #22757
2026-03-11 17:24:25 +08:00
William Cheng
b3244e93bf Fix child constructor no longer has invalid access to parent field (#23205)
* Fix fix that child constructor was invalid when having readonly field in parent

* add classType field

* fix test

* update samples

---------

Co-authored-by: bdurca <rca@bankdata.dk>
2026-03-11 17:06:18 +08:00
Ary Obenholzner
eaa79e29a3 [typescript-nestjs-server] #22928 improve request parameter handling (#22960)
* [typescript-nestjs-server] #22928 exclude inline union strings from generating imports

* [typescript-nestjs-server] #22928 add optional type hints

* [typescript-nestjs-server] #22928 add/improve support for various parameter types

* [typescript-nestjs-server] #22928 add docs, fix indentations and test execution

* [typescript-nestjs-server] #22928 correctly parse numeric parameters, use DefaultValuePipe for default values

* [typescript-nestjs-server] #22928 lowercase header access, check each import for unions

* [typescript-nestjs-server] #22928 allow optional parameters for number parse pipes

* [typescript-nestjs-server] #22928 updated README, additional PR feedback

* [typescript-nestjs-server] #22928 updated README
2026-03-11 09:04:53 +01:00
Yonatan Karp-Rudin
a04b9a5960 feat(kotlin-spring): add Spring Boot 4 and Jackson 3 support (#23154)
* feat(kotlin): add Jackson 3 infrastructure to AbstractKotlinCodegen

* feat(kotlin-spring): add useSpringBoot4 and useJackson3 flags

* feat(kotlin-spring): update template selection for Spring Boot 4

* feat(kotlin-spring): add SB4 templates for all libraries

* test(kotlin-spring): add tests for Spring Boot 4 and Jackson 3 support

* feat(kotlin-spring): add kotlin-springboot-4 sample with Jackson 3

* docs(kotlin-spring): document useSpringBoot4 and useJackson3 options

* fix(kotlin-spring): update Gradle templates to Kotlin 2.2 JvmTarget DSL and bump CI Gradle

- Replace deprecated kotlinOptions.jvmTarget with kotlin.compilerOptions DSL
- Upgrade Gradle wrapper to 8.14 for Kotlin 2.2 compatibility
- Add kotlin-springboot-4 sample to JDK17 CI matrix
- Regenerate sample with updated templates

* fix(kotlin-spring): register useJackson3 CLI option and use Gradle 8.14 for SB4

- Add addSwitch for useJackson3 in KotlinSpringServerCodegen so it
  appears in auto-generated docs
- Update gradle-wrapper.properties.mustache templates to use Gradle 8.14
  when useSpringBoot4 is enabled (required minimum for Spring Boot 4)

* fix(kotlin-client): fix Jackson 3 package imports and add ktor/spring-restclient support

Replace hardcoded com.fasterxml.jackson imports with {{jacksonPackage}} template
variable across all kotlin-client templates so generated code compiles correctly
when useJackson3=true. Also fix trailing space in OAuth Bearer header, enable
useJackson3 for jvm-ktor (Ktor 3.4.0) and jvm-spring-restclient (Spring Boot 4),
and add conditional Jackson 3 dependencies in build.gradle.

* Revert "fix(kotlin-client): fix Jackson 3 package imports and add ktor/spring-restclient support"

Block useJackson3 for kotlin-client with a clear error until client
template support is added in a follow-up PR.

* ci: retrigger CI checks

* fix(kotlin-spring): replace legacy oauth2 starter and add Jackson exclusivity tests

Replace deprecated spring-cloud-starter-oauth2:2.2.5.RELEASE with
spring-boot-starter-oauth2-client in SB4 templates, as the legacy
starter is pre-Jakarta and incompatible with Spring Boot 4.

Add negative assertions to Jackson dependency tests to ensure Jackson 2
and Jackson 3 artifacts are mutually exclusive.

* feat(kotlin-spring): default to Jackson 3 when Spring Boot 4 is enabled

Spring Boot 4 ships with Jackson 3 out of the box, so useJackson3 now
defaults to true when useSpringBoot4 is enabled and the user hasn't
explicitly set useJackson3.

* fix(kotlin-spring): declare springdoc version property regardless of useSwaggerUI

The springdoc-openapi.version Maven property was only declared when
useSwaggerUI=true, but the springdoc core dependency (used when
useSwaggerUI=false) also references it, causing an undefined property.

* fix(kotlin-spring): use modern OAuth2 client config for Spring Boot 4 spring-cloud library

Add useSpringBoot4 conditionals to clientConfiguration.mustache so SB4
uses OAuth2AuthorizedClientManager instead of legacy OAuth2FeignRequestInterceptor
and *ResourceDetails classes that don't exist in Spring Boot 4.

* fix(kotlin-spring): default Jackson 3 when Spring Boot 4 set via setter or additionalProperties

The Jackson 3 defaulting logic only checked additionalProperties map,
so calling setUseSpringBoot4(true) via the Java API skipped the default.
Now checks both the field value and the map.

* fix(kotlin-spring): add trailing newline to clientConfiguration template

* Trigger CI

* clean up conditions

* fix(kotlin-spring): remove SB4+Jackson2 test since SB4 unconditionally implies Jackson 3

Spring Boot 4 ships with Jackson 3 — there is no supported SB4+Jackson2
combination, so the test was asserting an invalid scenario.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 16:56:54 +08:00
William Cheng
f151c4640e Upgrade ktor to 3.4.0, kotlin to 2.3.0 (#23164)
* [REQ] Upgrade ktor to 3.4.0

* use gradle 8.11

* use gradle 8.11

* rearrange

---------

Co-authored-by: luisvt <luisbigvargas@gmail.com>
2026-03-07 23:46:51 +08:00
dependabot[bot]
2eaa15a53b build(deps): bump multer and @nestjs/platform-express (#23143)
Bumps [multer](https://github.com/expressjs/multer) to 2.1.1 and updates ancestor dependency [@nestjs/platform-express](https://github.com/nestjs/nest/tree/HEAD/packages/platform-express). These dependencies need to be updated together.


Updates `multer` from 2.0.2 to 2.1.1
- [Release notes](https://github.com/expressjs/multer/releases)
- [Changelog](https://github.com/expressjs/multer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/expressjs/multer/compare/v2.0.2...v2.1.1)

Updates `@nestjs/platform-express` from 11.1.5 to 11.1.16
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/commits/v11.1.16/packages/platform-express)

---
updated-dependencies:
- dependency-name: multer
  dependency-version: 2.1.1
  dependency-type: indirect
- dependency-name: "@nestjs/platform-express"
  dependency-version: 11.1.16
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-05 23:02:57 +08:00
Alex
6d335cd96d feature(jackson3) add jackson3 support for Java Client generator - Restclient (#23023)
* Update restclient generator for spring 7

* Cleanup

* Merge pom.xml

* Merge ApiClients

* Update restclient

* Update docs

* Use the same options as server generator

* Sync samples

* Add .gitignore

* Add @JsonIgnore on no-arg constructor

* Add @JsonIgnore only for jackson3

* Remove @JsonIgnore

* Add to output folder

* Update Jackson

* Update jackson

* Update gradle build

* Fix build

* Fix gradle

* Fix build for gradle

* Add missing samples

* Update samples

* Update samples

* Fix kotlin samples

* Change order

* Change permissions for build
2026-03-05 00:00:13 +08:00
Eugene
0869cad083 [kotlin] Support @Deprecation annotation for kotlin-spring generator (#23104)
* Add change to template with tests

* Update test

* Add required message attribute for Kotlin code

* Regenerate samples
2026-03-04 00:19:13 +08:00
William Cheng
9afa74a3cb [spring] Add an option "additionalNotNullAnnotations" to include additional NotNull annotations (#23096)
* add option additionalNotNullAnnotations

* update samples, docs

* add tests for option

* fix github workflow

* fix path

* remove
2026-03-03 16:18:41 +08:00
GregDThomas
536016bcb7 Fix #16561 by marking required a requestBody as @NotNull if it is required. (#22291) 2026-03-03 13:50:17 +08:00
dependabot[bot]
a761136234 build(deps): bump minimatch (#23066)
Bumps  and [minimatch](https://github.com/isaacs/minimatch). These dependencies needed to be updated together.

Updates `minimatch` from 3.1.2 to 3.1.5
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

Updates `minimatch` from 9.0.5 to 9.0.9
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

Updates `minimatch` from 10.1.1 to 10.2.4
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

Updates `minimatch` from 5.1.6 to 5.1.9
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v3.1.5)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-version: 3.1.5
  dependency-type: indirect
- dependency-name: minimatch
  dependency-version: 9.0.9
  dependency-type: indirect
- dependency-name: minimatch
  dependency-version: 10.2.4
  dependency-type: indirect
- dependency-name: minimatch
  dependency-version: 5.1.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 12:34:23 +08:00
dsteeley
584bf22b3a [rust-server] Update mockall to 0.14 (#23048) 2026-02-25 11:21:45 +08:00
dsteeley
7970d4b401 fix(rust-server): implement ValidateComposited traits for complex types and add integer enum support (#23045) 2026-02-24 22:16:56 +08:00
Louis Lepper
b32faa0a24 Type safe error handling in kotlin spring server with useSealedResponseInterfaces flag (#23003)
* Add type safe returns

* Bugfixes / adding tests

* Add sealed interfaces sample to github hook
2026-02-24 17:25:22 +08:00
William Cheng
e01fdee81e add uuid pattern tests to python client (#23040) 2026-02-24 09:47:41 +08:00
Jachym Metlicka
e5d40f4258 [java-spring] - add 'includeHttpRequestContext' additional property defaulting to "true" for reactive and "false" for blocking to include ServerWebExchange/HttpServletRequest (#22910)
* add includeHttpRequestContext additional property defaulting to "true" for reactive and "false" for blocking. Implement tests and add samples to check compilation success.

* generate sample files

* fix template

* fix template

* fix template

* update docs

* fix imports

* fix codegen

* fix codegen and update samples

* improve unit tests

* generate also delegate

* update samples

* update samples

* updated files
2026-02-24 08:19:58 +08:00
Pierre-Yves Le Borgne
e438e15b09 Move C++ virtual destructor definition to .cpp files (#21529) (#21530)
* Move C++ virtual destructor definition to .cpp files (#21529)

* Subsequent commit with codegened C++ - PR step 3 (#21529)
2026-02-24 08:18:12 +08:00
William Cheng
9432aaf4a3 Prepare 7.21.0 snapshot (#22984)
* Revert "v7.20.0 release (#22983)"

This reverts commit bd7fc7f45f.

* update to v7.21.0 snapshot version

* update samples, docs

* update readme
2026-02-16 19:08:09 +08:00
Benjamin Einaudi
5a70edb063 feature(jackson3) add jackson3 support for spring generator (#22854)
* add 'useJackson3' option
* add 'useSpringBoot4' option
* add support for RestClient in spring-http-interfaces
* add 'jacksonPackage' template variable set from useJackson3 option

See #22294
2026-02-15 14:26:29 +08:00
dsteeley
3d05d5aa9a Rust-server no clashing example names (#22880)
* Update rust-server examples to have namespaces by API name. Preventing warnings about clashing example names

* Update rust-server-deprecated examples to have namespaces by API name. Preventing warnings about clashing example names

* Fixup compilation errors

* fix: Resolve bug in header parsing when parsing multi-item headers
2026-02-14 10:39:48 +08:00
Jachym Metlicka
3c092b4c30 [KOTLIN;SPRING] - add support for 'x-spring-paginated' to get closer to feature parity with java-spring codegen; add 'autoXSpringPaginated' option; support x-operation-extra-annotation (#22958)
* add x-kotlin-implements

* implement tests

* update samples

* fix tests - forbidden api issue

* add samples

* add samples. use Pageable only for server-side

* add support for auto-detecting x-spring-paginated in Spring Boot operations

* fix maven dependencies import

* add unit tests

* add support for vendor extension

* remove files

* fix samples

* fix docs

* implement suggestions from CR. Fix declarative interface naming.

* move import around

* add x-operation-extra-annotation

* make sure the PageableAsQueryParam does not remove already present x-operation-extra-annotation content

* support also list format

* regenerate samples and docs

* regenerate samples and docs

* force tests rerun

* remove files

* add files

* trigger test rerun
2026-02-14 00:17:00 +08:00
dependabot[bot]
e086c300ca build(deps): bump qs (#22962)
Bumps [qs](https://github.com/ljharb/qs) from 6.14.1 to 6.14.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.1...v6.14.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-13 15:43:06 +08:00
dsteeley
1c25f2c39c Add support for enums of integers in rust-server generator. (#22915)
* Support for integer enums in rust-server

* Support integer enums in rust-server using serde-repr
2026-02-13 14:59:19 +08:00
dsteeley
a53ebb3ad2 Add support for ApiKey auth to rust-server (#22950) 2026-02-12 19:51:49 +08:00
William Cheng
aeea8b1254 update c++ server samples 2026-02-12 19:43:37 +08:00
vasireddyrajesh
b96334ffad Add standalone C++ server using cpp-httplib for OpenAPI-based APIs (#21724)
Supports:
All OpenAPI 3.x data types: primitives, arrays, enums, nullable/optional fields, nested objects
All parameter types: path, query, header, cookie, and combinations
Schema composition: allOf (inheritance), oneOf (discriminated unions), anyOf (flexible unions)
Security schemes: API key and bearer token authentication
Discriminator-based polymorphic deserialization and error handling

Provides:
Error handling for invalid JSON, type mismatches, missing/unknown discriminator, and parameter validation
Build system integration (CMake) for easy compilation and linking with required dependencies
Clear build and run instructions for local development and testing
Enables comprehensive, real-world validation of generated C++ server code against OpenAPI specifications
2026-02-12 19:41:05 +08:00
Foulques du Peloux
6b7c3d069e [php-symfony] fix sequencial escape when validating a class type (#22906)
* [php-symfony] do not interpret sequential escape

* chore: update samples

* refactor: add missing return type

* [php-symfony] make template compatible with Symfony 8
2026-02-11 00:28:09 +08:00
William Cheng
38f0796759 Update jackson-databind-nullable to v0.2.9 (#22901)
* update jackson databind nullable to v0.2.9

* update samples
2026-02-05 16:55:15 +08:00
Dennis Ameling
48b7c85cd4 [kotlin-server] Add polymorphism, oneOf and allOf support (#22610)
* [kotlin-server] Add polymorphism support

* Fix CI triggers

* Fix FILES

* Fix samples and related triggers

* Fix FILES

* Add discriminator property to sealed class

* Fix double nullability issue

* Update samples
2026-02-04 17:02:02 +08:00
Jachym Metlicka
3ecb49060e [JAVA-SPRING;KOTLIN-SPRING] - add possibility to override x-implements and x-kotlin-implements via config options. (#22839)
* feature/add-skip-x-implements

* feature/add-skip-x-implements

* feature/add-x-implements-overrides support in tooling

* add basic unit test for x-implements and x-implements-overrides

* add implementation and unit test for schemaImplements

* add "java.io.Serializable" directly via x-kotlin-implements

* add schemaImplements and schemaImplementsFields support to kotlin-spring

* add xImplementsSkip additional property

* add xKotlinImplementsSkip and xKotlinImplementsFieldsSkip additional properties

* add unit tests

* add documentation

* commit changes and add missing interface

* add documentation

* add output to samples

* change logs

* fix issue #22756

* revert unrelated formatting changes

* nudge test rerun

* implement feedback from CR

* check compilation success

* fix interfaces
2026-02-04 15:57:00 +08:00
Jachym Metlicka
a973d91560 [BUG] [KOTLIN-SPRING] @HttpExchange in declarative interface does not support property placeholders (#22882)
* fix kotlin-spring declarative http interface

* fix kotlin-spring declarative http interface

* fix kotlin-spring declarative http interface
2026-02-04 15:15:16 +08:00
Kengo Seki
a25bed78cd [BUG] [java-camel] Align pom.xml generation with the documentation (#22888) 2026-02-03 20:48:26 +08:00
George Holderness
1cafc1673a fix: apply integer type fitting for Rust params (#22853)
We already have logic in postProcessModelProperty to fit integer
parameters into the correct Rust primitives. However, this doesn't apply
to other kinds of parameters so integer-typed parameters which end up in
function calls for Api traits in lib.rs are always i32, even when this
is improper.

This commit refactors integer type fitting so that we can run it on both
processParam and model post-processing.
2026-02-02 19:53:10 +08:00
dsteeley
268213004e feat: Support selective ssl/tls backend in rust-server to optionally remove openssl (#22825)
* feat: Support selective ssl/tls backend in rust-server to avoid always requiring openssl

* feat: Switch default features so a user must select SSL backend

* Further tweaks to rust-server HTTPS feature flagging
2026-02-02 17:58:32 +08:00
William Cheng
f3a21a8bba update samples 2026-02-02 16:33:22 +08:00
Andreas Maechler
3db927e060 [jaxrs-spec] Add @Generated annotation to enums (#22829)
* Add @Generated annotation to enums in jaxrs-spec

- Adds @Generated annotation to enum classes

* Update all samples
2026-01-28 14:26:51 +08:00
William Cheng
3ed013966b [python-fastapi] Set python version to 3.10 (#22823)
* set python version to 3.10

* update doc
2026-01-27 14:15:25 +08:00
William Cheng
73a486a726 Update python-multipart to newer version (#22821)
* update python mltipart to newer version

* update python version in workflow

* update

* update version

* update
2026-01-27 12:38:38 +08:00
William Cheng
8a3507cfa7 update logback to newer version (#22781) 2026-01-23 15:55:16 +08:00
dependabot[bot]
c189e5c263 build(deps-dev): bump lodash (#22762)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.17.23
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-22 13:30:43 +08:00
William Cheng
0f23c4ff17 update java undertow to newer version (#22759) 2026-01-22 12:21:55 +08:00
dsteeley
c34d593d8f fix: Fix rust-server model generation following serde_valid upgrade (#22737) 2026-01-20 14:30:00 +08:00
William Cheng
9adfe986a3 Prepare v7.20.0 release (#22738)
* Revert "v7.19.0 release (#22732)"

This reverts commit ff400e9a31.

* prepare v7.20.0 release

* update samples

* update doc
2026-01-20 03:13:58 +08:00
William Cheng
73c9c1cbe5 update vertx to newer version in kotlin vertx server (#22731) 2026-01-19 15:09:24 +08:00
dsteeley
de464cea30 Refresh some dependencies in the Rust server generator (#22710) 2026-01-16 22:29:25 +08:00
William Cheng
848aecccda fix: [JAVA][SPRING] Nullaways warn with JSpecify => add missing annotation to parameter of method toIndentedString (#22685)
* fix: add annotation to method parameter

* fix: all impacted samples

---------

Co-authored-by: Philippe Kernevez <philippe@kernevez.net>
2026-01-13 12:56:31 +08:00
William Cheng
450215c4b8 [BUG][JAVA][SPRING] api util must test variable nullity (#22679)
* fix: test if return type is null before using it

* chore: change sample example

---------

Co-authored-by: Philippe Kernevez <philippe@kernevez.net>
2026-01-12 16:41:08 +08:00
dependabot[bot]
d2556d453b build(deps): bump qs (#22669)
Bumps [qs](https://github.com/ljharb/qs) from 6.14.0 to 6.14.1.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.0...v6.14.1)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-12 12:39:12 +08:00
William Cheng
23dae2bcd8 Improve sample update with better exception handling (#22670)
* refactor java tests

* better exception handling when updating samples

* update samples to avoid using exception

* fix tests

* update

* update
2026-01-11 18:52:29 +08:00
William Cheng
944533826b update python fastapi urllib3 to newer version (#22644) 2026-01-09 12:49:38 +08:00