Compare commits

...

1727 Commits

Author SHA1 Message Date
William Cheng
be68142c8b better format in build.gradle (kotlin) 2025-11-26 17:26:16 +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
dependabot[bot]
6be8fb3047 Bump actions/setup-dotnet from 5.0.0 to 5.0.1 (#22437)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-version: 5.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-26 13:54:45 +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
Cas van Dinter
5711f391e9 build(pom): update swagger-parser to 2.1.35 (#22410) 2025-11-23 15:24:11 +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
dependabot[bot]
3b4494d751 Bump glob and @nestjs/cli (#22396)
Bumps [glob](https://github.com/isaacs/node-glob) to 12.0.0 and updates ancestor dependency [@nestjs/cli](https://github.com/nestjs/nest-cli). These dependencies need to be updated together.


Updates `glob` from 11.0.1 to 12.0.0
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v11.0.1...v12.0.0)

Updates `@nestjs/cli` from 11.0.7 to 11.0.12
- [Release notes](https://github.com/nestjs/nest-cli/releases)
- [Changelog](https://github.com/nestjs/nest-cli/blob/master/.release-it.json)
- [Commits](https://github.com/nestjs/nest-cli/compare/11.0.7...11.0.12)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 12.0.0
  dependency-type: indirect
- dependency-name: "@nestjs/cli"
  dependency-version: 11.0.12
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-20 10:11:24 +08:00
William Cheng
2c4c24728f update ruby samples 2025-11-20 10:04:12 +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
William Cheng
6210db308e fix website to use load instead of safeLoad (#22386) 2025-11-19 16:53:26 +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
dependabot[bot]
107d72c5f5 Bump js-yaml from 3.14.1 to 4.1.1 in /website (#22363)
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.1 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-17 13:48:21 +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
Jachym Metlicka
c1c74c0ec8 [kotlin-spring][server] Feat: Add Spring Declarative HTTP Interface support for easy client instantiation (#22302)
* add required template files and logic in generator

* add possibility to choose between coroutines and reactor style reactive for spring declarative http client

* remove Flow as array-type input param for declarative http interface

* better name for switches

* revert change

* fix implementation and add tests

* revert unrelated formatting changes

* add compile check for generated code to  github action config file

* fix output folder for config files

* commit generated files

* commit generated docs files

* fix compile test output folder names

* fix sample generation

* fix compile to jdk 17+

* force test rerun

* remove misleading warning

* remove extraneous mustache files. Rebuild samples

* restoring incorrectly deleted output files
2025-11-16 21:54:19 +08:00
William Cheng
7690545276 add sample to test useGzipFeature in java native (#22361) 2025-11-16 21:52:17 +08:00
Ilya Nemtsev
ecb1e9e2cb [JAVA][NATIVE] Add gzip capability (#22358)
* add gzip capability

* fixed test

* added docstring

* regenerated samples
2025-11-16 21:23:08 +08:00
Daniil Iastremskii
039de98d4f Fix generation of an empty data class when using kotlinx.serialization (#22350)
* Fix generation of an empty data class

* Add a test

* Delete polymorphicJacksonSerialization artifacts on exit
2025-11-16 18:59:21 +08:00
William Cheng
6892768009 [typescript-axios] add support for accept headers (#22318)
* cherry pick the change from 22299

* fix accept headers
2025-11-15 14:40:58 +08:00
dsteeley
fd72d4d521 Merge branch 'allow-trait-mocking' into 'rust-openapi' (#22332)
allow trait mocking

See merge request tools.core/swagger-codegen!379

Co-authored-by: Richard Whitehouse <richard.whitehouse@metaswitch.com>
2025-11-13 13:45:30 +08:00
dsteeley
1e3f6d0ed9 Refresh rust-server Cargo.toml wiht updated dependencies and move jsonwebtoken to dev-deps (#22338) 2025-11-12 19:18:14 +08:00
William Cheng
886e4a6dd0 [kotlin] Test array integer (enum) with kotlin client generator (#22336)
* add tests for array of enum

* update
2025-11-12 16:39:01 +08:00
William Cheng
57d304f3f6 add tests for deprecated enum class (#22335) 2025-11-12 16:09:42 +08:00
William Cheng
59f7d09c2e [java][jersey2][jersey3] Cleanup samples (#22328)
* clean up java jersey3 smaples

* clean up jersey3 samples

* update tests
2025-11-12 15:40:19 +08:00
Christopher Molin
ec8ca20dec [Java] Support Deprecation of Generated enum-classes (#22312)
* [Java] Annotate Deprecated `enum`-classes with `@Deprecated`

* Update Generated 'samples'-files

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update `modelEnum.mustache` According to Review Comment

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update Generated 'sample'-files

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update Java Native `modelEnum.mustache` File

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update Java JaxRS `modelEnum.mustache` File

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update Java Okhttp-gson `modelEnum.mustache` File

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update Java Micronaut `modelEnum.mustache` File

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

* Update Java Helidon `modelEnum.mustache` File

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>

---------

Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>
2025-11-12 15:33:28 +08:00
Olek Janiszewski
2ab5365fb2 Fix kotlin codegen for enum with int items (#22324) 2025-11-11 22:18:43 +08:00
dsteeley
2326eef7cf Fixups for rust-server hyper1 support (#22321) 2025-11-11 18:27:11 +08:00
Julian Vennen
d318752478 [php][php-nextgen] fix return type if empty and non-empty responses are mixed (#22322) 2025-11-10 22:06:21 +08:00
Julian Vennen
86ff873a03 [php][php-nextgen] fix array enum query parameters (#22320) 2025-11-10 19:14:41 +08:00
rignicat
28e2254e7a [JAXRS] Partial revert changing path generation if interface, fixes #22279 (#22316)
* Partial revert changing path generation if interface

This reverts commit 65703ff320.

* update samples and docs
2025-11-10 16:54:06 +08:00
William Cheng
69da1ea470 Add new JAX-RS samples to Github workflow (#22314)
* add new jaxrs samples to github workflow

* trigger ci
2025-11-10 15:07:40 +08:00
Raoul de Haard
b1f2a67bc3 [JAVA jaxrs-spec gen] add option for generating swagger V3 annotations (#22300)
* feat: add support for Swagger v3 annotations to jaxrs-spec

* test added unittest for jaxrs-spec with swagger3Annotations

* test added integrationtest for jaxrs-spec with swagger3Annotations

* test added integrationtest for jaxrs-spec with swaggerV2Annotations

* documentation update for new option useSwaggerV3Annotations in the jaxrs-spec.md

* test added integrationtest for jaxrs-spec with swaggerV3Annotations icm use JakartaEE

* update documentation by executing:  ./bin/utils/export_docs_generators.sh

* ran on wsl: ./bin/generate-samples.sh ./bin/configs/*.yaml
2025-11-10 14:50:10 +08:00
BiekerUdan
48648a4051 fix(c): Remove duplicate code generation for UUID path parameters (#22285)
* fix(c): Remove duplicate code generation for UUID path parameters

The C generator was generating duplicate path parameter handling code
when a parameter had format: uuid. This occurred because UUID parameters
have both isString=true and isUuid=true flags set, causing both the
{{#isString}} and {{#isUuid}} template blocks to execute.

The duplicate {{#isUuid}} block has been removed since it generated
identical code to the {{#isString}} block. This makes UUID parameters
consistent with email parameters, which already work this way
(isEmail=true and isString=true, but only use the {{#isString}} block).

The generated code now compiles successfully without duplicate variable
declarations.

* test(c): Add UUID path parameter test case to petstore

Adds endpoint with UUID path parameter to verify C generator produces compilable code without duplicate variable declarations.

* chore(samples): Regenerate all C samples with template fix

Regenerated all C sample variants to include the UUID path parameter example.
2025-11-10 14:36:58 +08:00
William Cheng
a6c753ea69 php template minor refactoring (#22310) 2025-11-09 17:22:18 +08:00
William Cheng
81285b75e4 add exts alias to simply the templates (rust-server) (#22309) 2025-11-09 15:42:14 +08:00
William Cheng
c596bb7d8a add check for optionl to show null in doc (php) (#22307) 2025-11-08 23:12:27 +08:00
Enric Pou
ce338a4a23 Added UUID support in python docs (#22301) 2025-11-08 22:29:12 +08:00
Achton Smidt Winther
fb444bf15e [php] Fix PHP generator validation for nullable required properties (#22292)
* [php] Fix null+required properties to accept null values in generated models. Also fix PHP annotations related to same.

* [php] Update samples.
2025-11-08 22:28:37 +08:00
macmanad
a144678459 [csharp][generichost] Fix format string parameter (#22282) (#22283)
* [csharp][generichost] Fix format string parameter (#22282)

* Update samples
2025-11-08 21:54:42 +08:00
William Cheng
95b9438fd9 add tests for api key name in ccp rest sdk (#22306) 2025-11-08 21:38:06 +08:00
Devon
7beb8a6102 [cpp-rest] Fixing Incorrect Header Name Used (#22298) 2025-11-08 21:19:07 +08:00
Devon
2107686d3d [Rust Reqwest] Fixes Enums in Query Parameters via Causing Compilation Failure (#22281)
* [Rust Reqwest] Fixes Enums in Query Parameters via  Causing Compilation Failure

* regen
2025-11-08 20:56:07 +08:00
Mattias Sehlstedt
7486f12e62 Correct unsafe pistache documentation link (#22296)
* Replace outdated/incorrect documentation link with correct https version

* Generate samples
2025-11-08 15:04:52 +08:00
Enric Pou
600c051fa5 Dart Dio: fix typo in markdown files (#22293) 2025-11-08 15:04:06 +08:00
Enric Pou
f37b8cce58 Add UUID examples and documentation (#22303) 2025-11-08 14:56:46 +08:00
William Cheng
64c8711356 [python] Fix pyproject (poetry 2.x) for httpx (#22289)
* fix poetry 2 httpx dependencies

* use poetry 2 for tests
2025-11-06 14:09:54 +08:00
Michael Munch
65359d8050 [Java] Use new location for hibernate validator (#22287)
* Use new location for hibernate validator
org.hibernate:hibernate-validator -> org.hibernate.validator:hibernate-validator

* Update samples

* Update samples

---------

Co-authored-by: Michael Munch <mmu@bankdata.dk>
2025-11-06 01:42:18 +08:00
Linh Tran Tuan
7ce0096e73 [Rust-Axum] Fix Regex (#22277) 2025-11-04 13:35:51 +08:00
Aman Rao
0ae50f5a10 Fixes #22146. Fixed the code to call the correct method to prevent duplication of Prefix added to the model when using --model-name-prefix (#22188)
* Fixes #22146

* Added handling for when super.getSchemaType method
returns null
2025-11-03 15:26:22 +08:00
William Cheng
3347204425 [java][microprofile] Using incorrect @Multipart instead of @FormParam (#22266)
* fix: #10618 Using incorrect @Multipart instead of @FormParam in microprofile java client

[BUG][JAVA] Using incorrect @Multipart instead of @FormParam when generated Microprofile java client #10618
https://github.com/OpenAPITools/openapi-generator/issues/10618

* fix: #10618 put updated samples under sourcecontrol

* fix: #10618 delete configoption disableMultipart for microprofile

* fix: #10618 put updated samples after cleanup of "disableMultipart"

* fix: #10618 make samples compile and switch jandex-maven-plugin

* fix: #10618 sync my fork with upstream & clean pom

* fix: #10618 regenerate samples

* fix: #10618 microprofile-rest-client-with-useSingleRequestParameter

* update

* update

---------

Co-authored-by: Riedlinger, Jochen (IT 480) <jochen.riedlinger@l-bank.de>
Co-authored-by: Jochen Riedlinger <j_ri@gmx.de>
Co-authored-by: Jochen Riedlinger <14962274+jochenr@users.noreply.github.com>
2025-11-02 16:56:10 +08:00
Lars van Leeuwen
93d7821281 Patch dependencies (#22262) 2025-10-31 22:08:58 +08:00
William Cheng
1e614d4b96 update samples 2025-10-31 16:07:52 +08:00
Marcel Jacek
66b742038a fix(java): default values from allOfs are not correctly definied (#22200)
* fix: extend check for default values of integer and number schema

* add testcases to openapi specs

* generate java clients with the updated fix
2025-10-31 15:58:20 +08:00
William Cheng
9b8ab659ac update undertow to newer version (#22259) 2025-10-31 13:27:43 +08:00
William Cheng
f9d2b8b579 Prepare v7.18.0 release (#22250)
* Revert "v7.17.0 release (#22248)"

This reverts commit 0120486e62.

* prepare v7.18.0 release

* update samples

* update doc
2025-10-30 01:25:35 +08:00
William Cheng
0120486e62 v7.17.0 release (#22248) 2025-10-30 00:18:40 +08:00
Ivan ROGER
44075c9edf Fix explode query params for typescript-fetch (#22246)
Fixes: #10438
2025-10-29 16:28:00 +01:00
William Cheng
3d4f29eac7 [PYTHON-FASTAPI] update starlette to newer version 0.49.1 (#22243)
* update starlette to newer version 0.49.1

* update fastapi to newer version
2025-10-29 15:18:27 +08:00
William Cheng
351b601368 openapi-normalizer: Add REMOVE_PROPERTIES_FROM_TYPE_OTHER_THAN_OBJECT normalize option (#22236)
* fix bug 21680: Introduce REMOVE_PROPERTIES_FROM_TYPE_OTHER_THAN_OBJECT normalize option

* Advise to use REMOVE_PROPERTIES_FROM_TYPE_OTHER_THAN_OBJECT

* update doc

---------

Co-authored-by: Guillaume ALAMOME <guillaume.alamome@gmail.com>
2025-10-28 13:54:49 +08:00
Jason Frey
2c248e6c93 [ruby] Introduce ApiModelBase (#22052)
The Ruby code that is generated copies numerous methods into every
model. This creates bloat both in file size and run-time memory usage.
This commit introduces a base class for all models to store common
methods. This commit's focus is only on static methods that do not
change between models.
2025-10-28 12:42:51 +08:00
Eddie Sholl
68b0dfe6d1 Expose mtls certificate config params in python and php configuration templates (#22229)
* Expose mtls config params in python template

* Expose certFile and keyFile configuration items to support mtls in php generated client

* Regenerate of examples
2025-10-28 12:33:05 +08:00
Leon Linhart
31e462dc3e Make Gradle properties non-nullable (#22050)
They were never really intended to support null values, so this is kind of a bug. However, this is technically also breaking for users that set these properties to `null` explicitly (instead of leaving them unset).
2025-10-27 15:18:08 +08:00
Elliott Kember
74488fa3c3 Update modelOneOf.mustache (#22220)
Adds booleans to modelOneOf
2025-10-27 15:15:57 +08:00
William Cheng
8c54f18f7c remove BACKTICK_PLAN.md 2025-10-27 14:56:13 +08:00
Anshul Singhvi
57d12811ef [Julia] Fix docstring parameter formatting with backticks (#22190)
* [Julia] Fix docstring parameter formatting with backticks

Wrap parameter names in backticks in generated Julia client docstrings
to prevent markdown from misinterpreting underscores as italic formatting.

This fixes an issue where parameter names like `pet_id`, `api_key`, and
`additional_metadata` would render incorrectly in documentation, with
underscores being treated as markdown italic markers instead of literal
characters.

Related issue: JuliaComputing/OpenAPI.jl#72

* Also wrap data types and return types in backticks

* Regenerate Julia client samples with backticked docstrings

* [Julia] Add backticks to all markdown documentation templates

Extend backtick formatting to markdown documentation templates for
both Julia client and server generators. This ensures consistent
markdown rendering of identifiers with underscores.

Changes:
- julia-client/api_doc.mustache: Add backticks to function signatures,
  parameter names, types, and return types in markdown API docs
- julia-server/api_doc.mustache: Same changes for server API docs
- julia-client/model_doc.mustache: Add backticks to property names and
  types in markdown model documentation
- julia-server/model_doc.mustache: Same changes for server model docs

All generated markdown files now properly display identifiers like
`pet_id`, `Custom_Type`, `update_pet_with_form` with literal
underscores instead of broken italic formatting.

Related to JuliaComputing/OpenAPI.jl#72
2025-10-27 14:55:35 +08:00
lbilger
676efae183 [Java] Add import for java.util.Arrays if there is a set property in a model. Arrays.asList is used when initializing the property if it has a default value. (#22207) 2025-10-27 14:55:10 +08:00
Rens Groothuijsen
a4d05b38f5 [go] Correctly set default array value on query parameters (#22060) 2025-10-27 10:30:08 +08:00
Mattias Sehlstedt
75ae04ecfd Fix so that the x-field-extra-annotation properly split any array items (#22226)
* Fix so that the x-field-extra-annotation properly split any array items

* Add a unit test to show that the annotations are generated as expected
2025-10-27 09:56:38 +08:00
rignicat
808d106e0c [jaxrs] Support jackson option (true by default) (#22169)
* allow configuring jackson, remove jackson import if disabled

* do not generate root resource or application file if generating interface

* change template files to remove jackson if disabled

* updated samples and docs as required by PR checklist
2025-10-27 09:56:07 +08:00
William Cheng
9d810e0fbb update jackson databind nullable to v0.2.8 (#22230) 2025-10-27 00:35:51 +08:00
Kevin Liddle
91a499b8c6 [rust-axum] Fix polymorphic type discriminators (#22222)
* [rust-axum] Make discriminator field name camelCase

* [rust-axum] Give polymorphic enum values a serde alias using the mapping keys if available

* update samples

* update test file checksum
2025-10-25 22:43:56 +08:00
dependabot[bot]
eda2e67b94 Bump actions/download-artifact from 5 to 6 (#22225)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-25 17:31:18 +08:00
Rens Groothuijsen
8643bc1d66 [python-fastapi] Remove additional slashes in query regex (#22223) 2025-10-25 17:16:17 +08:00
dependabot[bot]
2b22d172da Bump actions/upload-artifact from 4 to 5 (#22224)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-25 17:14:59 +08:00
William Cheng
d605afeef5 update vertx-web to 4.x 2025-10-23 10:32:20 +08:00
William Cheng
6eff628139 update logback to newer versions (#22204) 2025-10-22 18:51:38 +08:00
William Cheng
1d071288f8 use path from spec in ts angular documentation (#22194) 2025-10-21 15:40:48 +08:00
dependabot[bot]
816befc466 Bump vite and @angular-devkit/build-angular (#22192)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) to 6.4.1 and updates ancestor dependency [@angular-devkit/build-angular](https://github.com/angular/angular-cli). These dependencies need to be updated together.


Updates `vite` from 6.3.6 to 6.4.1
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/create-vite@6.4.1/packages/vite)

Updates `@angular-devkit/build-angular` from 19.2.17 to 19.2.17
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/19.2.17...19.2.17)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.4.1
  dependency-type: indirect
- dependency-name: "@angular-devkit/build-angular"
  dependency-version: 19.2.17
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-21 15:08:27 +08:00
William Cheng
3d00fd2adc update C# samples 2025-10-21 11:40:43 +08:00
Fabian Buchenberger
00d16496c8 [csharp] do not use deprecated HttpRequestMessage.Properties (#20737) 2025-10-21 10:58:47 +08:00
William Cheng
57752d190c add cache: gradle to java setup workflow (#22183) 2025-10-20 17:15:36 +08:00
William Cheng
6572d5d9a6 Use JDK11 for kotlin-server projects (#22182)
* use jdk11 for kotlin server projects

* test with jdk11 by default
2025-10-20 16:54:50 +08:00
William Cheng
c15ba67fc9 update kotlin-spring projects to use jdk11 (#22181) 2025-10-20 15:48:10 +08:00
William Cheng
63ddce0c1b default REFACTOR_ALLOF_WITH_PROPERTIES_ONLY to true (#22180) 2025-10-20 11:39:09 +08:00
Kevin Liddle
01139e6963 [rust-axum] don't include quotes in output string from Display trait for string types (#22161)
* [rust-axum] don't include quotes in output string from Display trait for string types

* [rust-axum] update samples
2025-10-20 10:35:18 +08:00
Sven Allers
e7dae1a81e Custom error messages for size, length, min & max validations in Spring & Spring-Kotlin (#22090)
* Custom error messages for size, length, min & max validations in Spring & Spring-Kotlin

* Run scripts
2025-10-19 21:25:03 +08:00
Ilia
4e7bba659b [dart] Fix compile error in inline enum properties with "default" values(#22120) (#22165) 2025-10-19 20:47:20 +08:00
jpfinne
88bba259e9 OpenApiNormalizer FILTER improvements. Multi filters + filter on path (#22128)
* Use Filter Parser and allow multiple filters

* OpenAPINormalizer fails for invalid FILTER syntax

* Fix typo

* Use constants for filter keys.
Improve exception handling and tests.

* Fix format missing Locale.ROOT

* Make Filter extensible

* Additional unit test for invalid filter
2025-10-18 22:39:44 +08:00
William Cheng
8c85e3cedc [typescript-axios] Add support for AWSv4 Signature (#22174)
* [typescript-axios] Add support for AWSv4 Signature

* update typescript-axios.md file

* update doc

---------

Co-authored-by: qasim <qasim@calo.app>
2025-10-18 16:52:24 +08:00
Jérémy Reynard
d840c495c4 [FEAT] Support nullable Array<org.springframework.web.multipart.MultipartFile> in Kotlin-Spring generator (#21994)
* Support nullable `org.springframework.web.multipart.MultipartFile` in Kotlin Spring generator

- nullable is only supported for MultipartFile. However, Array<MultipartFile> could be also nullable

* Support nullable `org.springframework.web.multipart.MultipartFile` in Kotlin Spring generator

* Support nullable `org.springframework.web.multipart.MultipartFile` in Kotlin Spring generator

Update kotlin-spring-additionalproperties samples
2025-10-18 16:44:19 +08:00
Martin Tomašovič
7c000687e4 [csharp][generichost] Fix DateOnly parsing (#22099)
* Fix DateOnly parsing

* update samples
2025-10-18 14:58:36 +08:00
Mattias Sehlstedt
23a2aafe91 [CSHARP] Fix how the array type is set when using NULLABLE_REFERENCE_TYPES (#22071)
* Fix how the type is calculated for deep inline arrays

* Add list alias objects to petstore specification and regenerate samples
2025-10-18 14:58:08 +08:00
daberni
2afe7d29cd [Spring] Remove unnecessary modifiers from API interface templates (#22132)
* public static final String PATH_

* regenerate samples
2025-10-18 14:56:59 +08:00
William Cheng
6ede03d546 remove includeEndpointUrl (#22173) 2025-10-18 14:52:51 +08:00
Rostislav Svoboda
ee85775afd chore: Misc cleanup related to deprecations (#22172)
* Replace deprecated StringUtils.startsWith methods

* Add missing @Deprecated annotations
2025-10-18 14:52:19 +08:00
Robin Csutorás
94e8997cc7 [typescript-angular] Add includeEndpointUrl option to include endpoint URLs in generated service comments (#22152)
Adds a new boolean option 'includeEndpointUrl' that, when enabled, includes endpoint URL information as JSDoc comments in generated service methods and interfaces. This helps developers quickly identify the HTTP method and path for each API operation.

Co-authored-by: Robin Csutoras <robin.csutoras@Robins-Laptop.local>
2025-10-18 14:35:58 +08:00
jheyens
552ab4c6d5 Java-wiremock: Correctly handle multiple MIME-types in HTTP-Accept-headers (#22133)
* Java-wiremock: Allow matching multiple Accept-header values

* Wiremock: Ignore casing when matching requests' Content-Type headers

* Java-wiremock: Regenerate samples
2025-10-18 14:27:03 +08:00
daberni
2b00bab60a [Spring] Optimize and omit unnecessary imports on Api in ApiController templates (#22164)
* Optimize imports

* remove unnecessary blank line

* revert unintended indentation
2025-10-18 14:19:35 +08:00
Zach Hornback
ccd43a5ce4 [python-fastapi] Fix: Skip sorting of path operations (#22163) (#22166)
* [python-fastapi] Fix: Skip sorting of path operations (#22163)

Make use of helpful code added in
243f501aef to skip sorting of path
parameters.  In FastAPI, order matters, see link for details:
https://fastapi.tiangolo.com/tutorial/path-params/?h=path#order-matters

Issue: https://github.com/OpenAPITools/openapi-generator/issues/22163

* Update samples after previous commit

Reading comprehension is hard.  I missed the part of step 3 where
samples would be updated in response to the change I had previous
submitted.

Via this commit, update samples to match expectations.  The order of
various endpoint implementations is now changed in the sample, matchcing
the order in the yaml files that created them.
2025-10-18 14:18:15 +08:00
Rens Groothuijsen
592c262277 Set default value for isOauth field (#22162) 2025-10-17 15:49:26 +08:00
Bradford Hovinen
40b9d69d5a Support deprecated API endpoints in reqwest-based Rust clients (#22131)
Previously, if an API endpoint was marked deprecated, this fact was not
reflected in the generated Rust clients using the reqwest library. We
want to know exactly when our client code is using a deprecated endpoint,
so marking the corresponding functions with the `#[deprecatd]` attribute
would be very helpful. Uses of the endpoint would then be picked up by
linters so that we can react.

This adds a line to the template which marks functions generated from
deprecated endpoints with the `#[deprecated]` attribute.

This does not touch any of the other client generators for Rust or any
other language, since they are out of scope for our needs.

Co-authored-by: Bradford Hovinen <bho@qwello.eu>
2025-10-16 19:41:28 +08:00
CG
323f978674 fix(kotlin-spring): the generated RequestHeader defaultValue for String parameters contains duplicated double quotes (#22123) 2025-10-16 18:34:33 +08:00
William Cheng
4fe1c4ac73 feat(typescript-fetch): add docs support (#22110)
* feat(typescript-fetch): add docs support

fixes #18276

* chore: regenerate

- generate-samples.sh
- export_docs_generators.sh

* chore: address PR feedback

* update samples

* update samples

* clean up unused files

---------

Co-authored-by: Aaron Heckmann <aaron@plane.so>
2025-10-16 18:21:41 +08:00
monksy
ecaf3ea48a Removed a duplicate binding for an address for rust-server (#22116)
* Removed a duplicate binding for an address for rust-server. The address binding happens higher up in the method.

* Updated samples.
2025-10-16 17:04:41 +08:00
jheyens
ce1e9e0866 Jersey2/3: Fixes a bug in OAuth token renewal, where the previous HTTP 401 code is reused even after the retry succeeds (#22134)
* Jersey2/3: Fix a bug where, when using OAuth, the HTTP 401 status code persisted even if the second request after renewing the Bearer access token succeeded

* Jersey2/3: Regenerate samples
2025-10-16 16:32:05 +08:00
Adnan
fc12a1b63a feat(rust-axum): make the Object value public (#22144)
* feat(rust-axum): make the Object value public

* feat(rust-axum): regenerate samples
2025-10-16 15:01:19 +08:00
William Cheng
bce0ea65fe CircleCI: clean up unused tests/setup (#22158)
* clean up circleci tests

* ignore .angular

* trigger build failure

* Revert "trigger build failure"

This reverts commit ee228266b1.
2025-10-16 14:50:41 +08:00
Linh Tran Tuan
117042aa44 [Rust-Axum] Fix wrong validation for non-model Body (#22155)
* Fix Issue 21143

* Update
2025-10-16 14:25:01 +08:00
William Cheng
c680f39ad7 Fix TypeScript Angular v20 tests with correct versions (#22156)
* fix ts angular v20 tetss with correct versions

* restore old version

* fix pom.xml
2025-10-16 14:14:11 +08:00
William Cheng
211f51702d Update package.json manually in angular v19 tests (#22151)
* update package.json manually in angular v19 tests

* fix angular v19 tests

* remove declarations
2025-10-15 21:25:01 +08:00
sermler
a4a24a8168 [typescript-fetch] Rework fix infinite recursion with self-referencing discriminator mappings (#22149)
* Prevent ConcurrentModificationException

* Update typescript-fetch samples

* Add fixture sample

* Update samples
2025-10-15 19:25:45 +08:00
William Cheng
cbb27163a0 Add samples to test jaxrs spec (withXml option enabled) (#22148)
* add samples to test jaxrs spec with xml option enabled

* add new files
2025-10-15 18:11:19 +08:00
William Cheng
fdbabee87e Add tests for typescript angular v17, v18, v20 (#22145)
* add tests for angular v17, v18, v20

* trigger build failure

* Revert "trigger build failure"

This reverts commit bab6448ed1.

* update samples
2025-10-15 18:08:52 +08:00
William Cheng
cdd120d976 update samples 2025-10-15 17:53:01 +08:00
maushomu
9d110fcb6b [Java][jaxrs-spec] withXml support (#22140)
* withXml support in pojo.mustache

* Create xmlPojoAnnotation.mustache

* withXml support in enumClass.mustache
2025-10-15 17:43:15 +08:00
Robert Marsal
57324efd48 fix: typescript docs not being put in a docs directory (#22124)
* fix: typescript docs not being put in a docs directory

* fix: platform agnostic path separator
2025-10-15 17:13:51 +08:00
William Cheng
21d29dacc2 Add tests for TypeScript Angular v19 (#22139)
* add tests for ts angular v19

* fix transfer cache
2025-10-15 16:36:03 +08:00
dependabot[bot]
c27f9c3ebc Bump actions/setup-java from 4 to 5 (#22137)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-15 16:30:14 +08:00
William Cheng
486e0c5e61 Test TypeScript Angular v16 in Github workflow (#22138)
* test ts angular v16 in github workflow

* trigger build failure

* Revert "trigger build failure"

This reverts commit c7987599a9.
2025-10-15 14:51:40 +08:00
sermler
4bedcb754b [typescript-fetch] Fix infinite recursion with self-referencing discriminator mappings (#21956)
* Add selfReferencingDiscriminatorMapping to ExtendedCodegenModel

* Add selfReferencingDiscriminatorMapping to template
2025-10-14 13:39:58 +02:00
William Cheng
89b0bc48fa Add workflow to test TypeScript clients (#22126)
* add workflow to test ts clients

* update

* update

* run petstore

* update

* trigger build
2025-10-14 16:33:29 +08:00
Ivan Leb
0b9172ef5c add cache to efficiently lookup CodegenModel in csharp codegen (#22094)
Co-authored-by: ivan_leb <ivan_leb@mail.ru>
2025-10-14 15:13:26 +08:00
Raymond Carino
b199901aab [fix] Apply REMOVE_X_INTERNAL normalizer to nested inline properties (#22097)
* fix: Apply REMOVE_X_INTERNAL normalizer to nested inline properties

When REMOVE_X_INTERNAL=true is set, the normalizer removes the x-internal
extension from top-level schemas in components/schemas but fails to remove
it from inline object properties within those schemas.

This causes issues when:
1. A schema is imported cross-file (e.g., admin.yaml imports from chat.yaml)
2. That schema has an inline object property with x-internal: true
3. The inline property has type: object with nested properties

Result: TypeScript generator creates a type reference but no interface
definition, causing compilation errors.

This fix applies the same x-internal removal logic to normalizeProperties()
that already exists in normalizeComponentsSchemas(), ensuring inline
properties are handled consistently.

Fixes behavior for inline schemas with x-internal in cross-file imports.

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/OpenAPINormalizer.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* test: Add test case for REMOVE_X_INTERNAL with inline properties

Adds test to verify that REMOVE_X_INTERNAL normalizer correctly removes
x-internal extension from inline object properties, not just top-level schemas.

* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Revert "Apply suggestion from @Copilot"

This reverts commit c899e9ec96.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-14 14:44:59 +08:00
William Cheng
941a5ccf13 Add workflow to test TypeScript server (#22125)
* add workflow to test TS servers

* fix path

* trigger build failure

* Revert "trigger build failure"

This reverts commit a0bf0199d3.

* remove ts server tests in circleci
2025-10-14 13:50:59 +08:00
Simon Podlipsky
5f13c53825 fix(php,php-nextgen): remove useless string cast from ObjectSerializer.mustache (#22121) 2025-10-14 13:14:02 +08:00
Beppe Catanese
1240d103ff [Typescript]: add deprecated tags for attributes (#22108)
* Add deprecated annotation when attribute is deprecated

* Generate samples
2025-10-13 08:44:35 +02:00
Mattias Sehlstedt
42af4f9529 Move all vendor extension definitions within AbstractCSharpCodegen to CodegenConstants. Then adjust other usages of those same vendor extension definitions to the created constants. (#22112) 2025-10-12 23:21:17 +08:00
Sarvesh Mungurwadi
81a3488556 fixed Bean Validation pattern (#19748) 2025-10-12 09:27:15 +08:00
William Cheng
08da0abfca remove unused files in java samples (#22105) 2025-10-11 00:51:11 +08:00
Artem Shubovych
fb277f82d5 [java] [spring] Fix annotationLibrary option being ignored in spring generator (#22046)
* Fix annotationLibrary option being ignored in spring generator

* Generate sample code

* Sample generator weirdness

* Revert "Sample generator weirdness"
2025-10-11 00:15:04 +08:00
Amaury Graillat
6b1b5cc4c5 Update c curl generator to support float (#21103)
* [C-Curl] Client generator does not handle float properly (#21092)

- Change function signature to float*
- Change generator to convert float to string
- Similar change for double and long

* [C-Curl] Client generator does not handle float properly (#21092)

- Generate samples
- Fix generator for headers and path params

* Revert "[C-Curl] Client generator does not handle float properly (#21092)"

This reverts commit ba044a65d5.

* Revert "[C-Curl] Client generator does not handle float properly (#21092)"

This reverts commit f99c5b0382.

* [C-Curl] Client generator does not handle float properly (#21092)

- Convert float, double and long to string
- Generate samples

* [C-Curl] Client generator does not handle float properly (#21092)

- Add missing yaml example file

* [C-Curl] Client generator does not handle float properly (#21092)

- Transfer float and double in scientific notation with resp. 7 and 16 decimals
- Adapt string size to number of required characters

* [C-Curl] Client generator does not handle float properly (#21092)

- Fix unused variable.
- Fix snprintf string

* * [C-Curl] Client generator does not handle float properly (#21092)

- Generating samples

* * [C-Curl] Client generator does not handle float properly (#21092)

- Always allocate the exact string size
2025-10-08 14:23:45 +08:00
dependabot[bot]
fd84c8fbd6 Bump s4u/setup-maven-action from 1.18.0 to 1.19.0 (#22085)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.18.0 to 1.19.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.18.0...v1.19.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-version: 1.19.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-07 10:46:42 +08:00
dependabot[bot]
f092f72cc5 Bump actions/setup-node from 4 to 5 (#22086)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 5.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-07 10:46:23 +08:00
Antoine Reilles
37cac71f87 [java-cxf-cdi] @Api description is deprecated (#22083)
@Api(description=...) is deprecated.
Remove its usage: it is not used by swagger-ui, and generated warnings
at build
2025-10-07 02:10:20 +08:00
Timo Schwarz
b8d805980a Spring 7 WebClient Compatibility (#22030)
* Update Spring Boot dependency for WebClient

* Adapt WebClient ApiClient to change in HttpHeaders with Spring 7

---------

Co-authored-by: Timo Schwarz <timo.schwarz@bredex.de>
2025-10-06 21:07:57 +08:00
William Cheng
b49ec6e033 [fix][elixir] missing type mapping for AnyType (#22081)
* fix: unmapped anytype

* add tests for any type in elixir client

---------

Co-authored-by: Enrique Fernandez <enrique@bluelabs.eu>
2025-10-06 15:10:10 +08:00
Mattias Sehlstedt
4352a2fcd0 [Test] [Java] Add test example of how to handle x-parent without REF_AS_PARENT_IN_ALLOF normalization (#22058)
* Add test to illustrate example of how to handle x-parent without REF_AS_PARENT_IN_ALLOF normalization

* Minor change to retrigger build
2025-10-06 13:07:50 +08:00
William Cheng
6f3dacafc4 update ts samples 2025-10-06 01:45:35 +08:00
Sebastien Dionne
2d2e1c41c4 Fix typos and linguistic errors in documentation (#22078) 2025-10-06 01:32:00 +08:00
William Cheng
a955bead08 Migrate JS tests to Github workflows (#22077)
* update samples

* fix name

* update

* remove

* clean up test
2025-10-06 01:11:49 +08:00
jpfinne
d7b79a26c6 [Spring] add support for api versioning. Fix #22027 (#22028)
* Add spring api versioning support

* Do not add version if not requested

* Fix duplicate VendorExtensions

* Improve description

* Fix removal of RequestMapping version attribute if x-spring-api-version: '' is set at the operation level
2025-10-03 19:59:38 +08:00
William Cheng
1d7d399ec2 fix additional properties handling in 3.1 spec (#22056) 2025-10-03 11:06:39 +08:00
William Cheng
4121803442 update php samples 2025-10-03 10:02:59 +08:00
benkarrer-lab
602549cb36 php: render tag description in Api docs (api_doc.mustache) via operationTagDescription (#14395) (#22064)
Co-authored-by: benkarrer-lab <benkarrer-lab@users.noreply.github.com>
2025-10-03 09:57:32 +08:00
dependabot[bot]
1c082c7287 Bump gradle/actions from 4 to 5 (#22061)
Bumps [gradle/actions](https://github.com/gradle/actions) from 4 to 5.
- [Release notes](https://github.com/gradle/actions/releases)
- [Commits](https://github.com/gradle/actions/compare/v4...v5)

---
updated-dependencies:
- dependency-name: gradle/actions
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-02 15:27:53 +08:00
Jean-Marc Le Roux
7ab9364094 [Rust] Configurable default features from reqwest dependency (#22041)
* fix(rust): Remove default features from reqwest dependency

This change removes the default features (specifically native-tls) from the reqwest
dependency in the Rust client generator. This allows users to explicitly choose
their TLS backend without automatically including openssl-sys as a transitive dependency.

Users can now explicitly enable TLS backends using feature flags:
- native-tls
- rustls-tls
- default-tls

Fixes #21933

* feat(rust): Add reqwestDefaultFeatures option with backward-compatible default

This change adds a new generator option `reqwestDefaultFeatures` that allows
users to configure the default Cargo features for the reqwest dependency.

The option accepts:
- An array of strings in YAML config: reqwestDefaultFeatures: ["native-tls"]
- A comma-separated string via CLI: --additional-properties=reqwestDefaultFeatures=native-tls
- An empty value for no defaults: reqwestDefaultFeatures: []

Default value: ["native-tls"] (maintains backward compatibility)

This addresses the feedback in #21933 to make the change opt-in rather than
breaking existing users.

Users can now:
- Keep the current behavior (default)
- Opt-out: reqwestDefaultFeatures: []
- Use alternative TLS: reqwestDefaultFeatures: ["rustls-tls"]
- Combine features: reqwestDefaultFeatures: ["native-tls", "cookies"]

Fixes #21933
2025-10-02 01:47:08 +08:00
Ilia
28e7e7f2eb [kotlin] Add AnyOf/oneOf to multiplatform (#22035) 2025-10-02 01:44:54 +08:00
Mattias Sehlstedt
e8a688a724 Define codegen vendor extensions in CodegenConstants (#22054)
* Add an enum to centralize common internal vendor extensions used for Codegen processing

* Extend the normalizer tests to illustrate that an AllOfs with several refs have all of them marked as parents

* Add x-internal to the Codegen vendor extensions

* Move the Codegen vendor extensions into CodegenConstants

* Add assertion to JavaClient CodegenTest
2025-10-02 01:44:11 +08:00
Beppe Catanese
ddb15d4b9d Delete docs/generators/postman.md (#22044) 2025-09-29 19:01:36 +08:00
William Cheng
885ea07b17 Prepare 7.17.0 (#22040)
* Revert "v7.16.0 release"

This reverts commit 31299af0fc.

* prepare 7.17.0-SNAPSHOT

* update doc, samples
2025-09-28 17:25:13 +08:00
William Cheng
c0b72ee970 update readme with 7.16.0 2025-09-28 16:23:38 +08:00
William Cheng
ee76a05def v7.16.0 release (#22039) 2025-09-28 16:01:01 +08:00
William Cheng
30096d63b7 Revert "fix(rust): Add anyOf support to Rust client generator (#21896)" (#22038)
This reverts commit ee40887d47.
2025-09-28 12:23:50 +08:00
Yonatan Karp-Rudin
44a3be170f fix(kotlin-spring): add missing constructor parentheses for hashmap models (#22029)
* fix(kotlin-spring): add missing constructor parentheses for hashmap models

This commit fixes a bug in the kotlin-spring generator where models
defined with additionalProperties would result in uncompilable code.
The generated data class was missing the constructor invocation '()'
when inheriting from a map type.

This has been corrected to only add parentheses when the parent is a map.

The existing samples have been regenerated to reflect this change.

* Trigger CI
2025-09-27 22:06:05 +08:00
Linh Tran Tuan
e38f6c0580 [Rust-Axum] Support AnyOf, AllOf (#21948)
* Support AnyOf, AllOf

* Update

* Fix

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update
2025-09-27 16:01:37 +08:00
Viacheslav Zavoruev
2afac1aa28 [typescript-axios]: withSeparateModelsAndApi handles importFileExtension (#22032)
Separate models are located in `modelPackage` folder with `index.ts` file. ESM requires an index file with the provided extension when `importFileExtension` is defined.
2025-09-27 09:55:26 +02:00
Alex Kondratev
bab5ca2452 [python] add async httpx support (#22021)
* [python] fix #19255 add async httpx support

* update docs

* 1. "async" parameter for templates
2. hand written tests for python-httpx
3. CI workflow updated

* fix mypy
2025-09-27 15:30:50 +08:00
William Cheng
c1931c10da Add tests with optional body for go-server (#22034)
* add tests with optional body for go-server

* update workfllow
2025-09-27 14:28:28 +08:00
Ihar Hrachyshka
d8d9744154 go: Fix missing imports for optional body params. (#22014)
Previous mustache template was using #isBodyParam outside of #operation
context, so it was not effective.

Even if we'd add the proper context, we'd then risk generating duplicate
imports for multiple matching parameters.

For this reason, this patch implements detection of an optional body
parameter in code, making sure the corresponding import is added just
once.

Fixes #19237
2025-09-27 14:16:53 +08:00
KaizenCode
dc0d5c6839 replace deprecated 'typings' field with standard 'types' in package.json (#21371)
* replace deprecated 'typings' field with standard 'types' in package.json

* regenerate samples after replacing 'typings' with 'types' field

---------

Co-authored-by: winiga <winiga@rocketmail.com>
2025-09-25 14:23:43 +02:00
jpfinne
89edad5b8a Add vendorExtensions.x-class-extra-annotation to oneOf interfaces (#22020) 2025-09-25 15:40:12 +08:00
William Cheng
258d971f42 kotlin client: add docstring to new function (#22025)
* kotlin client: add docstring

* fix
2025-09-25 15:09:47 +08:00
daberni
5e8dcc9f07 [kotlin] Fix defaultValue in query parameters (#22002) 2025-09-25 15:02:15 +08:00
William Cheng
67b24330c9 Add tests for jaxrs cxf swagger2 client (#22019)
* add test for jaxrs cxf swagger2 client

* revert
2025-09-24 17:15:08 +08:00
fwermelskirchen
f02acaf27e [cxf] add support for Swagger2 (#22010)
* [cxf] add support for Swagger2

Closes #3668

* regen samples

* regen docs

* unconditionally include parameter imports

* Add swagger2 update samples

---------

Co-authored-by: Jens Kleine-Herzbruch <jensgr@gmx.net>
2025-09-24 15:18:37 +08:00
Tilman Holube
75804e4e31 Bump Jackson to 2.19.2 and databind-nullable to 0.2.7 (#22017) 2025-09-24 13:49:19 +08:00
Artem Shubovych
fe6da71327 [java] Fix annotationLibrary option being ignored (#21992)
* Only register the Swagger annotation imports for the corresponding annotationLibrary

* Fix the issue in a specific generator

* Add unit test
2025-09-23 16:31:01 +08:00
William Cheng
2f69ad9f26 update java samples 2025-09-22 15:43:37 +08:00
William Cheng
e5437e06a3 Update Ruby faraday to use ruby fake petstore test spec (#22008)
* update ruby faraday to use ruby fake petstore test spec

* clean up, regenerate samples

* update test
2025-09-21 23:33:40 +08:00
jpfinne
7e9b9615db [Java] [Spring] Use deduction configOptions for oneOfInterfaces (#20919)
* fix(java): x-discriminator-value should not produce @JsonTypeName

* fix(java): Remove unused getDiscriminatorValue()

* build at Fednot

* build at Fednot

* build at Fednot: skip sonar

* scm for release at fednot

* build fednot not 7.5.0-FEDNOT-SNAPSHOT

* build fednot not 7.5.0-FEDNOT-SNAPSHOT

* test all vars

* rollback custom pom.xml

* commit master

* commit test

* Samples for deduction

* add files  for deduction

* small improvements

* Merge changes from martin-mfg
Merge master

* Merge changes from martin-mfg
Merge master

* Merge changes from martin-mfg
Add comment to force rebuild

* Merge master

* regenerate doc

* regenerate client

* regenerate client

---------

Co-authored-by: Jean-Paul Finne <jean-paul.finne@fednot.be>
Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2025-09-21 23:22:39 +08:00
William Cheng
731668b199 remove travis, appveyor from project (#22007) 2025-09-21 22:26:55 +08:00
William Cheng
24d7c3e904 Refactor Scala client, server Github workflow for testing (#22005)
* refactor scala client server workflow for testing

* fix

* migrate circleci scala tests

* add service, update host table

* java 8

* add distribution

* java 17

* 2.13.x

* update

* clean up circleci config
2025-09-21 16:27:03 +08:00
William Cheng
71a6901d1e Add GitHub workflow to test Clojure client (#22004)
* add workflow to test clojure client;

* add file

* run tests

* remove server

* Revert "remove server"

This reverts commit bda9143219.

* clean up circleci
2025-09-21 00:32:44 +08:00
William Cheng
f1a273de16 Test Java clients with Petstore server in Github workflow (#22003)
* test java clients with petstore in github workflow

* update

* clean up
2025-09-21 00:00:52 +08:00
William Cheng
3a63c2f7d2 Migrate Go petstore tests from circleci to github workflow (#21997)
* migrate go tests from circleci to github workflow

* update samples

* update samples

* update workflow

* update samples

* update samples

* update test

* update tests

* update tests

* fix

* fix

* update host table

* update tests

* update spec

* new spec
2025-09-19 17:10:31 +08:00
Mattias Sehlstedt
73c8728343 [Java] [Spring-client] Exclude discriminator from nullable annotation (#21981)
* Exclude the discriminator from getting a nullable-annotation

* Update samples
2025-09-19 14:50:58 +08:00
William Cheng
ac3c37095d [C#][httpclient] Add tests for nonPublicApi option (#21996)
* add samples to test nonPublicApi option

* add option to test nonPublicApi

* update test

* update tests
2025-09-19 14:49:26 +08:00
William Cheng
a55525c634 update php samples 2025-09-19 14:28:41 +08:00
Kevin
ec0edf433a Issue 21958 php-slim4 throws exception (#21962)
authenticatorConfig was being overwritten instead of having additional fields added.
Changed the reqex from requiring leading whitespace to having it optional.
2025-09-19 14:25:41 +08:00
ferenc-a
1c950018c8 Fix visibility for enum in C# generator (#21984) 2025-09-18 18:11:52 +08:00
Bruno Coelho
7a5d0d1a71 [kotlin][client] remove old deprecated apis (#21988) 2025-09-18 17:28:42 +08:00
Jason Frey
327599996d [bash] Fix issue where paste command doesn't work on Mac (#21986) 2025-09-18 17:27:51 +08:00
Jason Frey
5bdb691fb6 [bash] Drop old client.sh from petstore sample (#21987)
The bash config is configured to generate with a scriptName of
petstore-cli. As such, it will never generate client.sh and related
files. This seems to be a leftover from before the bash config was
introduced, and is not needed.
2025-09-18 17:27:10 +08:00
William Cheng
fec88b3e88 Migrate tests from AppVeyor to GitHub workflow (#21982)
* migrate tests from appveyor to github workflow

* test with dotnet 7

* test on windows

* set dotnet version

* Revert "set dotnet version"

This reverts commit 87af6a63ad.

* use localhost

* update

* update

* update tets

* update

* remove appveyor
2025-09-17 16:03:02 +08:00
William Cheng
0e1cba6eb6 update commons deps to newer versions (#21980) 2025-09-16 17:40:27 +08:00
William Cheng
45e4fa1633 Add workflow for PowerShell clients (#21979)
* add workflow for powershell client

* update

* fix container

* import, test

* combine

* use localhost

* update tests

* remove powershell tests from appveyor.yml
2025-09-16 15:24:22 +08:00
William Cheng
46de9c8c16 separate workflow to test java with sbt (#21978) 2025-09-16 14:24:58 +08:00
William Cheng
ab6c827098 Mark scala-lagom-server as deprecated (#21977)
* mark scala-lagom-server as deprecated

* update workflow
2025-09-16 13:59:00 +08:00
William Cheng
e68e3e88b3 More dart dio tests, update samples (#21975)
* more dart dio tests, update samples

* update

* update

* more tests

* update

* update
2025-09-16 11:46:52 +08:00
William Cheng
8b01ebb5c2 [dart-dio][timemachine] Bugfix: saving offset_date_serializer instead of local_date_serialize (#21974)
* Bugfix: saving offset_date_serializer instead of local_date_serializer.dart

* New config for dart-dio (timemachine)

* test samples in github workflow

* update workflow, samples

* rename

---------

Co-authored-by: Enric Pou <enricpou@gmail.com>
2025-09-16 10:40:07 +08:00
William Cheng
7dcef20355 update java samples 2025-09-16 10:05:15 +08:00
Simon
6e48cf4247 [BUG][JAVA] RestTemplate uses hardcoded User-Agent Java-SDK #21972 (#21973)
Co-authored-by: Simon Baranov <simon.baranov@zahlungswerk.de>
2025-09-16 10:01:18 +08:00
Jachym Metlicka
6278512122 [kotlin-spring][server] Feat: Allow implementation of arbitrary interface in DTOs (similar to x-implements from java-spring) (#21950)
* add basic implementation and tests

* improve test a bit

* modify kotlin-spring.md

* add x-kotlin-implements also to enum

* update samples & properly define implemented vendor extension

* use enum.getName() instead of hardcoded string as key in vendor extension map

* fix docs

* fix test openapi spec and test

* add samples for x-kotlin-implements

* add samples for x-kotlin-implements to proper output folder

* fix

* revert unwanted changes

* move to correct place

* fix mustache template

* add to samples-kotlin-server.yaml

* reuse 1 open api schema for everything. Add also case where interface extends interface.

* add warn logs when x-kotlin-implements-fields is used without x-kotlin-implements to improve usability

* remove unnecessary generated files

* remove unnecessary generated files

* remove "status" inner enum from Pet as it fails to properly import as Pet.Status in implementations. This is a separate bug - not caused by x-kotlin-implements
2025-09-16 02:13:08 +08:00
Csaba Kozák
5c04b754ab [kotlin-client] update Kotlin and libraries versions (#21866) 2025-09-16 02:01:29 +08:00
William Cheng
b7749712b8 feat: Add Java Dubbo code generator for Apache Dubbo microservices (#21968)
* feat: add Apache Dubbo code generator with multi-registry support

- Add comprehensive Dubbo microservice code generator
- Support Zookeeper and Nacos registries with auto-dependency selection
- Implement version-aware dependency management (Dubbo 3.2 vs 3.3+)
- Generate service interfaces, implementations, and Spring Boot REST controllers
- Include complete Spring Boot application structure with configuration
- Add detailed documentation and usage examples
- Support async operations and generic response wrappers
- Provide flexible configuration options for packages, versions, and features

* feat: Add dubbo sample with CI validation

Adds a new sample generator configuration for dubbo.

The existing GitHub workflow for Java samples is updated to build and test this new sample automatically.

* fix: fix Dubbo protocol extension issue in test environment

- Set registry address to N/A to avoid ZooKeeper dependency
- Change protocol from 'triple' to 'tri' to resolve extension loading error

* various fix to java dubbo server generator

* update doc

* update readme

---------

Co-authored-by: redoom <gyklcy@iCloud.com>
2025-09-16 01:51:12 +08:00
Rodrigo de Almeida - RMA3
c30fb413bb issue 21965 - [REQ] MergedSpecBuilder load servers urls from input specs (#21966)
Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2025-09-16 01:50:32 +08:00
Jean-Marc Le Roux
6b692739e8 [Rust] Add support for native-tls and rustls-tls Cargo features for the reqwest library (#21925)
* feat(rust): add the native-tls (default) and rustls Cargo features for `reqwest`

* refactor(rust): rename the `rustls` Cargo feature to follow the ecosystem naming convention
2025-09-14 17:22:11 +08:00
Christophe Moine
ee4cb9ac22 [jaxrs-spec][quarkus] Feat: Add an option to use "org.jboss.resteasy.reactive.RestResponse" (#21877)
* replace Response by RestResponse

* fix rest response for Async

* update documentation

* Add option "returnJBossResponse"

* Add tests + fixes

* Polish

* Add dependency "io.quarkus.resteasy.reactive:resteasy-reactive" when returnJBossResponse=true

* fix JavaJAXRSSpecServerCodegenTest

* generate samples & docs
2025-09-14 17:11:06 +08:00
GregDThomas
ec28d6261c Fix #21921 by marking required path parameters as @NotNull (#21951) 2025-09-13 17:48:47 +08:00
Leon Linhart
0edcc9d204 Correctly annotate Gradle task in- & outputs and enable stricter plugin validation (#21957)
* Correctly apply Gradle task input & output annotations to accessors

Gradle's task input and output annotations should be applied to the accessors instead of the properties. No adhering to this can cause funky behavior in the generated stubs. Examples of this can be found in the docs: https://docs.gradle.org/current/userguide/implementing_custom_tasks.html

Also adds missing annotations so that validation passes

* Enable strict Gradle plugin validation
2025-09-13 16:49:06 +08:00
MarcoZurich
59eac42b0f Fix "defaultToEmptyContainer" not properly implemented for non-nullable, required Map (#21953)
* Issue 21890: Fixed flag to use for check of required, non-nullable map

* Issue 21890: added test (first draft)

* Issue 21890: Added Test

---------

Co-authored-by: Marco <chorizoparatodos@gmail.com>
2025-09-13 16:47:45 +08:00
William Cheng
5efe16c66b [java] Update rest-assured dependencies to newer versions (#21961)
* update rest-assured dep to newer versions

* update build
2025-09-13 16:32:31 +08:00
Adam Drakeford
8a061acc7c Remove myself from Kotlin technical committee (#21959)
Unfortunately i have not had time to engage in this project in recent years, and as such feel its best for myself and the community if i remove myself from the Kotlin technical committe. 

Thanks for all the great work done by all contributors.
2025-09-12 23:50:09 +08:00
William Cheng
177b94b1b4 Add tests for numeric form data (kotlin - jvm-ktor) (#21952)
* add tests for numeric form data (kotlin)

* remove null check as its done already
2025-09-12 15:28:57 +08:00
Jef LeCompte
58fde20e2c fix: parameter appending for number types (#21947)
* fix: parameter appending for number types

Updated string and number parameter handling to ensure proper conversion to string before appending.

* Update api.mustache
2025-09-12 13:10:40 +08:00
William Cheng
8300794c5e update python samples 2025-09-11 20:56:37 +08:00
Maik Dijkstra
9b692e5ef7 fix(ruby-client): Fix incorrect boolean parsing in OneOf/AnyOf (#21943)
Changes the logic of parsing of OneOf/AnyOf to fix incorrect type coercion
in OneOf/AnyOf contexts. The guard which checks whether typed_data is true-ish
fails for booleans. If the oneOf includes a boolean type and the data is false then
it will correctly parse this value as a boolean. However, the guard class will determine
that false is not true-ish and therefore returns nil. So the result of the type coercion
of false will be nil. This can result in problems when dealing with default true.

For example how a false can turn into a true with defaults:
1. The API returns false
2. The type coercion determines false becomes nil
3. When storing this retrieved record with a default of true for this column the stored value is suddenly true
while the API specifically returned false

This fix removes this guard and will rely on the exception raised to return nil when type coercion fails.
2025-09-11 20:46:06 +08:00
Knut Erik Langdahl
d523903827 fix(kotlin): set isVoid to true for Unit datatypes (#21940) 2025-09-11 20:17:05 +08:00
Artem ILIN
5f647b8477 [python] fixes #21936, api client type checks (#21935) 2025-09-11 00:04:48 +08:00
Pascal Bachor
6825d9ccaa python: feature flag for lazy imports (#21885)
* python: feature flag for lazy imports

* python: update samples

* python: add python-lazyImports to test job

* python: reuse tests in lazyImports sample

* python: avoid using non-imported submodules

* add normalizer option

---------

Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-09-10 17:22:41 +08:00
keepConcentration
0e42edc95b [#21619] fix(python): update pyproject.toml license format with poetry1 fallback (#21931)
* Add support for both string and object license formats in `pyproject.toml` for Python and Python-Pydantic generators. (#21619)

* Generate the samples (#21698)

* Generate the samples (#21698)

* Remove Python-Pydantic-v1 license format tests (#21619)

* Revert license format to string in Python-Pydantic-v1 samples (#21619)
2025-09-10 15:35:10 +08:00
Ruben Hönle
278d7ae4c9 java-client: fix some javadoc comments (#21932)
* java-client: fix some javadoc comments

* update samples
2025-09-10 01:44:36 +08:00
William Cheng
7b3de8dbce [python] fix default value when enum is a reference (#21923)
* fix default value when enum is ref (python)

* update spec
2025-09-09 09:21:09 +08:00
William Cheng
bdfbb32cdd Improve Go client tests (#21919)
* test withXml option

* fix path

* update go code (withXml: true)

* test one more go client
2025-09-08 16:45:46 +08:00
William Cheng
6e089f5f03 Support normalizing anyof/oneof enum constraints to a single enum (#21917)
* Support normalizing anyof/oneof enum constraints to a single enum

* Add SIMPLIFY_ONEOF_ANYOF_ENUM to the documentation

* Process referenced schemas with oneof/enum as well

* Implement referenced enum merging from oneof/anyof

* Implement retaining the enum description as x-enum-desriptions for oneof enum

* Update samples and docs with oneOf enum normalization

* update samples to fix python tests

* fix test file name

* fix incorrect filename

---------

Co-authored-by: Pieter Bos <pieter.bos@nedap.com>
2025-09-07 17:36:02 +08:00
William Cheng
e62908e30e Add tests for withXml option in Go client generator (#21913)
* test withXml option

* fix path
2025-09-06 22:48:32 +08:00
William Cheng
6164836b57 update workflow to use jdk 11 (#21912) 2025-09-06 22:35:54 +08:00
Tim Van Wassenhove
ee40887d47 fix(rust): Add anyOf support to Rust client generator (#21896)
* feat(rust): Add anyOf support to Rust client generator

This commit adds support for anyOf schemas in the Rust client generator
by treating them similarly to oneOf schemas, generating untagged enums
instead of empty structs.

The implementation reuses the existing oneOf logic since Rust's serde
untagged enum will deserialize to the first matching variant, which
aligns well with anyOf semantics where one or more schemas must match.

Fixes the issue where anyOf schemas would generate empty unusable structs.

* test(rust): Add test for anyOf support

This commit adds a test case to verify that anyOf schemas generate
proper untagged enums instead of empty structs in the Rust client
generator.

The test includes:
- A test OpenAPI spec with anyOf schemas
- Unit test that verifies the generated code structure
- Assertions to ensure enums are created instead of empty structs

* Fix anyOf support for Rust generator

- Fixed template closing tag issue that prevented anyOf schemas from generating enums
- Changed {{/composedSchemas.oneOf}} to {{/composedSchemas}} at line 262
- Put #[serde(untagged)] and pub enum on same line for test compatibility
- Fixed TestUtils.linearize() method replacing spaces with literal '\s' string

The Rust generator already converts anyOf to oneOf for processing, but the
template wasn't correctly handling these converted schemas. Now anyOf schemas
generate proper untagged enums, matching the expected behavior for oneOf
schemas without discriminators.

* fix(rust): maintain multi-line formatting for serde attributes in oneOf/anyOf enums

- Keep #[serde(untagged)] on separate line from pub enum for better readability
- Update test assertions to use two separate checks instead of linearize()
- Ensures generated Rust code maintains consistent formatting with existing samples
- Preserves the original multi-line attribute style preferred in Rust ecosystem
2025-09-06 18:46:24 +08:00
William Cheng
1d739f1598 New generator for Scala3 + sttp4 + jsoniter-scala (#21908)
* started impl

* seems to work

* generated docs

* fix class name duplicates on case-insensitive filesystems

* wip

* added script to rebuild all projects

* dropped bash slop

* fixed directory structure

* ok, now it makes sense

* update sttp, serialize query params, fix enums serialization, fix not required files params

* fix compile errors after sttp upgrade, fix missing enum import in operations, fix file response. change serialization from Map to Seq to avoid deleting duplicate keys

* auth support

* fix enums entries, multipart support(partially), header, path and cookie serialization support

* support of option fields

* add samples, update workflow

* add new files

* fix

* remove tab

* remove tab

* update doc

* update header

* update readme

---------

Co-authored-by: Łukasz Biały <lukasz.marcin.bialy@gmail.com>
Co-authored-by: Kamil-Lontkowski <kamillont14@gmail.com>
2025-09-06 13:36:44 +08:00
yzaoui
2a556ff24e Fix missing @Serializable on enums for kotlin/jvm-retrofit2 (#21907)
* Add @Serializable annotation to enum for kotlinx-serialization

* Adjust template, generate samples

* Fix template
2025-09-06 10:17:28 +08:00
Jens Fischer
29a817afdb [kotlin-client] Fix string comparison in discriminator post-processing (#21881)
We encountered occassional build failures with the logic introduced in #21531 due to discriminator properties still being generated in rare cases.
Not sure why it didn't happen consistently, may be related to Gradle caching or parallel builds or whatever.
Since patching these string comparisons, this has no longer occurred.
2025-09-06 09:46:37 +08:00
dependabot[bot]
3029ac62f7 Bump actions/setup-python from 5 to 6 (#21901)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-05 09:53:37 +08:00
dependabot[bot]
27018b0a0d Bump actions/setup-node from 4 to 5 (#21903)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 5.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-05 09:36:39 +08:00
dependabot[bot]
5544e6acc5 Bump actions/setup-go from 5 to 6 (#21902)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5 to 6.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-05 09:16:19 +08:00
Sebastian Rühl
08733aaf25 feat(golang): support for wrapped and xml name (#21899)
* feat(golang): support for wrapped and xml name

* test(golang): add two test cases for wrapped

- with name
- without name

* chore(golang): update samples
2025-09-05 01:14:14 +08:00
William Cheng
3f24026b87 update parser to 2.1.33 2025-09-04 17:41:05 +08:00
dependabot[bot]
27ed27f135 Bump actions/checkout from 4 to 5 (#21889)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-04 15:43:28 +08:00
dependabot[bot]
3cc094485d Bump actions/setup-dotnet from 4.3.1 to 5.0.0 (#21887)
* Bump actions/setup-dotnet from 4.3.1 to 5.0.0

Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.3.1 to 5.0.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.3.1...v5.0.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* trigger c# build workflow

* Revert "trigger c# build workflow"

This reverts commit cb0ea32e98.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-09-04 15:43:11 +08:00
Kevin Liddle
86f107047e [BUG][rust-axum] Fix duplicate route operations when supplying multiple tags on a path with a camelCase param (#21873)
* [BUG][rust-axum] Fix duplicate route operations when supplying multiple tags on a path with a camelCase param

* Update rust-axum sample
2025-09-04 01:36:26 +08:00
Julius
2ebda09b9f feat: add support for minimal update option in maven plugin (#21872) 2025-09-04 01:00:00 +08:00
Mattias Sehlstedt
fde017150e [C#] Fixes array TypeDeclaration parsing order to fix deep aliases (#21600)
* Adjust array TypeDeclaration parsing order to fix deep inline aliases

* Update samples
2025-09-04 00:58:13 +08:00
dsteeley
5daef3e901 fix: Resolve issue21805 rust-server compilation failure with large maximums by handling minimum and maximum using BigInt instead of longValue. (#21875) 2025-09-03 16:45:02 +08:00
William Cheng
6e443f1354 fix: honor required fields in jackson @JsonProperty annotations (#21876)
* fix: honor required fields in jackson @JsonProperty annotations

* add samples

* fix: trigger build

* fix: undo

* update to handle nullable as well

---------

Co-authored-by: Erik Lagerholm <erik.lagerholm@volvocars.com>
2025-09-03 16:41:59 +08:00
Jochen Schalanda
babb3e272b [Java] Add missing Locale to String.format() invocations (#21871)
* [Java] Add missing Locale to String.format() invocations

* chore: ./bin/generate-samples.sh ./bin/configs/*.yaml
2025-09-03 14:52:49 +08:00
Jochen Schalanda
d1df75c61d [Java] Remove unnecessary String.format from jersey2, jersey3, native (#21870) 2025-09-03 14:17:49 +08:00
William Cheng
20d5126b17 disable tests due to too many false alarams (#21865) 2025-09-02 16:21:10 +08:00
fkellner
efd06f5719 Fix bug in ModelUtils.getParentName resulting in wrong inner Models for oneOf-composed schemas (#21799)
* Test Cases for more than two oneOf-Options (both passing, but important to narrow down observed bug)

* fix language-specific tests broken by adding a third fruit to oneOf test

* create reproducer unit test for java client codegen

* fix typo in test yaml

* fix ModelUtils.getParentName returning name of first element in composed schema instead of null when there are multiple elements and it is not clear which one should be parent

* rename test yaml and added tests for clarity

* update samples

* update samples again
2025-09-02 15:26:26 +08:00
Leo Gomes @Amadeus
c854a23682 [protobuf] fix generation of enums with UNSPECIFIED values (#21774) 2025-09-02 12:42:27 +08:00
Yasuhiro SHIMIZU
1c2fd67cc9 fix typo in Kotlin client discriminator samples (#21853)
* fix typo in kotlin client samples

allOff -> allOf

* fix gradlew permission

* update samples
2025-09-01 21:28:04 +08:00
Eduardo Menges Mattje
27d3c6f326 [3.1] Fixed lack of check for booleanSchemaValue (#21742)
* [3.1] Fixed lack of check for ´booleanSchemaValue`

* [3.1] Fixed `isMapSchema`
2025-09-01 14:06:27 +08:00
William Cheng
eae5088f7c Remove travis ci setting from ci pipeline (#21834) 2025-09-01 13:44:23 +08:00
William Cheng
90d6af2bab Refactor Rust github workflow for clients and servers (#21851)
* add workflow to test rust clients

* update to use localhost

* rename rust server workflow
2025-09-01 11:43:25 +08:00
CatBraaain
d8593ef6d7 style: add a space before comment text in .gitignore (#21844) 2025-08-31 22:35:54 +08:00
Bruno Coelho
9148db26fc [Swift6][client]Make Swift 6 generator stable (#21846)
* Make Swift 6 generator stable

* Make Swift 6 generator stable
2025-08-31 10:08:17 +08:00
Yasuhiro SHIMIZU
2cdd9ae687 Kotlin Multiplatform polymorphism with custom discriminator support (#21772)
* Enable descriminator for kotlin-client multiplatform

* update template

* add sample

* update samples-kotlin-client workflow

* add missing JsonClassDiscriminator import

* fix gradlew permission

* update sample

* fix sample

* re-generate sample
2025-08-31 02:22:12 +08:00
William Cheng
443fd76529 Add new workflow to test dart-dio samples (#21838)
* add new workflow to test dart

* fix

* fix

* fix versions

* newer version

* newer version

* newer version

* newer version

* newer version

* setup flutter

* update

* update

* fix path

* trigger build failure

* Revert "trigger build failure"

This reverts commit 36b688dfcb.
2025-08-30 21:33:54 +08:00
Thomas Ville
9c1b680fdf [rust] enable useAsyncFileStream only for files in the body (#21839)
Co-authored-by: Thomas Ville <thomas.ville@aerys.in>
2025-08-29 21:02:45 +08:00
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
florentausha
e4c9eb36e9 fix PHP: Fixed typing of offsetGet/offsetSet (#21583) 2025-08-28 15:46:44 +08:00
William Cheng
ac5478e909 update php symfony samples 2025-08-28 14:06:54 +08:00
Elias Kotlyar
992e387e27 Update ApiPass.mustache (#21808)
-> added void type
2025-08-28 14:05:02 +08:00
William Cheng
e903a89ccf Add PHP server syntax check worfklow (#21830)
* add php server syntax check worfklow

* update

* fix

* trigger build failure

* Revert "trigger build failure"

This reverts commit cd8fa3000d.

* add more folders

* comment
2025-08-28 14:04:41 +08:00
William Cheng
ffaeca3204 update 2025-08-28 13:35:52 +08:00
Linh Tran Tuan
7c4d7277b4 Separate Basic Authorization into new template file (#21828) 2025-08-28 13:00:06 +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
Daniel Genchev
8ce639ddae [kotlin-client][kotlin-spring] Fix duplicate discriminator serialization with Jackson used as serialization library (#21734)
* [kotlin-client][kotlin-spring] Fix duplicate discriminator serialization with Jackson used as serialization library

* Update samples
2025-08-27 17:37:38 +08: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
Yannick Pfaff
e1447bc3dc docs(spring): fix discriminator property defaults (#21767) 2025-08-27 16:15:22 +08:00
William Cheng
c134a8adbf Add skipCopyWith option for dart-dio (#21816)
* add skipCopyWith option for dart-dio

* update dart tests
2025-08-27 13:51:46 +08: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
William Cheng
6215e6e005 update swagger parser to 2.1.32 (#21818) 2025-08-26 18:31:31 +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
Oliver Kuntze
cd7fe341d3 Fix validation constraints for parameters in request body of form request are not generated (at least with Spring Boot generator) (#21749)
* fix(Spring Boot): adds validation to body params of forms requests

* fix(Spring Boot): adds test for validation of body params of forms requests

* fix(Spring Boot): adds samples
2025-08-23 15:58:46 +08:00
William Cheng
66c2a287cc update doc to reference 7.14.0 (#21795) 2025-08-22 19:25:37 +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
William Cheng
cc3d6968fa after docker release to trigger on tags 2025-08-22 18:17:17 +08:00
William Cheng
2c816f89cb v7.15.0 release (#21792)
* v7.15.0 release

* fix gradle test workflow
2025-08-22 17:43:01 +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
agilis allievo
8ee69bfe74 Fix MergedSpecBuilder not passing auth (#21782) 2025-08-22 15:21:34 +08:00
William Cheng
8d06496cce update swagger parser to newer version (#21789) 2025-08-22 15:05:17 +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
dependabot[bot]
bae8082b9a Bump actions/checkout from 3 to 5 (#21785)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-22 14:29:00 +08:00
dependabot[bot]
7fba143c5e Bump actions/setup-java from 3 to 5 (#21786)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 5.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3...v5)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-22 14:28:48 +08:00
dependabot[bot]
001bc833db Bump actions/cache from 3 to 4 (#21787)
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-22 14:28:35 +08:00
William Cheng
07b764e0a2 Clean up docker release workflow (#21788)
* clean up docker release workflow

* undo

* comment out docker in travis.yml
2025-08-22 14:27:06 +08:00
William Cheng
11a0075c46 Add workflow for docker release (#21780)
* add workflow for docker release

* fix

* use and

* fx

* build

* fix dir

* debug

* update

* publish cli images

* fix commands

* fix env

* fix operator
2025-08-21 19:12:08 +08:00
William Cheng
9264669a17 Add maven release workflow (#21779)
* add maven release workflow

* minor updates
2025-08-21 15:59:21 +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
Mattias Sehlstedt
490de02971 Fix so that the oneOfAnyOf normalizer retains the read/write only attribute (#21737) 2025-08-18 00:36:14 +08: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
Mattias Sehlstedt
6c31cbbf47 [Typescript] Fix warning logs for additional properties that have not been set (#21630)
* Fix warning logs for additional properties that have not been set

* Readd warning log details to clarify what option that the log refers to
2025-08-16 13:15:25 +08:00
William Cheng
fe5305f2cf add tests for uuid in oneOf/anyOf (java okhttp-gson) (#21763) 2025-08-16 12:23:04 +08:00
Ruben Hönle
030be5d3c7 fix(java): handle validation of UUIDs (#21747)
relates to OpenAPITools/openapi-generator#16868
2025-08-16 12:01:55 +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
Pim Merks
9cd04e71fa Add TrimLineBreaks and TrimWhitespace lambdas to default codegen (#21759) 2025-08-16 11:36:35 +08:00
David Gamero
d7aee8a0d6 pin windows gradle version (#21761)
Co-authored-by: David Gamero <davidgamero@microsoft.com>
2025-08-16 11:32:50 +08:00
Kuzma
e1aed293cf Update form-data to the latest version (#21748) 2025-08-14 15:55:56 +02:00
William Cheng
1870fbb7cf Fix github workflow (linux.yaml) (#21743)
* remove with from workflow

* test with gradle 8.x
2025-08-14 13:19:22 +08:00
tomcra
9cb04c1b9d #21582 [BUG][dart-dio] Bug generating inline enums with common names (#21591)
* #21582 [BUG][dart-dio] Bug generating inline enums with common names

* #21582 [BUG][dart-dio] Bug generating inline enums with common names added petstore test

* #21582 [BUG][dart-dio] Bug generating inline enums with common names added generated samples to commit.

* #21582 [BUG][dart-dio] Bug generating inline enums with common names removed bug test files that were duplicates

* #21582 [BUG][dart-dio] Bug generating inline enums with common names. Added generated files that were missed.

* #21582 [BUG][dart-dio] Bug generating inline enums with common names. Added generated files that were missed.

* #21582 [BUG][dart-dio] Bug generating inline enums with common names. Added generated files that where updated as a result of changes in master.
2025-08-14 12:24:34 +08:00
dependabot[bot]
aacbdf88c0 Bump actions/checkout from 4 to 5 (#21728)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-13 01:48:03 +08: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
Erwin de Haan
77e3326a36 Make all C# flavors support x-zero-based-enum and add tables to documentation (#21463)
* Make all C# flavors support x-zero-based-enum and add table to documentation

* Add the documentation stuff properly
2025-08-12 11:13:16 +08:00
Juuso Tuononen
36cea14781 [dart][dart-dio] Support OpenAPI 3.1 composed schemas (#20475) 2025-08-12 11:12:04 +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
Mattias Sehlstedt
6ff9e67bad Specify Gradle version (#21720) 2025-08-09 23:16:52 +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
​Andrzej Ressel
0f231d9494 Fix rust-axum homepage toml quotes (#21716) 2025-08-08 13:29:54 +08:00
Laha Luhem
517bbeb9a9 Feat: #21665 [dart][dart-dio] CopyWith for json_serializable (#21667)
* Add `@CopyWith()` annotation to model class mustache

* Add copyWith deps to pubspec mustache template

* generate examples

* add import for copyWith
2025-08-07 22:45:13 +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
Rens Groothuijsen
603dbfd7f9 [rust] Extend oneOf array enum names with inner type (#21599) 2025-08-07 09:38:07 +08:00
William Cheng
e2652f1c62 update C# samples 2025-08-07 09:22:56 +08:00
Arcueid D`athemon
c077d005d5 [REQ] [CSHARP] [UNITYWEBREQUEST] Support Stream for unityWebRequest library (#21704)
* Update ApiClient.mustache

* Update ApiClient.mustache
2025-08-07 09:20:11 +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
Christopher Gual
7e974272be [bug][kotlin-spring] fix allowableValues quotes in documentation anno… (#21700)
* [bug][kotlin-spring] fix allowableValues quotes in documentation annotations for path parameters

* Remove unused imports in KotlinSpringServerCodegenTest

* Fix Swagger1 annotation

* Streamline Swagger1 annotation

* Remove extra line break

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-08-06 15:17:36 +08:00
dependabot[bot]
bb6acc132a Bump actions/download-artifact from 4 to 5 (#21701)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-06 13:37:40 +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
​Andrzej Ressel
a7af767e34 [Rust] Replace more HeaderValue::from_str with compile time HeaderValue::from_static (#21689) 2025-08-05 11:21:21 +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
​Andrzej Ressel
9f2c92079e Fix double @ in README (#21688) 2025-08-04 00:45:11 +08:00
Julien Debon
81be9cd409 OCaml: derive eq (#21679) 2025-08-02 12:32:44 +08:00
devhl-labs
8de694d4bb windows latest (#21682) 2025-08-02 12:19:17 +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
Ezra Singh
f846f307ca Added symlink to generator cli in Docker image (#15559)
Co-authored-by: Ezra Singh <ezra@liontech.nyc>
2025-08-01 16:35:38 +08:00
Henk van de Berg
faa3a0e4c1 Removed try/catch to enable framework error handling to pick up the error (#21523) 2025-08-01 16:15:05 +08:00
dsteeley
97aa4a8587 Fixup dependency on forked serde_xml (#21664) 2025-08-01 16:06:30 +08:00
dependabot[bot]
5ba0650659 Bump multer and @nestjs/platform-express (#21673)
Bumps [multer](https://github.com/expressjs/multer) to 2.0.2 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.1 to 2.0.2
- [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.1...v2.0.2)

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

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-01 16:05:23 +08:00
Ary Obenholzner
fcc83db0f8 NestJS server codegen (#21494)
* setup basic codegen for nestjs server

* set up generated file structure

* adapted moustache files

* fixed imports

* adapted templates

* added module bootstrap

* added model generation

* fixed error with generic type

* added README

* added usage clarification to README, introduced module index.ts

* Update modules/openapi-generator/src/main/resources/typescript-nestjs-server/api.module.mustache

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

* cleaned up package.mustache, added parameters for versions

* cleaned up unneeded boilerplate templates

* fixed indentations from templates

* implemented useSingleRequestParameter

* fixed parameter handling

* added samples with tests

* added docs

* fixed samples

* corrected docs

* updated docs after merge of master

* fixed samples build

* fixed workflow

---------

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2025-07-31 14:37:44 +02:00
William Cheng
3fbf52f395 remove unused github workflow 2025-07-31 16:52:02 +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
hellopabu
7af84cad94 [docs][website] add am gmbh as user to users (#21660)
* [docs][website] add am gmbh logo

* [docs][website] add am gmbh to users

* [docs][website] add transparent am gmbh logo
2025-07-30 17:02:09 +08: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
d29a4bea25 [Bug][typescript-fetch] Typescript fetch one of addtl props imports (#21656)
* Add unit tests for bug in imports for oneOf schemas with additional properties set to true #21587

* Fix bug in filtering primitive, built-in types from model imports in TypeScriptFetchClientCodegen

* Add YAML OAS file for #21587

* Revert change to issue_21259.yaml

* Remove comment from issue_21259.yaml

* Filter out arrays from oneOfModels along with primitive types

* Update issue_21587 unit test to catch the Array<Model> case

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-30 09:02:40 +02:00
William Cheng
657f5fb004 Test go client with aws signature in github workflow (#21657)
* test go client with aws signature in github workflow

* fix path

* fix path

* test with windows

* omit version
2025-07-30 14:38:58 +08:00
dennismouwen-eye
fbb15fd324 Update AWS Go SDK from v1 to v2 in Go client templates (#3) (#21653)
* Update AWS Go SDK from v1 to v2 in Go client templates (#3)

* Initial plan

* Update AWS Go SDK from v1 to v2 in Go client templates

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Final validation: AWS SDK v2 integration working correctly

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Fix AWS v4 signature implementation: retrieve credentials properly from provider

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Fix AWS v4 signature payload hash: properly compute SHA-256 hash for request body

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Implement proper payload hashing

* Revert go.sum file to original state as requested

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Revert go.mod and rename import alias from v4 back to awsv4

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Revert go.mod file to original state removing all changes

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Rename credentials import to awscredentials alias as requested

Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>

* Fix spacing

* Fix credentials and imports

* Update aws sdk to latest version

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: dennismouwen-eye <107839749+dennismouwen-eye@users.noreply.github.com>
Co-authored-by: Dennis Mouwen <dennis.mouwen@eye.security>

* Update indenting

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-07-30 13:55:40 +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
Matt Pollock
815a7324e3 [R] add null checks to nullable api parameters (#21629)
* [R] check optional parametrs for null before evaluating param conditions

* update petstore

* handle isNullable when checking api parameters

* update samples

* allow not-nullable parameters to be missing

* update samples

* samples
2025-07-29 13:34:18 +08:00
William Cheng
1a178ae804 add @dsteeley to Rust technical committee (#21651) 2025-07-29 11:42:46 +08:00
William Cheng
2f70572219 update samples 2025-07-28 20:24:46 +08:00
P.H. Knot
86052aa989 fix: Use correct constructor for ApiException in PSR-18 PHP library (#21631)
* fix: Use correct constructor for ApiException

* chore: Generate samples

* fix: Missing $

* fix: Remove extraneous line
2025-07-28 20:19:59 +08:00
Mattias Sehlstedt
7c4ada33c4 [Java] [SpringClient] Introduce setting for sealed oneOf interfaces for Spring clients (#21586)
* Add setting for generating the oneOf interfaces as sealed interfaces

* Generate samples

* Add internal java17 additionalProperty setting

* Move samples to highlight that they do not use the petstore

* Align documentation

* Update samples

* Align documentation

* Update mustache files and samples to change gradle settings to java17
2025-07-28 20:03:54 +08:00
William Cheng
3453c7ba10 Test PHP clients in Github workflow (#21643)
* test php clients in github workflow

* trigger build failure

* update workflow

* Revert "trigger build failure"

This reverts commit 572a69f6bc.

* update tests

* update tests

* update test

* fix tests

* fix async test

* update tests
2025-07-28 18:33:52 +08:00
Christopher Gual
a60d3d4f81 [Bug][java-spring] Use Flux only for multipart-form-data file parameters with multiple file uploads (#21561)
* Use Flux only for multipart-form-data file parameters with multiple files

* Update samples

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-28 18:28:53 +08:00
Simon
d69714f197 [php] Fix file uploads by backporting #21458 (#21632)
* [php] Backport #21458 to php client

Fixes #21485

Credits to @jozefbriss

* [php] Fix deprecation warning when running integration tests

OpenAPI\Client\FakeHttpClient::setResponse(): Implicitly marking parameter $response as nullable is deprecated, the explicit nullable type must be used instead

---------

Co-authored-by: simonhammes <simonhammes@users.noreply.github.com>
2025-07-28 16:58:03 +08:00
hirish
7d3913f1dd Add verbose, keepalive, keepidle, keepintvl to c-libcurl (#21613)
* Add keepalive to c-libcurl

* Fix manual tests on client/petstore/c

* Update Readme of c/libcurl

* better curlConfig handling on c-libcurl
2025-07-28 16:43:34 +08:00
Iurii Ignatko
f5da0ea4a1 Remove [this-escape] warnings in generated ApiClient classes (#21620) 2025-07-28 16:43:14 +08:00
Tobias Guttenberger
1c2ef3356d Bugfix for remote specs with params (#21634)
* [Bugfix][Maven-Plugin] Bugfix for remote input specs with parameters

If the inputSpec was a web address that contained parameters, code generation would fail, because the filepath would contain illegal characters, since the code inside the if-block would be skipped. A side effect of this was, that in the log and in the filename in linux the parameters would be leaked, which could potentially sensitive information like Gitlab Access Tokens

* [Test][Gradle Plugin] Update GenerateTaskDslTest.kt

Extended the Test for testing remote inputSpecs with urlParams, a case that caused problems in the maven plugin.
2025-07-28 16:40:20 +08:00
Mattias Sehlstedt
edbacaa3c7 Add suggestion to PR template to encourage contributors to use a GitHub link their PR to issue (#21624) 2025-07-28 16:02:05 +08:00
klahap
f3944b152d Add treatWarningsAsErrors option to ValidateTask in gradle plugin (#21626) 2025-07-28 16:01:31 +08:00
Stefan Wurzinger
0e97e19bbc kotlin-spring: fix exception thrown in enum.forValue (#21622)
* kotlin-spring: fix exception thrown in enum.forValue

* update samples
2025-07-28 16:01:03 +08:00
Christopher Gual
ee5a12a29d [test][typescript-fetch] Add / improve unit tests for current typescript-fetch oneOf logic #21057 #21464 (#21638)
* Add unit tests for current oneOf logic #21057 #21464

* Remove comment from issue_21259.yaml

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-28 09:28:07 +02:00
devhl-labs
64e9b372c0 [csharp] Handle nested maps recursively (#21636)
* handle nested maps recurssively

* improve git diff readability
2025-07-28 11:28:27 +08:00
devhl-labs
dfc66e34aa [csharp][generichost] Verify net9 samples up to date (#21637)
* verify net9 samples up to date

* verify net9 samples up to date

* remove erroneous files

* use different logic to delete directories
2025-07-28 10:56:24 +08:00
Ilya Nemtsev
ef22749345 [Java][native] Add ability to add header to specific calls (#21495)
* add bearer capability

* avoid using shared state

* revert needless change

* Revert authentication changes from unused root Java/api.mustache template

* applied change to correct lib type

* updated test files

* made security method more generic for flexibility

* regenerated samples

* further cleanup

* code style

* regenerated samples

* made header assignment more explicit, per each method

* fixed extra comma

* fixed commas, regenerated samples

* moved header population to utility method

* moved static class inside main class

* regenerated samples

* added comments, fixed indentation

* regenerated samples

---------

Co-authored-by: Ilya Nemtsev <ilyanemtsev@192.168.1.34>
2025-07-27 11:18:39 +08:00
DavidGrath
f1a093537d [typescript-fetch] oneOf models now consider primitives when converting. Issue #21259 (#21464)
* [typescript-fetch] number, string, and Date now considered in oneOf models. Issue #21259

* Generated samples
2025-07-24 08:05:06 +02:00
Linh Tran Tuan
777b7eeea0 [Rust-Axum] Basic Authorization - Basic Analytic - XSS Sanitize (#21578)
* Update

* Update

* Update

* Update

* Update

* Update
2025-07-22 17:43:46 +08:00
William Cheng
0b0d534d0d use cpp oatapp test spec (#21601) 2025-07-21 18:23:47 +08:00
Christopher Gual
bfb69388aa [Bug][kotlin-spring] add a Spring type converter for enum values #21564 (#21579)
* [kotlin-spring] add a Spring type converter for enum values #21564

* [kotlin-spring] simplify unit test for inner enum converter

* update samples

* code review feedback; move containsEnums to ModelUtils

* code review feedback; provide comment for generated EnumConverterConfiguration.kt

* update samples

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-21 18:22:32 +08:00
Christopher Gual
31089c0e49 [Java-Spring] add comment to EnumConverterConfiguration mustache file (#21598)
* [java-spring] provide a clarifying comment for the generated EnumConverterConfiguration class

* update samples

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-21 18:21:44 +08:00
Kraust
20ed1ee3cc Fixes to cpp-oatpp-server generator. (#21595) 2025-07-21 18:08:44 +08:00
Mikko Maunu
90001d4fac Conditional import of AtomicInteger added to delegate template. fix #21566 (#21597) 2025-07-21 17:27:33 +08:00
William Cheng
b7fb3b2107 update go version, oauth2 dep (#21594) 2025-07-19 22:10:53 +08:00
James Shaw
7ca3fc3115 Fix response model generation with ParseOptions.resolveResponses=true (#21568)
* set resolveResponses=true

needed by swagger-parser>=2.1.23, see https://github.com/swagger-api/swagger-parser/pull/2127

* update samples

---------

Co-authored-by: James Shaw <james.shaw@masabi.com>
2025-07-19 21:37:11 +08:00
Ilia
f632ab7977 [dart-dio] Fix compile error in enum properties with "default" values (#20495) (#21355)
* [dart-dio] Fix compile error in enum properties with "default" values(#20495)

* Add a test schema with enum properties
2025-07-17 13:11:39 +08:00
William Cheng
0f305a5958 update reactor netty to newer version (#21574) 2025-07-17 13:09:03 +08:00
Rym Bouabid
4372659a0b Add 'isFormStyle', 'isSpaceDelimited', and 'isPipeDelimited' flags to CodegenParameter (#21240) 2025-07-17 01:53:21 +08:00
Mikko Maunu
d82ca75cc3 Type check of array element only when array is not empty. fix #21276 (#21571) 2025-07-17 01:30:31 +08:00
Mikko Maunu
faf6924f63 Regular comment instead of document comment before package declaration. fix #21496 (#21572) 2025-07-17 01:29:18 +08:00
andreas-umbricht
ad53684e11 Fixed primitive type check for array of array (#21500) 2025-07-16 16:20:31 +08:00
JacobOJ
63c56f00b7 [java][Microprofile] add config options to disable usage of ApiExceptionMapper (#20762)
* [java][Microprofile] add config options to disable usage of ApiExceptionMapper

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>

---------

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2025-07-16 16:14:23 +08:00
Pascal Bachor
c4a7c14c8f python: Reinstate lazy imports (#21486)
* python: reinstate lazy imports

* python: Update samples

---------

Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2025-07-16 15:53:38 +08:00
William Cheng
ee77b7f4f0 update copyright, minor code formatting change (#21569) 2025-07-16 15:48:39 +08:00
Diego Casella
7f2ee8520e Generators "scala-sttp" and "scala-sttp4" produce valid code when using APIKeyQuery, APIKeyHeader and APIKeyCookie #13474 (#21551)
* fix: using APIKeyQuery and APIKeyHeader generates invalid code (#13474)

* fix: include test

* fix: also fix auth generation for sttp4

* fix: maintain prev whitespaces & update generated APIs
2025-07-16 15:41:01 +08:00
Kraust
8862b960f8 Add cpp-oatpp-server generator (alpha) (#21547)
* Oat++ Server Generator (C++)

* Fixed for support for newest OpenAPI version.

* ALPHA not STABLE.

* Fixed for support for newest OpenAPI version.

* Added github workflow & changed to OA3 Petstore.

* Good catch on adding the Workflow.

* Might help to update the samples.

* Set C++ Standard the CMake way.

* Would be easier if there was a .pc file.

* oatpp.lib.

* Add ws2.

* This probably doesn't work, need to take a time out.
2025-07-16 15:32:28 +08:00
jase
64ab13a790 feat(typescript-angular): add Angular 20 support (#21563)
* feat(typescript-angular): add Angular 20 support

* chore: remove unused .openapi-generator-ignore file
2025-07-15 11:44:12 +02:00
Jonas Reichert
f9098d5a89 [swift] [urlsession] Fixes crash for uploads with content-type "image/" (#21544)
* Fix image upload for content-type image

* update samples

* add test case in spec and update samples

* update bitrise stack so we get xcpretty 0.4.1

* Revert "add test case in spec and update samples"

This reverts commit 92202dd850.
2025-07-15 16:25:34 +08:00
daniel
ca8c6d2f5d Add Null-check and return if null (#21556) 2025-07-15 16:06:00 +08:00
David Gamero
0995e5935c [typescript] COPY: Add optional erasable syntax configuration to Typescript generator. (#21560)
* Add optional erasable syntax configuration.

* Changes from generation clean-up.

---------

Co-authored-by: Brendan Burns <5751682+brendandburns@users.noreply.github.com>
2025-07-15 09:25:09 +02:00
Nico Kraetschmer
473343ff94 [Typescript Fetch] Fix missing closing bracket (#21549) 2025-07-14 15:41:50 +02:00
William Cheng
d63459c051 update common langs dep to newer version (#21552) 2025-07-14 17:11:11 +08:00
donilg
7a6be5a3e6 [scala][http4s] fix codegen for using reserved words in openapi (#21518) 2025-07-12 22:18:55 +08:00
Adrian Hjertstedt
65cb95bef0 Revert "[typescript-fetch] to fix incorrect parsing with additional properties (#20923)" (#21542)
This reverts commit 0becb3feb7.

Co-authored-by: Adrian Hjertstedt <ahjertstedt@ldms.com>
2025-07-10 18:41:29 +02:00
Florian Brombauer
78691cb11c Followup fix for importFileExtension config for typescript-axios (#21541) 2025-07-10 17:16:23 +02:00
Christopher Gual
81e135e038 [req] Allow models and apis list properties to span multi-lines and i… (#21536)
* [req] Allow models and apis list properties to span multi-lines and include white space (#19628)

* Add comment for DefaultGenerator.getPropertyAsSet

* Fix some variable names in DefaultGeneratorTest.testGenerateMultiLinePropertiesIssue19628

---------

Co-authored-by: Chris Gual <cgual@omnidian.com>
2025-07-10 16:41:05 +08:00
Mattias Sehlstedt
c6b51ff6fc DefaultCodegenTest use same test engine for all tests (#21532)
* Changes so that the tests use one test engine (junit) rather than switching between two (junit and testng)

* Update outdated samples

* Correct remaining missed assertEquals clauses (expected - actual misplaced)
2025-07-10 16:40:47 +08:00
Lukáš Vasek
117be2ca4c 1385 Generate constants for path in spring boot @RequestMapping (#19782) 2025-07-09 16:26:52 +08:00
William Cheng
1b352c2d00 update samples 2025-07-09 10:45:51 +08:00
Daniel García
991883636f Fix typo in cli title (#21534) 2025-07-09 10:37:07 +08:00
Leon Linhart
3ef45f1b4d Discard mapped dmodels with matching explicit discriminator mappings (#20939) 2025-07-08 11:18:13 +08:00
William Cheng
7e439fd0bd update chi to newer version (#21528) 2025-07-08 11:00:10 +08:00
Mattias Sehlstedt
63df7ca574 Add samples for when using the useSealed setting for Spring (#21515)
* Add samples for when using the useSealed setting for Spring

* Add the new sample generation to the workflow
2025-07-08 10:27:53 +08:00
Daniel García
98b315c137 Qualify rust trait template comments (#21527) 2025-07-08 10:26:22 +08:00
William Cheng
a809c187b4 [JavaSpring] Fix when openapi spec file has array of files (#21524)
* [JavaSpring] Fix when openapi spec file has array of files

The isArray is not checked for non-reactive isFile condition. This is remediated.

* update samples

---------

Co-authored-by: Siddharth Wagle <SidWagz@users.noreply.github.com>
2025-07-07 17:45:22 +08:00
Pascal Bachor
d966f1234d Bump jmustache 1.15 -> 1.16 (#21352)
* Bump jmustache

* adjust templates to updated jmustache semantics

---------

Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2025-07-07 16:59:08 +08:00
William Dutton
6fdb632fb9 fix: #21345 Java Native Client, handle Byte[] and File response types correctly (#21346) 2025-07-04 00:34:08 +08:00
William Cheng
c7542dea3e Add SerpApi to bronze sponsor list (#21517)
* add serapi to bronze sponsor list

* update

* update
2025-07-04 00:29:13 +08:00
William Cheng
66dfad2b09 use dart petstore test spec (#21516) 2025-07-04 00:05:15 +08:00
staticdev
9e5e4b1fd4 fix(python): Change template default license to Unlicense (#21514) 2025-07-03 21:01:29 +08:00
dsteeley
2af194b014 [rust-server] Update to hyper1 in rust-server generator (#21422)
* Add rust-server-deprecated generator in preparation for hyper1 upgrade to rust-server generator

* [Rust Server] Fix spacing in `Cargo.mustache` (#17876)

* [Rust Server] Update dependency versions in `Cargo.mustache` (#17876)

* [Rust Server] Update templates so generated client and server compile (#17876)

* [Rust Server] Get `server` example to compile (#17876)

* [Rust Server] Update `client` example to compile (#17876)

* [Rust Server] Update `bin/cli.rs` to compile (#17876)

* Revert changes to use typed auth in rust-server. Run sample generation.

* Hyper1 fixup compilation errors in all examples

* Add tests to all examples, clippy, tests, cli-bin, run examples
* Use headers Auth structs
* Fixup various clippy lints
* Move more Service impl to use BoxBody
* Reduce generic restriction on some Service impl where possible

* Appease clippy lints in rust 1.88

---------

Co-authored-by: Azriel Hoh <azriel@healthpoint.co.nz>
2025-07-03 01:55:33 +08:00
Samuel Gulliksson
65773a9024 [JavaSpring] Allow configuring generic ResponseEntity for Spring generator. (#21387)
* Allow configuring generic ResponseEntity for Spring generator.

* Re-run documentation update script.
2025-07-02 18:16:57 +08:00
Jochen Schalanda
311233d804 [Java][MicroProfile] Support additionalProperties with Jackson (#21451)
Refs #20853
Refs #20947
2025-07-02 15:52:58 +08:00
Lukáš Černý
b444de2b5c php-nextgen - Fix flatten() to support arrays of files (#21458)
* php-nextgen - Fix flatten() to support arrays of files in multipart/form-data

Previously, FormDataProcessor::flatten() unconditionally passed all values through ObjectSerializer::toString(),
which caused an error when flattening arrays containing file resources (e.g. for OpenAPI
multipart/form-data definitions with `type: array`, `items: type: string, format: binary`).

This change adds a check for is_resource() to preserve stream handles without serialization,
ensuring correct behavior when uploading multiple files in a single request.

* php-nextgen - Fix flatten() to support arrays of files in multipart/form-data - samples
2025-07-02 15:46:42 +08:00
William Cheng
d0327b2683 add tests for scala http4s server: (#21507) 2025-07-02 15:45:58 +08:00
donilg
af6ab0ed0e [scala][http4s] fix codegen for using reserved words in openapi (#21490) 2025-07-02 15:29:33 +08:00
Mattias Sehlstedt
050dcae3ab Move the singleRequestParameter template into a separate file (#21489)
* Move the singleRequestParameter template into a separate file

* Update formatting of non-singleRequestParameter webclient and restclient samples
2025-07-02 15:18:52 +08:00
William Cheng
e948355127 update Dart samples 2025-07-01 20:52:55 +08:00
Matthew Nitschke
7c57c55194 [dart-dio] Fix json_serializable response for type:string format:binary (#21379)
* fixed inconsistencies with the dart-dio json_serializable string binary response types

* update deserialize template to handle responseFile

* regenerate samples

* only convert return_type to Uint8List

* remove unused imports from previous changes

* fixed issues where import wouldn't get included

* specific unit test for binary response

* reverted changes to nested generators

* removed 2 additional php modifications

* regen samples
2025-07-01 20:39:26 +08:00
Bruno Coelho
a5f638fefd Revert "[kotlin-client] Add support for integer enums in serialization for kotlin-client (#21248)" (#21491)
This reverts commit 0aaeb45dbe.
2025-06-29 18:40:08 +01:00
DavidGrath
0e67c3a5ad [typescript] Utility types now considered when generating schemas (Issue #21317) (#21414)
* Added failing test to fix Record renaming issue

* Typescript utility types now taken into account when generating. Addresses #21317

* Ran generation script

* Remove print statements

* Removed TS ANTLR. Added Utility Types Sample. Pending Regeneration

* Generated samples for utility types

* Samples fix

* Removed TypeScript utility type samples. Other reviews applied

* Updated samples

* meta-codegen
2025-06-29 13:04:22 +02:00
Daniel Jibouleau
43fa1b736a Markdown docs : No lowercase on anchors in README file (#21442)
Co-authored-by: Daniel Jibouleau <daniel.jibouleau@aina.ai>
2025-06-29 17:48:46 +08:00
Jorren Hendriks
304b3cbcaa [Java][Native] Fix POJOs with additionalProperties incorrectly extending HashMap (#21367)
* [Java][Native] Fix POJO with additionalProperties to not extend HashMap

* [Java][Native] Update samples to remove HashMap extension
2025-06-29 17:46:37 +08:00
CG
d7a74849f2 fix: fix Boolean type mismatch for kotlin-spring generator (#21481) 2025-06-29 16:52:32 +08:00
William Cheng
c0dc9c63d0 update swagger parser to newer version (#21484) 2025-06-29 16:11:00 +08:00
Steven Crake
03effd7d05 Replace periods with underscores in Rust model names (#21480)
Fix issue where period-delimited model names (e.g. microsoft.graph.fido2AuthenticationMethod)
were being converted to unwieldy names with "Period" substitutions. Now periods are replaced
with underscores like hyphens, resulting in cleaner and more idiomatic Rust identifiers.

Fixes #15254
2025-06-29 15:52:55 +08:00
Gregory Merlet
d11d008e71 Fix typescript-fetch missing imports for oneof field with discriminator (#21477)
* fix: add support for discriminator in oneOf schemas and update model imports

* chore: generate samples

* fix: enhance model imports for oneOf arrays in mustache templates

* fix: correct import formatting in mustache templates and TypeScript files
2025-06-27 15:26:30 +02:00
Beppe Catanese
b6b71cd4da [Typescript]: add deprecated tags (#21436)
* Add deprecation markers

* Move inputSpec (avoid sharing with other generators)

* Generate samples

* Refactor unit tests

* Add test helper method

* Revert "Add test helper method"

This reverts commit d3935e87d9.

* Assert number of expected @deprecated
2025-06-27 14:45:47 +02:00
Rory Schadler
6b5fd6e622 fix(python): skip license if not provided (#21471)
* fix: skip license if not provided

* chore: formatting diff for JavaTimeFormatter.java, Pair.java
2025-06-27 00:47:50 +08:00
William Cheng
c010c89915 update samples 2025-06-27 00:39:13 +08:00
DavidGrath
b05604dab7 Restricted Java oneOf imports to Jackson only when needed (#21404) (#21405)
* Fixed issue #21404 - Restricted Java oneOf imports to Jackson when needed

* Fix TODOs
2025-06-26 17:12:37 +08:00
Ron Reynolds
cfe476f32d immutable Pair, better performant HttpBearerAuth, consistent code-style (#20743)
* make Pair immutable and in google-code-style

* apply google-code-style to JavaTimeFormatter (to make it consistent with most other auto-generated java)

* move upperCaseBearer to ctor (scheme is final and private; only needs to be fixed once); also replaced Optional with ternary (perf and cleaner code)

* apply google-code-style to Authentication to make it consistent with rest of auth code

* fresh samples
2025-06-26 17:10:36 +08:00
Miguel Teixeira
d911a71be9 [BUG][Kotlin] fix: kotlin code generator should sanitize enum values according to convention (#21459)
* fix kotlin code generator should sanitize enum values according to convention

* update samples

* Revert "update samples"

This reverts commit 51a55bcdfe.
2025-06-25 16:43:31 +01:00
William Cheng
046be5dba1 Prepare 7.15.0 (#21445)
* Revert "v7.14.0 release (#21443)"

This reverts commit 5eb083e5ce.

* prepare v7.15.0 snapshot

* update samples

* update readme

* update doc
2025-06-25 21:34:58 +08:00
William Cheng
5eb083e5ce v7.14.0 release (#21443) 2025-06-20 16:21:21 +08:00
William Cheng
0903ecf85e update urllib3 to newer versions in python-fastpi (#21439) 2025-06-19 21:47:05 +08:00
Al Scott
88bc79e906 [Typescript Fetch] Handle date parameters in the URL path (#19313)
* Handle date parameters in the URL path

* Reformat template and add cast for date fields

* Change code structure by moving path tranformations to assignment

Couldn't get handlebars to format the inline replaces in a sane way
without collapsing everything onto one very ugly line. This way keeps
some sane template formatting while still outputting workable code.

* Regenerate samples after merge

* Updated param checking

* Try a new commit after manually re-logging into CircleCI
2025-06-19 11:47:16 +02:00
Steven Blakowski
cef971cf9a [Java][RestTemplate] Gradle Build include non-compatible Spring Dependency with jakarta disabled (#21426)
* [Java][resttemplate] fix spring-web dependency for gradle without jakarta enabled

* fix samples
2025-06-19 16:11:37 +08:00
Stefan Paul Noack
8d8e3ddf16 fix(typescript-fetch): use type modifier on imports for discriminator.mappedModels (#21397)
* typescript-fetch: use `type` modifier on imports for `discriminator.mappedModels`

This ensures that the generated code works when `--verbatimModuleSyntax` is enabled for the TypeScript compiler.
Regular imports already use the `type` modifier, so this should not be a breaking change.

* update samples
2025-06-18 16:50:20 +02:00
William Cheng
623463a6ed [Java] Fix content for enum in MultiPart (#21428)
* [Java] Fix content for enum in addPartToMultiPartBuilder ([#19973](https://github.com/OpenAPITools/openapi-generator/issues/19973))

* [Java] Fix content for enum with restclient (#19973)

* [Java] Fix content for enum with restclient (#19973)

* [Java] Fix content for enum with restclient (#19973)

* update samples

---------

Co-authored-by: Michael Bornholdt Nielsen <michaelbornholdtnielsen@gmail.com>
Co-authored-by: Michael Bornholdt Nielsen <jarryDk@users.noreply.github.com>
2025-06-18 16:52:54 +08:00
Youri Westerman
43e878b421 [python] Validate pyproject.toml and fix the pyproject.toml version constraint format (#21402)
* Validate pyproject.toml of echo client python sample

* Use PEP-508 compatible version constraint for `requires-python` key

* Update samples

* Move job to petstore workflow

* Update generated sample

* Use equals or greater than operator instead of greater than

* Update samples
2025-06-18 16:39:37 +08:00
Youri Westerman
50c6754fcc Fix broken mypy checks (#21423) 2025-06-18 15:51:04 +08:00
David Gamero
d2b8a1eeac [typescript] add abort signal to requestcontext (#21323)
* add abort signal to requestcontext

* regenerate

* rebuild and regenerate

* abort signal import

* refresh samples

* clean csharp samples

* csharp sample cleanup

* add missing cs samples from master

* abort testing
2025-06-17 10:45:43 +02:00
William Cheng
dbc5d09da6 update python-fastapi requests to newer version (#21421) 2025-06-16 20:42:16 +08:00
Amin Ya
6e9dedba75 [cpp-rest-sdk] fix enum values being used instead of names (#21223)
* [cpp-rest-sdk] fix enum values being used instead of names

* [cpp-rest-sdk] remove unnecessary prefix for enum classes

* [cpprest-sdk]: use _XPLATSTR for string_t on Windows
2025-06-16 17:50:36 +08:00
KatyaValik
fc29daa6c0 Add enums to scala-http4s-server (#21320) 2025-06-16 11:42:02 +08:00
Rens Groothuijsen
db38f0f556 [rust-axum] Prevent multiple declarations of the same operation (#21396)
* [rust-axum] Prevent multiple declarations of the same operation

* [rust-axum] Add missing "delete on exit" to duplicate declaration test
2025-06-16 10:35:03 +08:00
dependabot[bot]
d5ab8f225e Bump brace-expansion from 1.1.11 to 1.1.12 in /website (#21418)
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.11 to 1.1.12.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.12
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-16 10:26:44 +08:00
William Cheng
055687935b update spring web version in resttemplate (#21417) 2025-06-16 10:20:01 +08:00
William Cheng
6bfd39f5de fix sponsor link in readme 2025-06-16 09:55:56 +08:00
Ilia
7f578d7444 [kotlin] Fix compile error in enum properties with "" values(#18660) (#21416) 2025-06-15 09:04:15 +01:00
oscarobr
8087f2b365 [Java][vertx] fix path param encoding (#21403)
* Issue:21401 Fix Java vertx path param encoding

* Generate samples
2025-06-12 19:29:18 +08:00
Andrei
937d314e19 [jaxrs-spec][quarkus] fix cookie in param (#21400) 2025-06-12 18:29:20 +08:00
Amin Ya
12fa2c0032 [cpp-restsdk] store Object as a shared pointer (#21349)
* [cpp-restsdk] store Object as a shared pointer

* [cpp-restsdk] add test for object property
2025-06-10 14:53:55 +08:00
Mostafa Aghajani
fa64c8e012 Issue: #21334 Abstract PHP support of "original" for variableNamingConvention (#21336)
* feat(php): add support for 'off' variable naming convention in AbstractPhpCodegen

* feat(php-laravel): add tests for issue 21334 with API and model definitions

* feat(php-laravel): update variableNamingConvention option in php-laravel help file to include 'off' as a valid value

* feat: enhance variableNamingConvention options to include 'off' and detailed descriptions in documentation

* feat(php): update variableNamingConvention from 'off' to 'original' in AbstractPhpCodegen

* feat: include php-laravel-issue-21334 in workflow triggers for push and pull_request events
2025-06-09 19:26:53 +08:00
devhl-labs
fbd94d5fbb removed duplicate service registration (#21395) 2025-06-08 23:09:26 +08:00
Andrew Wilson
4402d836bb Fix MiskKotlin OpenApiGenerator types (#21390)
* first pass

* fixup up Array -> List

* fixup up Array -> List

* File response type

* don't mess returnTypes.mustache
2025-06-06 20:47:39 +08:00
Nicklas Utgaard
89eea742fe avoid intersection type (#21378)
avoid intersection type by splitting the statements into separate code-branches. for each branch the type of `value` is therefor no longer an intersection

Fixes https://github.com/OpenAPITools/openapi-generator/issues/20636
2025-06-04 20:48:11 +01:00
William Cheng
eb8ce7331a update common custom user data maven extensions to 2.x (#21377) 2025-06-04 21:00:33 +08:00
William Cheng
4cfc8eff00 Add tests for enum names with dots in python cilents (#21374)
* add tests for enum names with dot

* remove file

* apply same fix to python pydantic v1

* update test
2025-06-04 16:18:10 +08:00
Ondřej Šimon
9d70de44d6 [JavaSpring][21200] improve Kotlin interopability with optional values (#21202)
nullable annotations are now added to getters, setters, parameters, for optional attributes without default value
2025-06-04 15:47:43 +08:00
Peter Caisse
d88d588665 Replace periods with '_DOT_' in Python enum member names (#21372)
This is relevant for enums whose values are floats since without this
step the enum is syntactically invalid.

See: https://github.com/OpenAPITools/openapi-generator/issues/21322
2025-06-04 15:18:58 +08:00
William Cheng
b57c23b121 update java restemplate dependencies to newer versions (#21368) 2025-06-04 02:28:52 +08:00
William Cheng
b20c569187 update devlocity to newer versions (#21369) 2025-06-03 23:41:45 +08:00
Thomas Sickinger
49cadfec3a fix(python-fastapi): remove 200 fallback code and use default (#12481) (#21333)
Co-authored-by: Thomas Sickinger <thomas.sickinger@teamviewer.com>
2025-06-03 21:02:24 +08:00
LuukvH
81cdc82af7 fix(ruby-client): fix incorrect Date parsing in OneOf (#21364)
Changes Date.parse to Date.iso8601 to fix incorrect type coercion in OneOf contexts. Previously, arbitrary strings matching Date.parse's lenient pattern (e.g., "ABC1") were incorrectly coerced to dates (2025-06-01), when they should have remained as strings.

For example:
- "ABC1" was parsed as Date(2025-06-01) instead of remaining "ABC1"
- This occurred because Date.parse treats the first char as month ('A'=1)
  and remaining digits as day

The fix ensures only ISO8601 formatted strings (e.g. "2025-06-02") are parsed as dates, improving type safety and preventing unexpected coercion of string values.
2025-06-03 16:57:21 +08:00
martin-mfg
9ebc6308b9 update slack invitation links (#21361) 2025-06-03 15:26:46 +08:00
Mikhail Obidin
fbca2b28d0 [gradle-plugin] Pass openapiGeneratorIgnoreList option from the openApiGenerate extension to the corresponding task (#21363) 2025-06-03 15:26:32 +08:00
William Dutton
b929970db2 fix: #21329 Java Native, Provide Null Check before toString on param variables (#21330)
* fix: #21329 Java Native, Provide Null Check before toString on param variables

* #21329 - Samples Generated
2025-06-02 16:56:22 +08:00
Amin Ya
18ccf86a6a [cpp-restsdk] link cpprest without crypto libraries (#21348)
These libraries aren't needed in the generated code. Cpprest doesn't need the crypto libraries directly. It uses OpenSSL
2025-06-02 16:55:41 +08:00
Nicklas Wiegandt
5997acb592 feat (JAVA NATIVE): add support for useSingleRequestParameter to java native client (#21331) 2025-06-02 15:36:59 +08:00
William Cheng
bce88c93ba update swagger pareer to 2.1.28 (#21325) 2025-06-02 15:33:27 +08:00
devhl-labs
a428cff3f4 [csharp][generichost] Updated docs (#21357)
* updated docs

* updated docs

* updated docs
2025-06-01 18:10:08 +08:00
Csaba Kozák
959326048f [kotlin-client][multiplatform] update Kotlin and libraries versions (#21353) 2025-06-01 18:03:37 +08:00
Alexandre Cassagne
1f8787e53a fix: update axum generated multipart requests to own the body (#21301)
* fix: update axum generated multipart requests to own the Multipart or Body

Notes: &Multipart cannot access fields, as we need mutable access.

* chore: run the updated rust-axum sample

* chore: run the updated rust-axum sample (2)
Notes: Ran
   ./mvnw clean package || exit
   ./bin/generate-samples.sh
   ./bin/configs/*.yaml || exit
   ./bin/utils/export_docs_generators.sh || exit

* chore: fix inconsistent lifetimes

Notes: Multipart should be owned; normal request remains borrowed

* chore: rerun axum samples
2025-05-31 23:32:03 +08:00
William Cheng
1b57d4b1e6 Better handling of metadata in allOf (#21342)
* better handling of metadata in allof

* update samples
2025-05-30 20:37:53 +08:00
Florian Brombauer
5677f5b09b Introduce option 'importFileExtension' to typescript-axios (#21343) (#21344) 2025-05-29 13:13:04 +02:00
andreas-umbricht
05e672d856 [Kotlin] Primitive array items validity check (#21315)
* Primitive array items validity check

* Update samples
2025-05-27 23:34:41 +08:00
William Cheng
2c67841e5c Add option to set container's default to empty container (#21269)
* add default to empty container option

* test map default to empty container

* update java generators to respect default value

* various fixes

* fix tests

* update doc
2025-05-27 16:59:35 +08:00
jase
dcd89bf3c5 feat(typescript-angular): add util "provideApi" and update docs to standalone applications (#21173)
* feat(angular): add util "provideApi" for standalone applications (Angular 17 and above)

* feat(angular): update README with new provideApi usage examples for Angular applications

* feat(angular): update README to reflect new provideApi import path and usage examples

* feat(angular): add support for README_beforeV17 and update provideApi return type

* feat(angular): add support for README_beforeV17 and update provideApi return type

* feat(angular): add support for README_beforeV17 and update provideApi return type

* fix: correct casing in DuplicateTest and FooDuplicateTest headers

* feat(angular): add provideApi function and update README with usage examples
2025-05-26 13:02:34 +02:00
William Cheng
d2196dd727 use poetry 1.x in python aiohttp client (#21328) 2025-05-25 22:43:22 +08:00
Youri Westerman
041d36c954 [python] Fix poetry deprecation warnings (#21268)
* Convert pyproject.toml template to the format expected by Poetry >=2.0
(https://python-poetry.org/blog/announcing-poetry-2.0.0)

* Update samples

* Add option to fallback to Poetry 1.x style pyproject.toml

* Generate new docs and samples

* Place project.urls section a bit further down, so that it doesn't clash with other sections

* Update samples
2025-05-25 21:16:31 +08:00
DavidGrath
c6a88eaf8e [JAVA] Correct generation of schema default values of type object (issue #21051) (#21278)
* Fix Issue #21051

* Renamed Test to avoid being overriden by JUnit import

* Test fix
2025-05-25 18:34:42 +08:00
Spencer Cornish
c4dad53455 [GO] Go Server: Adds ordered routes to go-server router (#21280)
* Adds ordered routes to go-server router

* Generate and fix test

* Newline

* Readd escaping

* Fixes go router unit test

* Updates tests, one more time
2025-05-25 13:49:15 +08:00
devhl-labs
a891876ea9 fixed token availablity (#21326) 2025-05-25 13:48:49 +08:00
devhl-labs
66ff91a687 bumped dependency versions (#21327) 2025-05-25 13:48:17 +08:00
Youri Westerman
4379a23608 [python] Explicitly define github workflow permissions (#21311)
* Explicitly define github workflow permissions (python)

* Update samples
2025-05-22 10:21:19 +08:00
William Cheng
f735c6e091 add savetwt to sponsor list (#21310) 2025-05-21 11:37:42 +08:00
William Cheng
5ec4e4c8f1 add tests for cpp-restsdk client (#21305) 2025-05-20 16:45:49 +08:00
Michael Vistein (DLR)
cdef985ca7 Fix referenced primitive types (#19456) 2025-05-20 16:41:21 +08:00
martin-mfg
dac1e6b7d3 optimize regex (#21188) 2025-05-20 16:27:19 +08:00
Tassilo Karge
894008f325 [Python] Correct sanitize_for_serialization in python generator for list in oneOf schema elements, fixes #18106 (#19405)
* correct sanitize_for_serialization in python generator, fixes #18106

The method did not consider the objects created for oneOf schemata. If one of the cases was a list, to_dict would return it instead of something that has an items() method.

* generate new samples
2025-05-20 16:26:38 +08:00
William Cheng
5f63385a31 Provide " as member" where needed (#21304)
* fix: #20878 Provide " as member" where needed

- Generate new samples
- Add tests for all effected python versions
- Ran tests with success

Commands used to verify:
./bin/generate-samples.sh ./bin/configs/python*
mvn verify -Psamples
mvn integration-test -f modules/openapi-generator/pom.xml -Dtest=org.openapitools.codegen.python.PythonPydanticV1ClientCodegenTest -e
mvn integration-test -f modules/openapi-generator/pom.xml -Dtest=org.openapitools.codegen.python.PythonClientCodegenTest -e

* remove 3.8 tests

* use localhost

* update tests

* update test

---------

Co-authored-by: Robert Plummer <rplummer@sequel.ae>
2025-05-20 16:25:11 +08:00
sandwoodK
13c95f1dd2 Fix nim compilation in case a edge case of a schema with enum (#20780)
If enum constraint contains one value which is not a valid nim
identifier, we must surround this identifier with backtick.
2025-05-20 15:38:58 +08:00
Andreas Kuhtz
78b54b9283 Fix broken build on Windows OS if the schema contains references to other schema files. (#21300) 2025-05-20 10:06:01 +08:00
CHervaudBetclic
0aaeb45dbe [kotlin-client] Add support for integer enums in serialization for kotlin-client (#21248) 2025-05-19 08:43:24 +01:00
Guillaume Turri
6e2b4f99ba [PHP-Symfony] revamp the computation of the contentType (#21292)
recent commit 40894382fc already improved
that method: before that other commit it was juste impossible to query
a endpoint with a response type that was something else than
application/json or application/xml. With that commit it became possible
to query such endpoint provided that the client declare in its Accept
header that it can cope with */* (or provided that the client omitted
that header altogether).

But there were still cases badly handled. For instance if an endpoint
returns a response of type image/png and that it receives a query with
header "Accept: image/png", then it would reply with 406.

To avoid any other issue with type resolution, this commit revamps the
getOutputFormat function more thoroughly and does it by implementing
the specification available at
https://httpwg.org/specs/rfc9110.html#field.accept ), which means that
the format accepted by the client are ordered by the relative weights
specified it specified.
2025-05-19 10:09:16 +08:00
Rens Groothuijsen
45047b77f1 [python-fastapi] Upgrade dependencies to support Python 3.13 (#21291) 2025-05-18 09:56:24 +08:00
William Cheng
b3935922cd update snakeyaml version to 2.4 (#21293) 2025-05-17 13:49:09 +08:00
Andrew Wilson
9b39c05563 Kotlin Misk Add Extra Parameters (#21271)
* first pass

* squash

* fixing FILES
2025-05-16 14:37:49 +08:00
Jens Balvig
cfe0b6fae3 Fix spelling mistake in validations (#21287) 2025-05-16 13:55:18 +08:00
Guillaume Turri
6c0e7274ea [Php-Symfony] showcase recent features in petstore.yaml (#21286)
PR #21261 added support for endpoint with response of type text/plain
or even image/png.

This commit adds such endpoint so that:
- the way those are supported is clearer (as it is now directly visible
  in the generated sample files)
- if a future commit impacts this part of the generation it will be easier
  to assess that impact
2025-05-16 10:32:52 +08:00
Peter Storch
5b885cd3db [kotlin-spring] fix validation regression in kotlin-spring generator (#21255)
* fix #21238 regression in kotlin-spring generator

* add tests for issue #21238
2025-05-16 00:08:51 +08:00
Ondřej Šimon
68c1d8970e [20808] add Autowired annotations guard to skip generation (#21198)
annotation import and usage is not generated when API is not a Spring Bean
2025-05-15 18:51:25 +08:00
Sohaib Athar
bd8a206ebd fix(cpp-qt-client): add asJsonObject method to OAIEnum class (#19307) (#21211)
* add asJsonObject method to OAIEnum class to fix enum handling in query parameters

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-05-15 14:00:55 +08:00
William Cheng
0bfce24071 Add model name mapping option to rust generators (#21282)
* add model name mapping option to rust generators

* update package name

* update samples
2025-05-15 13:29:37 +08:00
Guillaume Turri
40894382fc [php-symfony] fix handling of endpoints with "text/plain" or "image/png" response type (#21261)
* [php-symfony] Never return 406 when user accepts */*

When a query has header "Accept" set to "*/*" it means it accepts
everything. It is hence weird to return a 406.
This patch ensures it does not occur: when the query accepts everything
then we take any produced type.

This fixes #13334. This also partly makes the open PR #15560 obsolete
(or at least, it provides a workaround)

* [php-symfony] Don't crash at runtime on null convertFormat

$this->convertFormat may return "null". When it's the case we end up
calling

    ...->serialize($data, null);

but this crashes at runtime because that serialize method declares that
the 2nd parameter is of type "string" (so null is not accepted).

With this patch we avoid having an error 500. Instead we return something
that makes perfect sense when the OpenApi specification declares a content
of type "text/plain" and that the returned value is for instance a string,
an int, or a boolean.

* [php Symfony] fix return type for non json/xml api

This fixes the generated returned type of controller methods for
endpoint with a response declared like

    content:
      text/plain:
        schema:
          type: <boolean|string|integer|number>

or for

    content:
      image/png:
        schema:
          type: string
          format: binary

Without this commit the generated method *had to* return a value that
matched "array|object|null", which does not work in this case.
This commit makes it possible to return the proper type.
2025-05-14 21:11:39 +08:00
Amin Ya
429da9860b [rust] support model/maps as deep/explode params (#21262)
* [rust] support model/maps as deep/explode params

* [rust] add tests for rust deep objects

* [rust] detect normal non deep objects

* [rust] distinguish model and object

* [rust] fix objects as params for hyper
2025-05-14 14:44:05 +08:00
jglagrimas
a0b9ecd773 [php-laravel generator] update $request->bool to $request->boolean (#21273)
* Chores : update $request->bool to $request->boolean

$request->bool is not a laravel function should be $request->boolean()

* Chores : update FakeController.php $request->boolean()
2025-05-14 14:37:16 +08:00
William Cheng
2fb26c362e update kotlin samples 2025-05-11 23:43:24 +08:00
Ross Sullivan
9981a408d1 [kotlin] Added path sanitization in javadoc comments (#20767)
* [kotlin] Added path sanitization in javadoc comments

* added sample as regression test

* Added samples/client/others/kotlin-jvm-okhttp-path-comments to github workflow
2025-05-11 23:23:50 +08:00
Mostafa Aghajani
91630b8591 feat: add default values support to Avro schema generator with related test cases (#21226) 2025-05-11 22:48:53 +08:00
Alex B
57bf6925bb [Java] Make Java ApiClient extendable (#21251)
* Make all Java ApiClients in templates extendable

* Make all Java ApiClients in samples extendable

* Fix compilation of enum constructor

* Fix compilation of enum constructor in templates
2025-05-11 22:47:40 +08:00
Jonas Renggli
be17698320 [php-flight] fix: remove trailing spaces (#21254)
According to the Guidelines for Contributing
(https://github.com/OpenAPITools/openapi-generator/blob/master/CONTRIBUTING.md)
generated PHP code should conform to PSR-12
(https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-12-extended-coding-style-guide.md).

There are some minor violations regarding the following rule

> There MUST NOT be trailing whitespace at the end of lines.

This change removes trailing spaces in generated code.
2025-05-11 22:32:27 +08:00
DavidGrath
2fd1ee66cc Added ANTLR. Fix Issue #20960 (#21230)
* Added ANTLR. Started work on issue 20960

* Ran generation scripts

* Excluded ANTLR generated files from JavaDoc generation

* Whitespace fix
2025-05-11 22:31:54 +08:00
Jonas Renggli
6344bfa779 [php-flight] fix: use static PHPUnit assertions (#21253)
Static analysis tools such as PHPStan report errors when dynamic calls are used
for static methods.

```
ERROR Dynamic call to static method PHPUnit\Framework\Assert::assertEquals().
```

According to the source code of PHPUnit
(https://github.com/sebastianbergmann/phpunit/blob/9.5.0/src/Framework/Assert.php)
the function is indeed static.

```php
public static function assertTrue($condition, string $message = ''): void
```

This change updates to PHP Flight test template `register_routes_test.mustache`
to use static calls for PHPUnit assertions.
2025-05-11 22:22:34 +08:00
Amin Ya
66e8c932c3 [cpp-rest-sdk] support serializing model base as parameters (#21235)
* [cpp-rest-sdk] support serializing models as parameters

This fixes the code generation for the cases where the model is referenced as a parameter

* [cpprest-sdk] avoid newlines when no model import
2025-05-11 21:52:09 +08:00
Billy Booth
d6c4634269 [csharp] Add missing ConfigureAwait(false) for csharp generator (#21244)
* [csharp] ApiClient.mustache: Apply ConfigureAwait(false) consistently

* [csharp] Update samples to include 59936f29f0
2025-05-09 12:02:38 +08:00
Eric Rolli
bb811db2a2 [JavaJaxRs] generate getValue() for enums with the correct type (#21183)
* [JavaJaxRs] enumClass.mustache added getValue()

JavaJaxRs enums are missing getValue() method returning the correct data type.

* Update InlineObject2.java added getValue() for enums

* Update Pet.java added getValue() to enum

* Update BigCat.java added getValue for enum

* Update EnumArrays.java added getValue() to enum

* Update EnumArrays.java added getValue() to enum

* Update EnumTest.java added getValue() to enums

* Update MapTest.java added getValue() to enum

* Update Order.java added getValue() to enum

* Update Pet.java added getValue() to enum

* Update EnumArrays.java added getValue() to enums

* Update EnumTest.java added getValue() to enums

* Update MapTest.java added getValue() to enum

* Update Order.java added getValue() to enum

* Update ParentWithNullable.java added getValue() to enum

* Update BigCat.java added getValue() to enum

* Update EnumArrays.java added getValue() to enums

* Update EnumTest.java added getValue() to enums

* Update MapTest.java added getValue() to enum

* Update Order.java added getValue() to enum

* Update Pet.java added getValue() to enum

* Update BigCat.java added getValue() to enum

* Update EnumArrays.java added getValue() to enums

* Update EnumTest.java added getValue() to enums

* Update MapTest.java added getValue() to enum

* Update Order.java added getValue() to enum

* Update Pet.java added getValue to enum

* Update EnumArrays.java added getValue() to enum

* Update EnumTest.java added getValue() to enums

* Update MapTest.java added getValue() to enum

* Update Order.java added getValue() to enum

* Update ParentWithNullable.java added getValue() to enum

* Update Pet.java added getValue() to enum

* Update EnumTest.java getValue() with Integer

* Update EnumTest.java
2025-05-09 11:15:20 +08:00
martin-mfg
b55ae3caa8 update documentation about lambdas (#21241) 2025-05-09 11:00:53 +08:00
ksn-partisia
ecd5d253a8 [Bug] [Java] Fix java compilation warnings in RFC3339JavaTimeModule and RFC3339InstantDeserializer (#21243)
* Fix java compilation warnings in RFC3339JavaTimeModule and RFC3339InstantDeserializer

* Regen missing samples
2025-05-09 11:00:07 +08:00
Philip Thomas Casado
4cffd32f87 [Feat][Typescript Angular] Implement deepObject query params (OAS3.0) (#21108)
* feature: implement deepObject query params as per documentation.
Closes OpenAPITools/openapi-generator#19342.

* chore: regenerate samples.

* chore: symplify code (via @joscha)

* chore: regenerate samples

* test: add integration test for typescript-angular deepObject query params

* fix: typo in the integration tests path

* chore: use node v18 for integration tests

* chore: make ES6 compliant

* chore: make test name semantically accurate

* chore: regenerate samples

* test: add angular v16 deep-object test

* chore: delete previous bespoke test for deep objects (uses test introduced in 71629f8d9a instead)

* chore: restore missing OAS for deep object API tests

* test: move angular deepObject tests to v19 and delete v16 ones

* test: atomic deepObject test on service rather than integration with app component

* chore: clean up superfluous import
2025-05-07 16:40:02 +02:00
Juanpe Araque
f2813716fb [Python] Add __all__ variable in the package __init__.py file for Python APIs (#21185)
* Add __all__ to the package __init__.py file for Python APIs

* Remove empty line before closing bracket

* Add missing samples
2025-05-07 15:59:49 +08:00
Amin Ya
3048fb02e1 [cpp-rest-sdk] remove U macro definition from public headers (#21221)
Cpprest has a public U macro definition that causes build errors in libraries as U is a common name for template parameters. This PR fixes the issue by turning it off.

[microsoft/cpprestsdk@411a109/Release/include/cpprest/details/basic_types.h#L87](411a109150/Release/include/cpprest/details/basic_types.h (L87))

Related to https://github.com/microsoft/cpprestsdk/issues/1805 and https://github.com/fmtlib/fmt/issues/4180
2025-05-07 15:08:38 +08:00
martin-mfg
5117616b53 CodegenOperation & CodegenProperty: turn fields into getters (#21225)
* turn fields into getters

* update samples
2025-05-07 15:04:04 +08:00
William Cheng
5e5a053bfa update PR tempalte, issue template, link to validator (#21232) 2025-05-07 14:39:37 +08:00
Amin Ya
f5b8fd6f5e [cpp-rest-sdk] fix finding of the crypto libraries (#21219)
* [cpp-rest-sdk] fix finding of the crypto libraries

This fixes finding of the crypto for cpprest sdk via find_library. It also bumps the minimum CMake version to 3.10 to avoid deprecation warnings

* docs: add myself as a technical committee member
2025-05-07 14:30:18 +08:00
Amin Ya
4b2abdf48d fix: fix dev container failing to build (#21218)
The dev container fails to build because of the outdated docker-in-docker feature. This updates the docker-in-docker and fixes the build. I also updated the docker compose references in the docs.
2025-05-05 15:34:02 +08:00
William Cheng
2010c2a60a Add workflow to test Elixir clients (#21214)
* add elixir workflow

* update

* fix

* add elixir workflow (#21215)

* update tests to use built-in json module instead of jason

* update base_url

* temporarily disable type-casting for dates

* retry failing tests

* update spec to use localhost

* add petsore local server to workflow

---------

Co-authored-by: Enrique Fernández <enrique@bluelabs.eu>
2025-05-05 15:32:05 +08:00
devhl-labs
41012588dd ignore date length validation (#21217) 2025-05-05 15:06:22 +08:00
martin-mfg
e22d079bb0 ensure correct value for hasParams (#21209)
* turn hasParams into getter

* restore hasRequiredParams
2025-05-05 00:49:01 +08:00
Enrique Fernández
d38898a4d0 fix: delete unused file (#21213) 2025-05-04 23:39:17 +08:00
Ross Sullivan
652d4ed95c Remove duplicate oneOf schemas during pre-processing (#21174)
* fix: Remove duplicate oneOf schemas during pre-processing

* chore: Updated samples

* fix: Fixed regression with oneOf+discriminator

* fix: Fixed possible null pointer during schema preprocessing

* refactor: Moved oneOf deduplication to OpenAPINormalizer
2025-05-04 23:30:42 +08:00
Devon
104ceb9c16 Java: Optimize HashSet Initialization (#21205)
* Optimize HashSet Initialization

Noticed this while debugging - we can avoid wasting memory/cpu creating 16 buckets when we only need one or a few.

* generate samples

* use Arrays.asList
2025-05-04 22:56:33 +08:00
Enrique Fernández
0389a99cec simplify connection module (#21158) 2025-05-04 22:51:35 +08:00
devhl-labs
f3af25b10c fixed encoding (#21207) 2025-05-04 22:30:40 +08:00
devhl-labs
56fe7e3286 [csharp] Fixed duplicate property names (#21206)
* fixed duplicate property names

* discard samples

* discard samples

* added new sample
2025-05-04 22:29:12 +08:00
Enrique Fernández
ac77339fcd [chore][elixir] update dependencies (#21210)
* chore: bump tesla version

* chore: bump ex_doc version

* chore: bump dialyxir version
2025-05-04 22:27:26 +08:00
Jaime Sánchez
3c664d1a59 [java] [spring] Fix multipart optional params error compilation using delegates (#20793)
* fix spring multipart optional parameters

* use optional only in not required params

* remove debug line

---------

Co-authored-by: Jaime Sanchez <jaime.sanchezf@externos.santalucia.es>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-04-30 14:28:38 +08:00
Andrew Wilson
76540e591f Improve Kotlin Misk OpenApi Generator (#21165)
* first pass

* fixing types

* fixing action

* updating samples

* updating files

* adding guido

* fixing misk

* removing old files

* cleaning generated files

* cleaning generated files

* adding back in license

* first pass

* second pass

* third pass

* typo

* fixup

* fixup 2

* fixup 3

* fixup 4

* fixup 5

* fixup 6

* fixing api override

* fixing docs

* fixing docs json

* fix misk version

* add action prefix

* fixup

* fixup 2

* fixup 3

* fixup 4

* fixup 5
2025-04-30 01:53:32 +08:00
kenji yoshida
56eb8f7bc9 update akka-http and pekko-http server generator and example (#21166) 2025-04-30 01:46:49 +08:00
Akihito Nakano
3bac186b2f Fix the layout issue in the donation message (#21184)
The emoji might not render correctly for Windows users.
2025-04-30 01:45:41 +08:00
William Cheng
d04c0ddbb4 minor fix to javadoc (#21177) 2025-04-29 15:58:16 +08:00
RickyMa
afa135f93d [cpprestsdk] Support passing enum request parameters (#20836)
* [cpprestsdk] Support passing enum request parameters

* Add a fake endpoint to test enum request parameters

* Add auto-generated sample codes

* Update to date with master branch

---------

Co-authored-by: leslizhang <453688819@qq.com>
2025-04-29 15:54:07 +08:00
Simon Podlipsky
2327562af4 fix(php-nextgen): do not call static methods dynamically (#21163) 2025-04-29 15:29:52 +08:00
martin-mfg
daeffde719 fix vertxFuture setting (#21176) 2025-04-29 15:07:30 +08:00
martin-mfg
9a289e9713 adjust jersey2/jersey3 templates (#21171)
* respect useJakartaEE in jersey3

* useJakarteEE=true in jersey3 samples

* don't force jakarta package for jersey3

* adjust whitespace between jersey2 and jersey3

* enforce useJakartaEe for jersey3, warn on misuse for jersey 2

* set useJakartaEe for jersey3, generate samples
2025-04-29 15:01:43 +08:00
martin-mfg
3fadfe3889 fix documentation versions (#21175) 2025-04-29 15:01:16 +08:00
Oliver Fast
65c312653a fix(typescript-fetch): Use null as a value when the date value is nullable (#21133)
* fix use null when available for dates

* generated typescript-fetch-default-v3.0 sample

* ran all typescript examples
2025-04-28 10:59:48 +02:00
William Cheng
29b6b771d7 add unified.to to bronze sponsor list (#21160) 2025-04-27 23:58:17 +08:00
William Cheng
9eefc09487 update readme 2025-04-27 22:07:23 +08:00
William Cheng
dbf720c093 Prepare 7.14.0 release (#21159)
* Revert "v7.13.0 release (#21157)"

This reverts commit 4b805ff6b7.

* prepare v7.14.0 release

* update samples
2025-04-27 22:04:03 +08:00
William Cheng
4b805ff6b7 v7.13.0 release (#21157) 2025-04-27 21:02:20 +08:00
Mattias Sehlstedt
10fc9d07c7 Single request parameter equals and hashcode (#20833)
* Align indentation

* Add equals and hashcode to singleRequestParameter static class

* Add missing sample updates that were affected by new imports

* add restclient sample

* update FILES, chmod=+x

* Update samples with jakarta annotations

* Updates samples

---------

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2025-04-27 16:46:01 +08:00
Renuka Fernando
858d5fd8b7 Set appropriate statusCode from examples (#19501)
Issue: OpenAPITools/openapi-generator#19446
2025-04-27 15:18:28 +08:00
Lucas Reeh
f656afcde3 Add original enumPropertyNamingType config for java enum generation (#20824) 2025-04-27 15:00:51 +08:00
roseatromero
de310f6ee1 Fix associative container on json values (#20606) 2025-04-27 00:17:52 +08:00
William Cheng
1850c07951 update samples 2025-04-27 00:16:39 +08:00
martin-mfg
9f3a73f81a [spring]addition: api response examples + spring generator generates response examples (#17610, #16051) (#20933)
* addition: api response examples; spring's api.mustache generates response examples

* update samples

* added 2 sample configs; adsjuted to only generate examples for application/json

* added test

* remove accidentally added files

* small cleanup

* add new samples to workflow

---------

Co-authored-by: GlobeDaBoarder <glebivashyn@gmail.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-04-27 00:10:09 +08:00
Ross Sullivan
35ba0414fb [rust] Fix for allOf multi model with only metadata fields (#20892)
* Fix for allof multi model with only metadata fields

* Update samples

* fixed compiler errors in java 17 and lower

* refactored isMetadataOnlySchema to ModelUtils.java
2025-04-26 23:44:56 +08:00
Mattias Sehlstedt
1eee6038df Fixes so that a oneOf schema with a single sub-schema is simplified (#21043)
* Fixes so that a oneOf schema with a single sub-schema is simplified when SIMPLIFY_ONEOF_ANYOF is set to true

* Adjusts oneOf_array test to ensure that it is generated as an interface instead of being simplified

* Update ruby samples so that they no longer refer to a model that is now gone due to the schema being simplified
2025-04-26 22:53:21 +08:00
David Riddervold Marconis
02204d0e4b fix: [csharp] JsonConverter anyof (#21137) 2025-04-26 22:21:02 +08:00
paul-kraftlauget
bbc0b4a79f [kotlin-client][jvm-spring-restclient] Fix metrics URI templating for RestClient (#21149)
Spring configures uriTemplate attribute and not generated code
2025-04-26 22:20:16 +08:00
paul-kraftlauget
f9549479c9 [kotlin-client][jvm-spring-webclient] Fix metrics URI templating for WebClient (#21148)
Spring configures uriTemplate attribute and not generated code
2025-04-26 22:19:39 +08:00
Bruno Coelho
e3db6a6257 [swift][client] update migration docs (#21151) 2025-04-26 22:14:37 +08:00
Ross Sullivan
1c62f839c5 Fixed Rust model files not matching module imports causing compiler errors (#21134)
* fix(rust): Fixed Rust model files not matching module imports causing compiler errors

* chore(rust): Update samples with a duplicate model test

* update samples

---------

Co-authored-by: Ross Sullivan <rosssullivan101@gmail.com>
2025-04-26 22:03:28 +08:00
William Cheng
178f1c9641 update maven plugin dependency versions (#21153) 2025-04-26 22:00:03 +08:00
Bruno Coelho
f950ac97e8 [swift][client] make QueryStringEncodable return any Sendable (#21142)
* [swift][client] make QueryStringEncodable return any Sendable

* [swift][client] rename QueryStringEncodable to ParameterConvertible

* [swift][client] update migration docs

* Revert "[swift][client] update migration docs"

This reverts commit 00a490536d.

* [swift][client] rename QueryStringEncodable to ParameterConvertible
2025-04-25 14:40:58 +01:00
William Cheng
44c342bddd fix travis test build failure 2025-04-25 18:11:02 +08:00
William Cheng
35b94dff7a [csharp] fix "Simplify 'default' expression (IDE0034)" messages (#21147)
* [csharp] reduce IDE0034 messages in generated code

* [csharp] regenerate all samples

---------

Co-authored-by: Fabian Buchenberger <37747351+ffabss@users.noreply.github.com>
2025-04-25 18:01:14 +08:00
xtroce
6ee94d636b issue-20718 fixed code generation for jersey2/3 and okhttp-gson when using modelMapping with a package and anyOf/oneOf (#20721)
Co-authored-by: Sebastian Droeppelmann <sebastian@d-liver.solutions>
2025-04-25 17:13:36 +08:00
Paul Horton
bdb063f170 fix: Support PathParams not of primitive types for Go in generated tests (#21107)
* fix: Support PathParams not of primitive types for Go in generated tests

Signed-off-by: Paul Horton <phorton@sonatype.com>

* use tabs consistently

---------

Signed-off-by: Paul Horton <phorton@sonatype.com>
2025-04-25 17:09:11 +08:00
ふぁ
5a9f973e91 [dart-dio] Fix the version of the sample dependencies (#20797)
* [dart-dio] Fix the version of the sample dependencies

* update

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-04-25 17:06:29 +08:00
saulgillEST
c14c7a0421 Enhancement: Allow MergedSpecBuilder title, version and description to be configured #20822 (#20839) 2025-04-25 16:44:41 +08:00
Michael Düsterhus
27a705efd5 [fix][java]Add missing generated annotation to Authentication.mustache (#21125)
* Add generated annotation to Authentication.mustache

* Update Authentication.mustache jersey2

* Update Authentication.mustache jersey3

* Update Authentication.mustache okhttp

* Update Authentication.mustache restclient

* Update Authentication.mustache resttemplate

* Update Authentication.mustache vertx

* Update Authentication.mustache webclient

* doc: regenerate samples
2025-04-25 16:35:51 +08:00
Julian Kalinowski
f9dedd74ec [kotlin] [multiplatform] [jvm-ktor] Fix formdata file upload (#21056)
* fix: kotlin multiplatform form-data file upload

* generate samples

* fix form data binary for jvm-ktor
2025-04-25 16:30:25 +08:00
Enrique Fernández
be77442bff feat: support bearer authentication (#21110) 2025-04-25 16:17:32 +08:00
William Cheng
3fa806006b [python-fastapi] update h11, httpx to newer versions (#21145)
* update h11 to newer versions

* update httpx to newer version
2025-04-25 16:14:26 +08:00
Enrique Fernández
0462bed734 fix: wrong typespec generation for all-of with single ref (#21139) 2025-04-25 16:06:06 +08:00
Łukasz Suski
d02c0f493e [Kotlin] [Retrofit2] [Coroutines] [Client] Option to remove Response<> wrapper in operation return types (#20613)
* Add useResponseAsReturnType option to kotlin, jvm-retrofit2 and coroutines api template (#15491)

* Add useResponseAsReturnType flag to kotlin-jvm-retrofit2-coroutines.yaml sample

* Generate sample
2025-04-25 08:45:47 +01:00
jase
dfbe985db3 fix(typescript-angular): enable "exactOptionalPropertyTypes" and ensure assignments align with type definition (#20451)
* fix(typescript-angular): enable "exactOptionalPropertyTypes" and ensure assignments align with type definition

* fix(typescript-angular): update condition checks to explicitly compare with undefined

* chore(gradle): add autogenerated properties file for OpenAPI Generator
2025-04-23 14:08:21 +02:00
CG
a7159f6bcb [BUG][kotlin-spring] Fix defaultValue for RequestHeader is not generated (#20504) (#21003)
* [BUG][kotlin-spring] Fix defaultValue for RequestHeader is not generated (#20504)

* revert apiDelegate changes

* fix: fix unresolved reference for enum type
2025-04-23 17:25:47 +08:00
William Cheng
3b6b55144d fix gradle.properties in java client (#21129) 2025-04-23 17:05:04 +08:00
Kai-Uwe Hüber
28daa68943 Check if enum_values exists in the serverUrl [csharp] (#21122)
* check if enum_values are existing

If no enum_values are given for in a serverUrl, the check must be ignored.

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-04-23 16:26:41 +08:00
Ronan Pozzi
d589f5db11 [java][native]Delete unused gradle.properties template in native library (#21128)
The gradle.properties.mustache template was empty. Removing this override allow to specify gradleProperties while using native library

Co-authored-by: Ronan Pozzi <ronan-pozzi@asys.fr>
2025-04-23 16:23:35 +08:00
Ross Sullivan
caf22add95 [rust] Fixed nullable byte arrays (#20720)
* [rust] fixed nullable byte arrays

* Updated tests and samples

* updated type test

* Added double option support

* updated samples
2025-04-23 16:13:53 +08:00
jheyens
e767496357 Jersey2: Move setting of authentication parameters before generating target URL to consider API keys in URL parameters (#20688)
* Move setting of authentication parameters before generating target URL to consider API keys in URL parameters

* Regenerate Jersey2/3 examples
2025-04-23 16:04:26 +08:00
João Brilhante
d2e20253e4 [java][restclient] Fix model combining properties and additional properties (#20947) 2025-04-23 15:57:57 +08:00
Henrik Gerdes
abce11152e fix(fastapi): use correct impl & package name with custom values (#20970)
Signed-off-by: Henrik Gerdes <hegerdes@outlook.de>
2025-04-23 15:57:21 +08:00
30p87
ee7927a525 [Java][Spring] remove 'size', 'page' and 'sort' query params if using 'x-spring-paginated' (#8315) (#21016)
* [Java][Spring] remove 'size', 'page' and 'sort' query params if using 'x-spring-paginated' (#8315)

* Properly implement samples, fixing build issues

---------

Co-authored-by: Tobias Fischer <t.fischer@goldflam.de>
2025-04-23 15:47:17 +08:00
PidgeyBE
72de5bc952 [Python] Fix the post processing of string enums (#20976)
* fix/ x-enum-varnames in python

* make x-enum-varnames examples more clear

* make x enum varname usage more explicit

* fix tests

* trigger tests

* trigger tests once again...

* fix more tests
2025-04-23 15:45:44 +08:00
Simon Podlipsky
d4d14204e8 fix(php-nextgen): always return if not void (#21119) 2025-04-23 15:40:57 +08:00
jheyens
a66dd20783 Jersey2: Do not reinitialize ClientConfig with default values when building HTTP Client (#20687)
* Do not reinitialize ClientConfig with default values when building HTTP Client

* Regenerate Jersey2/3 examples
2025-04-23 15:24:22 +08:00
Juan Treminio
346231083f [PHP] - Add FormDataProcessor to handle nested ModelInterface data (#20990)
* [PHP] - Add FormDataProcessor to handle nested ModelInterface data

* Generating samples

* Updates php-nextgen and psr-18

* Adds tests

* Some more tests

* One last test

* Updating files

* Fixing diff

* Test fix

* Updating samples
2025-04-23 15:16:47 +08:00
Kevin Lin
b844d8d4cd [Java] ApiClient: support deserializing from InputStream instead of String to bypass 2GB Java String limit (#21115)
* ApiClient: support deserializing JSON from InputStream instead of String to bypass 2GB Java String limit

* Update test_file_list.yaml
2025-04-23 14:59:02 +08:00
Antoine Reilles
338f7f2a09 cxf file upload should only present Attachment (#21124)
The InputStream is not necessary, as it can be obtained from the
Attachment object via getInputStream().
2025-04-23 14:53:42 +08:00
Jenny G. L.
80ab53b2ce [scala][client]: scala-http4s scala3 client: minor improvement (allow empty string in optional enum to pass as None) (#21025)
* [scala][http4s][client]: add enum method; remove implicit

* improve error handling

* more enum enhancement

* remove unused

* update samle

* avoid breaking change

* [Scala][Client][HTTP4s]: when enum is optional, avoid throwing exception when it's empty string

---------

Co-authored-by: Jenny Leahy <jennyleahy@JENNYLEAHY.localdomain>
Co-authored-by: Jenny Leahy <jennyleahy@Mac.localdomain>
2025-04-23 14:21:33 +08:00
Enrique Fernández
3233eff187 [fix][elixir] faulty free-form object type spec (#21113)
* fix: faulty free-form object type spec

* add implicit free-form object example
2025-04-23 14:17:10 +08:00
Bruno Coelho
64d9719d39 [swift6][client] All models conform to Codable so this method should not be needed anymore (#21117)
* [swift6][client] All models conform to Codable so this method should not be needed anymore

* [swift6][client] All models conform to Codable so this method should not be needed anymore
2025-04-22 11:58:53 +01:00
Bruno Coelho
7f64d906a5 [swift6][client] Make it possible to opt out of JSONEncodable conformance (#21116) 2025-04-22 10:47:00 +01:00
Enrique Fernández
2fb59ff258 doc: remove references to petstore (#21111) 2025-04-21 15:42:09 +08:00
RickyRister
4c08ff865d [Java][Vertx] Add option to generate methods that return Futures (#21083)
* [Java][Vertx] Add option to generate methods that return Futures

* run scripts

* update sample config and github workflow

* generate samples

* rerun script

* add vertx-no-nullable to samples workflow
2025-04-18 21:53:08 +08:00
Moritz Weber
c67b1132ec [typescript-angular] add license information for BaseService (#21104)
The new BaseService was added in #20681, but the license information was not added.
2025-04-17 16:39:23 +02:00
Sri Sushma Karra
f9f5af5ed9 [JAVA][FEIGN] Removing hardcoded HTTP Client which is causing performance issues (#21085)
* [JAVA][FEIGN] Removing hardcoded HTTP Client

Fixing performance issues

* Updating samples for Java Feign performance betterment changes

* added APIClient.java for feign-hc5
2025-04-17 17:13:07 +08:00
Andrew Wilson
5e446b4147 [feat] [protobuf] Improve protobuf generator by adding custom options for api and model files (#21075)
* add custom options

* fixing docs

* typo
2025-04-17 13:11:34 +08:00
lucy66hw
b4378a6277 [Protobuf Schema] Map Field Handling in Composed Schemas (#21002)
* Address map under composed schema

Add explanation to code block

* add comment to explain the code block
2025-04-16 16:33:22 +08:00
Andrew Wilson
1136872cd5 [feat] [protobuf] Improve protobuf generator with switch useSimplifiedEnumNames (#21052)
* improving with simple enum names

* adding test case

* fixing docs

* fixing param name

* fix docs
2025-04-16 16:32:36 +08:00
devhl-labs
ffefebdd88 [csharp] Process webhook operations (#21082)
* process webhook operations

* process webhook operations

* build samples
2025-04-16 16:30:53 +08:00
NavruzshoevDaniel
7a57b80955 [BUG][Kotlin][WebClient] ApiClient is not compatible with spring-web 6 Observation API (#21020) 2025-04-16 15:25:22 +08:00
Gregory Merlet
a94b8f90ca Fix typescript-fetch broken files when mixing basic types and refs in oneOf (#21057)
* feat: add test-array endpoint and TestArrayResponse schema to oneOf.yaml

* feat: enhance oneOf handling in TypeScript code generators with string and array support

* fix: correct type checks for string and object arrays in modelOneOf.mustache

* refactor: remove oneOfStringEnums handling and simplify oneOf logic in TypeScript code generators

* chore: update samples

* refactor: remove unnecessary string oneOf checks in TypeScriptFetchClientCodegen
2025-04-14 14:14:25 +02:00
Richard Jacks
79b1cc5d5e Update jQuery.min.js from 1.8.3 to 3.7.1 (#20977) 2025-04-13 23:06:00 +08:00
Beppe Catanese
c22d790249 [POSTMAN] Include response examples (#21073)
* Extract response examples

* Add response examples to spec

* Generate Postman samples

* Test samples
2025-04-13 22:22:27 +08:00
devhl-labs
ca1f02500f fixed subpath bug (#21081) 2025-04-13 18:50:26 +08:00
takashno
dcb8b1a2dc modify enum template. field should be final. add testcase & sample updates. (#21019) 2025-04-13 18:49:15 +08:00
jpfinne
4fc46cb0d4 Make the OpenAPINormalizer extensible (#20995)
* Make the OpenAPINormalizer configurable
Add comment to force rebuild

* Add documentation of NORMALIZER_CLASS

* Use default normalizeSchema() method and add a new skipNormalization method

* super.normalizedSchema() can proceed
2025-04-11 19:19:56 +08:00
Tanmay Mohapatra
b1de687c7f [julia] better serverside validation code (#21072)
* [julia] better serverside validation code

Updating the code generated for julia server to add more checks in the validation stage of incoming requests. Particularly adds checks for request body and required parameters. Updates the generated models with some helper methods that are used in validation filter.

* bump OpenAPI.jl version to use for CI
2025-04-11 02:00:29 +08:00
William Cheng
6da343a8ad update samples 2025-04-09 17:53:11 +08:00
Knuf
9c5722b9f6 Added HttpClient5 flavour to Java OpenFeign client generator. (#21007)
* Added HttpClient5 flavour to Java OpenFeign client generator.

* Converted templates intendation to spaces.

* Added the new sample folder to GH wf so that the CI can test the change.

* Added the missing auto-generated docs/samples files.

* Converted indentation to spaces also in the modified Java class.
2025-04-09 17:40:16 +08:00
William Cheng
86a8e52d08 Add tests for scala sttp client (jsonLibrary: circe) (#21061)
* add tests for scala sttp circe

* use jdk 11

* test with jdk 17

* fix

* test in circleci

* remove finch
2025-04-09 17:19:06 +08:00
Jorge Rodríguez Martín
89f0f7556f [Java][Spring] Ensure EnumConverterConfiguration.java is generated when interfaceOnly=true in Spring Generator (#21000)
* Ensure EnumConverterConfiguration.java is generated when interfaceOnly=true in Spring Generator

* Add samples
2025-04-09 17:10:39 +08:00
Julian Kalinowski
bf67367fa1 fix: kotlin multiplatform form-data enum params (#21053) 2025-04-09 09:15:28 +01:00
Basil Mironenko
4048942485 [BUG] [scala-sttp] [circe] Generate circe encoder and decoder for inline enumeration (#21028)
* Generate circe encoder and decoder for inline enumeration

* Add missing circe-generic dependency, and the corresponding circeVersion property.

---------

Co-authored-by: Basil Mironenko <basilm@mosaicpower.com>
2025-04-09 16:02:34 +08:00
Nicolas Rodriguez
6bf528950f [crystal-lang] Various fixes for Crystal client (#21045)
* fix(crystal): allow users to YAML.dump(model) to ease debug

* fix(crystal): make optional parameters truly optional

* fix(crystal): don't send query parameters when parameter is nil

* fix(crystal): implement cookie Auth

* fix(crystal): fix ameba warnings

* fix(crystal): update sample app specs
2025-04-09 15:04:00 +08:00
Enrique Fernández
dcd9463e88 [feat][elixir] use elixir 1.18 built-in json module (#21039)
* feat: replace jason by built-in json encoder/decoder

* chore: update samples
2025-04-08 12:47:37 +02:00
Curd Becker
7a3ea2872a Fix single quote escaping for python code generator (and its test) (#21021)
Hard to spot, but in Java the strings "'" and "\'" are identical, so
the implementation and its test were broken identically.
2025-04-08 01:10:09 +08:00
david-aeqium
63afd455f7 Fixes mapValues runtime inefficiency in typescript-fetch (#21047)
* fixes mapValues runtime inefficiency in typescript-fetch

* adds regenerated typescript-fetch samples
2025-04-07 10:02:59 +02:00
Tobias
047ceeaa45 Add unity 2019 support and update samples (#21036) 2025-04-07 01:02:14 +08:00
Juan Treminio
6b13ad522f [PHP] - Add range HTTP code support (#20992)
* [PHP] - Add range HTTP code support

* Adding response body to 200

* Fix diff; update php-nextgen sample

* Working on unit tests

* Removes dangling files

* Finalize tests

* Remove dangling files

* Add tests for no response body exception
2025-04-07 00:50:58 +08:00
Gijs Blanken
5f41acfe79 add #report when handling exceptions in the api (#21023) 2025-04-07 00:46:33 +08:00
Aran Donohue
b2abf36af6 feat: [Rust][client] Add option to use rustls for reqwest instead of openssl (#21001)
* feat: [Rust][client] Add option to use rustls for reqwest instead of openssl

* generated changes

Summary:

  ./bin/generate-samples.sh ./bin/configs/*.yaml || exit
  ./bin/utils/export_docs_generators.sh || exit
2025-04-07 00:42:23 +08:00
Andrew Wilson
9bac31859c Improving Misk Kotlin Server Generator (#20973)
* first pass

* fixing types

* fixing action

* updating samples

* updating files

* adding guido

* fixing misk

* removing old files

* cleaning generated files

* cleaning generated files

* adding back in license
2025-04-04 15:37:49 +08:00
William Cheng
04169ec29b update crystal samples 2025-04-03 01:39:13 +08:00
Nicolas Rodriguez
c4a6c4a542 [crystal-lang] Various fixes for Crystal client (#21011)
* fix(crystal): fix typos in Crystal templates

* fix(crystal): various fixes for partial_oneof_module.mustache Crystal template

1. `class << self` doesn't exist in Crystal, you must prefix class methods with `self.`
2. use double quotes for String litterals (simple quotes are for Char litterals)
3. global `private` keyword doesn't exist in Crystal, you must prefix private methods with `private`
4. you must specify types when using `each_with_object({})`

* fix(crystal): add isKeyInCookie in Crystal configuration.mustache

* fix(crystal): wrap `rescue` in a `begin`

* fix(crystal): use Spectator shard to run tests (`described_class` is not available in Crystal std lib)

* fix(crystal): dry tests

* fix(crystal): enable some API tests, mark others as pending

* fix(crystal): update samples

* fix(crystal): update sample app specs

* fix(crystal): install development dependencies
2025-04-02 20:19:25 +08:00
Simone Dalcastagné
c761f11a18 feat: avoid warning (#21012) 2025-04-02 10:29:13 +02:00
Tanmay Mohapatra
8375b96535 [julia] fix regex escape on server codegen (#21009)
* [julia] fix regex escape on server codegen

Fixed escaping of regex patterns on julialang server codegen.

* add comment for the escapeRegex method

* simplify
2025-04-02 13:50:30 +08:00
Bodo Graumann
8e329feb6a [typescript] Use static middleware when calltime options exist but specify no middleware (#20985)
* Keep static middleware when options contain no middleware field

* Regenerate samples

* Fix indentation and quotes

* Extract middleware merge logic into function

* Regenerate samples

* Simplify extracted functions

* Regenerate samples

* Fix: Pass static config when no options are given for inversify

* Fix: Allow overriding http api with options

* Regenerate samples

* Use default parameter for default middlware merge strategy

* Throw exception for failed match within switch block
2025-04-01 20:11:07 +02:00
Bodo Graumann
7881152dc8 [typescript] Avoid code duplication (#20978)
* Update test dependencies to make them run

* Use spaces instead of tabs

* Remove duplicate test

* Remove unused variable

* Add failing test for missing options

* Move config merge logic into shared function

* Regenerate samples

* Move option wrap logic into shared function

* Regenerate samples

* Inline wrapOptions call

* Regenerate samples

* Clean up code formatting

* Regenerate samples

* Separate mergeConfiguration definitions

* Regenerate samples

* Rename parameters

* Regenerate samples

* Add missing semicolon

* Revert inlining wrapOptions call

* Revert format changes in untouched lines
2025-04-01 13:13:54 +02:00
Ivan Vaskevych
a8d56fd8ce Fixes the non-working query parameter when it's an Enum (#20210)
* Fixes the non-working query parameter when it's a Enum

* Update modules/openapi-generator/src/main/resources/typescript/api/api.mustache

Co-authored-by: Alexey Makhrov <amakhrov@gmail.com>

* Fixes the tags order

* Adds Echo API client tests for typescript: step 1

* Adds Echo API client tests for typescript: step 2

* Updates samples

* Fixes updated samples

* Fixes the fix

* Fixes the example config

---------

Co-authored-by: Alexey Makhrov <amakhrov@gmail.com>
2025-04-01 10:13:27 +02:00
William Cheng
587fcff85c update java samples 2025-04-01 15:05:12 +08:00
Tomschi
4f3726ecfd #11737 Add package to bean name in converter.mustache for EnumConverterConfiguration.java (#17738)
* Add package to bean name in converter.mustache for EnumConverterConfiguration.java.

* Fix samples for EnumConverterConfiguration.java.
2025-04-01 14:48:14 +08:00
Trent Clever-Nadeau
56dd63525c [Rust-Axum] Allow use of array query params (#20861)
* [Rust-Axum] Allow use of array query params

* Add sample per PR request
2025-04-01 14:29:21 +08:00
lucy66hw
3b0bb0a73d [Protobuf Schema] Add Support for Multiple Response (#20989)
* Protobuf Schema Support Multiple Response

* change the supportMultiple response to true

* address build failure

* address build failure
2025-03-31 15:31:07 +08:00
Greg Knox
36287acfd6 [JAVA][BUG] formParams.mustache should contain @FormParam, not @QueryParam (#20991) (#20993)
* formParams.mustache should contain @FormParam, not @QueryParam (#20991)

* updated samples; form parameters are declared using @FormParam, not @QueryParam (#20991)
2025-03-30 22:37:06 +08:00
Juan Treminio
c6e2a5fa94 [PHP] - Removes trailing comma from ::flattenArray() (#20988)
* [PHP] - Removes trailing comma from ::flattenArray()

* Removes "mixed" type

* Missed one mixed
2025-03-30 01:08:52 +08:00
koenlavooij
5e5832d982 Javalin fixes and validation (#20981)
* Fix for problems when a nullable parameter has a default value

When a default value is present the parameter is moved to non-nullable. This works because we could replace the null with a default value. This will actually set the default value.

* Adds (optional) validation to the beans.

Option to set: `useBeanValidation` to `true`. This will insert validation rules from the `jakarta.validation` package much like it does with the spring generator.

Aso sneaked in `JsonProperty` annotations in order to more formally adhere to the name in the spec as opposed to configuring ObjectMappers in order to translate names to match the spec.

* Update samples

* Fix for required headerParams
2025-03-30 00:58:48 +08:00
hackerman
045a9c16b1 fix: support backwards compatible changes in discriminators (#20983)
Closes https://github.com/OpenAPITools/openapi-generator/issues/20982
2025-03-27 17:19:16 +01:00
Bruno Coelho
701b6bd576 [kotlin][client] make kotlinx serialization configurable (#20955)
* [kotlin][client] make kotlinx serialization configurable from outside

* [kotlin][client] make kotlinx serialization configurable from outside
2025-03-26 10:19:24 +00:00
Cameron Koegel
11c56117d2 [typescript-axios] Add Api and Model Docs (#20969)
* [typescript-axios] Add Api and Model Docs

* update templates for no `npmName`

* generate samples
2025-03-26 09:57:52 +01:00
William Cheng
bd9d93db89 minor improvements to kotlin musk generators (#20968) 2025-03-25 23:17:02 +08:00
Nicolas Vervelle
8ca3543436 Issue 20804: Add java nullability annotations (#20806)
* issue-20804: Add nullability annotations to Java generated clients

Motivation:
Be able to use generated clients in code checked by tools like NullAway.

* issue-20804: Add nullability annotations to Java generated clients

Motivation:
Be able to use generated clients in code checked by tools like NullAway.

* issue-20804: Add nullability annotations to Java generated clients

Motivation:
Be able to use generated clients in code checked by tools like NullAway.
2025-03-25 23:01:17 +08:00
Andrew Wilson
d81b5a37d1 #20883 - Add new Misk Kotlin OpenAPI Generator (#20885)
* first pass

* Fix extra new line

* adding generator file

* Run new.sh script

* Fix template directory and ignore failing tests

* fixing up content type

* adding controller impl

* cleanup interface

* typo

* removing bodytype

* adding protos

* fixing 2

* Fix headerParamsSimple

* removing protos etc.

* fixing imports

* removing commented code

* fixing imports

* fixing return

* fixing file

* adding comment

* remove adminapi

* move to jakarta

* reverting break

* fixing httpMethods

* pushing mediaTypes

* Adds gradle mustache templates

* Setup simple build.gradle.kts

* Adds basic model.mustache for model generation

* fixing summary

* fixing summary 2

* Removes unnecesssary line

* fixing return type

* fixing override

* fixing httpcall

* Delete proto folder creation

* fixing return type

* fixing void return type

* fixing space

* removing reactive

* removing imports

* Fixing spacing

* Fixing tabbing

* fixing headers

* add comment

* Adds unit tests

* cleanup

* Correct getHelp() description

* cleanup 2

* removiing pathParams files

* fixup

* fixup 3

* removing more files

* Adds GitHub Workflow generation

* removing form params as not required

* Adds tests for OptionsProvider

* Renamed file to match

* remove whitespace

* remove whitespace

* adding documentation

* adding documentation

* removing swagger annotations

* adding tests

* Adds Guice Module

* Grab OpenAPI title to generate module name

* Revert "Grab OpenAPI title to generate module name"

This reverts commit 9c9b935f5dbee6e0974ebf66b4f611f107df70c2.

* Update sample

* Removes moduleFileName additional property

* adding tests

* adding tests 2

* adding tests 3

* adding tests 4

* added media types

* re-adding tests

* fixing camelcase

* fixing mediatypes

* default mediatype

* adding validation

* adding validation

* removing swagger

* adding gradle dependency

* adding gradle dependency

* fixing types

* fixing return types

* fixing tests

* final fixes

* tweaks

* fixing file etc.

* Update samples/ folder

* fixing jakarta

* fixing jakarta 2

* fixing impl

* Fix unit tests

* fixing jakarta

* fixing jakarta 2

* final final final changes

* Fix initialization of BigDecimal for default values

* update samples, docs

* fixing RequestHeader

* fixing RequestHeader 2

* fixing RequestHeader 2

* add validateSpec=false

* fix pom version

---------

Co-authored-by: Guido Arnau <guido@squareup.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-03-25 22:43:30 +08:00
lucy66hw
c8cfa16a48 Add options to aggregate protos to one file (#20962) 2025-03-25 22:35:48 +08:00
Daniel Schreiber
16552755bf feat(typescript-angular): update enum definitions to use 'as const' for improved type safety (#20958)
fixes #20809
2025-03-24 17:46:04 +01:00
Simon Podlipsky
07e5a674db fix: escape operationIds before outputting them (#14475) 2025-03-24 14:19:58 +01:00
DavidGrath
0becb3feb7 [typescript-fetch] to fix incorrect parsing with additional properties (#20923)
* Fix issue #20195

* Ran export_docs_generators.sh

* Generated path separators fixed

* Trigger Build
2025-03-24 14:18:53 +01:00
Calvin Bascom
cd2fbd6ff4 Add support for normalizing bearerAuth (#20860)
The openapi 2.0 spec did not support bearer authentication but it was
added in openapi 3.0. In order to support client generation that
includes support for bearerAuth, this change adds a new feature to the
OpenapiNormalizer so that it can be configured to look for a specific
securityDefinition name and convert it to bearerAuth.
2025-03-24 19:39:40 +08:00
devhl-labs
550e31775d [csharp][generichost] Fixed subpath (#20896)
* fixed path

* reverted part of change
2025-03-24 15:47:07 +08:00
Simon Podlipsky
62b176e95d feat(php): drop support for EOLed PHP versions and unify min required version (#17826) 2025-03-24 13:59:01 +08:00
kenji yoshida
7d977b63dc Update scala version (#20953) 2025-03-24 13:55:46 +08:00
devhl-labs
34c6c583cc [csharp][generichost] Fixed string formatted as decimal (#20894)
* fixed string formatted as decimal

* build tests
2025-03-23 22:44:12 +08:00
William Cheng
8756ff7596 update samples 2025-03-23 21:50:11 +08:00
Jan van Rhijn
2ec6b53dfa Fix issue with nullable values not validated when value is null Bug: 20525 (#20549)
* Do not check for token type null

* Update docs

* Fix CS8957 Target-Typed Conditional Expression

* Update samples

* Fix compile errors

* Update docs

---------

Co-authored-by: Jan van Rhijn <jan.vanrhijn1@akzonobel.com>
2025-03-23 21:45:15 +08:00
Dimitar Tomov
08ec37cc10 [kotlin-spring] Generate @Valid annotation on all RequestParts/Params for Multipart requests when useBeanValidation=true (#20864)
* [kotlin-spring] Generate @Valid annotation on all RequestParts/Params for Multipart requests when useBeanValidation=true

* [kotlin-spring] Fix failing test

The test was failing because of the newly added @Valid and an assert which is not correct anymore.
2025-03-23 18:31:18 +08:00
Youri Westerman
73b6b7084f Drop python 3.8 support python 3.13 in python generator (#20909)
* Drop support for python 3.8 and add support for 3.13 in python generator templates

* Update docs

* Test samples without python 3.8 and with 3.13

* Generate samples
2025-03-23 18:10:32 +08:00
kenji yoshida
c749919812 fix deprecated old sbt build file syntax (#20949) 2025-03-23 18:03:29 +08:00
kenji yoshida
866558f9e7 Update sbt version (#20948) 2025-03-23 13:13:30 +08:00
kenji yoshida
24d2083684 update scala-akka-http-server generator (#20924) 2025-03-22 16:53:03 +08:00
Pavel
868074212a [Java] Extend JavaSpring apiClient.mustache with option to override contextId for FeignClient (#20943) 2025-03-22 11:36:30 +08:00
lucy66hw
f3999109cb protobuf import format (#20946) 2025-03-22 10:00:01 +08:00
martin-mfg
f39675b41a cleanup (#20937) 2025-03-21 15:15:50 +08:00
Bruno Coelho
22b678764c [Swift][client] fix parameters encoding (#20934)
* [Swift][client] fix parameters encoding

* [Swift][client] fix parameters encoding
2025-03-20 12:29:58 +00:00
takashno
6e3b1996ed [java][spring] add useSpringBuiltInValidation option to disable @Validated at class level (fix #20899) (#20901)
* [java][spring] add useSpringBuiltInValidation option to disable @Validated at class level (fix #20899)

* Add sample and github workflow maintenance.
2025-03-20 17:41:02 +08:00
Juan Treminio
a4072c5ea9 [PHP] Bring PSR-18 composer.json inline with main (#20897)
* [PHP] PSR-18 composer.json to use composerPackageName

* Bring PSR-18 composer.json inline with main
2025-03-20 17:39:50 +08:00
Mihály Verhás
20db1e1590 Fix src/main/resources/JavaSpring/pojo.mustache to generate @Deprecated annotation unrelated to description. (#20905)
Co-authored-by: Verhas Mihaly <mihaly.verhas@intuitech.studio>
2025-03-20 13:54:08 +08:00
lucy66hw
1996d7e8fc [protobuf-schema] Add flag to handle complex type (#20915)
* Wrap Complex Type

* update

* Add java doc and update test

* change default wrapComplexType to true

* add protobuf-schema-config-complex to CI

* add service proto to address CI failure
2025-03-20 13:22:40 +08:00
Enric Pou
a2ee3a7cfc [dart-dio][timemachine] Bugfix: Ensure closing bracket when adding serializers (#20908)
* Ensure closing bracket when adding serializers

* Added samples
2025-03-20 01:30:51 +08:00
Juan Treminio
8f24df4165 [PHP] Fix converting objects to formdata (#20888)
* Output of CLI commands per PR comments

* Rebuilding PHP examples, PSR-18

* Rebuilding PHP examples

* Adds explanation for ::flatten_array(); optimized array_is_list pollyfill

* [PHP] Fix converting objects to formdata

* flatten_array -> flattenArray to match code style

* Adds unit test

* Revert "Output of CLI commands per PR comments"

This reverts commit 2eaa93731c.

* Includes php-nextgen; tightens up ::toFormValue()

* Missing ArrayAccess import

* Adds test for refactored ObjectSerializer::toFormValue()
2025-03-19 15:39:57 +08:00
William Cheng
8a8bacd0d5 udpate global setting tests (#20925) 2025-03-19 15:29:39 +08:00
dependabot[bot]
69e4336f67 Bump actions/setup-dotnet from 4.3.0 to 4.3.1 (#20916)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.3.0...v4.3.1)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-18 13:15:49 +08:00
Bruno Coelho
298d6c2200 [Swift][client] make alamofire version more flexible and build projects on CI before running unit tests (#20913)
* [Swift][client] CI first build the projects then run the unit tests

* [Swift][client] make alamofire version more flexible
2025-03-17 21:05:43 +00:00
Bruno Coelho
4c1257a2b6 [Swift][client] add identifier to each request (#20890)
* [Swift][client] add identifier to each request

* [Swift][client] add identifier to each request

* [Swift][client] CI first build the projects then run the unit tests
2025-03-17 21:05:21 +00:00
Lennard Sprong
31c1a86736 [swift6] Change JSONEncodable protocol to always return String (#20906)
* [swift6] Change JSONEncodable protocol to always return String

* [swift6] Upgrade Alamofire

* Add missing @Sendable attributes

* Fix APIHelperTests

* Fix URLSessionImplementations
2025-03-17 15:53:22 +00:00
Lennard Sprong
1eb8c58446 [swift6] Add typed throws to Validation functions (#20903) 2025-03-17 15:11:25 +00:00
Robinsstudio
02307dbf0c fix: #20826 Update urllib3 requirement for Python generator (#20845)
* fix: #20826 Update urllib3 requirement for Python generator

* Fix test to use localhost instead of petstore.swagger.io
2025-03-17 18:26:57 +08:00
cagliostro92
995c6c5a88 fix(openapi-generator): fixes GlobalSettings (#20744)
* fix(openapi-generator): fixes GlobalSettings class to avoid ClassCastException when GlobalSettings#log is invoked

* fix(openapi-generator): sets GlobalSettings log level to debug
2025-03-16 22:03:03 +08:00
Yobyn Roetz
191eba4afa replace all UriComponentsBuilder.fromHttpUrl() with UriComponentsBuilder.fromUriString() because UriComponentsBuilder.fromHttpUrl will be removed in the near future. (#20893) 2025-03-16 16:04:04 +08:00
Jarangutan
b1f572e116 [go-server] move errMsg helpers to helpers file (#20876) 2025-03-15 21:27:56 +08:00
dependabot[bot]
1c1365513f Bump @babel/helpers from 7.20.13 to 7.26.10 in /website (#20867)
Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.20.13 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-helpers)

---
updated-dependencies:
- dependency-name: "@babel/helpers"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-13 23:26:24 +08:00
dependabot[bot]
a3fb8f59f8 Bump dorny/test-reporter from 1 to 2 (#20862)
Bumps [dorny/test-reporter](https://github.com/dorny/test-reporter) from 1 to 2.
- [Release notes](https://github.com/dorny/test-reporter/releases)
- [Changelog](https://github.com/dorny/test-reporter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/dorny/test-reporter/compare/v1...v2)

---
updated-dependencies:
- dependency-name: dorny/test-reporter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-13 18:47:34 +08:00
Pietro Bongiovanni
5c51ee49a2 [Rust Server] Bump up env_logger to 0.11 (#20865)
* Bump up env_logger to 0.11

* regenerate examples

* regenerate examples
2025-03-13 18:45:50 +08:00
William Cheng
3ab495a0aa Fix operationId mapping (#20846)
* fix operationId mapping

* add tests

* minor change
2025-03-12 20:28:18 +08:00
William Cheng
e40f9e3801 update C# samples 2025-03-12 18:18:16 +08:00
Jacob Ilsø
7f40ce0dd8 Use interfaces for Polly retry policies (#20821)
This enables use of ResiliencePipelineBuilder which returns the
interface when calling AsSyncPolicy / AsAsyncPolicy
2025-03-12 16:49:03 +08:00
Josh Keighley
7d9e1ecc22 Bump feign version to 13.5 from 10.12. (#20849) 2025-03-12 16:35:36 +08:00
Daniel Schreiber
8ead4b6e3f [typescript-angular] fix: correctly serialize query params objects (#20850)
fixes #20799
2025-03-12 09:22:49 +01:00
William Cheng
0e34d39833 add tests, option for useVirtualHooks (csharp) (#20837) 2025-03-11 00:02:30 +08:00
mahmoud_ zeyada
21be5f5abc fix(typescript-nestjs): handle query params serialization properly (#20755)
* fix(typescript-nestjs): handle query params serialization properly

* fix(typescript-nestjs): updated the samples for param serialization fix
2025-03-10 16:07:21 +01:00
Jarangutan
4ad76cc86c [go-server] Moved helper code from router and updated logger for chi (#20823)
* [go-server] Moved helper code from router and updated logger

* [go-server] fixed imports for mux and chi

* [go-server] fix go-api-server sample test
2025-03-09 15:47:11 +08:00
Sam Ward
e8ae249cad [csharp] Add useVirtualForHooks option (#20705) 2025-03-08 17:30:58 +08:00
Brian Ferri
cde0f551fc [PHP-NEXTGEN] make allowable values enum getter static (#20820)
* [PHP-NEXTGEN] make allowable values enum getter static

* [PHP-NEXTGEN] make allowable values enum getter static
2025-03-08 16:39:48 +08:00
William Cheng
7f64246b20 use nim own petstore test spec (#20819) 2025-03-07 15:35:50 +08:00
lucy66hw
b528e4a7a7 [protobuf-schema] Support oneOf and AnyOf (#20798)
* handle primitive oneof

handle anyof

* Add oneof and anyof test in petstore
2025-03-07 15:10:07 +08:00
martin-mfg
74e49ac1d2 use java.io.Serializable (#20815) 2025-03-07 00:17:06 +08:00
Daniel Schreiber
ce0c0dcab0 [typescript-angular] fix: update basePath initialization to use template variable (#20816)
fixes #20760
2025-03-06 17:05:20 +01:00
David
ba2e50519d improve documentation for RESOLVE_INLINE_ENUMS (#20812)
related to #20790
2025-03-06 18:28:45 +08:00
jpfinne
ffa196e6a9 Add x-implements for java enums (#20778) 2025-03-06 01:59:55 +08:00
Tyler Mairose
36b72052e6 Add tag and method filters during generation (#20801)
* Add Filter by tag and method under OpenAPINormalizer

* Update message for invalid filters

* Update customization documentation with new filters

* Add comment for new code block
2025-03-06 01:49:47 +08:00
Julien Debon
123119c076 Add the dependencies in the generated Opam file (#20805) 2025-03-05 19:38:41 +08:00
William Cheng
890c758fd8 Add github workflow for OCaml samples (#20802)
* add github workflow for ocaml sample

* trigger build

* test with 5

* install dune

* install yojson

* install others

* install

* add name

* trigger build failure

* Revert "trigger build failure"

This reverts commit be35b26a83.

* test with 5

* pin versions
2025-03-05 18:07:44 +08:00
sabra
f2bbb9e0a2 [java] generateClientAsBean for restclient and webclient (#20754)
* [java] generateClientAsBean for restclient and webclient

Added possibility to generate restclient and webclient as a @Component in the same fashion as resttemplate.

Fix #17885
Fix #19229

* - Samples
2025-03-05 17:50:24 +08:00
Jakob Warkotsch
efc53f5d47 [JavaScript] Avoid undefined headers with skipDefaultUserAgent enabled (#20792)
Prior to this commit, a JS client generated with skipDefaultUserAgent
enabled results in a src/ApiClient.js file that doesn't define
this.defaultHeaders. This breaks because this.defaultHeaders is later
directly passed to a superagent request which expects an object and not
undefined.

Fixes #20791.
2025-03-05 17:36:07 +08:00
Julien Debon
0f13dfedb9 [OCaml] Fix default optional list (#20789)
* Cleanup the existing model template

* `{{^isContainer}}foobar{{/isContainer}}{{^isContainer}}` is equivalent to `{{^isContainer}}foobar`
* Add indentations to make it easier to read the template. The generated code is
uglier, but it is ok since users are encouraged to reformat anyway

* Add a default value for non-required lists

Closes https://github.com/OpenAPITools/openapi-generator/issues/20777
2025-03-05 01:41:21 +08:00
lucy66hw
c96d3088c5 [protobuf-schema] Use snake_case for protobuf fields, UPPER_SNAKE_CASE for enums. (#20696)
* protobuf enum prefix use upper underscore

Add json name parameters and change parameter field name to snake case

* rerun generate-samples.sh

* Add CI test

* rebase master

---------

Co-authored-by: xil <xil@uber.com>
2025-03-04 17:18:07 +08:00
Julien Debon
90de8dcd75 [OCaml] Add key to each model field (#20766)
* Add key to each model field

Add a `[@key "someField"]` annotation to each model field, to avoid mismatches when the JSON field is not in snake_case.

Closes https://github.com/OpenAPITools/openapi-generator/issues/20765

* update ocaml samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-03-04 16:49:27 +08:00
martin-mfg
a018c10c70 fix Maven plugin tests (#20782)
* fix maven test

* fix another maven test
2025-03-04 10:42:44 +08:00
Ron Reynolds
2cff152e2a adding Intellij style xml and applied to all java code (#20734)
* added intellij-codestyle.xml and sample of it being applied to some java code-gen classes

* code-format changes ONLY

* few more format changes since last merge with master

* applied code-style to all java one last time
2025-03-04 01:44:48 +08:00
William Cheng
3ad5303f99 update samples 2025-03-03 19:29:07 +08:00
martin-mfg
2b8d496c80 [#19921] Add RFC 3339 compatible Jackson module for java.time types, regenerate samples (#20700)
Co-authored-by: Christian Beikov <christian.beikov@gmail.com>
2025-03-03 17:42:18 +08:00
Ron Reynolds
5cef0803b8 Java client enhanced Configuration with ApiClient Supplier (#20738)
* enhanced Configuration.mustache (thread-safe, lazy-eval, plugable factory

* removed comment in Configuration.mustache

* fresh samples
2025-03-03 13:52:10 +08:00
sandwoodK
e0b6b2bbc7 Fix nim code generation (#20752)
Same variable name declared multiple times in the same scope.
=> nim generated code does not compile.
2025-03-03 13:50:19 +08:00
Iurii Ignatko
af536f6205 Finalize [this-escape] warnings fixes in apache-httpclient (#20774) 2025-03-03 13:01:08 +08:00
Han van Venrooij
ecdd8b5442 Upgrade plexus-build-api (#20759) 2025-03-03 10:33:18 +08:00
Simone Dalcastagné
70df1170cc fix: authorization values in Java modules (#20644) 2025-03-02 23:39:37 +08:00
Ross Sullivan
85ab65c4ca Fixed allOf with only one model (#20716) 2025-03-02 23:33:00 +08:00
William Cheng
a79aad8420 Prepare 7.13.0 (#20758)
* Revert "v7.12.0 release"

This reverts commit 073723cb4d.

* set version to v7.13.0-SNAPSHOT

* update samples

* update doc
2025-02-28 13:48:36 +08:00
William Cheng
afc27ef4bc v7.12.0 release (#20757) 2025-02-28 12:12:26 +08:00
William Cheng
6e9a0559a8 [csharp] Set generichost as default (#20748)
* set generichost as default

* revert a java change

* comment out a java test

---------

Co-authored-by: devhl <shawnkanyer@gmail.com>
2025-02-27 18:06:27 +08:00
William Cheng
1c3eade94d [java][spring] Add option optionalAcceptNullable to accept null values (#20746)
* add option to rollback accept null values

* update doc

* update tests
2025-02-27 17:21:51 +08:00
David Gamero
fc00a663e1 [typescript] middleware import file extension in api types (#20745)
* middleware import extension fix

* fix file extension

* remove laravel lib
2025-02-27 09:22:38 +01:00
David Gamero
b3f11963c3 [typescript] add call-time middleware support (#20430)
* add call-time middleware

* update dependencies to run on current tsc

* exclude middleware from inversify

* update samples

* update service

* space

* inversify exclude

* braces

* import in objectparamapi

* add integration test for middleware

* switch to configuration options merge

* enable options on non inversify builds

* remove unused middlware export

* remove merge strategy from inversify

* gen samples

* remove old middlware imports

* tab to space

* separate promise and observable options

* gen samples

* use allmiddleware var across inversify

* generate encode samples again

* add middleware call-order tests for default typescript build

* type refactor

* add semicolons, default replace, let to const

---------

Co-authored-by: david <david@dmba.local>
2025-02-26 11:33:21 +01:00
Mattias Sehlstedt
60bae732d3 SingleRequestParameter setter parameter construction (#20679)
* Add so that the singleRequestParameter can be constructed one parameter at a time

* Replace the lombok EqualsAndHashcode with a mustache implementation

* Remove equals and hashcode from oneRequestParameter model

* Remove the final keyword from variables in the oneRequestParameter class
2025-02-26 17:27:30 +08:00
jeremytrips
275107e3f1 Updated BaseService and service arguments in the mustache files to fix #20732 (#20736)
* Updated BaseService property

* removed unused depencies

* Add test files
2025-02-26 10:18:13 +01:00
wandi34
fb7aa580bf [Java][RestClient] Enable access token refresh (#20733) 2025-02-26 17:05:50 +08:00
Elric Milon
481c69063d [Rust] Fix enum variant name generation (#20689)
* Regression test for enum Name generation in oneOf

where variants would end up having the same name.

* Fix enum variant name generation

Datatypes like `Vec<foo::bar::Baz>` would end up as `Baz` instead of `VecOfBaz`
2025-02-26 16:57:43 +08:00
Michael Munch
57b1c91d17 Added support for Cookie parameters (#20729)
Co-authored-by: Michael Munch <mmu@bankdata.dk>
2025-02-26 16:52:12 +08:00
Sergey Yelin
c529b16600 Fix crash on escaped type in erlang-server handler (#20735) 2025-02-26 16:34:37 +08:00
Sergey Yelin
32573f7464 [erlang] erlang-server generator fixes (#20717)
* Improve perfomance for map updates

* Fix key authorization crash

* Update samples
2025-02-26 16:19:11 +08:00
abrevet-dev
8040e9aae9 Add openapi-normalizer rule to set tags to vendor extension (#20713) 2025-02-26 16:18:17 +08:00
Fabian Buchenberger
5581a2dd2c [csharp][generichost] fix syslib1045, use GeneratedRegex for .net7+ (#20695)
* [csharp][generichost] fix SYSLIB1045 for ClientUtils

 * make JsonRegex private

 * on net7 and above use GeneratedRegex for JsonRegex

 * remove unused SanitizeFilename-Method

* [csharp][generichost] regenerate samples
2025-02-26 16:07:43 +08:00
micolous
30787a16fb [Python] Add ca_cert_data parameter (#20697)
* Add `ca_cert_data` parameter to Python client.

This lets a client validate a server's CA certificate chain using a
variable/constant containing PEM (`str`) or DER (`bytes`) data, rather than
needing to reference a file on disk.

* python: Fix `ca_cert_data` on Python 3.8
2025-02-26 16:04:32 +08:00
Sander Jochems
5757def39b Implement GetActualInstanceValue method (#20663) 2025-02-26 15:54:41 +08:00
Maksim Kosolapov
09df01501a [kotlin][client] Explode query param properly (#20714) 2025-02-26 15:52:03 +08:00
Daniel Schreiber
5f92de4785 [typescript-angular] refactor service classes for reduced bundle sizes. (#20681)
This reduces bundle sizes of ESM bundles on the order of 20%.
2025-02-25 13:07:14 +01:00
moznion
9537a7fb46 [typescript] Prevent generating invalid enum code due to empty variable names (#20699)
* [typescript] Prevent generating invalid enum code due to empty variable names

After sanitizing all characters (e.g. multibyte characters), the enum variable name may become an empty string.
Since an empty string would cause a syntax error, this patch pads the pseudo variable name (`STRING`) to avoid that issue.

For example, given the following OpenAPI definition:

```yaml
openapi: "3.0.0"
info:
  title: Sample project
  version: '1.0'
  description: 'Sample API Check "API Key" '
  license:
    name: Apache 2.0
    url: 'https://www.apache.org/licenses/LICENSE-2.0'
paths: {}
components:
  schemas:
    Greeting:
      type: string
      enum:
        - 'こんにちは'
        - '你好'
        - '안녕하세요'
```

The current logic generates the following code for Greeting:

```typescript
export enum Greeting {
     = 'こんにちは',
    2 = '你好',
    3 = '안녕하세요'
}
```

This code is invalid. With this patch, the generated code becomes:

```typescript
export enum Greeting {
    STRING = 'こんにちは',
    STRING2 = '你好',
    STRING3 = '안녕하세요'
}
```

Signed-off-by: moznion <moznion@mail.moznion.net>

* Remove unnecessary imports

Signed-off-by: moznion <moznion@mail.moznion.net>

* Use new sanitizer for TypeScript symbol which takes wider variety characters for enum var name

Signed-off-by: moznion <moznion@mail.moznion.net>

---------

Signed-off-by: moznion <moznion@mail.moznion.net>
2025-02-25 12:58:27 +01:00
William Cheng
a06a2b4c7b update samples 2025-02-23 20:55:18 +08:00
Gus Costa
a56d032edf docs(nodejs-express-server): fix default port number in README (#20706)
Update README to correctly show 8080 as the default port instead of 3000.
This matches the actual server configuration in config.js where the
server listens on port 8080 by default.
2025-02-23 20:51:45 +08:00
William Cheng
db6709fdb3 Update readme (#20712)
* update author list

* add links to blog posts

* update
2025-02-23 18:44:16 +08:00
Ross Sullivan
670e9d7099 [rust] Fixed discriminator causing duplicate enum variants (#20711)
* Fixed discriminator

* Added testcase and updated samples
2025-02-23 17:50:04 +08:00
Ruslan Khasanshin
79145dc633 [kotlin-spring] Adds 'suspend' modifier for reactive List endpoint with useFlowForArrayReturnType = false (#16130) (#20710) 2025-02-23 17:35:08 +08:00
William Cheng
b80461373a update nodejs express server samples 2025-02-23 17:32:16 +08:00
Gus Costa
86a293e0b6 fix(nodejs-express-server): update express-openapi-validator to v4 (#20704)
Update express-openapi-validator from v3 to v4 to support Node.js versions >14.
This includes:
- Upgrade express-openapi-validator dependency in package.json
- Modify server startup code to accommodate v4 API changes
- Update controller implementation to handle breaking changes

The changes ensure compatibility with modern Node.js versions while maintaining
the generator's functionality.
2025-02-23 17:27:33 +08:00
William Cheng
cea3c5ba09 update nodejs express server samples 2025-02-22 23:15:00 +08:00
Gus Costa
f83b049fe6 fix(nodejs-express-server): remove unused axios dependency (#20707)
Remove axios from package.mustache as it's not used in the starter build.
This eliminates potential security vulnerabilities (ReDos & SSRF) from
the dependency tree without affecting functionality.
2025-02-22 23:10:46 +08:00
Ross Sullivan
28c7b9b956 [rust] fixed compiler errors for decimal types (#20708) 2025-02-22 22:58:26 +08:00
Sylvain Joubert
0ff8c46595 [Python] Fix mustache tag syntax in github worklow (#20701) 2025-02-21 17:43:17 +08:00
Ron Reynolds
13111077d4 Java client codegen cleanup (#20691)
* made Configuration.defaultApiClient volatile so that if it's changed the new value is immediately visible to all other threads

* made no-arg api ctor use Configuration.getDefaultApiClient() instead of creating new ApiClient every time

* replaced all use of URLEncoder.encode with ApiClient.urlEncode; just code cleanup; no functional changes

* disabled AbstractJavaCodegenTest.testGeneratedExampleValues as it fails, possibly due to timezone (Locale.ROOT) of local system

* replaced thread-unsafe SimpleDateFormat with DateTimeFormatter and re-enabled unit-test

* removed unused import

* ran the generate-sample scripts and generated a HUGE number of changes!

* some code cleanup and adding booleans to processOpts to remove lots of duplicate FOO.equals(getLibrary()) checks; also using isLibrary() wherever possible

* added missing import of Configuration to api.mustache (and, thus, all native samples)

* added missing import for ApiClient to anyof and oneof model mustaches

* rolled back formatting of cliOptions block (too many changes for a simple PR)

* use toLowerCase with locale

* reverted supportedLibraries reordering and format changes to reduce diff noise

* updated comment

* rolled back Slf4j change due to failing arch-unit test; also rolled back serialization-lib setting code due to unit-test failure (still a mystery)

* moved lib* booleans AFTER super.processOpts() the library can be changed (as shown by unit-test)
2025-02-20 18:16:40 +08:00
Christian Munier
73079c2ef6 Fix #20692 [typescript-angular] Support enumDescription / x-enum-descriptions (#20693)
* #20692 [typescript-angular] Added x-enum-descriptions to "composed-schemas" example.

* #20692 [typescript-angular] Respect x-enum-descriptions / enumDescription in modelEnum mustache template.

* #20692 [typescript-angular] Regenerated samples.
2025-02-20 11:04:00 +01:00
Erik VanderWerf
9374dbd030 Add option to skip merging spec files (#19396)
Introduced a new property `inputSpecRootDirectorySkipMerge` to conditionally skip the merging step of the specification files. Updated the logic to honor this new property, ensuring merging only occurs if it is explicitly not skipped. Enabled configuration via Gradle build file.
2025-02-19 17:28:03 +08:00
Jonathan Martens
890c37fd77 fix: display of markdown in notes section (#20534)
* fix: display of markdown in notes section

* update samples

* skip blank lines

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-02-19 17:15:29 +08:00
Dragos Vingarzan
c2884b7b1a [BUG][Go-server] attempt to fix the controller-api mustache template for a nullable bodyParam (#20478)
* go-server: attempt  to fix the controller-api mustache template for a nullable bodyParam

* added to petstore an example to trigger the issue which this PR fixes
2025-02-19 17:09:32 +08:00
Alex
cd7cdb1e24 Add option to generate a fully sealed model in the JavaSpring generator (#20503)
* Generated sealed interfaces for oneOf

* Add generated data

* Add also  modifier

* Allow sealed for everything

* Fully seal model

* Disable html escaping

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>

* Update docs

* Check all oneOf scenarios

* Fix failed scenario

* Fix comments

* Remove unused import

* Adapt pom.xml also

* Add comment and remove unused function

---------

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2025-02-19 15:15:09 +08:00
Victoria Casasampere Fernandez
d5866feb2d [Rust-Axum] Implement support for Basic and Bearer auth in Claims (#20584)
* Implement a custom error handler for unhandled or generic endpoint errors

* Pass in method, host and cookies to error handler

* Update axum to 0.8

* Make API methods take references instead of ownership

* Rebase error handler

* Rebase with updated error handler

* Update deps

* Fix capture group syntax

* Rebase rust-axum-error-handling

* Update docs

* Multipart is also part of the axum update

* Update samples

* Update docs
2025-02-19 14:48:28 +08:00
Ron Reynolds
eb668b6a76 reuse Configuration.defaultApiClientin no-arg Api ctors and make ref volatile (fixes issue #20633) (#20635)
* made Configuration.defaultApiClient volatile so that if it's changed the new value is immediately visible to all other threads

* made no-arg api ctor use Configuration.getDefaultApiClient() instead of creating new ApiClient every time

* replaced all use of URLEncoder.encode with ApiClient.urlEncode; just code cleanup; no functional changes

* disabled AbstractJavaCodegenTest.testGeneratedExampleValues as it fails, possibly due to timezone (Locale.ROOT) of local system

* replaced thread-unsafe SimpleDateFormat with DateTimeFormatter and re-enabled unit-test

* removed unused import

* ran the generate-sample scripts and generated a HUGE number of changes!

* added missing import of Configuration to api.mustache (and, thus, all native samples)

* added missing import for ApiClient to anyof and oneof model mustaches
2025-02-19 14:47:55 +08:00
Yuji Hanamura
c349270c7a [Ruby] Fix ruby client generator to generate setter methods with not null validation (#20672)
* fix: Fix ruby client generator to generate setter methods with not null validation

Not null validation was missing for required and non-nullable properties when
no other validation was present.

* fix: Fix an issue where the initialize method did not accept attributes defined in its parent class
2025-02-19 14:46:44 +08:00
William Cheng
61ae569149 update doc 2025-02-19 14:37:12 +08:00
lucy66hw
4883de51c1 enum zero index is UNSPECIFIED suffix (#20473)
Co-authored-by: xil <xil@uber.com>
2025-02-19 14:30:53 +08:00
Ross Sullivan
2722fdcdc8 [RUST] chore: Clean up Rust reqwest and model templates (#20674)
* Cleaned up rust-reqwest-trait api template

* Cleaned up rust-reqwest api template

* Cleaned up rust model template
2025-02-18 16:58:12 +08:00
William Cheng
8fb81ea554 update python samples 2025-02-18 16:51:17 +08:00
Joost Sijm
5687edcf02 [python] Encode list query parameters for python pydantic v1 client (#20614)
* Fix url escape quote in python pydantic v1 client

* Fix sample
2025-02-18 16:46:14 +08:00
Gijs Blanken
65df3c22b9 Rewrite the PHP Laravel generator (#20526)
* remove legacy laravel generator

* initial setup of my vision for the laravel generator

* update the php laravel samples

* update php laravel docs

* moved api validation into controller and handle edge cases presented by sample generation

* updated samples

* added php-laravel to github workflow php8 and removed php7 workflow as it only contained old laravel

* preemptive work to support union types as soon as php serde supports them

* updated samples

* update templates in accordance to samples output

* fix pipelines and update samples

* correct serde version

* fixed phpunit execution and updated samples

* added named routes

* remove

* readd samples

---------

Co-authored-by: gijs.blanken@futureof.finance <gijs.blanken@finly.nl>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-02-17 21:50:13 +08:00
Karsten Leonhardt
c5863629c0 Bugfix #17149: Asciidoc generator sets not defined example values wrongly to the string value "null" instead of the expected not set value (#20670)
Co-authored-by: Karsten Leonhardt <karsten.leonhardt@commerzbank.com>
2025-02-17 21:18:37 +08:00
Carlos Chacin
a6280d9b58 [java][client] fix: Add static modifier to inner class in Java when useSingleRequestParameter=true (#20590)
* fix: Add static modifier to inner class

* Apply suggestions from code review

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>

* fix: Remove unintended whitespace

* fix: Add default=false for useSingleRequestParameter

---------

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2025-02-17 20:02:01 +08:00
Ross Sullivan
4ba87ae0e7 [rust] Added support for text/plain to reqwest clients (#20643)
* [rust] Added support for text/plain to reqwest-trait client

* Updated samples

* [rust] Added support for text/plain to reqwest client

* Updated samples

* cleanup

* reduced compiler warnings

* fixed text/plain content with charset

* Only deserialize text/plain if the API produces it
2025-02-17 20:00:43 +08:00
Maxime Vincent
515c8827b2 Ruby fix typhoeus api client multiple call with file return type (#20615)
* [Ruby] fix Typhoeus api client multiple call with file return type

* update samples
2025-02-17 19:58:53 +08:00
Trent Nadeau
c5fb60b5f2 [Rust-Axum] Fix rustfmt error due to ordering (#20653) 2025-02-17 19:55:20 +08:00
mohamuni
07b5c5fc70 Handle query param encoding issues in .net9 (#20651) 2025-02-17 19:30:56 +08:00
João Brilhante
8167aa1852 [java][feign] Fix model combining properties and additional properties (#19713) 2025-02-15 02:16:46 +08:00
João Brilhante
c3c2e7aeca [java][webclient] Fix model combining properties and additional properties (#19711) 2025-02-15 00:15:22 +08:00
João Brilhante
a5c9c6d531 [java][resttemplate] Fix model combining properties and additional properties (#19706) 2025-02-15 00:13:13 +08:00
William Cheng
dd67423c8c update samples (#20647) 2025-02-12 17:57:18 +08:00
zaenk
3eddc9af85 [JavaSpring, kotlin-spring] attach sources when maven and interfaceOnly=true is used (#20640)
* [JavaSpring] attach sources when using maven and interfaceOnly=true

Closes #15659

* [kotlin-spring] attach sources when using maven and interfaceOnly=true

Closes #15659
2025-02-12 17:41:14 +08:00
Ross Sullivan
9ed15a1c97 [Rust] Fixed Rust default isAnyType causing compiler issues. (#20631)
* Fixed Rust default `isAnyType` causing compiler issues.

* Added tests for Rust isAnyType's

* Fixed thread_test.rs
2025-02-11 12:55:57 +08:00
Elric Milon
21bf477da3 [Rust] Bump axum and axum-extra (#20548)
* Bump axum and axum-extra to latest version.

 - This bump requires fixing path parameters due to matchit transitive dependency
changes (See https://github.com/tokio-rs/axum/pull/2645).

 - The `Host` extractor has been moved from `axum` to `axum-extra`.
 - Axum now ships multipart extractor support, switch to that.

* Update rust-axum samples
2025-02-10 22:01:15 +08:00
Michael Faille
aeb7caf9b1 Fix: Resolve Dart 3.5+ and json_serializable 6.9.0+ compatibility issues in generated dart-dio clients (#20460)
This commit fixes compatibility problems between the generated dart-dio code, json_serializable 6.9.0+, and Dart SDK 3.5 or later.

Changes:

- Updated `pubspec.mustache`:
    - Set the minimum SDK constraint for the generated package to `>=3.5.0 <4.0.0`, reflecting the language version used in the generated code.
    - Bump `json_annotation` dependency to `^4.9.0`.
    - Bump `json_serializable` dependency to `^6.9.0`.

These changes ensure that the generated code:

- Is compatible with `json_serializable` 6.9.0+ and Dart SDK 3.5+.
- Avoids Dart 3.5+ specific syntax that causes errors on older SDKs.
- Maintains existing functionality and type safety.

Resolves: #16117, #14863
2025-02-10 19:39:16 +08:00
Andriy Slobodyanyk
cdfa7fee77 Using Optional.ofNullable() at the fluent setters to prevent NPE (#20406)
* * Uses Optional.ofNullable() at the fluent setters to prevent NPE
* Fixes issue #17538

* updates samples
2025-02-10 18:23:01 +08:00
Ross Sullivan
79f70dcc8b feat: [rust] Dynamically add uuid crate only if used (#20619) 2025-02-10 11:04:09 +08:00
Zemke
c2c161eb26 format date in codegen (#20516) 2025-02-10 00:11:01 +08:00
develop-gby
af6be6adee Solution.mustache file modified (csharp generator) (#20621) 2025-02-09 23:13:07 +08:00
Dominik Broj
6f19741927 update jackson-threeten to 2.18.2 (#20530)
* update jackson-threeten to 2.18.2

* update threeten versions in test templates

* update to jackson 2.18.2

* bump jacoco to improve compat with newer java versions
2025-02-09 22:39:58 +08:00
William Cheng
61262e939a [csharp] Fixed discriminator (#20624)
* fixed discriminator

* build samples

* minor refactors

* build samples

* replaced boolean with protected method

---------

Co-authored-by: devhl <shawnkanyer@gmail.com>
2025-02-09 22:32:17 +08:00
Philip Standt
97c805f0e0 [php][php-nextgen] enumUnknownDefaultCase true now return the correct value for unknown values (#20594) 2025-02-09 22:10:47 +08:00
Blake Lassiter
53f7e471c4 unity error message and code cleanup (#20595) 2025-02-09 21:56:00 +08:00
Blake Lassiter
055605b075 SortModelPropertiesByRequiredFlag - simplified comparison to order boolean false first (#20602) 2025-02-09 21:55:41 +08:00
Ross Sullivan
e1130c343a Added HTTP method+path to JavaDocs in kotlin clients (#20618)
* feat: Added HTTP method+path to JavaDocs in kotlin OkHTTP client

* feat: Added HTTP method+path to JavaDocs in kotlin Ktor client

* feat: Added HTTP method+path to JavaDocs in kotlin retrofit2 client

* feat: Added HTTP method+path to JavaDocs in kotlin vertex client

* feat: Added HTTP method+path to JavaDocs in kotlin volley client
2025-02-09 21:55:23 +08:00
Victoria Casasampere Fernandez
adbbe68d4d [Rust-Axum][Breaking Change] Implement a customizable error handler (#20463)
* Implement a custom error handler for unhandled or generic endpoint errors

* Pass in method, host and cookies to error handler

* Update axum to 0.8

* Make API methods take references instead of ownership

* Multipart is also part of the axum update

* Prevent replacing path names with the same name as a dynamic path parameter

* Use status code name instead of number

* Rollback axum update

* Forgot paths
2025-02-09 21:54:01 +08:00
martin-mfg
ba0456aa91 remove error message (#20623) 2025-02-09 21:52:51 +08:00
devhl-labs
01fa58a763 [csharp] Replaced property from allOf (#20578)
* replaced inherited property

* removed a comment
2025-02-09 21:43:50 +08:00
Dimitar Tomov
c74dfa3b3e [kotlin-client][jvm-spring-restclient] Extract data from PartConfig for multipart/form-data requests (#20598) 2025-02-06 07:43:59 +00:00
Jimmy Praet
9a9c1087be Add config option to disable generation of @JsonCreator constructor (#20570) 2025-02-05 16:00:03 +08:00
Ian Asaff
248a78b894 fix outer enum number bug elixir generator (#20592) 2025-02-05 15:04:26 +08:00
Ross Sullivan
cba193666e feat: Added doc comments to Rust reqwest-trait template (#20591) 2025-02-05 14:43:51 +08:00
Ian Asaff
8998d83f99 [elixir] fixes outer enum bug #16412 (#20587) 2025-02-04 10:52:20 +01:00
David Wittman
68e7d49456 [typescript-axios] Conditionally set user-agent (#20571)
The change in #20067 has caused some issues with clients which run in a
Browser. This commit replaces that change, leaving the default
User-Agent for axios unmodified, and only sets the User-Agent if the
`http-user-agent` parameter is provided during generation time.
2025-02-03 16:00:18 +01:00
Ross Sullivan
5ecde555ab chore: Bumped Rust reqwest-middleware crate to 0.4 (#20577) 2025-02-03 01:18:36 +08:00
devhl-labs
3ee7886345 removed a model (#20573) 2025-02-02 14:00:32 +08:00
Alejandro Ramirez
e553180c06 [swift][bug] Fix generation of multiple cases with associated values, fix #20560 (#20568)
* Cases previously generated as "case type[Int]([Int])" become "case typeArrayOfInt([Int])"
2025-02-01 22:35:50 +00:00
devhl-labs
187af2ec4e removed a using statement (#20541) 2025-01-31 17:23:35 +08:00
dependabot[bot]
8b52b0afe3 Bump actions/setup-dotnet from 4.2.0 to 4.3.0 (#20563)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.2.0...v4.3.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-31 15:36:58 +08:00
Gregory Merlet
8c337f05be Add optional AxiosRequestConfig parameter to typescript-nestjs service functions (#20222)
* feat: add options to service functions

* fix: fix type error

* refactor: change options parameter

* chore: update samples

* fix: fix options use order

* refactor: rename options

* refactor: import type
2025-01-29 11:12:25 +01:00
devhl-labs
f1c1567aa9 [csharp][generichost] Fixes de/serialization (#20540)
* fixed json serializer

* build samples
2025-01-26 22:18:11 +08:00
William Cheng
b033219c54 Add ClickIT as bronze sponsor (#20542)
* add ClickIT as bronze sponsor

* update url
2025-01-26 21:48:40 +08:00
Tanmay Mohapatra
561a707afc [julia] fix enum default vals, add api validations (#20520)
- Fix enum default value generation. Default values were falling back to the default code generator and were being generated improperly for Julia.
- Add more validations to client and server API call handlers. These validations were already being generated for models, but were missed out for API calls.
2025-01-24 15:17:25 +08:00
Abraham Olaobaju
95a74c804c allow PHP generator to accept modelNameMapping (#20533) 2025-01-24 15:16:57 +08:00
Julian Vennen
a68ad56ea9 [php-*] Explicitly declare nullable parameters (#20524)
* [php-nextgen] Explicitly declare nullable parameters explicitly

* Fix some deprecation warnings in other php generators

* [php-nextgen] Fix PHP 8.4 deprecation warnings with nullable/optional array parameters
2025-01-23 18:06:15 +08:00
William Cheng
ad8de61143 update go samples 2025-01-22 22:07:02 +08:00
Charles Treatman
8cbba7334d [Go] skip validator import if oneOf discriminator lookup is enabled (#20497)
* move validator import into GoClientCodegen

* add new example for oneof discriminator lookup

* regenerate samples

* add validator.v2 to go.mod if it is imported

* regenerate samples
2025-01-22 19:36:56 +08:00
Iurii Ignatko
bc70f04848 Additional [this-escape] warnings fixes (#20515) 2025-01-22 01:05:54 +08:00
David Riddervold Marconis
c75fbb312e [csharp][java] Fix enum discriminator default value (#19614)
* Fix enum discriminator default value

* Remove system out call

* Add case when discriminator type is ref

* Use correct schema

* Handle different use cases of mappings

* Add missing enum type Lizzy

* Make it more robust

* Add missing test for Sedan

* Refactor some code to make it cleaner

* Initialize discriminator enum field

* Don't override existing default value

* Fix issue with finding discriminators

* Move setIsEnum back to its original location

* Be smarter about figuring out the model name

* Fix final warnings

* Add javadocs to introduced methods
2025-01-21 16:09:17 +08:00
William Cheng
1fa07bf46c Prepare 7.12.0 (#20512)
* Revert "v7.11.0 release (#20508)"

This reverts commit a7240eeefe.

* prepare 7.12.0 snapshot version

* update samples

* update readme
2025-01-21 00:10:09 +08:00
William Cheng
a7240eeefe v7.11.0 release (#20508) 2025-01-20 21:35:30 +08:00
Iurii Ignatko
fa3e38a4b7 [JAVA] Address [rawtypes] and [this-escape] warnings in generated API clients (#20466)
* Address [rawtypes] and [this-escape] warnings in generated API clients

* Commit updated sample files
2025-01-18 15:00:16 +08:00
William Cheng
98ccf95e43 [ASPNETCORE] Add support for central package version management (#20401)
* Added useCentralPackageVersionManagement option for aspnetcore

* Removed debug code from template

* Added option to opt out of centralized version management

* Added sample for centralized version management

* Removed changes for .net9

* Updated template file for model project

* Code formatting

* Corrected sample config for aspnetcore

* Regenerated Samples

* update samples, docs

* Fixed models project mustache file

* Regenerated samples and docs

* Regenerated smaples and doc

* Changed options to enum WIP

* fix option

* [ASPNETCORE] Add support for central package version management #20192 (#20403)

* Fixed default value for usePackageVersions

* Regenerated docs

* update workflow

* add props file

---------

Co-authored-by: Urganot <ballingsimon@googlemail.com>
2025-01-18 14:52:41 +08:00
William Cheng
9e66c4f516 Add more net9 samples (#20491)
* add restsharp net9 samples

* add httpclient net9 samples

* add unity net9 samples

* update workflow

* comment out unity test
2025-01-17 14:14:11 +08:00
William Cheng
ce56a83ae4 Update openapi spec 3.1 support message (#20492)
* update spec 3.1 support message

* update faq
2025-01-17 13:15:35 +08:00
William Cheng
4c73faf737 [go-server] Add tests for primitive types in request/response (#20474)
* add test for primitive request/response

* add new files
2025-01-15 16:56:16 +08:00
Dragos Vingarzan
dcf472a034 ISSUE: #17373 [BUG] [Go-server] invalid composite literal type string (#20467)
* modules/openapi-generator/src/main/resources/go-server: alternative initialization of variable, to avoid extra checks and custom code

* propagated changes to samples
2025-01-15 16:36:33 +08:00
William Cheng
5785743695 Update bug_report.md with up-to-date URL for online validator (#20470) 2025-01-15 01:31:03 +08:00
William Cheng
760d5e8168 [normalizer] Better handling of schema with just description (any type) (#20461)
* better handling of schema with just description

* update
2025-01-14 22:04:23 +08:00
Juuso Alasuutari
4259e92776 [C][Client] Make custom CMAKE_C_FLAGS work (#20432)
* [C][Client] Generate CMakeLists.txt for all C sample clients

The sample client defined in bin/configs/c.yaml has CMakeLists.txt in
its .openapi-generator-ignore. It's is the only C client that doesn't
(re-)generate CMakeLists.txt, the remaining two seem fine regardless.

* [C][Client] Allow user-defined CMAKE_C_FLAGS

* [C][Client] Remove useless message() calls from CMakeLists.txt

find_package() prints success/failure messages, no need to do it twice.
2025-01-14 15:01:36 +08:00
Pascal Bachor
61bdc6bf84 [Python] adjust multi-constraint dependency syntax to comply with PEP 508 (#20458)
Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2025-01-14 12:44:46 +08:00
Marcel Märtens
78ea8afa84 [Rust] harden against name collisions while generate cleaner rust code, fix #20337 (#20396)
* prevent all name clashes by using a prefix for all parameters, this way they CANNOT clash with anything locally, as our hardcoded stuff in mustache files doesnt start with "p_" ,
when using the grouped option, we just use the params directly and dont unpack the variables at all, prevending furthur name clashes.

* get rid of "local_var" prefix, now that we no longer clash with paramater names

* fix a typo and remove the r# generated to the paramName when we create the identifier

* java code formatting and added a fake-endpoint parameter test

* update rust samples
2025-01-13 17:43:13 +08:00
William Cheng
09530b4781 Set removeEnumValuePrefix to false by default (#20452)
* set removeEnumValuePrefix to false by default

* update tests
2025-01-13 16:25:10 +08:00
devhl-labs
479cd522e0 [csharp] Removed .net6 and .net7 (#20449)
* removed .net6 and .net7

* build docs

* build docs
2025-01-13 15:22:30 +08:00
Junfeng Qiao
1bc5eae034 Fix Julia template for binary string (#20355)
* Fix Julia template for binary format

* Update julia samples

* fix missing check for the isBinary flag

Fix missing check for the isBinary flag in some places of the templates for julialang. The code would now be generated as Vector{UInt8} uniformly for binary strings. Binary strings that are also marked as files get generated as `String` data type on the client. That is because the Julia client expects a file name to be passed there.

* Fix Julia template for file

* Update julia samples

---------

Co-authored-by: tan <tanmaykm@gmail.com>
2025-01-11 20:31:53 +08:00
William Cheng
066a840dd8 Revert "fix ref to allOf wrapper, add tests (#19986)" (#20446)
This reverts commit 48e8375166.
2025-01-11 19:17:21 +08:00
William Cheng
121c82f8fe fix sbt setup in workflow (#20447) 2025-01-11 19:16:01 +08:00
William Cheng
a6cfef53fe clean up kotlin spring samples (#20445)
* clean up samples

* use 3.0 petstore test spec

* update samples

* better code format
2025-01-11 17:00:54 +08:00
Ruslan Khasanshin
358e8af2bf [kotlin-spring] Adds useFlowForArrayReturnType option for reactive mode (#16130) (#20409)
* [kotlin-spring] Adds useFlowForArrayReturnType option for reactive mode (#16130)

* [kotlin-spring] Replaces manual doc change with generated one (#16130)

* [kotlin-spring] Fixes errors (#16130)

* [kotlin-spring] Adds samples (#16130)
2025-01-11 15:53:04 +08:00
William Cheng
522b134cd9 rename variable in html2 (#20443) 2025-01-11 15:52:46 +08:00
John Vandenberg
eb47b9d836 Fix typos (#20442) 2025-01-11 15:44:42 +08:00
Victoria Casasampere Fernandez
29f7c2ea0b [Rust-Axum] Update tests to not use templates (#20427)
* Update tests to not use templates

* Wrong filename
2025-01-10 12:13:29 +08:00
martin-mfg
d30220b8df [Spring] Resolve default value issue with Lombok Builder (#19855)
* merge PR 18690

* update samples
2025-01-09 15:40:50 +08:00
William Cheng
9fcbdb95d9 [C#] avoid duplicated header in csharp client (restsharp) (#20421)
* avoid duplicated header in csharp client

* set env

* install openssl

* switch to windows
2025-01-09 15:36:49 +08:00
Julian Vennen
3d2ff493e6 Use conditional access for enumref query params (#20418) 2025-01-09 13:22:43 +08:00
Juuso Alasuutari
40d4703950 C overhead fixes (#20402)
* [C][Client] Remove redundant casts

Don't explicitly cast void pointers as it's unnecessary in C, but
leave printf arguments untouched to avoid setting off -Wformat.

* [C][Client] Cosmetic: remove unnecessary parens, align some lines

* [C][Client] Reduce number of unnecessary strlen() calls
2025-01-09 12:01:06 +08:00
Mark Doliner
536519c0ec Update python options in the generators README.md (#20417)
- Remove the dead link to a python-legacy client generator.
- Add a link to the python-pydantic-v1 client geneator.
- Add a link to the python-fastapi server generator.
2025-01-09 11:55:21 +08:00
Yousef Haggy
7a23ac7615 [Python] Bug Fix - model_generic templates to have valid imports for polymorphism (#20273)
* fix model_generic python templates to have valid imports for polymorphism

* update samples

* update samples

---------

Co-authored-by: yugi <yugi-big@proton.me>
2025-01-09 11:40:47 +08:00
Victoria Casasampere Fernandez
3d65786117 [Rust-Axum][Breaking Change] Improve the oneOf model generator (#20336)
* Improve the implementation of oneOf

* Fixed 2.0 schemas; possible freeze present

* Fix generate-samples.sh freezing

* Fix validation of primitive types

* Move oneOf handling to its own method

* Fix formatting and add comments

* Remove allOf based discriminator handling

* Implement a test for v3 oneOf

* Implement oneOf tests for rust axum

* Fix circle CI

* Fix pom path, ensure cargo is present

* Implement untagged test

* Add final and fix double underscore typo
2025-01-08 17:38:23 +08:00
Jimmy Praet
eb96380928 [Java] Remove bean validation annotations on builder (#19580)
* Revert #18724

Make JAX-RS spec BuilderImpl class final again

* Remove bean validation annotations from builder

* Also update other java generators

* Introduce removeAnnotations lambda

* Undo import changes to JavaHelidonClientCodegen

* Add javadoc comment, examples and test for AbstractJavaCodegen.removeAnnotations()
2025-01-07 21:36:19 +08:00
Jakub Lipiński
00c76de2a9 Bump Ktor to 3.0.3 for Kotlin client. (#20410) 2025-01-07 21:34:53 +08:00
Andriy Slobodyanyk
cba756ffa6 Adds @Nullable annotation to Spring Boot generator (#20345)
* Adds @Nullable annotation to Spring Boot generator

* issue-14427: [REQ][spring] Null-Safety annotations
* issue-17382: [REQ] spring generator add Nullable annotations

Motivations:
* Have Spring Boot generator client properly annotated for nullability to be able to check code using them with tools like NullAway
* As it is related to Spring then the `org.springframework.lang.Nullable` annotation was chosen to avoid discussion which `@Nullable` one is true one
* `@NonNull` wasn't used as I didn't see much benefit of it. Anyhow, an empty constructor and/or setters allow to put a `null` value there

Modifications:
* Adds nullableAnnotation template to handle nullability annotation on vars
* Adjust pojo templates to use the nullability template
* Adapts tests

Modifications:
* Runs export_docs_generator.sh script to update samples

* samples update

* excludes Spring @Nullable from java-camel

* ones with defaults shouldn't be annotated as @Nullable

* updates samples

* adds AllArgConstructor generation tests

* adds container tests
2025-01-06 20:08:01 +08:00
AntoineDuComptoirDesPharmacies
4b5dfc430e #20390 : (#20391)
Manage colon converting to underscore on sanitize
2025-01-06 19:43:05 +08:00
Ernesto Fernández
e154903743 Fix a few issues with the C generator (part 8) (#20378)
* [C] Deprecate *_create() to avoid *_free() confusion

The behaviour of *_free() doesn't match *_create(), so the user should
avoid using them together. But they still need *_free() to clean up
library-allocated objects, so add a _library_owned flag to each struct
as an attempt to tell them apart. This isn't perfect though, because the
user may neglect to zero the field, but they would still see a warning
once in a while so it serves its purpose.

To prevent the new deprecation warnings (intended for the user) from
showing up during the library build itself, define a new family of
*_create_internal() functions, and turn *_create() into simple wrappers.

* Update samples

* add eafer to c technical committee

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2025-01-06 10:53:36 +08:00
William Cheng
85c81bee5b [python] Close test API clients (#20400)
* close api client

* update samples

* update python pydantic v1 test files

* update python disallow additional property tests

* update python tests

* update python tests

* update python aiohttp tests

* update python pydantic aiohttp tests

* update python pydantic v1 tests

* revert sync teardown

* update python disallow tests

* update FILES

* update python echo api tests

* update python tests

---------

Co-authored-by: Huan-Cheng Chang <changhc84@gmail.com>
2025-01-04 17:08:29 +08:00
Juuso Alasuutari
43f59bab81 [C][Client] Remove broken intToStr() macro, update samples (#20383)
Note: this does not fix anything else; for example all numerical
types, including float and double, are still incorrectly cast to
to long int before string conversion.
2025-01-02 22:25:06 +08:00
dependabot[bot]
46260ee6f9 Bump s4u/setup-maven-action from 1.17.0 to 1.18.0 (#20392)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.17.0 to 1.18.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.17.0...v1.18.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-01 23:25:10 +08:00
William Cheng
8f4cfa3955 [swift] fix typos, minor code format enhancement (#20387)
* fix typo in swift option, minor code format enhancement

* fix uuid typo in swift codegen and template

* fix typo minium
2024-12-31 16:51:18 +08:00
Jonas Reichert
93158ea4dc Fixes URLSessionImplementations template for swift generator (#20381) 2024-12-30 21:24:25 +00:00
William Cheng
25283d46a7 Fix typo in various generators, templates (#20389)
* fix typo in various generators, templates

* update samples
2024-12-30 18:52:18 +08:00
William Cheng
c5ac7d485f Various enhancements, bug fixes to default codegen and maven plugin (#20388)
* fix typos in docs

* minor fix in default codegen

* fix more typos
2024-12-30 16:42:26 +08:00
devhl-labs
8fa8530cd0 bump version to .net8 (#20384) 2024-12-30 13:48:24 +08:00
William Cheng
bd8cd8bf9f update python samples 2024-12-30 11:54:55 +08:00
OM HASE
de41fd27d1 Fix(Python): Add custom exceptions for HTTP status codes 409 (Conflict) and 422 (Unprocessable Entity) #20244 (#20251)
* Update exceptions.mustache

* Fix(Python): Add custom exceptions for HTTP status codes 409 (Conflict) and 422 (Unprocessable Entity) #20244
2024-12-30 11:53:12 +08:00
dependabot[bot]
45aeae3d43 Bump actions/setup-dotnet from 4.1.0 to 4.2.0 (#20379)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.1.0...v4.2.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-27 18:37:36 +08:00
Makoto Aoyama
bf9c9a59d2 Add access control to the properties of validation rules (#20380) 2024-12-27 10:36:15 +00:00
William Cheng
6d2f2c9ced update gradle.properites to use 7.11.0 snapshot for testing 2024-12-27 00:56:38 +08:00
Ernesto Fernández
812d89cbe5 Fix a few issues with the C generator (part 7) (#20366)
* [C] Test nullable booleans in form data

* [C] Ban implicit int to pointer conversions

* [C] Declare valueForm for bool as char *

* Update samples
2024-12-27 00:27:38 +08:00
DavidRV00
357a708ebb Fix package name in FastAPI README (#20371) 2024-12-27 00:27:06 +08:00
Lewis Hazell
ff0fe26890 Fixes body of FormParameters in multipart/form-data requests without files sent by generated C# (RestSharp) (#20351)
* fix: set RestRequest flag to force multipart/form-data when given as Content-Type

* fix: removed serialization of FormParameters for multipart/form-data

* updated csharp-restsharp samples
2024-12-22 23:28:37 +08:00
William Cheng
ab8d359dc3 add option to skip setting user agent in js client (#20367) 2024-12-22 23:11:54 +08:00
devhl-labs
5ba608ff8a [csharp] add .net9 support (#20270)
* add .net9 support

* fixed path of new sample

* comment out manual test that does not exist

* comment out manual test that does not exist

* comment out manual test that does not exist
2024-12-22 22:06:33 +08:00
Brian Ferri
401c8d0feb [FIX][PHP-NEXTGEN] Missing tagged union discriminator literal (#20343) (#20356)
* fix: https://github.com/OpenAPITools/openapi-generator/issues/20343

* chore: apply correct formatting
chore: build and package

---------

Co-authored-by: Christian Ascone <ascone.christian@gmail.com>

---------

Co-authored-by: Christian Ascone <ascone.christian@gmail.com>
2024-12-22 21:51:34 +08:00
jbrugge
4ea7f6088e [Java] Avoid ambiguous references for date and time classes (#18416) (#20230) 2024-12-21 16:50:01 +08:00
Ernesto Fernández
77e9c1f03a Fix a few issues with the C generator (part 6) (#20332)
* [C] Fail build on implicit function declarations

* [C] Complete changes from patch 34c3f8c7aa

* Update samples

* [C] Fail build for global functions with no declaration

* [C] Use "static" for apiClient.c internal functions

* Update samples
2024-12-21 15:59:23 +08:00
William Cheng
8790f7c8b1 Update logback core to newer version v1.5.13 (#20363)
* update logback to newer version

* update java inflector samples

* update logback to newer version

* fix auto-generated tests
2024-12-21 15:56:27 +08:00
Julian Vennen
eceef28850 [PHP][php-nextgen] Improve method parameter typing (#20361)
* Fix #20354 - Nullable mixed type is not allowed

* Add parameter types for request and asyncWithHttpInfo functions
2024-12-21 15:53:51 +08:00
Julian Vennen
806b99e43a [PHP][php-nextgen] List all possible return types (fix #17113) (#20335)
* [PHP][php-nextgen] List all possible return types (fix #17113)

* Switch to LinkedHashSet
2024-12-21 15:50:40 +08:00
DavidGrath
6180fea305 Add gradle wrapper v8.1.1 to kotlin-spring (#20341)
* Added code and tests for generating the gradle wrapper for kotlin-spring

* Added generated samples

* Changed Gradle wrapper version to 8.1.1

* Added generated samples

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-12-20 19:56:52 +08:00
William Cheng
b143313cf7 Update readme with pip installation procedure (#20353)
* add pip install to readme

* add a few links to blogs
2024-12-19 17:03:18 +08:00
haruna
7f0efe74a7 Add PyPI installation to docs (#20350) 2024-12-19 14:12:36 +08:00
David Gamero
74044c3427 remove unused url-parse package to complete WHATWG migration (#20344) 2024-12-18 09:00:55 +01:00
Cameron Koegel
289425b8ee [typescript-axios] Add User-Agent Header to Default Axios (#20067)
* [typescript-axios] Add User-Agent Header to Default Axios

* fix if `npmVersion` doesn't exist

* generate samples

* single line solution

* move user agent header to config

* generate samples

* splat for headers as well

* samples

* move headers above baseOptions

* samples

* commas are hard

* samples again
2024-12-17 17:36:04 +01:00
Jorge Fernandez
9fec13af85 [Kotlin][Tests]: Add test for kotlin-jvm-okhttp (#20338)
* feat(issue-20231): add echo_api client for kotlin okhttp

* build(issue-20231): sync files
2024-12-17 21:50:00 +08:00
loic-seguin
b01c8be47f bugfix: generate correct setup.pi when no paths are specified (#20098) 2024-12-17 10:58:26 +08:00
Julian Vennen
e87c4ea6c0 [PHP][php-nextgen] Fix usage of enums in parameters (#20294) 2024-12-16 19:19:24 +08:00
Ross
47891245e9 [Rust] Fixed rust keyword params in reqwest-trait library (#20333)
* Fixed rust keywords in reqwest-trait lib

* Update tests and samples
2024-12-16 18:58:47 +08:00
William Cheng
ea2ba0c349 [java][native] fix empty response body (#20334)
* [Java][Client] (#13968)

* update

* update

* update slack url

---------

Co-authored-by: András Gábor Kis <andras-gabor.kis@telekom.com>
2024-12-15 22:32:46 +08:00
Simon
9b3484cc99 [php] Set $multipart to true if content-type is multipart/form-data (#5536) (#18991)
* [php] Set $multipart to true if content-type is multipart/form-data (#5536)

Related: https://github.com/OpenAPITools/openapi-generator/issues/5536

* [php] Use isMultipart variable

---------

Co-authored-by: Simon Hammes <simonhammes@users.noreply.github.com>
2024-12-15 17:29:12 +08:00
Dan Čermák
cdfab4eee3 [python,aiohttp] Don't create persistent aiohttp.ClientSession in __init__ (#20292)
aiohttp's `ClientSession` & `TCPConnector` used to obtain an event loop in
__init__ (via `asyncio.get_event_loop`). However, as of https://github.com/aio-libs/aiohttp/pull/8512 both
classes now obtain the running event loop and won't potentially create one. This
makes it impossible to create `ClientSession` and `TCPConnector` objects outside
of coroutines, as `get_running_loop` must be called from a coroutine.

Thus we defer the creation of a `ClientSession` into the actual request and
cache it for later usage. Thereby we pay only a very small price on the first
request, but subsequent requests will not be any more expensive.
2024-12-15 17:11:35 +08:00
martin-mfg
d87a70dd93 update sample tests, fix Java tests (#20300)
* replace removed forkMode

* remove junit runner where it's not needed

* update samples without skipping test files, but skip files named "FILES"

* revert overwriting custom tests, add custom java tests to list

* add one sample to CircleCI, fix various Java tests
2024-12-15 17:09:58 +08:00
Kirill Romanov
4e5a828c12 feat: add option to support non-ascii headers in kotlin client (#20331) 2024-12-15 16:46:42 +08:00
Nicklas Wiegandt
07d19baf89 feat (#19407 JAVA SPRING WEBCLIENT): Add support for useSingleRequestParameter to Spring WebClient (#19827)
* chore (JAVA SPRING WEBCLIENT): Remove comments used for debugging

* feat (JAVA SPRING WEBCLIENT): Add support for useSingleRequestParameter to Spring WebClient

* feat (JAVA SPRING WEBCLIENT): Generate samples and docs

* fix (JAVA SPRING WEBCLIENT): Fix missing return error & Fix JDK17 action webclient useSingleRequestParameter test path

* fix (JAVA SPRING WEBCLIENT): Fix code indention

* fix (JAVA SPRING WEBCLIENT): Fix code indention again

* fix (JAVA SPRING WEBCLIENT): Update samples

* feat (JAVA SPRING WEBCLIENT): Regenerate after pull rebase
2024-12-15 15:28:38 +08:00
William Cheng
cc40f40ead remove kotlin-server-deprecated resource folder (#20328) 2024-12-14 17:02:49 +08:00
William Cheng
b16144094d [kotlin-server][ktor2] fix isKtor, update samples (#20327)
* fix isKtor, update samples

* fi dockerfile

* fix dataclass

* add new files

* fix template

* regenerate samples
2024-12-14 16:11:57 +08:00
Aleksei Tirman
f766f445da [Kotlin Server] Update Ktor to the next major version 3 (#20245)
* [Kotlin Server] Update Ktor to version 3

* [Kotlin Server] Clean up

* [Kotlin Server] Fix problems

* [Kotlin Server] Fix Ktor and modelMutable samples

* [Kotlin Server] Fix the string value for serialization key

* [Kotlin Server] Remove setting Kotlin serialization flag to true

* [Kotlin Server] Remove setting Kotlin serialization flag to true

* [Kotlin Server] Remove the option to enable Kotlin serialization

* [Kotlin Server] Use query parameters
2024-12-14 15:06:27 +08:00
William Cheng
3e6f8753e9 update crypto dep to newer versions in go server (#20326) 2024-12-14 15:04:11 +08:00
Tim Quinn
d55a41e985 Fix bug in common path prefix calculation (#20310)
Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
2024-12-14 14:12:26 +08:00
Ernesto Fernández
1a3d7d4ae6 Fix a few issues with the C generator (part 5) (#20313)
* [C] Default to requiring valid SSL

* Update samples

---------

Co-authored-by: Sam Bingner <sam@corellium.com>
2024-12-14 13:53:32 +08:00
William Cheng
2f03c70403 [rust] Add tests for path parameters (#20325)
* add tests for path parameter in rust client

* add tests and update samples
2024-12-14 13:50:11 +08:00
Ross
3a09ebbb7b Added path param normalization for Rust clients (#20309) 2024-12-14 13:37:15 +08:00
Doug Gish
8aa8e3892d Depend on jackson-jakarta-rs-json-provider when useJakartaEe is true (#20322)
In the build.gradle template for the Java generator's resttemplate library, change dependency to com.fasterxml.jackson.jakarta.rs:jackson-jakarta-rs-json-provider instead of com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider when useJarkartaEe is enabled. This makes it consistent with the pom template file.
2024-12-14 11:56:52 +08:00
Ernesto Fernández
b7c7ed087f Fix a few issues with the C generator (part 4) (#20289)
* [C] Deal with binary api parameters

With this change, the bodyParameters array can also be binary, so pass
its length around instead of relying on strlen().

* [C] Fix a few remaining enum issues

* [C] Install headers and include any_type.h header

* [C] Don't require C++ to compile C code

* [C] Test binary bodies and path enums in schemas

* Update samples

---------

Co-authored-by: Sam Bingner <sam@corellium.com>
2024-12-13 02:01:04 +08:00
William Cheng
24ddb33d0b add ktor2 library option to kotlin server generator 2024-12-13 01:15:03 +08:00
Daniel Åkerlund
b218e238f4 Improve handling of pekko versions in scala-akka-http-server generator (#20277)
* Fix issue 20275 Improve handling of pekko versions

* Generated docs

* Use version 1.1.0 as default version of pekko-http.

* Updated sample
2024-12-11 12:31:22 +08:00
dependabot[bot]
e7b5f348e7 Bump nanoid from 3.3.4 to 3.3.8 in /website (#20284)
Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.4 to 3.3.8.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.4...3.3.8)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 16:27:41 +08:00
Ernesto Fernández
f4271faf3b Fix a few issues with the C generator (part 3) (#20269)
* [C] Clear the response code from previous api calls

Before making an api call, reset apiClient->response_code to zero. That
will protect us from checking stale values if the curl request fails.

* [C] Check that string arguments are not null

Check early on that the arguments are not null, to prevent crashes on
strdup() calls.

* [C] Don't attempt to fill in a type with error info

Check if the api call returned an error before attempting to parse the
reply as the expected type.

* [C] Handle binary and integer return types

* [C] Update test schemas with binary and integer return types

* Update samples
2024-12-10 12:23:29 +08:00
dependabot[bot]
0a7e784c8c Bump s4u/setup-maven-action from 1.16.0 to 1.17.0 (#20283)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.16.0 to 1.17.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.16.0...v1.17.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 12:22:55 +08:00
Jorge Fernandez
a447b5988d [Kotlin] fix #20231, OkHttp client can handle a field with a list of files (#20274)
* feat(issue-20231): Kotlin okhttp client handles correctly fields that are optional with multiple files.

* docs(issue-20231): add docstrings

* feat(issue-20231): Remove unnecessary test spec

* feat(issue-20231): Kotlin okhttp client handles correctly fields that are optional with multiple files.

* docs(issue-20231): add docstrings

* feat(issue-20231): Remove unnecessary test spec

* feat(issue-20231): Remove unnecessary if condition
2024-12-09 20:00:05 +08:00
Ingars Ribners
dc175c5335 Added PostgreSQL schema generator (BETA) (#20255)
* Initial version of PostgreSQL schema generator 'postgresql-schema' (based on 'mysql-schema' generator code)

* PostgreSQL schema generator. Initial version.

* Tested. Fixed errors. Documentation updated.

* Samples for 'postgresql-schema' updated.

* Removed current date/time from mustache templates for postgresql-schema generator.
Re-created samples.

* Re-created docs file for postgresql-schema generator.

* Removed unecessary LocalTime computing code and imports for postgresql-schema generator.

* Errors fixed for postgresql-schema generator. Samples recreated.

* Docs updated.
2024-12-07 22:52:59 +08:00
Jakub Lipiński
e025a7ddfa Bump Ktor to 3.0.2 for Kotlin client. (#20265) 2024-12-07 16:21:13 +08:00
Nate Todd
35df38de38 [Elixir] Use string headers (#19759)
* Use string headers in Elixir request builder

* Add samples

* Update add_param spec

* Updated samples with spec changes

* Convert header values and keys to strings in add_param/4
2024-12-07 14:58:36 +08:00
BryanAldrich
f62aa5bd95 Add auth token refresh to csharp (#20234)
* quick edit to allow tokens to refresh if they specify an expires_in and created fields. Also supports refresh_token if that is passed.

* update samples

* fix compile error for projects without default using statement.
make the created date nullable.

* fix nullable de-reference on Created.

* fix to remove nullable reference types (the ! to remove the warning) and add documentation comments to the public members.
2024-12-07 13:52:35 +08:00
Alexander Brandon Coles
3a37ba33a7 Fix typo "bellow" (#20268)
* Fix typo in constant name: s/BELLOW/BELOW/

* Fix typo ('bellow') in docs, comments and strings
2024-12-06 16:18:08 +00:00
ASterdyniak
d29196a1f0 [typescript-fetch] [BUG] Fix duplication of ModelNamePrefix in import statements (#20109) 2024-12-06 11:02:18 +01:00
Hiromi Hishida
474307675b [php] Follow PHP8.4 update: declared nullable parameters explicitly (#20243)
* explictly declared nullable to parameters with "null" default value

* generated php sample

* fixed unnecessary "?"

* re-generated sample
2024-12-06 14:33:55 +08:00
drewble
ba5ecbccde Improved Elixir Atom Generation (#20229)
* Update ElixirClientCodegen.java

* Refine the regular expression for atoms

The original regex incorrectly matched `@atom` (unquoted atoms
cannot begin with @). However, through testing with `iex`, it also turns out that the atom
`:@` is legal.

The following atoms will now be quoted that would have been
incorrectly not quoted:

- `:@type`

* Add model to petstore client to test new atom creation regex pattern
2024-12-06 14:26:39 +08:00
Ernesto Fernández
52b5b8fb76 Fix a few issues with the C generator (part 2) (#20227)
* [C] Don't convert post body strings to JSON

If the body provided for the api request is a just a string itself,
don't try to convert it to JSON, simply submit the string.

* [C] Implement BearerToken authentication

* [C] Handle nullable fields correctly

* [C] Fix implementation of FromString for enums

* [C] Update the test schemas to cover the changes

* Update samples

* Fix the updated samples

* [C] Add the new samples folder to the CI workflow
2024-12-06 01:32:34 +08:00
Daniel Owens
387fd9986c [typescript-fetch] fix API signature return type for empty 20x responses (#20249)
* typescript-fetch: fix promise return type for optional responses

* Remove unnecessary change
2024-12-05 13:44:08 +01:00
Jan Holy
f603f04bc4 [Kotlin] fix 20228 - spring-kotlin insert override modifier to interface if it is needed (#20246) 2024-12-05 10:01:02 +00:00
William Cheng
8035da8639 Revert "[Kotlin] fix #20231, OkHttp client can handle a field with a list of…" (#20257)
This reverts commit 71ccc88037.
2024-12-05 17:04:42 +08:00
William Cheng
6ba311e85c add a test for generateParameterId (#20256) 2024-12-05 12:59:26 +08:00
Jean-Pierre Portier
b2507777e6 fix (DefaultGenerator): Handle "$ref" parameter reference to identify parameter ID (#20239) (#20240) 2024-12-05 12:16:17 +08:00
William Cheng
f406f78978 [cpprestsdk] Better code format (#20237)
* remove blank lines

* fix summary, add line break bwtween vars

* update
2024-12-05 12:07:14 +08:00
Kirill Romanov
05d4aa9f62 [kotlin][client] support text/plain in okhttp (#20250)
* refactor: simplify application/octet-stream check

* feat: support text/plain in kotlin okhttp client

* refactor: remove redundant always-false condition

content is ByteArray is checked earlier
2024-12-05 11:51:10 +08:00
Thibaud Sowa
8a07557865 fix(typescript-angular): fix new angular dependency cli option usage (#20247)
Co-authored-by: Thibaud SOWA <thibaud.sowa@equasens.com>
2024-12-04 21:52:08 +01:00
Jorge Fernandez
71ccc88037 [Kotlin] fix #20231, OkHttp client can handle a field with a list of files (#20232)
* feat(issue-20231): Kotlin okhttp client handles correctly fields that are optional with multiple files.

* docs(issue-20231): add docstrings

* feat(issue-20231): Remove unnecessary test spec
2024-12-04 22:41:37 +08:00
Francesco Saverio
0183620854 [cpprestsdk] Implement Enum inside Objects (#19919)
* Fix #19566 implemented the missing definition of declared methods inside openapi-generator/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/modelbase-header.mustache, have also be added two missing body of methods definitions

* Regenerated cpp-restsdk client samples

* Fixed shared_ptr creation

* [cpprestsdk] Implement enum inside objects
2024-12-04 16:06:45 +08:00
Nate Todd
4a6dbace73 [elixir] Update dialyzer spec (#20024)
* Update evaluate_response spec to support returning a list of structs

* Update elixir samples
2024-12-04 15:25:24 +08:00
Fionn O'Connor
e131d52ad0 [kotlin-spring] Handle arrays of files correctly using MultipartFile (#20108)
* [kotlin-spring] Fix no List being used for an array of files using multipart/form-data

* [kotlin-spring] Use Spring's MultipartFile class for incoming Files instead of Spring's Resource class.

* [kotlin-spring] Add test to ensure that return type for files is `org.springframework.core.io.Resource`

* [kotlin-spring] Ensure Array is used for lists of files in generated Api class

* Update samples

* [kotlin-spring] Move conditional usage of MultipartFile to optionalDataType.mustache. Update samples

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-12-04 15:24:47 +08:00
William Cheng
b3d172a44f use elixir petstore spec for testing (#20236) 2024-12-04 15:05:48 +08:00
William Cheng
24cb797a58 update link to join the Slack channel 2024-12-04 11:47:40 +08:00
Thibaud Sowa
423ba6739a feat(typescript-angular): add support for Angular V19 (#20205)
* feat(typescript-angular): add support for Angular V19

fix #20204

* feat(typescript-angular): add options to override angular deps + refactor deps definition

add tsVersion, rxjsVersion, ngPackagrVersion and zonejsVersion options to override default config if new version of Angular is available but not yet implemented in openapi-generator
refactor Angular dependencies definition in separate readable yaml config file

fix #20204

* feat(typescript-angular): add better angular 19 exemple for ci testing

fix #20204

* feat(typescript-angular): unify tsVersion param

fix #20204

---------

Co-authored-by: Thibaud SOWA <thibaud.sowa@equasens.com>
2024-12-03 17:58:17 +01:00
Gregory Merlet
cf78f1028d Fix dangerous destructuration in typescript-nestjs services (#20157)
* refactor: remove requestParameters destructuration

* feat: add reserved param names sample

* feat: quote params

* feat: improve with reservedWords

* feat: use vendorExtensions instead of extending CodegenParameter
2024-12-03 11:38:43 +01:00
Kirill Romanov
26609e9ad3 fix: register gson CustomTypeAdapterFactory in kotlin-client if generateOneOfAnyOfWrappers enabled (#20217) 2024-12-03 12:10:41 +08:00
William Cheng
25d780ee6d update python multipart dep to 0.0.18 (#20225) 2024-12-03 12:08:29 +08:00
DielN
b9f6fe6b1f [Java] [Microprofile] Add Json-B polymorphism type info annotations (#20164)
* [Microprofile] Add Json-B polymorphism annotations

* [Microprofile] Set openApiNullable in configs to false

* [Microprofile] Bump JSON Bind version to 3.0

* [Microprofile] Only apply JSON-B polymorphism for MP 3.0

* Update samples

* [Microprofile] Update documentation/configs for openApiNullable

* Update docs
2024-12-03 12:02:54 +08:00
Colin Ihrig
06f0b68eee fix(typescript): remove incorrect file extensions (#20194)
* fix(typescript): remove incorrect file extensions

url, http, and https are Node.js core modules, and form-data
should be loaded using a bare specifier. This commit removes
the file extensions from these imports.

* update samples
2024-12-02 15:51:49 +01:00
Joris Dobbelsteen
1eaa75bd36 Fix python code when receiving JSON data without a property that is a dict to ref/enum causing AttributeError (#20022) 2024-12-02 16:25:23 +08:00
daniel
88be078c68 Trim the input of operationId filter in OpenAPINormalizer (#20186) (#20189) 2024-11-30 23:15:10 +08:00
Ingars Ribners
3f6c3de029 Updated README.mustache template for the Erlang server generator (#20138)
* Updated README.mustache file for the Erlang server generator. Fixed one error and updated the usage instructions

Changes made to the Erlang server generator's user instructions ("README.mustache" file):

1. Corrected the argument in section 4.1 of the user instructions.
   In openapi_server:start/2, the second argument for the generated Erlang code must now be in a different format than proposed in the instructions (see lines 13-16 of the "server.mustache" file).
   Initially, the server failed to start, and after some debugging, I discovered that the argument format did not match the server's expectations, causing the port number not to be passed to cowboy:start_clear/3. This has now been fixed.

2. Reviewed and updated the text of the user instructions to remove any ambiguities.

3. Tested the user instructions for accuracy and completeness.

* erlang-server sample recompiled

* README fix

* Fixed README.mustache template markdown for erlang-server. Re-generated erlang-server sample.

* Update README.mustache

* Sample 'erlang-server' re-generated

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-11-30 17:31:56 +08:00
William Cheng
878148e66d update kotlin option description to clarify the support (#20211) 2024-11-30 13:32:15 +08:00
jops-wtakase
2aa49227b0 Bugfix: #1666: Change requestBody argument name to 'body' (#20207)
Since Connexion defaults to using 'body' as the argument name for the requestBody, the controller's argument name is adjusted accordingly.
2024-11-30 10:20:06 +08:00
Cedric Ziel
706c0a177e fix: close quotes in cargo manifest (#20209) 2024-11-30 10:12:15 +08:00
William Cheng
711e53a90c [Java] Add option to fallback to legacy enum naming (#20172)
* add option to fallback legacy enum naming (java)

* fix tests
2024-11-29 17:12:12 +08:00
Thomas Ville
34bd02109e [rust][reqwest] support binary type for download (#20031)
* [rust][reqwest] support binary type for upload and download

* [rust][reqwest] support binary download in supportMultipleResponses contexts

* [rust][reqwest] support binary responses that don't have any return type
2024-11-29 17:07:30 +08:00
Timon Borter
326f100f0e fix(#20201): static access to normalizeMediaType in typescript object serializer (#20202)
accessing `normalizeMediaType` should be done static in `ObjectSerializer`, as described
in https://github.com/OpenAPITools/openapi-generator/issues/20201.

fix applies only to the `typescript` generator.
2024-11-28 11:01:37 +01:00
William Cheng
25cfac0523 Update r petstore client test script (#20196)
* update R build and test script in petstore samples

* update
2024-11-28 17:20:37 +08:00
Matt Pollock
e3e06af5f4 [R] fix to-list and to-json functionality (#20132)
* [r client] fix to-list and to-json functionality

* fix type of json string

* wip

* refactor pr

* regenerate samples

* update to-dataframe example to use non-superceded tidyverse functions

* fix typo
2024-11-28 16:31:21 +08:00
Ernesto Fernández
037cb12f34 Tests for recent C fixes (#20200)
* [C] Add test schemas for the recent changes

The recent commit 47665aaa97 ("Fix a few issues with the C generator
(part 1 version 2) (#14434)") didn't include any test schemas. Add them
now, as requested:

  https://github.com/OpenAPITools/openapi-generator/pull/14434#issuecomment-2497497110

* Update samples

* Fix sample update with missing files

* More fixes for sample updates
2024-11-28 16:27:42 +08:00
Nelson Vides
f8ca36b97e Erlang server – minor fix to return type and generated doc (#20197)
* erlang-server: add jesse to app.up release

* erlang-server: remove dialyzer errors that might not be related to the program

* erlang-server: minor fixes to return types and generated docs
2024-11-27 22:09:21 +08:00
Ernesto Fernández
47665aaa97 Fix a few issues with the C generator (part 1 version 2) (#14434)
* C: add a template for an empty any_type.h header

Some generated C apis fail to build because the source files get
'#include "any_type.h"' lines, but no such header gets generated. As a
simple fix, add a new template for an empty file with that name. This is
enough to fix the problem for us, because all the generic type stuff is
handled by object_t.

* C: fix enums

I'm guessing that enums have not been used much with the C generator
before, because they always seem to produce code that doesn't build, or
that tries to free them after use. This patch fixes all the problems
we've encountered so far, except for those that need checking the return
type. I'll come back to that later.

* C: fix confusion of 'classname'/'classFilename'

* C: fix issues with returned enums

Currently, the C templates never check if a function returns an enum
inside mustache, so when that happens the generated code has broken
return types and doesn't build. I originally tried to fix this by
extending CodegenOperation to implement a 'returnTypeIsEnum' check, but
William Cheng suggested[1] that I use the existing 'returnProperty'
instead:

  https://github.com/OpenAPITools/openapi-generator/pull/14379#discussion_r1064636735

So do that.

* C: update the samples

As required for a pull request, run the generate-samples.sh script and
commit the changes.

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-11-27 18:16:10 +08:00
Per Hallgren
8a94fc667e [BUG][GO] use value receiver for JSON marshal (#19962)
* chore(go): add failing test for JSON marshalling

Adds a small schema (FruitJuice) which contains a required gmFruit,
which inherits using AnyOf. This fails to correctly marshal as JSON.

* fix(go): use non-pointer receiver for JSON marshal

In the case of a required anyOf property, JSON marshalling would has
been incorrect.

Required properties are not nullable, and thus always use value
receivers. For the single case of anyOf models, a pointer receiver was
used for MarshalJSON. All other instances of json marshalling use value
receivers.

This change is simply to use a value receiver instead of a pointer
receiver in the template for `MarshalJSON` on anyOf models.

---------

Co-authored-by: Per Hallgren <perhallgren@users.noreply.github.com>
2024-11-27 18:09:11 +08:00
Qluxzz
705261978d [Elm] Fix not compiling all elm files in test suite (#20191)
* Fix not trying to compile all elm files

* Validate that changes to pipeline works
2024-11-27 15:44:21 +08:00
jops-wtakase
7b35613cfc [python] Encode list query params (#20148)
* Bugfix: #17688: Encode list query params

* Test: #17688: Update validation error message tests for Pydantic 2.10+

Pydantic 2.10+ introduced changes to validation error messages,
requiring updates to the affected test cases.
2024-11-26 23:53:12 +08:00
Victoria Casasampere Fernandez
7072009ab5 [Rust-Axum] Support quotes in string literals (#20176)
* Allow quotes in string literals

* Update samples
2024-11-26 21:36:11 +08:00
Linh Tran Tuan
19e21416ed [Rust-Axum] BugFix: handling non-lowercase Header in Request/Response (#20178) 2024-11-26 18:39:29 +08:00
Qluxzz
ed211050f1 [Elm] Fix not sanitizing param name (#20171)
* Add failing example

* Sanitize param name

* Regenerate fixed sample

* Override toParamName instead
2024-11-26 17:30:04 +08:00
Lennard Sprong
55f02e995b [swift6] Change Response to struct (#20185) 2024-11-26 08:30:50 +00:00
Lennard Sprong
af89ed8043 [swift5] Add Identifiable conformance to supported models (#20179) 2024-11-25 17:43:51 +00:00
Victoria Casasampere Fernandez
a7cacce30e [Rust-Axum] Dynamically set the types of integer literals (#20133)
* Dynamically set the types of integer literals

* Change the literal limits from i32 to adaptive limits

* Remove length literal types
2024-11-26 00:24:06 +08:00
Lennard Sprong
4c5a57fe7b [swift6] Add Identifiable conformance to supported models (#20166) 2024-11-24 22:35:17 +00:00
Bragolgirith
8ce332a540 [Java] Fix compilation for Map of InnerEnum (#19401) 2024-11-25 00:40:44 +08:00
altro3
cdafa5a0cc Deprecate micronaut openapi generator (#20107)
* Deprecate micronaut openapi generator

* update get help message

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-11-24 23:26:37 +08:00
Kevin
5ae8c03e6f Ensures a JsonCreator annotated constructor is present if there are required fields, and ensure the getters and setters are properly annotated with required=true / required=false for jaxrs-spec generator. (#19578) 2024-11-24 22:15:55 +08:00
Matt Pollock
6399a7a97e [R] improve binary/text response handling (#20131)
* [R client] better support for binary/compressed responses

* cleanup

* revert change after PR review

* update samples

* fix R tests

* move private api methods to api-client, revert breaking method name change
2024-11-24 22:12:39 +08:00
dmnlk
c33d3aaae9 add PHP8.4 CI (#20168) 2024-11-24 18:27:49 +08:00
dmnlk
c831983866 PHP8.4 comptible, php-symfony resources (#20162)
* matrix php build

* NullableTypeForNullDefaultValue

* update sample
2024-11-24 16:00:35 +08:00
William Cheng
093a51ee21 Resolve inline schemas in webhooks (#20165)
* resolve inline schemas in webhooks

* update samples
2024-11-24 15:59:05 +08:00
Qluxzz
1ba18a09a1 [Elm] Add missing operation summary (#20147)
* Add missing operation summary

* Regenerate samples

* Print notes and or summary if any exists

* Regenerate clients
2024-11-22 21:29:08 +08:00
Ross
23aa2e2cb2 Added default headers to ServerError<T> for Kotlin OkHTTP generator (#20161) 2024-11-22 13:10:22 +00:00
Lennard Sprong
2b891f6da9 [swift6] Add checked Sendable conformance to Validation structs (#20150) 2024-11-21 11:23:54 +00:00
Lennard Sprong
c06db15750 [swift6] Add conditional Hashable conformance to NullEncodable (#20149) 2024-11-21 11:22:05 +00:00
Benjamin Einaudi
18b01ca455 fixes(java/restclient) Force usage of custom converter (#20112)
* fixes(java/restclient) Force usage of custom converter

Insert custom converter at the beginning of the 'RestClientBuilder' converter list so as not to use default 'MappingJackson2HttpMessageConverter' 

Close #20111

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-11-19 16:15:51 +08:00
William Cheng
654f62ce3c Prepare 7.11.0 (#20130)
* Revert "prepare 7.10.0 release (#20128)"

This reverts commit 12dfe8fe74.

* update to 7.11.0-SNAPSHOT, update samples

* update docs
2024-11-18 20:15:29 +08:00
William Cheng
12dfe8fe74 prepare 7.10.0 release (#20128) 2024-11-18 18:59:21 +08:00
William Cheng
6b9f6bd2b1 update java samples 2024-11-18 18:47:40 +08:00
Christian Beikov
4185782ddc [#20125] Remove unnecessary model package import to avoid ambiguous class references (#20124)
* Remove unnecessary model package import to avoid ambiguous class references

* Regenerate JSON files
2024-11-18 17:43:14 +08:00
jasonjyu
51a0bd00b7 Replaced deprecated 'summary' attribute with recommended 'caption' element (#19961) 2024-11-18 17:34:55 +08:00
William Cheng
1a58d31a81 update gdscript samples, docs 2024-11-17 10:55:57 +08:00
Antoine Goutenoir
959cf1c3c9 [GdScript] Templates for GdScript (Godot 4) (#19267)
* feat(gdscript): sketch implementation of gdscript target language

This does not really work yet, but it's a start.
Results are not denormalized, no support for enums nor datetimes,
and thousands of other features are missing.

I still don't know how we are going to denormalize JSON+LD
without writing a whole GDScript lib for it…

* feat: add an exhaustive list of keywords reserved in GDScript

I've also provided the small python script I used to generate the list.

* refacto(gdscript): start using partials in templates

Whilst I'm racking my brains trying to figure out integration testing…

* test(gdscript): prepare a demo and integration testing

* fix(gdscript): do not use subclasses, use plain POGO

(plain ol' godot object)

One: I don't know how they work under-the-hood.
Two: I'm very confused over-the-hood.
Tri: We do not need them.

* refacto(gdscript): move demo files to their own directory

I know I'm making a lot of commits for not much,
but now I'm opening the sample files with Godot as well,
and doing unholy things with filesystems,
so I'm not taking any chances.

It's all going to be squashed anyway.  :)

* fix(gdscript): sample as a Godot project

It works !  I can now write integration tests in GDScript.
The real work starts now.

/spend 25h

* feat(gdscript): serialize and send body params

The test suite is now past its first hurdle, the 415 HTTP status code,
and went straight into an unexpected error 500.

I suspect the server does not like me trying to set the pet id at 0,
because that's what we're trying to do right now.

Godot is crashing a lot, mostly because I don't know how to make Callable.NOOP
and my current solution hints at optional on_success and on_failure,
yet if we omit them the engine will ragequit.

* feat(gdscript): check request body for required yet missing properties

Now we'll get a nice error when we forget to set a required property.

The demo is now able to:
- connect
- create a user
- login as that user
- create a pet

* feat(gdscript): namespace core classes as well with apiPrefixName

This makes our usage of `class_name` a little more acceptable.

* feat(gdscript): support prefixes and suffixes for class names

This will crutch namespacing well enough for most uses.

* feat(gdscript): handle enums, naively

* feat(gdscript): support basic API endpoint param constraints

- minLength
- maxLength
- minItems
- maxItems
- minimum
- maximum
- pattern (no flags)

* feat(gdscript): handle header params and header customization

We also support serializing to application/x-www-form-urlencoded now.

Next up: DateTimes !

* feat(gdscript): handle Date and DateTime like Strings

There's no timezone support in Godot for DateTimes.

* feat(gdscript): support plain text responses

* feat(gdscript): support collections of models

Those are Arrays, not custom collection objects.

* feat(gdscript): configure default host from OAS

* feat(gdscript): some documentation and better config

We don't need no factories nor singletons ; config is enough.

* docs(gdscript): document usage a little

* feat(gdscript): add more reserved words, skip jsonld models and configure features

We can now generate a client for an OAS server running ApiPlatform (PHP).

* feat(gdscript): improve logging with a configurable log level

* feat(gdscript): add support for Basic Bearer and Header ApiKey

(but I can't find the `description` template handler)

* fix(gdscript)

Too late to amend >.<

* fix(gdscript)

dangsarnit

* chore(gdscript): clean up a sprint artifact

* fix: don't forget the HTTP error code when relevant

* feat: use Resource as base class for models

* fix. Default string values now with "quotes"

* temporary remove settings as godot api have changed

* kick ci

* docs: review gdscript java class

* feat: support for TLS, some refacto, some review

There's still a lot of holes, TODOs and FIXMEs.

* feat: experimental support of Request inline objects

The inline response objects are still not supported.

* feat(gdscript): support inline request and response objects

* chore(gdscript): review the templates

* fix(gdscript): unexpected nulls in default values

{{#if defaultValue}} evaluates to true for null if we call super here.

* refacto(gdscript): replace "bee" prefix by "bzz", use a constructor

Now we pass the config and the client via the constructor.
This reduces the area of the public surface a bit, for the better I think.
This commit also cleans up the class name shenanigans.

* fix(gdscript): add missing file

* test(gdscript): refactor the test project to use the generated lib as addon

Since there is no singleton in the generated client, the addon need not be enabled in the project configuration to be usable.

The --headless mode is broken for now, as things changed in Godot 4 since the beta.

* docs(gdscript): document petstore server ADR

* test(gdscript): add GUT and an integration test

We used the latest stable GUT, but a feature we're going to need was merged today, so we'll need to update it either to master or to the next release at some point.

* refacto(gdscript, breaking): use an ApiResponse object in success callbacks

/spent 6d since the beginning

* test(gdscript): update integration tests

/spend 2h

* docs(gdscript): explain the new ApiResponse

Also moving core templates to their own subdir, for clarity.

/spend 10m

* chore(gdscript): review, document, clean up

/spend 2h

* test(gdscript): test the delete operation as well

/spend 7m

* feat(gdscript): update GUT and exit with appropriate code

/spend 2h

* docs(gdscript): add Gdscript's PI

Hire me while I'm available !  :D
I'd rather code than make a CV.

* feat(gdscript): support reserved keywords

Also adding some more assertions,
and using our own OAS file now.

/spend 3h

* refacto(gdscript): use "base" instead of "bee"

/spend 1h

* feat(gdscript): improve descriptions

/spend 1h

* fix(gdscript): await before polling

Contributed by @jchu231

* docs(gdscript): review the template files

* docs(gdscript): review and generate docs

---------

Co-authored-by: Bagrat <b.saatsazov@gmail.com>
2024-11-17 10:48:19 +08:00
Nelson Vides
86a18bfb62 erlang-server: add jesse to app.up release (#20120)
* erlang-server: add jesse to app.up release

* erlang-server: remove dialyzer errors that might not be related to the program
2024-11-17 10:07:03 +08:00
Tim
66908020e0 [python-pydantic-v1] Fix bug in serialization for SecretStr by applying changes from #18023 (#20102)
* Apply changes of #18023

* Regenerate samples

---------

Co-authored-by: tweber2 <tim.weber@vector.com>
2024-11-16 21:48:11 +08:00
dependabot[bot]
7087104741 Bump cross-spawn from 7.0.3 to 7.0.5 in /website (#20116)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.5.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.5)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 18:04:04 +08:00
William Cheng
02847e9323 Update minimum supported version of python in docs to 3.8+ (#20118)
* Update minimum supported version of python in docs

* update samples, docs

---------

Co-authored-by: Hugo Posnic <hugo.posnic@protonmail.com>
2024-11-16 18:01:50 +08:00
Alexander Fetisov
b44ba666aa adding support for @ResponseStatus annotation into spring-http-interface java spring generator (#20071)
* adding support for useResponseEntity into spring-http-interface java spring generator

* adding samples for @StatusResponse into spring-http-interface java spring generator

* additional changes to sample
additional changes to samples jdk17

* adding sample files

* extra adjustments

* fixing generator version

* fixing status code in samples

* some rollback

* some rollback 2
2024-11-16 15:52:11 +08:00
Victoria Casasampere Fernandez
d7a23a9fcf [Rust-Axum] Fix compilation error when validate is used on Nullable values (#20100)
* Fix compilation error when validate is used on Nullable values

* Update samples

* Switch Nullable Into Option trait implement to From

* Update samples from rebase
2024-11-15 22:03:59 +08:00
Bruno Coelho
293524785e [swift][client] rename api client to api configuration (#20103)
* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* [swift][client] rename api client to api configuration

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* [swift][client] rename api client to api configuration

---------

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>
2024-11-15 09:35:51 +00:00
Jan Škrášek
96adf2f8f5 Fix explicit KSerializer's name & generation when used in container (#20093)
* [kotlin][client] properly reference the same custom serializer name

* [kotlin][client] properly use correct type when enum in container
2024-11-14 14:11:08 +00:00
Jan Škrášek
d442fc9a65 [kotlin][client] do not generate Serializable(forClass) annotation as the serializer is already defined (#20092) 2024-11-14 14:10:07 +00:00
William Cheng
1ceb36f182 update java samples 2024-11-14 15:13:46 +08:00
William Cheng
344a2102e8 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2024-11-14 14:50:10 +08:00
DielN
216ba30172 [JAVA] Add missing dependencies in templates (#20075)
* Add commons-lang3 dependency for useReflectionEqualsHashCode

* Fix feign-no-nullable config/sample

* Add commons-lang3 dependency to jersey2

* Add & update mutiny dependency for microprofile

* Regenerate samples
2024-11-14 14:08:26 +08:00
Linh Tran Tuan
ee698f1e6d [Rust-Axum][Breaking Changes] Extracting Claims in Cookie/Header (#20097)
* [Rust-Axum][Breaking Changes] Extracting Claims in Cookie/Header

* Update

* Update
2024-11-14 14:05:30 +08:00
William Cheng
57d567e0d0 update slack invite url in homepage 2024-11-13 21:31:05 +08:00
William Cheng
975f4d4679 update slack url 2024-11-13 21:29:29 +08:00
William Cheng
301af6050b fix allOf with properties for ref as parent rule (#20083) 2024-11-13 21:27:19 +08:00
Nelson Vides
a95ea1f519 erlang-server: Extend provided return and make the type available (#20088) 2024-11-12 22:27:37 +08:00
Nelson Vides
20b5059aa5 Erlang server (#20087)
* erlang-server: Extend provided return

* Regenerate erlang-server handlers
2024-11-12 21:26:58 +08:00
William Cheng
85f711236c update scala samples 2024-11-11 18:54:20 +08:00
Aaron Pritzlaff
6792218775 Scala Cask oneOf support (#20051)
* added support for 'oneOf' types represented as unions

also updated libs and an 'errors' field rename to address
name clashes with likely/popular field names

* Created cask-specific petstore example which 
Includes a oneOf and allOf example
2024-11-11 18:46:27 +08:00
0xNF
bfcfc6ff25 [Dart2] Added better double handling to 'mapValueOfType<T>', which previously would fail when deserding doubles (#17808) 2024-11-11 18:33:08 +08:00
William Cheng
6bc8e0bffc Fix duplicated operationId with new rule in normalizer (#19872)
* fix duplicated opeationId with new rule in normalizer

* update workflow

* update samples

* update samples

* update java samples
2024-11-11 18:12:46 +08:00
qirex
e8c9722d6b [typescript-angular]: replace hasRequiredVars with hasRequiredParams for angular generator (#20077)
Co-authored-by: qirex <qirex@gmx.net>
2024-11-11 09:59:30 +01:00
DielN
2a17134628 Add equals and hashCode methods to Microprofile (#20011)
* Add equals and hashCode methods to microprofile

* Add missing import

* Update samples

* Add missing dependency for reflection equals
2024-11-10 17:43:19 +08:00
Joscha Feth
824f864512 docs: stop regeneration on error (#19898) 2024-11-10 17:38:04 +08:00
William Cheng
6ff52c7e31 suppress the cast warning in java okhttp-gson client (#20076) 2024-11-10 17:34:40 +08:00
Dennis Ameling
13b11d7706 kotlin-server: Fix required + nullable combination for properties (#20054)
* kotlin-server: Fix required + nullable combination

* Update FILES

* Updated generated code
2024-11-09 22:35:11 +08:00
William Cheng
223a169717 add TINQIN to the user list (#20072) 2024-11-09 18:28:17 +08:00
Julian Vennen
6bd3d53eee [PHP/Dart/Python] Correctly escape strings in single quotes (Fixes #17582) (#19529)
* [PHP/Dart/Python] Correctly escape strings in single quotes (Fixes #17582)

* Move escapeTextInSingleQuotes method to DefaultCodegen, add docblock
2024-11-09 16:50:12 +08:00
William Cheng
1bda458882 Add tests for duplicated operationId (#20070)
* add tests for duplicated operation id

* add spec file
2024-11-09 16:38:20 +08:00
William Cheng
b34df341a4 [csharp] Add option to fallback to int for Timeout (#20069)
* add option to fallback to int for Timeout

* update doc
2024-11-09 15:23:57 +08:00
Alec Petersen
bbccd2827f Replace MaxTimeout usage with Timeout, update Timeout to be a TimeSpan type (#19875) 2024-11-09 14:07:13 +08:00
DaveK-Rocketmakers
d9229c7b9f fix(csharp): Fixed JsonConverter for discriminators only appearing on base classes (#19972)
* fix(csharp): Fixed JsonConverter for discriminators only appearing on base classes

* chore: Updated .NET samples
2024-11-09 13:55:02 +08:00
Cameron Koegel
5702751e91 [Java] Respect User Supplied Header Params (#20042)
* [Java] Respect User Supplied Header Params

* remove if `dynamicOperations` true
2024-11-09 13:41:30 +08:00
Dennis Ameling
a7a86398d0 [kotlin-server] Bump Kotlin/Gradle versions and improve CI triggers/config (#20061)
* [kotlin-server] Bump Kotlin versions to latest

* Run tests on more samples

* Fix typo in workflow definitions

* Update samples

* Bump Gradle to 7.6.4

* Some further tweaks

* Bump Gradle versions

* Fix Gradle version syntax
2024-11-09 13:39:20 +08:00
Dennis Ameling
7bce639441 [typescript] use supportsES6 in sample testing (#20062) 2024-11-08 14:11:54 +01:00
Jenny G. L.
961c2e44d1 [scala][client]: scala-http4s: minor improvement (enum companion method, remove implicit, error handling) (#19901)
* [scala][http4s][client]: add enum method; remove implicit

* improve error handling

* more enum enhancement

* remove unused

* update samle

* avoid breaking change

---------

Co-authored-by: Jenny Leahy <jennyleahy@JENNYLEAHY.localdomain>
2024-11-08 17:15:32 +08:00
Sylwester Zieliński
3a3688280f Bump libraries for Kotlin-client. (#20053) 2024-11-08 08:05:28 +00:00
dependabot[bot]
00db84d22b Bump actions/setup-dotnet from 4.0.1 to 4.1.0 (#20055)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.1 to 4.1.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.0.1...v4.1.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 13:13:06 +08:00
Jules Ivanic
2c38d0de35 [typescript-fetch][Fix] oneOf models are generated without ...ToJSONTyped functions but models referencing still try to import (#20046)
* Fix #19858

* re-generate the samples
2024-11-07 14:33:33 +01:00
William Cheng
28e02fc1a2 update aspnet samples 2024-11-07 20:33:49 +08:00
Julien Tschäppät
7deecdc569 [csharp] Add a server generator for FastEndpoints (#19690)
* Add of a first working generator for FastEndpoints framework

Generator that support the basics of a FastEndpoints project
https://fast-endpoints.com/

* Add respose code documentation support

* Add an option to enable use of problem details

* Clean enum and model

* Add an option to generate record for requests/models

* Update sample

* Add support of nullable types

* Add option to enable authentication

* Add option to generate validators

* Clean readme.md file

* Add option to enable response caching

* update readme template

* Add missing files references

* Update generated sample

* Add link to documentation

* Add generator documentation

* correctly support packageName

supportingFiles additions moved to processOpts()

* improve useAuthentication option handling

Avoid to copy an empty file

* processOpts, move call to parent at the end

* Update generated sample

* Refactor and fix super.processOpts(); call order

* Handle the case of multi-line description

* Rename field to match naming conventions

* Add useApiVersioning option

* Update generated sample

* Add generator documentation

* Fix record when model contains optional properties

* Add configuration files for each option

* Add sample project for each configuration

* Add GitHub Action workflow for sample projects

* Add FastEndpoints BindFrom attribute on path, query and form params

* Update sample generated projects

* Fix validator template

* fix alphabetical order

* Use fully qualified name for FastEndpoints

* Add options to set GUID to be used in sln file

* update sample projects

* Update generators.md

* Fix path in github workflow

* Put readme, gitignore and solution file at the root of generated project

* update sample projects

* Remove the projectGuid option

This Guid need to be constant, it is related to project type

* update sample projects
2024-11-07 20:28:29 +08:00
Anders Lien
e2553a4a91 Copy escapeReservedWord implementation from python generator (#20035) 2024-11-07 20:00:06 +08:00
Linh Tran Tuan
cfef948c11 [Rust-Axum] [Breaking Changes] Prevent Operation response with internal Error (#20047)
* [Rust-Axum] Fix: prevent Operation returns Internal Server Error

* Update
2024-11-07 18:39:51 +08:00
Jules Ivanic
86758747c2 Fix #20044 (#20045) 2024-11-07 09:50:51 +01:00
Cameron Koegel
98cd9bd803 [typescript-axios] Respect User Supplied Header Params (#20040) 2024-11-06 18:01:59 +01:00
Jonathan Ballet
57cfff1950 python: stronger typing for the "configuration" module (#20014)
* python: strong typing for the configuration module

* 3.8 compatibility

* fix bearer format

* Specific auth settings
2024-11-06 16:36:47 +08:00
devhl-labs
54920ff106 [csharp][generichost] Better handling of duplicate operation ids (#19913)
* fixed missing output

* bug fix

* add new sample

* build samples again

* delete sample

* move the sample and add to github workflow

* remove model not needed for this test

* handle specs with no models

* better handling of duplicate operation ids

* fixed mistake in resolving conflicts

* build samples again

* revert a change sent in another pr
2024-11-06 16:29:49 +08:00
devhl-labs
f98073d508 Refactor copy lambda (#19983)
* comment out broken tests

* refactored copy lambda

* added tests
2024-11-06 16:29:17 +08:00
Aaron Pritzlaff
b51b18e3ca Scala cask api effects (#19936)
* Scala-cask improvements:

 * fixe for grouped methods which have routes containing dashes.

Previously our OperationGroup work-around would potentially
Create methods like ‘foo-bar’, which isn’t a valid function name

 * Fix to not import some.package.Array[Byte] when binary format is specified

 * Fix for grouped operations which contain duplicate query parameters

 * Fix for binary response fields. This can come up with the following example

        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "format" : "binary",
                  "type" : "string"
                }
              }
            },
            "description" : "data"
          },

 * Fix for enum model classes
Extracted complex logic for ‘asData’ and ‘asModel’ transformations for properties

 * Introduced a generic effect F[_] for services

This was done to support composable services
(Service A calls Service B) by using monadic
Effect types (ones which can flatMap)

 * Fixed unique union types for responses, asModel and asData fixes for non-model types

* scala-cask: regenerated samples

* Fix for reserved-word properties in the API

* Fix for null imports and reserved-word enum types

* Fixes for api methods with backticked params

* Fix for duplicate (by name) grouped params

* small syntax fix

* logging response type

* Regenerated samples

* String.format fix
2024-11-06 16:14:31 +08:00
Linh Tran Tuan
cded99c3fc [Rust-Axum] Support Authentication (Cookie, API Key In Header) (#20017)
* [Rust-Axum] Support Cookie Authentication & API Key In Header

* Fix

* Fix

* Fix Header Params & Responses
2024-11-06 16:13:00 +08:00
Tanmay Mohapatra
06547b7b82 [julia] improve enum support (#20016)
* [julia] improve enum support

Improved enum support. Added an override for `postProcessModels` method in julia code generator to do enum post processing. Added an override for `toEnumValue` method in julia code generator to generate enum values correctly based on julia types. Updated templates to use `#enumVars` for generating enum values.

* generated samples
2024-11-06 16:04:15 +08:00
dependabot[bot]
e1bccbfe47 Bump s4u/setup-maven-action from 1.15.0 to 1.16.0 (#20025)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.15.0 to 1.16.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.15.0...v1.16.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-06 16:03:23 +08:00
Lennard Sprong
bdad11d027 [swift6] Add Sendable conformance to request parameter enums (#20023) 2024-11-04 16:23:09 +00:00
Lennard Sprong
00dbe59994 [swift6] Add Sendable conformance to structs and enums (#20013) 2024-11-04 11:38:46 +00:00
Chirag Jain
67af02ccc8 python-pydantic-v1: Keep trailing commas for enum validation tuples (#19985)
* python-pydantic-v1: Keep trailing commas for tuples when enum has just single member

* Update samples

* Add test for single member enums

* Refactor test name
2024-11-02 15:26:19 +08:00
Kirill Zimnikov
66c7b2f8cc feat cpp-qt-client: fix cast primitive to string (#20000) 2024-10-31 21:10:07 +08:00
William Cheng
b66b7af5d0 [JS] set option to true by default, update samples (#20003)
* set option to true by default, update samples

* update doc
2024-10-31 15:01:37 +08:00
Tobias Brauneis
ae4e2515dc add parameter 'useURLSearchParams' to use JS build-in UrlSearchParams, instead of deprecated npm lib 'querystring' (#19949) 2024-10-31 14:48:45 +08:00
Alexander Kose
c70b07808e Add support for a token supplier to OAuth based RestClient clients. (#19944)
Fixes OpenAPITools#19943
2024-10-31 14:13:59 +08:00
Pavel Sveda
acb16410c4 [Kotlin] Introduce support for Kotlin Explicit API Mode for Kotlin-Client generator (resolve #16506) (#19999)
* [Kotlin] Properly document nonPublicApi CLI option

* [Kotlin] Respect parameter name of parent KSerializer to avoid miss-behavior

* [Kotlin] Introduce support for Kotlin Explicit API Mode for Kotlin-Client generator (resolves #16506)
2024-10-30 21:57:47 +00:00
Bruno Coelho
e9ea12f25a [swift6] improve retry interceptor (#19988)
* [swift6] improve retry interceptor

* [swift6] improve retry interceptor

* [swift6] improve retry interceptor
2024-10-30 11:31:35 +00:00
alfredo-accuris
9452873b99 [csharp] Mustache fully qualify namespace for Path (#19349)
* fix: csharp mustash fully qualify namespace Path

The generated code of Csharp get a fully quallify namespace for PATH

using Path = global::System.IO.Path;

* mend

* Remove alias for fully qualify Path class
2024-10-30 14:41:35 +08:00
ksn-partisia
b627e1cc67 [Bug] [Java] Fix raw type compilation warning in ApiClient for jersey2 and jersey3 (#19966)
* Add type annotation to raw type Iterable in jersey templates

* Regenerate samples
2024-10-30 14:24:32 +08:00
Ross
4a21dea47f Added support for a trait based reqwest Rust client (#19788)
* Added Rust Reqwest trait based client

* Fixed Cargo imports for reqwest trait template

* Added support for mockall to Rust reqwest trait library

* Added MockApiClient when mockall and topLevelClient are enabled

* Added missing flags to Rust generator documentation

* feat: add support for single argument and bon builder

Adds support for single argument and bon building for the new
reqwest-trait generator

* Rebuilt rust samples

---------

Co-authored-by: Troy Benson <troybensonsa@gmail.com>
2024-10-30 14:21:11 +08:00
Per Hallgren
03c29e72c6 fix(go): only import reflect when using it (#19967)
The api.mustache template only uses the reflect package if there is a
query parameter which `isCollectionFormatMulti`. The import for the
reflect package is however added if _any_ parameter is
`isCollectionFormatMulti`.

If the parameter which `isCollectionFormatMulti` e.g. is in the body
instead of the query, this leads to the import being part of the
generated code but not used and the code does not compile.

This updates reworks the import handling for the `reflect` package so
that it is only added if there is a query parameter which
`isCollectionFormatMulti`.

Co-authored-by: Per Hallgren <perhallgren@users.noreply.github.com>
2024-10-30 14:20:25 +08:00
William Cheng
cbc64e86d3 Update inline model resolver to flatten responses (#19992)
* update inline model resolver flatten responses

* minor update

* minor update

* minor update

* minor update
2024-10-30 11:50:29 +08:00
Stefano Marzo
25b6fd3937 Added Company to README.md (#19994)
Updated the README company list by adding CERN, which is currently experimenting with OpenApi Generator to streamline API calls in a newly developed business application.
2024-10-30 11:49:54 +08:00
Tomasz Letachowicz
32bf99a39f [BUG][KOTLIN] Sanitize names of the adapter variables in anyOf and oneOf model template to avoid compilation errors (#19981)
* [kotlin] Sanitize one_of and any_of model variable names to avoid compilation errors (#19942)

* [kotlin] add missing validateJsonElement method to oneOf and anyOf model templates (#19942)
2024-10-29 11:38:11 +00:00
William Cheng
48e8375166 fix ref to allOf wrapper, add tests (#19986) 2024-10-29 10:24:59 +08:00
devhl-labs
891698784d Fix test on Windows (#19980)
* comment out broken tests

* fixed test for windows
2024-10-29 00:35:55 +08:00
William Cheng
32fdd7c4d8 update samples 2024-10-28 11:36:40 +08:00
William Cheng
537737730b better handling of api response 2024-10-28 11:33:39 +08:00
Andreas Haessler
836d426d21 [Java] Fix generation of POJOs with sets of enums (fixes #19957) (#19960) 2024-10-28 10:19:08 +08:00
William Cheng
62c0258e04 Better handling of allOf with unsupported schemas (#19964)
* better handling of allOf with unsupported schemas

* add test spec

* better messages
2024-10-28 10:00:17 +08:00
dependabot[bot]
30ff0d7ca9 Bump actions/setup-dotnet from 4.0.1 to 4.1.0 (#19971)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.1 to 4.1.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.0.1...v4.1.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 15:16:32 +08:00
dependabot[bot]
008c1a42ef Bump http-proxy-middleware from 2.0.6 to 2.0.7 in /website (#19952)
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.7/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-23 16:43:32 +08:00
William Cheng
511316a966 Test build.gradle for java native petstore samples, sync pom.xml & build.gradle (#19951)
* test build.gradle for java native petstore samples

* trigger build

* sync pom.xml and build.gradle (java native)
2024-10-23 16:38:30 +08:00
Simon
21093b78c6 [JAVA]: Fix unknown property error for gradle build (#19933)
* Replace classifier with archiveClassifier

* Regenerate samples by script
2024-10-23 15:37:46 +08:00
Schmiddiii
f576f05eb2 Fix Rust generation for versions without minor or patch parts (#19946)
This fixes generation of a Rust library for OpenAPI specifications
where `info.version` was a single-digit number. This happened to for
[this](db005f2e55/openapi.yaml (L10))
specification. The fix for this issue is similar to the one in !17440.
2024-10-23 14:35:37 +08:00
Aliaksandr SEMIANKEVICH
e9c3c63732 [REQ] resolve #17544 Add x-field-extra-annotation and x-class-extra-annotation for kotlin generator (#19899)
Co-authored-by: Aliaksandr SEMIANKEVICH <aliaksandrsemian.epam@navan.tech>
2024-10-22 18:05:38 +08:00
William Cheng
071540f55a fix path with unescaped value (#19938) 2024-10-22 15:07:46 +08:00
Tomasz Letachowicz
eb92eeb32e [kotlin] Fix the path variable escaping in kotlin client generators (#19930) (#19937) 2024-10-22 12:34:42 +08:00
Linh Tran Tuan
52610e026e [BugFix] [Rust*] model-name-prefix causing invalid generated code (#19922)
* [BugFix] [Rust*] model-name-prefix causing invalid generated code]

* Update

* Fix

* Update

* Update
2024-10-21 18:10:16 +08:00
Bruno Coelho
266193f95f [swift6] update RXSwift version and pin Alamofire version (#19857) 2024-10-20 08:24:10 +01:00
Linh Tran Tuan
cfdb00a14c [Improvement] [Rust-Axum] Fix clippy warning (#19920) 2024-10-20 14:09:25 +08:00
William Cheng
8c8f2f3521 fix javaodc in resttemplate oauth class (#19918) 2024-10-19 21:52:18 +08:00
William Cheng
695902cca1 update resttemplate dep to newer version (#19917) 2024-10-19 16:13:14 +08:00
William Cheng
ec98693da5 fix accepts, contentType with unescaped values (#19915) 2024-10-19 15:56:07 +08:00
Tomasz Letachowicz
c8f2d2be1f [java][feign] Fix the character escaping in feign generated Content-type and Accept headers in order to generate proper values for these fields (#19895) (#19912) 2024-10-19 15:12:45 +08:00
William Cheng
fc161821a7 update configs with tempalteDir (#19914) 2024-10-19 15:12:08 +08:00
Ryan Mustard
1248d7a103 [swift5] fix compile error from Alamofire 5.10 - cast Parameter type to avoid recursion (#19908)
* cast type to avoid unintended recursive call

* update samples
2024-10-18 15:58:14 +01:00
Bruno Coelho
c6dbf0870c [swift5] add credentials by default (#19906) 2024-10-18 10:38:27 +01:00
Jonas Reichert
f6c0b4ad6b [swift6] adjust RequestInterceptor to pass RequestBuilder instead of OpenapiClient (#19904)
* inject requestBuilder instead of openAPIClient

* adjust template

* run samples

* fix tests

* fix test

* w

* fix
2024-10-18 09:45:35 +01:00
Joscha Feth
dc3718cd5c fix(typescript): typecheck generated samples + fixes (#19903)
* fix(typescript): typecheck generated samples + fixes

* wip(today's fortune): The sum of the Universe is zero.

* Update .github/workflows/samples-typescript-typecheck.yaml

* Update modules/openapi-generator/src/main/resources/typescript/tsconfig.mustache

* chore: regenerate samples
2024-10-18 09:57:43 +02:00
David Riddervold Marconis
ce09134b48 [typescript] feat: Add typescript licenseName option (#19888)
* Add licenseName option to typescript

* Update documentation

* Fix import in test

* Consolidate typescript test OptionsProviders

* Rename Typescript to TypeScript
2024-10-17 15:48:38 +02:00
Joscha Feth
23bd50fea0 fix(typescript): missing override directives / satisfy noImplicitOverride (#19896)
* fix(typescript): missing `override` directives

* chore: regenerate samples
2024-10-17 15:43:21 +02:00
Bruno Coelho
38dac13c26 [swift6] add credentials by default (#19885) 2024-10-16 13:38:49 +01:00
Gregory Merlet
0a39a1760e Add httpClient config to typescript-nestjs generator (#19876)
* feat: add httpClient to config

* chore: generate samples and doc

* refactor: change import to type

* chore: generate samples and doc
2024-10-16 13:32:05 +02:00
Bruno Coelho
ca032113f2 [Swift] shorter readme (#19884)
* [Swift] shorter readme

* [Swift] update docs

* [Swift] update docs

* [Swift] format codegen

* [Swift] try to make CI pass
2024-10-16 11:55:18 +01:00
Nicolas Vervelle
65b1859161 Add nullability annotations to Java generated clients (#19617)
* issue-1960: Add nullability annotations to Java generated clients

Motivations:
Have generated clients properly annotated for nullability to be able to check code using them with tools like NullAway

Modifications:
* Add nullable_var_annotations template to handle nullability annotation on vars
* Add pojo templates to use the nullability template
* Adapt tests

* issue-1960: Add nullability annotations to Java generated clients

Modifications:
* Run export_docs_generator.sh script to update samples
2024-10-16 16:14:29 +08:00
William Cheng
8f7d9f7467 update samples (#19882) 2024-10-16 15:55:57 +08:00
James Ring
c487a6ea18 Fix missing serverConf variable (#19859)
Previously, if an operation had a 'servers' block, the template would
emit code requiring a `serverConf` local variable. Unfortunately, the
template would not emit this variable, because it was looking for a
`servers` variable in the wrong context.

This change makes the template emit an anonymous block containing a
unique server configuration for each operation.

I did not test this change beyond a simple code inspection, there are
other problems with the code generator which prevent it from running on
my API definition.
2024-10-16 15:45:18 +08:00
William Cheng
21a8e4e623 [python-fastapi] Update fastapi, starlette to newer versions (#19880)
* update fastapi, starlette dep to newer verions

* update samples
2024-10-16 14:17:38 +08:00
Peter Storch
b1dd6b262e fix Api Interface for kotlin-spring with spring-cloud library (#19877) 2024-10-15 18:41:48 +01:00
Jazzco
1214ad7492 Update HttpRequest.cpp.mustache - use stable 4-parameter connect (#18893)
* Update HttpRequest.cpp.mustache

Use stable 4-parameter connect

* add generated files

* Revert "add generated files"

This reverts commit 1d4e78aa0d.

* changed from 3- to 4-parameter connect for api-body for stable connection (see warning [clazy-connect-3arg-lambda])

* ran step 3 from Linux

* fixed missing braces and additional 3par issues

* add step 3 generated file

* activate trace for more info about link issue

* Update .github/workflows/samples-cpp-qt-client.yaml

Co-authored-by: Martin Delille <martin@delille.org>

* Update .github/workflows/samples-cpp-qt-client.yaml

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* rebuild examples

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* removed braces and updated examples

* rebuild samples

* remove false generated changes

---------

Co-authored-by: Martin Delille <martin@delille.org>
2024-10-16 00:08:40 +08:00
William Cheng
4ddfb6fc41 update generator faq (#19869) 2024-10-15 16:50:39 +01:00
William Cheng
3b3f9a770a refacot is null schema check (#19873) 2024-10-15 17:17:28 +08:00
Bruno Coelho
2354d402a8 [swift6] promote to beta and improve documentation (#19856)
* [swift6] promote to beta

* [swift6] format code

* [swift] authentication docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs
2024-10-14 12:55:25 +01:00
Alec Petersen
b5b760a8a2 [csharp] Address obsolete build warnings in ApiClient (#19847)
* Stop using obsolete MaxTimeout

* Convert timeout to a timespan, rather than update the configuration object

* Use async overload of RestClientExtensions.Deserialize

* Update samples

* Fix typo

* Undo timeout change
2024-10-14 15:44:12 +08:00
Daniel Simon
8849156d29 Remove further Qt support before Qt 5.15.2 (#19824)
* Remove further Qt support before Qt 5.15.2

This is a follow-up pull request for [#19164] (https://github.com/OpenAPITools/openapi-generator/pull/19164), which removes the further handling of older Qt versions.

* Updates samples to match the mustach config files.

---------

Co-authored-by: Daniel Simon <mail@dlins.de>
2024-10-14 11:09:58 +08:00
William Cheng
2838b9584b add logic in normalizer to auto fix self-reference schemas (#19849) 2024-10-12 16:39:48 +08:00
William Cheng
d1ca82cb8b auto fix self-reference schemas 2024-10-12 16:12:23 +08:00
Bruno Coelho
462f450366 [kotlin] Map file and binary to ByteArray (#19840)
* [kotlin] Map file and binary to ByteArray

* [kotlin] Map file and binary to ByteArray
2024-10-11 08:59:16 +01:00
Bruno Coelho
185c0639c0 [swift6] simplify authentication (#19839) 2024-10-11 08:36:35 +01:00
William Cheng
715f6b634e add @e5l to kotlin technical committee (#19843) 2024-10-11 15:09:28 +08:00
Leonid Stashevsky
7f899dff97 [Kotlin Server] Update Ktor to latest version; move config to kts (#19727)
* [Kotlin Server] Update Ktor to latest version; move config to kts

* Bump gradle version for kotlin server samples

* Replace deprecated gradle API

* Bump gradle to 7.6.4
2024-10-11 11:44:53 +08:00
Ben Meyrick
368b9b7e37 [TypeScript - Angular] Add syntax highlighting to code blocks and correct heading levels in README.mustache (#19837)
* Improve typescript-angular README.mustache

- Add syntax highlighting to code blocks
- Correct heading levels

* Add space between heading and convert bare url to angle brackets link

* Update samples
2024-10-10 17:57:16 +02:00
Marvin Sommer
a84946bdb3 [Java Spring] Fix copyOf inheritance using empty object instead of passed value (#19426)
* Fix copyOf inheritance using empty object instead of passed value

* Generate new samples
2024-10-10 16:52:38 +08:00
William Cheng
d9cdecf3c3 commnet out gh pages publish (#19831) 2024-10-10 15:38:22 +08:00
William Cheng
b357744048 Fix python-fastapi signature of parameters for method (#19830)
* Fix python-fastapi signature of parameters for method

* update

---------

Co-authored-by: Diorcet Yann <diorcet.yann@gmail.com>
2024-10-10 15:36:22 +08:00
vcutrona
45fa4384e7 [python] Check if the given input is a container (Array or Map) when validating enum values (#19316)
* checks if input is Array or Map in validate_enum

* update samples
2024-10-10 14:57:04 +08:00
William Cheng
ea4b17c32f add missing semi colon in travis.yml 2024-10-10 14:55:59 +08:00
martin-mfg
b730e36937 [JAVA] fix several anyOf/oneOf problems (#19817)
* erasure duplicates

* sanitize beanValidation

* oneOf maps

* anyOf

* update samples
2024-10-10 14:50:18 +08:00
jops-wtakase
43fd18935c [python-flask] Fix #19487 SyntaxWarning (#19489)
* Bugfix: #19487: Fix SyntaxWarning

* Fix a bug which generates SyntaxWarning

* Chore: #19487: Generate sample
2024-10-10 14:48:02 +08:00
William Cheng
30e6612558 minor fix to travis.yml 2024-10-10 14:28:05 +08:00
Norman Schimmrich
d14eab8446 [kotlin-client][jvm-spring-webclient] Extract data from PartConfig for multipart/form-data requests (#19811) 2024-10-10 13:41:55 +08:00
William Cheng
627c0f43cd uncomment workflow to publish doc (#19821) 2024-10-09 13:07:41 +08:00
Aaron Pritzlaff
31be9b9207 scala-cask fix: Added support for 'additionalProperties:true' (#19767)
* Added support for 'additionalProperties:true' to scala-cask generator

additionalProperties means the request can contain arbitrary
additional properties, and so this change adds an 'additionalProperties'
field to request objects which is a json type.

* fixed warning in example scala-cli project

* updated samples

* addressed codegen comments
2024-10-09 11:15:25 +08:00
martin-mfg
d60200de38 improve java enums (#19815) 2024-10-09 10:46:17 +08:00
Alex Wallen
22b8c47b93 feat: add middleware for create actions (#19793)
* feat: add middleware for create actions

* chore: update samples

* chore: update typescript sample?
2024-10-09 10:38:22 +08:00
Hui Yu
ba169342a1 [C][Client] Add gcc predefined macros to reserved keywords (#19791) 2024-10-09 01:38:12 +08:00
Joscha Feth
b3b3f46ee2 docs: release links and list (#19810)
references #19809

cc @wing328
2024-10-08 19:20:20 +08:00
William Cheng
25b834131c update k6 samples 2024-10-08 17:32:41 +08:00
MrRober
7c84177e65 Remove calculateRequestOrder Function and fix bug (#19685)
* Remove calculateRequestOrder Function

This PR removes the calculateRequestOrder function from the codebase and addresses the bug described in issue #19110. After a thorough review, it was determined that the function was unnecessary due to its redundant logic and lack of unique functionality.

* delete import java.lang.*;

* delete import java.lang.*;

* Remove calculateRequestOrder Function

This PR removes the calculateRequestOrder function from the codebase and addresses the bug described in issue #19110. After a thorough review, it was determined that the function was unnecessary due to its redundant logic and lack of unique functionality.

* delete import java.lang.*;

---------

Co-authored-by: rmarqmo <rmarqmo@mercadona.es>
2024-10-08 17:27:39 +08:00
William Cheng
e2c458b9ea Prepare 7.10.0 (#19809)
* Revert "prepare 7.9.0 release (#19808)"

This reverts commit 4145000dfe.

* prepare 7.10.0 snapshot

* update doc

* update samples
2024-10-08 11:21:54 +08:00
William Cheng
4145000dfe prepare 7.9.0 release (#19808) 2024-10-08 10:30:09 +08:00
CaptainAye
a82475ed4e Fix java rest client's ApiClient constructors to make sure objectMapper parameter is used in the client (#19667) (#19795) 2024-10-08 09:47:16 +08:00
dependabot[bot]
7cf84e2daf Bump s4u/setup-maven-action from 1.14.0 to 1.15.0 (#19807)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:34:58 +08:00
Kunitsyn Oleg
4ff8c3aaef [Python][Client] Allow all content-types with text/ prefix (#19802)
* ODM-12108: allow all content-types with text/ prefix

* ODM-12108: Update deserialization tests

---------

Co-authored-by: Oleg Kunitsyn <you@example.com>
2024-10-08 09:34:36 +08:00
roelwuytens-androme
7d1e9997d0 [Kotlin] Allow other content-types when only interested in status-code / Unit (#19801)
* Allow Unit response

* Updating samples

* Improve comment for Unit shortcut
2024-10-07 13:18:51 +01:00
Bruno Coelho
9a0fc5900f [swift6] urlsession interceptor (#19797)
* [swift6] alamofire interceptor

* [swift6] alamofire interceptor

* [swift6] urlsession interceptor

* [swift6] urlsession interceptor

* [swift6] urlsession interceptor
2024-10-07 12:16:18 +01:00
Bruno Coelho
4c81563708 Update PHP samples 2024-10-07 11:27:35 +01:00
kruegge82
5902af4e75 in case of defined status codes > 299 switch will have no effect. issue 7788 (#19483)
* in case of defined status codes > 299 switch will have no effect. As described in issue 7788

so we get only an error if statusCode is not defined AND not between 200 and 299

https://github.com/OpenAPITools/openapi-generator/issues/7788

* in case of defined status codes > 299 switch will have no effect. As described in issue 7788

so we get only an error if statusCode is not defined AND not between 200 and 299

https://github.com/OpenAPITools/openapi-generator/issues/7788
2024-10-07 16:01:36 +08:00
Bruno Coelho
39fb51062b [swift6] alamofire interceptor (#19796)
* [swift6] alamofire interceptor

* [swift6] alamofire interceptor
2024-10-07 08:37:03 +01:00
Nelson Vides
77e8346fd7 [Erlang Server] Add more type information and fix minor bugs (#19792)
* Add type information about classes and operation-ids

* Remove unused logger included header

* Bugfix badmatch in delete_resource handler

* Bugfix: respect original indentation of operation_ids

* Bugfix json schema correct refs

* Add a bit more documentation

* Regenerate erlang-server handlers
2024-10-07 15:28:14 +08:00
Francesco Saverio
9163e00932 Implemented missing definitions of declared methods inside modelbase-header.mustache, added two missing body of methods definitions (#19569)
* Fix #19566 implemented the missing definition of declared methods inside openapi-generator/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/modelbase-header.mustache, have also be added two missing body of methods definitions

* Regenerated cpp-restsdk client samples

* Fixed shared_ptr creation
2024-10-07 14:06:06 +08:00
William Cheng
2f3f25dee2 update samples 2024-10-07 11:17:52 +08:00
devhl-labs
28ae69dafd [windows] Fixed missing output (#19715)
* fixed missing output

* bug fix

* add new sample

* build samples again

* delete sample

* move the sample and add to github workflow

* remove model not needed for this test

* handle specs with no models
2024-10-07 10:58:05 +08:00
Alec Petersen
6745340c64 Make DateOnly nullable in the csharp client codegen (#19333) 2024-10-07 10:49:17 +08:00
Alec Petersen
c7d9857c8d [csharp] Output DateOnly paramater in the correct default format (#19728) (#19729)
* Output DateOnly in the correct default format

* Only add conditional if we are net60 or later

* Update samples
2024-10-07 10:48:50 +08:00
devhl-labs
fce8bb9604 support formatting date only (#19785) 2024-10-07 10:23:00 +08:00
William Cheng
c8fad42324 update samples 2024-10-07 08:53:30 +08:00
Joscha Feth
2f73582d82 fix(core): single value enums (const) are not generated correctly in 3.1 specs (#19696)
* fix(core): single value enums (`const`) are not generated correctly in `3.1` specs

* fix: const enums

* chore: update samples

* chore: update samples
2024-10-06 23:16:48 +08:00
Joscha Feth
899ddecdbd feat(avro)/refactor(core): unify *_POST_PROCESS_FILE behaviour and reuse code (#19761)
* feat(avro)/refactor: unify `*_POST_PROCESS_FILE` bahviour and code

* refactor: use existing function

* test: add simple test for post processor execution

* test: restrict concurrency to 1

* docs: add explanation to method
2024-10-05 17:25:17 +08:00
William Cheng
98468aba5c minor improvemetns to new scala client generator (#19786) 2024-10-05 17:15:37 +08:00
William Cheng
fbebfeb774 update doc 2024-10-05 17:08:14 +08:00
Jenny G. L.
9791e6f537 [Scala][Client]Add Http4s scala3 client codegen (#19658)
* fix attemp

* use java.time.Instant

* fix client gen

* Tweeks

* header and form

* use scala 3 enum

* more tweeks

* add additional properties; add auth

* add form media type

* add modelsOnly

* add unit tests

* add petstore samples

* add doc

* add new samle to .github/workflows/samples-scala.yaml

* update build.sbt template

* simply the baseclient

* add None to optional field

* tweek auth model and format

---------

Co-authored-by: Jenny Leahy <jennyleahy@JENNYLEAHY.localdomain>
2024-10-05 17:00:19 +08:00
Viacheslav Pivovarov
e5dee54797 [R][client] Make enum parameters with required: false optional to request arguments (#19654)
* ODM-11697: Adding null check in R-api

* bin/generate-samples.sh executed

---------

Co-authored-by: Kunitsyn Oleg <114428801+genestack-okunitsyn@users.noreply.github.com>
2024-10-05 15:12:30 +08:00
William Cheng
77eb192414 update php samples 2024-10-05 15:02:54 +08:00
Imants Horsts
5e7cf1cfdd By default should use static configuration class instance, otherwise new instance is created every time (#19775) 2024-10-05 14:57:08 +08:00
William Cheng
ad6c2dd2b7 [normalizer] bug fixes (isNullTypeSchema, handling of primitive types with oneOf) (#19781)
* better handling of primivitype type with oneOf

* fix null check, add tests

* add check for properties
2024-10-05 13:57:11 +08:00
Bruno Coelho
8e10dd7be7 [swift6] add samples that test upload files as data (#19780)
* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data
2024-10-04 15:52:48 +01:00
Bruno Coelho
66cde8b5f4 [swift6] make async await the default response library (#19776)
* [swift6] make async await the default response library

* [swift6] make async await the default response library

* [swift6] make async await the default response library
2024-10-04 08:05:05 +01:00
Joscha Feth
cfe6520283 fix(avro-schema): fix NPE for null enum values (#19771) 2024-10-04 12:56:11 +08:00
Pascal Bachor
817da39124 [Python] Restore required dev dependency + Adjust generated Github workflow (#19773)
* Restore required python client dev dependency pytest-cov

* Harmonize python client workflow definitions

---------

Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2024-10-04 00:39:45 +08:00
Beppe Catanese
67942aa478 [Typescript-Node] Mark deprecated endpoints (#19770)
* Add @deprecated tag for deprecated operations

* Add test helper to verify a given line

* Add test to verify deprecated method

* Regenerate samples

* Delete tmp files after test

* Remove assertFileContains on specific line

* Update modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache

Co-authored-by: Joscha Feth <joscha@feth.com>

* Correct indentation

* Regenerate samples

---------

Co-authored-by: Joscha Feth <joscha@feth.com>
2024-10-03 17:45:04 +02:00
Bruno Coelho
06d914dd0f [swift6] useSPMFileStructure by default (#19772)
* [swift6] useSPMFileStructure by default

* [swift6] useSPMFileStructure by default

* [swift6] useSPMFileStructure by default
2024-10-03 16:23:43 +01:00
William Cheng
5f345c0213 update php samples 2024-10-03 21:10:30 +08:00
Bruno Coelho
c9a9ae0aa8 [swift6] move infrastructure file inside infrastructure folder (#19765)
* [swift6] replace AnyCodable with JSONValue

* [swift6] create infrastructure folder

* [swift6] replace AnyCodable with JSONValue

* [swift6] create infrastructure folder

* [swift6] replace AnyCodable with JSONValue

* Try to fix CI
2024-10-03 14:06:18 +01:00
Markus Holstein
2437d7fa97 [PHP-Client] Allow Content-Type merge-match+json for encoding (#19479)
* Allow Content-Type merge-match+json for encoding

* Changes JSON recognition to more flexible regex

* Removes now useless JSON format list

* Removes empty spaces

* Adds explanatory PHPDoc comment

* Moves Json-detection to class HeaderSelector
2024-10-03 20:53:15 +08:00
Beppe Catanese
d521cddc3b Remove unnecessary files (#19769) 2024-10-03 13:56:35 +02:00
Bruno Coelho
c48ef148c0 [swift] remove unused lenientTypeCast option (#19764)
* [swift6] remove unused lenientTypeCast option

* [swift6] remove unused lenientTypeCast option

* [swift5] remove unused lenientTypeCast option
2024-10-03 12:11:16 +01:00
Bruno Coelho
74100e44cb [swift6] replace AnyCodable with JSONValue (#19763) 2024-10-03 10:58:06 +01:00
William Cheng
577483c2e2 update rust axum samples 2024-10-03 16:10:27 +08:00
faro-dr
d193050a35 Fix rust axum doc tests (#19538) (#19539) 2024-10-03 16:01:29 +08:00
Syd Besco
9f2bd313ff [POWERSHELL] fix: keep array context when converting to json (#19535) 2024-10-03 15:57:21 +08:00
WouterBaeyens
6686c4d02f [BUG] HandlebarsEngineAdapter.java failed to use custom FieldValueResolver causing IllegalAccessException for maps (#19634)
* Update HandlebarsEngineAdapter.java

The old MY_FIELD_VALUE_RESOLVER.INSTANCE is equivalent to FieldValueResolver.INSTANCE, which is assigned `new FieldValueResolver();` so our custom class was never used.

* Add test verifying partial template works; Extract accessAwareFieldValueResolver; Add test verifying priority fo values extracted from object
2024-10-03 15:56:53 +08:00
Bruno Coelho
c84af35e7b Revert "[swift6] remove unused lenientTypeCast option"
This reverts commit 171b98e06c.
2024-10-03 08:45:42 +01:00
Bruno Coelho
171b98e06c [swift6] remove unused lenientTypeCast option 2024-10-03 08:42:10 +01:00
Nelson Vides
83f6d592a2 Erlang server validation bugfixes and capability extensions (#19750)
* Bugfix: exclusiveMinimum/Maximum must be booleans

* Add support for validating and decoding base64 byte strings

* Add support for validating RFC3339 datetime

* Simplify validate function for performance

* Regenerate erlang-server handlers
2024-10-03 14:24:00 +08:00
Pascal Bachor
619e4d9653 Harmonize python client dependency versions (#19694)
Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2024-10-03 14:09:39 +08:00
Joscha Feth
0371799857 fix(core): relative path sorting (#19726) 2024-10-03 14:08:47 +08:00
William Cheng
2111713117 Fix anyOf/oneOf normalization for 3.1 spec (#19758)
* fix anyOf/oneOf normalization for 3.1 spec

* update samples
2024-10-03 14:06:42 +08:00
Bruno Coelho
fad33dfebf [Swift6] better configuration (#19732)
* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements
2024-10-02 23:25:46 +01:00
Bruno Coelho
673cd15e72 [swift6] oneOf-default-case (#19754) 2024-10-02 21:30:36 +01:00
Alex Wallen
43ce2a8e10 [zapier] add response middleware (#19760)
* feat: add zapier response middleware

* chore: add samples
2024-10-03 01:02:25 +08:00
Beppe Catanese
168a1d5d1f [Typescript-Node] Mark deprecated model attributes (#19756)
* Add @deprecated tag for deprecated fields

* Add tests

* Generate samples from OpenAPI 3.0 file

* Revert to generate with previous OpenAPI 2.0 file

* Add new config 3.0 and generate samples

* Regenerate samples
2024-10-02 17:14:42 +02:00
Bruno Coelho
90bc1000bd [swift5] rename unknownDefault to unknownDefaultOpenApi to match the enums unknown case (#19753) 2024-10-02 11:45:49 +01:00
Nikita Erokhin
f409bf1440 add oneOf-default-case option for swift5 (#19094)
Co-authored-by: erokha <dev@erokha.com>
2024-10-02 10:56:04 +01:00
William Cheng
1cdd7b7ff2 add joscha to TS technical committee (#19745) 2024-10-02 13:47:31 +08:00
Joscha Feth
c5060a2318 feat(core): add info.summary to additionalProperties for 3.1 specs (#19723) 2024-10-02 13:40:48 +08:00
Maxime Vincent
c6eb9e0e09 fix_ruby_documentation_apikey_name (#19742) 2024-10-01 22:10:54 +08:00
Maxime Vincent
2544fa2928 [Ruby-client] Use secuirtyScheme Key for api_key (#19740)
* replace name by keyParamName in apiKey configuration

* update configuration generated in sample
2024-10-01 19:45:27 +08:00
William Cheng
d7ac1e4337 [OpenAPI 3.1] Avoid NPE when handling prefixItems (#19735)
* avoid npe when handling prefixItems in 3.1 spec

* update samples
2024-10-01 17:36:11 +08:00
RyosukeFukushima
60d0888898 [typescript-fetch] support "x-enum-descriptions" (#19559)
refs OpenAPITools#1693
2024-10-01 11:33:07 +02:00
skstrifork
2322a99bba [Java][microprofile] enumUnknownDefaultCase true now returns correctly in fromValue (#19677) 2024-10-01 17:30:19 +08:00
William Cheng
5f39bd230e update undertown to 2.3.17.FINAL (#19734) 2024-10-01 16:54:49 +08:00
nvivot
8ef3118005 [rust][client][auth] token source option (#19647)
* feat: add token source support for rust async client

* chore: fix + regen samples

* chore: doc gen

* chore: missing generated sample files
2024-10-01 15:05:39 +08:00
Nelson Vides
7e1ebe6404 Erlang server (#19722)
* Add documentation to server and handlers

* Respond to at least one path-server

* Let url servers override base path

* Handle reading bigger bodies in cowboy

* Improve json error handling

* Regenerate erlang-server handlers

* Rework API module for performance and completion

* Regenerate erlang-server handlers
2024-10-01 14:51:12 +08:00
winkler-pixop
2551689ec6 Fix #19683 : Generated code fails to build with x86_64-linux-gnu-g++-13 (#19684)
* Add C++ header for cpp-pistache-server to fix breaking CMake build of generated code.

* Sort includes of system C++ headers for cpp-pistache-server.

* Add samples generated from fixing bug #19683.
2024-10-01 14:00:38 +08:00
Alex Wallen
241f51c56b zapier: create a search action predicate (#19670)
* feat: implement createAction predicate rather than negating isSearchAction predicate

* chore: update samples
2024-10-01 11:34:09 +08:00
Joscha Feth
849b3e8e17 fix(typescript): export types (#19725)
* Fix export type for typescript interfaces in all platforms (#6805)

* Generated samples and docs

* chore: update samples

---------

Co-authored-by: Kevin Broja <kevin.broja@gus-group.com>
2024-09-30 17:29:21 +02:00
jaqxues
af2ed1c7a6 [kotlin] enforce fields in data classes (#19526)
Fix #14710
2024-09-30 14:51:46 +01:00
Stefan Koppier
df22ca6dcc [BUG] Kotlin wiremock query params are incorrect (#19720) 2024-09-30 11:44:08 +01:00
Joscha Feth
d68a186c5e test(OpenAPINormalizer): nullability normalization for 3.1 specs (#19714)
* test(OpenAPINormalizer): nullability normalization for 3.1 specs

* chore: samples
2024-09-30 09:49:49 +08:00
Joscha Feth
2d57255817 fix(core): nullable array types in 3.1.x specs (#19687)
* fix: nullable array types in 3.1.x

* fix: pass on on `getNullable` value

* chore: add generated marker

* chore: add generated marker

* Delete out
2024-09-30 00:00:48 +08:00
William Cheng
ea6b1c6612 Update README.md with new release date of 7.9.0 2024-09-29 23:28:02 +08:00
devhl-labs
9300a68ad7 [csharp][generichost] Fix local var (#19642)
* fix local var

* revert one unneeded breaking change

* revert one unneeded breaking change
2024-09-29 23:11:06 +08:00
devhl-labs
fb5e69f83a [csharp][generichost] Fix invalid key name (#19633)
* fix invalid key name

* fix comment
2024-09-29 23:09:37 +08:00
Joscha Feth
0b32c5025e chore: update github workflow checkput plugin references (#19676) 2024-09-29 21:23:02 +08:00
Joscha Feth
4223be77f8 feat(typescript): write minimum, maxmimum and default to JSDoc (#19707)
* feat(typescript): write `minimum`, `maxmimum` and `default` to JSDoc

* feat(typescript): express optional params in JSDoc
2024-09-29 12:42:55 +02:00
Deepika Sridhar
b01dd41ce3 bugfix: openapi code generator to consider schema changes (#16735)
* bugfix: added schema location property

* fix: #16723 open api schema refresh issue

* Update modules/openapi-generator-gradle-plugin/src/main/kotlin/org/openapitools/generator/gradle/plugin/tasks/GenerateTask.kt

Co-authored-by: David Morris <dave@code-fish.co.uk>

---------

Co-authored-by: dsridhar <deepika.sridharr@aexp.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: David Morris <dave@code-fish.co.uk>
2024-09-27 17:35:48 +08:00
Joscha Feth
36367e79e7 style(typescript): use Headers type (#19697) 2024-09-27 08:41:03 +02:00
Joscha Feth
5e2af7203a feat(typescript): generate .gitattributes file (#19698)
* feat(typescript): generate `.gitattributes` file

* sample generation

* highlight the gitattributes mustache template

* highlight the gitattributes mustache template

* Revert "highlight the gitattributes mustache template"

This reverts commit 9511997983.

* highlight the gitattributes mustache template

* Revert "highlight the gitattributes mustache template"

This reverts commit 0f67ec2e4f.

* Revert "highlight the gitattributes mustache template"

This reverts commit 1f68b42368.
2024-09-27 08:39:59 +02:00
Joscha Feth
1b247e75a9 feat(typescript): improve docs generation (#19699) 2024-09-27 08:36:04 +02:00
Bruno Coelho
911455d206 [swift] small improvements (#19675)
* [swift] small improments

* [swift] small improments

* [swift] small improments

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass
2024-09-27 13:11:08 +08:00
Poolmann
76aca6618f [Javascript] Add initialization of default vars to constructor (#19692)
* Add initialization of default vars to constructor

* Update samples
2024-09-27 13:03:25 +08:00
Joscha Feth
645626d2f5 style(typescript): add missing semi (#19689) 2024-09-26 16:06:56 +02:00
Luke Zappia
29c3b020e6 [R] Update R6 object documentation (#19679)
* Remove @export and titles from R6 methods

* Remove redundant methods docs from R api.mustache

* Build project
2024-09-26 13:56:22 +08:00
Simon Abbott
a6581e8e4c [typescript][typescript-node] Serialize/deserialize maps and nullable types correctly (#19362)
* Remove deprecated suppressImplicitAnyIndexErrors property from templates

* Add encoding / decoding tests for the typescript generator

* Add encoding / decoding tests for the typescript-node generator

* [Typescript][Typescript Node] fix deserializing complex types

This fixes deserializing of models that are composed with null,
undefined, or are inside of a map.

* Use more sensible `startsWith` implementation

* Remove use of magic number offsets

* Fix endsWith bounds checking

* Regenerate samples
2024-09-25 20:21:11 +02:00
William Cheng
9147e998ff update spring web in resttemplate to 6.1.13 (#19671) 2024-09-25 17:10:39 +08:00
Bruno Coelho
7f6b1306ed Add swift6 generator (#19621)
* [Swift6] create Swift6 generator

* [Swift6] create Swift6 generator

* Update vapor integration

* Update bitrise stack to Xcode 16

* [Swift6] tryped throws

* [Swift6] tryped throws

* [Swift6] combine deferred and api static method

* [Swift6] update readme

* [Swift6] fix some errors

* [Swift6] fix some errors

* [Swift6] fix some errors

* [Swift6] update docs

* [Swift6] update docs

* Use multiline comments for examples in csharp generator (#19079)

* multi

* gen

* Uncomment File::deleteOnExit (#19624)

* [Core/Rust Server] Check references in additionalProperties correctly when checking freeForm status (#19605)

* Check references in additionalProperties correctly

Handle references in additionalProperties correctly when determining free-form status

* Update samples

* [Rust Server] Handle arrays in forms (#19625)

* [Rust Server] Handle arrays in forms correctly

* [Rust Server] Add tests

* Update samples

* [Swift6] fix CI

* [Swift6] fix CI

* [Swift6] fix CI

* [Swift6] fix CI

---------

Co-authored-by: Liri S <reallyliri@gmail.com>
Co-authored-by: Beppe Catanese <1771700+gcatanese@users.noreply.github.com>
Co-authored-by: Richard Whitehouse <git@richardwhiuk.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-09-25 16:57:25 +08:00
Joscha Feth
17e0b7ca71 [typescript] fix: nullable enums should not serialize a null value to a string (#19540)
* fix: `nullable` enums should not serialize a `null` value to a string

* better solution?

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java

Co-authored-by: Joscha Feth <joscha@feth.com>

* chore: Update circle_parallel.sh

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-09-24 23:46:32 +08:00
Louis Sullivan
e370b8130a Updated pyyaml and httptools in requirements template (#19666)
Co-authored-by: Louis Sullivan <Louis.Sullivan1@ibm.com>
2024-09-24 23:35:15 +08:00
Wiktor Kwapisiewicz
5732e2758f rust: Implement Display instead of ToString for enums (#19611)
Rust docs for `ToString` explicitly recommend implementing `Display`:

> This trait is automatically implemented for any type which implements the Display trait. As such, ToString shouldn’t be implemented directly: Display should be implemented instead, and you get the ToString implementation for free.

See: https://doc.rust-lang.org/std/string/trait.ToString.html
See: https://github.com/Nitrokey/nethsm-sdk-rs/pull/33

Signed-off-by: Wiktor Kwapisiewicz <wiktor@metacode.biz>
2024-09-24 21:07:12 +08:00
Sergei Lebedev
7d8eacc197 [cpp-qt-client] New makeOperationsVirtual option (#19613)
* Implementation of new `makeOperationsVirtual` option

* Make new parameter `true` by default

* Fix default value set and regenerate samples
2024-09-24 01:05:07 +08:00
Julian Vennen
78f2f7010f [PHP] Add missing qualifier for enum parameters (#19567) 2024-09-23 16:17:52 +08:00
William Cheng
98783f8161 use debug instead of warn,error to show less log (#19646) 2024-09-23 13:28:53 +08:00
William Cheng
565af33e24 Make it easier to specify triggers for Zapier (#19645)
* chore: add triggers

* update samples

---------

Co-authored-by: Stephen (Alex) Wallen <wallenstephen@outlook.com>
2024-09-23 12:03:44 +08:00
William Cheng
b42027da5d update aspnetcore samples 2024-09-23 02:00:54 +08:00
Richard Whitehouse
fb36272358 [Rust Server] Handle arrays in forms (#19625)
* [Rust Server] Handle arrays in forms correctly

* [Rust Server] Add tests

* Update samples
2024-09-23 00:20:48 +08:00
Richard Whitehouse
8821cf095e [Core/Rust Server] Check references in additionalProperties correctly when checking freeForm status (#19605)
* Check references in additionalProperties correctly

Handle references in additionalProperties correctly when determining free-form status

* Update samples
2024-09-23 00:19:27 +08:00
Beppe Catanese
e1a1d7ab5a Uncomment File::deleteOnExit (#19624) 2024-09-23 00:18:06 +08:00
Liri S
b4edca5ad4 Use multiline comments for examples in csharp generator (#19079)
* multi

* gen
2024-09-22 23:27:47 +08:00
David Riddervold Marconis
eebecc8646 [aspnetcore] Fix issue #19592 regarding swagger xml comments (#19593) 2024-09-19 13:10:14 +08:00
William Cheng
3240c5baf0 update org.springdoc:springdoc-openapi-webmvc-api, ui to 2.6.0 (#19620)
* update springdoc-openapi-starter to 2.6.0

* pre-populate info if its not defined

* update kotlins spring dependencies to newer version
2024-09-19 12:37:56 +08:00
un1024
410113fd6d [kotlin-spring] fix springdoc dependencies (#19579)
* fix springdoc dependencies for kotlin-spring

* fix suffix core to api.
2024-09-19 11:19:42 +08:00
Joscha Feth
171804eef7 feat(avro-schema): logical type support (#19607)
* feat(avro-schema): logical type support

* style: newline at eof
2024-09-19 09:34:51 +08:00
Joscha Feth
0f561b05cb chore: pull request template mentions an old current version (#19609)
Replaces `7.6.0` with `7.x.0`
2024-09-19 09:33:02 +08:00
Mike Phillips
34aeb16c5e Improve urllib3 semver flexibility (#19458) 2024-09-18 16:54:43 +08:00
Jonathan Ballet
40967a3d38 python: test with more modern versions (#19452)
Python 3.12 has been released in October 2023, it should be tested in
the CI.

Python 3.7 is not maintained anymore, removing it from the minimum
required version in `pyproject.toml` files.
2024-09-18 16:53:51 +08:00
William Cheng
b3e72feaa9 update java samples 2024-09-18 16:14:47 +08:00
Samuel Lijin
07787973e8 fix: make generated java readme use correct package (#19563) 2024-09-18 16:03:33 +08:00
Richard Whitehouse
d03c90cb97 [Rust Server] Handle additional properties being nullable (#19594)
With:
```
    sampleObject:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/SampleData'
      minProperties: 1
      description: Map of Charging data policy decisions.
```

and
```
    SampleData:
      type: object
...
      nullable: true
```

We currently generate: HashMap<String, SampleData>, which doesn't allow
null charging data entries. This MR changes this to be
`HashMap<String, swagger::Nullable<SampleData>>`, which thus will allow null data entries.

We do this by moving null-handling to the Java code - primarily `getTypeDeclaration()`.

Note, to some extent this is wrong. In this MR (and previously) we are treating
`nullable: true` as an extrinsic property (like required), whereas it should be an
intrinsic property (and thus `HashMap<String, SampleData>` is correct, but `SampleData`
absorbs the nullability.

This would be possible with this code:

```
enum ChargingData = {
   Null,
   Present {
       ...
   }
}
```

Which would remove the usage of https://docs.rs/swagger/2.0.2/swagger/nullable_format/enum.Nullable.html.

I haven't resolved this - and have instead done a more targeted fix.

This, along with some other crude code, creates a scenario where we need to
unpick whether something is null. I've left that, though flagged a TODO to tidy it up at some point.
2024-09-18 15:25:06 +08:00
Richard Whitehouse
f07f8bc997 [Rust Server] Add derive of Hash to enums (#19603)
* [Rust Server] Add derive of Hash to enums

* Update samples
2024-09-18 15:23:27 +08:00
Richard Whitehouse
cf5d17bbfe [Rust Server] Convert Rust comment to Mustache (#19595)
* [Rust Server] Convert Rust comment to Mustache

The comment about auth types supported by the generator shouldn't be
included in the generated code as it's confusing when the API doesn't
support the same auth types.

As such, we convert it from a Rust comment to a Mustache comment

* Update samples
2024-09-18 15:22:51 +08:00
Joscha Feth
0b084cd75d [typescript] fixture: broken Array<Array> (#19548)
* [typescript] fixture: broken `Array<Array>`

* Delete samples/client/others/typescript/builds/array-of-lists/models/L.ts

* fix: remove incorrect mapping

* chore: update generated code samples
2024-09-17 15:04:04 +02:00
Rasmus Zweidorff Iversen
fd85359548 [Java] [apache-httpclient] Fix issue with toString causing wrong value with collections (#19576)
* Fix issue with toString causing wrong value with collections

With collections, calling toString will result in the value becoming [a,b] instead of just a,b.

Using the existing apiClient::parameterToString method ensures it gets parsed correctly if it is a collection

* Updated samples

---------

Co-authored-by: Rasmus Zweidorff Iversen <rzi@jysk.com>
2024-09-17 17:57:35 +08:00
dependabot[bot]
30b1a74979 Bump actions/setup-go from 3 to 5 (#19597)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 5.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v3...v5)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-17 10:42:21 +08:00
rankoz
ff1fe256d8 Fix dictionary/map deserialization (#19496) 2024-09-16 23:18:04 +08:00
Csaba Kozák
1b30c1995f [kotlin-client][multiplatform] add support for kotlinx.datetime.LocalTime (#19590) 2024-09-16 16:10:32 +01:00
Julian Vennen
3832cb4eb7 [PHP] Update enum tests (#19591) 2024-09-16 19:48:58 +08:00
Eric
425aa7db44 [Kotlin] Add a new additional property to configure Jackson's failOnUnknownProperties (#19506)
* [Kotlin] Add a new additional property to configure Jackson's `failOnUnknownProperties`

Default to false

* [Kotlin] Unconditionally import `com.fasterxml.jackson.databind.DeserializationFeature`

* [Kotlin] Refactor and add test
2024-09-16 17:59:17 +08:00
Julian Vennen
0c5142a6f6 [php-symfony] Fix #19562 (#19568) 2024-09-16 17:41:49 +08:00
Julian Vennen
a5384d42b4 [PHP] Remove NUMBER_ prefix from enum vars if a name is provided, show enum descriptions (#19555)
* Remove NUMBER_ prefix from enum vars if a name is provided, show enum descriptions

* Update php model tests
2024-09-16 17:23:11 +08:00
Eric Rolli
bbafeaed40 [Java Jersey] Update ApiClient.mustache Jersey doesn't allow entities in method DELETE (#19530)
* Update ApiClient.mustache

* Update ApiClient.mustache

Jersey doesn't allow request entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* jersey ApiClient.mustache invoke DELETE without entity if empty

* jersey ApiClient.mustache invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty
2024-09-16 17:03:50 +08:00
Beppe Catanese
cf9de0bf94 Correct package name in test (#19581) 2024-09-16 16:52:19 +08:00
Beppe Catanese
243f501aef [GO] Go Server: preserve order of the routes as defined in the OpenAPI file (#19550)
* Add skipSortingOperations configuration option

* Skip sorting operations for go-server

* Add test verifyOrder

* Regenerate samples
2024-09-16 16:52:01 +08:00
Beppe Catanese
2f179fe41d [Go] Verify content of Go server generated files (samples) (#19504)
* Add Python tests to verify generates Go files

* Run Python tests during CI

* Remove Python tests

* Add Go tests

* Update workflow to run Go tests
2024-09-16 16:48:30 +08:00
Vasiliy Ditsyak
7dcaececf8 [BUGFIX][dart-dio] add unknownEnumValue to JsonKey (#19416)
* [BUGFIX][dart-dio] add unknownEnumValue to JsonKey

* review fix

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-09-15 16:35:24 +08:00
Vasiliy Ditsyak
abf94168e6 [BUGFIX][dart-dio] Align enum and enum_inline generation result (#19510)
* [BUGFIX][dart-dio] Align `enum` and `enum_inline` generation result

* review fixes

* Revert "review fixes"

This reverts commit 9d0b263f5c.

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-09-15 13:22:09 +08:00
Chirag Jain
740b971074 python-pydantic-v1: Return the primitive type in to_dict for anyOf models (#19488)
* python: Return the primitive type in to_dict for anyOf models

* Regenerate samples

* Update test
2024-09-13 18:50:55 +08:00
Joscha Feth
cd349dc5ea [avro-schema] fix enum logic (sanitize) (#19549) 2024-09-12 17:00:19 +08:00
Joscha Feth
5c6b8f3b16 docs: add hint about how to attach VSCode to the suspended Java process (#19551) 2024-09-12 16:59:57 +08:00
Nelson Vides
d02aae7469 Erlang Server – cowboy return types improvements (#19561)
* Declare the correct types for cowboy rest requests

* Adding myself to the erlang team
2024-09-12 16:59:06 +08:00
Hidetoshi
ca378b424a [typescript-axios] fix: enum datatype jsdoc (#19570) (#19571)
* fix: enum dataType JSDoc

* chore: generate samples
2024-09-12 12:59:40 +08:00
Lili Shi
0e763b096e [swift5] Fix Xcode 16 compilation crash with Extensions.swift generation (#19564)
* Update Extensions template for Swift5 generation

* update samples
2024-09-11 08:59:23 +01:00
Julian Vennen
1658264261 Regenerate php-nextgen-sample (#19556)
* Regenerate php-nextgen-sample

* Add missing changes
2024-09-10 14:32:30 +08:00
Rory Schadler
8171648eb4 fix(python,asyncio): multipart form data serialization (#19302)
* fix: object serialization for multipart requests

This PR is essentially
<https://github.com/OpenAPITools/openapi-generator/pull/18140> but for
the asyncio client.

* fix: int serialization for multipart requests

urllib3 handles serializing ints in post params (ref 1), while asyncio
explicitly does not (ref 2).

ref 1: <9316764e90/src/urllib3/filepost.py (L75-L76)>
ref 2: <https://github.com/aio-libs/aiohttp/issues/920>

* test: new fake multipart endpoint with files and body

* test: regression test for stringified body params

* fix: mypy tweak

* fix: FILES regeneration

* feat: object, int serialization for multipart reqs

Extends previous commits (and #18140) to cover the python-pydantic-v1
client as well.

* fix: use async with in test

* test: regression test for pydantic-v1-aiohttp

* test: add regression test to pydantic-v1

Also brings the second test in line with the first, patching
`urllib3.PoolManager.urlopen`
2024-09-09 17:43:25 +08:00
Evgeny Shichenko
0026e15030 fix kotlin spring boot configuration conflict (#19515) 2024-09-09 11:03:18 +08:00
William Cheng
8511a533d6 add erlang-server-deprecated for fallback after refactoring (#19547) 2024-09-07 17:18:06 +08:00
Nelson Vides
596d446f54 Erlang server overhaul (#19465)
* Upgrade erlang-server code generation and fix is_authorized crashes

* Introduce structured logging

* Improve general formatting

* Update generated files

* Enable erlang server on CI

* Add echo-server testing to CI

* Require OTP27 explicitly in the generated rebar.config file

* Rework handler and API

With this work, json validation becomes optional, fully implemented in
the `_api` module as it was before, but without being forcibly called by
the `_handler`. It is instead left as optional for the user to take
advantage of the exposed callbacks. Jesse also chooses draft-06 as a
default, but these can be chosen manually by the user too, as long as
jesse implements them.

`_handler` also becomes lighter, it now handles all mime types
transparently by forwarding to a user-given module that must implement
`accept_callback/4` and `provide_callback/4` as described in the
`_logic_handler` callbacks. These will simply be the return values of
cowboy_rest's `content_types_accepted` and `content_types_provided`
respectively, and should simply comply with their defined APIs. They
only get two parameters extending the behaviour, so that the user-given
callback can pattern-match on them: the path prefix of the logic
handler, and the operationID of the call.

* Fix return types for provide_callbacks

* Upgrade jesse to incur no dependencies

The less dependencies the built code requires the better.

* Fix dialyzer errors in the generated code

* Apply stronger dialyzer checks
2024-09-07 16:45:42 +08:00
Kresten P. Vester
a98f45b4ac [Java][Spring]Update dependencies to remove vulnerability in org.springframework:spring-webmvc (#19533)
* Update dependencies to remove vulnerability in org.springframework:spring-webmvc

* Updated samples
2024-09-07 16:26:42 +08:00
Joscha Feth
14e691b9c9 docs: link to existing documentation for snapshot builds and locally built JARs (#19544)
Follow-up from https://github.com/OpenAPITools/openapi-generator/pull/19497 since https://github.com/OpenAPITools/openapi-generator-cli/pull/794 has been merged.
2024-09-07 16:12:24 +08:00
devhl-labs
195438d1e7 version bump (#19545) 2024-09-07 16:10:47 +08:00
William Cheng
a93a6d5a35 Add dotcom-monitor to the sponsor list (#19546)
* add dm to the sponsor list

* update
2024-09-07 16:06:21 +08:00
David Omid
2bc0e5f745 [typescript-fetch] Fixed issue where unique arrays (sets) of primitive values aren't initialized properly (#19521)
* Fix for https://github.com/OpenAPITools/openapi-generator/issues/19520

* Removed redundant Array<any> cast

* Fixed modelGeneric.mustache

* Updated samples
2024-09-05 15:43:34 +02:00
Tero Hagström
2f54a2fb11 Fix for #15736 [TYPESCRIPT-FETCH] Subclassing components using discri… (#19524)
* Fix for #15736 [TYPESCRIPT-FETCH] Subclassing components using discriminators fails to convert subclasses to JSON.
Added similar discriminator handling to ToJSON as was already in place for FromJSON.
The actual files changed are typescript-fetch/modelGeneric.mustache and typescript-fetch/apis.mustache.
Also, adjusted FromJSON a bit in an attempt to support multiple hierarchical levels of discriminators.
And fixed an issue with calling FromJSON from the map() function, which caused the index parameter getting inadvertently passed as the ignoreDiscriminator parameter.
Additionally, fixed failing "mvn integration-test -f samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/pom.xml"
Moreover, added forceConsistentCasingInFileNames:false into tsconfig.json to make tests compile on OsX.

* Rolled back the changes related to the map() function calls in favor of using ToJSONTyped instead, as that is in line with how FromJSON is already implemented.
2024-09-05 15:29:44 +02:00
William Cheng
e914c4098b update samples 2024-09-04 16:42:41 +08:00
Nicklas Wiegandt
e4112c5aca feat (JAVA SPRING RESTCLIENT) 19406: Add single request parameter for Spring RestClient (#19430)
* feat (JAVA SPRING RESTCLIENT) 19406: Add single request parameter for Spring RestClient

Closes #19406

* chore (JAVA SPRING RESTCLIENT) 19406: Add new sample to jdk 17 tests

* fix (JAVA SPRING RESTCLIENT) 19406: Fix sample build
2024-09-04 16:17:13 +08:00
Rugal Bernstein
f54b0e25a4 Remove appendRequestToHandler (#19500) 2024-09-04 16:03:31 +08:00
Horace Li
42d98e2526 [Java Libraries] Jakarta Validation API support useJakartaEe flag (#19469)
* Jakarta Validation API support useJakartaEe flag

* Jakarta Validation API support useJakartaEe flag
2024-09-04 15:57:55 +08:00
Joscha Feth
f40f72cea8 [typescript] fix: explode: true should yield appended query params (#19519)
* [typescript] fix: `explode: true` should yield appended `query` params

* fix: object keys should be `set`
2024-09-04 08:16:21 +02:00
Dan Goslen
8678ee8a1f [Typescript:Axios] Fix withInterfaces and usSingleRequestObjectParam (#19467)
* Support withSingleRequestParameter along with withInterfaces

* Add sample and config for combination

* Re-generate samples
2024-09-03 17:22:11 +02:00
Matteo Molinari
fb1c2f3483 [Bugfix][Java] Fixed jersey clients for multiple file upload (#19476)
* Fixed jersey3 client for multiple file upload

* Updated sample

* Fixed typo

* Fix

* Fix for jersey2
2024-09-02 17:25:54 +08:00
William Cheng
c733bb69a2 [typescript-angular] fix: when model property name is sanitized, use instead original property name within quotes in mustache template (#19508)
* fix: typescript-angular -> when model property name is sanitized, use instead original property name within quotes in mustache template

* fix: updated samples

* chore: added comment for hasSanitizedName

* add original tag, add dummy model for test

* update samples

---------

Co-authored-by: Davide Diaconu <davidediak@gmail.com>
2024-09-02 17:15:58 +08:00
jpfinne
b228133a20 [java] Fix issue #17472 when using schemaMapping for models in collections, not compilable code with @Valid is generated (#19093)
* Fix issue 17472

* Avoid cast exception
2024-09-02 17:03:08 +08:00
William Cheng
1776c000ed update C# restsharp to 112.0.0 (#19507) 2024-09-02 16:52:54 +08:00
Sobhan Sharifi
0643f526af Fix ObjectSerializer::isEmptyValue to not consider "0" as "" (#19472) 2024-09-02 16:03:36 +08:00
Chris McEvoy
5b96e85fd5 bugfix: use the correct key when generating auth example in readme (#19492) 2024-09-02 15:38:57 +08:00
Beppe Catanese
4ed8c70a92 Remove unused go-server-required (#19505) 2024-09-02 15:36:42 +08:00
Brenton Bostick
abd19dd253 fix typo woking -> working (#19498) 2024-09-02 15:34:42 +08:00
Joscha Feth
be618ec168 docs: add hints about how to use snapshot version of generator-cli (#19497)
* docs: add hints about how to use snapshot version of `generator-cli`

* docs: simplify

* style: indentation
2024-08-30 16:26:00 +02:00
Joscha Feth
7510e6bbf8 [Typescript] Generate oneOf schemas as type unions (#19494)
* Add oneOf model for Typescript generator

* Update import procces: For oneOfs only import $refs within the oneOf

* Remove new line after description

* Update samples

* Typescript: Update model.mustache

* Typescript: Remove emun from oneOf models

* Update samples

* Typescript oneOf: add discriminator and update deserialize procces

* Typescript: update tests

* Typescript oneOf: move type mapping to models

* Typescript: Update samples

* Typescript: Update type of mappig

* Typescript: Update type of mappig

* Typescript oneOf: update deserializing logic

* Typescript: Update samples

* Revert "[typescript] fix: `enum` can not receive stringified class name (#19481)"

This reverts commit 4238f17322.

* [typescript] chore: update fixtures

---------

Co-authored-by: ksvirkou-hubspot <ksvirkou@hubspot.com>
2024-08-30 16:20:18 +02:00
Joscha Feth
1518237c25 [typescript] fix: deno: type exports for isolatedModules (#19484) 2024-08-29 13:56:02 +02:00
Joscha Feth
4238f17322 [typescript] fix: enum can not receive stringified class name (#19481)
* fix: `enum` can not receive stringified class name

* chore: update generated code samples
2024-08-29 13:54:57 +02:00
Eric
dfc381c22f [Java] Add a new additional property to configure Jackson's failOnUnknownProperties (#19271)
* [Java] Add a new additional property to configure Jackson's `failOnUnknownProperties`

* Move `FAIL_ON_UNKNOWN_PROPERTIES` property to JavaClientCodegen

* Template `FAIL_ON_UNKNOWN_PROPERTIES` for other libraries beside retrofit2

* Default `failOnUnknownProperties` to false for all Java Client libraries

* Fix integration tests

Add the `failOnUnknownProperties: true` additional properties to generate the
expected mapper
2024-08-29 13:25:25 +08:00
Joscha Feth
082382cc1e [typescript] use const for middleware symbol (#19478)
* style: use const for `middleware`

* chore: update generated code samples
2024-08-28 17:52:26 +02:00
Anderson de Borba
85763cdb08 [java] Use @JsonFormat instead of @JsonSerialize for bigDecimalAsString property (#19322)
* [java] Use @JsonFormat instead of @JsonSerialize so that JsonGenerator.Feature.WRITE_BIGDECIMAL_AS_PLAIN is respected and generates a String using BigDecimal#toPlainString instead of BigDecimal#toString

* Only add Jackson @JsonFormat if properties serializeBigDecimalAsString and jackson are enabled

* Do not verify if jackson is available when mapping imports as the property is not evaluated yet

* Removed unused JsonSerialize and ToStringSerializer
2024-08-28 16:22:13 +08:00
William Cheng
e69fb86957 remove unused file 2024-08-28 15:46:06 +08:00
William Cheng
9579122945 Better handling of parameters in inline model resolver (#19460)
* add tests for parameter ref of oneOf

* update samples

* better handlding of parameters in inline model resolver
2024-08-28 15:31:04 +08:00
JP Moresmau
d6780e7d43 Remove extra bracket to fix compilation (#19464) 2024-08-28 15:30:15 +08:00
Matthias Schwarz
4330b2f46d [typescript-fetch] Add option to generate validation attributes of model properties (#19448) 2024-08-27 14:13:59 +02:00
dependabot[bot]
aae3ab3154 Bump micromatch from 4.0.5 to 4.0.8 in /website (#19444)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-27 17:19:11 +08:00
condorcorde
fe381e2199 Support multiple files (#19449) 2024-08-26 15:39:15 +08:00
aakash-dev-maersk
f13a11b53c Add support for global token based auth for k6 script generation (#19348)
* Add global token based auth support (basic, bearer) for k6

* config files and generated code files after the changes

* Handle empty or null auth at path level

* files changed after update with master and run build
2024-08-25 23:40:38 +08:00
Richard Whitehouse
2b40a2c058 [Rust Server] Add auto-generated CLI Client (#19392)
* [Rust Server] Add auto-generated CLI tool

* [Rust Server] Test multiple path parameters

* [Rust Server] Test boolean parameters and apostrophes

* [Rust Server] Test operation with two boolean parameters with same first letter

* [Rust Server] Test apostrophes in operation summary

* Update samples

* [Rust Server] Fix build errors with OpenSSL

* Update samples

* Update samples
2024-08-24 23:57:03 +08:00
ふぁ
69cce249f6 [python] fix content_type deserialize (#19317)
* [Python] fix: #19285

* [python] update sample

* [python] add test

* [python] remove test
2024-08-24 23:40:15 +08:00
Victor Mosin
7a7c8c19ab [Kotlin][okhttp] replace okhttpclient with callfactory (#19422) 2024-08-22 21:19:32 +01:00
William Cheng
0f294a5129 use gitHost in python pyproject template (#19421) 2024-08-22 16:09:53 +08:00
Martin Boos
ae069e6840 [Python] Update python-pydantic-v1 generator to respect the --git-host argument (#19404)
* Update pyproject.mustache

chore(pyproject): replace static `github.com` with variable `{{{gitHost}}}`

* chore: follow contribution guidelines
2024-08-22 15:52:36 +08:00
mohamuni
deb007b976 fix regex breakage in unmarshaljson function (#19410) 2024-08-22 15:12:54 +08:00
julianladisch
87704b28c0 Upgrade commons-io dependency to latest 2.16.1 (#19414) 2024-08-22 14:59:20 +08:00
Bruno Coelho
b3f74c7c4f [typescript][angular] move app description from license info to readme (#19397)
* [typescript][angular] move app description from header license info to readme

* [typescript][angular] move app description from header license info to readme
2024-08-21 13:51:39 +02:00
Richard Whitehouse
eda4547f15 [Rust Server] Fix up model generation (#19363)
* [Rust Server] Fix up model generation

- Correctly generate anyOf/oneOf models
- Fix up ToString / FromStr support
- Disable PartialOrd generation for anyOf/oneOf models
- Generate models for inline enums
- Support enums in headers, and vectors of models in headers

* [Rust Server] Add test for anyOf with additional properties

* Update samples

* [Rust Server] Tidy up logging
2024-08-21 15:14:52 +08:00
Rory Schadler
cc98333d87 feat(python): handle multiple file parameters (#19329)
* test: fix broken python test

* fix: handle multiple file parameters

Previously an array of files was not handled correctly, despite the type
annotation implying it was.

* feat: handle filename,filedata tuples in file param

This allows for users to pass filenames with their data in file params,
which is useful for multipart formdata requests. Without this, the list
of files added in the previous commit would have the same filename for
all files (the parameter name).
2024-08-21 15:09:10 +08:00
William Cheng
c2472b03b6 update doc to v7.8.0 2024-08-19 16:19:49 +08:00
William Cheng
91da2fd240 Prepare 7.9.0 snapshot (#19386)
* Revert "v7.8.0 release (#19385)"

This reverts commit 6bdc452f92.

* update samples for v7.9.0-snapshot
2024-08-19 16:14:51 +08:00
William Cheng
6bdc452f92 v7.8.0 release (#19385) 2024-08-19 14:01:58 +08:00
William Cheng
fc8b7d92c8 Fix Reactive Spring build.gradle.kts (#19382)
Co-authored-by: Erik VanderWerf <eski787@gmail.com>
2024-08-18 18:34:16 +08:00
Richard Whitehouse
df2b4210c9 [Rust Server] Sort operations so that the ones with fewest params come first (#19368)
* [Rust Server] Sort operations so that the ones with fewest params come first

This resolves things correctly per
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.3.md#pathsObject
- "When matching URLs, concrete (non-templated) paths would be matched
before their templated counterparts."

* Update samples

* [Rust Server] Fix tabs vs spaces

---------

Co-authored-by: Rob Day <Robert.Day@metaswitch.com>
2024-08-18 18:01:19 +08:00
Kensuke Taguchi
fd62e3897b [kotlin-client] Add @JsonEnumDefaultValue annotation to enum class (#19380) 2024-08-18 08:27:43 +01:00
Richard Whitehouse
0a5c99739a [Rust Server] Allow configuration of multipart/form attachment size limit (#19371)
* [Rust Server] Allow configuration of multipart/form attachment size limit

multipart 0.14+ imposes a 8MB size limit on multipart/form bodies.

This allows that limit to be configured. The default is left as is.

This also improves error messages produced when handling multipart/form bodies.

* Update samples
2024-08-17 16:02:20 +08:00
William Cheng
bb831dad9a Make the rust hyper client Send so it can be used in rust threads more easily (#19375)
* Add externCrateName property to rust hyper client

This is follows the lead of the rust hyper server generator and provides
an externCrateName. This is because the crate name used for importing
can be different from the package name, because dashes `-` get converted
to underscores `_`.

This allows us to write example code in rustdoc that compiles
successfully.

* Get the rustdoc examples to actually compile

* Make rust hyper client thread safe

* Fix compile time issue with reqwest client test

* Add a test for thread safety

* Generate rust hyper samples

* Use https for petstore api to fix client tests

http://petstore.swagger.io/v2 is 301 redirecting to
https://petstore.swagger.io/v2 and this is breaking posts to the API.
When the client recieves a redirect it does not resend the POST data,
instead it switches to GET. This is in line with how browsers behave
when encountering a 301 redirect on a POST request.

* Make rust hyper client structs `Sync` too

This trait is also helpful in making the api work well with threads.

* Use a getCrateName function instead of adding more state

* update samples

---------

Co-authored-by: Krishna Rajendran <krishna@emptybox.org>
2024-08-17 16:01:11 +08:00
Richard Whitehouse
172fafe674 [Rust Server] Fix server-writing docs for rust-server (#19367)
* Fix server-writing docs for rust-server

Fix broken link in generated README for rust-server.

* Update samples

---------

Co-authored-by: Keith Wansbrough <Keith.Wansbrough@metaswitch.com>
2024-08-17 15:33:58 +08:00
Richard Whitehouse
fbe6c11903 [Rust] Ensure all features build as part of CI / Upgrade to Frunk 0.4 (#19364)
* [Rust] [CI] Build all features as part of CI

* [Rust Server] Update to frunk 0.4

* Update samples
2024-08-17 14:17:36 +08:00
Richard Whitehouse
caeb83c845 [Rust Server] Fix homepage URL in Cargo.toml (#19365)
This fixes a missing quote in Cargo.toml, which causes validation errors
2024-08-17 14:16:25 +08:00
Aleksander Baranowski
ba1d7255d0 fix mixed indent + move do to same line as start of loop (#19373) 2024-08-17 14:15:00 +08:00
William Cheng
a6a75e3501 Better handling of backtick in pattern (#19358)
* use x-go-datatag in go client model template

* add logic to handle backtick
2024-08-16 18:04:47 +08:00
Tim Quinn
cd02426648 Suppress Pattern annotation on property of type byte array (#19346)
* Suppress Pattern annotation on property of type byte array

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>

* Straggler files from generated samples

* Add new format test to workflows

---------

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
2024-08-15 17:09:44 +08:00
Richard Whitehouse
024bbb7784 [Rust Server] Improve RFC 13341 compliance for multipart/related (#19355)
* [Rust Server] Improve RFC 13341 compliance for multipart/related

* Update samples
2024-08-15 17:04:59 +08:00
Richard Whitehouse
be09f8a868 [Rust Server] Use swagger/multipart_related support (#19354)
* [Rust Server] Use swagger/multipart_related support

* Update samples
2024-08-15 17:03:59 +08:00
llendi
38ebf0bb4e [Java][OkHttp-Gson] fix: free form query parameters for okhttp-gson (#19226) 2024-08-15 17:02:59 +08:00
martin-mfg
05c10934ce docs: update versions, fix links, remove broken camel.xml, update download counts (#19356)
* manually update version in documentation, remove camel.xml

... because it has the wrong generator version, it has the wrong generator name (should be "java-camel"), the generated code doesn't compile - and then I didn't check further

* improve automatic version updating

* fix one more Readme link

* update docker stats again
2024-08-15 17:02:34 +08:00
Richard Whitehouse
daf52229e3 [Rust Server] Refactor Mustache templates for request/response body handling (#19347)
* [Rust Server] Refactor Mustache templates for request/response body handling

* Update samples
2024-08-14 15:25:08 +08:00
William Cheng
8f7354a2a2 revert gradle extension version (#19351) 2024-08-14 15:22:10 +08:00
Fei Wang
2bf2d9bb56 Include licenseInfo for all the generated java code files (#19273)
* Include license info for all the generated java code files

* Re-base generate
2024-08-14 15:13:42 +08:00
Richard Whitehouse
b8001323f6 [Core] Consolidate Operation ID generation (#19339)
* [Core] Consolidate Operation ID generation

* Update samples
2024-08-14 15:12:26 +08:00
martin-mfg
58dd0305ce [JAVA] use query parameter apikey if present (#19334)
* Fix #16362

* Update samples

* Undo formatting changes

* Revert whitespace changes in samples

* make it work

---------

Co-authored-by: Jason Boileau <jason@boileau.dk>
Co-authored-by: Jason Boileau <spraot@users.noreply.github.com>
2024-08-14 15:02:37 +08:00
Sylvain Joubert
d55525fbc4 [C++][Pistache] Fix 'unused-parameter' warning on Helpers.h file (#19315) 2024-08-14 14:34:11 +08:00
Sylvain Joubert
8af3ff2828 [C++][Pistache] Add error handlers overload taking the response object (#19314)
This allows overriders to have full access to the response object and
more finely control the error handling behavior.
For example, this enables the specification of a proper Content-Type in
case of custom format responses (application/json, ...)
2024-08-14 14:31:55 +08:00
condorcorde
e70a9564e0 [PowerShell] Fix missing Content-Type header on a 204 response (#19340)
* Allow for binary response content

* AllowNull for $ContentTypes

* Update PSApiClient.ps1
2024-08-13 15:20:46 +08:00
William Cheng
d340e15f1a update dart samples 2024-08-13 15:19:29 +08:00
Brenton Bostick
03d8c30183 fix invalid syntax in gitignore (#19341)
gitignore only supports line comments, not in-line comments
2024-08-13 15:11:30 +08:00
GeorgeFkd
2107e9ef8f Added support for openapi-normalizer in the online version. (#19336)
* Added support for openapi-normalizer in the online version with a minimal test.

* removed comments and formatted code
2024-08-12 17:49:34 +08:00
Gergely Imreh
fdd2dc9651 python-asyncio: update retry factors for actual exponential retries (#19337)
* python-asyncio: update retry factors for actual exponential retries

As per the `aiohttp-retry` library's code[^1], the timeout is

```python
timeout = self._start_timeout * (self._factor ** attempt)
```

This means the previous setting with "start_timeout=0.0" would have
always just retried right away (0 timeout) regardless of the "factor" value,
and also, "factor=0.0" would never have increased the timeout, rather it
would have resulted in a 0 timeout regardless of the value of "start_timeout".

This double-zeroing effectively rendered exponential backoff to nothing (rather than
"retries" number of retries in quick succession.

The update is a quick fix to set the same default as in `aiohttp-retry`. In
the future this should likely be configurable (through extra Configuration settings perhaps?),
as not all APIs are created equal, but this works as a quick fix for making retries more effective.

[^1]: ba2169891f/aiohttp_retry/retry_options.py (L38-L65)

* updated example
2024-08-12 17:35:00 +08:00
Franck Arnulfo
d1b9f9284a Fix issue https://github.com/OpenAPITools/openapi-generator/issues/19326 (#19328)
Try to fix issue https://github.com/OpenAPITools/openapi-generator/issues/19326
2024-08-12 15:26:11 +08:00
devhl-labs
5166765724 changed default sorting of samples (#19335) 2024-08-12 15:04:50 +08:00
devhl-labs
ad8a7d2a3c [csharp] Change sorting default (#18942)
* change sorting default

* implement sorting options for all libraries

* rebuild tests

* build samples
2024-08-12 00:33:18 +08:00
condorcorde
6da3dc5c10 Allow for binary response content (#19331) 2024-08-11 22:48:03 +08:00
Tim Quinn
07baddfe12 Minor change to Helidon version handling allowing snapshot versions (#19320)
* Minor change to Helidon version handling

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaHelidonCommonCodegen.java

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>

* Review comments: fix typo in comment

---------

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2024-08-09 15:59:57 +08:00
Richard Whitehouse
ad7acc30eb [Rust/Rust Server] Fix example/test code (#19318)
* [Rust Server] Fix code so examples compile

Zero length arrays don't correctly type infer, so if we have no scopes, we need to not create a empty array

We need an authentication middleware - without it the code doesn't compile.

* Update samples

* [Rust Server] Remove trailing whitespace

* Update samples

* [Rust Server] [CI] Build all targets

* [Rust] Fix reqwest test
2024-08-09 15:54:58 +08:00
William Cheng
4b493358a8 update php samples 2024-08-07 18:09:11 +08:00
Stefan Koppier
aea536027c [bugfix][kotlin-wiremock] fix problems with range responses (#19309)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient

* [kotlin-wiremock] fixed issue 7193

* [kotlin-wiremock] fixed wrong implementation of fromResponse

* [kotlin-wiremock] forbidden API

* [kotlin-wiremock] fixed wrong workflow trigger
2024-08-07 18:04:05 +08:00
Pavel Miller
908eddea0b Issue-19220: processing schema name is added to the list with names checked at recursing processing, so it prevent to endless recursive execution (#19221) 2024-08-07 17:48:14 +08:00
Şerban Ghiţă
539aab05a7 [BUG] PHP Client - ObjectSerializer::buildQuery flattens array params resulting invalid URL params (param=a&param=b vs param[]=a&param[]=b) #19233 (#19236)
* [BUG] PHP Client - ObjectSerializer::buildQuery flattens array params resulting invalid URL params (param=a&param=b vs param[]=a&param[]=b) #19233

* Added tests (replaced old provider data). This looks like a breaking change

* Fix space

---------

Co-authored-by: Serban Ghita <serban.ghita@virta.global>
2024-08-07 17:15:59 +08:00
Lajos Szoke
edc60db531 Add ConfigCat to the Companies/Projects using OpenAPI Generator section (#19304)
* Add ConfigCat to the Companies/Projects using OpenAPI Generator section

* Adding ConfigCat to the users.yml and adding a logo
2024-08-07 17:07:24 +08:00
Bruno Coelho
b803af5ddf [typescript][angular] move api version from license info to readme (#19310)
* [typescript][angular] move api version from header license info to readme

* [typescript][angular] move api version from header license info to readme
2024-08-07 10:12:57 +02:00
congyuluo
f8a5051d9c Refactored Identifiers (#19270) 2024-08-05 18:20:54 +08:00
William Cheng
eff3e6df53 [cpp-qt] Add option for download progress, add test (#19297)
* add option for download progress, add test

* add cmake file

* remove test

* update
2024-08-05 16:06:36 +08:00
Jazzco
ffd03b7e51 [cpp-qt-client] Qt progress info (#18950)
* Update HttpRequest.cpp.mustache

Use stable 4-parameter connect

* add generated files

* Revert "add generated files"

This reverts commit 1d4e78aa0d.

* catch download progress in HttpRequest and pass it to api

* Update HttpRequest.cpp.mustache - clean mixed in changes

Removed additional changes from other PullRequest

* Update HttpRequest.cpp.mustache - replaced tabs by spaces

* Update api-header.mustache - replaced tabs by spaces

* Update HttpRequest.h.mustache - replaced tab by spaces

* ran step 3 from Linux

* changed downloadProgress to -nickname-DownloadProgress and added it to all regions where execution finish is connected

* ran step 3

* replaced tab by spaces

* ran step 3

* activate tracing to detect link issue

* removed redundant connects and encapsulated changes in {{addDownloadProgress}}

* added generated files from step 3

* remove cli-option for httprequest - this should be always there

* added files from step 3

* improved name

* Update samples-cpp-qt-client.yaml - fix parameter order

* Update samples-cpp-qt-client.yaml
2024-08-05 14:40:14 +08:00
William Cheng
25936b4198 Add route4me to the sponsor list (#19294)
* update samples

* add route4me to the sponsor list
2024-08-05 13:07:56 +08:00
Tim Quinn
8f1d59fb0a Support Helidon SE 4 generation (clients and servers) (#19150)
* Save work-in-progress

* Incoming param handling generating well exc. for file upload

* Revise generated test for v3 vs v4 differences

* Leave details of multi-part handling to the user for now

* change default version to use the highest version known

* SE client changes for Helidon 4

* A few fixes; add new v4 SE samples

* Fix v3/v4 routing prep

* Improve version handling if web site is inaccessible; add test

* Reworking parameter conversion and required and validation handling

* Add generation of a return value record per response for each operation

* Improvements to the result record generation

* More changes

* Remove change in whitespace in v3 output

* More progress on parameter handling

* WIP - refactor parameter-returning methods to inner class along with return records

* Reorg of op helpers

* Use no-op for handling map in path, query, header, cookie - need to revise later

* Binary form param handling

* Clean-up and consistency check bt useAbstractClass and not

* Improve result builders

* Add new samples files

* Fix a few issues

* Update samples after rebase; add build steps for v3 and v4 uac github actions

* Remove v3 se useAbstractClass test - creates some bad code

* Generated doc updates

* Fix missing newline

* Improve Javadoc for generated Result; add convenience Result.send method

* Add bean val. for body param if needed

* Restructure generated records for declared responses; add Generated annotation selectively

* Fix typo

* In sample generation, force a stable generatorVersion value to avoid confusing builds and up-to-date samples checking

* Fix up white space in older generation

* Generate PartsUtils only with useAbstractClass = true

* Adopt some review comments; more to come

* Review comments; notably, switch to using the first path segment to group operations rather than the tags items

* Improve status handling a bit

* Add new generated sample files

* Add missing new samples files

* Quite a few updates, esp. to generated samples

* New config file for sample

* Updates samples

* Add updates to .openapi-generator/FILES contents
2024-08-04 22:06:30 +08:00
Filipe Silva
af94bde2ce #19176 fix Task.Result directly blocks thread (#19231)
- async should never be blocked on the ApiClient
 To fix we invert the logic and use Task as base and keep consistency, we expect and wait result only on synchronous calls.
2024-08-04 18:33:33 +08:00
Daniel Seiler
2c2d6905cb fix: remove "hack" to skip schema-mapped models (#19191)
That method relied on the faulty assumption that toModelFilename does not consider mappings, which is not the case for multiple generators.
2024-08-04 18:16:50 +08:00
keenangraham
aa7c62abb7 [BUG] [Python] Fix autoset constants Python code for default query string value (#19138)
* _query_params is list, not dict

* Add test
2024-08-04 18:13:53 +08:00
devhl-labs
aaeed0f5bd use global keyword (#19257) 2024-08-04 17:55:57 +08:00
devhl-labs
2bc4a16af3 [csharp] Convert numbers to long when min/max is too big (#19290)
* convert numbers to long when min/max is too big

* handle exclusives
2024-08-04 17:50:54 +08:00
Tanmay Mohapatra
4c163fe4b0 [Go] Fix deepObject serialization that are anyOf (#19090)
* [Go] Fix deepObject serialization that are anyOf

Updates the go client generator to have the generated struct for anyOf types conform to `MappedNullable` interface.
Fixes query params serialization for deepObjects that are of `anyOf` type.

Implements the suggestion in https://github.com/OpenAPITools/openapi-generator/issues/19085

* check parameter style for deepObject serialization

* generate samples for go-echo-external-refs-test

* move test back to http port

* restrict to anyof models with discriminator

* update test

* add some tests

added some tests to `modules/openapi-generator/src/test/resources/3_0/go/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml` and regenerated the samples
2024-08-04 17:43:09 +08:00
Ivan Vasheka
e0f12e9bf4 [Kotlin] Update formParams.mustache to have List of MultipartBody.Part (#19287)
* [Kotlin] Update formParams.mustache to have List of MultipartBody.Part

* Update formParams.mustache

* chore: removes new line
2024-08-02 12:03:10 +01:00
Dieter Eickstaedt
484b87f22a fix: Template contains unconditional ": Serializable" which creates wrong derive clause on data classes which have a parent as well as are serializable. (#19283) 2024-08-01 14:18:46 +01:00
Emilien Escalle
7f551bb9a0 feat(php-nextgen-client): add support for streaming (#19192)
Signed-off-by: Emilien Escalle <emilien.escalle@escemi.com>
2024-07-31 17:32:10 +08:00
Stephen Zapp
4874a0bce7 [GO] fix generated variable names when no discriminator is used with 'oneOf' (#19183)
* fix oneOf var names when no discriminator is used

* add OneOfWithComplexType to Go petstore schema

- an array of strings variant should end up with the same valid name
whether `useOneOfDiscriminatorLookup` is `true` or `false`
2024-07-31 17:16:24 +08:00
condorcorde
4bf8e4a6ff Convert relative to absolute path (#19269) 2024-07-31 17:10:16 +08:00
Jim Schubert
28a902352c Remove from pingable lists (#19272)
I have not been active in the project for nearly 4 years, but remain
as a pingable maintainer on the readme. This is updating the readme to be
accurate. I only spend around 1-3 hours every other month lately on open-source,
so it's just an issue of time/availability.
2024-07-31 16:37:27 +08:00
William Cheng
9a18fc1857 update docstring in go client, better code format (#19268)
* update docstring in go client, better code format

* update samples
2024-07-30 21:17:21 +08:00
Vikrant Balyan
5d48d224d9 [Go] Set Default Values for Required Variables when a default is defined (#19232)
* use default values for required vars when available

* update tests to existing config file

* cleanup OAS test

* Remove setting value in Get.

* Use Pascal Case for variable naming in Getter Function

* add a CLI option

* add a CLI option

* add a CLI option
2024-07-30 18:32:54 +08:00
Adam Helbling
753502c255 Update ApiClient.mustache for retrofit2 + rxJava3 support to use official square implementation of rxJava3 adapter (#19266) 2024-07-30 18:30:50 +08:00
condorcorde
16b28118cc Conditionally force array context when converting to JSON (#19262) 2024-07-30 18:13:29 +08:00
Jérôme Prinet
d12cc0b63a Migrate from Gradle Enterprise to Develocity (#19264) 2024-07-30 00:47:45 +08:00
VelorumS
f082a35d2e [Python] fix object arrays giving mypy error "Incompatible types in assignment" in to_dict() (#19223)
* [python] mypy fix for multiple arrays of objects

* [python] mypy test for multiple arrays of objects
2024-07-29 16:34:27 +08:00
devhl-labs
755b2efee4 [csharp][generichost] Support response ranges (#19256)
* support response ranges

* revert unintended change

* update try deserialize methods
2024-07-29 16:33:27 +08:00
martin-mfg
2958107a6a [JAVA-CAMEL] revert broken xml change (#19259)
* revert problematic java-camel XML change

* generate samples
2024-07-29 16:32:33 +08:00
Bruno Coelho
42e8f762ac [Kotlin][Client] Encode default values with kotlinx serialization (#19253)
* [Kotlin][Client] Encode default values with kotlinx serialization

* [Kotlin][Client] Encode default values with kotlinx serialization
2024-07-29 08:42:57 +01:00
VelorumS
131fd518fb remove 3.7 in github python-pydantic-v1 workflow (#19239) 2024-07-27 23:30:08 +08:00
aspectivo GmbH
9cfd26e7a5 Adding user aspectivo (#19250)
* Update users.yml

Adding aspectivo  users.yml

* Add files via upload

Adding aspectivo logo file
2024-07-27 23:28:07 +08:00
Peter Storch
37afe57f0f [Kotlin][Spring] fix #19244 integer enum (#19248)
* [Kotlin][Spring] fix #19244 integer enum

* fix embedded array enum
2024-07-26 16:02:34 +01:00
Peter Storch
c93ec54a16 [Kotlin][Spring] fix build.gradle.kts and pom.xml for SpringBoot 2.x (#19246) 2024-07-26 14:06:26 +01:00
Venkatesh Dayananda
3c880719e1 [julia] Add support for style, explode in query params (#19238)
* set style and explode

* update client

* fix

* set the newer version
2024-07-26 17:01:14 +08:00
Makoto Aoyama
fb023b192b [swift5]Add array validation rule (#19242)
* Add ArrayRule

* Run ./bin/utils/export_docs_generators.sh

* Add ArrayValidationErrorKind

* Add validation method

* Run ./bin/generate-samples.sh

* Add array rule property

* Rename minItem and maxItem => minItems and maxItems

* Fix uniqueItems template

* Tweaks

* Add sample property

* Run ./bin/generate-samples.sh
2024-07-26 07:53:59 +01:00
Rick Lucassen
408706ef9d Add support for angular 18.1 with increased typescript and ngPackagr versions (#19228) 2024-07-25 11:18:58 +02:00
William Cheng
362d3b5aa1 [csharp] Add scope for oauth2 (#19234)
* feat: add scope for oauth2

* fix: add parameter AlwaysMultipartFormData

* fix: string to boolean

* fix: optional bool

* fix: null checks

* Optional string

* Remove all references to OAuthMultipartFormData

* Remove _multipartFormData = multipartFormData;

* Remove typo

* Run generate-samples and export_docs_generators

* Revert "Run generate-samples and export_docs_generators"

This reverts commit f051f268a5.

* Switch to string.IsNullOrEmpty, add langVersion 8

* Add langVersion 8 in ConditionalSerialization

* Use regular strings for netstandard2.0

* Remove references to langVersion 8

* Fix variable

* Use template engine to toggle nullable string

* Trigger tests

* Generate samples

* Trigger build

* Use {{nrt?}}

* update samples

---------

Co-authored-by: Morten Jansrud <morten.jansrud@snokam.no>
2024-07-24 21:15:12 +08:00
Bert Downs
9a673ea09a Rust: Support Integer enums using Serde_repr (#19199)
* rust: support repr(int) enum

* Regen APIS

* remove the extra lines

* merge most recent commits from master

* update tests to ensure that enum compiles correctly

* drop changes to kotlin files

---------

Co-authored-by: Jihyun Yu <yjh0502@gmail.com>
2024-07-24 17:14:17 +08:00
Paulo Darocha
8950892652 Fix ExtendedCodegenModel class access modifier to public (#10342) (#19230)
This commit updates the access modifier of the ExtendedCodegenModel class from its default (package-private) to public, allowing it to be accessible from outside its package.

Co-authored-by: Paulo Da Rocha Filho <paulo.darochafilho@wnco.com>
2024-07-24 09:10:20 +02:00
Sylvain Joubert
1c62c0385f [Kotlin][Spring] Add support for class and field extra annotation (#19202)
* [Kotlin][Spring] Document already supported vendor extensions

* [Kotlin][Spring] Add support for x-{class,field}-extra-annotation
2024-07-24 14:31:32 +08:00
Peter Storch
0e70d1f068 [Kotlin][Spring] use flag delegatePattern together with skipDefaultInterface (#19212)
* fix #19211 kotlin-spring flag delegatePattern together with skipDefaultInterface generates broken code

* add kotlin-springboot-delegate-nodefaults to the workflow

* fix Platform declaration clash

* move kotlin-springboot-delegate-nodefaults to the kotlin-server-jdk17 file

* fixed empty line
2024-07-23 18:41:14 +08:00
m-standfuss
6ad5864d28 Adding decimal support for python client generation (#19203)
* Adding decimal to template for Python generator

* Rerunning the build steps

* Add tests for decimal serialization and deserialization.

* Move test to python not legacy pydantic sample

* readd old imports

---------

Co-authored-by: Adam <abolfik@pollyex.com>
2024-07-23 16:16:23 +08:00
Kaido Iwamoto
fef84d956e [typescript-fetch] Fix code generation for oneOf cases without discriminator (#19219)
* Add samples using `oneOf` without discriminator

* Fix typescript-fetch code gen for `oneOf` without discriminator

* Return `{}` instead of original `json`
2024-07-23 08:59:16 +02:00
Julian Vennen
3e263ce3fc php: Fix typedoc comment for headers in ApiException (#19217) 2024-07-23 10:00:48 +08:00
Peter Storch
08e2653935 fix #18555 kotlin-spring generator flag appendRequestToHandler generates broken code when used with flag delegatePattern (#19206) 2024-07-22 08:32:31 +01:00
William Cheng
e40d3228aa Update CXF to newer version (#19210)
* update cxf to newer version

* better format
2024-07-22 00:30:51 +08:00
Christian Beikov
b5d5e572e0 Get rid of a bunch of Javadoc errors (#19209) 2024-07-21 18:48:18 +08:00
Nikita Vakula
e542b06869 [python-fastapi] return 500 if not implemented, added some unittests (#19196)
* [python-fastapi] Added some tests for FastAPI generator

1. Checks the generation of the implementation package.
2. Checks if the endpoints with and without descriptions generate correct
   output.

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Raise 500 if there is no implementation

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

---------

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2024-07-19 16:14:16 +08:00
Dimitar Tomov
f44bc30d20 [Kotlin][Spring] Fix RequestPart handling for multipart request (#19058)
* [Kotlin][Spring] Fix RequestPart handling for multipart request

* [Kotlin][Spring] Add sample spec for kotlin multipart request model

---------

Co-authored-by: dimitar.tomov <dimitar.tomov@scalefocus.com>
2024-07-19 00:58:51 +08:00
Erik Erbar
aaf3ea2528 [FIX][typescript-fetch] Fix duplicate imports for models with a discriminator (#19195)
* add new typescript-fetch self import issue sample

* add a new typescript-fetch self import issue config

* generate sample

* regenerate sample

* Prevent duplicate typescript imports

* Update generated samples

* Filter imports instead of discriminators mapped models

* Update generated samples

---------

Co-authored-by: GeroSchaarmann <Gero.S97@web.de>
2024-07-18 16:24:21 +02:00
Horace Li
e59a4ab8f8 Java libraries validation-api may use javax imports but dependency always uses jakarta namespace (#19171)
* java libraries bean validation use jakarta

* java libraries bean validation use jakarta

* java libraries bean validation use jakarta
2024-07-18 16:59:55 +08:00
Martin Schröder
ebf72a3772 adds support for x-pattern-message in kotlin-spring generator (#19134)
* adds support for x-pattern-message for patterns in kotlin-spring generator as known in java spring generator

* updates doc kotlin-spring
2024-07-18 16:22:18 +08:00
William Cheng
47abf82164 [java] update rest-assured, retrofit2, vertx to use junit 5 (#19185)
* update rest assured to use junit 5

* regenerate samples

* update junit from 4 to 5 for retrofit2, vertx

* update vertx test template
2024-07-18 16:16:27 +08:00
Nicklas Wiegandt
75cbebd2d2 test (JAVA SPRING RESTCLIENT) 18522: Add more JDK 17echo api tests & fix triggers (#19189) 2024-07-18 12:22:57 +08:00
Peter Storch
2f5529a184 fix #11353 use @get:JsonProperty instead of @field:JsonProperty (#19186) 2024-07-17 12:06:32 +01:00
Nicklas Wiegandt
045f4b6067 fix (JAVA SPRING RESTCLIENT) 19137: Fix missing imports when using withXml for Spring RestClient and fix its README (#19146) 2024-07-17 17:47:33 +08:00
Nikita Vakula
cfcc2c89d6 [python-fastapi] Fix api endpoint template (#19139)
* [python-fastapi] Fixed endpoint template

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Fixed base class methods definition

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Updated samples

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

---------

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2024-07-17 12:31:25 +08:00
Nicklas Wiegandt
3dc3ee08bc test (JAVA SPRING RESTCLIENT) Add echo tests for the Spring 6 RestClient (#19145)
* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api multipart form single file test

* feat (JAVA SPRING RESTCLIENT) 18522: Add RestClient to README

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo all of Pet test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body free form object response string test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body pet test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body pet response string test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body string enum test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body tag response test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo form tests

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo header test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo path test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo query tests

* feat (JAVA SPRING RESTCLIENT) 18522: Regenerasted API Clients for RestClient with fixed import indentation
2024-07-17 12:19:31 +08:00
dependabot[bot]
0177ceda56 Bump actions/setup-dotnet from 4.0.0 to 4.0.1 (#19182)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4...v4.0.1)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-17 11:40:10 +08:00
Jeremy Audet
1367a16d6d Update Python versions used for unit tests (#19124)
Python 3.7 is EOL, and Python 3.12 has been released.

See: https://devguide.python.org/versions/
2024-07-17 01:02:21 +08:00
William Cheng
a330a1f38e update samples 2024-07-17 00:27:17 +08:00
Liri S
0002f8c506 Support net8 in aspnetcore (#19051)
* Support net8 in aspnetcore

* gen

* typo

* more

* default swashbuckle

* gen

---------

Co-authored-by: Liri S <liri@ownid.com>
2024-07-17 00:02:41 +08:00
Jeremy Audet
c8587bb31d Run unittest tests with unittest (#19121)
The unit tests in the following directories are written to unittest, not
pytest:

* `samples/client/echo_api/python/`
* `samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent/`

If pytest is told to execute these tests, it will log warnings about
being unable to collect certain tests.
2024-07-16 23:52:56 +08:00
Giuseppe Tribulato
9ae8775987 Close #19129: java jersey2 and jersey3: Always cast path parameters to string similarly to okhttp-gson (#19161) 2024-07-16 18:09:05 +08:00
devhl-labs
c05bedb148 remove unnecessary code (#19159) 2024-07-16 17:59:49 +08:00
Sergey Vladimirov
875fdb50bd Fix issue https://github.com/OpenAPITools/openapi-generator/issues/18574 (#19173) 2024-07-16 17:58:55 +08:00
Martin Delille
49e33188cf [qt-cpp] Remove Qt support before Qt 5.15.2 (#19164) 2024-07-16 17:51:14 +08:00
Christian Beikov
94264e5598 Get rid of a bunch of Javadoc errors (#19162) 2024-07-16 17:49:21 +08:00
CirnoV (Sickle)
a81b736b24 Allow array items in TypeScript to be nullable (#19157)
* Allow array items in TypeScript to be nullable

* Regenerate samples

* Remove duplicate nullable array items codegen
2024-07-16 09:40:17 +02:00
Peter Storch
75e3be39cb fix #19156 @RestController annotation at Kotlin-Spring API interface (#19158) 2024-07-15 14:18:16 +01:00
Julian Kalinowski
304ff96577 [Swift] fix(#18074): correctly map OpenAPIDateWithoutTime to string in path (#18077) 2024-07-15 14:10:00 +01:00
Tolga Akkiraz
7f01a354a5 [Kotlin] Fix invalid gradlew.bat templates (#19165)
* Fix invalid gradlew.bat templates

* Update samples
2024-07-15 20:57:58 +08:00
William Cheng
b705972cad Upgrade rust-hyper to use hyper 1.0 (#19115)
* Upgrade to rust-hyper to use hyper 1.0

* Update rust-hyper samples for hyper 1.0 upgrade

* update cargo

* update samples

* update samples

* update doc

* Default client configuration for rust-hyper

---------

Co-authored-by: Krishna Rajendran <krishna@emptybox.org>
2024-07-14 22:11:08 +08:00
William Cheng
897a4e79d2 update elixir doc 2024-07-14 21:10:26 +08:00
Val Packett
3e6c13ede8 [Elixir] allow custom packageVersion (#19151) 2024-07-14 20:55:44 +08:00
Axel Rindle
75f4faae0c docs: add act coding to users (#19152) 2024-07-13 23:45:06 +08:00
Jeremy Audet
722be84cac Update call to assertDictContainsSubset() (#19122)
`TestCase.assertDictContainsSubset()` was deprecated in Python 3.2,
which went EOL in 2016. Rewrite the assertion to target Python 3.8+.

See: https://docs.python.org/3.2/library/unittest.html#unittest.TestCase.assertDictContainsSubset

See: https://devguide.python.org/versions/
2024-07-13 18:28:26 +08:00
Tim Grein
7b52da5d57 [go-server] Add information, where the server runs to generated README.md (#19141)
* Add information, where the server runs to README.md

* Update samples
2024-07-13 16:35:04 +08:00
Zane Pickett
8938f9dea1 [Ruby] Fix Content-Transfer-Encoding binary unpacking (#19132) 2024-07-11 14:52:38 +08:00
condorcorde
2940d3219c [PowerShell] Support ApiKeyPrefix (#19133)
* Support for ApiKeyPrefix

* Additional files after build
2024-07-11 14:38:16 +08:00
William Cheng
9948ed2cfa [dart-dio] fix JsonObject missing on a generated code #16585 (#19130)
* fix: issue 16261. JsonObject is missing on a generated code

* update samples

---------

Co-authored-by: toriumi0118 <toriumi0118@gmail.com>
2024-07-10 21:15:37 +08:00
Jeremy Audet
a4292c5db5 Update poetry lockfile (#19123)
Updated with `poetry lock`. This makes it possible to execute `poetry
run -- python -m unittest discover` and the like.
2024-07-10 17:22:01 +08:00
Wei Shih
42b0b20891 [k6] Add authentication variables in headers and cookies (#19060)
* Add global auth parsing including headers and cookies for k6.

* Add global auth statements.

* Generate samples.

* Revert "Generate samples."

This reverts commit b8cff8691b.

* Copy petstore-with-fake-endpoints-models-for-testing.yaml to a seperate k6 path as its example yaml file.

* Add global security statement in k6 example yaml instead of using the generic one.
2024-07-10 17:09:43 +08:00
William Cheng
5fdcd4857b [okhttp-gson] migrate to jakarta.ws.rs (#19113)
* javax.ws.rs:javax.ws.rs-api package was renamed on maven

* update dependencies for java okhttp pom, build.sbt

* update

* update dep

---------

Co-authored-by: Andres Aguilar <andresesfm@gmail.com>
2024-07-10 17:07:54 +08:00
Luke Tudge
005d5b0232 codegen: add == -> 'Double_Equal' to specialCharReplacements (#19125)
* codegen: add == -> 'Double_Equal' to specialCharReplacements

The double equal '==' is a common operator in a few contexts (specific use case for me is haystack operators). Currently if this value appears in an enum its name gets sanitized to empty and generates invalid syntax. Very similar to https://github.com/OpenAPITools/openapi-generator/pull/12801

* makes java underscore test more flexible

Given the name and purpose of this test, maybe it is better to test that the generated value is not an underscore rather than to test that it _is_ a specific (and possibly arbitrary) substitute value.
2024-07-10 17:02:48 +08:00
dependabot[bot]
ba056dbf10 Bump actions/setup-dotnet from 4.0.0 to 4.0.1 (#19126)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.0.0...v4.0.1)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 11:13:24 +08:00
Clément Denis
705d853baa Update okhttp3 to 4.12.0 for Maven projects (#19118) 2024-07-10 11:12:57 +08:00
Doug Keen
011acc9950 [typescript-axios] add config parameter to specify custom axios version (#19103)
* feat(typescript-axios): allow configuration of axios version

* docs(typescript-axios): add readme docs for axiosVersion config option

* test(typescript-axios): add unit tests for custom axios version

* docs(typescript-axios): fix up typescript-axios generator docs
2024-07-09 10:52:48 +02:00
Paul Parenko
5612852fb6 Remove dependency scan for inputSpec (actually not required) (#19084)
* added test with external-ref ("external dependency" installed before actual usage)

* fixed test with resource on classpath

added test with resource on classpath with external-ref.

Test with profile 'resource' was wrong as it took JAR into account, but there was no 'petstore.yaml' on classpath.

* Remove dependency scan and do not modify inputSpec provided by user

It is still possible to provide JARs as inputSpec, however the user has to provide it by hand.

Providing dependencies in plugin section still allows correct inputSpec resolution on classpath.
2024-07-09 16:37:54 +08:00
William Cheng
039f0b85f6 Add BearerAuthInterceptor to dart-dio library exports (#19111)
* Update lib.mustache

Add missing export to dio template

* update samples

---------

Co-authored-by: Moshe Dicker <75931499+dickermoshe@users.noreply.github.com>
2024-07-09 16:26:15 +08:00
Cameron Koegel
1841f57863 [Ruby] Allow Overriding Accept Header (#19106)
* [Ruby] Allow Overriding Accept Header

* generate samples
2024-07-09 15:34:07 +08:00
Jeremy Audet
5da4f50dac Fix call to TestCase.assertEqual() (#19091)
`TestCase.assertEquals()` does not exist.
2024-07-09 02:06:22 +08:00
aaronforest-wf
8ab3bb491b Remove thread unsafe statusCode and responseHeaders instance variables from apache http ApiClient (#19054)
* remove thread unsafe statusCode and responseHeaders instance variables

* re-add status code and header getters for backwards compatibility

* add import

* whitespace cleanup

* use deprecated thread id getter for backwards compatibility with pre-19 java
2024-07-08 21:48:52 +08:00
DielN
a3912b7239 [Java][Microprofile] Fix #17526: enumOuterClass missing JSON-B (de)serializer (#18951)
* GH-17526/microprofile: Fix enumOuterClass missing JSON-B (de)serializer

* Add microprofile-rest-client-outer-enum to jdk17 samples workflow

* Regenerate samples
2024-07-08 18:30:22 +08:00
William Cheng
0820edee5d Add bytestring package to dependencies of generated haskell code (#19101)
* Add bytestring package to dependencies of generated haskell code

This broke in https://github.com/OpenAPITools/openapi-generator/pull/18047
where tvh introduced an import of Data.ByteString.Lazy. The added
bytestring package was available in some but not all cases.

* update workflow to test haskell servant ping

* update samples

---------

Co-authored-by: Bastian Senst <senst@cp-med.com>
2024-07-07 22:06:20 +08:00
Michael Hamburger
8f7cce716f Fix duplicate import javax.valid.Valid in resteasy generator (#19055)
* remove javax.valid.Valid import

* changes in samples
2024-07-07 18:48:04 +08:00
William Cheng
b84770af16 fix javadoc in various java files (#19099) 2024-07-07 18:27:23 +08:00
Vladislav Bauer
72cdb7020e Revert "[java-retrofit2] Support payload for DELETE method (#19056)" (#19100)
This reverts commit 9c4664a12c.
2024-07-07 18:23:57 +08:00
Tim Grein
7f6d2d8801 Fix docs for convertPropertyToTypeAndWriteBack and convertPropertyToStringAndWriteBack methods (#19072) 2024-07-07 16:58:24 +08:00
Martin Delille
aef9142c2c [cpp-qt-client] Stop using Qt 5.15.2 in the CI (#19049)
* [cpp-qt-client] Just for test

* Fix samples-cpp-qt-client github workflows

* Use only 6.7.1 in CI

* Revert "[cpp-qt-client] Just for test"

This reverts commit c7e19aeb6c.
2024-07-07 16:57:55 +08:00
Liri S
77737009e7 Speed up docker re-builds using mvn dependency:go-offline (#19078)
* go offline

* dup
2024-07-07 16:56:54 +08:00
Jean-François Côté
0b1b3f531e [ASPNETCORE] Fix having two "?" when not required and nullable = true (#19062)
* fix #18005: Prevent adding 2 times the "?" when not required and nullable = true

* fix #18005: Fix carriage return diff

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-07-06 21:56:22 +08:00
Not So Chiken
b897a99ebb Allow array items in kotlin to be nullable (#19080) 2024-07-06 16:29:49 +08:00
William Cheng
c8caa7cf49 remove 3.7 in github python workflow (#19098) 2024-07-06 16:17:22 +08:00
martin-mfg
4fa124b023 enable java-camel checks (#19074) 2024-07-06 15:19:49 +08:00
William Cheng
dab0a16621 update certifi to newer version (#19097) 2024-07-06 15:13:55 +08:00
Cas Cornelissen
add5c2eec7 Fix casts for typescript-fetch enum keys not working on number-based enums (#19075)
Co-authored-by: Cornelissen, Cas <cas.cornelissen@wartsila.com>
2024-07-04 14:07:40 +02:00
Bruno Coelho
21ad242ceb [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3 (#19064)
* [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3

* [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3

* [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3
2024-07-03 18:09:41 +01:00
Jacek Czerski
ff2e173de8 [Kotlin-Client][JVM-OkHttp] Override parameter enum's toString() method to use its value (#19053)
When using the JVM implementation of OkHttp with a Kotlin client, you may encounter issues with the toString() method of enum parameters. By default, the toString() method of an enum returns the name of the enum value, not its value.

To fix this issue, you can override the toString() method of your enum to return its value instead of its name.
2024-07-03 16:57:46 +08:00
dependabot[bot]
03beb3732e Bump s4u/setup-maven-action from 1.13.0 to 1.14.0 (#19045)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.13.0...v1.14.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 16:48:39 +08:00
Alexis Couvreur
59d799baa2 Add Alexis Couvreur as author of Java WireMock stub server (#19052) 2024-07-03 16:47:28 +08:00
Vladislav Bauer
9c4664a12c [java-retrofit2] Support payload for DELETE method (#19056) 2024-07-03 16:46:20 +08:00
John Arrandale
376505c25d [Typescript] Fix Issue Directly Publishing Package (#19004)
* Update package.mustache

* Updated typescript samples
2024-07-02 18:55:57 +02:00
Aron Wachter
5d61f71cdd [typescript-fetch] Fix API-generation of referenced enums for multipart/form-data (#19016)
* [typescript-fetch] Fix API-generation of referenced enums

* [typescript-fetch] re-generate samples
2024-07-02 15:07:33 +02:00
MarekBodingerBA
daa4886865 Change options from any to RawAxiosRequestConfig in typescript-axios and update samples (#18978)
Co-authored-by: Marek Bodinger <marek.bodinger@gmail.com>
2024-07-02 11:41:05 +02:00
Benedikt Radtke
860fd26449 Fix x-www-form-urlencoded date-time string parameters (#18898)
As mentioned in #13841, date-time parameters in request bodies are not ISO formatted, which breaks with certain webservers. This commit invokes `toISOString()` for date-time body parameters like it is done for queryParameters.

Fixes #13841.
2024-07-02 11:20:29 +02:00
William Cheng
20cfce0b4a Prepare v7.8.0 (#19048)
* Revert "v7.7.0 release"

This reverts commit f3dd32385e.

* prepare v7.8.0

* update readme

* update doc

* update samples
2024-07-02 16:45:53 +08:00
William Cheng
4eaac3d152 v7.7.0 release (#19046) 2024-07-02 15:44:37 +08:00
Dieter Eickstaedt
c9da04cb65 feat: x-enum-description support added to kotlin-server code generator (#19041) 2024-07-01 13:16:26 +01:00
Rodrigo de Almeida - RMA3
21d3cfe924 Fix Issue 18224 - Load x-field-extra-annotation in the operation parameter (#18967)
* fix issue 18959

* fix issue 18224

* fix issue 18224

* fix spaces

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2024-06-30 16:27:14 +08:00
loicconan
fb17e5699d [PHP-SYMFONY] Debug Symfony version 7, enums ref, array of enums $ref and date assert (#19008)
* [PHP-SYMFONY] Debug for Symfony 7 support & debug enum ref & debug array enum ref & debug date assert

* [PHP-SYMFONY] Debug for Symfony 7 support & debug enum ref & debug array enum ref & debug date assert

* [PHP-SYMFONY] Debug for Symfony 7 support & debug enum ref & debug array enum ref & debug date assert
2024-06-30 10:11:26 +08:00
ksn-partisia
fa2b5750ce [Bug] [Java] Remove raw type compilation warnings when generating using jersey2 or jersey3 (#19033)
* Add type annotations to raw types for jersey2 and jersey3 templates

* Update samples

* Add type parameters to anyof_model.mustache and oneof_model.mustache

---------

Co-authored-by: Kasper S. Nielsen <kasper.s.nielsen@secata.com>
2024-06-30 10:06:12 +08:00
Cameron Koegel
53f1094765 [Python] Allow Overriding Accept Header (#19025)
* [Python] Allow Overriding Accept Header

* generate samples

* add tests
2024-06-28 19:27:10 +08:00
Val Packett
44e9ff58bd [android][volley] Remove unused robolectric test dependency (#19022)
Causes failures like:
Configuration `:debugUnitTestRuntimeClasspath` contains AndroidX dependencies, but the `android.useAndroidX` property is not enabled, which may cause runtime issues.
2024-06-27 09:51:56 +08:00
Val Packett
9c26848f11 [kotlin-client] Generate safe ?. access for optional enums (#18982) (#19023)
Fixes #18982
2024-06-26 15:53:56 +01:00
William Cheng
0c4bfe3ffe Add tests for anyof with discriminator (#19021)
* add tests for anyof with discriminator

* remove test

* update samples
2024-06-26 16:00:58 +08:00
qbuzzdaan
6b9d95be89 Tries to fix #18975 by changing how the deserializer interacts with its parent class (#18976)
* [JAVA] Fix for #18975, ensure static block of parent deser class loads

* Add sample spec with type with anyOf
2024-06-26 15:22:20 +08:00
Cameron Koegel
0d05ee35f0 [Python] Add Flag to Allow Ignoring Operation Servers (#18981)
* [Python] Add Flag to Allow Ignoring Operation Servers

* generate samples

* add tests
2024-06-26 15:08:13 +08:00
William Cheng
38d189b159 update kong URL (#19018) 2024-06-26 00:29:43 +08:00
martin-mfg
045b6012b3 [Spring] replace MultipartFile by Resource (#18509)
* replace MultiPartFile by Resource

* fix SpringCodegenTest

* new approach: small scoped fix

* move to JDK17 workflow

* update samples

* fix formParams
2024-06-25 18:26:09 +08:00
William Cheng
da7105bc6a fix NPE in get type, add test (#19014) 2024-06-25 18:05:09 +08:00
William Cheng
6aa825bcf7 [Go] Fix an issue causing int array reference translated to an invalid type []Integer (#19013)
* [Go] Fix an issue causing int array ref be converted into an invalid type, `[]Integer`

* Add test case: wrapped and referenced integer of an array to Go client samples

* add check for ref to property in go abstract

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java

Co-authored-by: Zhiwei <zhiwei.liang27@pm.me>

---------

Co-authored-by: Zhiwei Liang <zhi.wei.liang@outlook.com>
Co-authored-by: Zhiwei <zhiwei.liang27@pm.me>
2024-06-25 16:29:28 +08:00
jpfinne
ba9ac74237 revert lsot testMicroprofileGenerateCorrectJacksonGenerator_issue18336 (#19005) 2024-06-24 17:01:02 +08:00
Rodrigo de Almeida - RMA3
5532203f9f fix issue 18959 (#18962)
Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2024-06-24 16:58:02 +08:00
Lucas
861e8f0656 [kotlin] implement serializable data classes (#8317) (#18386) 2024-06-24 08:13:32 +01:00
GregDThomas
0368f4e031 Add support for a bearer token supplier to OAuth based RestTemplate clients. Fixes #19000 (#19002) 2024-06-24 13:37:04 +08:00
William Cheng
c0be6ba9df update undetow to newer version 2024-06-24 12:43:22 +08:00
Yannick Wiesner
c5daf8193b dart - make the dependency on the http, collection and meta package less strict (#18952) 2024-06-24 12:02:30 +08:00
William Cheng
d5f42500ab [Golang] Move utility functions from client.mustache to utils.mustache (#19001)
* [Golang] Move utility functions from client.mustache to utils.mustache

* re-generate Go samples

* re-generate Go samples again

* re-generate samples once more

* update go samples

---------

Co-authored-by: Martin Lakov <martin.lakov@ocado.com>
2024-06-24 11:58:57 +08:00
William Cheng
1064cb6a68 Allow to pass a str to the Python aiohttp client (#18985)
* see #18972

Add support for `str`

* update python samples

---------

Co-authored-by: David Riccitelli <david@wordlift.io>
2024-06-23 17:19:26 +08:00
Jimmy Ma
4e89436177 [kotlin] Fix a leak in the ApiClient (#18997) 2024-06-23 17:17:05 +08:00
Nathaniel Cook
640ef9d944 fix(rust-server): remove duplicate allow(unused_imports) directive (#18983)
New versions of rust clippy catch errors with duplicate allow
directives. This change fixes the duplicate directives in generated rust
code.
2024-06-20 22:14:57 +08:00
Vito De Tullio
e5ae07c2b4 avoid setting debug property if not needed (#18872)
* avoid setting debug property if not needed

* update samples

* fix compatibility with python 3.7

* always set Configuration.__debug

* update samples

* check `Configuration` behavior when debug parameter is / is not set

* address PR requests
2024-06-20 18:23:34 +08:00
William Cheng
7747cc93e0 [Kotlin] update ApiClient to register all adapters for GsonBuilder (#18965)
* update api client to register type adapter

* update samples

* remove json array variable name
2024-06-20 00:20:11 +08:00
Johann-Peter
cf303d4e03 [csharp] Don't apply OpenAPIDateConverter json converter attribute for DateOnly properties (#18874)
* [csharp] Don't apply json converter attribute for DateOnly (#18541)

Applying the OpenAPIDateConverter to an DateOnly property fails at runtime with an exception.

* [csharp] Update samples
2024-06-19 17:53:00 +08:00
Cameron Koegel
9919c23267 [Ruby] Add Flag to Allow Ignoring Operation Servers (#18934)
* [Ruby] Add Flag to Allow Ignoring Operation Servers

* update samples

* add tests

* fix tests
2024-06-19 17:24:59 +08:00
ReneZeidler
5bc7aa3cd6 Never create inline model for allOf with single $ref (#18945)
Fixes #15077

The previous fix for this in #16096 is incomplete because it still
generates unnecessary inline models when readOnly or
nullable is used in conjunction with other properties like
description.
This commit fixes the logic error and adds testcases.
2024-06-19 17:15:33 +08:00
Val Packett
da57701569 [haskell-http-client] Support --name-mappings and handle _ name (#18943) (#18944)
* [haskell-http-client] Support --name-mappings and handle _ name (#18943)

Fixes #18943

* [haskell-http-client] Add missing TypeOperators flag

-Wtype-equality-requires-operators:
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
2024-06-19 17:07:26 +08:00
Oleg Gromiak
c3a2fe0592 [Python] Add retries option to Configuration constructor (#18919)
* Python: add retries option to Configuration constructor

* Update autogenerated sample clients
2024-06-19 17:06:33 +08:00
Andy☼ McSherry☼
a4b577ddc7 [swift] Issue 18940: Rename url & path variables to avoid collision (#18969) 2024-06-19 17:03:12 +08:00
Andreas Maechler
a4d43a8376 Add default (#18968) 2024-06-19 13:01:47 +08:00
William Cheng
819083b1ba update urllib3 to newer version (#18957) 2024-06-18 14:32:20 +08:00
Cameron Koegel
abc4461e88 [python] Fix Typo in Model Test (#18953) 2024-06-18 11:59:17 +08:00
Oğuz Demirbaşcı
18b4bcba0d useEnumCaseInsensitive option fixed in Java Native Model Enum (#18762) 2024-06-17 17:49:50 +08:00
Dennis Ameling
793aba724a [kotlin-server][javalin6] Add Javalin 6 support (#18928)
* [kotlin-server][javalin6] Add Javalin 6 support

Javalin 5 support was added in 13edc5d. Javalin 6 has been released, with some breaking changes. Let's add a new supportedLibrary to not break existing users of Javalin 5.

https://javalin.io/migration-guide-javalin-5-to-6

* Fix Gradle config and don't include JVM 8 CI anymore (JVM 11 is the minimum for Javalin)

* Update docs

* Fix optional query parameter handling and turn into expected type
2024-06-17 11:38:17 +08:00
Peter Storch
c806ea51b3 requestMappingMode: Explicit configuration to control the location of the generated class level RequestMapping annotation (#18896)
Based on #13838 but for kotlin-spring.

Fixes #18884
2024-06-17 11:36:03 +08:00
jpfinne
129e4dc9c9 Fix #18715 [JAVA] ensure codegen fields and additionalProperties are not conflicting (#18935)
* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Use MUSTACHE_PARENT_CONTEXT in additionalProperties

* Fix link to mustache documentation
2024-06-17 11:35:40 +08:00
Val Packett
989a79811a [Android][Volley] Build fixes (#18899)
* [android] Fix useAndroidMavenGradlePlugin type in template

* [android][volley] Use version variables in template

* [android][volley] Exclude httpclient

As it is incompatible with Android

* [android][volley] Resolve file conflict between httpcomponents modules

* [android] Update Gradle, the plugins, build tools

This fixes building with current Android Studio.

Android Gradle plugin version 8.0.0 was chosen for wider compatibility
with Android Studio versions (as far back as 2022.2.1).

The Maven plugin has been abandoned since the functionality is now
built in, and manual jar tasks are not necessary with it.

* [android] Regenerate samples
2024-06-16 17:17:59 +08:00
Philzen
6f9ad31df3 [JAVA-SPRING] Avoid broken code due to duplicate rendering of @Deprecated annotation with generateBuilders=true (#18917)
* Implement regression test for #12804

* Fix duplicate rendering of @Deprecated annotation on Builder methods

* Regenerate samples

* Sort entries so it's easier to parse if an entry already exists

* Add sample that uses generateBuilders=true to test build matrix

Serves as an additional regression check for #12804

* Add --no-transfer-progress to mvn build command to increase log legibility
2024-06-16 12:02:53 +08:00
Philzen
ec8998b39f [test-stack] Implement inner class assertion and fix typo "doesNotContains" (#18921)
* Implement InnerClassAssert for easy inner class testing

* Suppress "'Optional.get()' without 'isPresent()' check" warning

For now, until https://youtrack.jetbrains.com/issue/IDEA-354935
is solved.

* Apply DRY refactoring

* Move newTempFolder helper method into TestUtils

* Fix typo `doesNotContains`

* Pluralize assertion classes that extend ListAssert

* Add short-hand has/doesNotHaveAnnotation methods to Method assertions

So .hasAssertion(String) can replace .assertMethodAnnotations().containsWithName(String)

* Refactor tests, simplifying setup using CodegenConfigurator

* Harmonize API, removing confusion between has… and assert…

This makes our the assertion API more consistent, in the way that
assertSomething("") will always return a different assertion type,
while hasSomething("") will always return the same type.

* Use simplified hasAnnotation/doesNotHaveAnnotation assertions
2024-06-16 10:03:11 +08:00
Ghufran Zahidi
3d93862c6d OneOf should handle Inheritance based type (#18892) 2024-06-16 00:06:56 +08:00
Philzen
642b1a3a95 [JAVA] [SPRING] [PKMST] [MICRONAUT] XML wireformat: Fix Jackson useWrapping=false, JAXB+Jackson namespaces (#18870)
* Fix XML annotations on model properties (JavaSpring)

* generate JAXB annotations for attributes and elements

* generate wrapper annotations (JAXB and Jackson)

* use XML config from items for annotations of containers

* Add test for Jackson XML wrapper correctness

* Add additional test cases to cover all xml applications in spec

Test now covers all use cases described in
- https://web.archive.org/web/20240424203304/https://swagger.io/docs/specification/data-models/representing-xml/
- https://spec.openapis.org/oas/v3.0.0#xml-arrays

* Fix basename used instead of xmlName when items.xmlName is unset

See last example in spec: https://spec.openapis.org/oas/v3.0.0#xml-arrays

* Harmonize spacing between Annotation attribute name and value

* Refactor and group JAXB vs. Jackson XML annotations, only generate latter if enabled

This is in line with the way the class annotations in `xmlAnnotations.mustache`
are rendered – which only renders the `@Jackson`… xml annotations if
additionalProperty jackson is true.

Also reorder annotation attributes in the following order:
- localName/name
- namespace (optional)
- isAttribute/useWrapping (optional)

* Explicitly render `useWrapping = true` to @JacksonXmlElementWrapper

This was slightly inspired by @jzrebiec via PR #5371.

Wrapping is the default since Jackson 2.1 – so explicitly rendering
this will:
- make generated model work out-of-the-box in Jackson 2.0 for instance
- ensure the models still work if the local `XmlWrapper` was
  configured with `useXmlWrapper(false)`

* Move xml test spec to java resources folder (not spring specific)

* Make test class name match class-under-test

This makes discovery & cross-navigation in IDE easier.

* Add complete xml annotations test for Java generators

* Fix Java PKMST generator not generating @JacksonXmlElementWrapper

* Fix Java microprofile generator missing @JacksonXmlRootElement

* Fix Java microprofile generator not using wrapper annotations and namespaces

* Fix Java Micronaut Client creating invalid (unclosed) @XmlAttribute annotations

* Fix Micronaut Client using wrong localName for @JacksonXmlElementWrapper

* Fix Micronaut client rendering @JacksonXmlProperty annotation twice

* Make Java Micronaut render @JacksonXmlElementWrapper(useWrapping=false) for non-wrapped elements

* Fix Jackson element using `xml.name` when it should be `items.xml.name`

Closes #5989
Closes #3223
Relates to #9371

* Fix JAXB element using `baseName` instead of `xmlName` when items.xmlName is unset

* Remove XML generation debug output from templates

* Remove redundant newline between XML class annotations and class

Brings the SpringCodegen in line with other Java Codegen's

* Remove redundant newline between XML setter annotations and setter

* Fix multiline JavaDoc block indentation and format

* Simplify / condense xml annotation template into single lines

May look a bit more complex, but cuts out a lot of repetitiveness.
Also reorders annotation attributes in the following order:
- localName/name
- namespace (optional)
- isAttribute/useWrapping (optional)

* Harmonize spacing between Annotation attribute name and value

* Remove unused jackson_annotations partial

Was not referenced anywhere in java-helidon resources folder

---------

Co-authored-by: Christian Schuster <christian@dnup.de>
2024-06-15 23:02:32 +08:00
William Cheng
13facdaab5 [python] Add an option to add ensure_ascii=False to json.dumps (#18888)
* Added ensure ascii

* add option to add ensure_ascii=False in jsom.dumps

* remove option

* update workflow

---------

Co-authored-by: Emile Girard <Emile.Girard@opal-rt.com>
2024-06-15 18:39:06 +08:00
William Cheng
a40673acb9 update rust axum samples, add cargo fmt (#18938) 2024-06-15 18:35:49 +08:00
Emmanuel Mathot
0aac363ca0 [rust-axum] Support for response status code ranges (#18895)
This PR adds support for response ranges in rust-axum server, as defined in section 4.8.16.2 of the spec.

### PR checklist

- [X] Read the [contribution guidelines](https://github.com/openapitools/openapi-generator/blob/master/CONTRIBUTING.md).
- [X] 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.
- [X] Run the following to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
  ```
  ./mvnw clean package
  ./bin/generate-samples.sh ./bin/configs/*.yaml
  ./bin/utils/export_docs_generators.sh
  ```
  (For Windows users, please run the script in [Git BASH](https://gitforwindows.org/))
  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.
- [X] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming 7.6.0 minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
- [X] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.
@frol @farcaller @richardwhiuk @paladinzh @jacob-pro
2024-06-15 18:12:47 +08:00
Emily Crandall Fleischman
cc24106832 [Rust-Axum] Use x-response-id if specified (#18906)
* [Rust-Axum] Use x-response-id if specified

* update samples
2024-06-15 18:12:38 +08:00
Filipe Silva
8bac93e23b [csharp] Improved apiclient.mustache (#18915)
* improved apiclient.mustache to keep it dry, sharing a single exec with Action<> delegate.

* updated samples and test

* Removed async from ApiClient.mustache

Updated samples

* Revert change to CSharpClientDeepObjectTest.java

* Fix async await (it was not waiting creating a null exception)

Updated samples

* Fix File IO namespace with using directive

* Improved comments on new methods

Added new DRY method DeserializeRestResponseFromPolicy

* Fix comments and parameters for new method DeserializeRestResponseFromPolicy

Updated samples
2024-06-15 17:54:14 +08:00
Tobias Zink
01fec76ab1 feat(typescript-angular): add support for Angular V18 (#18916)
* feat/typescript-angular/add-v17-support

* HTTP_TRANSFER_CACHE_IN_OPTIONS for angular 17 as well

* run build scripts again because of angular 17 HTTP_TRANSFER_CACHE_IN_OPTIONS
2024-06-14 15:14:28 +02:00
Daniel Imber
f36590051f [Enhancement] [Gradle Plugin] Allow templates from classpath (#14909)
* [Enhancement] [Gradle Plugin] Allow templates from classpath

* Adding missing argument binding.
2024-06-13 21:20:41 +08:00
Jean-Donald Roselin
ea0190324e fixes #18853: provide support of array attributes in multipart/form-data request for axios and fetch typescript clients (#18855) 2024-06-13 14:49:55 +02:00
Max Lapshin
788fd6f725 Golang client can use pattern-based discriminator between oneOf (#18760)
* Enable reading schemas with pattern-based discriminator between oneOf for golang client #5311

* Codegen after changing to golang templates #5311
2024-06-13 16:31:36 +08:00
William Cheng
26a164e57f [Java][Spring] enumUnknownDefaultCase true now returns correctly in fromValue (#18914)
* enumUnknownDefaultCase true added for Spring

* Resource added for test

* Updated tests

---------

Co-authored-by: Dean <dean.kane@opencastsoftware.com>
2024-06-13 16:23:56 +08:00
William Cheng
1765efc1ff [Golang] Introduce 'lambda.type-to-name' in models_anyof.mustache (#18912)
* Update model_anyof.mustache

* add tests for anyof in go client

---------

Co-authored-by: Martin Lakov <85170913+martinlakov@users.noreply.github.com>
2024-06-13 16:01:58 +08:00
devhl-labs
3abe2512c5 [csharp][generichost] Add options for model parameter sorting (#18886)
* fixed parameter ordering

* placed changes behind a switch

* bug fix

* minor revert

* use lombok.Setter

* addressed comment

* lint

* minor refactor

* massively improve csharp templates code

improved apiclient.mustache to keep it dry, sharing a single exec with Action<> delegate.
improved api.mustache to keep it dry, used chain constructors, kept RequestOptions in a single method, set configuration with alias directive
moved fqn types to using directive for cleaner code
removed 'this' from variables/props that are redundant
fix CSharpClientDeepObjectTest code is now DRY so count must only be one

* updated test samples csharp

* removed async from ExecAsync (not needed here anymore)

* updated samples csharp

* nullable property not working on models due to not being defined in yaml schema

updated samples

* added options

* rebuild tests

* revert unintended commits

* rebuild samples

* rebuild samples

* rererebuild samples

* fix manual tests

---------

Co-authored-by: filipe <filipe_ds@live.com.pt>
2024-06-13 00:25:29 +08:00
William Cheng
fc0105e214 [Java][jaxrs-spec] enumUnknownDefaultCase true now returns correctly in fromValue (#18910)
* enumUnknownDefaultCase true added for Jaxrs-spec

* Updated tests

---------

Co-authored-by: Dean <dean.kane@opencastsoftware.com>
2024-06-12 23:43:43 +08:00
William Cheng
ef7654958e Marketplace software zapier request middleware (#18907)
* feat: add middleware for requests

* update samples

---------

Co-authored-by: Stephen (Alex) Wallen <wallenstephen@outlook.com>
2024-06-12 16:32:08 +08:00
Dennis Melzer
7084e87140 Remove bean validation for uuid (#18900)
* Remove bean validation for uuid

* Add maxLenght to test the uuid validation
2024-06-12 11:53:14 +08:00
William Cheng
37ea82b2c7 Fix list in kotlin client templates (#18891)
* fix list in kotlin client templates

* remove java syntax in kotlin template

* fix array check
2024-06-12 11:42:44 +08:00
Filipe Silva
e8bbfe23b4 [csharp] fix system.web warning and removed unneeded fqn (#18902)
* Refactor validatable.mustache moved fqn types to using directive for cleaner code

Fix netcore_project.mustache conditional "System.Web", more details:
https://learn.microsoft.com/en-us/aspnet/core/migration/inc/adapters?view=aspnetcore-7.0

* updated csharp samples
2024-06-11 19:53:39 +08:00
Filipe Silva
7f34e11a7f [csharp] Refactor anyOf model template (#18901)
* Refactor AnyOf model removed "this."

* Updated csharp samples
2024-06-11 18:43:27 +08:00
Klaus Mueller
8357cc313b muenchen deeplink (#18894) 2024-06-10 22:46:06 +08:00
Nate Todd
00f2cd573c [Elixir] Fix generation issues and compilation warnings in Elixir generator (#18788)
* Format Elixir generator

* Update Elixir reserved words

* Update Elixir generator docs

* Improve typespec generation to avoid double ".t" issues

* Fix compilation warnings by changing reserved words to use suffix instead of underscore prefix

* Include additional reserved words and handle words with leading underscores

* Update samples and docs

* Uses dataType instead of baseType for non-struct types

* Generate elixir samples

* Fixes issue with AnyType in a list

* Generate elixir samples

* Removes normalizeTypeName for arrays as they correct by getTypeDeclaration

* CodeStyle

---------

Co-authored-by: Michael Ramstein <michael@ramste.in>
2024-06-10 14:06:16 +02:00
Jason Schroeder
80bb3dde0b build: use runtime scope for slf4j-simple log sink (#18881)
Avoid leaking this as a dependency to openapi-generator consumers.
2024-06-10 17:45:51 +08:00
Pierre B
f517bf7b98 [typescript-fetch] - Fix Nullable Types (#18887)
* fix nullable types

* fix samples

* fix samples

* fix samples

* fix samples

---------

Co-authored-by: Pierre Berube <pberube@blackpointcyber.com>
2024-06-10 11:35:20 +02:00
devhl-labs
2851838f7f [csharp][generichost] Fixed parameter ordering (#18823)
* fixed parameter ordering

* placed changes behind a switch

* bug fix

* minor revert

* use lombok.Setter

* addressed comment

* lint

* minor refactor
2024-06-10 14:46:55 +08:00
William Cheng
0cc9644120 Add enum default value tests to python clients (#18883)
* add enum default value tests to python clients

* add new files
2024-06-08 17:34:57 +08:00
Mike Welsh
a5a99585ef [Python] Add enum support when building default values for model properties when using $ref (#18796)
* Add enum support when building default values for model properties

* Update enum handling for Python for enum references

* Remove unused method

* Update mustaches for FastAPI, Pydantic, and Python for default values

* Address PR feedback and rebase main

* Remove old 2_0 samples
2024-06-08 16:18:03 +08:00
Philzen
5adf1ff522 Avoid UnsupportedEncodingException by design, replacing magic string "UTF-8" with StandardCharsets.UTF_8 (#18851)
* Replace magic string "UTF-8" with StandardCharsets.UTF_8

This avoids an UnsupportedEncodingException by design.

* Remove unused UnsupportedCharsetException import
2024-06-08 15:23:24 +08:00
ふぁ
dc81339ef1 [typescript-fetch] fix #18876 Type error in oneOf when legacyDiscriminatorBehavior is false (#18877) 2024-06-07 10:44:39 +02:00
William Cheng
4be5971e0f [cpp-restsdk] add support for oneOf via std::variant (#18821)
* Revert "Revert "[cpp-restsdk] add support for oneOf via std::variant (#18474)…"

This reverts commit 8d398719c9.

* update samples

* update pom

* set cxx 17

* Revert "set cxx 17"

This reverts commit 0cec8f725d.

* install clang 6.0

* Update CI/circle_parallel.sh

Co-authored-by: Amin Yahyaabadi <aminyahyaabadi74@gmail.com>

* fix include

---------

Co-authored-by: Amin Yahyaabadi <aminyahyaabadi74@gmail.com>
2024-06-07 12:24:39 +08:00
Nikita Shmakov
3aba42733b clone Schema using AnnotationUtils.clone with WA (to clone schemas wi… (#18867)
* clone Schema using AnnotationUtils.clone with WA (to clone schemas with example field set)

* changes after scripts run
2024-06-06 20:55:51 +08:00
ふぁ
6ae8a8f4c7 [python] fix deserialize on basic str fails (#18800)
* [python] fix #18774 Deserialize on basic str fails

* [python] update sample

* [python] update test

* [python] remove type

* [python] fix test

* [python] add top level type test

* Update deserialize content_type parameter and quote

* [python] restore echo_api test

* [python] add allow empty json in Response
2024-06-06 16:15:50 +08:00
Val Packett
d1254ccfda [dart] Apply var/param/model name mappings, handle single _ (#18663) (#18860)
Fixes #18663
2024-06-06 13:22:09 +08:00
Humle-T
36ade65993 [kotlin-spring] Fix two missing ) in kotlin-spring/pathParams.mustache (#18854) (#18861) 2024-06-05 15:51:09 +01:00
Val Packett
0621d3462d [erlang-client] Apply var/param name mappings (#18662) (#18859)
Fixes #18662
2024-06-05 17:45:18 +08:00
William Cheng
f97706d29b update php slim samples 2024-06-05 17:44:27 +08:00
Tommy Seus
b7a4a47270 [php-slim4-server] fix php syntax error in RegisterRoutes class (missing semicolon) (#18863)
Co-authored-by: Tommy Seus <tommy.seus@tmy.email>
2024-06-05 17:37:47 +08:00
Philzen
880df7a7a4 [maven-plugin] Generate hash from actual resolved spec rather than inputSpec file (#18849)
* Ensure temp directories are deleted after test execution

* Implement test that external $ref changes are reflected in checksum

* Generate hash checksum from actual resolved spec instead of inputSpec file

Otherwise regeneration will not happen when skipIfSpecIsUnchanged is enabled,
although formally the spec content has changed.

Fixes #4512 and #16489

* Use try-with-resources to ensure stream is closed properly on exit

* Fix deprecation warning on SimpleLocalRepositoryManagerFactory no-arg constructor

* Apply minor code cleanup

- use fluent setters where possible
- remove undocumented @throws from JavaDoc
- use List.of() instead of Arrays.asList() for single-element-collection
  (more memory efficient)
- fix some grammar issues in comments and JavaDoc

* Use non-blocking java.nio API for file existence checks
2024-06-05 17:19:22 +08:00
Philzen
446e168f43 Remove deprecated MockDefaultGenerator (#18857)
* Make DryRunStatus path field final

* Add templateData capture functionality to DryRunTemplateManager

* Replace MockDefaultGenerator with DryRunTemplateManager captures

* Remove MockDefaultGenerator
2024-06-05 17:10:17 +08:00
Val Packett
2fcf825e19 [clojure] Apply model/param/var name mappings (#18665) (#18858)
Fixes #18665
2024-06-05 16:58:13 +08:00
Jean-Donald Roselin
17a08d2646 fixes #18489: provide support of array attributes in multipart/form-data request for angular typescript client (#18490) 2024-06-05 09:37:00 +02:00
Philzen
86f23e13e5 [javascript-closure-angular] Change metadata to reflect beta status and non-existing xml capability in docs (#18834)
* Fix generator metadata to reflect beta status and non-existing xml capability

* Regenerate doc page

* Regenerate docs/generators.md
2024-06-05 10:57:22 +08:00
Philzen
45bc9c9e2f [php-laravel] Fix file database/migrations/2019_08_19_000000 being written twice (#18832)
* Implement dedicated transitional test for #18831 bugfix

* Remove duplicated database migration file from supportingFiles collection

* Activate AllGeneratorsTest.noDuplicateSupportingFiles

* Drop transitional test again

* Simplify truthy assertions
2024-06-05 04:43:52 +02:00
Philzen
aef4d75fd5 Refactoring: Use lombok for simple getters & setters (#18559)
* Add missing @Override annotation

* Fix JavaDoc unresolved symbol

* Fix JavaDoc method link

* Remove unnecessary semicolon

* Remove method identical to super implementations

* Replace repetitive getter code with Lombok @Getter

See https://projectlombok.org/features/GetterSetter

* Replace repetitive setter code with Lombok @Setter

See https://projectlombok.org/features/GetterSetter

* Generate no-args constructor with Lombok

* Generate all-args constructor with Lombok

* Fix parameter naming

* Replace stubbed abstract class implementations with Mockito mocks

* Remove unused import(s)
2024-06-05 04:43:05 +02:00
julien Lengrand-Lambert
42c78403cb JetBrains HTTP Client - Adds support for query and header params and env file (#18844)
* Adds basic support for query params.

* Need to parameterize them
* Need to add tests
* Need to add option to skip, maybe
* Need to add support for header params too

* Parameterizes query param values

* Need to add tests
* Need to add option to skip, maybe
* Need to add support for header params too

* Remove extra empty line

* Adds support for header params

* Also fixes extra end of line bug.

* Fixing failing test

* Adding tests for query params

* Adding tests for header params

* Adding basic support for env file

* Add support for env file for path variables and custom header variables

* TODO : Add tests

* Adding tests for env generation

* Adding generated test files

* Fix namefile
2024-06-05 10:30:25 +08:00
Philzen
1c787babad [JAVA] Fix jackson (de)serializer annotation breaking libs using gson when bigDecimalAsString=true (#18835)
* Implement regression test for bigDecimalAsString annotations

* Ensure @JsonSerialize and @JsonDeserialize is only generated when Jackson enabled

Fixes #6496
2024-06-04 13:26:07 +08:00
Philzen
a574d9e09c Remove unused retrofit1 mustache templates (#18833)
These are not used by any generator implementation, hence there's no
point in bundling them into every release we're shipping.

In case someday it is decided that a retrofit v1 generator will be needed
again, this commit can simply be reverted.
2024-06-04 12:53:19 +08:00
Philzen
35a882076f [python-fastapi] Fix CLI crash when calling config-help & update docs (#18816)
* Implement test for uniqueness of CliOptions across all generators

* Refactor existing test to use @DataProvider and fluent assertion

* Remove extraneous cliOption definition for disallowAdditionalPropertiesIfNotPresent

This is already defined (matching exactly in all aspects) in DefaultCodegen.

Resolves #18810

* Avoid variable declaration & assignment when only used once

* Add additional uniqueness tests for all DefaultCodegen List<> members

Test uniqueness for lists of:
- supportingFiles
- supportedLibraries
- supportedVendorExtensions

* Disable AllGeneratorsTest.noDuplicateSupportingFiles for the time being

Re-enable when #18831 is fixed

* Generate updated python-fastapi docs
2024-06-04 12:40:29 +08:00
devhl-labs
91a1931bd9 [csharp][generichost] Add support for primitive composed (#18825)
* add support for primitive composed

* build samples again

* rebuild tests

* addressed comment
2024-06-04 12:38:53 +08:00
Philzen
ed2aad6756 [JAVA: okhttp-gson, rest-assured, retrofit2] Don't generate Jackson import when serialization library is GSON (#18811)
* Partially revert "replace deprecated ISO8601Utils with StdDateFormat (#17052)"

This partially reverts commit 76560e34c9, namely anything
related to generators and samples using GSON instead of Jackson.

Changes to Jackson-only generation and generator-online regarding RFC3339DateFormat
are not being reverted.

* Test for default serialization library fallback

* Convert repetitive tests to parameterized test

* Add regression test for #18515

* [FEIGN] Only include <jackson-databind-version> property in pom.xml when required

* [RETROFIT2] Only include jackson-databind in gradle file when actually required

* [FEIGN] Don't include jackson dep's in sbt file when GSON is selected

* [FEIGN] Don't include jackson dep's in gradle file when GSON is selected

* DRY refactor JavaClientCodegen test code, increase readability

- use fluent assertions
- use helper method newTempFolder()
- use Java 9 static factory methods for maps
- don't declare variables that are only used once
- group declarations and usages
- use non-blocking java.nio.file API wherever possible

* Regenerate samples
2024-06-02 21:42:55 +08:00
Philzen
051abb82dc Bugfix/activate helidon versionutil tests (#18815)
* Reactivate tests

Contrary to Junit5, classes containing TestNG tests need to have
public visibility, otherwise the tests will not be discovered and run.

* Reformat tests for readability

* Rewrite tests using fluent assertions
2024-06-02 21:42:02 +08:00
William Cheng
713aa92b22 add tests for 18772 (#18828) 2024-06-02 18:10:46 +08:00
Gerwin Jansen
c08afa37e4 [BUG][Csharp][GenericHost] OpenApi 3.1: Model property of type map/additionalproperties gets generated as object (#18772)
* Fix the bug + add test case

* Add sample output

* Update version number in new sample output

---------

Co-authored-by: Gerwin Jansen <gerwinjansen@users.noreply.github.com>
2024-06-02 17:31:53 +08:00
Philzen
4ae4bc5f5d [kotlin-spring] Generated code using Schema with discriminator mapping will not compile (#18826)
* Update springdoc-openapi-starter-* to v2.2.0 in gradle build

This brings it in sync with the maven pom. Brings swagger-annotations
version 2.2.15 as transitive dependency, implements the @Schema annotation
property `requiredMode`.

Hence fixes #14949

* Update kotlin-server samples
2024-06-02 15:18:38 +08:00
Philzen
2b9949a66b Bump Jackson to latest v2.17.1 and sync in templates (#18799)
* Drop separate version property

Not required as all Jackson packages usually tether on a version bump.

* Update Jackson to v2.17.1

* Sync Jackson version used by Spring Boot with project version

* Sync jackson update to v2.17.1 with generator templates

* Regenerate samples with updated versions

* Adjust test to current exception msg behavior

* Add dependency mgmt to ensure matching version for transitive dependencies

* Update library descriptions with correct Jackson version number

* Update library descriptions with correct GSON and JSONB versions

* Update retrofit library description with correct version number

* Update retrofit description to include Jackson as an option

This should have been done as part of in #16853.

* Update remaining libary version descriptions with correct versions

* Generate updated doc
2024-06-02 15:17:38 +08:00
devhl-labs
f540e003f5 fixed workflow (#18824) 2024-06-02 15:07:57 +08:00
William Cheng
8d398719c9 Revert "[cpp-restsdk] add support for oneOf via std::variant (#18474)" (#18820)
This reverts commit 6a3d406690.
2024-06-01 19:04:03 +08:00
Amin Yahyaabadi
6a3d406690 [cpp-restsdk] add support for oneOf via std::variant (#18474)
* [cpp-restsdk] add support for oneOf via std::variant

* [cpp-restsdk] detect the latest supported C++ standard in CMake

* [cpp-restsdk] add test with oneOf support for cpprest

* [cpp-restsdk] avoid warnings because of implicit this capture

* [cpp-restsdk] avoid deprecated CMake version warnings

* [cpp-restsdk] build the test into the build directory - parallel build

* [cpprest-sdk] use absolute source path for cmake + debug build

* fix: remove inheritance due to template not overriding

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-06-01 17:48:02 +08:00
William Cheng
ca94559fb6 Add tests for Cpprestsdk client in CircleCI (#18817)
* add cpprest sdk test in circleci

* install
2024-06-01 17:31:20 +08:00
Marc Le Bihan
84ce2bfd14 [BUG][C++][cpp-pistache-server] An api receiving a std::optional parameter generates a org::openapitools::server::model::std::optional<...> that doesn't compile #18792 (#18793)
Solving this issue has for goal to reduce the amount of work required to resolve the [[C++] Error making the cpprestsdk generated files](https://github.com/OpenAPITools/openapi-generator/issues/6726)
   and to put the `cpp-pistache-server` generator a the "same compilation problems" level than the `cpp-restsdk` generator in font of the #6726.
2024-06-01 17:04:46 +08:00
Lars van Leeuwen
8783ad8a18 [Python] List enum members in docs (#18804)
* List enum values in docs

* Remove newline

* Remove another newline

* Generate samples
2024-06-01 17:00:11 +08:00
Philzen
e2258fb790 [kotlin-spring] Fix gradle build failure when generated with interfaceOnly=true (#18809)
* Fix kotlin-spring not building when `interfaceOnly=true`

Fixes #18803

* Regenerate fixed kotlin-spring samples

* Include sample kotlin-springboot-request-cookie in CI build check

* Apply suggestions from code review

Co-authored-by: Stefan Koppier <stefan.koppier@outlook.com>

---------

Co-authored-by: Stefan Koppier <stefan.koppier@outlook.com>
2024-06-01 16:55:25 +08:00
Philzen
66126a8ae4 Remove unused test dependencies org.reflections & maven-rewrite (#18798)
* Specify exact relative path to parent pom.xml

* Remove org.reflections from the test stack

* Remove unused parameter

* Remove unused method

* Fix raw use of parameterized variable warning

* Use Files.readString instead of converting raw bytes

* Add test coverage for TestUtils.validatePomXmlFiles(List)

* Reimplement TestUtils.validatePomXmlFiles(List) with Jackson XML mapper

* Remove maven-rewrite dependency
2024-06-01 16:42:26 +08:00
Philzen
6a6f39d6f4 Change/reintroduce junit5 (#18790)
* Revert "Revert back to junit4 (#18786)"

This reverts commit 2471ba2d2e.

* Make junit engine execute TestNG test cases

* Fix failing test and use tempDir's for test code generation

* Make test fail with helpful info in case generator throws exception

* Suppress error output from TestUtils

* Remove transitive junit4 dependency

* Sync guava-testlib version with guava version

* Add hint regarding alternative for guava-testlib's FakeTicker
2024-06-01 16:40:40 +08:00
devhl-labs
368110a631 [csharp][generichost] Added 4.8 samples (#18791)
* added 4.8 samples

* easer to understand diff

* build samples again

* build samples again
2024-06-01 16:17:58 +08:00
William Cheng
353320cb04 [kotlin] better oneOf, anyOf support (#18382)
* add validteJsonElement

* add oneOf support

* various fixes, add tests

* minor fixes

* minor fixes

* update data class

* remove comments

* array support, add test

* update api client constructor

* add anyOf support

* add new files

* fix merge

* update

* update

* update

* update
2024-05-31 12:22:27 +08:00
William Cheng
1c7e5c4726 add kong as sponsor (#18795) 2024-05-31 00:42:01 +08:00
devhl-labs
b19fc67a53 added framework support (#18776) 2024-05-29 20:58:52 +08:00
William Cheng
2471ba2d2e Revert back to junit4 (#18786)
* revert junit5 upgrade

* revert upgrade to junit5

* fix kotlin-wiremock template folder

* fix/comment tests

* update
2024-05-29 18:58:44 +08:00
HentaiHeavenVR
edaace9323 Fix TS7053 errors in generated instanceOf* methods (#18770)
* Fix bug referenced in #18746 , introduced in #18418

* Generate examples
2024-05-28 14:18:39 +02:00
Oliver Stevns Larsen
48919ba3d2 Add model name mapping to swift5 client generator (#18780) 2024-05-28 16:48:53 +08:00
devhl-labs
56f301632e removed warnings (#18775) 2024-05-28 16:41:30 +08:00
dependabot[bot]
1c94576da7 Bump jorelali/setup-elm from 5 to 6 (#18777)
Bumps [jorelali/setup-elm](https://github.com/jorelali/setup-elm) from 5 to 6.
- [Release notes](https://github.com/jorelali/setup-elm/releases)
- [Commits](https://github.com/jorelali/setup-elm/compare/v5...v6)

---
updated-dependencies:
- dependency-name: jorelali/setup-elm
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-28 16:39:01 +08:00
Brais Gabín
c1d0e7c24a Support nonPublicApi on jvm-retrofit2 (#18769) 2024-05-27 12:22:26 +01:00
Marcel Huber
74a9509e0c [Java][native] Fix: DateTime in deepObjects is no longer serialized correctly [fix #18742] (#18743)
* fix serialization of OffsetDateTime

* update samples

* wrap import
2024-05-27 16:32:32 +08:00
Philzen
9c999b6559 [General] Remove defunct global property withXml from generator, docs, maven & gradle plugin (#18568)
* Mention that Golang generator also supports XML annotations

Looking at src/main/resources/go/model_simple.mustache and
src/main/java/org/openapitools/codegen/languages/GoClientCodegen.java
the GoLang seems to cater for withXml=true

* Fix maven plugin config description for `withXml`

* Add basic test for global withXml setting

* Use global withXml setting if not configured in ConfigOptions

Resolves #3839 and #5764

* Don't generate metadata or other files when only Models are tested

* Reformat table for readability

* Remove global property `withXml` from generator and docs

* Move WITH_XML constant out of system constants block

Currently there is only a single reference to this value in the whole
codebase (GoClientOptionsProvider). Maybe we should re-think how this
file is organised (i.e. provide a clearer split / mapping / understanding
what are system properties vs. global properties vs. configOptions and
where to put them).

* Remove global option `withXml` from Maven plugin (Breaking change)

This is a "soft" breaking change: Plugin will no longer execute if
user have this option – which is good, b/c it never worked as expected.
We may want to hint this in the 8.0 release notes.

* Remove global property `withXml` from Gradle plugin (Breaking change)

This is a "soft" breaking change: Plugin will no longer execute if
user have this option – which is good, b/c it never worked as expected.
We may want to hint this in the 8.0 release notes, so they can add it
to the `configOptions` map if required, or simply delete it

* Update samples to reflect removed `withXml` property

* Move `withXml` option into ConfigOptions for Java Microprofile sample

* Remove unused local vars and parameters

* Avoid repetition using fluent assertions

* Remove extraneous debug output
2024-05-27 14:35:32 +08:00
William Cheng
258b7af727 update samples 2024-05-26 21:42:10 +08:00
Aaron Pritzlaff
e6964482b8 Service api fix (#18767)
* moved service api into shared source

* moved service api into shared source

* This Scala cask change makes the service traits available to 
Both JVM and JS platforms.

It does this by moving the api interfaces into the cross-platform
Shared sources
2024-05-26 21:37:35 +08:00
devhl-labs
ee3ff39225 fixed sorting (#18706) 2024-05-26 18:07:31 +08:00
dependabot[bot]
af090fd526 Bump s4u/setup-maven-action from 1.12.0 to 1.13.0 (#18703)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-26 17:54:31 +08:00
Jimmy Praet
6a9b10075e Make JAX-RS BuilderImpl class non-final to fix WELD-001503 issue (#18724)
Fixes #17875
2024-05-26 16:43:32 +08:00
cvkem
5e8b589bea Fix rust server auth (#18692)
* Added authentication via Bearer-token api_key and basic for server and client

* Improved errorhandling

* Added check on oAuth audience to example

* Updates of the petstore files for Rust-server

* Moved module import to prevent issue in callbacks

* updated samples

* Fix for unused-qualifications issue

* updated sampmles
2024-05-26 16:04:14 +08:00
Ievgen Rozdymakha
0daf9ffa5b Fix javaJaxRS template: remove deprecated in JDK9 method usage (#18728)
* Fix javaJaxRS template: remove deprecated in JDK9 method usage

* Fix javaJaxRS api template: regenerate samples
2024-05-26 15:58:41 +08:00
Marcel Huber
728abafdfa [Java][native] Fix: empty deepObject can produce invalid query [fix #18736] (#18737)
* fix empty query parameter string

* update samples
2024-05-26 15:54:58 +08:00
Jonathan Siegel
77365c34fa [crystal-lang] Resolve type check compile error in ApiError (#18759)
* Even with .nil? typecheck, compiler still fails due to .empty? call on nillable type. This appears a poor implementation issue by crystal-lang, but this explicit try avoids the issue for now.

* Made call more succinct.
2024-05-26 11:44:07 +08:00
William Cheng
e6fcbcbde0 update crystal petstore tets (#18766) 2024-05-26 11:29:24 +08:00
Jonathan Siegel
e6f372992e [crystal-lang] Update dependencies to remedy build failure (#18755)
* Updated crystal dependencies to remedy build failure with a mutually conflicting library version.

* Samples updated from running PR-suggested build.
2024-05-26 11:15:13 +08:00
Philzen
22f18fad91 Fix tests for parsing of additional type annotations & refactor test code (#18751)
* Fix tests for parsing of additional type annotations

These were comparing the same things with each other and this could
not fail. Now using (as probably intended by the author) the before
unused ArrayList for assertion of the expectation.

* Remove Exception from signature that is never thrown

* Simplify assertions using AssertJ

* Replace stub implementation with abstract Mockito mock

* Cache flat parsed openapi results for faster test execution

Simply caching any calls to TestUtils.parseFlattenSpec that occur
at least twice.

* Fix some "Raw use of parameterized class 'Schema'" warnings
2024-05-26 10:53:23 +08:00
Philzen
746961d07a Fix long running test (#18754)
Depending on test exec environment, this test could linger around
for ~8 minutes, b/c pinging test.com will not resolve and run into
seveal timeouts.
2024-05-25 14:28:59 +08:00
Esteban Gehring
7bc2a66065 tiny simplification of typescript-nestjs api.service.mustache (#18749) 2024-05-23 16:52:08 +02:00
Arivanandan
7d3258f155 [typescript-nestjs] Fix template for useSingleRequestParameter (#18744)
* fix: template

* chore: samples
2024-05-23 15:52:31 +02:00
Simon Hanna
f49efe02fd [typescript/nestjs] remove unused imports and allow async configuration (#18745) 2024-05-23 14:12:26 +02:00
aaronforest-wf
235b57e499 convert all text/* content types to strings in the apache http java client (#18731) 2024-05-23 16:36:34 +08:00
William Cheng
00c1ceffcd [Java][webclient] update junit to 5.x (#18741)
* webclient: update junit to 5.x

* update samples

* update samples

* update samples

* update samples

* update samples

* clean up

* update samples

* update pom plugin version

* update tests
2024-05-23 16:27:06 +08:00
William Cheng
63d1564637 update C# samples 2024-05-23 14:41:44 +08:00
Omer
a230588aca Fix build issue when using dotnet 8.0.300 (#18712)
https://github.com/dotnet/sdk/issues/40445
2024-05-23 14:37:26 +08:00
Aaron Pritzlaff
3a232611d2 Added support for freeform types (#18722) 2024-05-23 14:36:50 +08:00
William Cheng
638af0fe37 add it@m to sponsor list (#18733) 2024-05-22 15:24:06 +08:00
William Cheng
8860537e2b update samples 2024-05-22 15:13:38 +08:00
Horace Li
d0a8726580 [java][resttemplate] Fix missing javax validation imports with list validation (#18332)
* Fix java list validation

* Fix java list validation

* Fix java list validation

* Fix java list validation
2024-05-22 15:07:42 +08:00
Philzen
1d96c770f9 Update PR template with latest minor version reference (#18729) 2024-05-22 11:34:58 +08:00
William Cheng
ea7609f35b update requests in python-fastapi to newer version (#18726) 2024-05-22 00:37:02 +08:00
Renato Mameli
bfa26ea6be Add missing underscores for PascalCase enum values #4837 (#18594)
Co-authored-by: Renato Mameli <renato.mameli@teamviewer.com>
2024-05-21 15:29:34 +08:00
William Cheng
9398c6444a update samples 2024-05-21 14:58:21 +08:00
Evgenii
73598b9dbb [REQ] [ASPNETCORE] Add value types for the ASPNETCORE generator (#18646)
* Add value types for the ASPNETCORE generator

* generate samples
2024-05-21 14:45:54 +08:00
devhl-labs
ede6458d19 [csharp][generichost] Remove discriminator property (#18445)
* fixed nullability

* minor refactor to address a comment

* removed discriminator property

* update more manual tests

* update more manual tests

* added tests and bug fixes

* fixed allof

* reworked manual tests to compare json instead of classes, reworked discriminator logic

* removed unneeded code
2024-05-21 14:32:12 +08:00
Stefan Koppier
27120357aa [kotlin-wiremock] New generator for generating WireMock stubs using Kotlin (#18705)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient

* [kotlin-wiremock] added generator and sample

* [kotlin-wiremock] First version with petstore

* [kotlin-wiremock] Small typo

* [kotlin-wiremock] Added echo-api test

* [kotlin-wiremock] Split stub and stub builder

* [kotlin-wiremock] Added default values and jackson annotations to models

* [kotlin-wiremock] Small default value fix

* [kotlin-wiremock] Use Gradle wrapper version in samples-kotlin-server GitHub workflow

* [kotlin-wiremock] Added default artifact name

* [kotlin-wiremock] Added kotlin docs

* [kotlin-wiremock] Fixed capitalization in kotlin docs

* [kotlin-wiremock] Added kotlin-wiremock echo_api sample to GitHub workflow

* [kotlin-wiremock] Added new generator to README.md

* [kotlin-wiremock] Generated docs

* [kotlin-wiremock] Generated docs (missed commit)

* [kotlin-wiremock] Explicit Gradle wrapper version in kotlin server generators

* Revert "[kotlin-wiremock] Explicit Gradle wrapper version in kotlin server generators"

This reverts commit 71e1c47def.

* [kotlin-wiremock] Revert Gradle in workflow samples-kotlin-server and moved kotlin-wiremock samples to separate workflow

* [kotlin-wiremock] Use Java 11 instead of Java 8

* [kotlin-wiremock] ensure-up-to-date
2024-05-21 13:53:44 +08:00
Paul Parenko
9a35914f0c PR for openapi-generator-maven-plugin inputSpec -- Allow jar: URLs (#18576)
* Added support for <inputSpec/> arguments of JAR URLs.
E.g., jar:jar-specific-uri!/spec.yml.

* Resolve and search COMPILE dependencies for inputSpec resource.

* Added test cases for openapi-generator-maven-plugin:generate input
specifications:

* URLs of the form jar:jar-specific-uri!/spec.yaml

* Resources on the compilation classpath

in addition to the existing FILE test case.

* Check for inputSpecFile existence

else it is a remote URL && url is not empty

* replaced deprecated usage

* use Unix separators when on win-os

* example with jar inputSpec

* Comment not required anymore

Was introduced with #7587 could be removed with #10544

* referenced same maven version

these artifacts are referenced by same ${project.version} in https://github.com/apache/maven/blob/master/pom.xml

* updating maven dependencies to 3.9.6

---------

Co-authored-by: Allen D. Ball <ball@hcf.dev>
2024-05-21 13:51:52 +08:00
dependabot[bot]
9222231832 --- (#18718)
updated-dependencies:
- dependency-name: jurplel/install-qt-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 13:49:25 +08:00
William Cheng
56cc4828a2 update readme 2024-05-20 17:38:31 +08:00
William Cheng
741bf0c035 Prepare 7.7.0-SNAPSHOT (#18709)
* Revert "7.6.0 release"

This reverts commit d76f9d32d1.

* prepare 7.7.0 snapshot in master

* update samples
2024-05-20 17:27:17 +08:00
William Cheng
ab7d0cb74f 7.6.0 release (#18708) 2024-05-20 15:26:08 +08:00
Gonzalo Gomez
ef0d10df8d Use time.RFC3339Nano instead of time.RFC3339, do not want to loose the millisecond resolution. (#18673) 2024-05-19 17:53:51 +08:00
Pavel Miller
33617ee867 Improve generation of selected models with dependent models (#18462)
* Issue-18444: recursively trace variables and support of new option

* Issue-18444: suppoting inheritance, but interfaces

* Issue-18444: build project instructions executed

* code review from wing328: tab-spaces removed

* code review by wing328: added a line of comment for the private method
2024-05-19 17:46:50 +08:00
Aniokrait
9b0ca06442 [html2] Change to correct variable (#18685) 2024-05-19 17:46:27 +08:00
Vasiliy Ditsyak
3d15864eac [dart-dio] Incorrect hashCode and == overide for fields withList (#18198)
* [dart-dio] Incorrect hashCode and == overide for fields withList

* fix

* extend description

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-05-19 17:35:25 +08:00
RiccardoPetteruti-Onfido
8924083d73 Ruby: Fixed CodeQL polynomial regexp (#18699) 2024-05-19 17:28:04 +08:00
Kalvin Pearce
e9f961e36e [rust-axum] Split up api trait per tag (#18621)
* [rust-axum] Feat: split up api trait per tag

* [rust-axum] Fix: missing types in api files

* [rust-axum] Fix: add samples output

* [rust-axum] Feat: handle mutli tagged operations

* [rust-axum] Fix: spacing between generated operations

* [rust-axum] Fix: coding standards
2024-05-19 17:13:01 +08:00
Kaido Iwamoto
57dceae4ad Improve typescript-fetch code generation for oneOf cases without discriminator (#18702) 2024-05-18 11:11:34 +02:00
Marcus Pasell
62238c6886 [typescript-fetch] Make instanceOf infer type and check for undefineds (#18694) 2024-05-17 17:22:32 +02:00
William Cheng
2fe397cb3e synn beea validation template (jaxrs) (#18697) 2024-05-17 17:39:59 +08:00
Jeffrey Yasskin
7e94c873f7 Add typescript 5.x as an allowed version. (#18674)
* Add typescript 5.x as an allowed version.

* Adjust version ranges to keep tests passing.

* Update the typescript-rxjs sample.
2024-05-15 22:09:55 +02:00
Nikita Shmakov
70130edaab Properties with custom types inheritance fix (#18052)
* custom types support in inheritance fix

* files changed after scripts run

* remove unused method

* move cloneSchema to ModelUtils

* imports

* changes after scripts run

* test cloning array of enums schema
2024-05-15 19:44:39 +08:00
Miroslav Šedivý
014cd2cb2b typescript-axios: withSeparateModelsAndApi - use import types properly. (#18625) 2024-05-15 11:30:18 +02:00
Aviv Levitski
affb6bc1f7 [GO] Add assert constraints checks for complex types in the model template (#18654)
* [GO] Add assert constraints checks for complex types in the model template

* [GO] Update samples

* [GO] revert AssertRecurseInterface naming
2024-05-15 16:59:35 +08:00
William Cheng
a9b1f93d65 clean up samples, update test spec (cpp-restsdk) (#18675) 2024-05-15 15:09:17 +08:00
Marc Le Bihan
1fa2d474b4 [[BUG][C][cpp-restsdk] Missing Set.h when trying to generate from Twitter OpenAPI JSON #9969](https://github.com/OpenAPITools/openapi-generator/issues/9969) (#18631)
- Handling `std::set` in cpp-restdsk
    - Member variables using `std:set` added to `Pet` in cpp-restsdk 3.0 Petstore sample

[cpp-pistache-server] taking into account a remark on this issue about cpp-pistache-server and its set management

    - Switching `std::vector` to `std::set` for openapi set type in cpp-pistache-server
2024-05-15 14:51:59 +08:00
William Cheng
4e61738348 upgrade microprofile to junit5 (#18669)
* upgrade microprofile to junit5

* re-generate samples

* fix junit(DOT)version

* update tests for java microprofile server

* update samples

* update

* update

* update

* update

---------

Co-authored-by: Thorsten Hirsch <t.hirsch@web.de>
2024-05-14 18:21:19 +08:00
William Cheng
cc5c50b227 update cpp-restsdk to use 3.0 petstore spec (#18670) 2024-05-14 17:15:36 +08:00
William Cheng
09be19cef7 upgrade okhttp-gson and google-api-client to junit5 (#18668)
* upgrade okhttp-gson and google-api-client to junit5

* add changes in StringUtilTest

* use https instead of http to fix 301 (moved) error

* revert petstore test server url to http://petstore.swagger.io and regenerate samples

* synced gradle/sbt/pom, re-generated samples

* revert removal of port 80 from test url

* udpate google api client tests

* update sha

* update comment

---------

Co-authored-by: Thorsten Hirsch <t.hirsch@web.de>
2024-05-14 17:04:33 +08:00
Rohit Sanjay
ed33b86205 Use pascal case instead of double lambda (#18667)
Co-authored-by: Rohit Sanjay <rohitsanjay@Rohits-MacBook-Pro.local>
2024-05-14 14:41:57 +08:00
William Cheng
926a07fe4d Add tests for @Valid (enum) (#18664)
* add tests for #18430

* add new filies
2024-05-14 12:57:41 +08:00
CREKD
d5559d5e65 Remove @Valid even for enum types defined in components (#18451)
* Update beanValidation.mustache

* step 3

* Revert "step 3"

This reverts commit 73ba918d36.

* update mustache

* #

* isContainer

* step3

* ^

* fix
2024-05-14 11:56:53 +08:00
William Cheng
51ef8683fb [java] implement #18032 add builder pattern to java client and spring generator (#18650)
* add builder pattern to java client and spring generator

* regenerate samples

* update doc

---------

Co-authored-by: jpfinne <jeanpaul@finne.be>
2024-05-14 11:38:30 +08:00
Alex Jones
2f734515a1 fix: Null example values generated for enum properties (#18623)
* Fix null example values being generated for enum properties

* Update examples

* PRFB: use isEnumSchema
2024-05-14 11:31:22 +08:00
William Cheng
edbb021aad skip setting output folder in online service (#18652) 2024-05-14 11:12:35 +08:00
Jorge Rodríguez Martín
4a872a8d69 Prevent generating "pattern" and "size" to ENUM (#18658) 2024-05-14 00:13:15 +08:00
Lars Thern
2a15270589 [KOTLIN] Kotlinx serialization, use first party retrofit converter factory (#18656)
* Switch the jakewharton converter factory for the first party one

* Run all samples generation
2024-05-13 12:28:35 +01:00
Rohit Sanjay
b23dcbd190 [Java] [VertX] Handle hyphen-separated security scheme in input spec (#18630) 2024-05-13 16:52:18 +08:00
Jochem Kuijpers
2f9b487779 Fixes incorrect Jackson imports in Java templates used in ApiClient.java when useJakartaEe=true (#18507)
* Adds useJakartaEe condition to select the appropriate Jackson package to import.

This also removes the import on the apache-httpclient template where it doesn't actually get used, requiring users to declare additional dependencies for compilation that aren't actually required by the generated code other than for import.

* Ran generate-samples.sh
2024-05-13 16:48:59 +08:00
Max
cefeded745 [BUG][JAVA] oneOf/anyOf multiple constructors with same erasure #18548 (#18645)
* [BUG][JAVA] oneOf/anyOf multiple constructors with same erasure
#18548

* [BUG][JAVA] oneOf/anyOf multiple constructors with same erasure
#18548
2024-05-13 16:33:49 +08:00
Tim Quinn
0e05cf26d9 Add support for Helidon 4 MP client and server generation (#18627)
* Add support for Helidon 4 MP client and server generation

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>

* Rerun samples generation trying to fix spring jobs

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>

* Update copyright

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>

* Correct the copyright notice

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>

---------

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
2024-05-12 16:49:28 +08:00
Vikrant Balyan
4b56fd281a [Go] uses sanitized model name instead of the name (#18644)
* uses sanitized model name instead of the name

* commit sample

* samples updated

* update CI file to test the changes

* adds a pom.xml to the sample
2024-05-12 15:04:39 +08:00
Daniel García
970424678e Use Display instead of ToString in Rust generators (#18633) 2024-05-12 11:06:03 +08:00
0xMattijs
365fcd3fb4 Fix the post processing of enums in the Python generator, such that it uses the proper variable namesfrom x-enum-varnames (#18566)
Remove sample
2024-05-12 00:40:06 +08:00
William Cheng
eec30f2cda update sha256 for JSONTest.java 2024-05-12 00:08:27 +08:00
Max
d4d4c77fee [BUG] [Java] Invalid code generation for oneof types. (#18544)
* [BUG] [Java] Invalid code generation for oneof types. #18517

* update samples

* [BUG] [Java] Invalid code generation for oneof types. #18517

* [BUG] [Java] Invalid code generation for oneof types. #18517

* [BUG] [Java] Invalid code generation for oneof types. #18544
2024-05-12 00:07:02 +08:00
Aniokrait
2a3f63f9e3 [html2] Support oneOf (#18642) 2024-05-11 23:34:36 +08:00
Aniokrait
3d96a404e6 [html2] Support alias types (#18579)
* [html2] Support alias models to render html docs.

* [html2] Fix compile error

* [html2] Update sample
2024-05-11 23:33:47 +08:00
Esteban Dugueperoux
4637658f78 fix: Upgrade testng to avoid CVE-2022-4065 (#18635) 2024-05-11 23:19:57 +08:00
William Cheng
42536932da downgrade gradle to 7.6.4 (#18641) 2024-05-11 16:58:25 +08:00
William Cheng
65bdb99f96 update java version in build.gradle (#18640) 2024-05-11 15:23:30 +08:00
William Cheng
40c7adccd8 [gradle plug-in] update jvm target (#18639)
* update jvm target

* fix jvmTarget
2024-05-11 14:06:16 +08:00
William Cheng
4368eb45e8 update kotlin version to 1.9.0 (#18638) 2024-05-11 13:02:12 +08:00
Thorsten Hirsch
3805cf366c upgrade resteasy to junit5 (#18615)
* upgrade resteasy to junit5

* fix echo_api tests

* updated gradle/sbt/pom and generated samples with bin/generate-samples.sh

* fix xml syntax error

* forgot to run generate-samples.sh
2024-05-10 10:51:50 +08:00
Thorsten Hirsch
854e521a06 upgrade java native to junit5 (#18617)
* upgrade java native to junit5

* upgrade build.gradle, optimize imports

* upgrade gradle, re-generate samples

* migrate api_test.mustache and petstore tests of native-async & native-jakarta
2024-05-10 10:50:54 +08:00
William Cheng
29cfa3335d update python fastapi dependencies (#18624) 2024-05-09 13:23:16 +08:00
Charles Treatman
75dd531e65 upgrade swagger-parser to latest version (#18436)
* upgrade swagger-parser to latest version

* additional upgrades to address gradle failures
2024-05-09 12:29:33 +08:00
William Cheng
98f9c07bc4 update meta-codegen pom.xml 2024-05-09 12:29:04 +08:00
Thorsten Hirsch
5614eef995 upgrade openapi poms and codegen tests to junit5 (#18619) 2024-05-09 12:19:56 +08:00
Amrita Venkatraman
89c2664e4c updating config options (#18614)
Co-authored-by: Amrita Venkatraman <amrita.venkatraman@mavenclinic.com>
2024-05-09 10:46:00 +08:00
Max Nachlinger
03389dfdbd Bump Rust edition to 2021 and a few crates (#18608)
* bump Rust edition to 2021, update a few creates

* bump Rust edition to 2021, update a few creates
2024-05-09 10:43:11 +08:00
Thorsten Hirsch
b67a019cf9 upgrade apache-httpclient to junit5 (#18616) 2024-05-09 09:54:32 +08:00
William Cheng
4441ab303f [jaxrs-spec] fix nullable import, migrate tests to 3.0 spec (#18606)
* update samples

* fix nullable, better test (jaxrs-spec)

* Revert "update samples"

This reverts commit 2377d98de3.

* update samples
2024-05-08 17:45:43 +08:00
William Cheng
8226ff8f96 [python-flask] deference parameter schemas before further processing (#18605)
* update samples

* deref parameter, add null check

* Revert "update samples"

This reverts commit 2377d98de3.
2024-05-08 17:00:19 +08:00
Daniel Schreiber
9db0e3237c [php-flight] fix: always set http status in streaming response and use http status from spec (#18604)
This additionally adds streaming stubs for all methods (rather err on the side of too much stubs).
2024-05-08 14:26:41 +08:00
Max Nachlinger
ac649b2e2f Disable clippy::too_many_arguments in generated Rust client code. (#18601) 2024-05-08 11:52:20 +08:00
Ween Jiann
8f6a2860bf [go-server] Fix: error handling and linting (#18550)
* Update error.go and fix lint

* Regen

* Fix incorrect change

* Fix handler issue

* Regenerate
2024-05-08 00:06:45 +08:00
myz-dev
06499605e1 [RUST-AXUM] Fix #18580: disableValidation does not create superfluous code (#18592)
* fix: Respect `disableValidator` CLI option

Setting the `disableValidator` option to `true` used to generate
validation code but avoid calling it from the route handlers.
This generated invalid code in some cases.
This commit renders the `server-operation-validate` only, when the
`disableValidator` option is set to false (the default value).

* test: Update examples and run integration test

The generated samples are updated with:
`./bin/generate-samples.sh ./bin/configs/manual/*.yaml`
The relevant integration test
`mvn integration-test -f samples/server/petstore/rust-axum/pom.xml`
passes.

* test: Add integration test

This integration tests provokes the generation of code that would
not compile (see #18580). The new change that makes sure validation
logic is not rendered when disabled, makes sure the faulty code is not
generated and therefore the project compiles.

* test: Update examples and run integration test

The generated samples are updated with:
`./bin/generate-samples.sh ./bin/configs/manual/*.yaml`

The relevant integration test
`mvn integration-test -f samples/server/petstore/rust-axum/pom.xml`
passes.
2024-05-07 21:02:45 +08:00
myz-dev
2d967ccae8 [Rust-Axum] Fix uuid in header params causing compilation errors (#18563)
* fix: Fix uuid in header params causing errors

Routes with header parameters with a `format` of `uuid` in the openAPI
specification used to cause a compilation error in the resulting
Rust Axum code.
This commit fixes the issue by including the correct conversion trait
implementation on the condition that at least one header parameter of
`format` `uuid` is included in the specification.

* refactor: Add final to boolean

* fix: Bring str::FromStr optionally into scope

The trait needs to be in scope for the TryFrom implementation:
`TryFrom<HeaderValue> for IntoHeaderValue<uuid::Uuid> `
It will only be brought into scope when the implementation is rendered.

* test: Add integration test and its specification

This commit adds an integration test that tests the bug fix for #18554.
A header parameter of `format: uuid` is included in one route.
This makes the example create a route handler that tries to extract a
Rust `uuid::Uuid` type from the header. The integration test will check
that the generated code compiles.

* test: Update examples and run integration test

The generated samples are updated with:
`./bin/generate-samples.sh ./bin/configs/manual/*.yaml`
Most example projects have their version numbers bumped. Some changes
show, that there are some other unrelated changes to the files, which
indicates that some prior commit did not update the samples accordingly.
The relevant integration test
`mvn integration-test -f samples/server/petstore/rust-axum/pom.xml`
passes.
2024-05-07 21:02:19 +08:00
William Cheng
9929d35166 [refactor] Use getType in ModelUtils (#18577)
* use getType in model utils

* add tests

* update
2024-05-07 18:05:22 +08:00
keyjh2
be94c22d08 [C++][Pistache] Compile error when nesting references (#16711) (#18586)
When components/schema/<object> reference other objects, validate() was
getting called on the referenced objects with no arguments. The return
value was void, but checked as if it was a boolean value.
2024-05-07 17:15:42 +08:00
kiwi-oss
dec8a430df [Microprofile] Add option to use tags a client keys and server generator (#16673)
* [Java/Microprofile] Add support for Jackson serialization & async interfaces using Mutiny in Java Microprofile library

* Regenerate samples & docs

* Add server generator

* Update client to set configKey by classname

* Remove debug remains and comments

* Adapt method override to upstream changes

* Regenerate samples

* Revert "Regenerate samples"

This reverts commit b5bcbdea90.

* Move additional 2xx response to dedicated OpenAPI document

Some other generators than those for Micronaut don't seem to be able to
handle this case, so we don't add it to the general pet store document.

* Make filename consistent with other files in the folder

* Regenerate Microprofile client and server samples

* Generate samples

* Update documentation

* Generate samples

* Remove left-over `*.orig` files from Git merges

* Regenerate samples

* Regenerated samples

* changed generator name to "java-microprofile"

* added the new folder to .github/workflows/samples-java-server-jdk8.yaml so that CI will test it moving forward

* Renamed JavaMicroprofileServerCodegen.java

* regenerated samples

* only enable configKeyFromClassName if configKey is not set

* Updated documentation

* Change samples to use junit 4

* Fix junit 4 test classes

* run ensure up-to-date script

* fix kotlin test errors

---------

Co-authored-by: pravussum <pravussum@users.noreply.github.com>
Co-authored-by: frank <frank.buechel@kiwigrid.com>
Co-authored-by: Oscar <oscar.obrien@kiwigrid.com>
Co-authored-by: oscarobr <133783370+oscarobr@users.noreply.github.com>
2024-05-07 16:24:23 +08:00
William Cheng
dc63444789 update samples 2024-05-07 12:30:21 +08:00
Reinhard Handler
2fb41ac529 [JAVA] Fix generation of remove method of map entries (#18562)
* Fix generation of remove method for map entries

Map::remove in java removes entries by key, therefore the key must be used as parameter.

* Fix generation of remove method for map entries

Map::remove in java removes entries by key, therefore the key must be used as parameter.

---------

Co-authored-by: Reinhard Handler <reinhard.handler@ssi-schaefer.com>
2024-05-07 12:13:15 +08:00
keyjh2
228b47a953 [go-server] Fix: missing sample changes from previous commit (#18546) (#18588) 2024-05-07 11:27:19 +08:00
Ween Jiann
cefbf62060 [go-server] Fix: missing quotes for string default value (#18546)
* Update controller mustache

* Add tests to openapi doc

* Regen
2024-05-06 14:17:44 +08:00
myz-dev
b1fac19a75 Fix #18572 rust server: Silence clippy lints by refactoring (#18575)
* refactor: move closure definition to own statement

A clippy lint recommends not using a closure inside of a statement.
The code generation used to produce code that triggered this warning,
which caused the rust-server integration test to fail because clippy is
configured to return lint violations as errors.
For details for the lint see:
https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions

* refactor: Remove unnecessary qualification

A GitHub action test used to fail because of a clippy warning that was
emitted due to not using an imported symbol but qualifying its use.
A failed test can be seen here:
https://github.com/OpenAPITools/openapi-generator/actions/runs/8958257509/job/24603984954?pr=18563
With the relevant error being:

error: unnecessary qualification
  --> output/openapi-v3/src/client/callbacks.rs:88:9
   |
88 |         futures::future::ok(Service::new(

This commit simply removes the qualification.

* test: Update examples and run integration test.

Updated examples by running
`./bin/generate-samples.sh ./bin/configs/rust-server-*`
The integration test with the following command passes:
`mvn integration-test -f samples/server/petstore/rust-server/pom.xml`
2024-05-06 12:24:33 +08:00
Stefan Koppier
f145b8962d [kotlin-client] Update Gradle and dependencies (#18571)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient

* [kotlin-client] Bump Gradle version

* [kotlin-client] enableFeaturePreview no longer needed as it's enabled by default

* [kotlin-client] Bump kotlin, spotless, and reactor versions

* [kotlin-client] Generated code

* [kotlin-client] Missed a generated sample

* [kotlin-client] Bumped gradle and java version in kotlin-client workflows

* [kotlin-client] First attempt to fix jvm-volley

* [kotlin-client] Use standard gradle action instead of custom one

* [kotlin-client] Use original gradlew action but without specific version

* [kotlin-client] Moved sample kotlin-spring-cloud to servers instead of clients

* [kotlin-client] Added previously missing generated file

* [kotlin-client] Corrected sample path
2024-05-05 21:40:58 +08:00
Manuel Covas
296a6ac516 [typescript-fetch] Restore pre-es2017 compatibility in modelEnum template (#18418)
* [typescript-fetch] Restore pre-es2017 compatibility in modelEnum template

Restore pre-es2017 compatibility in modelEnum template by not using Object.values in instanceOf{{classname}} function

* [typescript-fetch] Regenerate samples

* [typescript-fetch] Regenerate samples documentation

* [typescript-fetch] Add curly brackets

* [typescript-fetch] Regenerate samples

* [typescript-fetch] Use typed comparison

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

* [typescript-fetch] Regenerate samples

---------

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2024-05-05 09:05:12 +02:00
Marc Le Bihan
fde8c772fb [BUG] [C++][Pistache] cpp-pistache-server generating API include unde… (#18553)
* [BUG] [C++][Pistache] cpp-pistache-server generating API include undefined "Object.h" (#2769)

Should handle Object.h, AnyType.h correctly. Set.h also tested.

   - #include Object.h removed and replaced by a typeMapping.put(object, nlohmann::json) like suggested in other issues
   - object had an invalid syntax: ':' instead of '::' in types with namespace
   - extra include of #include nlohmann/json.h removed when there's already #include <nlohmann/json.hpp>
   - nlohmann::json is excluded from model namespace

Tested with custom petstore played, with suggested openapi specs coming from issues #2769, #10266, #14234

   ```bash
   rm -rf samples/server/petstore/cpp-pistache-everything/ && ./bin/generate-samples.sh ./bin/configs/cpp-pistache-server-cpp-pistache-everything.yaml  && cd samples/server/petstore/cpp-pistache-everything/ && mkdir build && cd build && cmake .. && cmake --build . --parallel
   ```

* - Adding to samples/server/petstore cpp-pistache-everything

* - .md and FILES missing
2024-05-04 21:59:49 +08:00
Philzen
d3b156d694 Add .sdkmanrc for easy Java and Maven version management (#18552)
* Add .sdkmanrc for easy Java and Maven version management

https://sdkman.io/

* Bump required Maven version for building to 3.8.8
2024-05-04 21:05:10 +08:00
Philzen
38b8f60e54 Update broken JSON schema links (#18565)
Using archive.org snapshots in case the URLs change again, like they
apparently have in the past.

Also fixing formal JavaDoc error, which does not allow bare URLs.
2024-05-04 12:31:11 +08:00
Hidan
73f2d8289b fix(typescript-axios): Correct the content type for a list of objects in form-data when contentType is present (#18505)
* fix content type for list of objects in form-data

* updated the samples
2024-05-03 15:43:57 +02:00
Tristan
06b00e657c Support optional singleRequestParameter (#18467) 2024-05-03 15:10:06 +02:00
En0s0und
0e809d4800 [typescript-fetch] Support fileNaming option (#18283) (#18284)
* [typescript-fetch] Support fileNaming option (#18283)

* [typescript-fetch] Support fileNaming option - add tests (#18283)

* [typescript-fetch] introduce constants
2024-05-03 15:07:54 +02:00
Jeffrey Yasskin
67a504a2f3 [typescript-fetch] Remove a cycle in the discriminator dependency graph. (#18503) 2024-05-03 15:07:02 +02:00
Aniokrait
8cb23db8c0 [html2] Fix rendering of arrays of objects in html2 docs (#18561)
* [html2] Fix array parameter rendering.

* [html2] Update html2 sample.
2024-05-03 16:54:02 +08:00
Stefan Koppier
30dc35de44 [kotlin][client] fix warning (#18560)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient
2024-05-03 16:47:55 +08:00
Nicklas Wiegandt
ef2fa03e96 [Java][Client] Add support for the new Spring RestClient (#18522)
* feat (JAVA SPRING RESTTEMPLATE) 17571: initial commit for Spring RestClient

* feat (JAVA SPRING RESTTEMPLATE) 17571: Copied and changed the webclient mustache files

The RestClient API is oriented on the WebClient API so many parts of the templates can be the same

* fix (JAVA SPRING RESTTEMPLATE) 17571: Renaming error & add README template

The README must be changed because the minimal Java Version for this client is 17

* fix (JAVA SPRING RESTTEMPLATE) 17571: Imports, compile errors and cookie setting

* feat (JAVA SPRING RESTTEMPLATE) 17571: Add generated samples

* test (JAVA SPRING RESTTEMPLATE) 17571: Add tests

* feat (JAVA SPRING RESTTEMPLATE) 17571: Update doc

* Add the restcilent to samples-java-client-jdk17.yam

The minimum Java version of the used Spring Version is 17

* fix (JAVA SPRING RESTTEMPLATE) 17571: Workflow paths to petstore samples

* fix (JAVA SPRING RESTTEMPLATE) 17571: Regenerated samples

* feat (JAVA SPRING RESTTEMPLATE) 17571: Generated echo-api sample for RestClient

* fix (JAVA SPRING RESTTEMPLATE) 17571: Missing import

* fix (JAVA SPRING RESTTEMPLATE) 17571: Missing body class exception when null body is set

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api Auth test

* fix (JAVA SPRING RESTTEMPLATE) 17571: Gradlew file permissions

* feat (JAVA SPRING RESTTEMPLATE) 17571: Reggenerate samples after rebase

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api Body gif test

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api octet stream body test

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api multipart form data test

* fix (JAVA SPRING RESTTEMPLATE) 17571: Form as body when body is null

Also regenerated the restclient samples
2024-05-02 00:15:20 +08:00
William Cheng
d573f00e84 update go samples 2024-05-01 22:52:26 +08:00
William Cheng
9f57684dad [PHP] Update php.md - marked Multiserver as true (#18545)
* Update php.md - marked Multiserver as true

Mulitiserver support was fully implemented 2 years ago, on PR #12982

* update php feature

* update

---------

Co-authored-by: Thomas Hansen <thomasphansen@users.noreply.github.com>
2024-05-01 19:29:48 +08:00
rledisez
230e8ce887 [go-server] add field name in parsing error messages (#18533)
Currently when a parsing rule of a field is not respected (eg: min/max
value, required, ...), the api only returns an  error message without
providing the field name to help the user to fix the request. This commit
add the field name to the error message to help the user of the API.
2024-05-01 19:28:51 +08:00
Richard Lavoie
10897caf37 [go-server] fix imports with go generation (#18514)
* fix imports with go generation

* Wrong copy over

* Missing new line

* tab vs space

* Fix new line between router and std go libs

* Add both use case, add samples to CI validation

* Update samples
2024-05-01 18:13:03 +08:00
Daniel Wischolek
afd3a78e20 scala-sttp: fix for issue 15785 api returns unit. (#18537) 2024-05-01 18:12:04 +08:00
Daniel Wischolek
5e40fe7f8f scala-sttp4: fix for issue 15785 api returns unit. (#18536) 2024-05-01 18:11:52 +08:00
William Cheng
2a1b4f90df Add new option allArgConstructor for java client, spring generators (#18538)
* allArgConstructor for java

* Remove leftover from builder pattern branch

* Rename generateConstructorWithAllArgs and use x- in vendorExtensions

* Test issue #18340

* Add evidences for allVars issue (#18340)

* remove eol

* update doc

---------

Co-authored-by: jpfinne <jeanpaul@finne.be>
2024-05-01 18:10:35 +08:00
Simon Podlipsky
98d026118c feat(php): allow to pass raw boolean to api (#18520)
This allows users to use APIs that require booleans in query params not to be cast to int, e.g. `&foo=true`. Currently, `true` is cast to `1` so it's passed as `&foo=1`. That might not be supported by the target API.

The fix contains copy-pasted function from guzzlehttp/psr7 `Query::build()` with minor tweak.
2024-05-01 18:10:00 +08:00
Bruno Coelho
0768ddcd7c [swift] support content type application json variants (#18539)
* [swift] support content type application json variants

* [swift] support content type application json variants
2024-04-30 11:16:28 +01:00
Arivanandan
a4cf255dce Add useSingleRequestParameter to typescript-nestjs generator (#18476)
* feat: change template to use useSingleRequestParameter

* chore: add useSingleRequestParameter option

* chore: generate-samples, docs and fix spacing in template

* chore: remove random white space
2024-04-30 15:07:57 +08:00
Phellippe Lima
e36172090e fix: ExampleGenerator for composed child schemas and array schemas (#18479)
* fix: ExampleGenerator for composed child schemas and array schemas correctly

* fix: refactor to remove code duplication

* fix: fixes test assertion encoding

* fix: adds doc to new method
2024-04-30 14:36:49 +08:00
Zishun (Zack) Wei
81fab15a33 [PYTHON] Fix for failing to lookup discriminator value using AllOf and discriminator (#18498)
* fix issue 18495

* add tests and update samples

* update samples
2024-04-30 14:21:20 +08:00
Erko Risthein
bd02e65f88 [Java] Update Java version in GitHub actions (#18513)
* Update Java version in Github actions

* Generate samples

* [java] Upgrade Gradle wrapper to 8.7

* Generate samples

* [Java] Add resttemplate-jakarta to CI

* Upgrade CI machines to ubuntu-2204:2024.04.4 which use Java 21

* Change CI machines to ubuntu-2204:2024.01.1 which use Java 17

* Change CI machines to ubuntu-2004:2024.01.1

* [ruby] Update Gemfile.locks

* Use gradle wrapper for samples-java-client-jdk17
2024-04-30 13:57:01 +08:00
jase
8faa77cd1c fix(typescript-angular): make sure basePath is defined before assignment (#18457)
* fix(typescript-angular): make sure basePath is defined before assignment

* Update modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache

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

* Update modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache

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

* chore(typescript-angular): update examples

---------

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2024-04-29 18:07:45 +02:00
William Cheng
5f136557ba update php samples 2024-04-29 09:38:58 +08:00
Daniel Schreiber
7070255dc5 [php-flight] fix: parsing class/enum models (#18528) 2024-04-29 09:32:12 +08:00
Tadas Krivickas
06ed7c8205 [dart] [dart-dio] Support Dart3 (#18001)
* Support both dart 2.x and 3.x

* Append dart3 keywords

* Update docs
2024-04-28 22:09:10 +08:00
William Cheng
f8d91510a9 clean up supporting-mustache (#18524) 2024-04-28 20:45:42 +08:00
Ashish Mathew
519eaf6bf3 fix post process file type (#18519) 2024-04-28 20:30:54 +08:00
martin-mfg
c16f7f0aad better example of user defined supporting file (#18512) 2024-04-27 15:35:49 +08:00
William Cheng
1751163f36 fix null type check when simplifying any type (#18504) 2024-04-26 13:16:59 +08:00
William Cheng
a5ccd7a77e fix array default check in php nextgen 2024-04-26 10:10:13 +08:00
Jeffrey Yasskin
fd90aa6347 Use the current Java version in devcontainer.json. (#18502) 2024-04-26 09:38:23 +08:00
William Cheng
a5d463d90f made the HttpSigning method public to get the signed header. (#18496)
Co-authored-by: Ghufran Zahidi <18732053+Ghufz@users.noreply.github.com>
2024-04-25 16:08:57 +08:00
41007 changed files with 2794895 additions and 549237 deletions

View File

@@ -141,7 +141,7 @@ commands: # a reusable command with parameters
jobs:
node0:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -154,7 +154,7 @@ jobs:
nodeNo: "0"
node1:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -167,7 +167,7 @@ jobs:
nodeNo: "1"
node2:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -180,7 +180,7 @@ jobs:
nodeNo: "2"
node3:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:

View File

@@ -0,0 +1 @@
RUN apt update && apt install -y maven

View File

@@ -11,10 +11,9 @@
},
"ghcr.io/devcontainers/features/rust:1": {},
"ghcr.io/snebjorn/devcontainer-feature/chromium:latest": {},
"docker-in-docker": {
"ghcr.io/devcontainers/features/docker-in-docker:2": {
"version": "latest",
"moby": true,
"dockerDashComposeVersion": "v1"
"moby": true
}
},
// Configure tool-specific properties.
@@ -26,8 +25,8 @@
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "/usr/local/sdkman/candidates/java/11.0.16.1-ms",
"sources": "/usr/local/sdkman/candidates/java/11.0.16.1-ms/lib/src.zip",
"path": "/usr/local/sdkman/candidates/java/current",
"sources": "/usr/local/sdkman/candidates/java/current/lib/src.zip",
"javadoc": "https://docs.oracle.com/en/java/javase/11/docs/api",
"default": true
}
@@ -50,4 +49,4 @@
// "postCreateCommand": "mvn clean package -DskipTests",
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
}
}

15
.github/CODEOWNERS vendored
View File

@@ -12,22 +12,11 @@ modules/openapi-generator-core/**/* @OpenAPITools/generator-core-team
# No need for auto-generated subdirectories (reduces noise)
docs/ @OpenAPITools/generator-core-team
## Individual interests
.github/**/* @jimschubert
scripts/**/* @jimschubert
website/**/* @jimschubert
bin/ci/**/* @jimschubert
## Build related
CI/**/* @OpenAPITools/build
.mvn/**/* @OpenAPITools/build
bin/utils/**/* @OpenAPITools/build
## Module-specific
modules/openapi-generator-cli/**/* @jimschubert
modules/openapi-generator-gradle-plugin/**/* @jimschubert
modules/openapi-generator-maven-plugin/**/* @jimschubert
# cpp-qt-client technical committee
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @ravinikam
samples/client/petstore/cpp-qt/**/* @ravinikam
@@ -39,3 +28,7 @@ modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @martindelille
samples/client/petstore/cpp-qt/**/* @martindelille
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @muttleyxd
samples/client/petstore/cpp-qt/**/* @muttleyxd
# cpp-rest-client technical committee
modules/openapi-generator/src/main/resources/cpp-rest-client/**/* @aminya
samples/client/petstore/cpp-restsdk/**/* @aminya

View File

@@ -1,6 +1,6 @@
<!--
Please follow the issue template below for bug reports and feature requests.
Also please indicate in the issue title which language/library is concerned. Eg: [JAVA] Bug generating foo with bar
Also please indicate in the issue title which language/library is concerned. E.g.: [JAVA] Bug generating foo with bar
-->
##### Description

View File

@@ -10,7 +10,7 @@ assignees: ''
#### Bug Report Checklist
- [ ] Have you provided a full/minimal spec to reproduce the issue?
- [ ] Have you validated the input using an OpenAPI validator ([example](https://apidevtools.org/swagger-parser/online/))?
- [ ] Have you validated the input using an OpenAPI validator?
- [ ] Have you [tested with the latest master](https://github.com/OpenAPITools/openapi-generator/wiki/FAQ#how-to-test-with-the-latest-master-of-openapi-generator) to confirm the issue still exists?
- [ ] Have you searched for related issues/PRs?
- [ ] What's the actual output vs expected output?
@@ -18,7 +18,7 @@ assignees: ''
<!--
Please follow the issue template below for bug reports.
Also please indicate in the issue title which language/library is concerned. Eg: [BUG][JAVA] Bug generating foo with bar
Also please indicate in the issue title which language/library is concerned. E.g.: [BUG][JAVA] Bug generating foo with bar
-->
##### Description

View File

@@ -7,15 +7,16 @@
- [ ] 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](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
```
./mvnw clean package
./bin/generate-samples.sh ./bin/configs/*.yaml
./bin/utils/export_docs_generators.sh
./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 [Git BASH](https://gitforwindows.org/))
(For Windows users, please run the script in [WSL](https://learn.microsoft.com/en-us/windows/wsl/install))
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](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming 7.1.0 minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `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](https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) (e.g., having `"fixes #123"` present in the PR description)
- [ ] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.

74
.github/workflows/docker-release.yml vendored Normal file
View File

@@ -0,0 +1,74 @@
name: Release to DockerHub (snapshot, stable)
on:
push:
tags:
- 'v*' # Triggers on any tag starting with 'v' (e.g., v1.0, v2.1.3)
branches:
- master
jobs:
docker:
name: Publish images
runs-on: ubuntu-latest
steps:
# build the JARs
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Set up JDK 11
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'zulu'
- name: Cache Maven packages
uses: actions/cache@v4
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Build
run: ./mvnw clean install -DskipTests=true
# docker workflow
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Setup variables
run: |
# set as GitHub ENV variables
echo "cli_version=$(\./mvnw -o org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\[')" >> $GITHUB_ENV
echo "build_date=$(date -u +"%Y-%m-%dT%H:%M:%SZ")" >> $GITHUB_ENV
echo "DOCKER_GENERATOR_IMAGE_NAME=openapitools/openapi-generator-online" >> $GITHUB_ENV
echo "DOCKER_CODEGEN_CLI_IMAGE_NAME=openapitools/openapi-generator-cli" >> $GITHUB_ENV
# online images
- name: Publish openapi-generator-online snapshot version
if: github.ref_type != 'tag' # not tag (release)
run: |
docker buildx create --use
docker buildx build --push --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=${{ env.build_date }} --label=org.opencontainers.image.title=openapi-generator-online --label=org.opencontainers.image.revision=$GITHUB_SHA --label=org.opencontainers.image.version=${{ env.cli_version }} -t ${{ env.DOCKER_GENERATOR_IMAGE_NAME }} ./modules/openapi-generator-online
- name: Publish openapi-generator-online stable version
if: github.ref_type == 'tag' # tagged (release)
run: |
docker buildx create --use
docker buildx build --push --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=${{ env.build_date }} --label=org.opencontainers.image.title=openapi-generator-online --label=org.opencontainers.image.revision=$GITHUB_SHA --label=org.opencontainers.image.version=${{ env.cli_version }} -t ${{ env.DOCKER_GENERATOR_IMAGE_NAME }}:latest -t ${{ env.DOCKER_GENERATOR_IMAGE_NAME }}:${{ github.ref_name }} -t ${{ env.DOCKER_GENERATOR_IMAGE_NAME }} -t ${{ env.DOCKER_GENERATOR_IMAGE_NAME }}:latest-release ./modules/openapi-generator-online
# cli images
- name: Publish openapi-generator-cli snapshot version
if: github.ref_type != 'tag' # not tag (release)
run: |
cp docker-entrypoint.sh ./modules/openapi-generator-cli
docker buildx create --use
docker buildx build --push --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=${{ env.build_date }} --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$GITHUB_SHA --label=org.opencontainers.image.version=${{ env.cli_version }} -t ${{ env.DOCKER_CODEGEN_CLI_IMAGE_NAME }} ./modules/openapi-generator-cli
- name: Publish openapi-generator-cli stable version
if: github.ref_type == 'tag' # tagged (release)
run: |
cp docker-entrypoint.sh ./modules/openapi-generator-cli
docker buildx create --use
docker buildx build --push --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=${{ env.build_date }} --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$GITHUB_SHA --label=org.opencontainers.image.version=${{ env.cli_version }} -t ${{ env.DOCKER_CODEGEN_CLI_IMAGE_NAME }}:latest -t ${{ env.DOCKER_CODEGEN_CLI_IMAGE_NAME }}:${{ github.ref_name }} -t ${{ env.DOCKER_CODEGEN_CLI_IMAGE_NAME }} -t ${{ env.DOCKER_CODEGEN_CLI_IMAGE_NAME }}:latest-release ./modules/openapi-generator-cli

View File

@@ -26,7 +26,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Test run-in-docker.sh
shell: bash

View File

@@ -13,12 +13,13 @@ jobs:
name: Gradle plugin tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up JDK 11
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'temurin'
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -34,12 +35,22 @@ jobs:
restore-keys: |
${{ runner.os }}-test-gradle-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-gradle-plugin-
- name: Run tests
- name: mvn clean install
run: |
./mvnw clean --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- name: Run tests with wrapper
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
./mvnw clean --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildGoSdk) # using gradle-6.8.3 via wrapper
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew openApiGenerate)
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildDotnetSdk)
- name: Setup Gradle
uses: gradle/gradle-build-action@v3
with:
gradle-version: '8.14.3'
- name: Run tests without wrapper
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && gradle buildJavaResttemplateSdk) # not using gradle wrapper

View File

@@ -10,7 +10,7 @@ on:
- 'samples/client/petstore/java/**'
- 'samples/openapi3/client/petstore/java/**'
env:
GRADLE_VERSION: 7.2
GRADLE_VERSION: 8.7
jobs:
build:
@@ -29,12 +29,15 @@ jobs:
- samples/client/petstore/java/okhttp-gson
- samples/client/petstore/java/okhttp-gson-group-parameter
- samples/client/petstore/java/webclient-swagger2
- samples/client/petstore/java/native
- samples/client/petstore/java/native-jakarta
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
cache: gradle
# Cache Gradle Dependencies
- name: Setup Gradle Dependencies Cache
uses: actions/cache@v4

View File

@@ -20,13 +20,14 @@ jobs:
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: gradle
- uses: actions/cache@v4
with:
@@ -44,8 +45,12 @@ jobs:
restore-keys: |
${{ runner.os }}-gradle-
- uses: gradle/actions/setup-gradle@v5
with:
gradle-version: '8.14.3'
- name: Setup Maven
uses: s4u/setup-maven-action@v1.12.0
uses: s4u/setup-maven-action@v1.19.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
@@ -57,7 +62,7 @@ jobs:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
if: matrix.java == '11' && matrix.os == 'ubuntu-latest'
with:
name: artifact
@@ -65,7 +70,7 @@ jobs:
- name: Test Gradle plugin usage
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
run: gradle --project-dir modules/openapi-generator-gradle-plugin/samples/local-spec buildGoSdk --stacktrace
- name: Test Maven plugin integration
if: matrix.java == '11'
@@ -85,14 +90,15 @@ jobs:
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Setup Maven
uses: s4u/setup-maven-action@v1.12.0
uses: s4u/setup-maven-action@v1.19.0
with:
java-version: 11
maven-version: 3.8.8
cache: gradle
- name: Download build artifact
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: artifact
- name: Run Ensures Script

View File

@@ -13,9 +13,9 @@ jobs:
name: Maven plugin tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up JDK 11
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'temurin'
@@ -39,6 +39,7 @@ jobs:
run: |
./mvnw clean install -DskipTests -Dmaven.javadoc.skip=true
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/java-client.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean install -f modules/openapi-generator-maven-plugin/examples/multi-module/sample-external-ref-schema/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/multi-module/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/kotlin.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/spring.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error

61
.github/workflows/maven-release.yml vendored Normal file
View File

@@ -0,0 +1,61 @@
name: Release to Maven Central (snapshot, stable)
on:
push:
branches:
- master
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Set up JDK 11
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'zulu'
- name: Cache Maven packages
uses: actions/cache@v4
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Build
run: ./mvnw clean install -DskipTests=true
#run: ./mvnw clean install
publish:
runs-on: ubuntu-latest
name: Publish to Maven Central
needs: build
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- id: install-secret-key
name: Install gpg secret key
run: |
cat <(echo -e "${{ secrets.GPG_PRIVATE_KEY }}") | gpg --batch --import
gpg --list-secret-keys --keyid-format LONG
- name: Set up Maven Central Repository
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'zulu'
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
- name: Publish package
run: ./mvnw -DskipTests=true --batch-mode -P release -Dgpg.passphrase=${{ secrets.GPG_PASSPHRASE }} deploy
env:
MAVEN_USERNAME: ${{ secrets.OSS_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.OSS_PASSWORD }}

View File

@@ -15,7 +15,7 @@ jobs:
name: Misc tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: ruby/setup-ruby@v1
with:
ruby-version: '2.6'

View File

@@ -11,7 +11,7 @@ jobs:
report:
runs-on: ubuntu-latest
steps:
- uses: dorny/test-reporter@v1
- uses: dorny/test-reporter@v2
with:
artifact: surefire-test-results
name: JUnit Test results

View File

@@ -15,12 +15,13 @@ jobs:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up JDK 11
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'temurin'
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -41,7 +42,7 @@ jobs:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- run: ls -la modules/openapi-generator-cli/target
- name: Upload openapi-generator-cli.jar artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
@@ -53,12 +54,13 @@ jobs:
needs:
- build
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up JDK 11
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'temurin'
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -79,7 +81,7 @@ jobs:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'
@@ -90,14 +92,14 @@ jobs:
needs:
- build
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up JDK 11
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
@@ -129,29 +131,32 @@ jobs:
- build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Set up JDK 11
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
- name: Delete samples that are entirely generated
run: |
rm -rf samples/client/petstore/csharp/generichost/net8/AllOf
rm -rf samples/client/petstore/csharp/generichost/net8/AnyOf
rm -rf samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
rm -rf samples/client/petstore/csharp/generichost/net8/FormModels
rm -rf samples/client/petstore/csharp/generichost/net8/NullReferenceTypes
rm -rf samples/client/petstore/csharp/generichost/net8/OneOf
rm -rf samples/client/petstore/csharp/generichost/net8/Petstore
rm -rf samples/client/petstore/csharp/generichost/net8/SourceGeneration
rm -rf samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
rm -rf samples/client/petstore/csharp/generichost/standard2.0/Petstore
# List all directories in generichost, filter out Manual directories, and remove the rest
cd samples/client/petstore/csharp/generichost
for version_dir in */ ; do
if [ -d "$version_dir" ]; then
cd "$version_dir"
for dir in */ ; do
if [ -d "$dir" ] && [[ ! "$dir" =~ Manual ]]; then
rm -rf "$dir"
fi
done
cd ..
fi
done
- name: Generate samples
run: |
bash bin/generate-samples.sh

View File

@@ -0,0 +1,34 @@
name: Samples C# .Net 8 FastEndpoints Server
on:
push:
paths:
- samples/server/petstore/aspnet/fastendpoints/**
- samples/server/petstore/aspnet/fastendpoints-*/**
pull_request:
paths:
- samples/server/petstore/aspnet/fastendpoints/**
- samples/server/petstore/aspnet/fastendpoints-*/**
jobs:
build:
name: Build .Net 8 FastEndpoints servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/aspnet/fastendpoints
- samples/server/petstore/aspnet/fastendpoints-useApiVersioning
- samples/server/petstore/aspnet/fastendpoints-useAuthentication
- samples/server/petstore/aspnet/fastendpoints-useProblemDetails
- samples/server/petstore/aspnet/fastendpoints-useRecords
- samples/server/petstore/aspnet/fastendpoints-useResponseCaching
- samples/server/petstore/aspnet/fastendpoints-useValidators
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -5,10 +5,12 @@ on:
paths:
- 'samples/client/petstore/c/**'
- 'samples/client/petstore/c-useJsonUnformatted/**'
- 'samples/client/others/c/bearerAuth/**'
pull_request:
paths:
- 'samples/client/petstore/c/**'
- 'samples/client/petstore/c-useJsonUnformatted/**'
- 'samples/client/others/c/bearerAuth/**'
jobs:
build:
@@ -20,9 +22,10 @@ jobs:
sample:
- 'samples/client/petstore/c/'
- 'samples/client/petstore/c-useJsonUnformatted/'
- 'samples/client/others/c/bearerAuth/'
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Prepare
run: |
sudo apt-get update

51
.github/workflows/samples-clojure.yaml vendored Normal file
View File

@@ -0,0 +1,51 @@
name: Samples Clojure Client
on:
push:
paths:
- samples/client/petstore/clojure/**
pull_request:
paths:
- samples/client/petstore/clojure/**
jobs:
build:
name: Build Clojure Client (JDK11)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/clojure/
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- name: Add hosts to /etc/hosts
run: |
sudo echo "127.0.0.1 petstore.swagger.io" | sudo tee -a /etc/hosts
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Leiningen (if using Leiningen)
run: |
curl https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein > lein
chmod +x lein
sudo mv lein /usr/local/bin/
- name: Run tests (Leiningen)
working-directory: ${{ matrix.sample }}
run: lein test

View File

@@ -0,0 +1,30 @@
name: Samples cpp oat++ client
on:
push:
branches:
- "samples/client/petstore/cpp-oatpp/**"
pull_request:
paths:
- "samples/client/petstore/cpp-oatpp/**"
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build cpp oat++ client
strategy:
matrix:
sample:
- samples/client/petstore/cpp-oatpp
os:
- ubuntu-latest
- macOS-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Build
working-directory: ${{ matrix.sample }}
run: cmake -B build && cmake --build build --verbose

View File

@@ -0,0 +1,30 @@
name: Samples cpp oat++ server
on:
push:
branches:
- "samples/server/petstore/cpp-oatpp/**"
pull_request:
paths:
- "samples/server/petstore/cpp-oatpp/**"
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build cpp oat++ server
strategy:
matrix:
sample:
- samples/server/petstore/cpp-oatpp
os:
- ubuntu-latest
- macOS-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Build
working-directory: ${{ matrix.sample }}
run: cmake -B build && cmake --build build --verbose

View File

@@ -3,10 +3,10 @@ name: Samples cpp qt client
on:
push:
branches:
- 'samples/client/petstore/cpp-qt/**'
- "samples/client/petstore/cpp-qt*/**"
pull_request:
paths:
- 'samples/client/petstore/cpp-qt/**'
- "samples/client/petstore/cpp-qt*/**"
env:
GRADLE_VERSION: 6.9
@@ -16,21 +16,21 @@ jobs:
name: Build cpp qt client
strategy:
matrix:
qt-version:
- '5.15.2'
- '6.5.3'
sample:
- samples/client/petstore/cpp-qt
- samples/client/petstore/cpp-qt-addDownloadProgress
os:
- ubuntu-latest
- macOS-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Install Qt
uses: jurplel/install-qt-action@v3
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt-version }}
tools: ${{ matrix.tools }}
version: "6.7.1"
target: "desktop"
- name: Build
working-directory: "samples/client/petstore/cpp-qt"
run: cmake . && cmake --build .
working-directory: ${{ matrix.sample }}
run: cmake . && cmake --build . --verbose

View File

@@ -0,0 +1,59 @@
name: Samples Dart (build, test)
on:
push:
branches:
paths:
#- samples/openapi3/client/petstore/dart2/petstore_client_lib_fake/**
#- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake_tests/**
#- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake-json_serializable/**
- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/**
- samples/openapi3/client/petstore/dart-dio/oneof/**
- samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/**
- samples/openapi3/client/petstore/dart-dio/binary_response/**
- samples/openapi3/client/petstore/dart-dio/petstore-timemachine/**
pull_request:
paths:
#- samples/openapi3/client/petstore/dart2/petstore_client_lib_fake/**
#- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake_tests/**
#- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake-json_serializable/**
- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/**
- samples/openapi3/client/petstore/dart-dio/oneof/**
- samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/**
- samples/openapi3/client/petstore/dart-dio/binary_response/**
- samples/openapi3/client/petstore/dart-dio/petstore-timemachine/**
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
sdk: ["3.9.0"]
sample:
#- samples/openapi3/client/petstore/dart2/petstore_client_lib_fake/
#- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake_tests/
#- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake-json_serializable/
- samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake/
- samples/openapi3/client/petstore/dart-dio/oneof/
- samples/openapi3/client/petstore/dart-dio/oneof_polymorphism_and_inheritance/
- samples/openapi3/client/petstore/dart-dio/binary_response/
- samples/openapi3/client/petstore/dart-dio/petstore-timemachine/
steps:
- uses: actions/checkout@v5
- uses: dart-lang/setup-dart@v1
with:
sdk: ${{ matrix.sdk }}
- name: pub get
working-directory: ${{ matrix.sample }}
run: dart pub get
- name: build_runner build
working-directory: ${{ matrix.sample }}
run: dart run build_runner build
- name: test
working-directory: ${{ matrix.sample }}
run: dart test

View File

@@ -17,8 +17,8 @@ jobs:
name: Tests Dart
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11

View File

@@ -0,0 +1,42 @@
name: Samples C# .Net Framework Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/net4.7/**
- samples/client/petstore/csharp/generichost/net4.8/**
pull_request:
paths:
- samples/client/petstore/csharp/generichost/net4.7/**
- samples/client/petstore/csharp/generichost/net4.8/**
jobs:
build:
name: Build .Net projects
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/net4.7/AllOf
- samples/client/petstore/csharp/generichost/net4.7/AnyOf
- samples/client/petstore/csharp/generichost/net4.7/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net4.7/FormModels
- samples/client/petstore/csharp/generichost/net4.7/OneOf
- samples/client/petstore/csharp/generichost/net4.7/Petstore
- samples/client/petstore/csharp/generichost/net4.7/UseDateTimeForDate
- samples/client/petstore/csharp/generichost/net4.8/AllOf
- samples/client/petstore/csharp/generichost/net4.8/AnyOf
- samples/client/petstore/csharp/generichost/net4.8/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net4.8/FormModels
- samples/client/petstore/csharp/generichost/net4.8/OneOf
- samples/client/petstore/csharp/generichost/net4.8/Petstore
- samples/client/petstore/csharp/generichost/net4.8/UseDateTimeForDate
steps:
- uses: actions/checkout@v5
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -0,0 +1,37 @@
name: Samples C# .Net Client (Petstore)
on:
push:
paths:
- samples/client/petstore/csharp/restsharp/standard2.0/Petstore/**
pull_request:
paths:
- samples/client/petstore/csharp/restsharp/standard2.0/Petstore/**
jobs:
build:
name: Build clients
runs-on: ubuntu-latest
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/restsharp/standard2.0/Petstore/
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '7.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -16,7 +16,7 @@ on:
jobs:
build:
name: Build .Net projects
runs-on: ubuntu-latest
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
@@ -27,8 +27,8 @@ jobs:
- samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/
# - samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: 3.1.*
- name: Build

View File

@@ -1,45 +0,0 @@
name: Samples C# .Net 8 Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
- samples/client/petstore/csharp/unityWebRequest/net8/**
pull_request:
paths:
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
- samples/client/petstore/csharp/unityWebRequest/net8/**
jobs:
build:
name: Build .Net projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/net8/AllOf
- samples/client/petstore/csharp/generichost/net8/AnyOf
- samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net8/FormModels
- samples/client/petstore/csharp/generichost/net8/ManualPetstoreTests
- samples/client/petstore/csharp/generichost/net8/ManualSourceGenerationTests
- samples/client/petstore/csharp/generichost/net8/NullReferenceTypes
- samples/client/petstore/csharp/generichost/net8/OneOf
- samples/client/petstore/csharp/generichost/net8/Petstore
- samples/client/petstore/csharp/generichost/net8/SourceGeneration
- samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -1,33 +0,0 @@
name: Samples C# .Net 6 Client Echo API
on:
push:
paths:
- samples/client/echo_api/csharp-restsharp/**
pull_request:
paths:
- samples/client/echo_api/csharp-restsharp/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/csharp-restsharp/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: |
dotnet build Org.OpenAPITools.sln
dotnet test Org.OpenAPITools.sln

View File

@@ -1,26 +0,0 @@
name: Samples C# .Net 6 Client
on:
push:
paths:
- samples/client/petstore/csharp/restsharp/net6/**
pull_request:
paths:
- samples/client/petstore/csharp/restsharp/net6/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/restsharp/net6/ParameterMappings/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -24,8 +24,8 @@ jobs:
- samples/server/petstore/aspnetcore-6.0-project4Models
- samples/server/petstore/aspnetcore-6.0-useSwashBuckle
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -0,0 +1,54 @@
name: Samples C# .Net 7 Client
on:
push:
paths:
# the .NET Core 3.0 runtime is no longer supported as it reached its end-of-life on March 3, 2020
#- samples/client/petstore/csharp/httpclient/standard2.0/Petstore/**
- samples/client/petstore/csharp/restsharp/net4.7/MultipleFrameworks/**
- samples/client/petstore/csharp/restsharp/net4.7/Petstore/**
- samples/client/petstore/csharp/restsharp/net4.8/Petstore/**
- samples/client/petstore/csharp/restsharp/net8/ParameterMappings/**
- samples/client/petstore/csharp/restsharp/net8/EnumMappings/**
- samples/client/petstore/csharp/restsharp/net8/Petstore/**
- samples/client/petstore/csharp/restsharp/net8/UseDateTimeForDate/**
- samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/**
pull_request:
paths:
#- samples/client/petstore/csharp/httpclient/standard2.0/Petstore/**
- samples/client/petstore/csharp/restsharp/net4.7/MultipleFrameworks/**
- samples/client/petstore/csharp/restsharp/net4.7/Petstore/**
- samples/client/petstore/csharp/restsharp/net4.8/Petstore/**
- samples/client/petstore/csharp/restsharp/net8/ParameterMappings/**
- samples/client/petstore/csharp/restsharp/net8/EnumMappings/**
- samples/client/petstore/csharp/restsharp/net8/Petstore/**
- samples/client/petstore/csharp/restsharp/net8/UseDateTimeForDate/**
- samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/**
jobs:
build:
name: Build clients
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
sample:
#- samples/client/petstore/csharp/httpclient/standard2.0/Petstore/
- samples/client/petstore/csharp/restsharp/net4.7/MultipleFrameworks/
- samples/client/petstore/csharp/restsharp/net4.7/Petstore/
- samples/client/petstore/csharp/restsharp/net4.8/Petstore/
- samples/client/petstore/csharp/restsharp/net8/ParameterMappings/
- samples/client/petstore/csharp/restsharp/net8/EnumMappings/
- samples/client/petstore/csharp/restsharp/net8/Petstore/
- samples/client/petstore/csharp/restsharp/net8/UseDateTimeForDate/
- samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '7.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -0,0 +1,33 @@
name: Samples C# .Net 8 Client Echo API
on:
push:
paths:
- samples/client/echo_api/csharp/restsharp/net8/**
pull_request:
paths:
- samples/client/echo_api/csharp/restsharp/net8/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/csharp/restsharp/net8/EchoApi
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '8.0.x'
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: |
dotnet build Org.OpenAPITools.sln
dotnet test Org.OpenAPITools.sln

View File

@@ -0,0 +1,27 @@
name: Samples C# .Net 8 Client
on:
push:
paths:
- samples/client/petstore/csharp/restsharp/net8/**
pull_request:
paths:
- samples/client/petstore/csharp/restsharp/net8/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/restsharp/net8/ParameterMappings/
- samples/client/petstore/csharp/restsharp/net8/useVirtualForHooks/
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -0,0 +1,37 @@
name: Samples C# .Net 8 Server
on:
push:
paths:
- samples/server/petstore/aspnetcore-8.0/**
- samples/server/petstore/aspnetcore-8.0-*/**
pull_request:
paths:
- samples/server/petstore/aspnetcore-8.0/**
- samples/server/petstore/aspnetcore-8.0-*/**
jobs:
build:
name: Build .Net 8 servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/aspnetcore-8.0
- samples/server/petstore/aspnetcore-8.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-8.0-nullableReferenceTypes
- samples/server/petstore/aspnetcore-8.0-pocoModels
- samples/server/petstore/aspnetcore-8.0-project4Models
- samples/server/petstore/aspnetcore-8.0-useSwashBuckle
- samples/server/petstore/aspnetcore-8.0-use-centralized-package-version-management
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

45
.github/workflows/samples-dotnet8.yaml vendored Normal file
View File

@@ -0,0 +1,45 @@
name: Samples C# .Net 8 Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
- samples/client/petstore/csharp/unityWebRequest/net8/**
pull_request:
paths:
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
- samples/client/petstore/csharp/unityWebRequest/net8/**
jobs:
build:
name: Build .Net projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/net8/AllOf
- samples/client/petstore/csharp/generichost/net8/AnyOf
- samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net8/FormModels
- samples/client/petstore/csharp/generichost/net8/ManualPetstoreTests
- samples/client/petstore/csharp/generichost/net8/ManualSourceGenerationTests
- samples/client/petstore/csharp/generichost/net8/NullReferenceTypes
- samples/client/petstore/csharp/generichost/net8/OneOf
- samples/client/petstore/csharp/generichost/net8/Petstore
- samples/client/petstore/csharp/generichost/net8/SourceGeneration
- samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

59
.github/workflows/samples-dotnet9.yaml vendored Normal file
View File

@@ -0,0 +1,59 @@
name: Samples C# .Net 9 Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/latest/**
- samples/client/petstore/csharp/generichost/net9/**
- samples/client/petstore/csharp/httpclient/net9/**
- samples/client/petstore/csharp/restsharp/net9/**
- samples/client/petstore/csharp/unityWebRequest/net9/**
pull_request:
paths:
- samples/client/petstore/csharp/generichost/latest/**
- samples/client/petstore/csharp/generichost/net9/**
- samples/client/petstore/csharp/httpclient/net9/**
- samples/client/petstore/csharp/restsharp/net9/**
- samples/client/petstore/csharp/unityWebRequest/net9/**
jobs:
build:
name: Build .Net projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/latest/ComposedEnum
- samples/client/petstore/csharp/generichost/latest/InlineEnumAnyOf
- samples/client/petstore/csharp/generichost/latest/Tags
- samples/client/petstore/csharp/generichost/latest/HelloWorld
- samples/client/petstore/csharp/generichost/latest/OneOfList
- samples/client/petstore/csharp/generichost/net9/AllOf
- samples/client/petstore/csharp/generichost/net9/AnyOf
- samples/client/petstore/csharp/generichost/net9/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net9/FormModels
# - samples/client/petstore/csharp/generichost/net9/ManualPetstoreTests
# - samples/client/petstore/csharp/generichost/net9/ManualSourceGenerationTests
- samples/client/petstore/csharp/generichost/net9/NullReferenceTypes
- samples/client/petstore/csharp/generichost/net9/OneOf
- samples/client/petstore/csharp/generichost/net9/Petstore
- samples/client/petstore/csharp/generichost/net9/SourceGeneration
- samples/client/petstore/csharp/generichost/net9/UseDateTimeForDate
# restsharp
- samples/client/petstore/csharp/restsharp/net9/EnumMappings
# httpclient
- samples/client/petstore/csharp/httpclient/net9/Petstore
- samples/client/petstore/csharp/httpclient/net9/Petstore-nonPublicApi
# unity
#- samples/client/petstore/csharp/unityWebRequest/net9/Petstore
steps:
- uses: actions/checkout@v5
- uses: actions/setup-dotnet@v5.0.1
with:
dotnet-version: '9.0.101'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

39
.github/workflows/samples-elixir.yaml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: Samples Elixir
on:
push:
paths:
- samples/client/petstore/elixir/**
pull_request:
paths:
- samples/client/petstore/elixir/**
jobs:
build:
runs-on: ubuntu-latest
name: OTP ${{matrix.otp}} / Elixir ${{matrix.elixir}}
strategy:
matrix:
otp: ['25.3.2', '26.2.5', '27.3.3']
elixir: ['1.18.3']
sample:
- samples/client/petstore/elixir/
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- uses: erlef/setup-beam@v1
with:
otp-version: ${{matrix.otp}}
elixir-version: ${{matrix.elixir}}
- name: mix deps.get
run: mix deps.get
working-directory: ${{ matrix.sample }}
- name: mix test
run: mix test
working-directory: ${{ matrix.sample }}

View File

@@ -3,10 +3,12 @@ name: Samples Elm
on:
push:
paths:
- .github/workflows/samples-elm.yaml
- samples/client/petstore/elm/**
- samples/openapi3/client/elm/**
pull_request:
paths:
- .github/workflows/samples-elm.yaml
- samples/client/petstore/elm/**
- samples/openapi3/client/elm/**
jobs:
@@ -21,8 +23,8 @@ jobs:
- samples/client/petstore/elm
- samples/openapi3/client/elm
steps:
- uses: actions/checkout@v4
- uses: jorelali/setup-elm@v5
- uses: actions/checkout@v5
- uses: jorelali/setup-elm@v6
with:
elm-version: 0.19.1
- name: Build
@@ -32,4 +34,4 @@ jobs:
# An .elm file couldn't be compiled
# No .elm files were found
# No elm.json file could be found in the root of the working directory
run: elm make $(find . -name *.elm) --output=/dev/null
run: elm make $(find . -name "*.elm") --output=/dev/null

View File

@@ -3,33 +3,33 @@ name: Samples Erlang
on:
push:
paths:
# comment out due to errors
# ===> Compiling src/openapi_pet_handler.erl failed
# src/openapi_pet_handler.erl:278: function is_authorized/2 already defined
#- samples/server/petstore/erlang-server/**
- samples/server/echo_api/erlang-server/**
- samples/server/petstore/erlang-server/**
- samples/client/petstore/erlang-client/**
- samples/client/petstore/erlang-proper/**
pull_request:
paths:
#- samples/server/petstore/erlang-server/**
- samples/server/echo_api/erlang-server/**
- samples/server/petstore/erlang-server/**
- samples/client/petstore/erlang-client/**
- samples/client/petstore/erlang-proper/**
jobs:
build:
name: Build Erlang projects
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
sample:
#- samples/server/petstore/erlang-server/
- samples/server/echo_api/erlang-server/
- samples/server/petstore/erlang-server/
- samples/client/petstore/erlang-client/
- samples/client/petstore/erlang-proper/
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: erlef/setup-beam@v1
with:
otp-version: '22.2'
rebar3-version: '3.14.3'
otp-version: '27'
rebar3-version: '3.23.0'
- run: rebar3 compile
working-directory: ${{ matrix.sample }}

View File

@@ -16,12 +16,12 @@ jobs:
# clients
- samples/client/echo_api/go
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
- uses: actions/checkout@v5
- uses: actions/setup-go@v6
with:
go-version: "stable"
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server

View File

@@ -0,0 +1,45 @@
name: Samples Go Clients (Petstore)
on:
push:
paths:
- samples/client/petstore/go/**
- samples/openapi3/client/petstore/go/**
pull_request:
paths:
- samples/client/petstore/go/**
- samples/openapi3/client/petstore/go/**
jobs:
build:
name: Build Go
runs-on: ubuntu-latest
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/go/
- samples/openapi3/client/petstore/go/
steps:
- uses: actions/checkout@v5
- name: Add hosts to /etc/hosts
run: |
sudo echo "127.0.0.1 petstore.swagger.io" | sudo tee -a /etc/hosts
- uses: actions/setup-go@v6
- run: go version
- name: Install Dependencies
working-directory: ${{ matrix.sample }}
run: |
go mod tidy
- name: Run test
working-directory: ${{ matrix.sample }}
run: go test -mod=mod -v

View File

@@ -0,0 +1,45 @@
name: Samples Go Clients
on:
push:
paths:
- 'samples/openapi3/client/petstore/go/go-petstore-aws-signature/**'
- 'samples/openapi3/client/petstore/go-petstore-withXml/**'
- samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false/**
- samples/client/others/go/allof_multiple_ref_and_discriminator/**
- samples/client/others/go/oneof-anyof-required/**
- samples/client/others/go/oneof-discriminator-lookup/**
pull_request:
paths:
- 'samples/openapi3/client/petstore/go/go-petstore-aws-signature/**'
- 'samples/openapi3/client/petstore/go-petstore-withXml/**'
- samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false/**
- samples/client/others/go/allof_multiple_ref_and_discriminator/**
- samples/client/others/go/oneof-anyof-required/**
- samples/client/others/go/oneof-discriminator-lookup/**
jobs:
build:
name: Build Go
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/openapi3/client/petstore/go/go-petstore-aws-signature/'
- 'samples/openapi3/client/petstore/go-petstore-withXml/'
- samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false/
- samples/client/others/go/allof_multiple_ref_and_discriminator/
- samples/client/others/go/oneof-anyof-required/
- samples/client/others/go/oneof-discriminator-lookup/
steps:
- uses: actions/checkout@v5
- uses: actions/setup-go@v6
- run: go version
- name: Install Dependencies
working-directory: ${{ matrix.sample }}
run: |
go mod tidy
- name: Run test
working-directory: ${{ matrix.sample }}
run: go test -mod=mod -v

View File

@@ -21,8 +21,8 @@ jobs:
- samples/server/petstore/go-gin-api-server/
- samples/server/petstore/go-gin-api-server-interface-only/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
- uses: actions/checkout@v5
- uses: actions/setup-go@v6
with:
go-version: "stable"
- run: go version

View File

@@ -1,4 +1,4 @@
name: Samples Go
name: Samples Go
on:
push:
@@ -6,15 +6,17 @@ on:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
- 'samples/server/others/go-server/**'
pull_request:
paths:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
- 'samples/server/others/go-server/**'
jobs:
build:
name: Build Go
name: Build Go
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -23,12 +25,38 @@ jobs:
- samples/server/petstore/go-echo-server/
- samples/server/petstore/go-api-server/
- samples/server/petstore/go-chi-server/
- samples/server/others/go-server/no-body-path-params/
- samples/server/others/go-server/optional-body/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
- uses: actions/checkout@v5
- uses: actions/setup-go@v6
with:
go-version: "stable"
- run: go version
- name: Run test
working-directory: ${{ matrix.sample }}
run: go test -mod=mod -v
verify:
name: Verify generated Go files with Go tests
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/go-api-server/
go-version:
- "1.18"
steps:
- uses: actions/checkout@v5
- name: Set up Go
uses: actions/setup-go@v6
with:
go-version: ${{ matrix.go-version }}
- name: Install Dependencies
working-directory: ${{ matrix.sample }}
run: |
go mod tidy
- name: Run tests
working-directory: ${{ matrix.sample }}
run: go test ./samples_tests -v

View File

@@ -21,11 +21,12 @@ jobs:
sample:
- samples/client/petstore/groovy
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:

View File

@@ -5,11 +5,13 @@ on:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/server/others/haskell-servant-ping/**
- samples/client/petstore/haskell-http-client/**
pull_request:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/server/others/haskell-servant-ping/**
- samples/client/petstore/haskell-http-client/**
jobs:
build:
@@ -22,9 +24,10 @@ jobs:
# servers
- samples/server/petstore/haskell-yesod/
- samples/server/petstore/haskell-servant/
- samples/server/others/haskell-servant-ping/
- samples/client/petstore/haskell-http-client/
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: haskell/actions/setup@v2
with:
# ghc-version: '8.8.4' # Exact version of ghc to use

View File

@@ -22,8 +22,8 @@ jobs:
- samples/client/echo_api/java/resttemplate
- samples/client/echo_api/java/resteasy
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
@@ -36,11 +36,11 @@ jobs:
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,47 @@
name: Java Client (Echo API) JDK17
on:
push:
paths:
- samples/client/echo_api/java/**
pull_request:
paths:
- samples/client/echo_api/java/**
jobs:
build:
name: Build Java Client JDK17
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/java/apache-httpclient
- samples/client/echo_api/java/native
- samples/client/echo_api/java/feign-gson
- samples/client/echo_api/java/resttemplate
- samples/client/echo_api/java/resteasy
- samples/client/echo_api/java/restclient
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -29,8 +29,8 @@ jobs:
- samples/client/echo_api/java/resttemplate
- samples/client/echo_api/java/resteasy
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
@@ -43,11 +43,11 @@ jobs:
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -5,30 +5,48 @@ on:
paths:
- 'samples/client/petstore/java/**'
- samples/client/petstore/jaxrs-cxf-client/**
- samples/client/petstore/jaxrs-cxf-client-swagger2/**
- samples/client/petstore/java-micronaut-client/**
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/**
- samples/openapi3/client/petstore/java/native**
- samples/client/others/java/okhttp-gson-oneOf/**
- samples/client/others/java/okhttp-gson-oneOf-array/**
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
- samples/client/others/java/webclient-useAbstractionForFiles/**
- samples/client/petstore/java/webclient-useSingleRequestParameter/**
- samples/client/others/java/jersey2-oneOf-duplicates/**
- samples/client/others/java/jersey2-oneOf-Mixed/**
- samples/client/petstore/java/jersey3-oneOf/**
- samples/client/others/java/okhttp-gson-streaming/**
- samples/client/others/java/resteasy/**
- samples/client/others/java/apache-httpclient/**
- samples/client/others/java/resttemplate-list-schema-validation/**
- samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/**
pull_request:
paths:
- 'samples/client/petstore/java/**'
- samples/client/petstore/jaxrs-cxf-client/**
- samples/client/petstore/jaxrs-cxf-client-swagger2/**
- samples/client/petstore/java-micronaut-client/**
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/**
- samples/openapi3/client/petstore/java/native**
- samples/client/others/java/okhttp-gson-oneOf/**
- samples/client/others/java/okhttp-gson-oneOf-array/**
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
- samples/client/others/java/webclient-useAbstractionForFiles/**
- samples/client/petstore/java/webclient-useSingleRequestParameter/**
- samples/client/others/java/jersey2-oneOf-duplicates/**
- samples/client/others/java/jersey2-oneOf-Mixed/**
- samples/client/petstore/java/jersey3-oneOf/**
- samples/client/others/java/okhttp-gson-streaming/**
- samples/client/others/java/resteasy/**
- samples/client/others/java/apache-httpclient/**
- samples/client/others/java/resttemplate-list-schema-validation/**
- samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/**
jobs:
build:
name: Build Java Client JDK11
@@ -38,10 +56,12 @@ jobs:
matrix:
sample:
# clients
- samples/client/petstore/jaxrs-cxf-client-swagger2
- samples/client/petstore/jaxrs-cxf-client
- samples/client/petstore/java/native
- samples/client/petstore/java/native-async
- samples/client/petstore/java/native-jakarta
- samples/client/petstore/java/native-useGzipFeature
- samples/client/petstore/java/retrofit2
- samples/client/petstore/java/retrofit2rx2
- samples/client/petstore/java/retrofit2rx3
@@ -51,18 +71,26 @@ jobs:
- samples/client/petstore/java/webclient
- samples/client/petstore/java/webclient-nullable-arrays
- samples/client/petstore/java/webclient-swagger2
- samples/client/petstore/java/webclient-useSingleRequestParameter
- samples/client/petstore/java/vertx
- samples/client/petstore/java/vertx-no-nullable
- samples/client/petstore/java/vertx-supportVertxFuture
- samples/client/petstore/java/jersey2-java8-localdatetime
- samples/client/petstore/java/google-api-client
- samples/client/petstore/java/rest-assured
- samples/client/petstore/java/rest-assured-jackson
- samples/client/petstore/java/microprofile-rest-client
- samples/client/petstore/java/microprofile-rest-client-mutiny
- samples/client/petstore/java/microprofile-rest-client-3.0
- samples/client/petstore/java/microprofile-rest-client-3.0-jackson
- samples/client/petstore/java/microprofile-rest-client-3.0-jackson-mutiny
- samples/client/petstore/java/microprofile-rest-client-3.0-jackson-with-xml
- samples/client/petstore/java/microprofile-rest-client-3.0-mutiny
- samples/client/petstore/java/microprofile-rest-client-with-useSingleRequestParameter
- samples/client/petstore/java/apache-httpclient
- samples/client/petstore/java/feign
- samples/client/petstore/java/feign-hc5
- samples/client/petstore/java/feign-no-nullable
- samples/client/petstore/java/okhttp-gson-awsv4signature
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters
- samples/openapi3/client/petstore/java/native
@@ -73,17 +101,25 @@ jobs:
- samples/client/petstore/java/resttemplate-swagger2/
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/
- samples/client/others/java/okhttp-gson-oneOf/
- samples/client/others/java/okhttp-gson-oneOf-array/
- samples/client/echo_api/java/okhttp-gson-user-defined-templates/
- samples/client/others/java/resttemplate-useAbstractionForFiles/
- samples/client/others/java/webclient-useAbstractionForFiles/
- samples/client/others/java/jersey2-oneOf-duplicates/
- samples/client/others/java/jersey2-oneOf-Mixed/
- samples/client/others/java/resttemplate-list-schema-validation/
- samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/
- samples/client/petstore/java/jersey3-oneOf/
- samples/client/others/java/okhttp-gson-streaming/
- samples/client/petstore/java/resteasy/
- samples/client/petstore/java/apache-httpclient/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -92,6 +128,27 @@ jobs:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
- name: Build with Maven
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress
- name: Cache gradle dependencies
uses: actions/cache@v4
env:
cache-name: gradle-caches
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
- name: Cache gradle wrapper
uses: actions/cache@v4
env:
cache-name: gradle-wrapper
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- name: Build with Gradle
working-directory: ${{ matrix.sample }}
if: ${{ hashFiles('./gradlew') != '' }}
run: ./gradlew build -x test

View File

@@ -5,10 +5,18 @@ on:
paths:
- samples/client/petstore/java/resttemplate-jakarta/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/restclient-*/**
- samples/client/others/java/webclient-sealedInterface/**
- samples/client/petstore/java/webclient-useSingleRequestParameter/**
- samples/client/others/java/restclient-enum-in-multipart/**
pull_request:
paths:
- samples/client/petstore/java/resttemplate-jakarta/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/restclient-*/**
- samples/client/others/java/webclient-sealedInterface/**
- samples/client/petstore/java/webclient-useSingleRequestParameter/**
- samples/client/others/java/restclient-enum-in-multipart/**
jobs:
build:
name: Build Java Client JDK17
@@ -20,12 +28,21 @@ jobs:
# clients
- samples/client/petstore/java/resttemplate-jakarta
- samples/client/petstore/java/webclient-jakarta
- samples/client/petstore/java/restclient
- samples/client/petstore/java/restclient-nullable-arrays
- samples/client/petstore/java/restclient-swagger2
- samples/client/petstore/java/restclient-useSingleRequestParameter
- samples/client/petstore/java/restclient-useSingleRequestParameter-static
- samples/client/others/java/webclient-sealedInterface
- samples/client/petstore/java/webclient-useSingleRequestParameter
- samples/client/others/java/restclient-enum-in-multipart
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -34,9 +51,27 @@ jobs:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build with Maven
working-directory: ${{ matrix.sample }}
run: mvn clean package
- name: Build with Gradle
run: mvn clean package --no-transfer-progress
- name: Cache gradle dependencies
uses: actions/cache@v4
env:
cache-name: gradle-caches
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
- name: Cache gradle wrapper
uses: actions/cache@v4
env:
cache-name: gradle-wrapper
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: gradle clean build
run: ./gradlew build -x test

View File

@@ -0,0 +1,39 @@
name: Samples Java Dubbo
on:
push:
paths:
- 'samples/server/petstore/java-dubbo/**'
pull_request:
paths:
- 'samples/server/petstore/java-dubbo/**'
jobs:
build:
name: Build Java Dubbo
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/java-dubbo
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress -DskipTests
# add -DskipTests as the app compiles but fails to start
#run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,44 @@
name: Samples Java Helidon v3
on:
push:
paths:
- samples/client/petstore/java-helidon-client/v3/**
- samples/server/petstore/java-helidon-server/v3/**
- samples/server/others/java-helidon-server/v3/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/v3/**
- samples/server/petstore/java-helidon-server/v3/**
- samples/server/others/java-helidon-server/v3/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/v3/mp
- samples/client/petstore/java-helidon-client/v3/se
- samples/server/petstore/java-helidon-server/v3/mp
- samples/server/petstore/java-helidon-server/v3/se
- samples/server/others/java-helidon-server/v3/mp-format-test
version: [17]
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,45 @@
name: Samples Java Helidon v4
on:
push:
paths:
- samples/client/petstore/java-helidon-client/v4/**
- samples/server/petstore/java-helidon-server/v4/**
- samples/server/others/java-helidon-server/v4/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/v4/**
- samples/server/petstore/java-helidon-server/v4/**
- samples/server/others/java-helidon-server/v4/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/v4/mp
- samples/client/petstore/java-helidon-client/v4/se
- samples/server/petstore/java-helidon-server/v4/mp
- samples/server/petstore/java-helidon-server/v4/se
- samples/server/petstore/java-helidon-server/v4/se-uac
- samples/server/others/java-helidon-server/v4/mp-format-test
version: [21]
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -1,41 +0,0 @@
name: Samples Java Helidon
on:
push:
paths:
- samples/client/petstore/java-helidon-client/**
- samples/server/petstore/java-helidon-server/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/**
- samples/server/petstore/java-helidon-server/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/mp
- samples/client/petstore/java-helidon-client/se
- samples/server/petstore/java-helidon-server/mp
- samples/server/petstore/java-helidon-server/se
version: [17]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package

View File

@@ -0,0 +1,65 @@
# run java client tests with petstore server
name: Samples Java Petsore Client JDK11
on:
push:
paths:
- samples/client/petstore/java/jersey2-java8/**
- samples/openapi3/client/petstore/java/jersey2-java8/**
- samples/client/petstore/java/jersey3/**
- samples/client/petstore/java/okhttp-gson/**
- samples/client/petstore/java/okhttp-gson-3.1/**
- samples/client/petstore/java/okhttp-gson-dynamicOperations/**
- samples/client/petstore/java-micronaut-client/**
pull_request:
paths:
- samples/client/petstore/java/jersey2-java8/**
- samples/openapi3/client/petstore/java/jersey2-java8/**
- samples/client/petstore/java/jersey3/**
- samples/client/petstore/java/okhttp-gson/**
- samples/client/petstore/java/okhttp-gson-3.1/**
- samples/client/petstore/java/okhttp-gson-dynamicOperations/**
- samples/client/petstore/java-micronaut-client/**
jobs:
build:
name: Build Java Client JDK11
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java/jersey2-java8
- samples/openapi3/client/petstore/java/jersey2-java8
- samples/client/petstore/java/jersey3
- samples/client/petstore/java/okhttp-gson
- samples/client/petstore/java/okhttp-gson-3.1
- samples/client/petstore/java/okhttp-gson-dynamicOperations
- samples/client/petstore/java-micronaut-client
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- name: Add hosts to /etc/hosts
run: |
sudo echo "127.0.0.1 petstore.swagger.io" | sudo tee -a /etc/hosts
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build with Maven
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -29,8 +29,8 @@ jobs:
- samples/server/petstore/java-play-framework-no-swagger-ui
- samples/server/petstore/java-play-framework-no-wrap-calls
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
@@ -44,4 +44,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

38
.github/workflows/samples-java-sbt.yaml vendored Normal file
View File

@@ -0,0 +1,38 @@
name: Samples Java (sbt)
on:
push:
paths:
- 'samples/client/petstore/java/okhttp-gson/**'
pull_request:
paths:
- 'samples/client/petstore/java/okhttp-gson/**'
jobs:
build:
name: Build sbt/Java client, servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/java/okhttp-gson
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
- name: Setup sbt launcher
uses: sbt/setup-sbt@v1
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.ivy2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/build.sbt') }}
- name: Build and test
working-directory: ${{ matrix.sample }}
run: sbt -v +test

View File

@@ -3,20 +3,19 @@ name: Samples Java Server
on:
push:
paths:
# java-camel is tested locally for the time being
#- 'samples/server/petstore/java-camel/**'
- 'samples/server/petstore/java-vertx-web/**'
- 'samples/server/petstore/java-inflector/**'
- 'samples/server/petstore/java-pkmst/**'
# test in circleci instead
- 'samples/server/petstore/java-undertow/**'
- 'samples/server/petstore/java-microprofile/**'
pull_request:
paths:
#- 'samples/server/petstore/java-camel/**'
- 'samples/server/petstore/java-vertx-web/**'
- 'samples/server/petstore/java-inflector/**'
- 'samples/server/petstore/java-pkmst/**'
#- 'samples/server/petstore/java-undertow/**'
- 'samples/server/petstore/java-microprofile/**'
jobs:
build:
name: Build Java Server
@@ -26,14 +25,14 @@ jobs:
matrix:
sample:
# servers
#- samples/server/petstore/java-camel/
- samples/server/petstore/java-vertx-web/
- samples/server/petstore/java-inflector/
- samples/server/petstore/java-pkmst/
#- samples/server/petstore/java-undertow/
- samples/server/petstore/java-microprofile/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
@@ -47,4 +46,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -17,8 +17,8 @@ jobs:
sample:
- samples/server/petstore/java-wiremock
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
@@ -32,4 +32,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,51 @@
name: Samples JS clients
on:
push:
paths:
#- samples/client/petstore/javascript-flowtyped/**
- samples/client/petstore/javascript-es6/**
- samples/client/petstore/javascript-promise-es6/**
pull_request:
paths:
#- samples/client/petstore/javascript-flowtyped/**
- samples/client/petstore/javascript-es6/**
- samples/client/petstore/javascript-promise-es6/**
jobs:
build:
name: Build projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node:
- "18.x"
- "20.x"
sample:
# clients
- samples/client/petstore/javascript-es6/
- samples/client/petstore/javascript-promise-es6/
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- name: Add hosts to /etc/hosts
run: |
sudo echo "127.0.0.1 petstore.swagger.io" | sudo tee -a /etc/hosts
- name: Use Node.js 20.x
uses: actions/setup-node@v5
with:
node-version: ${{ matrix.node }}
cache: 'npm' # Or 'yarn'
- name: npm install
working-directory: ${{ matrix.sample }}
run: npm install
- name: npm test
working-directory: ${{ matrix.sample }}
run: npm test

View File

@@ -18,8 +18,8 @@ jobs:
# servers
- samples/server/petstore/jaxrs/jersey3
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
@@ -33,4 +33,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -20,10 +20,7 @@ jobs:
- samples/server/petstore/jaxrs/jersey2-useTags
- samples/server/petstore/jaxrs-jersey
- samples/server/petstore/jaxrs-spec
- samples/server/petstore/jaxrs-spec-interface
- samples/server/petstore/jaxrs-spec-interface-response
- samples/server/petstore/jaxrs-jersey
- samples/server/petstore/jaxrs-spec
- samples/server/petstore/jaxrs-spec-withxml
- samples/server/petstore/jaxrs-spec-interface
- samples/server/petstore/jaxrs-spec-interface-response
- samples/server/petstore/jaxrs-datelib-j8
@@ -37,12 +34,15 @@ jobs:
- samples/server/petstore/jaxrs-cxf-cdi
- samples/server/petstore/jaxrs-cxf-non-spring-app
- samples/server/petstore/jaxrs-spec-microprofile-openapi-annotations
- samples/server/petstore/jaxrs-spec-swagger-annotations
- samples/server/petstore/jaxrs-spec-swagger-v3-annotations-jakarta
- samples/server/petstore/jaxrs-spec-swagger-v3-annotations
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -53,4 +53,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -4,28 +4,36 @@ on:
paths:
# clients
- samples/openapi3/client/petstore/spring-cloud-3/**
- samples/client/petstore/java-helidon-client/mp/**
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/java-helidon-client/v3/mp/**
- samples/client/petstore/java-helidon-client/v3/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/spring-http-interface-reactive-noResponseEntity/**
- samples/client/petstore/spring-http-interface-noResponseEntity/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/microprofile-rest-client-outer-enum/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
- samples/server/petstore/java-helidon-server/se/**
- samples/server/petstore/java-camel/**
- samples/server/petstore/java-helidon-server/v3/mp/**
- samples/server/petstore/java-helidon-server/v3/se/**
pull_request:
paths:
# clients
- samples/openapi3/client/petstore/spring-cloud-3/**
- samples/client/petstore/java-helidon-client/mp/**
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/java-helidon-client/v3/mp/**
- samples/client/petstore/java-helidon-client/v3/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/spring-http-interface-reactive-noResponseEntity/**
- samples/client/petstore/spring-http-interface-noResponseEntity/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/microprofile-rest-client-outer-enum/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
- samples/server/petstore/java-helidon-server/se/**
- samples/server/petstore/java-camel/**
- samples/server/petstore/java-helidon-server/v3/mp/**
- samples/server/petstore/java-helidon-server/v3/se/**
jobs:
build:
name: Build with JDK17
@@ -36,20 +44,22 @@ jobs:
sample:
# clients
- samples/openapi3/client/petstore/spring-cloud-3
- samples/client/petstore/java-helidon-client/mp
- samples/client/petstore/java-helidon-client/se
- samples/client/petstore/java-helidon-client/v3/mp/
- samples/client/petstore/java-helidon-client/v3/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
- samples/client/petstore/spring-http-interface-reactive-noResponseEntity
- samples/client/petstore/spring-http-interface-noResponseEntity
- samples/client/petstore/java/webclient-jakarta
- samples/client/petstore/java/microprofile-rest-client-outer-enum
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/java-helidon-server/mp
- samples/server/petstore/java-helidon-server/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
- samples/server/petstore/java-camel/
- samples/server/petstore/java-helidon-server/v3/mp/
- samples/server/petstore/java-helidon-server/v3/se
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
@@ -63,4 +73,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

49
.github/workflows/samples-jdk21.yaml vendored Normal file
View File

@@ -0,0 +1,49 @@
name: Samples JDK21
on:
push:
paths:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/**
- samples/client/petstore/java-helidon-client/v4/se/**
# servers
- samples/server/petstore/java-helidon-server/v4/mp/**
- samples/server/petstore/java-helidon-server/v4/se/**
pull_request:
paths:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/**
- samples/client/petstore/java-helidon-client/v4/se/**
# servers
- samples/server/petstore/java-helidon-server/v4/mp/**
- samples/server/petstore/java-helidon-server/v4/se/**
jobs:
build:
name: Build with JDK21
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/
- samples/client/petstore/java-helidon-client/v4/se/
# servers
- samples/server/petstore/java-helidon-server/v4/mp/
- samples/server/petstore/java-helidon-server/v4/se/
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 21
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -15,7 +15,7 @@ jobs:
name: Tests Julia
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: julia-actions/setup-julia@v2
with:
version: 1.8
@@ -30,7 +30,7 @@ jobs:
# Using develop mode to install package so that it is easier to modify the package test files
julia -e "using Pkg; Pkg.develop(\"OpenAPI\");"
cd ~/.julia/dev/OpenAPI
git checkout v0.1.14
git checkout v0.2.0
cd $currdir
rm -rf ~/.julia/dev/OpenAPI/test/client/openapigenerator_petstore_v3/petstore
rm -rf ~/.julia/dev/OpenAPI/test/server/openapigenerator_petstore_v3/petstore

View File

@@ -5,13 +5,12 @@ on:
branches:
- 'samples/client/petstore/kotlin*/**'
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
- samples/client/others/kotlin-integer-enum/**
pull_request:
paths:
- 'samples/client/petstore/kotlin*/**'
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
env:
GRADLE_VERSION: 6.9
- samples/client/others/kotlin-integer-enum/**
jobs:
build:
@@ -23,6 +22,7 @@ jobs:
sample:
# client
- samples/client/petstore/kotlin
- samples/client/petstore/kotlin-explicit
- samples/client/petstore/kotlin-gson
- samples/client/petstore/kotlin-jackson
- samples/client/petstore/kotlin-model-prefix-type-mappings
@@ -33,6 +33,7 @@ jobs:
- samples/client/petstore/kotlin-moshi-codegen
- samples/client/petstore/kotlin-multiplatform
- samples/client/petstore/kotlin-multiplatform-kotlinx-datetime
- samples/client/petstore/kotlin-multiplatform-allOf-discriminator
- samples/client/petstore/kotlin-nonpublic
- samples/client/petstore/kotlin-nullable
- samples/client/petstore/kotlin-retrofit2
@@ -43,6 +44,7 @@ jobs:
- samples/client/petstore/kotlin-threetenbp
- samples/client/petstore/kotlin-kotlinx-datetime
- samples/client/petstore/kotlin-uppercase-enum
- samples/client/petstore/kotlin-array-integer-enum
- samples/client/petstore/kotlin-default-values-jvm-okhttp4
- samples/client/petstore/kotlin-default-values-jvm-retrofit2
- samples/client/petstore/kotlin-default-values-jvm-volley
@@ -65,15 +67,19 @@ jobs:
- samples/client/echo_api/kotlin-jvm-spring-3-webclient
- samples/client/petstore/kotlin-jvm-spring-3-restclient
- samples/client/echo_api/kotlin-jvm-spring-3-restclient
- samples/client/petstore/kotlin-spring-cloud
- samples/client/petstore/kotlin-name-parameter-mappings
- samples/client/others/kotlin-jvm-okhttp-parameter-tests
- samples/client/others/kotlin-jvm-okhttp-path-comments
- samples/client/others/kotlin-integer-enum
- samples/client/petstore/kotlin-allOf-discriminator-kotlinx-serialization
- samples/client/others/kotlin-oneOf-discriminator-kotlinx-serialization
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
java-version: 11
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -85,7 +91,6 @@ jobs:
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build

View File

@@ -7,8 +7,7 @@ on:
pull_request:
paths:
- samples/client/echo_api/kotlin**
env:
GRADLE_VERSION: 7.4
jobs:
build:
name: Build Kotlin Client JDK17
@@ -20,12 +19,14 @@ jobs:
# clients
- samples/client/echo_api/kotlin-jvm-spring-3-restclient
- samples/client/echo_api/kotlin-model-prefix-type-mappings
- samples/client/echo_api/kotlin-jvm-okhttp
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -37,11 +38,10 @@ jobs:
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server

View File

@@ -1,42 +1,64 @@
name: Samples Kotlin server
name: Samples Kotlin server (jdk17)
on:
push:
branches:
paths:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-modelMutable/**'
- 'samples/server/petstore/kotlin-springboot-*/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
- 'samples/server/petstore/kotlin-spring-declarative*/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
pull_request:
paths:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-modelMutable/**'
- 'samples/server/petstore/kotlin-springboot-*/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
- 'samples/server/petstore/kotlin-spring-declarative*/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 7.4
GRADLE_VERSION: '8.10'
jobs:
build:
name: Build Kotlin server
name: Build Kotlin server (jdk17)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# server
- samples/server/petstore/kotlin-server-required-and-nullable-properties
- samples/server/petstore/kotlin-springboot-3
- samples/server/petstore/kotlin-springboot-request
- samples/server/petstore/kotlin-springboot-additionalproperties
- samples/server/petstore/kotlin-springboot-delegate-nodefaults
- samples/server/petstore/kotlin-springboot-request-cookie
- samples/server/petstore/kotlin-server/jaxrs-spec
- samples/server/petstore/kotlin-server/jaxrs-spec-mutiny
- samples/server/petstore/kotlin-server/javalin
- samples/server/petstore/kotlin-server/javalin-6
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server/ktor2
- samples/server/petstore/kotlin-misk
- samples/server/petstore/kotlin-spring-declarative-interface
- samples/server/petstore/kotlin-spring-declarative-interface-reactive-coroutines
- samples/server/petstore/kotlin-spring-declarative-interface-reactive-reactor-wrapped
- samples/server/petstore/kotlin-spring-declarative-interface-wrapped
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:

View File

@@ -0,0 +1,52 @@
name: Samples Kotlin server (jdk21)
on:
push:
paths:
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
pull_request:
paths:
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
env:
GRADLE_VERSION: '8.10'
jobs:
build:
name: Build Kotlin server (jdk21)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/kotlin-server/javalin-6
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server/ktor2
- samples/server/petstore/kotlin-server-required-and-nullable-properties
- samples/server/petstore/kotlin-misk
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 21
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -1,8 +1,8 @@
name: Samples Kotlin server
name: Samples Kotlin server (jdk8)
on:
push:
branches:
paths:
- samples/server/others/kotlin-server/jaxrs-spec/**
- 'samples/server/petstore/kotlin*/**'
- 'samples/server/others/kotlin-server/jaxrs-spec-array-response/**'
@@ -17,11 +17,11 @@ on:
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 6.9
GRADLE_VERSION: 7.6.4
jobs:
build:
name: Build Kotlin server
name: Build Kotlin server (jdk8)
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -29,30 +29,39 @@ jobs:
sample:
# server
- samples/server/petstore/kotlin-springboot
- samples/server/petstore/kotlin-springboot-multipart-request-model
- samples/server/petstore/kotlin-springboot-bigdecimal-default
- samples/server/petstore/kotlin-springboot-delegate
- samples/server/petstore/kotlin-springboot-modelMutable
- samples/server/petstore/kotlin-springboot-reactive
- samples/server/petstore/kotlin-springboot-reactive-without-flow
- samples/server/petstore/kotlin-springboot-source-swagger1
- samples/server/petstore/kotlin-springboot-source-swagger2
- samples/server/petstore/kotlin-springboot-springfox
- samples/server/petstore/kotlin-springboot-x-kotlin-implements
- samples/server/petstore/kotlin-springboot-include-http-request-context-delegate
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server/ktor2
- samples/server/petstore/kotlin-server/jaxrs-spec
- samples/server/petstore/kotlin-server/jaxrs-spec-mutiny
- samples/server/petstore/kotlin-server-modelMutable
- samples/server/petstore/kotlin-server/javalin
- samples/server/others/kotlin-server/jaxrs-spec
- samples/server/others/kotlin-server/jaxrs-spec-array-response
- samples/server/petstore/kotlin-spring-cloud
- samples/server/petstore/kotlin-misk
- samples/server/petstore/kotlin-misk-config
# comment out due to gradle build failure
#- samples/server/petstore/kotlin-spring-default
# no build.gradle file
#- samples/server/petstore/kotlin-vertx-modelMutable
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
java-version: 11
cache: gradle
- name: Cache maven dependencies
uses: actions/cache@v4
env:

View File

@@ -0,0 +1,45 @@
name: Samples Kotlin WireMock
on:
push:
branches:
- samples/server/petstore/kotlin-wiremock*/**
- samples/server/echo_api/kotlin-wiremock/**
pull_request:
paths:
- samples/server/petstore/kotlin-wiremock*/**
- samples/server/echo_api/kotlin-wiremock/**
jobs:
build:
name: Build Kotlin WireMock
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/kotlin-wiremock
- samples/server/petstore/kotlin-wiremock-responses
- samples/server/echo_api/kotlin-wiremock
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v3
with:
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

40
.github/workflows/samples-ocaml.yaml vendored Normal file
View File

@@ -0,0 +1,40 @@
name: Samples OCaml
on:
push:
paths:
- 'samples/client/petstore/ocaml/**'
- 'samples/client/petstore/ocaml-fake-petstore/**'
- 'samples/client/petstore/ocaml-oneOf-primitive/**'
- 'samples/client/petstore/ocaml-additional-properties/**'
pull_request:
paths:
- 'samples/client/petstore/ocaml/**'
- 'samples/client/petstore/ocaml-fake-petstore/**'
- 'samples/client/petstore/ocaml-oneOf-primitive/**'
- 'samples/client/petstore/ocaml-additional-properties/**'
jobs:
build:
name: Build OCaml
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/client/petstore/ocaml/'
- 'samples/client/petstore/ocaml-fake-petstore/'
- 'samples/client/petstore/ocaml-oneOf-primitive/'
- 'samples/client/petstore/ocaml-additional-properties/'
steps:
- uses: actions/checkout@v5
- name: Set-up OCaml
uses: ocaml/setup-ocaml@v3
with:
ocaml-compiler: 5
- name: Install
run: opam install . --deps-only --with-test
working-directory: ${{ matrix.sample }}
- name: Build
run: opam exec -- dune build
working-directory: ${{ matrix.sample }}

View File

@@ -0,0 +1,45 @@
name: Samples PHP clients
on:
push:
paths:
- samples/client/petstore/php/OpenAPIClient-php/**
pull_request:
paths:
- samples/client/petstore/php/OpenAPIClient-php/**
jobs:
build:
name: Build PHP projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php:
- "8.1"
- "8.2"
- "8.3"
- "8.4"
sample:
# clients
- samples/client/petstore/php/OpenAPIClient-php/
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:
php-version: "${{ matrix.php }}"
tools: php-cs-fixer, phpunit
- name: composer install
working-directory: ${{ matrix.sample }}
run: composer install
- name: phpunit
working-directory: ${{ matrix.sample }}
run: vendor/bin/phpunit tests

View File

@@ -0,0 +1,48 @@
name: Samples PHP (Server) Syntax Checker
on:
push:
paths:
- samples/server/petstore/php-symfony/SymfonyBundle-php/**
#- samples/server/petstore/php-laravel/**
- samples/server/petstore/php-flight/**
- samples/server/petstore/php-mezzio-ph-modern/**
- samples/server/petstore/php-mezzio-ph/**
- samples/server/petstore/php-slim4/**
pull_request:
paths:
- samples/server/petstore/php-symfony/SymfonyBundle-php/**
#- samples/server/petstore/php-laravel/**
- samples/server/petstore/php-flight/**
- samples/server/petstore/php-mezzio-ph-modern/**
- samples/server/petstore/php-mezzio-ph/**
- samples/server/petstore/php-slim4/**
jobs:
build:
name: Build PHP projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php:
- "8.1"
- "8.2"
- "8.3"
- "8.4"
sample:
# servers
- samples/server/petstore/php-symfony/SymfonyBundle-php/
#- samples/server/petstore/php-laravel/
- samples/server/petstore/php-flight/
- samples/server/petstore/php-mezzio-ph-modern/
- samples/server/petstore/php-mezzio-ph/
- samples/server/petstore/php-slim4/
steps:
- uses: actions/checkout@v5
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:
php-version: "${{ matrix.php }}"
- name: php -l
working-directory: ${{ matrix.sample }}
run: find . -name "*.php" -exec php -l {} +

View File

@@ -0,0 +1,36 @@
name: Samples PHP Syntax Checker
on:
push:
paths:
- samples/client/petstore/php/OpenAPIClient-php/**
- samples/client/petstore/php-nextgen/OpenAPIClient-php/**
pull_request:
paths:
- samples/client/petstore/php/OpenAPIClient-php/**
- samples/client/petstore/php-nextgen/OpenAPIClient-php/**
jobs:
build:
name: Build PHP projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php:
- "8.1"
- "8.2"
- "8.3"
- "8.4"
sample:
# clients
- samples/client/petstore/php/OpenAPIClient-php/
- samples/client/petstore/php-nextgen/OpenAPIClient-php/
steps:
- uses: actions/checkout@v5
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:
php-version: "${{ matrix.php }}"
- name: php -l
working-directory: ${{ matrix.sample }}
run: find . -name "*.php" -exec php -l {} +

View File

@@ -1,32 +0,0 @@
name: Samples PHP 7.x
on:
push:
paths:
- samples/server/petstore/php-laravel/lib/
pull_request:
paths:
- samples/server/petstore/php-laravel/lib/
jobs:
build:
name: Build PHP projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/php-laravel/lib/
steps:
- uses: actions/checkout@v4
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:
php-version: '7.4'
tools: php-cs-fixer, phpunit
- name: composer install
working-directory: ${{ matrix.sample }}
run: composer install
- name: phpunit
working-directory: ${{ matrix.sample }}
run: vendor/bin/phpunit

View File

@@ -5,10 +5,14 @@ on:
paths:
- samples/server/petstore/php-symfony/SymfonyBundle-php/**
- samples/server/petstore/php-flight/**
- samples/server/petstore/php-laravel/**
- samples/server/petstore/php-laravel-issue-21334/**
pull_request:
paths:
- samples/server/petstore/php-symfony/SymfonyBundle-php/**
- samples/server/petstore/php-flight/**
- samples/server/petstore/php-laravel/**
- samples/server/petstore/php-laravel-issue-21334/**
jobs:
build:
name: Build PHP projects
@@ -16,16 +20,23 @@ jobs:
strategy:
fail-fast: false
matrix:
php:
- "8.1"
- "8.2"
- "8.3"
- "8.4"
sample:
# servers
- samples/server/petstore/php-symfony/SymfonyBundle-php/
- samples/server/petstore/php-flight/
- samples/server/petstore/php-laravel/
- samples/server/petstore/php-laravel-issue-21334/
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
php-version: "${{ matrix.php }}"
tools: php-cs-fixer, phpunit
- name: composer install
working-directory: ${{ matrix.sample }}

View File

@@ -17,10 +17,10 @@ jobs:
# schema
- samples/schema/postman-collection
python-version:
- "3.11"
- "3.12"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install

View File

@@ -0,0 +1,40 @@
name: Samples PowerShell
on:
push:
paths:
- samples/client/petstore/powershell/**
pull_request:
paths:
- samples/client/petstore/powershell/**
jobs:
build:
runs-on: ubuntu-latest
name: Test Powershell Clients
strategy:
matrix:
sample:
- samples/client/petstore/powershell/
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- name: Build the client
working-directory: ${{ matrix.sample }}
shell: pwsh
run: |
./Build.ps1
- name: Test
working-directory: ${{ matrix.sample }}
shell: pwsh
run: |
Import-Module -Name './src/PSPetstore'
Invoke-Pester -PassThru

39
.github/workflows/samples-protobuf.yaml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: Samples Protobuf
on:
push:
paths:
- .github/workflows/samples-protobuf.yaml
- samples/config/petstore/protobuf-schema/**
- samples/config/petstore/protobuf-schema-config/**
pull_request:
paths:
- .github/workflows/samples-protobuf.yaml
- samples/config/petstore/protobuf-schema/**
- samples/config/petstore/protobuf-schema-config/**
jobs:
build:
name: Build Protobuf Client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/config/petstore/protobuf-schema/'
- 'samples/config/petstore/protobuf-schema-config/'
- 'samples/config/petstore/protobuf-schema-config-complex/'
steps:
- uses: actions/checkout@v5
- name: Install Protocol Buffers Compiler
run: |
sudo apt-get update
sudo apt-get install -y protobuf-compiler
- name: Generate Protobuf Schema
working-directory: ${{ matrix.sample }}
run: |
mkdir out
protoc --proto_path=. --cpp_out=out models/*.proto services/*.proto
- name: Verify Generated Files
working-directory: ${{ matrix.sample }}
run: |
ls -l out/models
ls -l out/services

View File

@@ -4,6 +4,7 @@ on:
pull_request:
paths:
- samples/client/echo_api/python/**
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent/**
- .github/workflows/samples-python-client-echo-api.yaml
jobs:
build:
@@ -17,18 +18,18 @@ jobs:
- samples/client/echo_api/python
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
@@ -41,7 +42,7 @@ jobs:
- name: Test
working-directory: ${{ matrix.sample }}
run: python -m pytest
run: python -m unittest discover
- name: mypy
working-directory: ${{ matrix.sample }}

View File

@@ -18,8 +18,8 @@ jobs:
# servers
- samples/server/petstore/python-fastapi/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.9'
- name: Install dependencies

View File

@@ -8,6 +8,18 @@ on:
- .github/workflows/samples-python-petstore.yaml
jobs:
validate-pyproject-toml:
name: Validate pyproject.toml
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: "3.13"
- name: Install validator
run: pip install 'validate-pyproject[all]'
- name: Validate
run: validate-pyproject samples/openapi3/client/petstore/python/pyproject.toml
build:
name: Test Python client
runs-on: ubuntu-latest
@@ -15,14 +27,16 @@ jobs:
fail-fast: false
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
sample:
- samples/openapi3/client/petstore/python-aiohttp
- samples/openapi3/client/petstore/python-httpx
- samples/openapi3/client/petstore/python
- samples/openapi3/client/petstore/python-lazyImports
services:
petstore-api:
image: swaggerapi/petstore
@@ -32,8 +46,8 @@ jobs:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
id: py
with:
python-version: ${{ matrix.python-version }}

View File

@@ -17,18 +17,18 @@ jobs:
# clients
- samples/client/echo_api/python-pydantic-v1/
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server

View File

@@ -15,11 +15,10 @@ jobs:
fail-fast: false
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
sample:
- samples/openapi3/client/petstore/python-pydantic-v1-aiohttp
- samples/openapi3/client/petstore/python-pydantic-v1
@@ -32,8 +31,8 @@ jobs:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
id: py
with:
python-version: ${{ matrix.python-version }}

View File

@@ -18,10 +18,10 @@ jobs:
# servers
- samples/server/petstore/python-aiohttp-srclayout/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.7'
python-version: '3.9'
- name: Test
working-directory: ${{ matrix.sample }}
run: make test-all

View File

@@ -1,42 +0,0 @@
name: Samples R
on:
push:
paths:
- 'samples/client/echo_api/r/**'
pull_request:
paths:
- 'samples/client/echo_api/r/**'
jobs:
build:
name: Build R
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/client/echo_api/r/'
steps:
- uses: actions/checkout@v4
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- uses: r-lib/actions/setup-r@v2
with:
r-version: 3.6.1
- uses: r-lib/actions/setup-r-dependencies@v2
working-directory: ${{ matrix.sample }}
with:
cache-version: 2
- name: Install curl
run: sudo apt-get install -y r-cran-curl
- name: build and test
working-directory: ${{ matrix.sample }}
run: |
# export _R_CHECK_FORCE_SUGGESTS_=false
/bin/bash build_and_test.bash
shell: bash

View File

@@ -24,9 +24,9 @@ jobs:
- 'samples/client/echo_api/ruby-faraday/'
- 'samples/client/echo_api/ruby-typhoeus/'
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Setup node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server

View File

@@ -0,0 +1,72 @@
name: Samples Rust Clients
on:
push:
paths:
- "samples/client/others/rust/**"
- "samples/client/petstore/rust-server/**"
pull_request:
paths:
- "samples/client/others/rust/**"
- "samples/client/petstore/rust/**"
jobs:
build:
name: Build Rust
runs-on: ubuntu-latest
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
strategy:
fail-fast: false
matrix:
sample:
# these folders contain sub-projects of rust clients, servers
- samples/client/others/rust/
- samples/client/petstore/rust/
steps:
- uses: actions/checkout@v5
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Rust cache
uses: Swatinem/rust-cache@v2
with:
cache-targets: false # Don't cache workspace target directories as they don't exist
cache-directories:
${{ matrix.sample }}/target
workspaces: |
${{ matrix.sample }}/output/*
- name: Build
working-directory: ${{ matrix.sample }}
run: cargo build --all-targets --all-features
- name: Tests
working-directory: ${{ matrix.sample }}
run: |
set -e
# Iterate through each example and test various features
for package in $(find . -maxdepth 1 -mindepth 1 -type d)
do
# Not all versions have a client example
if test -f examples/client/main.rs; then
cargo build --example client --features="client"
fi
# Test the CLI works if present
if test -f bin/cli.rs; then
cargo build --bin ${package##*/} --features cli
target/debug/${package##*/} --help
fi
cargo fmt
cargo test
cargo clippy
cargo doc
done

View File

@@ -0,0 +1,64 @@
name: Samples Rust Servers
on:
push:
paths:
- "samples/server/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
pull_request:
paths:
- "samples/server/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
jobs:
build:
name: Build Rust
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# these folders contain sub-projects of rust clients, servers
- samples/server/petstore/rust-server/
- samples/server/petstore/rust-server-deprecated/
- samples/server/petstore/rust-axum/
steps:
- uses: actions/checkout@v5
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Rust cache
uses: Swatinem/rust-cache@v2
with:
cache-targets: false # Don't cache workspace target directories as they don't exist
cache-directories:
${{ matrix.sample }}/target
workspaces: |
${{ matrix.sample }}/output/*
- name: Build
working-directory: ${{ matrix.sample }}
run: cargo build --all-targets --all-features
- name: Tests
working-directory: ${{ matrix.sample }}
run: |
set -e
# Iterate through each example and test various features
for package in $(find . -maxdepth 1 -mindepth 1 -type d)
do
# Not all versions have a server example
if test -f examples/server/main.rs; then
cargo build --example server --features="server"
fi
# Test the CLI works if present
if test -f bin/cli.rs; then
cargo build --bin ${package##*/} --features cli
target/debug/${package##*/} --help
fi
cargo fmt
cargo test
cargo clippy
cargo doc
done

View File

@@ -1,37 +0,0 @@
name: Samples Rust
on:
push:
paths:
- "samples/client/others/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/client/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
pull_request:
paths:
- "samples/client/others/rust/**"
- "samples/client/petstore/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
jobs:
build:
name: Build Rust
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# these folders contain sub-projects of rust clients, servers
- samples/client/others/rust/
- samples/client/petstore/rust/
- samples/server/petstore/rust-server/
- samples/server/petstore/rust-axum/
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Build
working-directory: ${{ matrix.sample }}
run: cargo build

View File

@@ -0,0 +1,70 @@
name: Samples Scala/sbt client
on:
push:
paths:
- samples/client/petstore/scalaz/**
- samples/client/petstore/scala-pekko/**
- samples/client/petstore/scala-http4s/**
- samples/client/petstore/scala-sttp4-jsoniter/**
- samples/client/petstore/scala-akka/**
- samples/client/petstore/scala-sttp/**
- samples/client/petstore/scala-sttp-circe/**
- samples/client/petstore/scala-sttp4/**
pull_request:
paths:
- samples/client/petstore/scalaz/**
- samples/client/petstore/scala-pekko/**
- samples/client/petstore/scala-http4s/**
- samples/client/petstore/scala-sttp4-jsoniter/**
- samples/client/petstore/scala-akka/**
- samples/client/petstore/scala-sttp/**
- samples/client/petstore/scala-sttp-circe/**
- samples/client/petstore/scala-sttp4/**
jobs:
build:
name: Build sbt/Scala
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/scalaz
- samples/client/petstore/scala-pekko
- samples/client/petstore/scala-http4s
- samples/client/petstore/scala-sttp4-jsoniter
- samples/client/petstore/scala-akka
- samples/client/petstore/scala-sttp
- samples/client/petstore/scala-sttp-circe
- samples/client/petstore/scala-sttp4
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v5
- name: Add hosts to /etc/hosts
run: |
sudo echo "127.0.0.1 petstore.swagger.io" | sudo tee -a /etc/hosts
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
- name: Setup sbt launcher
uses: sbt/setup-sbt@v1
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.ivy2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/build.sbt') }}
- name: Build and test
working-directory: ${{ matrix.sample }}
run: sbt -v test

View File

@@ -0,0 +1,38 @@
name: Samples Scala/sbt (JDK8)
on:
push:
paths:
- 'samples/server/petstore/scala-finch/**'
pull_request:
paths:
- 'samples/server/petstore/scala-finch/**'
jobs:
build:
name: Build scala-finch servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/scala-finch # cannot be tested with jdk11
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
- name: Setup sbt launcher
uses: sbt/setup-sbt@v1
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.ivy2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/build.sbt') }}
- name: Build and test
working-directory: ${{ matrix.sample }}
run: sbt -v +test

View File

@@ -0,0 +1,43 @@
name: Samples Scala/sbt server
on:
push:
paths:
- 'samples/server/petstore/scala**'
pull_request:
paths:
- 'samples/server/petstore/scala**'
jobs:
build:
name: Build sbt/Scala
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/scala-play-server
- samples/server/petstore/scala-akka-http-server
- samples/server/petstore/scala-pekko-http-server
- samples/server/petstore/scalatra
- samples/server/petstore/scala-http4s-server
- samples/server/petstore/scala-cask
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 11
- name: Setup sbt launcher
uses: sbt/setup-sbt@v1
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.ivy2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/build.sbt') }}
- name: Build and test
working-directory: ${{ matrix.sample }}
run: sbt -v +test

View File

@@ -1,52 +0,0 @@
name: Samples Scala/sbt
on:
push:
paths:
- 'samples/client/petstore/scala**'
- 'samples/server/petstore/scala**'
- 'samples/client/petstore/java/okhttp-gson/**'
pull_request:
paths:
- 'samples/client/petstore/scala**'
- 'samples/server/petstore/scala**'
- 'samples/client/petstore/java/okhttp-gson/**'
jobs:
build:
name: Build sbt/Scala client, servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- 'samples/client/petstore/java/okhttp-gson'
- samples/client/petstore/scalaz
- samples/client/petstore/scala-pekko
#- samples/client/petstore/scala-sttp # won't pass while the same tests in circleci pass
# servers
- samples/server/petstore/scala-lagom-server
- samples/server/petstore/scala-play-server
- samples/server/petstore/scala-akka-http-server
- samples/server/petstore/scala-pekko-http-server
- samples/server/petstore/scalatra
- samples/server/petstore/scala-finch # cannot be tested with jdk11
- samples/server/petstore/scala-http4s-server
- samples/server/petstore/scala-cask
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.ivy2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/build.sbt') }}
- name: Build and test
working-directory: ${{ matrix.sample }}
run: sbt -v +test

View File

@@ -4,11 +4,25 @@ on:
push:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-api-response-examples
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
- samples/server/petstore/springboot-petstore-with-api-response-examples
- samples/server/petstore/spring-boot-oneof-sealed
- samples/openapi3/server/petstore/spring-boot-oneof-interface
pull_request:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-api-response-examples
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
- samples/server/petstore/springboot-petstore-with-api-response-examples
- samples/server/petstore/spring-boot-oneof-sealed
- samples/openapi3/server/petstore/spring-boot-oneof-interface
jobs:
build:
name: Build Java Spring (JDK17)
@@ -20,11 +34,17 @@ jobs:
# clients
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-api-response-examples
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
- samples/server/petstore/springboot-petstore-with-api-response-examples
- samples/server/petstore/spring-boot-oneof-sealed
- samples/openapi3/server/petstore/spring-boot-oneof-interface
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 17
@@ -38,4 +58,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -25,43 +25,45 @@ jobs:
sample:
# clients
- samples/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-auth
- samples/client/petstore/spring-cloud-date-time
- samples/client/petstore/spring-cloud-deprecated
- samples/client/petstore/spring-cloud-tags
- samples/openapi3/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud-async
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-http-basic
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
- samples/openapi3/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs-skip-default-interface
- samples/openapi3/client/petstore/spring-cloud-async
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
- samples/client/petstore/spring-cloud-tags
- samples/client/petstore/spring-cloud-auth
- samples/client/petstore/spring-cloud-deprecated
# servers
- samples/server/petstore/springboot
- samples/openapi3/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-reactive
- samples/server/petstore/springboot-reactive-noResponseEntity
- samples/server/petstore/springboot-implicitHeaders
- samples/openapi3/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-delegate
- samples/server/petstore/springboot-delegate-no-response-entity
- samples/openapi3/server/petstore/springboot-delegate
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/spring-boot-nullable-set
- samples/server/petstore/spring-boot-defaultInterface-unhandledException
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/springboot-virtualan
- samples/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-builtin-validation
- samples/server/petstore/springboot-delegate
- samples/server/petstore/springboot-delegate-no-response-entity
- samples/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-implicitHeaders-annotationLibrary
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-reactive
- samples/server/petstore/springboot-reactive-noResponseEntity
- samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8
- samples/server/petstore/springboot-spring-pageable-delegatePattern
- samples/server/petstore/springboot-spring-pageable-without-j8
- samples/server/petstore/springboot-spring-pageable
- samples/server/petstore/springboot-spring-provide-args
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-virtualan
- samples/openapi3/server/petstore/spring-boot-oneof-interface
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 8
@@ -75,4 +77,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

Some files were not shown because too many files have changed in this diff Show More