Commit Graph

9042 Commits

Author SHA1 Message Date
Kristian Nedrevold
bd0b81d26d Update baseClient.mustache for scala-http4s (#21825)
The code for setting the form body parameters were wrong,

e.g. the key value pair (id, 12345) would be encoded as
id=%28id%2C12345%29

This commit adds a fix to the base client to correctly setting formBody values the previous pair will now be encoded as

id=12345
2025-08-29 13:55:06 +08:00
William Cheng
afedd3fd33 update php samples 2025-08-28 15:59:35 +08:00
William Cheng
399547c2ba update php samples 2025-08-28 15:53:49 +08:00
Paul Parenko
daa8eb422d import Nullable if required (#21829)
Also allows to override it eg with: <importMapping>Nullable=org.jspecify.annotations.Nullable</importMapping>
2025-08-28 15:48:12 +08:00
Nikos Atlas
065eceb824 [Typescript] add missing typeRoots config on tsconfig (#21824)
* add missing typeRoots config on tsconfig

* add samples

* Apply suggestion from @macjohnny

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>

* update samples

---------

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2025-08-27 13:28:03 +02:00
Konrad Schultz
ca7e8bd932 typescript-fetch: Fix model date crash (#21821)
* typescript-fetch: Fix model date crash

Fix a runtime crash converting to json when a date or datetime is both nullable
AND required. There are 4 cases to account for:

| required | nullable | values |
|----------|----------|--------|
| f        | f        | string OR undefined |
| f        | t        | string OR null OR undefined |
| t        | f        | string |
| t        | t        | string OR null |

And importantly when required and nullable code that would crash on null was
being generated. additionally when required is false and nullable is true we
still want to allow consumers to be able to pass in `undefined` OR `null` and
pass that value to the server. Some servers treat null and undefined differently
for some operations so having that ability is pretty reasonable.

fix: https://github.com/OpenAPITools/openapi-generator/issues/21820

* Update typescript-fetch samples

./bin/generate-samples.sh ./bin/configs/*.yaml || exit
2025-08-27 11:08:54 +02:00
Julien Debon
9c11fcf6bc [Fix][OCaml] Incorrect encoding/decoding for required free-form objects; Odoc for record fields (#21819)
* [OCaml] Fix inconsistent oneOf primitive sample name

* [OCaml] Fix encoding/decoding for free-form required fields

* [OCaml] Change field comment to Odoc, move it after the field

As per Odoc documentation, record field documentation should be *after* the
field, not before.
See https://ocaml.github.io/odoc/odoc/odoc_for_authors.html#special_comments
type `my_record`

* [OCaml] Cleanup non-generated files for ocaml sample
2025-08-26 18:59:11 +08:00
GregDThomas
814f406472 Fix #20370 by adding an OAuth access token supplier (#21800) 2025-08-26 14:41:45 +08:00
Julien Debon
3d93cc05ec [OCaml] Generate .ocamlformat file; format all generated OCaml files (#21809)
* [OCaml] Generate .ocamlformat file

Fixes https://github.com/OpenAPITools/openapi-generator/issues/21806

* [OCaml] Run `dune fmt` on all OCaml folders

* Don't format in Git

* Add myself for OCaml
2025-08-26 00:36:49 +08:00
Julien Debon
dc8fac21d9 [OCaml] Introduce support for oneOf/anyOf, fix default value for non-required maps (#21798)
* Add OCaml fake-petstore to test corner cases

* Prefix List functions with Stdlib as the fake petstore generates a List module

* Handle decimal and any types

* Indent to_json.mustache for easier maintenance

* Indent api-impl.mustache a bit more for readability before fix

* Fix: do not call `to_json` for free forms and byte arrays

Fixes https://github.com/OpenAPITools/openapi-generator/issues/21312

* Fix compilation for binary types

The implementation may not be correct, but at least it compiles. To be checked
if someday someone actually uses it/complains.

* Indent to_string.mustache

* Add support for exploded form-style object query params

Fixes https://github.com/OpenAPITools/openapi-generator/issues/21307

* Add ocaml-fake-petstore to CI

* Fix free-form body params

* Cohttp_lwt.Response is deprecated, use Cohttp.Response instead

* Safe Java code cleanup

* Split into model-record.mustache

* Add some support for oneOf/anyOf

* Re-generate all OCaml samples

* Fix: correctly mark non-required maps with default empty list

* Fix: Correctly encode/decode maps

* Refresh documentation

* Refresh after merging master
2025-08-25 17:27:27 +08:00
William Cheng
20be2decde Prepare v7.16.0 release (#21794)
* Revert "v7.15.0 release (#21792)"

This reverts commit 2c816f89cb.

* prepare 7.15.0 release

* update samples
2025-08-22 19:17:23 +08:00
devhl-labs
f6eeb01895 [csharp] Fixed any of inline enum (#21764)
* fixed composed any of

* fixed composed any of

* fixed spacing
2025-08-22 15:35:07 +08:00
andershausding
2569321b82 feat: add async file stream support for reqwest client (#21771) 2025-08-22 15:02:55 +08:00
Adam Juraszek
dbe0419034 [Java][HttpClient] Fix memory leak with virtual threads (#21729) (#21752) 2025-08-22 14:41:12 +08:00
scarf
96b44ce727 [typescript-axios]: align jsdoc for @deprecated (#21778)
* refactor: simplify `description` OR `deprecated` template

* chore: update generator output

---------

Co-authored-by: nocontribute <>
2025-08-21 08:50:22 +02:00
jack-edmonds-dd
caf53ac6c4 Fix overly permissive regular expression. (#21777) 2025-08-21 13:44:49 +08:00
scarf
8c0f8677f0 [typescript-axios]: slim down jsdoc (#21776)
* feat: remove `@export` and more

* feat: remove `@memberof`

* feat: only add description jsdoc if it exists

* feat: remove obvious `@type`

* feat: only display JSDoc when `description` OR `deprecated` exists

* chore: update generator output

---------

Co-authored-by: nocontribute <>
2025-08-20 10:46:59 +02:00
David Gamero
d06ed32df0 [typescript] use built-in abortsignal (#21741)
* use built in

* upgrade types from pinned fetch

* samples

* csharp samples

* merge master and samples

---------

Co-authored-by: David Gamero <davidgamero@microsoft.com>
2025-08-19 09:31:01 +02:00
William Cheng
3ebb299981 [kotlin-client] Support for integer enums with kotlinx with custom serializer (#21765)
* [kotlin-client] Add support for integer enums with custom serializer for kotlinx

* [kotlin-client] Fix @SerialName annotation being used on non-string enums

* Format samples

* remove blank line

* add tests for kotlin client with integer enum

* add folders

---------

Co-authored-by: CHervaudBetclic <c.hervaud@betclicgroup.com>
2025-08-18 00:11:43 +08:00
Espen Haugsdal
43d58ee9b0 Use Python uuid.UUID instead of StrictStr (#21740) 2025-08-17 22:25:53 +08:00
Mattias Sehlstedt
2513d82989 Exclude the discriminator field from getting a nullable_var_annotations (#21155)
* Exclude the discriminator field from getting a nullable_var_annotations

* Update samples

* Manually add annotations since the remote pipeline insists that they should be there

* Add description for why the discriminator does not have a nullability-annotation

* Update samples
2025-08-16 18:08:22 +08:00
William Cheng
fe5305f2cf add tests for uuid in oneOf/anyOf (java okhttp-gson) (#21763) 2025-08-16 12:23:04 +08:00
William Cheng
2bbb19a1d5 Update gradle jar to newer version (java micronut) (#21762)
* update gradle wrapper to newer version (java micronaut)

* update gradle setup to v4
2025-08-16 11:45:15 +08:00
Kuzma
e1aed293cf Update form-data to the latest version (#21748) 2025-08-14 15:55:56 +02:00
0x5457
3e032bfcfd fix(typescript): add Date instance check before date formatting (#21722)
* fix(typescript): add Date instance check before date formatting

* chore(typescript): generate samples

* fix: resolve type errors in ObjectSerializer Date formatting

* chore: update samples

* chore: ensure-up-to-date
2025-08-12 16:04:17 +02:00
andershausding
1860efade2 [Rust] fix: add location prefix to prevent parameter name collisions (#21611)
* [Rust] fix: add location prefix to prevent parameter name collisions when escaping parameter names

* chore: update samples

* [Rust] fix: do not use locationSuffix if useSingleRequestParameter feature is enabled
2025-08-12 20:54:09 +08:00
William Cheng
bfc989c6ab update samples 2025-08-12 16:51:45 +08:00
Mattias Sehlstedt
4d9fd4df92 Support Json-serialized query parameters in Spring client RestClient and WebClient (#21725)
* Add so that a query parameter can be serialized as Json in the Spring clients RestClient and WebClient

* Update samples

* Add clientCodeGen test
2025-08-12 10:26:33 +08:00
Alec Petersen
4b88cf8243 [REQ][CSHARP][GENERICHOST] Support stream for binary response (#21677)
* Add ContentStream property to ApiResponse

* Add a constructor which sets ContentStream

* Create and use a memory stream for binary model types

* Remove extra space

* Update samples

* Add {{nrt?}} to support older versions

* Remove public modifier for interface property
2025-08-11 15:47:12 +08:00
Mattias Sehlstedt
8874df4702 Codegen parameter for query json serialization (#21718)
* Add endpoints with query parameters that require Json-serialization

* Add property for query json-serialization

* Update samples

* Adjust indentation for specification
2025-08-10 22:47:51 +08:00
Alec Petersen
3e577d58c3 [BUG][CSHARP][GENERICHOST] Write enum values in expected JSON format (#21698)
* Use ValueConverter method for enums to output in the correct JSON format

* Fix doc comment

* Update samples

* Call ToString on return value of converter

* Update samples

* Update samples

* Add test
2025-08-09 12:11:02 +08:00
William Cheng
89a108aca0 Default nested array to null in java generators (#21713)
* default nested array to null in java generators

* add test schema
2025-08-08 15:59:16 +08:00
kenkon
5db1e75fa6 [Swift5][Swift6] support "x-enum-descriptions" (#21706)
* [swift5] Support x-enum-descriptions

* [swift5] Add x-enum-descriptions to test YAML

* [swift5] Regenerate samples

* [swift6] Support x-enum-descriptions

* [swift6] Regenerate samples
2025-08-07 08:58:58 +01:00
Kraust
5b8a11546c [C++] [Client] Added cpp-oatpp-client (#21711)
* Added cpp-oatpp-client.

* Updated pipelines.

* Should match formatting now.

* Moved includes around.

* Ran doc generator.
2025-08-07 10:01:55 +08:00
William Cheng
e2652f1c62 update C# samples 2025-08-07 09:22:56 +08:00
phactum-mnestler
f659457f90 [spring] Adapt HttpHeaders access to remain compatible with Spring 7 (#21691)
* [spring] Adapt HttpHeaders access to remain compatible with Spring 7

* update pom.xml patch version
2025-08-06 15:46:37 +08:00
Rui Ventura
bf6e83ea63 feat(java): Generate servers for restclient library (#21699) 2025-08-06 15:36:38 +08:00
devhl-labs
f6de5b71dc [csharp] Fix composed enum handling (#21690)
* composed enums

* revert sample changes

* add new sample due to HttpClient library not working with the new models

* added to appveyor

* build samples again
2025-08-05 11:33:50 +08:00
William Cheng
de3e227328 feat(typescript-angular): prepare build (#21684)
* feat(typescript-angular): prepare build

Prepare build is required in order to publish

* update php laravel samples

* update samples

---------

Co-authored-by: Evan Gillogley <evanjmg@gmail.com>
2025-08-05 10:23:36 +08:00
devhl-labs
df1d562f24 [csharp] Ensure unique property names (#21649)
* started fixing multiple issues

* weather api builds

* added docstring

* ensure property names are unique

* force pr gates to restart

* force pr gates to restart

* force pr gates to restart

* force pr gates to restart
2025-08-04 01:31:55 +08:00
devhl-labs
302590a215 fix testing respone (#21687) 2025-08-04 00:47:46 +08:00
Daniel García
31060931b6 Add reqwest-trait crate to workspace and rename it (#21674)
* Add reqwest-trait crate to workspace and rename it

* Fix missing ^isArray condition
2025-08-04 00:46:44 +08:00
Julien Debon
81be9cd409 OCaml: derive eq (#21679) 2025-08-02 12:32:44 +08:00
Mattias Sehlstedt
02ba9f68ac [Scala sttp] Fix header serialization for Optional values (#21603)
* Adjust header serialization for Optional values

* Add additional test verification to display the header type

* Do not get a null value from an option if it is empty, but rather keep the None value. If a value is present it is converted to an Option[String]
2025-08-02 11:36:40 +08:00
William Cheng
87231c3b58 [php][php-nextgen] add new github workflow to perform syntax check on php files (#21678)
* update php laravel samples

* add php-nextgen to the github workflow

* trigger build failure

* add syntax checker workflow

* Revert "trigger build failure"

This reverts commit 5be28f2e76.
2025-08-01 17:48:04 +08:00
some00
dba7aee41e Kotlinx polymorphism with custom discriminator support (#21531)
* kotlinx serialization fixes

- added new config with kotlinx, discriminator (/w custom name) and
  kotlinx_serialization
- remove discriminator properties from the generator in both base and
  derived classes
- set discriminatorValue in additionalProperties of derived classes
- add JsonClassDiscriminator the derived classes in the template
- set SerialName to discriminatorValue in the template
- change base classes to sealed class instead of interface
- make variables in base classes abstract

* Generated kotlin-allOff-discriminator-kotlinx-serialization sample

* Added test for kotlinx_serialization with discriminator

* renamed yaml

* Added new sample to github workflow

* Added comments to KotlinClientCodegen::postProcessAllModels
2025-07-31 16:29:39 +08:00
Christopher Gual
d7a8aae6e2 [BUG][typescript-fetch] Default case for oneOf serialization method returning undefined variable. (#21669)
* fix bug for returning uninitialized variable for serialization method in oneOf models with discriminator

* Update samples

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-31 08:53:42 +02:00
Marcel
7664c6f511 feature: Add control flag for static compile (#21635) 2025-07-30 16:02:34 +08:00
hirish
e275826d1b add curl handler pre-invoke-callback to c-libcurl (#21654) 2025-07-30 15:06:35 +08:00
Christopher Gual
7c1dce4756 [Bug][typescript-fetch] Fix missing close parenthesis in oneOf models. (#21645)
* Modify unit tests for typescript-fetch, issue 21259 to check for closing parens & fix a typo in TypeScriptFetchModelTest

* Fix bug in closing parens in modelOneOf.mustache and some spacing adjustments

* Update samples

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-29 13:28:26 +02:00