Commit Graph

15011 Commits

Author SHA1 Message Date
Yong-Han Lin
3b232f6a90 fix: five nondeterministic tests (#22513) 2025-12-09 14:50:08 +08:00
William Cheng
8ad6fff26f python-fastapi: avoid log message in constructor (#22522)
* python-fastapi: avoid log message in constructor

* update doc
2025-12-09 14:47:41 +08:00
Nicolas Rodriguez
c91df9edd4 [crystal] fix Model#to_h method (#22508)
* fix(crystal): fix Model#to_h method

* fix(crystal): make optional parameters truly optional

* fix(crystal): update samples

* fix(crystal): fixx model validation with nil values

* feat(crystal): improve enum validation

* fix(crystal): use litteral regex

* fix(crystal): call #to_h instead of #to_hash

* fix(crystal): update samples
2025-12-09 11:31:15 +08:00
Sergey Fetiskin
b86213bea3 [typescript-node] Fixes generation when parent contains TypeScript primitive (#22401)
* fixes parents when schema has additional properties

* exclude primitive types from parent property
2025-12-08 22:26:42 +01:00
William Cheng
ce21b9e503 update urllib3 to newer version (#22515) 2025-12-08 22:20:35 +08:00
William Cheng
38c622019e fix(kotlin-client): jvm-spring-webclient: fix compile error when kotlin detects nullable body (#22509)
* fix(kotlin-client): jvm-spring-webclient: fix compile error when kotlin detects nullable body

* update samples

---------

Co-authored-by: detomarco <idp.detoma@gmail.com>
2025-12-08 16:10:07 +08:00
William Cheng
74c551cd88 disable ts integration testws (#22501) 2025-12-07 15:46:28 +08:00
Károly Kiripolszky
8d17f662de fix(KotlinClientCodegen): store parsed bool values in additionalProperties (#22491) 2025-12-07 10:56:36 +08:00
William Cheng
da778c46b0 add option to set params_encoder (#22484) 2025-12-02 17:54:44 +08:00
Nicolas Rodriguez
f125e1072f [crystal-lang] Various fixes for Crystal client (#22465)
* [crystal] implement "multi" params

See: https://github.com/mamantoha/crest?tab=readme-ov-file#crestnestedparamsencoder

* [crystal] remove useless templates (imported from ruby)
2025-12-02 11:15:35 +08:00
William Cheng
9a6f14ad47 Add workflow to test Crystal client (#22477)
* add workflow to test crystal client

* update

* shards install

* fix

* use localhost
2025-12-02 11:04:54 +08:00
Julian Ste
2d3082a1b7 Fixes oatpp generator to expose network server on 0.0.0.0 instead of localhost (#22330)
* Change server address from 'localhost' to '0.0.0.0'

* Change server connection to listen on all interfaces
2025-12-02 10:12:24 +08:00
KRJ-RTX
18b359ba17 Add Basic and Bearer Authorization to the CPP Pistache generator (#22337)
* [cpp][pistache-server] Add extraction and forwarding of credentials for HTTP Basic protected endpoints.

* [cpp][pistache-server] Change HTTP Basic credentials to be contained on a struct instead of two std::strings

* [cpp][pistache-server] Add callbacks to authenticate http basic credentials.

* [cpp][pistache-server] Add `void* userdata` to HttpBasicCredentials.

This allows for data ft be passed on from the authenticator to the
handler implementation. For example a userid that has already been
looked up

* [cpp][pistache-server] Add support for HTTP Bearer authentication.

* [cpp][pistache-server] Add new file `api-base-source.mustache`

`api-base-source.mustache` contain implementations of security
related methods and also the empty constructor.

* [cpp][pistache-server] Add re-generated samples.

* Fix PR 19978: Updated indentation levels and fixed test problems

---------

Co-authored-by: Morten Winkler <morten@winkler.dk>
2025-12-02 10:07:47 +08:00
dsteeley
41f97d8187 fix: Rust-server bytes response fixed to not attempt string conversion (#22471) 2025-12-01 21:36:50 +08:00
scarf
5a2503dc49 fix(typescript-fetch): fix logic when stringEnums is explicitly set to false (#22466)
Passing `stringEnums=false` was incorrectly treated as `true`. This went unnoticed since the default behavior works as expected. Made the logic consistent with `typescript-axios`.
2025-12-01 09:51:13 +01:00
Linh Tran Tuan
1e7ca08ccc [Rust-Axum] Fix: do not gen Partial Ord/Ord for Any type (#22469) 2025-12-01 16:38:32 +08:00
William Cheng
c0d98864e0 [Java] fix missing header parameters in the generated google-api-client Java client (#22468)
* fix(java): add header parameter handling for google-api-client

  Header parameters defined in OpenAPI specs were being accepted as method
  parameters but never actually added to the HTTP request.

  Fixes #22457

* update samples

* minor enhancement

---------

Co-authored-by: artnan <artn@outlook.com>
2025-12-01 13:09:28 +08:00
William Cheng
788f67dd01 Fix Spring Framework 7 compatibility in jvm-spring-restclient and jvm-spring-webclient (#22467)
* Fix Spring Framework 7 compatibility issues

Fixes #22368

* update samples

---------

Co-authored-by: jwalter <joakim.waltersson@gmail.com>
2025-12-01 12:24:37 +08:00
Piotr Kubowicz
7b83462a83 [kotlin] Make API classes open (non-final) unless nonPublicApi is used (#22461)
* [kotlin] Make API classes open (non-final) unless nonPublicApi is used

By making those classes open, AspectJ can be used to enhance their
behavior.

I'm not changing kotlin-multiplatform templates, where 'open' was
already present before my changes.

Closes #22271

* Fail Kotlin sample compilation if API classes stop to be public

Serves as a 'regression test'.
2025-12-01 00:03:29 +08:00
dsteeley
453997bd16 Ensure rust-server compiles with no-default-features (#22445) 2025-11-30 23:05:25 +08:00
Elric Milon
e9bc44bebe [Rust] Implement support for multipart file uploads for reqwest-async and reqwest-trait (#22454)
* feat(Rust): Add support for multipart file uploads in reqwest generators

* chore: Regen relevant samples affected by the updated multipart support
2025-11-30 23:04:29 +08:00
gonzalad
7a48bd8ef5 [typescript-angular] fix integration tests (#22463)
The expected files where not the correct ones.
2025-11-29 16:46:43 +08:00
William Cheng
1689d7b5b6 Typescript-Angular: Fix several query parameters serialization issues (#22459)
* Generate skeleton for new integration test

* Typescript-angular: Move query param deep-object test

* typescript-angular: Add query param JSON test

* Typescript-angular: Add query param form test

* Test for #20998

* typescript-angular: Reimplement query param serialisation

This notably fixes:
- JSON query param serialisation
- array serialisation with style=form and explode=true

As the class HttpParams from Angular is specially designed for the
mimetype: `application/x-www-form-urlencoded` it does not support
the range of query parameters defined by the OpenAPI specification.
To workaround this issue, this patch introduces a custom
`OpenAPIHttpParams` class which supports a wider range of query param
styles.

Note that as `HttpClient` is used afterwards, the class
`OpenApiHttpParams` has a method to convert it into a `HttpParams` from
Angular with a no-op HttpParameterCodec to avoid double serialisation of
the query parameters.

* update samples

---------

Co-authored-by: Vladimir Svoboda <vsvoboda@forkoder.eu>
2025-11-28 20:59:29 +08:00
David Gamero
08858a91e6 [typescript] migrate node-fetch to undici (#22408)
* migrate typescript generator to undici

* smaples

* missing comma

* upgrade types in encode test

* remove EOL node versions, add new LTS

* fix export issue in encode/decode

* d.js issue and commonjs module in tsconfig for esm dual support

* update samples merge master

* sync samples

* files samples
2025-11-27 16:36:19 +08:00
William Cheng
e9c842f150 fix: do not add dependency on urllib3 if not required (#22453)
* fix: do not add dependency on urllib3 if not required

* update samples

* remove import

---------

Co-authored-by: Sascha Kreutz <saschakreutz@hotmail.de>
2025-11-27 16:03:21 +08:00
Jachym Metlicka
1b557790e6 [kotlin-spring][server] Feat: Return from controllers without ResponseEntity wrapper. (#22377)
* remove "async" and "responseWrapper" from template as these are not supported by kotlin-spring generator

* try to force pipelines rerun

* force pipelines rerun

* fix mustache to keep generated code identical

* Revert "fix mustache to keep generated code identical"

This reverts commit c573b43401.

* Reapply "fix mustache to keep generated code identical"

This reverts commit 2c3b065c5c.

* Add support for 'useResponseEntity' in kotlin-spring. Consolidate with the separate flag 'declarativeInterfaceWrapResponses' as these can now be controlled both by one flag. Default to true.

* fix status annotation and add compile-test samples

* satisfy samples-up-to-date check

* add unit tests covering both reactive and non-reactive

* fix template to avoid unnecessary empty line

* fix template to avoid unnecessary empty line

* put method params (if present) on separate lines to improve readability

* put method params (if present) on separate lines to improve readability; fix double spaces, spaces before comma, incorrect spaces

* fix test

* store PATHs as accesible strings in companion objects.

* fix missing import

* fix incorrect import

* fix fallback to nested placeholders.
2025-11-26 18:00:17 +08:00
William Cheng
3d6e9d5693 better format in build.gradle (kotlin) (#22439) 2025-11-26 17:41:17 +08:00
Konstantin Ignatyev
b9d4b56d1c added ability to publish kotlin-client to maven local repo (#22438)
* this allows pushing client jar to local maven repository gradle -i clean jar publishToMavenLocal;  also generates jar with sources;

* this allows pushing client jar to local maven repository gradle -i clean jar publishToMavenLocal;  also generates jar with sources;
2025-11-26 16:59:41 +08:00
Julian Vennen
ea62c676c9 [php][php-nextgen] Cleanup api authentication code when using api keys in cookies or supporting multiple authentication methods (#22433) 2025-11-26 14:36:16 +08:00
David Gamero
6e0fe098f1 [typescript] replace headers with same case-insensitive key to match http spec (#22393)
* replace headers with same caseinsensitive key to match http spec

* regenerate samples

* regenerate samples

* enable test for header case-insensitive replacement

* reduce redundant test comments
2025-11-25 10:58:22 +01:00
dschodits-secunet
41024dc23b [JAVA](native-client) Add support for UnaryInterceptors (#22381)
* added UnaryInterceptor functionality

* set useUnaryInterceptor default to false

* added generated files

* updated generated files to new default value

* fixed asyncResponseInterceptor and indentations

* fixed newlines and generate comments on config

* updated comment in async response interceptor

* reverting docstring

* adjusting newlines
2025-11-25 13:54:29 +08:00
Devon
9116411dac [cpp-rest] Fixes segfault for nullable strings (#22405) 2025-11-25 13:37:05 +08:00
William Cheng
1c447a1605 update swagger parser to 2.1.36 (#22429)
* update swagger parser to 2.1.36

* comment out test
2025-11-25 13:21:36 +08:00
Devon
4a7e0c9bdc [nim] Nim Generator Fixes (#22385)
* Nim Generator Fixes

* remove test that is tested via yaml anyway

* Only include required parameters or non-empty optional parameters in URLs, support oneOf/anyOf via nim object variants, optional field support

* snapshot

* docs gen

* Improved handling of enums
2025-11-23 17:19:16 +08:00
Ruben Hönle
65f99ebb21 fix(enums): add character handling for euro symbol (#22414)
relates to #22413
2025-11-23 17:08:11 +08:00
William Cheng
5d12e71b40 [typescript-rxjs] Feat: Add @deprecated JSDoc tag to API operations (#22419)
* feat(typescript-rxjs): Add @deprecated tag to generated API operations

This commit introduces the JSDoc @deprecated tag to API operations in the typescript-rxjs generator when the operation is marked as deprecated in the OpenAPI specification.

This ensures that IDEs (like VS Code or WebStorm) correctly flag the method as deprecated, providing better developer experience and warning consumers about upcoming removals or changes.

* minor updates

---------

Co-authored-by: Dirk Niemeier <dirk.niemeier@cgi.com>
2025-11-23 16:15:43 +08:00
Josh Wulf
ddfcc95b61 fix: use httpx in generated configuration.py (#22418)
* fix: use httpx in generated configuration.py

* fix: add enum_values for httpx

* chore: update petstore samples
2025-11-23 15:11:48 +08:00
Ary Obenholzner
c5e0d0840b [typescript-nestjs-server] Fix #21842 by updating api.module.mustache (#22403) 2025-11-23 00:16:34 +08:00
Brendan Burns
8a4246cbaf Add support for custom tls server names. (#22372)
* Add support for custom tls server names.

* Update samples

* Fix missing declaration.
2025-11-20 10:36:11 +08:00
William Cheng
a1b962d0b6 minor change to code format in package.json (ts nestjs server) (#22397) 2025-11-20 10:35:29 +08:00
Devon
5ad2f84650 [Ruby] Fixes anyOf Support in Responses (#22392)
* [Ruby] Fixes anyOf Support in Responses

* re-gen samples

* Revert "re-gen samples"

This reverts commit 1b4d85d359.
2025-11-20 09:59:43 +08:00
William Cheng
74be550d94 update go-gin crypto to newer version (#22395) 2025-11-20 09:44:53 +08:00
William Cheng
554e10dc34 Fix siblings of $ref using allOf in openapi normalizer (#22364)
* fix ref sibiling using allOf in normalizer

* update samples
2025-11-19 20:35:07 +08:00
William Cheng
6699ecd9d2 update jersey3 to newer version (#22388) 2025-11-19 19:19:54 +08:00
Xi Lu
9655c22ff6 [Protobuf] Add isEnumSchema check in generateNestedSchema (#22384)
Co-authored-by: xil <xil@uber.com>
2025-11-19 17:46:43 +08:00
Daniil Iastremskii
e86daf9059 Add support for oneOf with discriminator when using kotlinx.serialization (#22373)
* Generate wrappers for oneOf with discriminator when using kotlinx.serialization

* Add spec with oneOf using discriminator

* Add config to generate samples

* Generate samples

* Update samples

* Change naming of wrapper classes

* Fix empty model test

* Update GH workflow with new samples
2025-11-19 02:55:37 +08:00
Jachym Metlicka
c52cc1f275 [kotlin-spring][server] Feat: Make it possible to include "HttpServletRequest" or "ServerWebExchange" as a method parameter in controller interfaces and/or implementations (#22263)
* modify templates to enable possibility to add reactive or blocking request context

* add logic to enable additional property

* regenerate files

* regenerate documentation

* revert unrelated formatting changes

* revert commented out code

* add tests

* refactor test to DRY them a bit

* move tests around

* increase tests coverage

* fix for delegate

* fix for delegate - and refactor tests

* fix tests

* refactor tests

* add tests for delegate

* add kotlin project compile check test for include-http-request-context

* fix

* fix

* fix output folder naming. Add the sample to github action config file.

* add missing interfaces to fix compilation

* regenerate samples

* fix also api_test.mustache to enable testing

* add tests for generated tests
2025-11-19 00:29:07 +08:00
dsteeley
2c7efda060 Update rust-server swagger dependency to 7.0 (#22365) 2025-11-17 18:59:28 +08:00
Levi Lutz
a52e902cb5 [RUST] Fix #22356 / Introduce useSerdePathToError option to improve JSON error messages (#22357)
* Add CLI option

* Add dep to generated Cargo.toml

* Add new `Error::SerdePathToError` error type

* Add `serde_path_to_error` invocation to API layer

* Add sample for serde-path-to-error

* Add arg & docstring to cliOptions as well

* Fix sample
2025-11-16 22:13:55 +08:00
ddl-rliu
547eee1970 [BUG] Fix #22351 by updating exceptions.mustache to log both the response data and response body, when applicable (#22352)
* Update exceptions.mustache

* Add autogen files
2025-11-16 22:06:23 +08:00