Compare commits

...

140 Commits

Author SHA1 Message Date
William Cheng
13f04829c7 update tests 2023-12-15 10:36:36 +08:00
William Cheng
7184c2a689 remove reserved word check in lambda 2023-12-15 09:31:04 +08:00
renaud-twd
a9179e95dd fix: java apache httpclient should support UTF-8 by default (#17395)
* fix(java): apache-httpclient serialization error

fixes following related issue:
https://github.com/OpenAPITools/openapi-generator/issues/12797

* docs(java): update samples and docs
2023-12-15 09:01:10 +08:00
Beppe Catanese
0062d1c8da Do not escape request name (#17394) 2023-12-15 09:00:32 +08:00
dependabot[bot]
bc2443ecb0 Bump actions/download-artifact from 3 to 4 (#17400)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  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>
2023-12-15 08:59:24 +08:00
dependabot[bot]
c49701b804 Bump actions/upload-artifact from 3 to 4 (#17401)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  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>
2023-12-15 08:59:09 +08:00
Ween Jiann
b7f31ddda4 Regenerate (#17389) 2023-12-13 22:17:15 +08:00
William Cheng
56e2c49e07 update doc 2023-12-13 16:13:31 +08:00
William Cheng
734b922381 [scala-akka-client] Scala Akka client does not support arbitrary query string parameters (#17386)
* Add check for input if is Map type

* Update Pet samples

* Add PetApi support for filter by Pet property

* Clean up

* update samples

* remove manual test

---------

Co-authored-by: ameenhaq <ameenhaq79@gmail.com>
2023-12-13 16:03:48 +08:00
Tiffany Marrel
42f72192ca add security feature AWSV4Signature to documentation (#15603) 2023-12-13 15:07:18 +08:00
hhomar
28b2c75ac8 Fix issue with URI type in the enum (#17126)
* fix(java): fix URI inner enum for gson

* fix(java): fix URI enum for gson

* fix(java): fix URI enum for microprofile

* fix(java): fix URI import for native enum

* fix(java): add tests for URI enum
2023-12-13 14:19:51 +08:00
rubiniselvaraj
4c4388e3c8 Fix for handling error in resttemplate (#17381)
* Fix with handling error

* Fix with handling error
2023-12-13 12:56:02 +08:00
William Cheng
64c85a8fee Fix NPE in codegen security (#17378)
* fix npe in codegen security

* add new test file
2023-12-12 22:33:20 +08:00
Hui Yu
2a27fd51a7 [C][Client] Use int* as int or bool type function parameter (#17179) 2023-12-12 22:11:13 +08:00
rubiniselvaraj
a792a79059 Implementing retry logic to restTemplate (#17375)
* Implementing retry logic to restTemplate

* Fixing the issue

* Adding import

* Fix

* Fix

* minor update, add tests

* fix

* Adding the maxRetryAttempt, threadWaitTime as additionalProperty

* Updating the apiClient

* Removing reduntant variable

* Generating samples

* Fixing format

---------

Co-authored-by: Rubini <rubini@Rubinis-MacBook-Air.local>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-12 22:01:36 +08:00
Aliaksei
809b3331a9 [4947][java]: adds support for validation of primitives in arrays (#17165)
* [4947][java]: adds support for validation of primitives in arrays

* [4947][java]: prevents generation '@Valid' for Object

* [4947][java]: test against different codegens and stick to primitive

* [4947][java]: code review

* [4947][java]: enhance getBeanValidation

* [4947][java]: adds email

* [4947][java]: removes unnecessary override

* [4947][java]: adds postProcessResponseWithProperty

* [4947][java]: adds missing import {{javaxPackage}}.validation.Valid

* [4947][java]: adds missing useBeanValidation

* [4947][java]: fix use rootJavaEEPackage for helidon
2023-12-11 20:55:38 +08:00
William Cheng
d4d5196907 Better handling of any type in v3.1 spec (#17370)
* fix NPE in the example generator

* fix any type in 3.1 spec

* use log error instead
2023-12-11 17:13:55 +08:00
William Cheng
62399b1897 add a test for SecretStr in the python client (#17364) 2023-12-11 13:18:36 +08:00
Maciej Lewiński
51c8be3f8c [csharp][generichost] Handle obsolete params and methods (#17344)
* [csharp][generichost] Handle obsolete params and methods

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-11 13:17:26 +08:00
Stefan Koppier
7f05c1f41d [kotlin-client] New generator: kotlin-jvm-spring-restclient (#17366)
* Created kotlin jvm spring restclient

* Fixed kotlin jvm-spring-restclient

* Fixed earlier problems

* Fixed earlier problems

* Updated kotlin.md
2023-12-11 12:49:36 +08:00
Beppe Catanese
9eb5882f94 OpenAPI 3.1.0 Add webhooks support (#17174)
* Add support for webhooks

* Test webhook generation with Go Gin server

* Generate samples

* Removing \t

* Remove tabs
2023-12-11 11:21:23 +08:00
Csaba Kozák
8bb9a10b9f [kotlin-client][multiplatform] use shortcut to access jsMain as well (#17358) 2023-12-10 15:15:40 +08:00
TAKAHiRO TOMiNAGA
004c7e8c8d [Style][Go] standardize the format of mustache (tiny change) (#17363)
* fix: change indent style to tab in the mustache to generate Go code

* docs: standardize the language names for code blocks

* docs: change indent style to tab in the code blocks

* update: regenerate samples

* `./bin/generate-samples.sh ./bin/configs/*.yaml`
2023-12-10 10:13:49 +08:00
William Cheng
10da7a3c5a [Ruby] add file download tests (#17362)
* add new ruby echo api clients

* add tests for ruby faraday file download

* add file download test to ruby Typhoeus

* add ruby workflow, add tests for ruby httpx

* update

* fix
2023-12-09 22:05:27 +08:00
William Cheng
dd36fa09f8 update logbak core to newer version (#17360) 2023-12-09 21:59:50 +08:00
William Cheng
5daa145d25 check boolean value returned by createFile (#17359) 2023-12-09 21:58:53 +08:00
Tomohiko Ozawa
a21e68182a enable scopes for all security scheme types (#17083) 2023-12-09 21:58:01 +08:00
Daniel
583184888f Ruby Client for Faraday: fix file downloading (#17333)
* Ruby Client for Faraday: fix file downloading

In MR #16876, a bug was introduced that causes file downloading to fail
for the Faraday adapter.

This commit fixes the obvious missing parameter for the method
call to download_file() and the missing variable `request` for saving the
response value of the call to build_request().

Signed-off-by: Daniel Schnell <dschnell@grammatek.com>

* Add automatically generated changes.

---------

Signed-off-by: Daniel Schnell <dschnell@grammatek.com>
2023-12-09 10:49:00 +08:00
Omar Osman
351f764746 Fix broken link to csharp-netcore generator (#17322)
* Fix broken link to csharp-netcore generator

The example source URL of the csharp-netcore generator pointed to the master version of the repo, but the generator has been renamed or removed and the URL is broken. I updated the link to the latest pre 5.0.0 version, since the text talks about pre 5.0.0 version of the openapi generator.

* Update link to point to csharp generator
2023-12-08 22:16:44 +08:00
Erik Booij
95af601586 fix: go-server unresolved function NewstringFromValue for enums (#17316)
* fix: go-server unresolved function NewstringFromValue for enums

* fix: go-server change isRef to isEnumRef in controller-api template
2023-12-08 22:07:59 +08:00
Dennis Melzer
e37decff7b Add Java Optional for POJOs in JavaSpring templates (#17202)
* Add optional parameter for request body

* Adapt Test

* Add test

* Format code

* Remove extra method

* Add optional for pojos

* Add optional for pojos

* Add bean validation for Optional

* Add default values + test

* Rename test
2023-12-08 21:46:13 +08:00
Vladislav Bauer
62462354ca [csharp] Support 420 HTTP code (#17207)
* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code
2023-12-08 21:35:03 +08:00
Gintautas Miselis
c159abfdad [typescript-axios] Allow enum attribute to be nullable (#17265)
Fixes #17264
2023-12-08 13:27:33 +01:00
mymx2
e37cf901a8 fix(typescript-axios): use baseURL of (custom) axios instance (#17296)
Co-authored-by: ddd <ddd>
2023-12-08 13:27:08 +01:00
Leonid Olevskii
3762277206 Use .Content of for accessing response body in powershell (#17342) 2023-12-07 22:50:33 +08:00
dependabot[bot]
1b2917d69f Bump actions/setup-python from 4 to 5 (#17338)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  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>
2023-12-07 11:28:14 +08:00
dependabot[bot]
f593adff18 Bump actions/setup-go from 4 to 5 (#17337)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 4 to 5.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v4...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>
2023-12-07 11:28:01 +08:00
William Cheng
2c9fbf81a7 add enum name mapping to ada codegen (#17299) 2023-12-06 17:50:03 +08:00
Robert Schweizer
6a43a371f1 fix: Configure python urllib3 connection pool size (#17323)
This was removed in #16802, but using a higher value than 1,
or at least making this configurable makes complete sense.

Without this, we get a lot of these log messages:

[ WARNING] Connection pool is full, discarding connection:
2023-12-06 15:49:10 +08:00
William Cheng
6230248716 update php samples 2023-12-06 14:56:53 +08:00
Viktor Szépe
33149569a3 Fix PHP constructor docblock (#17324) 2023-12-06 14:51:52 +08:00
devhl-labs
0ab9f74cfb use keyParamName (#17328) 2023-12-06 14:49:55 +08:00
Viktor Szépe
39d5b4ebf9 Replace stray TAB characters with spaces (#17311)
* Replace stray TAB characters with spaces

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-05 18:01:25 +08:00
William Cheng
391df3b81c update samples 2023-12-05 15:36:33 +08:00
Viktor Szépe
889c6fe7a1 Fix non-four indents in PHP templates (#17309) 2023-12-05 15:27:43 +08:00
Viktor Szépe
0ee662b515 Fix parameter names in Configuration (#17305) 2023-12-05 15:26:52 +08:00
dependabot[bot]
d9b795171a Bump actions/setup-dotnet from 3.2.0 to 4.0.0 (#17312)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 3.2.0 to 4.0.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v3.2.0...v4.0.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  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>
2023-12-05 15:25:54 +08:00
Beppe Catanese
e8e7a210c3 Skip escaping path parameter description (#17304) 2023-12-05 15:21:18 +08:00
William Cheng
cdb020d044 add enum name mapping option to swift generators (#17297) 2023-12-05 15:06:31 +08:00
William Cheng
bbd0ce38be add enum mapping option to dart generators (#17298) 2023-12-04 12:32:36 +08:00
William Cheng
ac45e3ddab add enum name mapping feature to the rust generators (#17290) 2023-12-04 10:53:11 +08:00
William Cheng
b19bc59c6a add enum name mapping feature to go generators (#17289) 2023-12-04 10:52:58 +08:00
devhl-labs
2967b33ab6 [csharp][generichost] Added enum for api key names (#17295)
* added enum

* added enum
2023-12-04 10:44:12 +08:00
Martin Delille
95340d5264 [cpp-qt-client] pass QString by const reference instead of by value (#16793)
* [cpp-qt-client] pass QString by const reference instead of by value

* Add another signal instead of changing its signature

* Bump qt version

* Fix CODEOWNERS

* Try to fix workflow

* use v3

* Remove openssl from windows build

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-03 18:14:22 +08:00
Beppe Catanese
62faa53373 [POSTMAN] Include header description (#17292)
* Include header description

* Generate samples
2023-12-03 08:06:09 +08:00
Beppe Catanese
6657b2c5c2 [POSTMAN] Query parameter description (#17291)
* Include query parameter description

* Generate samples
2023-12-03 08:05:44 +08:00
YusukeOba
64e5266556 [kotlin-client] Fixed an issue where compilation fails when an enum of type integer is used as a query parameter (#17178) 2023-12-02 18:54:34 +08:00
Beppe Catanese
ac78f1e85b [POSTMAN] Enabling required query parameters (#17281)
* Enable required query parameters

* Generate samples
2023-12-02 17:41:05 +08:00
William Cheng
f834519aeb move config file to unmaintained to avoid samples outdated errors 2023-12-01 11:29:09 +08:00
SAIA-Basseldonk
8911740924 [BUGFIX][Rust] Array with unique enum items no longer causes mismatched types error (#17197)
* check args to fn new for uniqueItems

* Added model with unique items for template testing

* build the project and update samples

* Removed testcase from fake petstore spec
2023-11-30 22:08:37 +08:00
William Cheng
f033b11408 Update JAX-RS client samples (#17262)
* update jaxrs client samples

* move configs
2023-11-30 21:39:42 +08:00
Dennis Melzer
939ffdd73c Add bean validation for primitive container type 17450 (#17157)
* Add optional parameter for request body

* Adapt Test

* Add test

* Format code

* Remove extra method

* Format code
2023-11-30 20:28:45 +08:00
William Cheng
4c4d0e485a [java] Update logback to newer versions (#17259)
* update logback to newer versions

* update
2023-11-30 18:51:46 +08:00
Beppe Catanese
4a1db3f1e6 [JAVA] Jersey3 deprecate class attribute (#17223)
* Deprecate attribute

* Generate samples
2023-11-30 13:50:30 +08:00
dependabot[bot]
77127ecf65 Bump actions/setup-java from 3 to 4 (#17252)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-java
  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>
2023-11-30 13:50:10 +08:00
Beppe Catanese
a8ac32238b [BUG] OpenAPI normalizer ignoring common parameters (#17236)
* Normalize common and operation parameters

* Test normalize schema v3.1
2023-11-30 10:31:31 +08:00
Beppe Catanese
fd58539fe9 [JAVA] Jersey3 deprecated field only deprecates getter method (#17221)
* Deprecate build and setter methods

* Generate samples
2023-11-29 21:54:17 +08:00
William Cheng
9184560597 remove unused CI files (#17217) 2023-11-29 18:05:46 +08:00
William Cheng
46dd87525e Add tests for max,min items in array (rust-server) (#17215)
* add tests for max,min items in array (rust server)

* fix both min, max items
2023-11-29 16:21:54 +08:00
Vance Shipley
14c12fc617 include {min|max}Items validation in rust-server models (#17201) 2023-11-29 15:06:59 +08:00
devhl-labs
fb429f7e94 [csharp][generichost] Do not assume api keys are interchangeable (#17185)
* allow multiple auth methods of same type

* allow multiple auth methods of same type

* allow multiple headers to have api keys

* removed commneted code

* fixed all but standard

* fixed standard
2023-11-28 10:54:34 +08:00
Xiangxuan Qu
8669646d99 fix: chsarp get file name from content disposition (#17183)
* fix: chsarp get file name from content disposition

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-11-27 20:32:41 +08:00
William Cheng
e2a8118c86 add enum name mapping support to php generators (#17195) 2023-11-27 20:26:28 +08:00
William Cheng
ac687657ba add enum name mapping feature to C# generators (#17194) 2023-11-27 20:26:12 +08:00
William Cheng
a117dd55f1 add enum name mapping feature to kotlin generators (#17193) 2023-11-27 20:25:15 +08:00
devhl-labs
4f82071502 [csharp][generichost] Honor the Set-Cookie header (#17186)
* allow multiple auth methods of same type

* allow multiple auth methods of same type

* allow multiple headers to have api keys

* remove changes for another pr

* resolved conflicts, build samples

* fixed a casing issue

* fixed casing issue
2023-11-27 11:01:05 +08:00
Csaba Kozák
9fa3aec2e0 [kotlin-client][multiplatform] update dependency versions (#17180) 2023-11-26 21:58:22 +08:00
devhl-labs
3fa21b5603 do not inherit additional properties (#17140) 2023-11-26 21:49:00 +08:00
devhl-labs
ad95d551ed [csharp][generichost] Allow multiple auth methods of same type (#17129)
* allow multiple auth methods of same type

* allow multiple auth methods of same type
2023-11-26 21:46:48 +08:00
devhl-labs
8bea7f7377 handled nullable inner enums better (#17128) 2023-11-26 21:45:25 +08:00
William Cheng
4c6dbfe7d6 fix build errors in jdk 11 (#17177) 2023-11-24 17:40:13 +08:00
dependabot[bot]
7c551e65dd Bump s4u/setup-maven-action from 1.10.0 to 1.11.0 (#17175)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.10.0...v1.11.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>
2023-11-24 12:54:35 +08:00
William Cheng
0d2a01611c update samples 2023-11-23 11:46:06 +08:00
William Cheng
0dbc108d62 Add openapiGeneratorIgnoreList option to pre-populate .openapi-generator-ignore (#17164)
* add openapiGeneratorIgnoreList option to pre-populate .openapi-generator-ignore

* minor fix

* better code format

* add tests
2023-11-23 11:10:29 +08:00
William Cheng
a93bab077f Add openapi-normalizer rule to set tags to operationId (#17161)
* add normalizer rule to set tags to operationId

* update
2023-11-23 11:09:09 +08:00
William Cheng
aaed846f5f Update Dockerfile (cli, online) to use eclipse-temurin:17.0.3_7-jre-focal (#17139)
* add tests for openapi-generator-cli dockerfile

* trigger workflow

* add cp

* restore

* use eclipse-temurin:17.0.3_7-jre-focal

* update dockerfile

* update image to newer version
2023-11-23 11:08:31 +08:00
Rick Dutour Geerling
917d671d2c Fix typescript-fetch to support nullable enum properties (#17153) 2023-11-22 18:44:08 +00:00
Csaba Kozák
3f033c0974 [kotlin-client][multiplatform] fix iosSimulatorArm64 source sets (#17167) 2023-11-22 17:57:51 +00:00
Csaba Kozák
ab0b44a1c4 [kotlin-client] add support for kotlinx-datetime (#17166)
Closes #14490
2023-11-22 17:52:37 +00:00
William Cheng
7bf9534034 update option description (java client) 2023-11-21 12:29:43 +08:00
Vignesh
87b86c78dc feat: Support useSingleRequestParameter feature for java microprofile client generation (#17072) 2023-11-21 11:56:11 +08:00
Makoto Suzuki
baaf759440 [python-fastapi]Add an alias keyword parameter for Query parameter (#17111)
* add alias to endpoint_definition

* regenerate source code
2023-11-21 11:34:43 +08:00
Pat Buxton
9970c06f8c Adds basic retries to rest API requests for Python asyncio (#17014)
* Adds basic retries to API requests

 * This mimics the basic retries performed by urllib3 in the sync version

* update samples

* Only use retry client if number of retries is specified in the config

* Reorganize

* Remove class attribute

* close retry_client

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-11-21 10:42:34 +08:00
Max-Julian Pogner
489d369ee7 README: update url for maven-wrapper (#17142)
According to information posted at the old url https://github.com/takari/maven-wrapper (most recent commit 2b2c15adc38acfcf17533f5d7aff220ba87256ba as of this writing),
the new official project url of maven wrapper now is https://maven.apache.org/wrapper/
2023-11-20 11:29:43 +08:00
William Cheng
0401c46147 Fix missing objects when defining inline anyOf, or oneOf (#17141)
* better handling of composed schema in inline model resolver

* better handling of example
2023-11-20 10:24:57 +08:00
William Cheng
6d93b0ec83 Fix handling of composed schema in inline model resolver (#17138)
* fix handling of composed schema in inline model resolver

* update samples
2023-11-19 23:24:49 +08:00
William Cheng
8e36014ae6 update samples 2023-11-19 17:36:25 +08:00
William Cheng
97704841c5 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-11-19 17:31:36 +08:00
Barak Amar
63c8d0e071 python docs templates minor fixes (#17133) 2023-11-19 17:29:59 +08:00
William Cheng
186fde250b [spring-cloud] add http basic test (#17135)
* update samples

* add tests for spring cloud http basic

* fix path

* update samples
2023-11-19 16:07:28 +08:00
William Cheng
bf6145506d update samples 2023-11-19 15:26:38 +08:00
Vedant Chokshi
4fd5603075 Fix JavaSpring clientConfiguration's ConditionalOnProperty import (#17027) 2023-11-19 15:22:04 +08:00
greenbourne277
685d9445c2 [Kotlin] fix: match tags of closing brackets with opening ones (#12976) (#17117)
Trying to generate Kotlin code for CookieAuth will result in a malformed
ApiClient.kt for function updateAuthParams. The code block has a closing
bracket too much.

Co-authored-by: Christian Bay <christian.bay@posteo.net>
2023-11-19 14:44:31 +08:00
Robert Schweizer
75ff110449 [python] Some cleanup of samples folder (#17127)
* Delete sample folders of discontinued clients

* Remove duplicate python-flask server sample

The python-flask sample actually lives in samples/server/petstore/python-flask.

* Move hand-written test to "tests" folder

Now, "test" only contains generated stubs and all hand-written tests are in "tests".

* Delete left-over files in Python samples

These are not created by the generators (anymore) and not hand-written
for testing.

* Regenerate test file to fix import error
2023-11-19 14:43:34 +08:00
William Cheng
1da970b3b1 fix comparison using equals (#17132) 2023-11-19 14:41:39 +08:00
Xiangxuan Qu
a577db895c fix[csharp]: The Deserialize should use the ClientUtils to handle the headers. (#16604) 2023-11-18 14:41:17 +08:00
William Cheng
8258cde110 [jmeter] Fix exception when operationId has $ (#17125)
* fix exception when operationId has $ in jmeter

* add tests
2023-11-18 14:38:19 +08:00
Tomohiko Ozawa
4bedeef643 [Java][apache-httpclient][feign][okhttp-gson] Enable access token refresh (#17086)
* add setter of bearer token supplier

* run generate-samples.sh

* add test of bearer auth
2023-11-18 12:46:18 +08:00
Petar Karadzhov
dc4c72c85c [BUG] [dart-dio] Support for Analyzer configuration options changes in Dart 3 (#17099) 2023-11-18 12:46:03 +08:00
Csaba Kozák
3e5049565d [kotlin-client][multiplatform] add iosSimulatorArm64 target (#17058) 2023-11-18 10:47:23 +08:00
Robert Schweizer
5e7f2f274c fix: Annotate free-form object as dict in Python (#17082) 2023-11-18 10:46:01 +08:00
Artur Neumann
0098d56a6a [PHP-NG] allow 'object' type in serializer (#17118) 2023-11-18 10:41:36 +08:00
William Cheng
eabd9401bf fix rust client test (#17124) 2023-11-18 10:37:54 +08:00
Markus Lenger
1ce95ff41e Map type date to correct rust type NaiveDate (#17095)
* Fix clippy errors (rustc 1.73.0)

* Add feature docker-in-docker

* Fix mapping of "date"

See issue #9769

The type
  type: string
  format: date
was mapped to DateTime<Utc> which violates the OpenAPI spec

see https://swagger.io/docs/specification/data-models/data-types/
2023-11-18 10:33:45 +08:00
Artur Neumann
5c69284928 [PHP-NG] convert data to string before giving it to preg_match (#17119) 2023-11-18 10:17:34 +08:00
Artur Neumann
3552935a5b [PHP-NG] don't nullify mixed types (#17116) 2023-11-18 10:15:14 +08:00
Aurélien Joga
1f5b590d5a Python-server workflow fixes + pytest (#17060)
* Fix referenced path for tests

* Explicit dependencies

Flask 2.3 has breaking changes

* Marks all async tests with pytest.mark.asyncio

Otherwise they are skipped by pytest and coverage is zero

* Fix path for pytest

On suggestion from https://github.com/OpenAPITools/openapi-generator/pull/17060#discussion_r1392666369
2023-11-18 10:10:10 +08:00
Emanuele Saccomandi
a2c1b02840 added required fields to zapier models generation (#17115) 2023-11-18 10:09:17 +08:00
Artur Neumann
f81d44bb29 [PHP-NG] check if json_decode was able to decode response (#17120) 2023-11-18 10:08:32 +08:00
William Cheng
195f27de1f update rest-assured dep to newer versions (#17107) 2023-11-17 10:35:54 +08:00
William Cheng
07620cebe2 update webclient dep to newer version, add tests (#17106) 2023-11-17 10:34:22 +08:00
William Cheng
dcccd06a9a Revert "Use JDK17 images in Dockerfile (#17076)" (#17104)
This reverts commit bae20c1887.
2023-11-16 23:35:11 +08:00
William Cheng
bae20c1887 Use JDK17 images in Dockerfile (#17076)
* use jdk17 images in Dockerfile

* use amazoncorretto:17.0.8-alpine3.18
2023-11-16 10:16:04 +08:00
William Cheng
d9920a5b81 update samples 2023-11-16 00:56:05 +08:00
Tomohiko Ozawa
37451fa569 [Java][resttemplate] Add test for bearer auth (#17081)
* add bearer auth API to echo-api

* run generate-samples.sh

* add resttemplate echo-api sample

* add bearer auth test

* remove @Ignore
2023-11-16 00:38:49 +08:00
Robert Schweizer
e47e7041f7 [python][Feat] Deserialize error responses (#17038)
* refactor: Clean up _response_types_map formatting

It matches black's behavior of having trailing commas now.

* test: Add test to reproduce #16967

* fix: deserialize responses even if no returnType

Closes #16967

* refactor: Simplify ApiException subclasses

* refactor: Move exception subtype choice to ApiException

* feat: Deserialize error responses and add to exceptions

* test: Add for error responses with model
2023-11-16 00:37:04 +08:00
Jonas Heschl
69fcfeff38 Add passgenau-digital and we-make.ai as OpenAPI Generator users (#17077)
* Add passgenau digital logo

* Add passgenau digital to users

* Add wemakeai logo

* Add we-make.ai to users
2023-11-15 21:34:16 +08:00
devhl-labs
dd4143b75e [csharp] Added .net8 (#17075)
* added .net8

* change .net version in the github action

* upgrade manual sample
2023-11-15 15:35:02 +08:00
Segev Finer
a460b7ea87 [typescript-axios] Upgrade to axios@^1 (#14518)
* [typescript-axios] Upgrade to axios@^1

* Try fixing tests
2023-11-14 15:06:15 +01:00
Robert Schweizer
61fde48501 fix: Disable warnings for model_* properties (#17066)
For model classes with model_something fields, pydantic raises a warning by default:
`Field "model_something" has conflict with protected namespace "model_".`.

These warnings make no sense here, because most users of the generator have established APIs
that they cannot change to conform to pydantic's safety rules.

Pydantic will raise an error if we ever conflict with a current attribute like `model_dump`.
2023-11-14 21:50:35 +08:00
William Cheng
6be4d2e082 update algoria settings (#17064) 2023-11-14 14:18:55 +08:00
Rolf Rando
2ca958642b Add socks5 proxy support for OpenAPI generated python client (#16918)
* add socks5 proxy support (requires additional import)

* updated examples

* build samples. updated to support pydantic python option

* rename sock to socks for correct protocol name

* add proxy headers for pydantic

* fixed param changes from conflict resolution
2023-11-14 12:28:05 +08:00
litetex
2c25443260 Update base image of Dockerfile (#17007)
* Update base image of Dockerfile

* Make github workflow "Docker tests" manually triggerable

* Don't possibly downgrade TLS version

* Update Dockerimage in ``run-in-docker.sh``

* Use Maven's non interactive mode inside workflow

* Don't spam log

* Use java 17

because it won't compile with 21

* Removed hard memory limit

as memory should be controlled by the container

* Update hub dockerfiles
2023-11-14 11:41:49 +08:00
OliverTetzTT
d1b148a7d3 [python] added handling for boolean content type (#17020)
* added handling for boolean content type

* adapted addition to newer version of template

* [python] updated samples
2023-11-14 11:30:10 +08:00
devhl-labs
8860d967c0 disabled GetHashCode generation (#17039) 2023-11-14 11:27:28 +08:00
William Cheng
322afeacd4 Retain deprecated in allOf schema handling (#17056)
* retain deprecated in allof schema handling

* add test
2023-11-14 11:22:36 +08:00
Charles Treatman
c8b3da7388 [Java][okhttp-gson] remove unreachable code from templates (#17057)
* Remove checks for jackson and jsonb from okhttp-gson templates

* regenerate samples
2023-11-14 11:13:28 +08:00
William Cheng
91ac75ff05 Fix NPE in request body (#17055)
* fix null request body NPE

* fix typo
2023-11-14 10:41:21 +08:00
William Cheng
6da264b0f8 update lombok dep to newer version (#17053) 2023-11-14 10:40:51 +08:00
William Cheng
53289263d9 Prepare v7.2.0 (#17050)
* update version to 7.2.0-SNAPSHOT

* update samples

* update doc
2023-11-13 18:53:20 +08:00
4461 changed files with 76157 additions and 19123 deletions

View File

@@ -9,7 +9,12 @@
"ghcr.io/devcontainers/features/node:1": {
"version": "lts"
},
"ghcr.io/snebjorn/devcontainer-feature/chromium:latest": {}
"ghcr.io/snebjorn/devcontainer-feature/chromium:latest": {},
"docker-in-docker": {
"version": "latest",
"moby": true,
"dockerDashComposeVersion": "v1"
}
},
// Configure tool-specific properties.
"customizations": {
@@ -44,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"
}
}

6
.github/CODEOWNERS vendored
View File

@@ -29,7 +29,5 @@ modules/openapi-generator-gradle-plugin/**/* @jimschubert
modules/openapi-generator-maven-plugin/**/* @jimschubert
# Martin Delille
/Users/martin/dev/clone/openapi-generator/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQtClientCodegen.java @martindelille
/Users/martin/dev/clone/openapi-generator/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQtAbstractCodegen.java @martindelille
/Users/martin/dev/clone/openapi-generator/modules/openapi-generator/src/main/resources/cpp-qt-client @martindelille
/Users/martin/dev/clone/openapi-generator/samples/client/petstore/cpp-qt @martindelille
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @martindelille
samples/client/petstore/cpp-qt/**/* @martindelille

View File

@@ -1,6 +1,7 @@
name: Docker tests
on:
workflow_dispatch:
push:
paths:
- Dockerfile
@@ -8,6 +9,8 @@ on:
- pom.xml
- modules/openapi-generator-online/pom.xml
- modules/openapi-generator-online/Dockerfile
- modules/openapi-generator-cli/pom.xml
- modules/openapi-generator-cli/Dockerfile
pull_request:
paths:
- Dockerfile
@@ -15,6 +18,8 @@ on:
- pom.xml
- modules/openapi-generator-online/pom.xml
- modules/openapi-generator-online/Dockerfile
- modules/openapi-generator-cli/pom.xml
- modules/openapi-generator-cli/Dockerfile
jobs:
build:
name: 'Build: Docker'
@@ -27,7 +32,7 @@ jobs:
shell: bash
run: |
sed -i 's/ -it / /g' run-in-docker.sh
./run-in-docker.sh mvn clean install
./run-in-docker.sh mvn -B clean install
- name: Build Dockerfile
shell: bash
@@ -37,3 +42,12 @@ jobs:
shell: bash
run: |
docker build modules/openapi-generator-online/ -t test
- name: Build and test modules/openapi-generator-cli
shell: bash
run: |
cp docker-entrypoint.sh ./modules/openapi-generator-cli
docker build modules/openapi-generator-cli/ -t cli-test
docker run --rm -v "${PWD}:/local" cli-test generate \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g go \
-o /local/out/go

View File

@@ -15,7 +15,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'

View File

@@ -31,7 +31,7 @@ jobs:
- samples/client/petstore/java/webclient-swagger2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -23,7 +23,7 @@ jobs:
uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
@@ -45,7 +45,7 @@ jobs:
${{ runner.os }}-gradle-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.10.0
uses: s4u/setup-maven-action@v1.11.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
@@ -57,7 +57,7 @@ jobs:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: matrix.java == '11' && matrix.os == 'ubuntu-latest'
with:
name: artifact
@@ -87,12 +87,12 @@ jobs:
- name: Check out code
uses: actions/checkout@v4
- name: Setup Maven
uses: s4u/setup-maven-action@v1.10.0
uses: s4u/setup-maven-action@v1.11.0
with:
java-version: 11
maven-version: 3.8.8
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: artifact
- name: Run Ensures Script

View File

@@ -15,7 +15,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'

View File

@@ -17,7 +17,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
@@ -41,7 +41,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@v3
uses: actions/upload-artifact@v4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
@@ -55,7 +55,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
@@ -79,7 +79,7 @@ jobs:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'
@@ -92,12 +92,12 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
@@ -131,12 +131,12 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target

View File

@@ -18,18 +18,16 @@ jobs:
matrix:
qt-version:
- '5.15.2'
- '6.4.2'
- '6.5.3'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
include:
- os: windows-latest
tools: 'tools_openssl_x64'
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: jurplel/install-qt-action@v4
- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt-version }}
tools: ${{ matrix.tools }}

View File

@@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -19,7 +19,7 @@ jobs:
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: 3.1.*
- name: Build

View File

@@ -43,9 +43,9 @@ jobs:
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '7.0.x'
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -19,7 +19,7 @@ jobs:
- samples/client/echo_api/csharp-restsharp/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Run echo server

View File

@@ -73,7 +73,7 @@ jobs:
- samples/client/petstore/csharp-restsharp-name-parameter-mappings
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -30,7 +30,7 @@ jobs:
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -17,7 +17,7 @@ jobs:
- samples/client/echo_api/go
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
- uses: actions/setup-go@v5
with:
go-version: "stable"
- name: Setup node.js

View File

@@ -25,7 +25,7 @@ jobs:
- samples/server/petstore/go-chi-server/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
- uses: actions/setup-go@v5
with:
go-version: "stable"
- run: go version

View File

@@ -22,7 +22,7 @@ jobs:
- samples/client/petstore/groovy
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -19,9 +19,10 @@ jobs:
- 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
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -6,11 +6,13 @@ on:
- samples/client/echo_api/java/apache-httpclient/**
- samples/client/echo_api/java/feign-gson/**
- samples/client/echo_api/java/okhttp-gson/**
- samples/client/echo_api/java/resttemplate/**
pull_request:
paths:
- samples/client/echo_api/java/apache-httpclient/**
- samples/client/echo_api/java/feign-gson/**
- samples/client/echo_api/java/okhttp-gson/**
- samples/client/echo_api/java/resttemplate/**
jobs:
build:
name: Build Java Client JDK8
@@ -23,9 +25,10 @@ jobs:
- samples/client/echo_api/java/apache-httpclient
- samples/client/echo_api/java/feign-gson
- samples/client/echo_api/java/okhttp-gson
- samples/client/echo_api/java/resttemplate
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -56,6 +56,7 @@ jobs:
- 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-with-xml
- samples/client/petstore/java/microprofile-rest-client-with-useSingleRequestParameter
- samples/client/petstore/java/apache-httpclient
- samples/client/petstore/java/feign
- samples/client/petstore/java/okhttp-gson-awsv4signature
@@ -72,7 +73,7 @@ jobs:
- samples/client/others/java/webclient-useAbstractionForFiles/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -22,7 +22,7 @@ jobs:
- samples/client/petstore/java/webclient-jakarta
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17

View File

@@ -24,7 +24,7 @@ jobs:
version: [17]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}

View File

@@ -30,7 +30,7 @@ jobs:
- samples/server/petstore/java-play-framework-no-wrap-calls
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -33,7 +33,7 @@ jobs:
#- samples/server/petstore/java-undertow/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -19,7 +19,7 @@ jobs:
- samples/server/petstore/jaxrs/jersey3
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -39,7 +39,7 @@ jobs:
- samples/server/petstore/jaxrs-spec-microprofile-openapi-annotations
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -8,6 +8,7 @@ on:
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/java/webclient-jakarta/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
@@ -20,6 +21,7 @@ on:
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/java/webclient-jakarta/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
@@ -38,6 +40,7 @@ jobs:
- samples/client/petstore/java-helidon-client/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
- samples/client/petstore/java/webclient-jakarta
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/java-helidon-server/mp
@@ -46,7 +49,7 @@ jobs:
- samples/client/petstore/spring-http-interface
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17

View File

@@ -31,6 +31,7 @@ jobs:
- samples/client/petstore/kotlin-jvm-volley
- samples/client/petstore/kotlin-moshi-codegen
- samples/client/petstore/kotlin-multiplatform
- samples/client/petstore/kotlin-multiplatform-kotlinx-datetime
- samples/client/petstore/kotlin-nonpublic
- samples/client/petstore/kotlin-nullable
- samples/client/petstore/kotlin-okhttp3
@@ -39,6 +40,7 @@ jobs:
- samples/client/petstore/kotlin-retrofit2-rx3
- samples/client/petstore/kotlin-string
- samples/client/petstore/kotlin-threetenbp
- samples/client/petstore/kotlin-kotlinx-datetime
- samples/client/petstore/kotlin-uppercase-enum
- samples/client/petstore/kotlin-default-values-jvm-okhttp3
- samples/client/petstore/kotlin-default-values-jvm-okhttp4
@@ -61,12 +63,13 @@ jobs:
- samples/client/petstore/kotlin-jvm-vertx-moshi
- samples/client/petstore/kotlin-jvm-spring-2-webclient
- samples/client/petstore/kotlin-jvm-spring-3-webclient
- samples/client/petstore/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
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -29,7 +29,7 @@ jobs:
# - samples/server/petstore/kotlin-spring-default/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17

View File

@@ -44,7 +44,7 @@ jobs:
#- samples/server/petstore/kotlin-vertx-modelMutable
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -24,7 +24,7 @@ jobs:
- "3.11"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup node.js

View File

@@ -33,7 +33,7 @@ jobs:
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
id: py
with:
python-version: ${{ matrix.python-version }}

View File

@@ -24,7 +24,7 @@ jobs:
- "3.11"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup node.js

View File

@@ -33,7 +33,7 @@ jobs:
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
id: py
with:
python-version: ${{ matrix.python-version }}

View File

@@ -3,10 +3,10 @@ name: Python Server
on:
push:
paths:
- samples/server/petstore/python-aiohttp/**
- samples/server/petstore/python-aiohttp-srclayout/**
pull_request:
paths:
- samples/server/petstore/python-aiohttp/**
- samples/server/petstore/python-aiohttp-srclayout/**
jobs:
build:
name: Test Python server
@@ -16,10 +16,10 @@ jobs:
matrix:
sample:
# servers
- samples/server/petstore/python-aiohttp/
- samples/server/petstore/python-aiohttp-srclayout/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.7'
- name: Test

43
.github/workflows/samples-ruby.yaml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Samples Ruby
on:
push:
paths:
- 'samples/client/echo_api/ruby-httpx/**'
- 'samples/client/echo_api/ruby-faraday/**'
- 'samples/client/echo_api/ruby-typhoeus/**'
pull_request:
paths:
- 'samples/client/echo_api/ruby-httpx/**'
- 'samples/client/echo_api/ruby-faraday/**'
- 'samples/client/echo_api/ruby-typhoeus/**'
jobs:
build:
name: Build Ruby
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/client/echo_api/ruby-httpx/'
- 'samples/client/echo_api/ruby-faraday/'
- 'samples/client/echo_api/ruby-typhoeus/'
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: actions/setup-ruby@v1
with:
ruby-version: 3.0
bundler-cache: true
- name: Install bundle
working-directory: ${{ matrix.sample }}
run: bundle install
- name: Run rspec
working-directory: ${{ matrix.sample }}
run: rspec

View File

@@ -32,7 +32,7 @@ jobs:
- samples/server/petstore/scala-finch # cannot be tested with jdk11
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -19,7 +19,7 @@ jobs:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17

View File

@@ -28,6 +28,7 @@ jobs:
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-http-basic
- samples/openapi3/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs-skip-default-interface
- samples/openapi3/client/petstore/spring-cloud-async
@@ -58,7 +59,7 @@ jobs:
- samples/server/petstore/springboot-spring-provide-args
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8

View File

@@ -14,7 +14,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11

View File

@@ -20,7 +20,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
@@ -39,7 +39,7 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.10.0
uses: s4u/setup-maven-action@v1.11.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8

View File

@@ -3,19 +3,19 @@
##
## You can build _just_ this part with:
## docker --target builder -t container-name:builder -f .hub.cli.dockerfile .
FROM maven:3.6.3-jdk-11-openj9 as builder
FROM maven:3-eclipse-temurin-17 as builder
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
COPY . ${GEN_DIR}
# Pre-compile openapi-generator-cli
RUN mvn -am -pl "modules/openapi-generator-cli" package
RUN mvn -B -am -pl "modules/openapi-generator-cli" package
## The final (release) image
## The resulting container here only needs the target jar
## and ca-certificates (to be able to query HTTPS hosted specs)
FROM openjdk:11.0.8-jre-slim-buster
FROM eclipse-temurin:17-jre
ENV GEN_DIR /opt/openapi-generator

View File

@@ -3,18 +3,18 @@
##
## You can build _just_ this part with:
## docker --target builder -t container-name:builder -f .hub.online.dockerfile .
FROM maven:3.6.3-jdk-11-openj9 as builder
FROM maven:3-eclipse-temurin-17 as builder
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
COPY . ${GEN_DIR}
# Pre-compile openapi-generator-online
RUN mvn -am -pl "modules/openapi-generator-online" package
RUN mvn -B -am -pl "modules/openapi-generator-online" package
## The final (release) image
## The resulting container here only needs the target jar
FROM openjdk:11.0.8-jre-slim-buster
FROM eclipse-temurin:17-jre
ENV GEN_DIR /opt/openapi-generator
ENV TARGET_DIR /generator

View File

@@ -1,98 +0,0 @@
kind: pipeline
type: docker
name: java11-test
steps:
# test Java 11 HTTP client
- name: java11-test
image: openjdk:11.0
commands:
- ./mvnw --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- ./mvnw --quiet verify -Psamples.droneio -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# test java native client
- ./mvnw clean test -f samples/client/petstore/java/native/pom.xml
- ./mvnw clean test -f samples/client/petstore/java/native-async/pom.xml
- ./mvnw clean test -f samples/openapi3/client/petstore/java/native/pom.xml
# test all generators with fake petstore spec (2.0, 3.0)
- /bin/bash bin/utils/test-fake-petstore-for-all.sh
# generate test scripts
- /bin/bash bin/tests/run-all-test
---
kind: pipeline
type: docker
name: nim-client-test
steps:
# test nim client
- name: nim-client-test
image: nimlang/nim
commands:
- (cd samples/client/petstore/nim/ && nim c sample_client.nim)
---
kind: pipeline
type: docker
name: protobuf-schema-test
steps:
# test protobuf schema generator
- name: protobuf-schema-test
image: nanoservice/protobuf-go
commands:
- protoc --version
- mkdir /var/tmp/go/
- cd samples/config/petstore/protobuf-schema
- protoc --go_out=/var/tmp/go/ services/*
- protoc --go_out=/var/tmp/go/ models/*
---
kind: pipeline
type: docker
name: aspnetcore-test
steps:
# test aspnetcore 3.x
- name: aspnetcore-test
image: mcr.microsoft.com/dotnet/core/sdk:3.1
commands:
- (cd samples/server/petstore/aspnetcore-3.1/ && /bin/sh build.sh)
- (cd samples/server/petstore/aspnetcore-3.0/ && /bin/sh build.sh)
---
kind: pipeline
type: docker
name: ocaml-test
steps:
# test ocaml petstore client
- name: ocaml-test
image: ocaml/opam2:4.07
commands:
- sudo apt-get -y install m4
- cd samples/client/petstore/ocaml
- opam install ppx_deriving_yojson cohttp ppx_deriving cohttp-lwt-unix
- opam pin add ocaml-migrate-parsetree 1.3.1
- eval $(opam env)
- sudo chmod -R 777 .
- dune build --build-dir=./_build
---
kind: pipeline
type: docker
name: haskell-client-test
steps:
# test haskell client
- name: haskell-client-test
image: haskell:8.10.4
commands:
- (cd samples/client/petstore/haskell-http-client/ && stack --allow-different-user --install-ghc --no-haddock-deps haddock --fast && stack --allow-different-user test --fast)
---
kind: pipeline
type: docker
name: erlang
steps:
# test erlang client and server
- name: erlang
image: erlang:alpine
commands:
- (cd samples/client/petstore/erlang-client && rebar3 compile)
- (cd samples/client/petstore/erlang-proper && rebar3 compile)
# comment out as the tests pass locally but not in the CI
#- (cd samples/server/petstore/erlang-server && rebar3 compile)

View File

@@ -1,37 +0,0 @@
sudo: required
language: objective-c
osx_image: xcode10.3
before_install:
- export SW=`pwd`
- rvm list
#- rvm use 2.3.3
- gem environment
- gem install bundler -N
- gem install cocoapods -v 1.2.1 -N
- gem install xcpretty -N
- pod --version
# comment out below to avoid errors
#- pod repo update
#- pod setup --silent > /dev/null
#- mkdir -p ~/.local/bin
#- export PATH=$HOME/.local/bin:$PATH
## start local petstore server
#- git clone -b docker --single-branch https://github.com/wing328/swagger-samples
#- cd swagger-samples/java/java-jersey-jaxrs
#- sudo mvn jetty:run &
#- cd $SW
# show host table to confirm petstore.swagger.io is mapped to localhost
- cat /etc/hosts
# show java version
- java -version
# show brew version
- brew --version
# show xcpretty version
- xcpretty -v
# show go version
- go version
script:
# run integration tests defined in maven pom.xml
- mvn --no-snapshot-updates -q --batch-mode verify -Psamples.ios -Dmaven.javadoc.skip=true

View File

@@ -1,29 +0,0 @@
dist: trusty
sudo: required
language: java
addons:
apt:
packages:
- openjdk-6-jdk
jdk: openjdk6
cache:
directories:
- $HOME/.m2
- $HOME/.ivy2
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
install:
- jdk_switcher use openjdk6
- java -version
- curl -s "https://get.sdkman.io" | bash
- source "$HOME/.sdkman/bin/sdkman-init.sh"
- sdk version
- sdk install gradle 2.9
- sdk list gradle
- sdk version
- gradle --version
script:
- cd samples/client/petstore/java/jersey2-java6 && gradle test

View File

@@ -1,4 +1,4 @@
FROM maven:3.6.3-jdk-11-openj9
FROM maven:3-eclipse-temurin-17
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
@@ -20,7 +20,7 @@ COPY ./modules/openapi-generator ${GEN_DIR}/modules/openapi-generator
COPY ./pom.xml ${GEN_DIR}
# Pre-compile openapi-generator-cli
RUN mvn -am -pl "modules/openapi-generator-cli" package
RUN mvn -B -am -pl "modules/openapi-generator-cli" package
# This exists at the end of the file to benefit from cached layers when modifying docker-entrypoint.sh.
COPY docker-entrypoint.sh /usr/local/bin/

View File

@@ -15,7 +15,7 @@
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.1.0`):
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.2.0`):
[![Build Status](https://api.travis-ci.com/OpenAPITools/openapi-generator.svg?branch=master&status=passed)](https://app.travis-ci.com/github/OpenAPITools/openapi-generator/builds)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=master&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
@@ -120,8 +120,8 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 7.1.0 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.1.0-SNAPSHOT/) | 18.10.2023 | Minor release with breaking changes (with fallback) |
| [7.0.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.0.1) (latest stable release) | 18.09.2023 | Patch release (enhancements, bug fixes, etc) |
| 7.2.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.2.0-SNAPSHOT/) | 15.12.2023 | Minor release with breaking changes (with fallback) |
| [7.1.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.1.0) (latest stable release) | 13.11.2023 | Minor release with breaking changes (with fallback) |
| [6.6.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v6.6.0) | 11.05.2023 | Minor release with breaking changes (with fallback) |
| [5.4.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.4.0) | 31.01.2022 | Minor release with breaking changes (with fallback) |
| [4.3.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.3.1) | 06.05.2020 | Patch release (enhancements, bug fixes, etc) |
@@ -184,16 +184,16 @@ See the different versions of the [openapi-generator-cli](https://search.maven.o
<!-- RELEASE_VERSION -->
If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 11 runtime at a minimum):
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.1.0/openapi-generator-cli-7.1.0.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar -O openapi-generator-cli.jar
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.1.0/openapi-generator-cli-7.1.0.jar -O openapi-generator-cli.jar
```
For **Windows** users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g.
```
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.1.0/openapi-generator-cli-7.1.0.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -256,7 +256,7 @@ To build from source, you need the following installed and available in your `$P
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/) (optional)
After cloning the project, you can build it from source using [maven wrapper](https://github.com/takari/maven-wrapper):
After cloning the project, you can build it from source using [maven wrapper](https://maven.apache.org/wrapper/):
- Linux: `./mvnw clean install`
- Windows: `mvnw.cmd clean install`
@@ -996,6 +996,7 @@ Here is a list of template creators:
* Kotlin (MultiPlatform): @andrewemery
* Kotlin (Volley): @alisters
* Kotlin (jvm-spring-webclient): @stefankoppier
* Kotlin (jvm-spring-restclient): @stefankoppier
* Lua: @daurnimator
* N4JS: @mmews-n4
* Nim: @hokamoto

View File

@@ -13,3 +13,5 @@ parameterNameMappings:
additionalProperties:
modelPackage: Samples.Petstore
projectName: Petstore
enumNameMappings:
sold: UNAVAILABLE

View File

@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true

View File

@@ -10,3 +10,4 @@ additionalProperties:
disallowAdditionalPropertiesIfNotPresent: false
useSourceGeneration: true
packageName: UseSourceGeneration
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: false
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: netstandard2.0
equatable: true

View File

@@ -10,3 +10,4 @@ additionalProperties:
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0
equatable: true

View File

@@ -7,3 +7,4 @@ additionalProperties:
targetFramework: net6.0
setCompareNetObjects: "true"
hideGenerationTimestamp: "true"
equatable: true

View File

@@ -6,3 +6,4 @@ additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.1;net47
useCompareNetObjects: "true"
equatable: true

View File

@@ -10,3 +10,4 @@ additionalProperties:
useOneOfDiscriminatorLookup: true
targetFramework: net47
skipOneOfAnyOfGetter: true
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net48
equatable: true

View File

@@ -16,3 +16,4 @@ additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
hideGenerationTimestamp: "true"
targetFramework: net6.0
equatable: true

View File

@@ -6,3 +6,4 @@ additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: net7.0
useCompareNetObjects: "true"
equatable: true

View File

@@ -9,3 +9,6 @@ additionalProperties:
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net7.0
equatable: true
enumNameMappings:
delivered: Shipped

View File

@@ -6,5 +6,6 @@ additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.0
useCompareNetObjects: "true"
equatable: true
globalProperties:
skipFormModel: "false"

View File

@@ -10,3 +10,4 @@ additionalProperties:
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0
conditionalSerialization: true
equatable: true

View File

@@ -9,3 +9,4 @@ additionalProperties:
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0
equatable: true

View File

@@ -6,3 +6,4 @@ templateDir: modules/openapi-generator/src/main/resources/csharp
library: unityWebRequest
additionalProperties:
targetFramework: netstandard2.0
equatable: true

View File

@@ -4,3 +4,5 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart2
additionalProperties:
hideGenerationTimestamp: "true"
enumNameMappings:
delivered: shipped

View File

@@ -15,4 +15,6 @@ additionalProperties:
packageName: petstore
disallowAdditionalPropertiesIfNotPresent: false
generateInterfaces: true
enumNameMappings:
delivered: SHIPPED

View File

@@ -0,0 +1,10 @@
generatorName: java
outputDir: samples/client/petstore/java/microprofile-rest-client-with-useSingleRequestParameter
library: microprofile
inputSpec: modules/openapi-generator/src/test/resources/3_1/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: microprofile-rest-client
configKey: petstore
useSingleRequestParameter: true
microprofileRestClientVersion: "3.0"

View File

@@ -0,0 +1,10 @@
generatorName: java
outputDir: samples/client/echo_api/java/resttemplate
library: resttemplate
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: echo-api-resttemplate
hideGenerationTimestamp: "true"
java8: true
containerDefaultToNull: true

View File

@@ -1,4 +1,4 @@
generatorName: jmeter
outputDir: samples/client/petstore/jmeter
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/jmeter/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/jmeter-client

View File

@@ -5,3 +5,4 @@ templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-array-simple-string-multiplatform
library: multiplatform
dateLibrary: kotlinx-datetime

View File

@@ -5,3 +5,4 @@ templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-bigdecimal-default-multiplatform
library: multiplatform
dateLibrary: kotlinx-datetime

View File

@@ -5,4 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-default-values-multiplatform
library: multiplatform
dateLibrary: kotlinx-datetime
sortParamsByRequiredFlag: false

View File

@@ -7,3 +7,5 @@ additionalProperties:
serializableModel: "true"
dateLibrary: java8
enumUnknownDefaultCase: true
enumNameMappings:
CHRISTMAS_DAY: XMAS_DAY

View File

@@ -0,0 +1,10 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-jvm-spring-3-restclient
library: jvm-spring-restclient
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-petstore-spring-restclient
enumUnknownDefaultCase: true
serializationLibrary: jackson
useSpringBoot3: true

View File

@@ -0,0 +1,7 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-kotlinx-datetime
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-petstore-threetenbp
dateLibrary: kotlinx-datetime

View File

@@ -0,0 +1,8 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-multiplatform-kotlinx-datetime
library: multiplatform
dateLibrary: kotlinx-datetime
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-client-petstore-multiplatform-kotlinx-datetime

View File

@@ -1,6 +1,7 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-multiplatform
library: multiplatform
dateLibrary: kotlinx-datetime
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:

View File

@@ -2,3 +2,5 @@ generatorName: php-nextgen
outputDir: samples/client/petstore/php-nextgen/OpenAPIClient-php
inputSpec: modules/openapi-generator/src/test/resources/3_0/php-nextgen/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/php-nextgen
enumNameMappings:
delivered: SHIPPED

View File

@@ -0,0 +1,7 @@
generatorName: ruby
outputDir: samples/client/echo_api/ruby-faraday
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
templateDir: modules/openapi-generator/src/main/resources/ruby-client
library: faraday
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,7 @@
generatorName: ruby
outputDir: samples/client/echo_api/ruby-typhoeus
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
templateDir: modules/openapi-generator/src/main/resources/ruby-client
library: typhoeus
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -6,3 +6,5 @@ templateDir: modules/openapi-generator/src/main/resources/rust
additionalProperties:
supportAsync: false
packageName: petstore-reqwest
enumNameMappings:
delivered: shipped

View File

@@ -0,0 +1,13 @@
generatorName: spring
library: spring-cloud
outputDir: samples/openapi3/client/petstore/spring-cloud-http-basic
inputSpec: modules/openapi-generator/src/test/resources/3_0/http-basic-test.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-cloud-http-basic
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"
useTags: "true"

View File

@@ -5,3 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/swift-combine
additionalProperties:
hideGenerationTimestamp: "true"
projectName: "PetstoreOpenAPI"
enumNameMappings:
delivered: shipped

View File

@@ -8,3 +8,5 @@ additionalProperties:
podSummary: PetstoreClient
projectName: PetstoreClient
podHomepage: https://github.com/openapitools/openapi-generator
enumNameMappings:
delivered: shipped

View File

@@ -7,8 +7,8 @@ declare cwd="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
declare root="$(cd "$cwd" && cd ../ && pwd)"
if ! command -v gradle > /dev/null; then
echo "[WARN] This script requires a system gradle to be installed. Not treating this as an error."
exit 0
echo "[WARN] This script requires a system gradle to be installed. Not treating this as an error."
exit 0
fi
executable="${root}/modules/openapi-generator-cli/target/openapi-generator-cli.jar"

View File

@@ -4,7 +4,7 @@ set -euo pipefail
# GEN_DIR allows to share the entrypoint between Dockerfile and run-in-docker.sh (backward compatible)
GEN_DIR=${GEN_DIR:-/opt/openapi-generator}
JAVA_OPTS=${JAVA_OPTS:-"-Xmx1024M -DloggerPath=conf/log4j.properties"}
JAVA_OPTS=${JAVA_OPTS:-"-DloggerPath=conf/log4j.properties"}
cli="${GEN_DIR}/modules/openapi-generator-cli"
codegen="${cli}/target/openapi-generator-cli.jar"

View File

@@ -266,6 +266,11 @@ Upon first code generation, you may also pass the CLI option `--ignore-file-over
Editor support for `.openapi-generator-ignore` files is available in IntelliJ via the [.ignore plugin](https://plugins.jetbrains.com/plugin/7495--ignore).
One may want to pre-populate `.openapi-generator-ignore` with a list of entries during the code generation process and the global/general option `openapiGeneatorIgnoreList` (e.g. --openapi-generator-ignore-list in CLI) can do exactly that. For example,
```
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g spring -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -o /tmp/spring --additional-properties useTags=true --openapi-generator-ignore-list "README.md,pom.xml,docs/*.md,src/main/java/org/openapitools/model/*"
```
## Customizing the generator
There are different aspects of customizing the code generator beyond just creating or modifying templates. Each language has a supporting configuration file to handle different type mappings, etc:

View File

@@ -110,6 +110,6 @@ No, please use `swift3` or `swift4` generator instead as we want to focus on Swi
Yes, please use the following option when generating TypeScript clients:
```
modelPropertyNaming
Naming convention for the property: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name (Default: camelCase)
modelPropertyNaming
Naming convention for the property: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name (Default: camelCase)
```

View File

@@ -244,6 +244,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|OAuth2_ClientCredentials|✓|OAS2,OAS3
|OAuth2_AuthorizationCode|✓|OAS2,OAS3
|SignatureAuth|✗|OAS3
|AWSV4Signature|✗|ToolingExtension
### Wire Format Feature
| Name | Supported | Defined By |

View File

@@ -244,6 +244,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|OAuth2_ClientCredentials|✓|OAS2,OAS3
|OAuth2_AuthorizationCode|✓|OAS2,OAS3
|SignatureAuth|✗|OAS3
|AWSV4Signature|✗|ToolingExtension
### Wire Format Feature
| Name | Supported | Defined By |

View File

@@ -257,6 +257,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|OAuth2_ClientCredentials|✗|OAS2,OAS3
|OAuth2_AuthorizationCode|✗|OAS2,OAS3
|SignatureAuth|✗|OAS3
|AWSV4Signature|✗|ToolingExtension
### Wire Format Feature
| Name | Supported | Defined By |

View File

@@ -159,6 +159,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|OAuth2_ClientCredentials|✗|OAS2,OAS3
|OAuth2_AuthorizationCode|✗|OAS2,OAS3
|SignatureAuth|✗|OAS3
|AWSV4Signature|✗|ToolingExtension
### Wire Format Feature
| Name | Supported | Defined By |

Some files were not shown because too many files have changed in this diff Show More