Compare commits

...

893 Commits

Author SHA1 Message Date
devhl-labs
c510ea4b3d Ensured enum entry name is unique (#16484)
* ensured enum entry name is unique

* ensured enum entry name is unique
2023-09-04 23:28:32 +08:00
Tomohiko Ozawa
09704951f0 [Java][resttemplate] Enable access token refresh (#16485)
* use supplier to enable refreshing token

* update samples

* fix param name and doc

* update samples
2023-09-04 23:23:22 +08:00
William Cheng
47a85e880b Add tests for http basic authentication in python client (#16488)
* add tests for http basic auth in python client

* add new files
2023-09-03 19:11:53 +08:00
devhl-labs
b59719a6ea [csharp][generichost] Minor formatting changes (#16482)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* revert samples for easier merge master

* revert unnecessary change

* fixed formatting

* build samples

* reverting unintended commit

* fixing default value

* reverting unintended commit

* move minor formatting changes to different pr
2023-09-03 16:20:12 +08:00
devhl-labs
dad677f63d [csharp][generichost] Remove unnecessary json options (#16483)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* revert samples for easier merge master

* revert unnecessary change

* fixed formatting

* build samples

* reverting unintended commit

* fixing default value

* reverting unintended commit

* removed unnecessary json option
2023-09-03 16:19:23 +08:00
William Cheng
6434c86afd [php-nextgen] add php-nextgen client generator (#16480)
* php-nextgen first commit

* [php] Set minimal PHP version to ^8.0 (#14500)

* Set minimal PHP version to ^8.0

* Fix php-nextgen config

* Change stability to BETA

* Add phplint package (#15054)

* [php-nextgen] Rename folders to follow PDS skeleton (#15102)

* Change lib -> src, test -> tests folder

This will make build compliant to PHP-PDS skeleton.
Ref: https://github.com/php-pds/skeleton

* Refresh samples

* Exclude composer.lock from codebase (#15105)

Since client generator is library and not a project it makes sense
to exclude composer.lock from codebase by default.

Ref: http://getcomposer.org/doc/02-libraries.md#lock-file

* Add @generated tag to DocBlocks (#15106)

This tag in draft status right now(PSR-19), but I think we can leverage
from it already.

Ref: https://github.com/php-fig/fig-standards/blob/master/proposed/phpdoc-tags.md#55-generated

* update samples, doc

* update samples

---------

Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
2023-09-03 16:16:58 +08:00
William Cheng
ebc9bcda44 [java][native] Add tests for oneOf form parameters (#16487)
* add tests for oneOf form parameters

* update samples
2023-09-03 16:15:54 +08:00
William Cheng
69c3f567ce [Swift] various improvements (#16481) 2023-09-02 20:13:01 +01:00
William Cheng
8c2de11ac2 [rust] fix nullable array (#16473)
* add tests for nullable array in rust

* fix nullable array in rust

* minor fix
2023-09-02 10:21:04 +08:00
William Cheng
a2177570b3 update python samples 2023-09-02 01:07:33 +08:00
jessemyers-lettuce
40731ed52d python: several typing and style improvements (#16378)
* python: several typing and style improvements

The generated (python) code fails with several standard validation tools,
including `flake8`, `mypy`, and `autoflake`. While fixing every possible
violation -- especially wrto typing -- woudl be a project, some of the
changes are fairly easy.

 - The `autoflake` tool picks up on unused imports. These can just be removed.

 - The `mypy` tool picks up on numerious typing violations, especially if set
   to its strictest mode. As a starting point, all functions ought to annotate
   a return type, including constructors, even if the return type is `None`
   because otherwise the functions are omitted from type checking and it's
   impossible to make incremental progress towards adding types.

 - The `flake8` tool mostly finds whitespace and line-length issues; while
   line-length standards very, the source already includes several flake8
   ignores, so it seems safe to add a few more.

* Add generated files

* Restore imports used by `AbstractPythonCodegen.java`

* Update generated files
2023-09-02 01:03:02 +08:00
devhl-labs
c0abeceb85 [csharp] Fixed enum values with whitespace (#16316)
* fixed enum values

* build samples

* build samples

* revert samples for easier merge master

* fixed while not changing other generators

* changed logging

* minor change
2023-09-01 10:11:11 +08:00
William Cheng
c74ed98282 Fix indent lambda using \n as line break (#16464)
* fix indent lambda using \n as line break

* update tests

* more fix
2023-09-01 09:07:14 +08:00
Cliford
71b33db7ee Fix global property separator (#16465) 2023-08-31 21:02:19 +08:00
William Cheng
07a5920b2f fix slash in python aiohttp files (#16463) 2023-08-31 15:59:18 +08:00
William Cheng
72da3b2c76 fix slash in php gneerator doc/config (#16462) 2023-08-31 15:22:38 +08:00
William Cheng
5954daea18 [powershell] update doc to use backslash (#16460)
* add backslash, forwardslash lambda

* update api doc
2023-08-31 14:29:01 +08:00
Davy Durham
4a1c70f2f1 fix: python client generator didn't respect range response specification (#16451)
* bug: python client generator didn't respect range response specification (e.g. "1XX", "2XX", etx.).  Return values tended to become None as a result

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-08-31 10:15:30 +08:00
William Cheng
e73143d777 fix cast exception with uuid default (c) (#16449) 2023-08-31 10:03:20 +08:00
William Cheng
a0350c6533 Fix cast exception when handling example/default of UUID/Long type (#16450)
* fix cast exception when handling uuid example/default

* more cast exception fix

* better fix in example generator

* better code format

* better code format
2023-08-31 09:42:38 +08:00
William Cheng
bceae5695e Fix model name being a type in TS abstract codegen (#16392)
* fix model name being a type in ts abstract codegen

* add a test

* better code format
2023-08-30 13:24:54 +02:00
Jim Simon
9cc5513a1c Fix Issue 16385 (#16387) 2023-08-30 14:23:53 +08:00
martin-mfg
20692aa891 Properly handle mappings and import mappings after processOpts (#16216)
* make Java imports overridable

* fix for other dateLibraries

* complete core fix

* adapt test - step 1/2

* add unit test

* adapt test - step 2/2

* remove accidentally added file

* final small clean-up
2023-08-30 13:48:51 +08:00
EdithBirrer1
35f5852cc0 Fix null request body issue (#16376)
* suggestion how to fix #9217

* removed check for versions V2/v3

* removed useless import
2023-08-30 13:40:35 +08:00
William Caine
134dc98a71 fix: Using Map.Entry to avoid "reference to Entry is ambiguous" (#16445)
* fix: Using Map.Entry to avoid "reference to Entry is ambiguous"

when spec defines a model Entry it conflicts.  Also rest of mustache
uses  Map.Entry to matching it

* fix: Map.Entry - update samples
2023-08-30 12:57:53 +08:00
William Cheng
8386a6eaaf [java] improve petstore tests with openapi v3 spec (#16447)
* regenerate tests in jersey2-java8 client

* update samples

* fix java google api client tests

* update java resteasy to use v3 spec for tests

* update java vertx to test with v3 spec

* update java resttemplate to test with v3 spec

* add new files

* regenerate jersey1 tests
2023-08-30 12:33:01 +08:00
William Cheng
611a60411b fix cast exception in uuid default value (julia) (#16438) 2023-08-29 20:42:49 +08:00
William Cheng
b1564d8002 Fix UUID default value cast exception (swift5) (#16436) 2023-08-29 12:32:01 +01:00
ChengDaqi2023
b14f99df92 update golang.org/x/net v0.2.0 to 0.7.0 (#16148) 2023-08-29 18:51:32 +08:00
William Cheng
5ab1badbef fix cast exception in default value of uuid (objc) (#16437) 2023-08-29 18:43:53 +08:00
William Cheng
9b6e6b3e49 Fix cast exception in uuid default value (haskell-http-client) (#16439)
* fix cast exception in uuid default value (haskell-http-client)

* better code format
2023-08-29 18:42:27 +08:00
William Cheng
b5867ebf2b fix cast exception in array default value (java gen) (#16434) 2023-08-29 14:31:24 +08:00
martin-mfg
020415facc add test to invoke each generator and catch simple crashes (#16425)
* add test

* remove unused imports

* remove SmartBear copyright line

* use 3.0 input
2023-08-29 13:35:45 +08:00
William Cheng
b457c3de70 fix uuid example cast exception in python generators (#16432) 2023-08-29 13:34:54 +08:00
William Cheng
1a654eba5c better handling of null pointer in CodegenSecurity (#16433) 2023-08-29 13:33:35 +08:00
Yohei Kitamura
56105fbbe6 [ruby] Not symbolize header param keys to allow the usage of underscore ("_") character (#16396)
* [ruby] Not symbolize header param keys to allow the usage of underscore ("_") character

* use lambda to convert header key to a string if underscore is included
2023-08-29 10:42:53 +08:00
William Cheng
55252f4b25 update ruby samples 2023-08-28 15:17:05 +08:00
jumpei.yokota
21cbd1ab71 [Ruby] align indentation (#16423) 2023-08-28 15:08:50 +08:00
Wojciech Trocki
6310ecdb0f issue15126: restore default support for golang generator (#15127) 2023-08-28 11:38:09 +08:00
Stephane Carrez
0dcd8b42b0 Fix 16417: [Ada] Server generation fails for some response types (#16421)
* Fix and improvement of Ada server code generator

- add support for EWS (Embedded Web Server)
- fix GNAT project to avoid depending on util_http but instead use util_aws or util_curl
- update server skeleton generation to handle more data types for the response
- add more explanation on the generated server README

* Rebuild the Ada client GNAT project
2023-08-28 10:18:50 +08:00
Robert Oschwald
ec835fbd94 Update kotlin-client okHttp3 api.mustache fixes 16410 (#16411)
- populate body into the ServerException message
2023-08-25 19:06:43 +01:00
Yoonho Go
0f8f18e727 Update api.service.mustache (#16406)
Fix miscast types. At compile time, it says it can't find toISOString because the parameter is of type string, because modifies the whole thing.
2023-08-25 10:41:22 +02:00
William Cheng
80121aa88f Prepare v7.0.1 (#16409)
* prepare 7.0.1 in master

* update doc
2023-08-25 16:11:29 +08:00
y-tomida
c7100b9e61 wrap operand listOf (#16408) 2023-08-25 08:37:48 +01:00
William Cheng
c37fa8a4e8 prepare v7.0.0 release (#16407) 2023-08-25 15:05:29 +08:00
martin-mfg
ad7ce7cba6 fix scalatra on Windows (#16395) 2023-08-25 09:25:22 +08:00
Baptiste Le Morlec
26899ee59b Adding model type hints for Python Flask (#16382)
Co-authored-by: Baptiste LE MORLEC <baptiste.lemorlec@stryker.com>
2023-08-24 20:49:28 +08:00
Felipe Crochik
9cda7b0965 use propertyBaseName instead of propertyName (#15668)
Since it is looking at the payload before the transformation it should use the "original name" and not the "generated name" for the property
2023-08-24 11:54:52 +02:00
Dan Leehr
35f6eec71d Add supportedMediaTypes needed for kubernetes client (#16386)
* Add supportedMediaTypes needed for kubernetes client

https://github.com/kubernetes-client/javascript/issues/893

* Add generated files
2023-08-24 08:43:50 +02:00
William Cheng
91fc151451 Add mapping features to Julia generators (#16370)
* add mapping features to julia generators

* additional changes required for mapped names (#16383)

---------

Co-authored-by: Tanmay Mohapatra <tanmaykm@gmail.com>
2023-08-24 10:09:54 +08:00
devhl-labs
7e67e3aafb Lambda refactors (#16369)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* reverted samples changes

* reverted more unrelated changes

* reverted more unrelated changes

* minor refactors
2023-08-24 09:56:56 +08:00
dependabot[bot]
da411b3f3f Bump s4u/setup-maven-action from 1.8.0 to 1.9.0 (#16388)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.8.0...v1.9.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-08-24 09:54:37 +08:00
Robert Schuh
6146129bdc [typescript] add http info calls to access headers (#16260)
* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

---------

Co-authored-by: Robert Schuh <robert.schuh@valtech.com>
2023-08-23 11:25:27 +02:00
Lezenford
3e95001939 [Kotlin-Spring] fix arrays response api after generation (#16296)
* issues/16295 fix arrays response api after generation

* fix samples

* fix samples

---------

Co-authored-by: Lezenford <alex.v.plekhanov@gmail.com>
2023-08-23 10:52:15 +08:00
Anis
00de163655 [python-flask] adopt python3.5+ syntax (#16375)
* adopt python3.5+ syntax

removing some residual python2 code, since it is not supported anymore, like:
- no need for `six` anymore
- no need for encoding utf8 in top file
- remove `object` inheritance in base model
- remove absolute import `__future__`

* generate samples

applying the new templates

* update python ignore pattern

ignore all the `.venv` folders
2023-08-23 10:42:40 +08:00
Kevin B
646ec8ba41 Fixing spelling of circiut => circuit (#16381) 2023-08-23 10:41:05 +08:00
Martin Kresse
bb507d5e6c allow check for path parameters in matrix style (#16331)
* isMatrix added

* tests for isMatrix flag added
2023-08-22 20:36:16 +08:00
William Cheng
85d7b38084 Add mapping features to Abstract C++ Codegen (#16373)
* add mapping feature to cpp abstract codegen

* better code format
2023-08-22 17:50:41 +08:00
William Cheng
9c9c45a73e add mapping features to c client generator (#16371) 2023-08-22 14:58:41 +08:00
lance-yuan-igt
32fe92fee9 [BUG] C# Aspnetcore Adding Name property for header parameters (#16360)
* Adding Name property for header param

* update samples

* update samples

* update doc

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-08-22 09:39:18 +08:00
clement-brodu
1a458d3e0b fix: memory leak with restclient (#13961) (#16365) 2023-08-21 20:26:37 +08:00
William Cheng
656d2c2263 remove flash codegen (#16372) 2023-08-21 17:20:45 +08:00
William Cheng
d9423a4edb [PHP] 6.0.x make php implementation depend on meta packages for http client (#16368)
* add psr-18 support

* update doc

* fix test
2023-08-21 10:45:51 +08:00
Filip Šmíd
2815e6a538 [BUG][kotlin-client][multiplatform] Write data to packet (#16367)
* fix: write data to packet

* docs: update samples
2023-08-21 10:31:49 +08:00
Chris
7f7717498f [BUG] [java][jersey2/3] clientBuilder gets overwritten after call to customizeClientBuilder (#16355)
* [java][jersey2/3] call customizeClientBuilder after default config init

* regenerate the samples
2023-08-20 22:50:05 +08:00
devhl-labs
a600ef0ded only one JsonConstructor (#16361) 2023-08-20 22:49:40 +08:00
William Cheng
e1b1b7d0c7 [csharp] JsonConverter.mustache - fix propertyName variable conflict (#16356)
* JsonConverter.mustache - Obfuscate "propertyName" variable to rare name "__jsonPropertyName__" to avoid conflict with generated variables

obfuscate "propertyName" variable, fixes issue if #allVars contains a variable named "propertyName" conflicting with the declared variable

* prefix local variable with localVar

* remove eol

* minor fix

* update

---------

Co-authored-by: SDP190 <sprizant1@gmail.com>
2023-08-19 23:33:05 +08:00
William Cheng
4140b387fb update go samples 2023-08-19 23:32:44 +08:00
Wouter Wijsman
a55453b5f7 Update go-gin-server templates to return a configurable library (#10479)
* Update go-gin-server templates to return a configurable library

Before this change, the user would be required to make changes in the
generated code. This makes it really hard to update the API and the
documentation at the same time. With this change, the generated code can
be imported as is and used. The user just needs to set the handler
functions for each endpoint.

* Use spaces instead of tabs for api files

* Use space instead of tab for ApiHandleFunctions in go-gin-server

* Update samples for go-gin-server
2023-08-19 18:42:58 +08:00
YusukeOba
141b3d4e0b [kotlin-client][multiplatform] HttpClient can now be passed as an argument to ApiClient (#16343)
* [kotli-client][multiplatform] Added to inject HttpClient into the argument of ApiClient

* [kotlin-client][multiplatform] update generated samples
2023-08-19 17:05:11 +08:00
William Cheng
ff19825610 [java] Remove hardcoded arrays in template (#16340)
* remove hardcoded arrays in template

* better model import in java client

* update

* better code format

* minor refactoring

* update
2023-08-19 10:20:48 +08:00
William Cheng
b006b1b128 Improve documentations (#16346)
* improve doc

* update urls
2023-08-19 10:20:02 +08:00
Simon Wegendt
778a53a406 [Kotlin Client] Implement octet-stream/binary (#16341)
* Implement octet-stream/binary for Kotlin client code generator

* Fix OkHttp3 generator flavor
2023-08-17 10:40:22 +01:00
William Cheng
e69c58623f update samples 2023-08-17 12:03:43 +08:00
Perdjesk
a9a4aa4bf8 Array default value requires import of java.util.Arrays (#16246) 2023-08-17 11:49:49 +08:00
YusukeOba
c3c0188bf4 [kotlin-multiplatform] Fixed build error when setting formdata in array (#16329) 2023-08-15 21:07:10 +08:00
YusukeOba
2e17653ae8 [kotlin-client][multiplatform] Added support enum query parameter (#16327)
* [kotlin-multiplatform] add enum parameter support

* [kotlin-multiplatform] update generated samples
2023-08-15 17:10:26 +08:00
William Cheng
4f6a25f4b5 [JAVA] [WebClient] Handle list of String special case in WebClient generator (#16326)
* [Java][WebClient] support string list return type

* [Java][WebClient] add test

* [Java][WebClient] support string list return type

* [Java][WebClient] support string list return type

* fix webclient auto-generated test files

---------

Co-authored-by: Gavin.Wu <gavin.guohao.wu@kingland.com>
2023-08-15 13:53:04 +08:00
devhl-labs
76bb8a40d8 [csharp] Fixed model property data type (#16315)
* fixed model property data type

* build samples
2023-08-15 09:57:00 +08:00
Yonatan Karp-Rudin
35fec8da0e Update the SumUp logo to the new logo (#16323)
This commit only updates the sumup logo to the latest logo

Co-authored-by: Yonatan Karp-Rudin <yonatan.karp@sumup.com>
2023-08-15 09:56:23 +08:00
Yonatan Karp-Rudin
c3c7a547b7 Add SumUp to the list of clients (#16322)
This commit adding SumUp into the list of companies that are using OpenAPI Generator.

Co-authored-by: Yonatan Karp-Rudin <yonatan.karp@sumup.com>
2023-08-14 19:57:48 +08:00
William Cheng
bcd934d15a fix missing comma in kotlin api client (#16320) 2023-08-14 14:54:06 +08:00
William Cheng
f1bacd23e7 remove python flask py2 samples (#16319) 2023-08-14 13:34:25 +08:00
Yassine Ilmi
931197a1cd Clean-up - Unnecessary trailing underscores in Python Flask, AIOHttp, BluePlanet (#16249)
* Remove trailing underscore in security_controller_.py and base_model_.py

* Regenerating sample files

* Clean-up files with trailing underscore in samples

* Update security extension to use the new security_controller

* Regenerate unmaintained samples
2023-08-14 13:26:24 +08:00
devhl-labs
47020f10b7 fixed class definition (#16318) 2023-08-14 13:23:44 +08:00
devhl-labs
ef9520f989 [csharp] Fixed operation nested return type (#16314)
* fixed operation nested return type

* more robust fix
2023-08-14 13:07:36 +08:00
Yonatan Karp-Rudin
83af019603 Fix Retrofit template with Jackson for Kotlin (#14239)
* Fix Retrofit template with Jackson (Fix #8147)

This commit amends the `ApiClient` template for Retrofit. It fixes a bug where the Retrofit client uses Jackson as the serialization library.

Until now, the `ApiClient` could not be compiled when using the Jackson library (default in SpringBoot applications), as the constructor of the class had the following parameter:

`private val serializerBuilder: Builder = Serializer.Builder,`

The change done in the commit, is to ensure that in case of Jackson, the right property of the `Serializer` class is assigned

* Add sample code for `kotlin-jvm-jackson`

This commit adds a sample code for the `kotlin-jvm-jackson` generated code to test the changes on CI

* Update kotlin code samples for CI

This commit only runs the command `bin/generate-samples.sh bin/configs/kotlin-*` to ensure that all code samples are up-to-date and CI can pass successfully.
2023-08-14 10:06:49 +08:00
Sanjay Marreddi
2ef888845d Update CMake to fix cpprest linking for UNIX (#14199) 2023-08-12 17:32:49 +08:00
Vincent Giersch
604239abba feat(swift5): allow to swift build in linux (#15060)
* feat(swift5): allow to swift build in linux

* chore(ci): add .github/workflows/samples-swift.yaml

* feat(swif5): bump Alamofire to 5.7.0

* chore(ci): run in macos all swift sample clients
2023-08-12 16:24:01 +08:00
Théophane Charbonnier
057bc8e626 [Java][Client] Microprofile Jackson serialization (#15940) 2023-08-12 12:15:59 +08:00
devhl-labs
1878c45be5 moved regex processing (#16309) 2023-08-12 11:29:19 +08:00
devhl-labs
f4dfd99566 removed nonexistant account (#16310) 2023-08-12 11:28:59 +08:00
Emanuele Saccomandi
8f9e6432f5 fixed zapier removeKeyPrefixes method (#16305) 2023-08-11 19:09:54 +08:00
William Cheng
2635b52b42 [go] fix issue that tempfile is not deleted (#16303)
* #15131 Issue: Tempfile is not deleted

* delete tempfile in go client

---------

Co-authored-by: Aniruddh <aniruddhjoshi94@gmail.com>
2023-08-11 14:40:56 +08:00
William Cheng
8885701648 minor enhancements to ts rxjs generator (#16302) 2023-08-11 11:10:33 +08:00
William Cheng
9d100d8f6b Fix removing dollar sign for name sanitization (#16301)
* fix replacing dollar sign

* try to add tests
add list import
add missing imports
import OpenAPI
fix import ?
fix import?
rename methods
test test fix
test python test fix
fix??
fix??

---------

Co-authored-by: Joshix-1 <57299889+Joshix-1@users.noreply.github.com>
Co-authored-by: Joshix-1 <joshix.dev@mailbox.org>
2023-08-11 10:40:47 +08:00
rainmanhhh
a33c353a26 [typescript-rxjs] Update servers.mustache (#9449)
* Update servers.mustache

add hasOwnProperty checking; use const instead of var

* use 4 spaces instead of tabs
2023-08-11 10:30:40 +08:00
Harish Karumuthil
cc496ff2eb Feature suppoert dart sample code in html2 generator (#7908)
* Add dart example

* Run `./bin/generate-samples.sh ./bin/configs/other/html2.yaml`
2023-08-11 10:18:41 +08:00
William Cheng
590430c774 Issue#15129 Feature Request Description (#16299)
Co-authored-by: Aniruddh <aniruddhjoshi94@gmail.com>
2023-08-11 09:42:47 +08:00
William Cheng
3ad3cf7dd9 add tests for array of number in java okhttp client (#16298) 2023-08-10 23:37:12 +08:00
n1t4chi
e8160d8d7d Improve type reference in toEntity call in order to fix issue with LinkedHashMap being returned instead of maped object to POJO (#16293) 2023-08-10 23:22:08 +08:00
William Cheng
fd12bb3508 [python] Fix data type (#16291)
* fix data type in python client codegen

* add model mapping feature
2023-08-10 23:05:35 +08:00
Marc Miltenberger
7a7309edb8 Fix Java GSON client not accepting optional null arrays (#16213)
* Add check for null JSON array in GSON Java api client

* Update samples
2023-08-10 22:58:23 +08:00
William Cheng
36cb3ce6b9 add tests, workflow for haskell samples (#16290) 2023-08-10 10:42:57 +08:00
Masahiro Sakai
9f051ec640 [haskell-servant][haskell-yesod] fix specialCharReplacements (#16289)
HaskellServantCodegen and HaskellYesodServerCodegen modify
specialCharReplacements by replacing its keys: backslash ("\\") with
"\\\\" and "\"" with "\\\"".

It seems that those replacements were for using the keys in string
literals in the specialChars table in the generated code. However,
modifying the keys causes the substitution of those characters in
field names not to work, making generated code syntactically invalid.

Since the specialChars table has already been removed, we can safely
stop modifying the specialCharReplacements.
2023-08-10 09:43:02 +08:00
Rodrigo de Almeida - RMA3
d955ff6988 Add annotations to the operation - case permission validation - Fix 12219 15822 (#16259)
* fix #12219 #15822

* add test with array

* update samples

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-08-09 17:21:57 +03:00
William Cheng
84d619b883 fix travis build (#16288) 2023-08-09 16:28:59 +08:00
André Roaldseth
75b04bb965 Ensure enum classes toString() returns kotlin.String (#16247)
When creating an enum where a valid value is `String`, the override of toString() will be the wrong type.

Simply using `*kotlin*.String` will allow using `String` as a value in an enum.
2023-08-09 15:09:21 +08:00
William Cheng
6a8039c672 update doc 2023-08-09 14:38:56 +08:00
Jonathan Wenger
d9001b8a6f Add additional reserved words for java and csharp (#16276)
Co-authored-by: Jonathan Wenger <jonathan.wenger@avalara.com>
2023-08-09 14:30:22 +08:00
ふぁ
a3d14c87c4 [Dart/CSharp/Python] replace File.separator with slash (#16282)
Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-08-09 14:28:31 +08:00
William Cheng
3f8bce6695 update samples 2023-08-09 14:27:57 +08:00
martin-mfg
3ed59cd593 [spring] reactive: fix Content-Type (#16228)
* don't set content-type to client's value

* revert manual sample change

* better fix

* generate samples

* cover 3rd case

* add new test endpoint
2023-08-08 15:52:18 +03:00
William Cheng
3d064c6115 [Python] refactor pydantic model methods into abstract python codegen (#16279)
* refactor methods from python client to abstract python codegen

* refactor regular expression methods

* more refactoring

* more refactoring
2023-08-08 20:42:43 +08:00
ふぁ
f3b930c48c [python-nextgen] Fix noqa: E501 position (#16280)
* Fix `noqa: E501` position

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-08-08 20:42:12 +08:00
KaiNative
7703560e73 Updating Maven-Plugin Dependencies (#16274)
* bugfix-15672 updated mavenplugin dependencies

* bugfix-15672 re-added maven-compat since needed by maven-plugin-testing-harness

* bugfix-15672 explicit dependency of plexus archiver in a new version due to CVEs in version included from maven-plugin-testing-harness (2.2)

---------

Co-authored-by: Kai Neuhaus <kneuhaus@communicode.de>
2023-08-08 15:06:50 +08:00
William Cheng
c377a11c57 update samples 2023-08-08 14:57:53 +08:00
devhl-labs
de8f846666 [csharp] Improved regex support (#16269)
* improved regex support

* better parsing of options

* better handling of options

* spacing change

* typo

* rename the x-modifier- extension

* trivial change

* added to the sample
2023-08-08 11:40:20 +08:00
William Cheng
362b596fce update kotlin client dependencies (#16273) 2023-08-08 10:06:08 +08:00
William Cheng
29c5d6109a mark java-okhttp3 option as deprecated in kotlin client (#16272) 2023-08-08 10:05:52 +08:00
William Cheng
a9cfa1f391 [kotlin-spring] minor bug fixes (#16270)
* kotlin-spring: minor bug fixes

* comment out tests
2023-08-08 10:05:34 +08:00
William Cheng
50ee574d1f [kotlin] Escape dollar sign in baseName (#16266)
* escape dollar sign in baseName (kotlin)

* escape dollar sign in kotlin server jaxrs-spec template

* add new files

* update samples
2023-08-08 10:05:15 +08:00
Ween Jiann
2b44d4ed93 [go-server] Partially reverts and fix #15185 (#16258)
* Partitally reverts #15185

* Remove unused import

* Set zero value if param is empty

* Refactor samples, add test config

* Add tests

* Clean up

* Fix test
2023-08-07 20:43:30 +08:00
William Cheng
4e5bd8a30a add martin-mfg to java, spring (#16271) 2023-08-07 15:02:55 +08:00
martin-mfg
6a3f0ffb37 [spring] fix void return type for useResponseEntity: false (#16230)
* fix return type

* add new sample config as test for the fix

* update samples
2023-08-07 14:53:05 +08:00
William Cheng
097385bde6 [bug][kotlin] sanitize model names according to convention (#16267)
* [bug][kotlin] sanitize model names according to convention

* [bug][kotlin] revert to english word sanitization except minus

---------

Co-authored-by: Theo Meneau <tmeneau@clearcover.com>
2023-08-07 14:38:29 +08:00
Martin Visser
f6ac603e15 [kotlin] Add fix for wrongly encoded backticks for reserved words when generating kotlin-spring server code (#14027) 2023-08-07 09:32:00 +08:00
William Cheng
9322c2fc29 fix default value, add nullable support (#16265) 2023-08-06 20:08:22 +08:00
Patrick Del Conte
350ec2a763 [kotlin-server][jaxrs-spec] treat parameters with a default value as non-null (#14413) 2023-08-06 15:55:27 +08:00
Sebastian Ziegler
17194f3ff0 Fix enum headers values while using Kotlin jvm-okhttp (#16133) 2023-08-06 15:37:33 +08:00
William Cheng
5b2ceac93d fix anyOf in handling primitive types in java client (#16264) 2023-08-06 13:48:13 +08:00
Noor Dawod
1d4a6d713f Dart deep-equals (#16251)
* Add support for deep equality for complex types.

* Use version of collection used by the SDK.

* Use a const instead of final.

* Use deep equality only for arrays and maps.

* Generate pet store sources.

* Downgrade version of dependency.

* Expose `DeepCollectionEquality` instance.

* Revert last change.
2023-08-06 13:12:45 +08:00
William Cheng
f0b100a9ad Add a test for BigDecimal parameter in java client (#16263)
* add a test for BigDecimal parameter in java client

* update tests
2023-08-06 12:14:21 +08:00
karzang
e299382a42 [Java][Client] Fix handling of 'number' types in oneOf (#16202) 2023-08-06 11:16:50 +08:00
William Cheng
d9e32a79a5 Support library option via additionalProperties (#16242)
* set library option obtain from additionalProperties

* test library

* update samples

* remove old files
2023-08-05 13:41:04 +08:00
William Cheng
6f05655101 Add mapping features to R client generator (#16252)
* add mapping features to r client generator

* update samples
2023-08-05 13:34:57 +08:00
William Cheng
d1f23ef663 add mapping features to crystal client generator (#16253) 2023-08-05 13:34:34 +08:00
William Cheng
f6fb83878b [Default] update isAdditionalPropertiesTrue tag to cover more types (#16227)
* enhance additional properties support

* update samples

* update tests

* add more tests

* update samples

* fix samples
2023-08-05 13:32:43 +08:00
Ken Kaizu
c080660cc1 [Scala] scala-akka-http-server support pekko-http using useApachePekko flag (#16255)
* introduce useApachePekko flag into scala-akka-http-server

* useApachePekko flag in scala-akka-http-server templates

* introduce scala-pekko-http-server samples
2023-08-05 13:32:02 +08:00
William Cheng
82516c75d2 Fix implements in oneof, anyof templates in java okhttp client generator (#16241)
* fix implements in oneof, anyof templates in java okhttp

* add tests

* update samples
2023-08-03 21:09:00 +08:00
hai22yu23
cb56e50e0c support 32bit in postdata (#16238) 2023-08-03 18:13:42 +08:00
Masahiro Sakai
45d8027bb4 [haskell-servant][haskell-yesod] Use table-based conversion for field name conversion (#16232)
* [haskell-servant][haskell-yesod] use table-based conversion for field name conversion

Current fieldLabelModifier implementation always produces uncapitalize
name, but it is inappropriate if the original JSON field name begins
with a capital letter.

* [haskell-servant][haskell-yesod] regenerate samples
2023-08-03 13:29:33 +08:00
William Cheng
81c398e530 add model name mappings support to the elixir client generator (#16233) 2023-08-02 17:26:52 +08:00
William Cheng
1d39902930 Add name mappings support to JS client (#16234)
* add name mappings support to JS client

* update doc

* udpate doc

* update doc
2023-08-02 17:26:23 +08:00
William Cheng
d67f5ddeff Fix circleci node 4 failure (#16236)
* fix circleci failure

* remove debug

* fix
2023-08-02 15:13:13 +08:00
martin-mfg
0ce1fef016 fix 2 sonar-reported bugs (#16229) 2023-08-02 14:27:27 +08:00
William Cheng
4602f18ca8 Add model name mapping feature to C# codegen (#16209)
* add model name mapping feature to C# codegen

* rename file

* update samples

* update doc
2023-08-02 10:06:11 +08:00
William Cheng
3278eea9a4 Add tests for #16217 (#16221)
* add tests for #16217

* add new files
2023-07-31 11:03:36 +08:00
ふぁ
77311c3d76 [python-nextgen] Fix allOf missing imports (#16217)
* [python-nextgen] fix allOf missing imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove circular import

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] Fix circular refs

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-31 10:04:53 +08:00
Antti Leppä
c6a100cce2 Added support for using mutiny instead of coroutines for asynchronous kotlin server APIs (#15262) 2023-07-31 09:50:44 +08:00
William Cheng
bf181906e0 [Swift] property, parameter name mapping support (#16207)
* add property, parameter naming support to swift5 generator

* revert change

* remove files

* update samples
2023-07-30 22:44:19 +08:00
William Cheng
f3b3de2a29 add property, parameter name mapping to php generators (#16206) 2023-07-30 21:58:05 +08:00
William Cheng
243b5569ef [Rust] add property, parameter name mapping (#16205)
* add name, parameter mapping to rust generators

* add, fix test

* undo cahnge
2023-07-30 21:57:35 +08:00
William Cheng
526ca78e79 add tests for #16199 (python client) (#16220) 2023-07-30 01:19:11 +08:00
ふぁ
48ff57b4f6 [python-nextgen] fix #16010 circular refs lead to no imports (#16199)
* [python-nextgen] fix #16010 circular refs lead to no imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unnecessary Postponed annotations

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unnecessary Postponed annotations

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-30 00:42:46 +08:00
William Cheng
d41fe12c1f [python] Add tests for simple object with additional properties (#16218)
* add tests for simple object without additional properties

* update logic
2023-07-29 11:43:37 +08:00
ふぁ
d9fc039dcf [python-nextgen] fix #16151 Disallow additional properties if not present - missing Any and Dict import (#16208)
* [python-nextgen] fix #16151 Disallow additional properties if not present - missing Any and Dict import

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unwanted imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unwanted imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-29 10:51:28 +08:00
ふぁ
e411b2ac0a [python-nextgen] Add type to actual instance (#16204)
* [python-nextgen] add type to actual_instance

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] fixed unnecessary type conversions

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-29 10:08:06 +08:00
Marc Miltenberger
adac3b127f Support for multipart/form-data; charset="utf-8" in Java GSON Generator (#16211)
* Support for multipart/form-data; charset="utf-8"

Previously, it was only checked for an exact equal string, which failed when there were additional options such as charset.

* Update samples
2023-07-29 00:22:19 +08:00
William Cheng
7ca84e5c88 Add name, parameter name mapping to abstract go codegen (#16171)
* add name, parameter name mapping to abstract go codegen

* better code format
2023-07-28 09:57:23 +08:00
William Cheng
5d2e80977b add name, parameter mapping to scala generators (#16194) 2023-07-28 09:51:50 +08:00
William Cheng
954d41b9aa [C#] Add property, parameter naming support (#16196)
* add property, parameter naming support to c# generators

* update

* fix workflow

* update test

* update
2023-07-28 09:51:33 +08:00
William Cheng
184dfd2edd [Kotlin] Add name, parameter mapping support (#16193)
* add name, parameter mapping support to abstract kotlin

* remove files
2023-07-28 09:42:08 +08:00
William Cheng
86cf4f1eb1 add mapping option to ada codegen (#16190) 2023-07-28 09:41:43 +08:00
Masahiro Sakai
f6a819686d [haskell][haskell-yesod] Fix special char replacements (#16197)
* [haskell][haskell-yesod] remove fixOperatorChars()

fixOperatorChars() does not change input strings since special
characters have already been replaced in DefaultCodegen.fromModel().

* [haskell][haskell-yesod] do not prefix with quote ("'") when generating removeFieldLabelPrefix table

We switched from the conversion done by fixOperatorChars() to the
conversion done by DefaultCodegen.fromModel() and the latter does not
insert quote characters. So We modify the removeFieldLabelPrefix table
to conform the new mapping.

* [haskell][haskell-yesod] remove forParsing parameter from removeFieldLabelPrefix function

Aeson's fieldLabelModifier always convert Haskell field names to JSON
field names, whether at parse time or not. (Note that stripPrefix and
uncapitalize do not take such parameter)

* [haskell][haskell-yesod] perform replaceSpecialChars after stripping prefix

Because replaceSpecialChars can corrupt prefix if the prefix contains
a replacement string of a specfial character as a substring.

* [haskell][haskell-yesod] regenerate samples
2023-07-28 09:35:46 +08:00
William Cheng
d7311cd5cd [Ruby] add property, parameter name mapping (#16191)
* add property, parameter name mapping support to ruby generators

* update samples
2023-07-27 09:48:53 +08:00
Adam Shannon
90eacb685c fix(golang): make sure xml.Encoder is closed (#16141) 2023-07-26 15:48:46 +08:00
William Cheng
30c38ed7ad fix potential npe in ada codegen (#16188) 2023-07-26 14:12:45 +08:00
William Cheng
596487aa6c update doc, customization.md (#16189) 2023-07-26 14:11:36 +08:00
Max Bowsher
7d6e7e4e75 Purge obsolete Go codegen code re github.com/antihax/optional (#16185)
I spotted a mention of `github.com/antihax/optional` in
AbstractGoCodegen. I was curious and investigated. However, it turns out
that this code is an obsolete remnant of the go-deprecated generator
removed before 6.0.0, so is now just a false lead. This PR cleans it up
so no-one else has to go down the same investigative pathway.
2023-07-26 09:53:14 +08:00
Michael Prankl
a1558e3861 Add it@M to users list (#16182) 2023-07-25 23:01:55 +08:00
William Cheng
7ad8f6ef29 [Ada] remove static from logger (#16181)
* remove static from ada logger

* trigger build

* fix
2023-07-25 20:18:21 +08:00
Tom Milligan
f32be9df0b rust: fix rust generation of optional additionalProperties in openapi 3.1.0 (#16143)
* rust: add regression test for 16119

* rust: fix rust generation of optional additionalProperties in openapi 3.1.0

* [review] fix gha sample path
2023-07-25 19:39:26 +08:00
William Cheng
9aa15d9f09 [ruby] Add tests to operation servers in ruby client (#16179)
* add tests to operation servers in ruby client

* update samples

* revert change in spec, remove invalid? check in anyof model

* fix hsot table

* fix circleci config

* fix

* fix host table

* fix host table

* minor fix

* fix

* reorder

* update

* fix
2023-07-25 19:29:06 +08:00
Alexey Makhrov
24656156ed [typescript-angular] Add samples with composed schemas (#16156)
* Setup typescript-angular samples for various composed schemas

* generate samples

* restructure and regenerate samples

* add compilation tests

* update FILES in samples

* debug commit - verify that compilation will fail in CI

* revert debug commit

* remove unnecessary dependencies
2023-07-25 10:53:38 +02:00
Cameron Koegel
54d996732f [Ruby] Fix Operation Servers (#16144)
* [Ruby] Fix Operation Servers

* user `server_index` instead of `index`

* use nil as default

* add tests

* revert tests

* add tests to custom file

* add test file to ruby-faraday
2023-07-25 12:18:23 +08:00
William Cheng
66155d622c update c# samples 2023-07-24 16:04:11 +08:00
Luca
584f8448ee [Java][Native] Fix multipart builder files array (#16055) (#16094)
* [Java] Fixed bug in native client generation when API accepts array of files (#16055)

* Adding test for java native client

* Updated samples
2023-07-24 15:57:21 +08:00
William Cheng
0a02860b50 add parameter name mapping (#16160) 2023-07-24 15:54:40 +08:00
Guillaume Turri
20d1743a36 Fix parsing of Accept header like '*/*;q=0.8' (#16169)
This fixes #15043

The issue is that browsers like "text/html,...,*/*;q=0.8" (see for
instance https://developer.mozilla.org/en-US/docs/Web/HTTP/Content_negotiation/List_of_default_Accept_values
)

Without this commit we end up with an array of accepted type like
`("text/html", "*/*;q=0.8)` so when we then check if the array contains
`*/*` the check fails, and we return a 406 even though the client is
able to get the response.

This commit fixes it by removing the `;q=0.8` part.

(Ideally we should not just discard that part, we should extract that
 value, and order by it. See
 https://developer.mozilla.org/en-US/docs/Glossary/Quality_values for
 more info about that. However this could be done in a subsequent PR:
 this already fixes the 406 error, which is pretty blocking)
2023-07-24 11:34:12 +08:00
Tanmay Mohapatra
c71b48fe1a [Julia] update samples test and a minor fix (#16152)
* [Julia] update samples test and a minor fix

- updating samples test for Julia generated code to use the latest OpenAPI.jl Julia package, which includes tests for file uploads
- also including a fix where generated code duplicated the `mandatory` flag in one of the method calls

* add blank line, trigger build with julia workflow

* more updates to julia samples tests

* add samples changes
2023-07-24 10:52:17 +08:00
William Cheng
f590ef1bcf support nameMapping in abstract ts codegen (#16109) 2023-07-23 21:31:17 +02:00
devhl-labs
056475f0a4 removed incorrect cast (#16157) 2023-07-23 10:38:48 +08:00
Masahiro Sakai
476c1a9397 Fix DefaultCodegen.specialCharReplacements's comment to match the current behavior (#16164)
Translated words are not prefixed with quotation marks ("'").
2023-07-23 10:38:14 +08:00
Bernhard Wittmann
b7346d09eb [typescript-nestjs] allow configuration with forRootAsync (#15269) (#16112) 2023-07-22 20:38:52 +02:00
Florent Chamfroy
3c5b119252 fix(typescript-client): handle special characters (#15893)
Adding a new option for typescript clients in order to handle '+' and '-' characters when computing the name of an enum value.

Fix https://github.com/OpenAPITools/openapi-generator/issues/5110
2023-07-22 22:35:45 +04:00
Nicolas Gimenez
b468e4bb15 fix: take into account customAxios baseURL in typescript-axios generator (#16125) 2023-07-22 20:32:12 +02:00
William Cheng
7a7ecc832d add iBicha to C# TC (#16162) 2023-07-22 19:49:01 +08:00
William Cheng
fb2c866dfc Revert "fix(java): plus url encoding (#15539)" (#16158)
This reverts commit d000f90759.
2023-07-22 16:44:29 +08:00
Song Gie
d000f90759 fix(java): plus url encoding (#15539) 2023-07-22 16:27:36 +08:00
William Cheng
ce4a6a37c6 add oneOf lookup option in python client generator (#16154) 2023-07-22 15:29:04 +08:00
Masahiro Sakai
76989db77a [haskell] fix exampe code in generated README.md (#16142)
* [haskell] fix exampe code in generated README.md

Since create{{title}}Client is not a monadic action, we need to use
"let" instead of "<-".

* regenerate samples
2023-07-21 18:10:11 +08:00
Renny S
bd76c1b102 [csharp] Update RestSharp to 110.2.0 (#16122)
* [csharp] Update RestSharp to 110.2.0

* Post './bin/generate-samples.sh bin/configs/csharp*' and './bin/utils/export_docs_generators.sh' scripts

* OAuthAuthenticator: use configureSerialization

* ContentType prop = RestSharp.ContentType.Json

* `req` -> `request` in `Exec()` and `ExecAsync()`

* Regenerate samples
2023-07-21 17:19:38 +08:00
William Cheng
7252d1a698 [Ruby] add anyOf support (#16147)
* add anyOf support

* remove valid? from oneOf template
2023-07-21 11:38:07 +08:00
Tanmay Mohapatra
f6fefd9268 [Julia] correct handling of POST data encodings (#16149)
- detect multipart and urlencoded post data formats correctly on the server side
- generate data types correctly for binary file uploads
- re-generated samples
2023-07-21 11:37:43 +08:00
Cameron Koegel
de0bffb99d [Ruby] Update Model Creation and Attribute Validation (#16114)
* update attribute validation and model creation

* generate samples

* update tests

* update other tests

* fix custom pet_spec tests

* fix autoload tests
2023-07-21 08:58:55 +08:00
Bart ten Brinke
4ece8e992a Elixir: Switch Poison to Jason (#16061)
* Switch Poison to Jason

* generate-samples.sh

* Finalize Poison -> Jason switch

* parse date-time values to Elixir DateTime
* improve formatting in various places, so there's less changes by `mix
  format` later
* fix Java version in flake.nix

* Use List.delete/2 instead of Enum.reject/2 for performance reasons

* mix format test/*

* Install dialyxir and fix reported issues

* Fix RequestBuilder.decode/2 hardcoded module name

* Update docs

* Revert changes to API spec (HTTP -> HTTPS)

* Revert uneeded change to Elixir code generator

* Use HTTP in Elixir tests

HTTPS doesn't work for folks who setup petstore.swagger.io as described
in docs/faq-contributing.md.

---------

Co-authored-by: Wojciech Piekutowski <wojciech@piekutowski.net>
2023-07-20 18:36:50 +02:00
William Cheng
ddc2b3e560 Add tests for oneOf models in ruby client (#16137)
* add test for oneOf model in ruby

* add new files

* add tests for oneOf model without discriminator
2023-07-20 17:35:40 +08:00
William Cheng
7dee666826 add python name mapping support (#16120) 2023-07-20 17:30:01 +08:00
William Cheng
35ca486e1c Fixed bug in http signing config for C# restsharp (#16129) 2023-07-20 17:04:02 +08:00
William Cheng
0d002d381e [C#][restsharp] Removed warnings in HTTP signing config (#16128)
* Removed warnings in HTTP signing config for restsharp C#

* fix
2023-07-20 17:03:41 +08:00
William Cheng
a729cb4e09 Add support for isFreeFormObject flag (#16127)
* correctly set the free form object flag

* update

* better code format
2023-07-20 14:10:12 +08:00
Emanuele Saccomandi
bfcd646356 Updated zapier version (#16131)
* minor zapier api template fixes

* updated samples

* added zapier validation action

* readded zapier beta tags

* fixed zapier validation action

* updated samples

* updated zapier-platform-core version
2023-07-19 18:59:51 +08:00
William Cheng
aed6a0661a code clean up for go server, jaxrs generator (#16126) 2023-07-19 11:33:05 +08:00
Emanuele Saccomandi
178b8a7737 Zapier generator api template improvement (#16121)
* minor zapier api template fixes

* updated samples

* added zapier validation action

* readded zapier beta tags

* fixed zapier validation action

* updated samples

* improved zapier api names

* updated samples

* fixed zapier noun and label
2023-07-19 00:36:43 +08:00
William Cheng
28e822d870 remove php slim generator (deprecated) (#16108) 2023-07-18 13:10:21 +08:00
William Cheng
e722c42756 minor code enhancement in abstract julia codegen (#16118) 2023-07-18 12:45:15 +08:00
Fredrik Omland
b2eb14b3a5 Fix properties being required and nullable:true (#16072)
* Make generated kotlin variable nullable if corresponding schema property is required and nullable

* Updating generated samples

* Fixing indent

* Updating samples after indent fix in mustache template
2023-07-18 11:22:27 +08:00
Martin Delille
067b17252e [cpp-qt-client] Fix warning (#16083)
* [cpp-qt-client] Fix warning

* Handle warnings for MSVC

* Add warning flags only for non-MSVC compilers

* Fix warnings for MSVC compiler too
2023-07-17 16:30:44 +08:00
devhl-labs
f8e19b4ebc added equatable option (#16106) 2023-07-17 11:56:04 +08:00
William Cheng
6983a3acf3 Add nameMapping option to Java client, server generators (#16103)
* add nameMapping to java codegen

* update doc

* update samples

* fix typo

* update toParamName
2023-07-17 11:37:49 +08:00
Stephane Carrez
b107ff96ac [Ada] Fix and improvement of client and server code generator (#16100) (#16101)
* Improvement of Ada client and server generator

- recognize several mime types and configure the client/server API
- fix support to handle binary and ByteArray
- add support for client and server with multiple mime type responses
- update model templates

* Fix and improvement of Ada code generator

- fix order of model types to emit the types that depend on other
  types after; also sort the model types on their name
- fix model Serialize to avoid serializing a field which is Null
  when it is not "Nullable"

* Add support to avoid some Ada Vectors package instantiation

- recognized the x-ada-no-vector specific attribute on model types
  and when present and TRUE, don't emit the Ada Vector package instantiation
  nor the Serialize and Deserialize associated procedures.

* Fix float and double support

- fix mapping for float and double
- add x-ada-serialize-op custom attribute to allow overriding the serialize procedure
- setup a default x-ada-serialize-op value for the template

* Fix wrong import and serialize method

* Regenerate the Ada client sample petstore

* Rebuild with export_docs_generators.sh

* Fix calls to toLowerCase() to use the Locale.ROOT
2023-07-17 11:26:32 +08:00
devhl-labs
6299af176d faster logic to patch parameters (#16102) 2023-07-16 19:30:17 +08:00
William Cheng
598c27ddb0 [C#] fix validate (#16097)
* fix validation with discriminator using parent instead

* add new files

* add new workflow

* fix
2023-07-16 10:24:47 +08:00
William Cheng
7258b3c171 Fix allOf with a single $ref (#16096)
* new test

* fix allOf with a single ref in inline model resolver
2023-07-14 19:54:58 +08:00
William Cheng
80e2c05bad Add isJson, isXml to consumes, produces (#16085)
* add isJson, isXml to consumes, produces

* code cleanup, update samples
2023-07-14 16:02:59 +08:00
William Cheng
b7e7314d8e [C#] minor refactoring (#16084)
* escape keyword in toParamName (abstract C#)

* remove x-is-json (not used)
2023-07-14 00:36:57 +08:00
Tanmay Mohapatra
6a263565e7 [Julia] add Julia tests to GitHub workflow (#16089)
* [Julia] add Julia tests to GitHub workflow

Added Julia client and server tests to GitHub workflow

* fix paths
2023-07-14 00:19:56 +08:00
Daniel Lange
1531ad48d0 Fixed problem with non-ref-enums which were handled like ref-enums (#16050)
* #15476 Fixed problem with non-ref-enums which were handled like ref-enums

* Adjusted test expectation
2023-07-13 09:55:14 +08:00
CTerasa-ep
7f480cb936 [C++][Pistache] Serialize integer enums if possible (#16080)
In OpenAPI it is possible to define an enum schema containing integers
only.

Similar to the following JSON snippet:
```
...
  "components": {
    "schemas": {
      "size": {
        "type": "integer",
        "description": "Container size",
        "enum": [
          10000,
          20000,
          100000,
          200000,
          300000,
          1000000,
          1200000,
          2500000,
          5000000,
          10000000
        ]
      }
    }
  }
...
```

To correctly serialize this we need to convert to JSON integers. We can
achieve this by feeding nlohmann JSON objects directly with integers
instead of strings.

For the C++ pistache server adapt the enum models to serialize integer
values if possible.
2023-07-13 09:31:53 +08:00
Dennis Melzer
e77f9ea783 Add new OAuth2RequestInterceptor to remove deprecated open feign classes (#16011)
* Add new OAuth2RequestInterceptor to remove deprecated open feign classes

* Add override

* Add version

* Add older version

* Update docs

* Fix issue with multiple security schemes

* Move cli option to spring code gen

* Fix documentation options

* Remove resource folder

* Fix duplicate annotation

* Add an enable flag

* Remove generator setting

* Revert codgen changes

* Revert config generator changes
2023-07-13 08:35:39 +08:00
William Cheng
c6f6ef92d0 Refactor getAdditionalProperties, isFreeFormObject (#16065)
* refactor getAdditionalProperties, isFreeFormObject

* change warn to debug
2023-07-13 08:32:42 +08:00
devhl-labs
16c149a91e fixed bug in http signing config (#16040) 2023-07-13 08:27:55 +08:00
devhl-labs
3678085017 removed warnings (#16039) 2023-07-13 08:27:21 +08:00
Tanmay Mohapatra
c595a02b61 [Julia] Fix error in server enum generation (#16079)
Fixed issue in enum generation for julia-server code.
An empty struct was generated, where it should have generated a type alias.
2023-07-12 19:04:30 +08:00
William Cheng
ec6381295a Update php options for better customization of composer.json (#16078)
* update php options

* update tests
2023-07-12 13:22:05 +08:00
Maximilian Reichel
7cbdc861c7 docs(php): Add missing configuration property composerPackageName (#15846) 2023-07-12 11:29:44 +08:00
Hugo Posnic
9aa6e25886 Fix #14645 Permit to customize more composer.json parts (#16012) 2023-07-12 11:28:39 +08:00
Jens Wetterich
3325edc5c5 [kotlin][spring-webclient] Add parseDateToQueryString (#16069) 2023-07-12 10:17:53 +08:00
William Cheng
0a6671044f Rename inlineSchemaNameDefaults to inlineSchemaOptions (#16048)
* rename InlineSchemaNameDefaults to InlineSchemaOptions

* update doc

* rename options
2023-07-11 18:07:09 +08:00
William Cheng
7b3681af47 fix isMap (#16043) 2023-07-11 17:14:44 +08:00
Bruno Coelho
f31c2a4b17 [kotlin][client] Add new line at the end of all files (#16062)
* [kotlin][client] add new line at end of files

* [kotlin][client] add new line at end of files
2023-07-11 17:07:06 +08:00
devhl-labs
ceb48d3af4 removed IApi namespace (#16058) 2023-07-11 14:01:45 +08:00
devhl-labs
9362b49173 added event for errors (#16057) 2023-07-11 10:54:29 +08:00
dependabot[bot]
91a55fc6b6 Bump semver from 5.7.1 to 5.7.2 in /website (#16056)
Bumps [semver](https://github.com/npm/node-semver) from 5.7.1 to 5.7.2.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-11 09:51:43 +08:00
Emanuele Saccomandi
cc47f45eac Added zapier ci validation (#16052)
* minor zapier api template fixes

* updated samples

* added zapier validation action

* readded zapier beta tags

* fixed zapier validation action

* updated samples
2023-07-11 00:19:15 +08:00
devhl-labs
fe78be405e [csharp][generichost] Added event on http response to facilitate server health tracking (#16046)
* added event on http response to facility server health tracking

* renamed a file

* handled the renamed file
2023-07-10 16:10:04 +08:00
William Cheng
aa1e9097ea Minor improvements to Zapier client generator (#16044)
* improve Zapier client generator

* log debug instead of error
2023-07-10 15:37:20 +08:00
William Cheng
ac1f5f1e81 [inline model resolver] Add support for inline enum refactoring (#16033)
* add support for inline enum refactoring

* minor update

* add tests
2023-07-10 13:43:50 +08:00
William Cheng
852eb956db [kotlin][spring] Remove EOL from template (#16045)
* remove EOL from template

* better code format
2023-07-10 11:44:29 +08:00
Peter Leibiger
75067b2581 [Dart] Update CI (#15981)
* [dart] Update CI

* cache maven dependencies
* use newest exec plugin
* execute pub via dart subcommand

* Use run command directly
2023-07-10 11:27:01 +08:00
Ben Kolera
f34e42b249 [BUGFIX][kotlin-spring] Fix generatedAnnotation to use the javaxPackage variable instead of jakarta to fix spring boot 2 codegen (#15944)
* Update generatedAnnotation.mustache

Without this, it generates a jakarta annotation in the controllers of a spring boot 2 project.

* Updated examples
2023-07-10 11:13:22 +08:00
William Cheng
94d76ff5d4 Better inline schema naming for double byte characters (#16035)
* better inline schema naming for double byte characters

* clean up

* update deprecated methods
2023-07-10 09:38:54 +08:00
William Cheng
f0084b39ac update samples 2023-07-09 22:39:00 +08:00
Emanuele Saccomandi
9baf4988f3 Zapier generator (#15997)
* First version of Zapier Generator

* fixed zapier codegen

* added zapier templates

* added zapier sample

* added zapier doc

* added zapier generator form data management

* added samples generation

* updated docs

* fixed zapier api template

* fixed zapier samples export

* added zapier readme template

* fixed zapier readme template

* added petstore readme

* cleaned zapier generator

* updated samples

* fixed zapier enum label

* cleaned code

* updated samples

* improved zapier search actions

* updated samples

---------

Co-authored-by: Mauro Valota <maurovalota@fattureincloud.it>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-07-09 21:52:04 +08:00
devhl-labs
f63ef71432 version bump (#16038) 2023-07-09 10:27:34 +08:00
devhl-labs
c6877947ac removed a warning (#16037) 2023-07-09 10:26:59 +08:00
devhl-labs
1d470c3866 fixed nre (#16036) 2023-07-09 10:25:31 +08:00
Jon Schoning
2c5f8b30b4 [haskell-http-client] - update deps (#16041) 2023-07-08 19:34:37 -05:00
William Cheng
52dd41159f Revert "better inline schema naming for double byte characters"
This reverts commit aaf9ce637a.
2023-07-08 22:37:42 +08:00
William Cheng
aaf9ce637a better inline schema naming for double byte characters 2023-07-08 22:37:18 +08:00
William Cheng
08c3f8973e [python] Fix array of array of model's to_dict, from_dict (#16032)
* fix array of array of model's to_dict, from_dict

* update samples
2023-07-08 14:12:42 +08:00
Felix Uellendall
83a12779fa Fix syntax error in from_dict call (#16000) 2023-07-08 08:43:01 +08:00
William Cheng
f7edbbc572 update samples 2023-07-08 08:42:18 +08:00
Tanmay Mohapatra
5bae27cbbf [Julia] Fix error in default value and enum gen (#16030)
Fixed issues in default value and enum generation for non-string types.
2023-07-08 01:12:05 +08:00
Beppe Catanese
2aa75802dc [POSTMAN] Mark request header as disabled (#16028)
* Disable headers without a value

* Update samples
2023-07-08 01:06:32 +08:00
Beppe Catanese
30d6a2ff80 [POSTMAN] Use parameter default value (#16027)
* Refactor to use defaultValue

* Test parameter with defaultValue

* Update samples
2023-07-08 01:05:53 +08:00
William Cheng
a5f1c01548 update samples 2023-07-07 11:28:20 +08:00
Beppe Catanese
315fbff680 [BUG] Change default value for header parameter (#15990)
* Override toDefaultValue method

* Regenerate sample
2023-07-07 10:58:24 +08:00
William Cheng
9170306ffa Fix Spring CI sample folder (#16005)
* fix spring CI sample folder

* fix path

* trigger build

* test push

* add spring jdk17 workflow

* trigger build
2023-07-07 10:23:34 +08:00
William Cheng
a2d0b0c5b8 Minor fix to gradle test, pom.xml, build.gradle (#16026)
* fix publising to gradle portal

* v6.5.0 portal release

* add back docker publish

* trigger build

* Revert "trigger build"

This reverts commit f7ea8baf35.

* Revert "add back docker publish"

This reverts commit a279145cc6.

* Revert "v6.5.0 portal release"

This reverts commit 8a91858df5.

* minor fix to gradle test, pom.xml

* rollback to 1.0.0

* fix
2023-07-07 10:18:33 +08:00
William Cheng
ba5c5f478e remove openapi parameter from method (#16017) 2023-07-07 08:32:38 +08:00
Bodo Graumann
ba1c600830 [typescript] Fix support for relative URLs (#15482)
* Add test for different url types

* Fix tests for typescript inversify framework

* Add workaround for relative URLs

* Regenerate samples
2023-07-06 17:30:19 +02:00
William Cheng
a16a315fee Revert "7.0.0-beta release (#16018)"
This reverts commit 635f7952ce.
2023-07-06 17:21:35 +08:00
William Cheng
635f7952ce 7.0.0-beta release (#16018)
* 7.0.0-beta-release

* fix gradle tests
2023-07-06 16:06:02 +08:00
Daniel Lange
6b62f2b05a [csharp-netcore] Enable setting of RemoteCertificateValidationCallback through IReadableConfiguration (#15979)
* Fix for [BUG][C#][csharp] Use RestClient.RemoteCertificateValidationCallback for SSL validation #11497

* Fixed modification of wrong files through merging to master and applied the changes to the correct files

* Updated examples

* Forget some examples

* Updates branch to reflect master changes and published changed example files yet again to solve conflicts

* Fixed examples
2023-07-06 11:48:10 +08:00
William Cheng
965eb2a02f Add logic to avoid stackoverflow (#16008)
* add logic to avoid stackoverflow

* add test file
2023-07-06 11:45:31 +08:00
William Cheng
bf80ccb24c remove getPropertyDefaultValue (#16003) 2023-07-06 11:45:05 +08:00
devhl-labs
8d625986c6 used list instead of set (#16015) 2023-07-06 11:33:01 +08:00
Nico Martin
5479e57bee fixed date converter for javascript-flowtyped (#15983) 2023-07-05 17:04:31 +08:00
AntoineDuComptoirDesPharmacies
85df55b20e Bugfix #15982 : (#15984)
- Use 'orElse' instead of 'get' to avoid Exception for non required headers
- Update samples
2023-07-04 23:30:21 +08:00
Alejandro Ruiz
0bb9088f3e Fix StringIndexOutOfBoundsException when generating example code for recursive model (#15601)
Fixes #15600
2023-07-04 23:27:30 +08:00
Oliver B. Fischer
4f5738f493 Spelling fixes of a header for Asciidoc generation (#15988)
The case sensitivity for the heading for the response codes
was incorrect and has been corrected for the generation of Asciidoc
files.
2023-07-04 23:26:33 +08:00
bernie-schelberg-mywave
a42f90b0e8 Fix #12412 Use enum type for discriminator (#13846)
* Fix #12412 Use enum type for discriminator

* Rename variable

* Fix required property in test resource

* Add example of enum mapping to samples

* Generate samples

* Generate samples after merging master

* Regenerate samples

* Fix raw use of parameterized class

* Add test showing serialization and deserialization of classes with enum discriminator

* Remove old generated files

* Generate samples

* Generate samples
2023-07-04 23:25:39 +08:00
William Cheng
b465d88880 update samples 2023-07-04 00:29:06 +08:00
Aswin Francis
ba0c73e164 [csharp] [Req#15932] Added support for windows authentication by exposing UseDefaultCredentials property (#15935)
* Added support for windows authentication by exposing UseDefaultCredentials property

* Updated samples and docs

* update doc, samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-07-03 15:53:47 +08:00
Richard Lavoie
117e5118b1 [GO] Fix value formatting in url with slices (#15581)
* fix reflect value for Slice

* Add test
2023-07-03 15:45:14 +08:00
JeffAtDeere
cfc14565ae Support vendor extensions on more objects as per the OAS spec (#15975) 2023-07-03 15:07:59 +08:00
devhl-labs
00fcaa15c0 [csharp][generichost] Add Option struct to enable better validation (#15977)
* add Option struct to enable better validation

* use kebab case
2023-07-03 14:40:24 +08:00
Michael Glanznig
e2f5997592 fix dry-run output and add tests, fixes #15730 (#15754) 2023-07-02 23:37:21 +08:00
Beppe Catanese
3224e86377 [Postman Collections] Keep original header name (#15907)
* Define baseName for Postman headers

* Use header original name

* Commit regenerated files
2023-07-02 23:36:23 +08:00
Guillaume Turri
22e1e4e450 [PHP-Symfony] fix name mismatch in generated README (#15961) (#15963)
This fixes the generated README so it  suggests to implement the `class DefaultApi`
in a file named DefaultApi.php (instead of DefaultApiInterface.php)
2023-07-02 23:34:04 +08:00
Guillaume Turri
7572e73b8e [PHP-Symfony] Fix Symfony warning on OpenAPIServerBundle (#15960)
This fixes this Symfony warning:

    User Deprecated: Method "Symfony\Component\HttpKernel\Bundle\Bundle::build()"
    might add "void" as a native return type declaration in the future. Do the
    same in child class "OpenAPI\Server\OpenAPIServerBundle" now to avoid errors
    or add an explicit @return annotation to suppress this message

This fixes #15959
2023-07-02 23:33:37 +08:00
Dennis Melzer
50d8e7820b Fix cli options use tags and api name suffix (#15936)
* Fix cli options use tags and api name suffix

* Add sample code generator for api suffix and tags

* Fix FILES

* trigger build

* Add sample to github workflow
2023-07-02 23:18:17 +08:00
Clément Tamisier
a22a7c0d83 [kotlin-spring] Add missing parameter 'nullableReturnType' in docs (#15952) 2023-07-02 23:16:19 +08:00
devhl-labs
48f242fe58 [csharp] Rename csharp config files (#15968)
* renamed config files

* changed default framework to latest

* renamed files using standard

* ensure the default is actually latest
2023-07-02 10:30:16 +08:00
devhl-labs
34c491b115 enabled overriding parameter patching (#15971) 2023-07-02 10:08:44 +08:00
devhl-labs
179d0bcb9c added value converter class (#15970) 2023-07-02 10:07:27 +08:00
devhl-labs
780d1fb3e2 use latest framework as default (#15969) 2023-07-02 10:06:37 +08:00
devhl-labs
a89fe4ab28 fixed support for DateTimeOffset (#15967) 2023-07-02 10:05:51 +08:00
devhl-labs
ebcd1d7a32 [csharp][generichost] Exposed internals to test project (#15920)
* exposed internals to test project

* exposed internals to test project
2023-07-02 00:28:59 +08:00
devhl-labs
4dc7ffd2f3 [csharp][generichost] Fix model accessor (#15918)
* removed redundant properties

* removed commneted code

* fixed oneof anyof serialization

* restored discriminator as a model property

* added manual sample, removed need for new discriminator property

* minor pipeline change

* renamed manual test solution

* fixed model accessor

* used visibility option

* resolved conflicts

* build samples

* resolved conflicts

* resolved conflicts

* resolved conflicts

* resolved conflicts

* added a comment
2023-07-02 00:06:42 +08:00
devhl-labs
4eaa358476 [csharp][generichost] Fix oneof anyof serialization (#15873)
* removed redundant properties

* removed commneted code

* fixed oneof anyof serialization

* restored discriminator as a model property

* added manual sample, removed need for new discriminator property

* minor pipeline change

* renamed manual test solution

* resolved conflicts

* build samples

* bug fix

* fixed pipeline

* added a comment
2023-07-01 22:37:58 +08:00
Tatsuro Shibamura
42b496c003 Fixed typescript-axios not setting enum ref correctly for multipart/form-data (#15885) 2023-07-01 13:27:20 +02:00
Vladimir Svoboda
71528f69e8 Add support for Angular 16 (#15925)
* Add support for Angular 16

* Fix dependencies specifications

* Fix minimum angular supported version in readme

* Update integration tests

Even if they are currently not run.

* Update sample due to rebase
2023-07-01 13:13:58 +02:00
Dennis Melzer
d6538e3327 Fix import for spring boot 3 (#15949)
* Fix import for spring boot 3 and add a test for optional generation

* Remove timestamp

* Add sample to github workflow
2023-07-01 14:31:44 +08:00
William Cheng
30c685ea67 use openjdk official docker image (#15964) 2023-06-30 19:31:25 +08:00
Jules Bertholet
cdac1366d4 [Rust] Don't unnecessarily process enum names (#15710) 2023-06-30 14:25:04 +08:00
William Cheng
9a968c3104 add supportUrlQuery as an option (#15958) 2023-06-30 14:20:27 +08:00
Søren Hansen
9ee5fcc5c6 feat(rust,client): remove Default derives for structs as per #10845 (#15856)
* feat(rust,client): remove Default derives as per #10845

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-30 14:09:21 +08:00
William Cheng
f43111b46a remove addSchemaImportsFromV3SpecLocations (#15956) 2023-06-30 13:21:52 +08:00
William Cheng
63b2c79565 Fix NPE in StringUtils.camelize (#15957)
* fix NPE in StringUtils.camelize

* add comment

* add test file
2023-06-30 13:19:11 +08:00
William Cheng
8add9119df Add containerTypeMapped (#15881)
* add containerTypeMapped

* update samples

* update java inflector sample
2023-06-30 09:38:39 +08:00
William Cheng
15b3addd40 fix NPE in R construct example (#15953) 2023-06-30 09:29:33 +08:00
Noor Dawod
d5c53b9812 Fix epoch deserialization and parsing numbers (#15948)
* Fix 2 bugs with epoch deserialization and parsing numbers.

* Generate samples.
2023-06-30 00:06:12 +08:00
karzang
e9d98666a1 [Java][Client] Fix #12556 Support primitives and arrays in oneOf (#13897)
* [Java][Client] Fix #12556 Support primitives and arrays in oneOf

* Regenerate petstore samples

* Regenerate petstore test samples

* Treat 'BigDecimal' as primtive datatype

* Fix integration tests
2023-06-29 16:46:55 +08:00
Corné
b2280e23f7 [Kotlin][Spring]ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-c… (#15898)
* ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-cloud

* ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-cloud

* Undo formatting code

* Undo formatting code

* Undo formatting code

* ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-cloud

* Undo formatting code

* Undo formatting code

* Cleanup

---------

Co-authored-by: c.t.vanbarneveld <corne.van.barneveld@rws.nl>
2023-06-29 16:25:18 +08:00
William Cheng
b1b8acee48 Update openapi-generator-online Dockerfile to use openjdk11 image (#15947)
* test docker

* update

* mvn

* skip run
2023-06-29 15:57:19 +08:00
Per-Olov Jernberg
8fe4d780ed Use substring instead of substr (#15937) 2023-06-29 14:41:42 +08:00
William Cheng
fac04cfa9d Various improvements to scala-sttp4 generator (#15931)
* various improvements to scala-sttp4 generator

* test scala with jdk11

* test sttp4 in circleci

* add pom.xml

* update

* update tc
2023-06-27 23:27:38 +08:00
bcalvez
7a73f75f70 [java][okhttp-gson] Remove JAX-RS dependency from generated okhttp-gson java client (#15896)
* Remove JAX-RS dependency from generated okhttp-gson java client

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-27 16:53:10 +08:00
martin-mfg
dcc53c0d53 [Typescript][Scala][Postman][Java] fix errors with missing models, missing description, BigDecimal (#15809)
* various fixes

* generate samples
2023-06-27 16:20:21 +08:00
Frederic Jones
3627e57a4c Add validation.constraints package import to delegates when using bean validation (#15921) 2023-06-26 23:52:38 -07:00
Adam Rybicki
faa5da51e5 Sttp4 generator (#15834)
* implementation of sttp4 generator

* rebased with master

* running scripts

---------

Co-authored-by: Adam Fish Rybicki <adamrybicki@adams-macbook-pro.home>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-27 10:50:52 +08:00
martin-mfg
debf92fd7d author command: replace \ by /, fix #9528 (#15861)
* author command: replace \ by /

* add windows test for author template
2023-06-27 10:28:01 +08:00
Noah Overcash
e8fc4d159e Remove unused import in Java resttemplate auth templates (#15899)
* Remove unused import in Java resttemplate HttpBasicAuth

* Remove unused import in Java resttemplate HttpBearerAuth

* Update samples
2023-06-27 10:24:03 +08:00
martin-mfg
4bec09f7b9 [PHP] fix error on circular references (#15900)
* fix php generators

* generate samples and docs

* fix samples
2023-06-27 10:23:10 +08:00
martin-mfg
33e120a14d [Eiffel] fix Eiffel schema lookup, clean up outdated samples (#15901)
* make all unmaintained samples executable

* remove samples not generated by any config (not even unmaintained configs)

* remove deleted samples from github workflows
2023-06-27 10:21:28 +08:00
Hui Yu
47f2f5f3e7 [C][Client] Add github action to test c client sample build (#15922) 2023-06-27 10:19:25 +08:00
devhl-labs
ea2c6860d3 [csharp][generichost] Removed redundant properties (#15869)
* removed redundant properties

* removed commneted code

* restored discriminator as a model property

* build samples
2023-06-25 13:01:50 +08:00
devhl-labs
c23560afb9 removed unecessary extension from generichost (#15870) 2023-06-25 11:43:16 +08:00
William Cheng
7c67f731bc Rename csharp-netcore to csharp (#15903)
* rename csharp-netcore to csharp

* rename file

* renmae modules/openapi-generator/src/main/resources/csharp-netcore

* update samples

* mv dir

* update samples

* rename csharp-netcore to csharp in appveyor.yml

* update doc
2023-06-25 11:08:59 +08:00
William Cheng
af048ec62f update samples 2023-06-24 08:10:14 +08:00
William Cheng
17c2401abd add lombok to pom.xml 2023-06-24 07:57:26 +08:00
GregDThomas
5d6b769b5b Fix issue #907 by ensuring the parameters is properly "exploded" (#14825) 2023-06-23 20:11:39 +08:00
devhl-labs
b4eb9a40c6 fixed .net6 packages (#15902) 2023-06-23 10:54:29 +08:00
William Cheng
ae8da31772 Minor improvement to swift-combine client generator (#15892)
* minor improvement to swift combine

* update swift tc
2023-06-23 10:50:12 +08:00
Anton Davydov
9f3d9a5e8f [swift] New 'swift-combine' client generator for swift (#15823)
* swift-alt-gen init

* swift-alt-gen in progress

* swift-alt added runtime

* swift-alt added transport

* swift-alt added example

* swift-alt v0.1.0

* swift-alt implemented form encoded body

* swift-alt fixed array of enums to string

* swift-alt v0.2.0

* swift-alt v0.3.0

* swift-alt v0.4.0

* swift-alt v0.5.0

* swift-alt v0.6.0

* swift-alt v0.7.0

* swift-alt v0.8.0

* swift-alt v0.9.0

* swift-alt v0.12.0

* swift-alt v0.13.0

* swift-alt v0.14.0

* swift-alt v0.15.0

* swift-alt v0.16.0

* swift-alt v0.17.0

* swift-alt v0.18.0

* swift-alt v0.19.0 Support for raw value in header

* swift-alt v0.20.0

* swift-alt v0.21.0

* swift-alt v0.22.0

* swift-combine v0.23.0

* swift-combine PR rules adoption

* swift-combine: updated transport

* Updated bitrise.yml file

* Fixed bitrise pipeline for swift-combine

* Fixed code review comment
2023-06-22 09:25:32 +08:00
William Cheng
d160b827de Allow better default value in parameters using codegen property (#15882)
* allow better default value in parameters using codegen property

* update
2023-06-21 16:36:45 +08:00
pyckle
33aa5b07f3 [Java][bugfix] hashcode/equals behave incorrectly when inheritance is used in Generated Pojos (#15745)
* Fix Java equals and hashCode methods to work with inheritence (#5756)

* Regenerate code samples with improved hashCode/equals

---------

Co-authored-by: Andrew Pikler <andrew.pikler@earnix.com>
2023-06-21 16:33:01 +08:00
martin-mfg
7e89e1ea81 fix import mapping for return types (#14525) (#15719)
* importContainerType = true

* add unit test

* disable MyImportTest

* build all samples, add import exceptions

* simplify code

* delete myImportTest

* generate docs

* extend comment

* remove inline comment
2023-06-21 15:55:29 +08:00
William Cheng
8b26d81163 use mvnw instead of mvn in workflow (#15880)
* use mvnw instead of mvn in workflow

* fix

* more fix
2023-06-20 17:11:33 +08:00
William Cheng
14fc61a293 [java] fix default value - empty list [] (#15862)
* fix empty default value in java okhttp-gson

* add files
2023-06-20 11:27:56 +08:00
martin-mfg
396c6753b1 [Java][Haskell][Python] fix errors with empty strings, missing basePath (#15866)
* various fixes

* generate samples & docs
2023-06-20 10:05:02 +08:00
pappelt
6b1a9ba602 Update README.md (#15877)
Added Aleri Solutions to list of companies
2023-06-20 09:50:49 +08:00
ferlyloic
09b182572a Update pubspec.mustache (#15510)
updated intl package to v0.18.0
2023-06-20 09:35:37 +08:00
Noor Dawod
3dd93beac2 Introduce changes necessary for Dart 3.0.0/Flutter 3.10.0 (#15516)
* Expose `deserialize` function.

* Rename `json` argument.

* Generate Petstore code.

* Upgrade minimum version of `intl` dependency.
2023-06-20 09:35:25 +08:00
devhl-labs
e0d89c3846 removed hotfix (#15868) 2023-06-18 14:57:14 +08:00
devhl-labs
5555137b79 [csharp][generichost] Modernizes handling of composed schemas (#15865)
* removed hotfixes, improved composed schema handling

* fix copy paste bug
2023-06-17 15:05:08 +08:00
Erik Wegner
389270334a Rust validation handling (#15288)
* Prevent JavaScript regex delimiter

* Validation

* validator dependency

* validation with range

* Switch to garde crate for validation

* Update uuid crate

* Examples

* All rust-server samples

* Added rule handling

* Exchange garde for validator crate (rust)

* Version update in samples

---------

Co-authored-by: Erik Wegner <erik.wegner@regiocom.com>
2023-06-16 15:25:27 +08:00
Yohei Kitamura
0a651e1b0a fix: NullPointerException in DefaultCodegen.mergeProperties when processing models (#15859)
* fix: NullPointerException in DefaultCodegen.mergeProperties when processing models

* Add test
2023-06-16 14:39:54 +08:00
Camille TJHOA
504744a390 [typescript-fetch] fix snakecase discriminator (#15838)
* [typescript-fetch] fix snakecase discriminator (#7080)

* [typescript-fetch] add snakecase discriminator test case
2023-06-16 07:26:30 +02:00
Max Strübing
730b946537 [Bug] fix: use length to check for default return media type (#15833)
* fix: use length to check for default return media type

as `mediaTypes` is an array of strings and an required argument
it will never be undefined when we can rely on the typesystem.
However, it can be zero length(`[]`) and in this case we would
throw.

* Closes #15011

* chore: update examples
2023-06-16 07:23:58 +02:00
devhl-labs
03cef639e4 Added option to opt out of default logging for individual methods (#15850)
* added option

* moved the xml annotation

* build samples
2023-06-16 11:06:23 +08:00
Beppe Catanese
6cb3414611 Fetch request inline (single) example (bis) (#15857)
* Add (single) example

* Fetch single example when available

* Add test
2023-06-16 09:26:03 +08:00
Rexios
95cefaeecd [Dart] Convert DioError to DioException (#15783)
* Convert `DioError` to `DioException`

* Update samples

* Update dio version in example

* Use proper dio version

* Regenerate dart samples

* Regenerate

* Regenerate samples

* update samples

* remove outdated test files

* update test

* remove outdated test files

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-16 00:16:39 +08:00
William Cheng
747d9d9b51 better way to initialize hashmap (#15855) 2023-06-15 20:22:00 +08:00
Tiffany Marrel
0e212f53f2 [Java] [Kotlin] ignore unsupported schemes instead of throwing exception (#15817) 2023-06-15 16:50:49 +08:00
devhl-labs
882b9a8c50 [abstract-csharp] Process all operation parameter collections (#15841)
* added new vendor extenion

* moved code to methods to enable overriding

* fixed tests

* renamed method to setTypeMapping

* removed commented code

* moved code to make diff easier to understand

* removed commented code

* process all operation parameter collections

* fixed bugs

* fixed bugs
2023-06-15 15:54:04 +08:00
Ventsy
bdeb4ff5a4 Calls validate() for model objects properties (#15784) 2023-06-15 15:32:50 +08:00
Szabolcs Székelyi
bca80c0d3d [dart-dio] Correctly serialize path parameters (#14666) 2023-06-15 13:45:19 +08:00
William Cheng
8c1f4b1a62 Add containerType to codegen parameter (#15830)
* add containerType to codegen parameter

* add test for map container type
2023-06-15 11:51:39 +08:00
William Cheng
b42234eb3c [python] Fix map of array in property (#15844)
* fix map of array in property (python)

* update samples
2023-06-15 11:50:56 +08:00
William Cheng
afca85acf5 update scala doc 2023-06-14 17:42:27 +08:00
Adam Rybicki
522368160a Scala sttp stability change (#15842)
* changed stability in ScalaSttpClientCodegen

* updated files from scripts

---------

Co-authored-by: Adam Fish Rybicki <adamrybicki@adams-macbook-pro.home>
2023-06-14 17:32:11 +08:00
Peter Lamby
7812dd525c [BUG][typescript] add missing importFileExtension support (#15813) 2023-06-14 08:04:33 +02:00
JanLubenow
175876a105 [BUG][JAVA] Handling default values leads to wrong defaults or not compilable code fixed (#15836)
* (fix): default values for array types will be handled a bit more appropriate

* (fix): remove commented out block
2023-06-14 11:18:11 +08:00
devhl-labs
6a1626c8e7 [abstract-csharp] Make data types overridable (#15814)
* added new vendor extenion

* moved code to methods to enable overriding

* fixed tests

* renamed method to setTypeMapping

* removed commented code

* moved code to make diff easier to understand

* removed commented code
2023-06-14 10:47:46 +08:00
Oleh Kurpiak
3b832c9fd4 [Java][Client] remove model annotations from AbstractOpenApiSchema (#15808) (fix #15684) 2023-06-13 18:40:36 +03:00
Ghufran Zahidi
9fe5cc0b01 [csharp-netcore] Configure the API key in string format for HttpSigningConfiguration (#15818)
* added property in HttpSIgningConfiguration to accept API key in string format.

* remove trailing space, update samples

* updated the sample code.

* Revert "updated the sample code."

This reverts commit 5b945c7a59.

* fix the sample code compilation error for split function.

* updated the sample code after the split function fix.

* Removed the either or check for filePath or KeyString.

---------

Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
Co-authored-by: Vikrant Balyan (vvb) <vvb@cisco.com>
Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-13 21:49:33 +08:00
William Cheng
37d8a0d3ff Add java-webclient gradle test (#15837)
* add gradle test for webclient swagger2 annotation

* trigger build
2023-06-13 21:32:40 +08:00
JanLubenow
96b3488a07 [BUG] [Java-Spring] Required-Fields-Constructor has wrong super call when using multiple inheritance layers (#15827)
* (fix): required-fields constructor uses super-call-parameters in the order of the parent required-field constructor

* (fix): required-fields constructor uses super-call-parameters in the order of the parent required-field constructor - add issue number

* (fix): required-fields constructor uses super-call-parameters in the order of the parent required-field constructor - fix file reference
2023-06-13 21:13:31 +08:00
Dušan Plavák
0504c21209 [spring] Fix invalid swagger2 annotation library version in pom.xml (#15832) 2023-06-13 21:07:30 +08:00
Frederic Jones
43b1ce2c89 Fix typo on swagger2 dependency (#15826) 2023-06-13 21:02:58 +08:00
zbarbuto
e5a9081456 [dart-dio] Use sourceFolder property instead of src (#15620) 2023-06-13 16:09:33 +08:00
devhl-labs
3ea09c2855 added new vendor extenion (#15806) 2023-06-13 15:55:18 +08:00
Jérôme Prinet
89056986b6 Enable Dependabot on Maven extensions (#15820) 2023-06-12 20:29:22 +08:00
Jérôme Prinet
9a3e6c7e38 Add Revved up by Gradle Enterprise badge (#15819) 2023-06-12 20:28:47 +08:00
William Cheng
d2e10a7229 install urllib3 < 2.1.0 (#15810) 2023-06-12 15:58:51 +08:00
Bruno Medeiros
ca80fcd03e fix(ktor-client): do not add jsonBlock if using kotlinx-serialization (#15793)
* fix(ktor-client): do not add jsonBlock if using kotlinx-serialization

* update existing templates

* add new kotlin-jvm-ktor-kotlinx_serialization

* add new kotlin-jvm-ktor-kotlinx_serialization to samples-kotlin-client.yaml pipeline

actually, kotlin-jvm-ktor-gson was duplicated, so I'm replacing the second one by kotlin-jvm-ktor-kotlinx_serialization

* extra FILES entry in the template

* enumUnknownDefaultCase=false for now since it's currently broken for ktor + kotlinx_serialization

* use openapi 3 petstore
2023-06-11 20:45:20 +08:00
Oleh Kurpiak
170a2f44fa fix compilation after class renaming 2023-06-11 12:50:52 +03:00
devhl-labs
9b305318b4 [abstract-csharp] Begin removing netcore references (#15805)
* find and replace CSharpNetCoreClientCodegen

* find and replace CsharpNetcoreFunctionsServerCodegen

* find and replace CSharpNetCoreReducedClientCodegen

* find and replace AspNetCoreServerCodegen

* renamed generators

* find and replace CSharpNetCoreClientCodegenTest

* find and replace CSharpNetCoreClientDeepObjectTest

* find and replace CsharpNetcoreFunctionsServerCodegenTest

* git mv files

* find and replace CsharpFunctionsServerCodegenTest

* find and replace CsharpModelEnumTest

* git mv CsharpModelEnumTest.java
2023-06-11 17:06:12 +08:00
William Cheng
5b0c021f26 better null check in isExtensionParent (#15807) 2023-06-11 16:34:59 +08:00
William Cheng
6788f43af0 Better handling of Inline schema (#15682)
* skip allOf inline subschema created as $ref

* add option for fallback

* add back atleastonemodel

* add log

* update java, kotlin, js samples

* update tests

* fix native client test

* fix java client errors by regenerating test files

* clean up python

* clean up powershell

* clean up php

* clean up ruby

* update erlang, elixir

* update dart samples

* update ts samples

* update r, go samples

* update perl

* update swift

* add back files

* add back files

* remove outdated test files

* fix test
2023-06-11 15:35:58 +08:00
William Cheng
21748e024a add py.typed (#15804) 2023-06-10 21:48:54 +08:00
Tiffany Marrel
fe2dde3708 [Postman] fix use of isBasic from #15294 (#15760) 2023-06-10 21:06:42 +08:00
Beppe Catanese
f240ed4e4e [Go] Serialize readonly fields (#15765)
* Do not skip readOnly fields in ToMap()

* Regenerate sample

* Add test

* Correct test
2023-06-10 19:23:52 +08:00
William Cheng
1fb0ab997f [Python] fix access_token set to None when constructing Configuration object (#15802)
* clean up files

* add tests for access_token

* fix bug with access_token

* update test method name
2023-06-10 19:22:02 +08:00
gyoganathan
fc474eab5f Added BadRequestException as a subclass in python (#15722)
Co-authored-by: Gomathi Yoganathan <gyoganathan@C02G45FPMD6R.corp.proofpoint.com>
2023-06-10 15:27:18 +08:00
Heiko Studt
586626498d [Python] default values escaping more appropriate (#15695)
Fixes #15541
2023-06-10 15:26:20 +08:00
Tiffany Marrel
5cf7ed928b fix security features listed in documentation - remove openID Connect by default (#15773) 2023-06-10 13:56:46 +08:00
dependabot[bot]
9d274cffca Bump s4u/setup-maven-action from 1.7.0 to 1.8.0 (#15800)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.7.0...v1.8.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-06-10 13:56:09 +08:00
devhl-labs
acc8274528 minor spacing change (#15801) 2023-06-10 13:53:46 +08:00
William Cheng
5a7be59967 Update bitrise.io config (#15789)
* update bitrise.io

* fix build

* avoid using mvn

* remove mvn

* update

* skip

* [swift5][client] fix CI issue cyclic dependency

* trigger build

* comment out vapour

* alarmfire

---------

Co-authored-by: Bruno Coelho <4brunu@gmail.com>
2023-06-09 20:38:27 +08:00
Jérôme Prinet
113cf9db40 Allow configuration cache compatibility (#15693)
* Allow configuration cache compatibility

Use FileSystemOperations to delete output folder if Gradle Version >= 6

* Skip Gradle legacy test if JDK is not compatible
2023-06-09 09:24:04 +08:00
martin-mfg
02790f987e always use @JacksonXmlElementWrapper and read xml data from referenced schema, updated (#15115)
* always use @JacksonXmlElementWrapper and read xml data from referenced schema

based on https://github.com/OpenAPITools/openapi-generator/pull/5371

* run generate-samples.sh

* suggestion: remove comment with empty name
2023-06-09 09:19:42 +08:00
James Wynn
d27fa00cf5 fix: #1466 additionalProperties works now in spring generator (#11572) (fix #1466)
* fix: #1466 additionalProperties works now in spring generator

* chore: chore: #1466 solved rebase conflicts

* 1466; updated samples

* [Spring] update additionalProperties MR

* [Spring] additionalProperties unit test

---------

Co-authored-by: Your Name <benfonty@gmail.com>
Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-06-08 16:38:53 +03:00
William Cheng
3d6f501710 add bileto to the sponsor section (#15787) 2023-06-08 10:21:27 +08:00
martin-mfg
17f1d351bf [Java][Jaxrs][Resteasy] add @Valid to getter methods, updated (#15064)
* [JavaJaxrsResteasy] add @Valid to getter methods

* improve whitespacing

---------

Co-authored-by: TNM Technologies <tnmtechnologies@users.noreply.github.com>
2023-06-08 09:43:01 +08:00
martin-mfg
b7f2b723aa [JAVA] fix toUrlQueryString for BigDecimal (#15764)
* add MyImportTest.java

* fix original issue

* fix same issue for native library

* remove MyImportTest

* add test configs

* generate samples (again?)

* generate samples again

* generate samples again, undo pom.xml mistake [amended to retrigger circliCi]
2023-06-08 09:34:06 +08:00
William Cheng
fbe768bb9c minor refactoring on default codegen (#15777) 2023-06-07 15:23:58 +08:00
William Cheng
87be942247 update rewrite to newer version (#15776) 2023-06-07 15:23:40 +08:00
William Cheng
658c6eb567 rename function to avoid confusion of function in parent class (#15775) 2023-06-07 14:57:15 +08:00
Frederic Jones
59ba00e1f3 Add support for swagger2 in [java] client generators (#15456)
* Add support for swagger2 in java client generator

* Target 7.x.x

* Upstream changes
2023-06-06 15:41:12 +08:00
Tiffany Marrel
79c2e87890 [Java] fix security features listed in documentation (#15756) 2023-06-06 15:12:22 +08:00
Tiffany Marrel
366e71adf9 [Kotlin-Spring] fix use of isBasic from #15048 (#15759) 2023-06-06 10:49:49 +08:00
Tiffany Marrel
d7226a6813 [Python] fix security features listed in documentation (#15755) 2023-06-06 10:49:01 +08:00
Tiffany Marrel
b5d766de4b [xojo] fix use of isBasic from #15194 (#15761) 2023-06-06 10:47:46 +08:00
Tiffany Marrel
d3a2e0e43e [Kotlin] fix security features listed in documentation (#15758) 2023-06-06 10:45:44 +08:00
devhl-labs
e439476e16 removed inheritence (#15767) 2023-06-06 10:36:59 +08:00
karzang
bc7bdca87f support nullable check for OAS 3.1 (#15698) 2023-06-05 19:34:51 +08:00
Tiffany Marrel
d2446013d1 [TypeScript] fix security features listed in documentation (#15751) 2023-06-05 17:18:01 +08:00
Tiffany Marrel
0d9ca8a2d5 [C# csharp] fix security features listed in documentation (#15687) 2023-06-05 17:13:27 +08:00
Tiffany Marrel
9bf752454e [PHP] fix security features listed in documentation (#15750) 2023-06-05 17:05:38 +08:00
devhl-labs
db3ef134b8 used partial methods for logging (#15749) 2023-06-05 14:08:56 +08:00
devhl-labs
4604bf016f fixed casing (#15748) 2023-06-05 14:06:54 +08:00
devhl-labs
e06e2cce69 fixed more warnings and spacing issues (#15743) 2023-06-04 16:13:52 +08:00
devhl-labs
3cff040fe8 used name in camel case (#15742) 2023-06-04 16:13:14 +08:00
devhl-labs
e5531c1135 improved spacing (#15741) 2023-06-04 16:12:37 +08:00
William Cheng
fbb0d6d935 add a test case for python-fastapi query parameter default value (#15744) 2023-06-04 13:37:12 +08:00
William Cheng
7295c97089 remove EOL in template file 2023-06-04 11:34:06 +08:00
Beau
961b83104e Fixed default for string query param (#15686) 2023-06-04 11:23:20 +08:00
devhl-labs
0943e5063a [csharp-netcore][generichost] Improved spacing (#15740)
* improved spacing

* addressed comment
2023-06-03 20:05:08 +08:00
Clément Tamisier
2b9d94cb0a add missing quote (#15732) 2023-06-03 13:36:13 +08:00
Tiffany Marrel
fad23df09c [Rust] fix security features listed in documentation (#15718) 2023-06-03 11:45:55 +08:00
Tiffany Marrel
7ab636d268 [JavaScript][javascript-flowtyped] fix security features listed in documentation (#15715) 2023-06-03 11:45:27 +08:00
Tiffany Marrel
2cc3e7865c [Go] fix security features listed in documentation (#15714) 2023-06-03 11:44:48 +08:00
William Cheng
a9536d6d7f minor fix readme md (#15739) 2023-06-03 11:42:34 +08:00
William Cheng
5e6e99b277 do not skip jacoco report in linux workflow (#15738) 2023-06-03 11:34:25 +08:00
Tiffany Marrel
eb0fe1bd1f [R] fix security features listed in documentation (#15716) 2023-06-03 11:14:35 +08:00
Tiffany Marrel
a953eb750f [Powershell] fix security features listed in documentation (#15717) 2023-06-03 11:11:56 +08:00
Olivier Sechet
65bee03e21 Use gitHost instead of github.com (#15720) 2023-06-03 11:08:33 +08:00
Michael Glanznig
05b9a899e4 add support for dry-run flag to Maven and Gradle plugins, fixes #15729 (#15734) 2023-06-03 11:06:58 +08:00
devhl-labs
2db7b0b177 removed more more warnings (#15737) 2023-06-03 10:51:13 +08:00
Stefan Koppier
f0a624a135 Documentation update (#15728)
* Updated Gradle documentation examples to use correct non-deprecated .set(x) syntax instead of directly assigning

* Updated more Gradle documentation examples to use correct non-deprecated .set(x) syntax instead of directly assigning

* Updated documentation to use Java 11 instead of Java 8
2023-06-02 20:59:18 +08:00
William Cheng
421bcd1787 Decommission csharp client generator (#15708)
* remove csharp client generator

* update samples/docs
2023-06-02 20:42:29 +08:00
William Cheng
7466d06b89 fix property name comparison in C# (#15697) 2023-06-02 20:42:12 +08:00
devhl-labs
f331cb0695 removed more hotfixes (#15723) 2023-06-02 16:42:39 +08:00
William Cheng
eb41941872 set mvnw to 3.8.8 (#15724) 2023-06-02 11:33:17 +08:00
stephanpelikan
0d4e399718 Do JSON serialization only if requested by mime-type (#13456) (#15676)
* Do JSON serialization only if requested by mime-type (#13456)

* Refactoring based on feedback to PR (#13456)
2023-06-01 19:53:24 +02:00
William Cheng
9c611b826b update readme to use maven wrapper (#15711) 2023-06-02 00:44:06 +08:00
William Cheng
fc76944e19 Update maven plugins, use maven 3.8.8 in CI (#15713)
* update maven pom.xml, use 3.9.2 in CI

* use maven 3.8.8

* use variable
2023-06-02 00:30:06 +08:00
stephanpelikan
3943e97e14 Introduce option 'importFileExtension' to typescript-fetch (#15439) (#15440) 2023-06-01 08:49:07 +02:00
Peter Lamby
6504eafddb [BUG][typescript-fetch] fix npe when debuggingModels (#15577) (#15578) 2023-06-01 08:33:29 +02:00
Tiffany Marrel
e593591401 cleanup new generator documentation (#15359)
* align wording across generators

* add missing authentication schemes from README of new generators

* fix anchor links in new generator documentation
2023-06-01 11:17:11 +08:00
Tiffany Marrel
c2f635a330 fix use of isBasic and isBasicBasic and isBasicBearer and isHttpSignature in documentation (#15443)
* [ada] fix use of isBasic condition

* [apex] fix use of isBasic condition

* [asciidoc] fix use of isBasic condition

* [python] fix use of isBasic condition

* [csharp C#] fix use of isBasic condition

* [htmlDocs] fix use of isBasic condition

* [Ruby] fix use of isBasic condition

* [scala] fix use of isBasic condition

* [julia] fix use of isBasic condition

* [Objective-C objc] fix use of isBasic condition

* [GraphQL] fix use of isBasic condition

* [MarkDown] fix use of isBasic condition
2023-06-01 09:47:00 +08:00
devhl-labs
f769070fa3 removed warnings (#15706) 2023-06-01 09:32:21 +08:00
William Cheng
63a311a2e6 update go samples 2023-06-01 09:09:00 +08:00
Chris McEvoy
5fae4f5d93 add go api key example in README.md (#15705) 2023-06-01 09:01:21 +08:00
devhl-labs
3ee2eeedba removed hotfix (#15703) 2023-06-01 08:49:22 +08:00
William Cheng
c8a1607b9f rename ts codegen method (#15696) 2023-06-01 00:24:40 +08:00
William Cheng
4d4477e368 update maven wrapper to 3.9.0 (#15694) 2023-06-01 00:24:20 +08:00
William Cheng
1ad8316a9d minor updates to readme (#15700) 2023-06-01 00:22:43 +08:00
Ross Bender
1561c33966 [JAVA] Generate client files with multiple enum oneOf types (#12687)
* handle multiple enum types for oneof

* add updates from generate-samples.sh

* add test coverage for oneof enum generation

* update doc and var names for clarity
2023-05-31 17:28:47 +08:00
Oleh Kurpiak
ff414dd6da [Spring] Defaulting for Spring HTTP Interface library (#15689) (fix #15631) 2023-05-31 11:20:58 +03:00
devhl-labs
0bcf9d8bde patch all property collections (#15678) 2023-05-31 00:36:35 +08:00
devhl-labs
1e1e786a72 created partial method to format arguments (#15677) 2023-05-31 00:35:50 +08:00
devhl-labs
d7d57e2ea3 fixed null reference exception (#15680) 2023-05-31 00:10:39 +08:00
William Cheng
10c270fda6 fix date isinstance check (#15675) 2023-05-31 00:03:14 +08:00
dependabot[bot]
1d5b1b0a8f Bump actions/setup-dotnet from 3.1.0 to 3.2.0 (#15679)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v3.1.0...v3.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>
2023-05-31 00:00:39 +08:00
gonzalad
8a0f374a45 spring: fix spring pageable used without any config (#15113) (fix #13052)
* spring: fix spring pageable used without any config

Spring Pageable is imported whenever we have an API with
a Pageable Json schema, even if x-spring-paginated is not
set.

This commit imports Spring Pageable only if
x-spring-paginated is set to true.

* spring: add unit test for pageable fix

* spring: fix spring pageable feedback from review

remove unrelated example

---------

Co-authored-by: gonzalad <gonzalad@users.noreply.github.com>
2023-05-30 08:42:33 +03:00
William Cheng
8bad27e0ab update python fastapi server dependencies (#15650) 2023-05-29 17:16:15 +08:00
William Cheng
7006b388de Update go-gin dockerfile to newer version: 1.19 (#15597)
* update go-gin dockerfile to newer version: 1.19

* add go.sum

* fix

* update go mod
2023-05-29 16:55:14 +08:00
Stephan Strate
8e2fa826e5 [kotlin-server] cleanup KotlinServerCodegen configuration (#15653) 2023-05-29 15:58:08 +08:00
William Cheng
431cc2ec8e Fix bugs (string comparison) in csharp generators (#15663)
* fix bugs in csharp generators

* undo change
2023-05-29 15:17:54 +08:00
devhl-labs
784c700d37 [csharp] Fix property names (#13681)
* build samples

* build samples

* commit java changes

* use var as prefix instead of _ for illegal names

* resolved conflict
2023-05-28 13:50:02 +08:00
devhl-labs
29223e0b81 [csharp-netore][generichost] Renamed ToModel to AsModel (#15662)
* renamed ToModel to AsModel

* build samples again
2023-05-28 11:54:21 +08:00
devhl-labs
9e8805d712 remove-more-null-warnings (#15664) 2023-05-28 11:52:44 +08:00
devhl-labs
0350d0e313 fixed example values (#15666) 2023-05-28 11:51:14 +08:00
William Cheng
f793d62744 Update dart workflow java version to 11 (#15660)
* update dart workflow java version

* add clean

* trigger build
2023-05-28 11:21:33 +08:00
devhl-labs
7fc23dd406 fixes a warning (#15661) 2023-05-28 11:20:45 +08:00
William Cheng
e4bf068a88 Update swagger parser to 2.1.14 (#15644)
* update swagger parser to 2.1.14

* minor fix, update tests
2023-05-27 22:55:56 +08:00
William Cheng
5afa33980c Add tests for Dockerfile, run-in-docker.sh (#15657)
* add tests for docker, run-in-docker.sh

* remove it

* use 11

* more tests

* trigger build failure

* Revert "trigger build failure"

This reverts commit 47fb248ca0.

* fix build
2023-05-27 13:39:10 +08:00
devhl-labs
4d52bf656e [csharp-netcore][generichost] Reduce null warnings (#15656)
* reduced null warnings

* removed null warnings
2023-05-27 12:00:47 +08:00
Austin Ziegler
af917f8865 Fix run-in-docker.sh for JDK 11+ (#15655)
OpenAPI Generator 7 requires JDK 11+, but the `run-in-docker.sh` had not
been updated and was still using JDK 8.
2023-05-27 11:21:15 +08:00
samypr100
fe6e4e459f [java] support required nullable properties on java okhttp-gson generator (#15462)
* Support required nullable properties on java okhttp-gson generator

* regen client after merge

* covering cases
* nullable - true ; required - true
* nullable - false ; required - true
* nullable - true ; required - false
* nullable - false ; required - false
2023-05-26 16:02:48 +03:00
Stefan Koppier
b3b672fdfc [Kotlin-client][jvm-spring-webclient] Added support for spring boot 3 (#15646)
* Bumped kotlin spring-jvm-webclient spring boot version from 2.7.11 to 3.1.0

* Do not redefine HttpHeaders and MediaType for simpler code

* Added a simpler constructor to the api and simplified encodeURIComponent

* Added support for Spring Boot 3 in kotlin-client jvm-spring-webclient generator

* Fixed small syntactical regression in Kotlin client build.gradle
2023-05-26 17:07:36 +08:00
William Cheng
8457dbf1a6 [gradle enterprise] various enhancements (#15607)
* use enforce-maven as the ID

* remove enforce formula use mvn clean in workflow
2023-05-26 15:33:50 +08:00
William Cheng
4c7963cf54 remove deprecated options in kotlin client generator (#15651) 2023-05-26 14:51:55 +08:00
William Cheng
bbb6f4e6a0 [go-server] Update Dockerfile go version to 1.19 (#15596)
* update dockerfile go version to 1.19

* Update modules/openapi-generator/src/main/resources/go-server/Dockerfile.mustache

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/go-server/Dockerfile.mustache

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* update samples

---------

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>
2023-05-26 10:51:07 +08:00
William Cheng
6213d39539 update doc 2023-05-26 10:10:23 +08:00
Beppe Catanese
1f4cbb8f00 Add multiple parameter examples to CodegenParameter (#15647)
* Add examples to CodegenParameter

* Set CodegenParameter examples

* Add examples to CodegenParameter

* Set CodegenParameter examples

* Regeneration samples
2023-05-26 09:20:22 +08:00
Nikita Vakula
3db7169959 [python-fastapi] Added a base class for the actual implementation (#14470)
It is very difficult to "merge" the changes, made by code generation,
and the changes, made by developers. It would be very useful to
separate the generated code and the code written by developers. In
addition this would remove the necessity to track the generated code.
Pyhton (since 3.6) has a hook, __init_subclasses__, that could be used
to solve exactly this problem.
The classes from *_base.py should be implemented in an ns package that is specified
by the additional parameter ("-p fastapiImplementationPackage=example_name").

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2023-05-26 08:58:39 +08:00
Alpha Shuro
b94952b3b7 Add link to find more variables (#15635) 2023-05-26 08:38:32 +08:00
dependabot[bot]
68a434818c Bump actions/setup-dotnet from 3.0.3 to 3.1.0 (#15648)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 3.0.3 to 3.1.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v3.0.3...v3.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>
2023-05-26 08:31:49 +08:00
William Cheng
910e463d50 update C# samples 2023-05-26 08:32:10 +08:00
Tiffany Marrel
ce587c7b57 [C] fix use of isBasic condition (#15534) 2023-05-25 23:39:43 +08:00
Tiffany Marrel
8aa8a60754 [typescript] fix use of isBasic condition (#15531) 2023-05-25 23:38:59 +08:00
devhl-labs
db795a2c1a [csharp-netcore] Removed deprecated package (#15595)
* removed deprecated package

* include the library for older than .net6
2023-05-25 23:37:12 +08:00
William Cheng
1145197fad Add workflow to tests C# projects with .net 6 (#15629)
* add workflow to tests C# projects with dotnet 6

* trigger build

* fix cmd
2023-05-25 21:06:51 +08:00
gonzalad
d52e3fbfda spring: fix multiline tag description (#15112) (fix #12474)
* spring: fix multiline tag description

@Tag description should merge multiple lines into single line
and trim the newline char at the end

The fix was done in a similar way to what is done for operation description.

* spring: multiline tag description add unit test

---------

Co-authored-by: gonzalad <gonzalad@users.noreply.github.com>
Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-05-25 11:01:12 +03:00
devhl-labs
63c26fc794 upgarded test project framework (#15634) 2023-05-25 11:00:38 +08:00
Oleh Kurpiak
765628fb77 Fix extensions handling for allOf with single schema (#15632) 2023-05-25 10:59:00 +08:00
Oscar Rodríguez
2b9677a29e Adds operation null check avoid null exception (#15599)
* Adds operation null check in the method GetOperationServerUrl to avoid null exception

* Adds operation null check to avoid null exception to the csharp net core mustache

* update C# samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-05-24 17:33:58 +08:00
Tiffany Marrel
80c85eff1b [Haskell] fix use of isBasic condition (#15612) 2023-05-24 16:58:46 +08:00
William Cheng
3990b73ff3 remove scala-httpclient client generator (deprecated) (#15627) 2023-05-24 16:39:35 +08:00
aramflo
2042fb222a CASS-399: Adds {{>partial_header}} to missing mustache files in aspnetcore. (#15616) 2023-05-24 16:37:46 +08:00
William Cheng
15604b31d6 fix go server string compare (#15589) 2023-05-24 15:47:42 +08:00
William Cheng
0e8d997bf6 [rust-client]: fix for collectionFormat=multi (#15626)
* [rust-client]: fix for collection format multi

* update rust samples

---------

Co-authored-by: Gorka Kobeaga <gorka@kobeaga.eus>
2023-05-24 15:45:00 +08:00
Stephan Strate
9890f076a9 [kotlin-server] add support for jakarta ee namespace (#15593) 2023-05-24 08:44:39 +01:00
William Cheng
48ef91acc4 [python] Add test for nullable property with pattern (#15625)
* add test for nullable property with pattern

* update samples
2023-05-24 15:13:53 +08:00
George
5b5cb1f7e0 [groovy] support enum generation in groovy client (#15619)
* support generation of enums for groovy

* add custom json generator for groovy

* add nestet enums in groovy templates

* add indent for nested Groovy enums & fix compilation errors in Groovy ApiUtils

* save auto generated samples&docs for groovy
2023-05-24 15:12:59 +08:00
Tiffany Marrel
358397fe3f [rust] fix use of isBasic condition (#15532) 2023-05-24 14:43:06 +08:00
Huan-Cheng Chang
1a483b2c9a fix variable name (#15623)
Signed-off-by: Huan-Cheng Chang <changhc84@gmail.com>
2023-05-24 14:17:41 +08:00
Tiffany Marrel
f5903bc391 [swift5] fix use of isBasic condition (#15613) 2023-05-23 14:07:48 +01:00
William Cheng
833f649768 [Kotlin] minor enhancements, remove KotlinServerDeprecatedGenerator (#15608)
* better code foramt, add library creator

* remove kotlin server deprecated generator
2023-05-23 13:45:10 +08:00
Stefan Koppier
9358ab9d1d [kotlin] New 'jvm-spring-webclient' library (#15568)
* Added library 'jvm-spring-webclient' to Kotlin client generator

* Reran all generators and generated docs

* Changed target of kotlin-jvm-spring-webclient sample from 2_0 to 3_0

* Added build of kotlin-jvm-spring-webclient to github workflow
2023-05-23 11:34:52 +08:00
devhl-labs
5299935c20 [csharp-netcore] Removed .netcore 3.1 (#15605)
* removed .netcore 3.1

* dont use .net standard for test package
2023-05-23 10:39:06 +08:00
William Cheng
273be4634e Update Enforcer (maven plugin) rule (#15575)
* better enforcer with gradle mgmt plugin

* update gradle-enterprise

* fix id
2023-05-23 00:56:50 +08:00
Tiffany Marrel
cbcf3d36f6 [Java] [Kotlin] (#14876) fix use of isBasic conditions - do not use HttpBearerAuth (or HttpBasicAuth) for other http auth methods (such as http signature auth or custom schemes) (#15220)
* remove http signature from test yaml when not supported

* do not use HttpBearerAuth for signature auth or other unsupported http auth method

ignore unsupported http auth method unless generated code would not compile (in which case, an exception is thrown)

* [Java] fix use of isBasic condition

* [kotlin] fix use of isBasic condition
2023-05-22 16:08:08 +08:00
Tiffany Marrel
216e2c45ff [dart] fix use of isBasic condition (#15523) 2023-05-22 16:07:37 +08:00
martin-mfg
ad5cc827f0 remove fullJavaUtil (#15033) 2023-05-22 14:40:35 +08:00
devhl-labs
2af661d5b0 used default cancellation token (#15594) 2023-05-22 12:53:18 +08:00
William Cheng
605cc7bd29 Set maven to 3.9 in Github workflow (#15592)
* set maven to 3.9

* add java version

* fix maven version

* fix java version
2023-05-22 11:25:38 +08:00
Rustam
7881482161 [Ktor] Update generator to latest Ktor version #14061 (#14296) 2023-05-21 23:11:01 +08:00
William Cheng
5e800d9633 Update pom.xml with new plugin, setting (#15590)
* update pom.xml with new plugin, setting

* update workflow
2023-05-21 21:13:45 +08:00
William Cheng
5018d3c131 Update to JDK11 (#15553)
* update to jdk11, fix tests

* update workflow to use jdk11 instead

* update travis, circleci build

* fix test failure, update CI

* skip mvn install in appveyor

* add windows tests

* fix workflow

* remove log level

* add timeout

* sleep more

* skip tests

* sleep more

* only skip tests

* test with jdk11 only

* fix gradlew

* remove skip tests

* start server after build

* update gradle version

* more time to start server

* update to 420

* comment out build

* update

* update
2023-05-21 16:22:44 +08:00
William Cheng
6142315bef Revert "fix#14119 property generateApis=false not working (#14126)" (#15588)
This reverts commit be9f1b6e44.
2023-05-21 15:58:21 +08:00
William Cheng
e758e4a49a Improve Appveyor tests (#15585)
* use docker

* update

* skip httpclient

* update

* sleep 120

* use cmd

* restore tests

* sleep 120

* clean up

* skip
2023-05-21 15:56:51 +08:00
Stefan Koppier
08bb0f42fe Fixed additional property omitGradleWrapper for kotlin generator (#15584) 2023-05-20 23:29:24 +08:00
Tiffany Marrel
e7039f434e [cpp C++] fix use of isBasic condition (#15535) 2023-05-20 20:13:04 +08:00
Tiffany Marrel
89e4b24295 [Ada] [Java] fix Codegen copies (#15513)
* fix incomplete codegensecurity copies

* refactoring
2023-05-20 20:12:18 +08:00
Tiffany Marrel
3e10c5dbcf [bash] fix use of isBasic condition (#15521) 2023-05-20 20:11:26 +08:00
Tiffany Marrel
e83640c836 [perl] fix use of isBasic condition (#15524) 2023-05-20 20:09:39 +08:00
Tiffany Marrel
7eeb7f6ed2 [PHP] fix use of isBasic condition (#15520) 2023-05-20 20:09:18 +08:00
Tiffany Marrel
b7a9373233 [powershell] fix use of isBasic condition (#15525) 2023-05-20 20:08:37 +08:00
Tiffany Marrel
9d6f80a7cf [android] fix use of isBasic condition (#15528) 2023-05-20 20:08:18 +08:00
Tiffany Marrel
b7546888d1 [eiffel] fix use of isBasic condition (#15533) 2023-05-20 20:07:48 +08:00
Tiffany Marrel
2d8ec8b008 [xojo] fix use of isBasic condition (#15526) 2023-05-20 20:06:57 +08:00
Tiffany Marrel
7443c95d48 [lua] fix use of isBasic condition (#15529) 2023-05-20 20:06:34 +08:00
Florian Morgan
f0d439fbce [kotlin-spring] Fix inheritance compile error because of missing use-site target on annotation (#3596) (#15488) 2023-05-19 10:47:26 +01:00
William Cheng
f5f382c87a Improve build time (#15566)
* remove java helidon client, server tests (covered in sample tests)

* add new workflow to test java helidon samples

* trigger build

* test jdk 17 only

* Revert "trigger build"

This reverts commit b9528a6588.
2023-05-19 09:45:43 +08:00
Stephan Strate
2250aae6a6 [kotlin-server] fix bean validation site targets (#14997) 2023-05-18 15:56:03 +01:00
William Cheng
1204662a64 undo changes to petstore.yaml 2023-05-18 16:09:40 +08:00
William Cheng
54c8bf8733 [go-server] Add tests for boolean query parameter (#15563)
* add tests for boolean query parameter

* fix test
2023-05-18 15:39:43 +08:00
William Cheng
bba9815d1e Add workflow to test builds and Gradle plugin on Windows (#15562)
* add workflow to test builds on windows

* fix gradle
2023-05-18 15:23:21 +08:00
Dmytro Vitiuk
08184086c0 fix typo in go-server codegen (#15557) 2023-05-18 15:18:22 +08:00
devhl-labs
4a5437968f added OrDefault method (#15551) 2023-05-18 11:22:44 +08:00
William Cheng
d8ed253439 update C# samples 2023-05-18 11:21:16 +08:00
Jean-François Côté
b7dc6ce598 [Aspnetcore] Fix nullable warnings part 1 (#15555)
* Fix nullable errors in attribute and filters

* Add missing samples
2023-05-18 11:14:55 +08:00
Tiffany Marrel
c7d185dda9 [dart][dio] fix features of dart-dio generator (#15537) 2023-05-18 11:02:38 +08:00
Oleh Kurpiak
d60b10826c [Gradle] add inputSpecRootDirectory for generate task (#15548) (fix #15483) 2023-05-17 09:58:08 +03:00
William Cheng
04b34e7096 update doc 2023-05-17 02:15:24 +08:00
rledisez
44ad6d5eac [go-server] Support min/max/defaults for values (#15185)
* [go-server] Support min/max/defaults for values

Enforce, for the go-server, to check the minimum and maximum values
specified in the openapi description. Also apply the default if the
parameter is not passed.

Fix #14013

* Fix merge conflict

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Improve UnmarshalJSON implementation

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Improve default value handling for string

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Fix suggested changes

* rework option pattern

* add imports based on types/min max values

---------

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>
2023-05-17 01:58:28 +08:00
William Cheng
d3f63caf0b Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-05-17 01:02:51 +08:00
William Cheng
6a742fe398 update doc 2023-05-17 01:02:45 +08:00
Dmitriy
be9f1b6e44 fix#14119 property generateApis=false not working (#14126) 2023-05-17 01:02:12 +08:00
Beppe Catanese
ab4a05a959 Postman Collection Generator (#15294)
* Add Postman generator

* Add Postman generator doc

* Remove contact data

* Change license data

* Add Postman in samples

* Add Postman in bin/configs

* Commit changed files

* Update Postman doc

* Correct generator connfiguration

* Regenerate docs

* Correct javadoc

* Use File instead of FileReader

* Rename to postman-collection (schema) generator

* Commit regenerated files

* Improve help and Javadoc

* Commit regenerated files
2023-05-17 00:51:53 +08:00
William Cheng
9c968e8bae Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-05-17 00:50:51 +08:00
Tiffany Marrel
b35ffd3c37 add missing security schemes to new generator README template (#15536) 2023-05-17 00:50:22 +08:00
William Cheng
aa0d637631 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-05-17 00:49:41 +08:00
Tiffany Marrel
00676870a3 add HTTP signature to SecurityFeature (#15542) 2023-05-17 00:48:58 +08:00
Jean-François Côté
842ca3db69 Fix warning when building because of the missing documentation (#15543) 2023-05-17 00:44:58 +08:00
Tiffany Marrel
63ac3e1039 [Spring] fix use of isBasic condition (#15530) 2023-05-16 16:37:20 +03:00
William Cheng
1210229e36 Merge branch 'version-bump' of https://github.com/devhl-labs/openapi-generator 2023-05-16 17:20:52 +08:00
William Cheng
0d1f562d13 update c++ samples 2023-05-16 17:20:46 +08:00
Super Genius
87ea870f03 Update modelbase-header.mustache (#15453)
Fixes warning in ModelBase.h

warning: loop variable 'jitem' creates a copy from type 'const web::json::value' [-Wrange-loop-construct]
2023-05-16 17:13:59 +08:00
Sylvain Joubert
3a172c3753 [C++][Pistache] Add missing 'override' on virtual methods (#15469)
This is following #15279
Marking those methods 'override' should avoid producing
'-Winconsistent-missing-override' warnings or similar.
2023-05-16 17:13:34 +08:00
Sylvain Joubert
48d257b5c9 [C++][Pistache] Generate empty JSON object instead of a null value (#15468) 2023-05-16 17:05:44 +08:00
Tiffany Marrel
016507cf5c [javascript] fix use of isBasicBasic and isBasicBearer conditions (#15522) 2023-05-16 15:25:18 +08:00
William Cheng
1c6decb394 minor enhancements to the aspnetcore server generator (#15518) 2023-05-16 15:24:48 +08:00
Jean-François Côté
edad90e794 Bugfixes/12952 fix newtonsoft using (#15515)
* Fix #12952: Handle useNewtonsoft parameter correctly
Next commit will have all modified samples.

* Fix #12952: Add generated samples

* Fix #12952: Add missing files
2023-05-16 14:41:51 +08:00
Andrii Serkes
fbf42de200 Fix JsonNullable issue for Helidon generators (#15423)
* fix JsonNullable issue

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples, refactoring

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples, refactoring

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples

Signed-off-by: aserkes <andrii.serkes@oracle.com>

---------

Signed-off-by: aserkes <andrii.serkes@oracle.com>
2023-05-16 14:34:37 +08:00
William Cheng
6d56a1911e add new file 2023-05-16 14:32:52 +08:00
William Cheng
5ffa233dfe update asciidoc samples 2023-05-16 14:18:14 +08:00
William Cheng
1c56b07634 update c# samples 2023-05-16 14:17:42 +08:00
Furer Alexander
8b64fa54b2 Update index.mustache (#15481)
set toc level to 4 (accordingly to generated layout)
2023-05-16 14:06:57 +08:00
devhl-labs
25620e7df8 removed extra line break (#15507) 2023-05-16 14:05:53 +08:00
devhl-labs
cc1226c0db [csharp-netcore] Zero based inner enum sample (#15506)
* added to the sample

* build samples again
2023-05-16 14:05:17 +08:00
William Cheng
c5a1dbecfb [openapi-normalizer] enable some rules by default (#15501)
* enable certain normalizer rule by default

* minor fix

* better error handling

* update doc
2023-05-16 14:04:52 +08:00
William Cheng
d02679b5b6 rename method to avoid code analysis error (#15508) 2023-05-16 13:59:20 +08:00
William Cheng
01ed5975e1 rename python-nextgen to python (#15504) 2023-05-16 13:54:07 +08:00
martin-mfg
dd6ccaa84f import @Valid in Spring delegates (#15330) (fix #15213) 2023-05-15 14:55:21 +03:00
Oleh Kurpiak
54cb33c6a1 [Spring] remove deprecated annotation from no-args constructor (#15512) 2023-05-15 14:13:18 +03:00
zaenk
66caaf9a33 [kotlin-spring] interfaceOnly=true flag skips spring-boot plugin repackage goal (#15495)
As interfaceOnly=true not generates main class the repackage goal for the artifact fails.

This change applies the same template as used in JavaSpring or in kotlin-spring spring-cloud library.
2023-05-15 11:52:55 +01:00
William Cheng
b6b888302e use go-petstore.yaml in debugging test 2023-05-14 23:06:20 +08:00
William Cheng
f0519eb934 Fix Go client tests (#15505)
* fix go tests

* more fixes

* fix mock
2023-05-14 21:17:48 +08:00
devhl-labs
fd20632ba1 [csharp] Changed enums to start from 0 (#15503)
* zero based enums

* changed locale
2023-05-14 16:35:54 +08:00
William Cheng
780d266fe1 Decommission python client generator (#15486)
* decomission python client generator

* udpate

* update doc
2023-05-14 16:33:13 +08:00
devhl-labs
cc2dc65496 fixed the order to match the constructor (#15500) 2023-05-13 10:45:03 +08:00
Ween Jiann
78bffff8f3 [Go] Update API naming to follow Golang standard pkg (1 line change) (#15331)
* Add apiNameSuffix to AbstractGoCodegen

* Regenerate files

* Update tests

* Regenerate files

* Update test files

* Regenerate for CI test

* Regenerate for CI test

* Remove some docs

* Add files back
2023-05-13 09:40:26 +08:00
Beppe Catanese
aeecd9cc26 Correct script in PULL_REQUEST_TEMPLATE.md (#15480) 2023-05-12 15:03:22 +08:00
William Cheng
3371e883ab Decommission python-legacy, python-prior client generators (#15475)
* decommission python-legacy, python-prior client generators

* update tests

* update doc
2023-05-12 13:46:39 +08:00
Noor Dawod
c84b949df1 Encode a Set in toJson() properly (#15435)
* Convert `Set` to `List` in `toJson()` for properly encoding a set.

* Generate samples code.

* Convert to List before encoding in `toJson()`.

* Add `!` for nullable properties.
2023-05-11 17:40:41 +08:00
martin-mfg
e152799569 [JAVA] fix "text/plain" with charset specifications (#15399) 2023-05-11 16:47:42 +08:00
devhl-labs
977de5b324 moved deserialization to template (#15474) 2023-05-11 16:44:37 +08:00
Bodo Graumann
fc71f98bed [typescript] Add missing types field to export declaration (#15403)
* Add types to exports in package.json

* Regenerate and build petstore samples
2023-05-11 09:59:43 +02:00
William Cheng
4384198cb1 update README with v7.0.0 2023-05-11 10:46:55 +08:00
William Cheng
f8e15f1f96 Merge remote-tracking branch 'origin/7.0.x' 2023-05-11 10:43:37 +08:00
William Cheng
7f8b853f50 Prepare 6.6.0 release (#15466)
* prepare 6.6.0 release

* update samples
2023-05-11 10:01:36 +08:00
William Cheng
1d2d56ab65 Merge remote-tracking branch 'origin/master' into 7.0.x 2023-05-10 17:20:38 +08:00
William Cheng
bb8098a66f add --quite to mvn cmd in travis.ci 2023-05-10 17:17:08 +08:00
William Cheng
edc589ac81 update doc 2023-05-10 17:08:48 +08:00
Jérôme Tama
6e747259ae Initial OIDC support (#15417)
* Initial OIDC support

* Removes 'println'
Changes OIDC to OpenIdConnect
Adds generated files

* fix rebase errors
2023-05-10 16:51:37 +08:00
William Cheng
9ace780eac update samples 2023-05-10 15:14:29 +08:00
William Cheng
0c3460f95b Merge remote-tracking branch 'origin/master' into 7.0.x 2023-05-10 15:00:56 +08:00
Tiffany Marrel
8a6c708884 [Java] Cleanup documentation (#15300)
* [Java] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Java] fix anchor links in documentation
2023-05-10 14:14:44 +08:00
Tiffany Marrel
f9937e77d6 [csharp C#] cleanup documentation (#15305)
* [C# csharp] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [C# csharp] fix anchor links in documentation
2023-05-10 14:11:43 +08:00
Tiffany Marrel
ef5dc1c8a0 [Julia] Cleanup README docs (#15295)
* [Julia] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Julia] fix anchor links in documentation
2023-05-10 14:10:35 +08:00
Jacob Wang
b4d2c14f12 Update scala versions to 2.13.10 and 2.12.17 (#15459)
* Update scala versions to 2.13.10 and 2.12.17

* update samples
2023-05-10 01:30:45 +08:00
Nuno Miguel Micaelo Borges
4e27041bdc Add microprofile OpenApi annotations to JavaRxSpec (quarkus library). Add OpenID support (core) (#15407)
* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

---------

Co-authored-by: Nuno Borges <Nuno.Borges@ctw.bmwgroup.com>
2023-05-10 00:55:41 +08:00
Tiffany Marrel
c251202869 [Python] cleanup documentation (#15301)
* [Python] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Python] fix anchor links in documentation
2023-05-09 16:24:56 +00:00
Csaba Kozák
25aba7279a [kotlin][client] Use Kotlin code style in parameter enum class names (#15447)
* [kotlin][client] Use Kotlin code style in parameter enum class names

before: MyParam_myOperation
after: MyParamMyOperation

* [kotlin][client] update generated samples
2023-05-09 16:33:30 +01:00
Csaba Kozák
da9ad4a008 [kotlin][client] Small improvements (#15429)
* [kotlin][client] update Gradle wrapper in generated project

* [kotlin][client] Add @JsonClass(generateAdapter = false) to generated enums when using moshi library

This is needed, so the moshi generated R8 rules will include the enum classes:

https://github.com/square/moshi#enums

* [kotlin][client] Update generated samples
2023-05-09 16:28:54 +01:00
Tiffany Marrel
ef35e6d7ea [rust] fix documentation of API authorization in README files (#15352)
fix hierarchy level + align wording across generators
2023-05-09 14:30:54 +08:00
Tiffany Marrel
76fd2a2f66 [Scala] cleanup documentation (#15304)
* [Scala] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Scala] fix anchor links in documentation
2023-05-09 14:30:28 +08:00
Tiffany Marrel
1443dd9493 [perl] fix documentation of API authorization in README files (#15356)
align wording across generators
2023-05-09 14:26:30 +08:00
Tiffany Marrel
9cb14aeb8c [php] fix documentation of API authorization in README files (#15306)
fix hierarchy level + align wording across generators
2023-05-09 14:25:14 +08:00
Tiffany Marrel
4deaad557e [Go] fix documentation of API authorization in README files (#15345)
align wording across generators
2023-05-09 14:24:16 +08:00
Tiffany Marrel
adfb963831 [objc] fix documentation of API authorization in README files (#15347)
fix hierarchy level + align wording across generators
2023-05-09 14:23:19 +08:00
Tiffany Marrel
55e9f66cae [JavaScript] fix documentation of API authorization in README files (#15346)
align wording across generators
2023-05-09 14:22:41 +08:00
Tiffany Marrel
be651e7776 [powershell] cleanup documentation (#15355)
* [powershell] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [powershell] fix anchor links in documentation
2023-05-09 14:21:09 +08:00
Tiffany Marrel
2b19d5f94d [Ruby] fix documentation of API authorization in README files (#15353)
align wording across generators
2023-05-09 14:17:34 +08:00
Tiffany Marrel
e32da0efda [apex] fix documentation of API authorization in README files (#15348)
align wording across generators
2023-05-09 14:16:58 +08:00
Tiffany Marrel
63913f2d0a [c] fix documentation of API authorization in README files (#15341)
align wording across generators
2023-05-09 14:15:27 +08:00
Tiffany Marrel
ba8ca1e7ac [R] fix documentation of API authorization in README files (#15354)
align wording across generators
2023-05-09 14:07:50 +08:00
Jorge Rodríguez Martín
fb059c259c [BUG][JAVA][restTemplate] ApiClient is not compatible with spring-web 6 Observation API (#15421)
* ApiClient is not compatible with spring-web 6 Observation API. Field uri is never filled

* Update samples
2023-05-09 14:04:51 +08:00
William Cheng
3cf646cda8 [csharp-netcore] fix back slash in regex (#15441)
* fix back slash in regex (csharp-netcore)

* undo add pattern test

* update shasum
2023-05-09 13:52:46 +08:00
devhl-labs
7bc10b03d0 [csharp-netcore][generichost] Move deserialization to method (#15454)
* removed extra line break

* moved deserialization to method
2023-05-09 13:47:15 +08:00
Dan Čermák
ff9b38404e Fix repository url in pyproject.toml (#15444)
The url had the repo id & user id in the wrong order
2023-05-09 01:29:34 +08:00
Tiffany Marrel
3685c0c1d6 [dart] cleanup documentation (#15344)
* [dart] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [dart] fix anchor links in documentation

* [dart] address review comments

This reverts commit cff17aca and part of commit eecf1dd4
2023-05-09 01:27:51 +08:00
Ahmed Fwela
3d722c1083 [dart-dio] fix endpoints returning null (#15433)
* fix endpoints returning null

* add const back
2023-05-09 01:27:29 +08:00
William Cheng
f82a311bf8 update samples 2023-05-08 18:02:59 +08:00
Dan Čermák
5d602c628e Add Python 3.11 to github-workflow.mustache (#15442) 2023-05-08 17:51:42 +08:00
Beppe Catanese
3d2ec72461 [JAVA] Okhttp-gson: blank line between annotations and method signature (#15430)
* Remove extra blank line

* Regenerate samples
2023-05-08 14:39:46 +08:00
William Cheng
b4eb7071e4 [python-nextgen] support constructor with position argument in oneOf/anyOf model (#15434)
* support position constructor

* update samples

* update test
2023-05-08 10:00:57 +08:00
Tomasz Prus
72cb03b865 [python-nextgen] fix typing for bytes with validations (#15437)
* [python-nextgen] fix typing for bytes with validations

* update samples
2023-05-08 10:00:29 +08:00
devhl-labs
c6b31a3e08 removed extra line break (#15438) 2023-05-08 09:54:34 +08:00
William Cheng
cc620d8ba2 fix incorrect mustache tag (#15424) 2023-05-05 16:15:53 +08:00
Tiago Silva
56495d1486 Python Allow clients to define TLS Server name when using (#15283)
This PR allows users to define custom SNI when using the python clients

Fixes https://github.com/OpenAPITools/openapi-generator/issues/15282
2023-05-05 16:11:57 +08:00
William Cheng
737cb362b0 add option, update doc (#15419) 2023-05-05 14:59:33 +08:00
William Cheng
7259d812bd [csharp-netcore] Better handling of oneOf/anyOf with duplicated data type (#15377)
* better handling of oneOf/anyOf with duplicated data type

* update generichost template

* remove newline in eof

* bug fix (#15413)

---------

Co-authored-by: devhl-labs <shawnkanyer@gmail.com>
2023-05-05 14:25:45 +08:00
Jorge Rodríguez Martín
76c05b2991 Add property generateClientAsBean for config creation of ApiClient.java and XXXApi.java (#15416) 2023-05-05 14:18:44 +08:00
William Cheng
182240ea1d [csharp-netcore] Better regular expression (#15378)
* do not escape regular expression in c#

* update samples

* better code format
2023-05-04 18:42:30 +08:00
William Cheng
6fa089adee Add @deprecated to methods in python-nextgen (#15380)
* add @deprecated to methods in python-nextgen

* add deprecated as comment

* add deprecation warnings

* add warnings import

* remove import
2023-05-04 18:17:24 +08:00
William Cheng
854afc9be1 Update elm workflow to cover more tests (#15415)
* add more elm tests

* trigger build failure

* Revert "trigger build failure"

This reverts commit 83b407f5a1.
2023-05-04 16:16:58 +08:00
William Cheng
bc6d30832b add copyright, remove unused import (#15394) 2023-05-04 16:14:30 +08:00
William Cheng
a0b79d87f2 Minor improvement to the N4JS client generator (#15414)
* minor improvement to the N4JS client generator

* mark generator as beta
2023-05-04 16:13:10 +08:00
mmews-n4
db478c3452 Support language N4JS (2nd) (#15397)
* n4js initial commit

* incorporate feedback from user

* add tests

* fix media type in case of DELETE method

* fix media type

* some minor fixes

* options fix for booleans

* small fixes

* generated files by ./bin/utils/ensure-up-to-date

* remove String::toLowerCase due to de.thetaphi:forbiddenapis

* adjust test expectation

* fix test expectations

* fix test expectation

* add note to section 'Languages/Generators'

* remove file according to review

* replace tabs by spaces

* replace tabs by spaces (2)

* update two generated files

* remove test file

* move statement
2023-05-03 20:50:21 +08:00
William Cheng
aea7cef6a1 Revert "Support language N4JS (#15089)" (#15396)
This reverts commit a83470066e.
2023-05-03 15:43:07 +08:00
mmews-n4
a83470066e Support language N4JS (#15089)
* n4js initial commit

* incorporate feedback from user

* add tests

* fix media type in case of DELETE method

* fix media type

* some minor fixes

* options fix for booleans

* small fixes

* generated files by ./bin/utils/ensure-up-to-date

* remove String::toLowerCase due to de.thetaphi:forbiddenapis

* adjust test expectation

* fix test expectations

* fix test expectation

* add note to section 'Languages/Generators'

* remove file according to review
2023-05-03 15:23:45 +08:00
William Cheng
0cbf118757 add surefire rerun tests (#15390) 2023-05-03 15:19:55 +08:00
Robert Schweizer
0a4648f7a0 fix(python-nextgen): Date query params typo (#15395) 2023-05-03 15:17:51 +08:00
William Cheng
4e8d41bd79 Fix circleci test failures (#15317)
* fix circleci test failures

* trigger test

* update circleici pom.xml

* rearrange test

* comment out tests

* fix test

* comment out python-prior

* comment out test

* fix import

* comment out tests
2023-05-03 15:17:25 +08:00
Christopher Kobusch
45a3fe05f5 Add Xojo client generator (#15194)
* Add Xojo client

* Add Xojo client generator

* Add Xojo client generator

* hide generation timestamp for xojo samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-05-03 14:06:40 +08:00
Beppe Catanese
61aadb32bd [GO] Add go.mod in go-gin-server generator (#15339)
* Add go.mod

* Add test

* Generate import path

* Update samples
2023-05-03 11:45:24 +08:00
William Cheng
92bcdea2fa Revert "Remove CXF imports and dependency (#15364)" (#15392)
This reverts commit 6686fb87b9.
2023-05-03 11:00:12 +08:00
William Cheng
021d3a311a [python-nextgen] Add ApiResponse object (#15367)
* add ApiResponse object

* fix tests

* improve api response

* add back _preload_content, add tests
2023-05-03 09:45:54 +08:00
William Cheng
bec32ae67f update samples 2023-05-03 09:43:43 +08:00
vanwobe
8a9afabb61 https://github.com/OpenAPITools/openapi-generator/issues/14599 (#15388)
Co-authored-by: vanwobe <bert.vanwolleghem@ext.ec.europa.eu>
2023-05-03 09:30:11 +08:00
Michel Wohlert
502a8a8ebf Fix request parameter encode call (#15313)
Co-authored-by: Wohlert, Michel <michel.wohlert@karlstorz.com>
2023-05-03 01:10:32 +08:00
Steffen Nießing
6686fb87b9 Remove CXF imports and dependency (#15364) 2023-05-03 01:09:16 +08:00
Albina Gimaletdinova
f8d5c547e3 Add urls to ktor and Vert.x in README (#15369) 2023-05-02 23:11:24 +08:00
Peter Leibiger
e356b770d2 [dart][dart-dio] Fix property deprecation and add parameter deprecation (#15374)
Addresses problems in #13818
2023-05-02 19:42:06 +08:00
Noor Dawod
fefbfd6aa2 Drop default value when unnecessary. (#15368)
* Drop default value when unnecessary.

* Simplify code.

* Simplify code.

* Generate Petstore sample code.
2023-05-02 19:41:33 +08:00
André Andersson
42fa07dd33 [Elm] Add support for petstore spec (#15257)
* Add petstore config

* Expand lambda to allow formatting of partials

* Fix order of operation with parenthesis

* Fix not exposing needed enum to string converters

* Add support for form params including files

* Add generated petstore client

* Regenerate existing elm client

* Add script that all files compile successfully

* Remove old unmaintained petstore client

* Add pipeline to try and compile elm clients
2023-05-02 16:50:57 +08:00
William Cheng
961980f284 [python-nextgen] add support for StrictBytes (#15365)
* add strictbyte support in python-nextgen client

* update samples

* use union of strictbytes, strictstr for backward compatibility
2023-05-01 10:51:22 +08:00
William Cheng
c7c5dd2673 remove unused file 2023-05-01 10:05:39 +08:00
Tiffany Marrel
5f8c4ec640 [swift5] cleanup documentation (#15351)
* [swift5] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [swift5] fix anchor links in documentation

---------

Co-authored-by: Tiffany Marrel <tiffany.marrel@flowable.com>
2023-04-30 09:11:45 +01:00
William Cheng
ab819b9b18 mark python-nextgen as stable (#15360) 2023-04-29 13:51:01 +08:00
William Cheng
1f4d323020 fix enum support in oneof/anyof in python-nextgen (#15340) 2023-04-29 13:50:47 +08:00
Rodrigo de Almeida - RMA3
e07069731d [JAVA] Enumeration comparison in Java using equalsIgnoreCase when String - Fix issue 8084 (#15273)
* fix issue 8084

* add config

* add config

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-28 17:27:41 +03:00
William Cheng
64c3be93a8 fix URL to 6.6.0 snapshot version 2023-04-28 14:08:18 +08:00
William Cheng
2bd1a15217 [python-nextgen] fix empty dict in body parameter (#15336)
* add more tests for python-nextgen

* update samples

* add fix for empty dict body

* update samples
2023-04-28 14:06:27 +08:00
William Cheng
f4c041e496 fix to_json, to_dict in python nextgen (#15337) 2023-04-28 14:04:30 +08:00
William Cheng
f4e0eb9bc9 Update git-commit-id maven plugin to newer version (#15332)
* update git commit plugin to newer version

* roll back to previous version
2023-04-28 08:45:14 +08:00
Oleh Kurpiak
1f23b019fa [Spring] fix Paginated without params (#15315) (fix #15265) 2023-04-27 14:32:11 +03:00
Tiffany Marrel
da96058f5b [kotlin] cleanup documentation (#15307)
* [kotlin] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [kotlin] fix anchor links in documentation

---------

Co-authored-by: Tiffany Marrel <tiffany.marrel@flowable.com>
2023-04-27 11:33:15 +01:00
William Cheng
e211e1451d update extension to 1.17, update config (#15326) 2023-04-27 15:01:09 +08:00
martin-mfg
e0f42961c5 add missing documentation for maven and gradle options (#15322) 2023-04-27 12:43:37 +08:00
CTerasa-ep
b847140834 [C++][Pistache] Generate API generalization interface (#15279)
* [C++][Pistache] Refactor setupSupportingFiles

Supporting files are set up in the CppPistacheServerCodegen()
constructor as well as in processOpts(). Refactor the code and extract a
method setupSupportingFiles().

* [C++][Pistache] Refactor: Simplify isQueryParam condition

Both branches of the if/else do the same steps. Refactor this out and
invert logic.

* [C++][Pistache] Refactor: Add injectImplInFilename

Both branches of the if/else if do the similar steps and are dependent
on the suffix. Make this obvious by introducing a new method
injectImplInFilename(String result, String suffix).

* [C++][Pistache] Refactor: injectImplInFilename: remove index search

We do not need the separatorChar index to inject the "Impl" string.
Simply truncate the whole string.

Also rename the parameter from 'result' to' filename'.

* CppPistacheServer: Refactor postProcessOperationsWithModels

Pull out the post-processing for a single operation, and also pull out
post-processing for parameters.

Introduce boolean expressions for supported parsing per parameter, and
consumption of JSON.

Reorder code to make locality more explicit i.e. how consumeJSON and
isParsingSupported is generated and used.

* CppPistacheServer: Refactor to use functional matching

Functional matching like anyMatch() directly state what boolean value is
 searched.

 However, the Predicates deserve to heave names themselves.

* CppPistacheServer: Add base class for Api

Looking at the generated main-api-server.cpp code it gets obvious that
the API classes are self similar with a similar interface.
Only the construction and teh initialization is called in the main()
function. Leverage this fact to create a generalization ApiBase.

Introduce ApiBase as a pure virtual base class to the concrete API
classes and declare init() as virtual.

Pull the route member into the base class.

With this change we could have a container hold all the ApiImpl
objects later and call init() on all of them using a for_each loop.

* CppPistacheServer: Use ApiBase for ApiImpl storage

Refactor the main-api-server template to use a vector for ApiImpl
storage instead of separate objects. This leverages the previously
added ApiBase generalization.

 We push all concrete ApiImpl objects into a vector and call init() on
  each of them.

* [C++][Pistache]: Update generated sample

Due to teh addition of ApiBase class update the generated sample.

* [C++][Pistache] Add comment for postProcessSingleParam

* [C++][Pistache] Rename and comment implFilenameFromApiFilename

While writing the comment, I realized that the method name could be more
precise. Thus rename injectImplInFilename to implFilenameFromApiFilename
and add comment.
2023-04-26 20:01:58 +08:00
William Cheng
b8ccd25a79 [python-nextgen] Various fixes reported by pylint (#15309)
* various pylint fixes

* rearrange test

* Revert "rearrange test"

This reverts commit 24d777a8a8.
2023-04-26 17:12:10 +08:00
Beppe Catanese
6f24ad3625 [JAVA] OkHttp-GSON deprecated field only deprecates getter method (#15287)
* Deprecate build and setter methods

* Test with deprecated property

* Update samples

* Remove extra line

* Regenerate samples
2023-04-26 11:40:30 +08:00
Jaemin Park
de27749047 [cpp-ue4] Fix byte array writing in JSON to be valid base64 string (#15242)
* Fix byte array writing in JSON to be valid base64 string
- remove ToStringFormatArg
- use ToUrlString to path parameters
- use Base64UrlEncode only in ToUrlString

* Use LexToString instead of FString::Format
2023-04-25 00:21:27 +08:00
William Cheng
d6e19f8f55 fix minus sign in enum naming in python-nextgen (#15291) 2023-04-24 16:07:29 +08:00
William Cheng
52417f0597 use Field(...) for required properties in python-nextgen (#15290) 2023-04-24 16:07:09 +08:00
Dávid Gracza
98c2794b5d [Kotlin-Spring] add Kotlin based Spring-cloud openfeign generator (#15048) 2023-04-24 16:02:00 +08:00
William Cheng
e51908f176 [openapi-normalizer] Fix nullable boolean check in oneOf schema (#15276)
* fix nullable boolean check in oneof

* minor fix

* fix spec
2023-04-22 16:39:12 +08:00
William Cheng
b5745e6f26 [python-nextgen] Fix enum query parameter (#15278)
* fix enum query parameter in python-nextgen

* update samples
2023-04-22 16:08:59 +08:00
Matheus Teles
33e0c6775f Update beanValidationCore.mustache (#13631) (fix #3519)
* Update beanValidationCore.mustache

Update to use x-pattern-message for message customization

* Update spring.md

Update this page adding documentation for x-pattern-message

* added unit test
meet requested corrections

* build the project

* remove space

---------

Co-authored-by: Rodrigo de Almeida - RMA3 <rodrigo.ma3@gmail.com>
Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-21 10:08:27 +03:00
Ivo Wever
2679819694 [Ruby] Client: fix base_url when no server_operation_index is defined (#15162)
As discussed in https://github.com/OpenAPITools/openapi-generator/pull/7415#discussion_r1113274416, it seems unlikely the code was correct.

server_operation_index is a hash table. In Ruby, `hash[key]` will return the value associated with `key`. If key is absent, `nil` is returned. Because that is sometimes undesirable, there is also `hash.fetch(key)`, which raises an error if the key is absent. It also allows you to specify a default to fall back on: `hash.fetch(key, default)` will return `default` if the key is absent.

So, since not all users will specify a 'server per operation' (or at least: I'm not), the old code would usually set `index` to the `server_index`, which is initialized to 0. The subsequent `if index == nil` will usually return false (`0 != nil` in Ruby), after which the `server_url` call on line 177 constructs the url based on the `server_operation_variables` and `operation_server_settings`, assuming we are dealing with the case where a server per operation is configured. The case where the url should be constructed from `scheme`, `host`, etc. is only called if either `server_index` is explicitly set to `nil` or the key `operation` is explicitly associated with the value `nil` in the `server_operation_index` hash table, both of which seem inappropriate.
2023-04-21 11:11:42 +08:00
Jaemin Park
e6c64d3917 Fix multi collection format has duplicated prefix (#15260)
Co-authored-by: Jaemin Park <nullbus@nm-fc.com>
2023-04-21 11:08:32 +08:00
Rodrigo de Almeida - RMA3
2c78ff78ed Fix issue 15264 - Replace @Controller with @RestController when using useSpringController (#15266)
* fix issue 15264

* If useResponseEntity true then keep @Controller if not @RestController

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-20 18:35:09 +03:00
Oleh Kurpiak
ede1c9ca3e update samples 2023-04-20 17:47:44 +03:00
Vidur B
564a86ccda fix: set final query parameter value to enum value (#15133)
Use `<enum>.value` for query parameters that take an Enum, as otherwise the `name` of the enum will be used.
2023-04-20 15:54:57 +08:00
William Cheng
90d7da0b5f fix travis badge in readme 2023-04-20 14:17:17 +08:00
William Cheng
fdf53ac01e update mvn in workflow to use gradle enterprise (#15256) 2023-04-19 16:17:45 +08:00
William Cheng
0176957e26 [python-nextgen] better sample code (#15248)
* better python-nextgen sample code

* remove future import

* fix signing doc

* better test

* use hasHttpBearerMethods instead
2023-04-19 15:55:06 +08:00
yateeshc
e3fdac0711 rename hasBearerMethods to hasHttpBearerMethods (#15259) 2023-04-19 15:20:04 +08:00
Rodrigo de Almeida - RMA3
9b2917f3a9 Fix issue 12341 (#15234)
* if method return type is void then no return

* build the project

* fix build the project

* fix build the project

* fix return

* fix build the project

* fix build the project

* fix build the project

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-18 23:56:12 +03:00
William Cheng
f5b4490bc9 [python-nextgen] Fix dict of dict of object in python-nextgen (#15239)
* fix dict of dict of object in python nextgen

* update samples
2023-04-18 14:59:08 +08:00
William Cheng
1881100742 use png version of pinterest logo 2023-04-18 12:00:41 +08:00
William Cheng
1ac39c7fa9 add Pinterest to the user list (#15247) 2023-04-18 11:51:53 +08:00
William Cheng
58425f54c0 Add workflow for gradle enterprise (#15211)
* add workflow for gradle enterprise

* add xml files

* remove build cache

* install

* update

* just clean

* trigger build

* mvn clean install
2023-04-18 11:38:53 +08:00
Robin Karlsson
91815bf555 [java] Fix anyof generics (#15210) (#15230) 2023-04-17 14:43:19 +08:00
André Andersson
096aabd360 Fix printing empty notes (#15238) 2023-04-17 14:42:30 +08:00
William Cheng
70a6106626 add null check in string with regular expression (#15233) 2023-04-16 23:46:17 +08:00
Robin Karlsson
738beb401e [java][jersey] Fix UUID path parameters (#15114) (#15229) 2023-04-16 23:32:15 +08:00
Dennis Kugelmann
03359ae4d5 [pub] Add repository and publish_to as configurable option in pubspec.yaml (#15232)
* Add repository as configurable option to pub client libraries

* Generate files

* Make repository null by default

* Update pubRepository mustache template

Co-authored-by: Ahmed Fwela <63286031+ahmednfwela@users.noreply.github.com>

* Regenerate samples and documentation

* Support setting publish_to in pubspec.yaml

---------

Co-authored-by: Ahmed Fwela <63286031+ahmednfwela@users.noreply.github.com>
2023-04-16 21:37:29 +08:00
Noor Dawod
cbf5598c59 Fix generated code when a list is actually a set. (#15027) 2023-04-16 21:32:59 +08:00
William Cheng
7a41231721 minor bug fix to openapi normalizer (#15225) 2023-04-15 22:00:03 +08:00
William Cheng
9ad695d52c better npe in processUseAllOfRefAsParent (openapi normalizer) (#15224) 2023-04-15 15:54:54 +08:00
William Cheng
c5a8fafc3d remove deprecated warning (#15223) 2023-04-15 15:24:14 +08:00
William Cheng
5832731c0e [java] Update undertow to newer version (#15222)
* update undertow to newer version

* fix
2023-04-15 14:56:48 +08:00
Tom Sanidas
6a67551ea5 Issue 3175 - using @objcMembers to expose all props and funcs to ObjC code when objcCompatible is requested. (#15188) 2023-04-14 09:31:59 +01:00
John Dimeo
90b78fe97e Jersey2/3 - Probe content type for multipart upload parts (#14965)
* Probe content type for multipart form uploads since many servers require each part to correctly identify its type.

* Update samples

* Add explanatory comment

* Update samples with comment
2023-04-14 12:15:13 +08:00
Robin Karlsson
b247ad75e1 [java] Add public static version field (#15108) 2023-04-14 01:06:54 +08:00
Barnaby Court
53d9d30834 For microprofile java - use {{rootJavaEEPackage}} instead of {{javaxPackage}} (#15179) 2023-04-14 00:59:33 +08:00
André Andersson
241d649164 Fix list of type not including correct import (#15171) 2023-04-14 00:14:28 +08:00
Andrii Serkes
60e6d2d57f fix Jsonb issue for Helidon SE Client generator (#15146)
Signed-off-by: aserkes <andrii.serkes@oracle.com>
2023-04-13 23:28:12 +08:00
Ween Jiann
1163b9cd3b [go-server] Fix: name declared and not used (#15201)
* Fix: name declared and not used

* Update samples

* Re-enable workflow
2023-04-13 11:04:00 +08:00
Robbert van Waveren
8a426b2f4a allow to specify the useOneOfInterfaces option for java (#15042) 2023-04-12 15:21:34 +03:00
William Cheng
935146d187 Merge remote-tracking branch 'origin/master' into 7.0.x 2023-04-12 17:51:47 +08:00
William Cheng
c0322b18a4 Improve Go Github workflow (#15200)
* improve go sample workflow gh

* update

* trigger build

* Revert "trigger build"

This reverts commit 129bc30cfb.

* comment out go chi server tests
2023-04-12 17:27:41 +08:00
Ween Jiann
04441188c6 [go-server] Update dependencies and use generics (#15087)
* Update dependecies and go version

* Use generics for recurse

* Fix helpers.mustache

* Regenerate samples
2023-04-12 16:37:39 +08:00
William Cheng
e852ceceef add lwj5 to go tech comm (#15199) 2023-04-12 16:26:46 +08:00
Beppe Catanese
0fff9642bf Add blog Mustache templates with OpenAPI generator (#15198) 2023-04-12 16:12:38 +08:00
Steven Goris
0b41ee1c78 Issue #15095: Improve gradle task documentation (#15193)
Co-authored-by: Steven <steven.goris@nike.com>
2023-04-12 11:38:09 +08:00
William Cheng
ff48f80379 udpate vertx to newer version 3.5.2 (#15197) 2023-04-12 11:32:11 +08:00
Robert Schweizer
448cbfd018 [python-nextgen] Limit allowed pydantic version range (#15189)
Align the lower limits between pyproject.toml and setup.py.

Set a common upper limit of <2, because version 2 brings breaking
changes.
2023-04-12 11:08:28 +08:00
William Cheng
f8cb5fde97 Add tests for aspnetcore 6.0 useSwashBuckle option (#15176)
* add test for aspnetcore 6.0 useSwashBuckle option

* update samples

* update petstore with more tests

* add options

* update samples

* remove unused files
2023-04-11 17:43:39 +08:00
Ween Jiann
792c49a0ce [go-server] Change Routes type from []Route to map[string]Route (#15084)
* Change Routes to map[string]Route

* Fix linting issues

* Regenerate samples
2023-04-11 15:40:06 +08:00
Ween Jiann
81cafdc196 [go] Fix: reservedWordsMappings not checked for reserved word (#15083)
* Fix: reservedWordsMappings not checked for reserved word

* Fix coding issue
2023-04-11 15:39:53 +08:00
Ween Jiann
8ce990d3d7 [go-server] Add ability to handle parameters of number type (#15079)
* Add ability to handle parameters of number type

* Generate samples

* Add handling for number without format

* Regenerate samples

* Fix indentation
2023-04-11 15:38:58 +08:00
Beppe Catanese
2b796d5c61 [Go] Format error message only when Kind is Struct (#15154)
* Check if Kind is Struct

* Commit regenerated files

* Tabs indentation instead of 4-space

* Commit regenerated files
2023-04-11 14:39:08 +08:00
leonluc-dev
a17bb59097 Added useSwashBuckle condition (#15157)
Added useSwashBuckle condition to Swashbuckle attributes in models
2023-04-10 18:21:32 +08:00
martin-mfg
e9e0f50ab6 Update customization.md (#15172)
Clarify which OpenAPI Generator version exactly introduced [Set skipFormModel to true by default](https://github.com/OpenAPITools/openapi-generator/pull/8125).
2023-04-10 17:16:19 +08:00
Amrith Nayak
5d490d742a Add Flipkart as a company using OpenAPI Generator (#15175)
* Adding Flipkart as a openapi generator user

* chore: added flipkart company logo static asset

* fix: fixed typo in users
2023-04-10 17:14:25 +08:00
devhl-labs
1e2f16ed69 [csharp-netcore] Explicitly implement IValidatableObject (#15160)
* explicit interface implementation

* minor spacing change
2023-04-10 11:20:48 +08:00
Takeshi Masaki
5e3bb7e33e [Ruby] fix RSpec documentation URL (#15164) 2023-04-10 10:44:28 +08:00
Tushar
a4f5a74d5b fix(python-nextgen): dependency incompatiblity (#15167)
Downgrade tox and flake8. Alternateively, we can increase minimum python version to 3.8.1
2023-04-10 10:31:53 +08:00
Tushar
4a83c9181f fix(python-nextgen): Use spec format for authors in pyproject (#15170) 2023-04-10 10:31:37 +08:00
devhl
b57d35b744 bumped package versions 2023-04-09 19:27:47 -04:00
Ween Jiann
a5bc7f107d [typescript] Make TypeScriptClientCodegen extend AbstractTypeScriptClientCodegen (#15096)
* Make TypeScriptClientCodegen extend AbstractTypeScriptClientCodegen

* Regenerate samples

* Update docs

* Clean up

* Remove updated toEnumName

* Fix: SUPPORTS_ES6

* Fix: `setSupportsES6` should not be set directly in unit tests

* Set modelPropertyNaming to camelCase
2023-04-09 20:43:58 +02:00
Martin Delille
f40433d28f qt ctest (#14968)
* [cpp-qt-client] Fix warning about deprecated count() method

* [cpp-qt-client] Ignore build directory

* [cpp-qt-client] Use ctest

* Fix CMakeLists.txt for cpp-qt-client
2023-04-07 16:24:11 +08:00
William Cheng
b2be16746c fix link, add links to posts (#15153) 2023-04-07 16:14:24 +08:00
William Cheng
e8e62ccadb simplify enum of string & string to enum of string (#15149) 2023-04-07 15:54:42 +08:00
William Cheng
bda2e4a167 fix NPE in simplifyOneOfAnyOf (#15142) 2023-04-07 09:34:20 +08:00
William Cheng
bd7bc9aa79 [python-nextgen] Add bytearray, none_type as primitive type (#15130)
* add bytearray, none type as primitive type

* update samples

* update doc
2023-04-07 09:34:04 +08:00
William Cheng
ba2c42e34b add override to java native pojo (#15125) 2023-04-06 15:00:14 +08:00
William Cheng
07227d4650 add support for union of strictfloat and strictint (#15124) 2023-04-06 11:51:12 +08:00
Tommaso Barbugli
b409ceb3a0 respect api visibility for oneof enum (#15122) 2023-04-04 09:45:27 +01:00
devhl-labs
3b11187200 made escaped regex be not literal strings (#15107) 2023-04-04 15:15:14 +08:00
William Cheng
3d7c173eb2 update ue4 c++ client 2023-04-01 19:11:37 +08:00
Samuel Kahn
033b946856 [cpp-ue4] Series of fixes for cpp-ue4 (#15068)
* [cpp-ue4] Removed warning related to wrong casing of HTTP module

* [cpp-ue4] Fixed compilation error when using file parameters in json body generation

* [cpp-ue4] Do not write the form param json body generation unless there actually are form params

* [cpp-ue4] Added support for enum values in path params
2023-04-01 19:01:45 +08:00
William Cheng
938c72cec0 trigger build 2023-04-01 19:00:14 +08:00
William Cheng
5d1e18306a Prepare 6.6.0-SNAPSHOT (#15100)
* set 6.6.0 snapshot version

* update samples

* update readme
2023-04-01 18:48:01 +08:00
William Cheng
7417432a54 Prepare 6.5.0 release (#15099)
* 6.5.0 release

* update samples
2023-04-01 15:03:35 +08:00
devhl-labs
c838b1d1f9 made default strings use string literal (#15049) 2023-04-01 10:36:10 +08:00
William Cheng
0dc84520e7 [python-nextgen] use __fields_set__ to determine if the field is needed in to_dict (#15086)
* use __fields_set__ to determine if the field is needed

* fix tests
2023-04-01 10:23:38 +08:00
William Cheng
1710615fd8 fix python nextgen github workflow (#15092) 2023-03-31 22:40:23 +08:00
William Cheng
b59d535176 [python-nextgen] Fix binary response (#15076)
* fix binary response in python nextgen client

* update samples
2023-03-31 16:16:58 +08:00
William Cheng
05fa5601dd [python-nextgen] fix circular reference import (#15070)
* fix ciruclar reference import in python nextgen

* update samples
2023-03-30 10:07:34 +08:00
William Cheng
3ccd9be080 remove absolute_import (#15071) 2023-03-30 10:07:15 +08:00
William Cheng
4895b56089 [python-nextgen] fix pattern with double quote (#15073)
* fix pattern with double quote

* fix test
2023-03-30 10:06:24 +08:00
Shane Perry
0973795996 Added Micronaut configuration points (#15005)
* Added ability to configure the AuthorizationFilter pattern

* Added configuration for the Client annotation

* Generated samples

* Remove extra newline from template

* Updated samples

* Declarative client annotation path attribute only supported when id attribute is set

* Cleaned up style of generated file

---------

Co-authored-by: Shane Perry <shane.perry@acimacredit.com>
2023-03-29 22:05:41 +08:00
William Cheng
9fa032b365 add isOverridden, update java pojo with setter for parent prop (#15051) 2023-03-29 10:57:49 +08:00
RInverid
36332331e4 Skip null form values for Java native request builder (#15036) 2023-03-29 10:55:28 +08:00
William Cheng
1cdcaeb1b9 update python-nextgen samples 2023-03-26 23:45:20 +08:00
Mourad
d3de8abc25 Fix typo in api_client.mustache "configuraiton -> configuration" (#15050) 2023-03-26 23:40:06 +08:00
William Cheng
a4dd90c01d Better allOf handling in fromProperty (#15035)
* fix allOf handling in fromProperty

* add null check, update samples

* update dart generator to handle allof with a single ref
2023-03-26 15:06:27 +08:00
William Cheng
56e5122a6a Add new openapi-normalizer rule REFACTOR_ALLOF_WITH_PROPERTIES_ONLY (#15039)
* add new rule REFACTOR_ALLOF_WITH_PROPERTIES_ONLY

* update other attributes

* minor refactoring
2023-03-26 11:56:26 +08:00
CTerasa-ep
f2e05555f3 Refactor ModelUtils methods without logic changes (#15030)
* Refactor: ModelUtils: Harmonize isIntegerSchema with isStringSchema

Make code isIntegerSchema look similar to isStringSchema and remove
if-clause in favor to bool-OR '||'.

* Refactor: ModelUtils: Simplify isMapSchema

Factor out if sequence and use "return A || B || C;" scheme instead.

* Refactor: ModelUtils: Simplify isUnsignedIntegerSchema

Factor out 'if (x) {return true;} else {return false;}' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isUnsignedLongSchema

Factor out 'if (x) {return true;} else {return false;}' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isTypeObjectSchema

Factor out 'if (x) {return true;} return false;' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isComposedSchema

Factor out 'if (x) {return true;} return false;' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isBooleanSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isNumberSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isDateSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isDateTimeSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isPasswordSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isByteArraySchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isBinarySchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isFileSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isUUIDSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isEmailSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isObjectSchema

Factor out 'if (x) {return true;} if (y) {return true;} return z;' and
use 'return x || y || z;' instead.

* Refactor: ModelUtils: Simplify isModel

Factor out 'if (x) {return false;} if (y) {return true;} return z;' and
use 'return !x && (y || z);' instead.

* Refactor: ModelUtils: Simplify isModelWithPropertiesOnly

Factor out 'if (x) {return false;} if (y) {return true;} return false;'
and use 'return !x && y;' instead.

* Refactor: ModelUtils: Simplify getApiResponse

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify getParameter

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify getCallback

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify getHeader

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify isExtensionParent

Factor out 'if (x) {return false;} else {y}'
and use 'if (x) {return false;} y' instead.

* Refactor: ModelUtils: Simplify isComplexComposedSchema

Factor out 'if (x) {return true;} return false;' and use 'return x;'
instead.
2023-03-26 10:47:18 +08:00
William Cheng
e925336daf remove allowStringInDateTimeParameters option (#15046) 2023-03-26 10:46:15 +08:00
Oleh Kurpiak
18e28ab761 [Java] maven plugin to clean-up output before generation (#14935) 2023-03-25 15:44:40 +08:00
William Cheng
25adbe33a6 update cpp ue4 samples 2023-03-25 15:23:25 +08:00
axesider
0677eb5075 Correct check in SetHttpRetryManager (#15041) 2023-03-25 15:09:06 +08:00
devhl-labs
ca757b703e better handling of form parameters (#15040) 2023-03-25 15:08:20 +08:00
msosnicki
41d691334a Using nix flakes for developer shell (#14888) 2023-03-24 22:32:22 +08:00
William Cheng
f5e427ad52 Do not add schema / class name mapping where custom mapping exists (#14984)
* fix #13150 Do not add schema / class name mapping where custom mapping exists

* update test spec

* improve import

* fix import for mapped models

* fix python

* code clean up

* fix dart client import

* fix dart:core import

* better import

* add tests

---------

Co-authored-by: Bernie Schelberg <bernard.schelberg@mywave.ai>
2023-03-24 22:20:04 +08:00
William Cheng
bde5c10092 update optional parameters in jsdoc (#15032) 2023-03-24 18:25:20 +08:00
Oleh Kurpiak
d1f92acaea [Java][Spring] fix reactive method with only implicit headers (#15019) (fix #14907) 2023-03-24 11:32:04 +02:00
Dylan Kwon
b6d2e0d222 Added converterFactories property to ApiClient in jvm-retrofit2. (#15008)
* Added converterFactories property to ApiClient in jvm-retrofit2.

* [retrofit2] Supplement deprecate contents of converterFactory

* [retrofit2] Supplement deprecate contents of converterFactory

* [retrofit2] converterFactory removed.

* [retrofit2] sample update.

* [retrofit2] Type mismatch fix in Rx.
2023-03-22 15:06:04 +00:00
Kuzma
a601002451 [Typescript] Nullable (#15026) 2023-03-22 15:19:17 +01:00
William Cheng
1c75997677 fix optional dict of object (#15018) 2023-03-22 02:08:31 +08:00
William Cheng
38d9dc1f36 update erlang samples 2023-03-22 00:26:36 +08:00
David Weinstein
fc91fca737 [erlang-client] fix URL paths (#14988)
* integers parameters in URL did not work as expected
* so now, if the parameter is an integer, we convert it to binary before
  passing to `hackney_url:make_url/3`
2023-03-22 00:23:57 +08:00
William Cheng
849708dc0d better null check in import logic (default codegen) (#14989) 2023-03-22 00:13:23 +08:00
William Cheng
cf432522aa [python-nextgen] fix optional dict in property (#15009)
* fix optional dict in property

* update samples
2023-03-21 23:59:26 +08:00
William Cheng
88da3649b2 [csharp-netcore] Add option skip generating getter for sub-schemas (#15007)
* add option skip generating getter for sub-schemas

* fix openapi-yaml

* update samples

* update samples
2023-03-21 22:41:29 +08:00
Dylan Kwon
83ccfb820c Added useSettingsGradle property in kotlin-client. (#15003)
* Added useSettingsGradle property in kotlin-client.

* kotlin docs update.
- add kotlinx_serialization in serializationLibrary.
2023-03-21 11:45:35 +00:00
devhl-labs
d24ae6b27a fixed bug (#15006) 2023-03-21 15:44:10 +08:00
William Cheng
b3bfa1ef3b use Any instead of StrictStr in any type (#14995) 2023-03-21 14:52:54 +08:00
William Cheng
17fa35c78d Add AWS to the user list (#14996)
* add AWS to the user list

* add new file
2023-03-20 16:59:08 +08:00
William Cheng
e780d59352 add auto-generated api spec file (#14994) 2023-03-20 16:58:13 +08:00
Mintas
3ea346e1bb [SPRING] resolved ambiguous beanValidation Email annotation imports; fix #13379 (#13962)
* resolved ambiguous beanValidation Email annotation imports; fix #13379

* [Java][Spring] fix email import

---------

Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-03-19 05:18:11 -07:00
César Revert
6e649af9a7 [java-spring] Move JsonProperty annotation from field to getter (#13781) (fix #5705)
* 5705: Move JsonProperty annotation to the getters

* Regenerate samples

* Add jackson check

* Add test

* Minor fix

* Fix test

* Fix version

* [Java][Spring] update test & samples; add serialization/deserialization test

---------

Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-03-19 04:59:48 -07:00
William Cheng
162623e49b increase timeout (#14991) 2023-03-18 21:10:23 +08:00
Tomáš Karásek
aa066ab6fa [python-nextgen] Fix validation of list of enums (#14809)
* [python-nextgen] check enum arrady values better

* [python-nextgen] re-generate exapmles for #14809
2023-03-18 20:27:26 +08:00
William Cheng
e1719f2b7b [JavaSpring] migrate config files to use 3.0 spec (#14981)
* update spring config file to use 3.0 spec

* migrate spring config file to use 3.0 spec

* update github workflow to cover more samples
2023-03-17 16:02:27 +08:00
devhl-labs
02b6248510 moved null checks (#14980) 2023-03-17 15:12:27 +08:00
William Cheng
3d4f7b3ce0 [java] fix optional array property's default value (#14961)
* fix optional array property default value

* fix default values

* more fixes

* update default value for jersey2, 3, okhttp-gson

* update default value

* fix java okhttp-gson

* fix jersey2, 3
2023-03-17 11:58:49 +08:00
William Cheng
d0f7bd18ba [spring] fix default value for nullable containers (#14959)
* fix default value, update spec to 3.0

* add tests for container default value

* update java camel samples

* remove samples/openapi3/server/petstore/springboot-beanvalidation-no-nullable

* remove ./bin/configs/spring-boot-beanvalidation-no-nullable-oas3.yaml

* remove samples/openapi3/server/petstore/springboot-useoptional

* remove samples/openapi3/server/petstore/springboot-reactive

* update github workflow

* fix default in add, put operation
2023-03-17 10:16:17 +08:00
Riccardo Cardin
e626b43e27 Added a property to the Spring generator to avoid the use of the ResponseEntity type (#11537)
* Added the useResponseEntity additional parameter for Spring generator

* Changed the mustache templates using the new useResponseEntity property

* Added the new property to the documentation

* Merging with remote master

* #11537 Added missing configuration for the delegate pattern case

* #11537 Added autogenerated @ResponseStatus on Spring methods

* #11537 Fixed borsch comments

* #11537 Added the default 200 HTTP Status for empty response HTTP code

* [Java][Spring] useResponseEntity sample + remove blank line

* [Java][Spring] useResponseEntity sample + remove blank line

* [Java][Spring] useResponseEntity sample + remove blank line

---------

Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-03-16 14:00:10 +02:00
dependabot[bot]
217d052bf7 Bump actions/setup-go from 3 to 4 (#14972)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 4.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v3...v4)

---
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-03-16 16:49:57 +08:00
devhl-labs
9787388f77 removed TryGet from deserialization methods (#14974) 2023-03-16 16:49:21 +08:00
devhl-labs
b6ccf078ef fixed nrt bug (#14973) 2023-03-16 08:59:12 +08:00
Peter Lamby
5c4529259f [BUG][typescript-fetch] wrong response for simple types (#14659)
See #9364
See #2870
2023-03-15 09:47:34 +01:00
William Cheng
5eb2819744 update go doc 2023-03-15 15:11:35 +08:00
Jason D'Amour
1268b5135d Enable bearer security schema for Go client (#14957) 2023-03-15 14:46:05 +08:00
devhl-labs
388147f822 suffixed variables with LocalVar to avoid conflicts (#14958) 2023-03-15 10:58:09 +08:00
martin-mfg
f1d05fc7f8 Allow Java apache-httpclient users to supply additional HTTP headers per call, updated (#14929)
* Allow Java apache-httpclient users to supply additional HTTP headers per API call

* fix 'unexpected return value' problem

* make "fullJavaUtil" work

* Revert 'make "fullJavaUtil" work'

This reverts commit 60c8846.

---------

Co-authored-by: Jigar Joshi <jigarjm@gmail.com>
2023-03-14 20:20:31 +02:00
igokoro
b172f622b9 Do not use default locale in kotlin generated code (#14668)
Using default locale for non-user visible text transformations is not safe
and can result in bugs, in particular with Turkish locale.

More details in
https://mattryall.net/blog/the-infamous-turkish-locale-bug

Closes #14667
2023-03-14 16:47:15 +00:00
Christian Mösl
85ff3de157 [java][webclient/resttemplate] fix dependencies for gradle with jakarta (#14925) 2023-03-14 17:57:08 +02:00
William Cheng
3826d712ad show error only in travis build to reduce log size 2023-03-14 17:24:13 +08:00
Oleh Kurpiak
bda2501455 [Java][Spring] option whether to generate required args constructor (#14941) (fix #14934) 2023-03-14 10:39:58 +02:00
Cameron Mackenzie
3d12510e1f Update README Angular compatible version (#14947)
Update version to 2.x-15.x in README to match latest version in docs: https://openapi-generator.tech/docs/generators/typescript-angular
2023-03-14 16:28:03 +08:00
William Cheng
644bccfd92 Reduce log level to avoid Travis CI build failure (#14946)
* reduce log level to avoid travis build failure

* add new file
2023-03-14 12:40:37 +08:00
devhl-labs
dc1386c134 better deserialization (#14945) 2023-03-14 11:40:40 +08:00
William Cheng
8b1e80d360 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-03-14 11:36:24 +08:00
William Cheng
de35cbd010 update samples 2023-03-14 11:36:17 +08:00
Guillaume Turri
9fd989e297 [PHP-Symfony] Fixes #14930 (#14933)
* [PHP-Symfony] fixes validation of date-time parameter

This fixes parts of #14930.

Without this patch a parameter declared as date-time
is validated against Symfony's "DateTime" constraint,
which always fails. Because this constraint expects
a string with format "Y-m-d H:i:s".
It fails because the generated code performs the check
after the deserialization, so the variable checked is not
a string anymore.

Besides this, even if we performed that validation on the
string, that would not work well because OpenApi
specification expects date-time to conform to RFC 3339
and that "Y-m-d H:i:s" would reject RFC 3339 compliant dates.

With this change we ensure that the string provided by the
web user could be parsed by PHP to DateTime, which solves both issues.

(Note however that it means that it now accepts more formats than just
RFC 3339 compliant ones for those parameters (it would accept all formats
accepted by PHP DateTime). That being said it's compliant with the guideline
""be conservative in what you send, be liberal in what you accept")

* [PHP-Symfony] Fix handling of null date-time parameter

This fixes one of the issue described on #14930, namely that
the deserializeString method of the generated class JsmSerializer returns null
for other types of string, but not for date-time. Instead it returns a DateTime
which represents "now" (because that what `new DateTime(null)` does).

Consequently when an API declares a date-time parameter as non-required and
when that endpoint is called without that parameters, then the user code
would end up having "now" instead of "null" for this parameter.
2023-03-14 11:17:34 +08:00
martin-mfg
f5d31c5214 Log Warn Messages for ineffective Schema Validations, updated (#14759)
* Implement WARN messages for ineffective schema validation constraints

* Implement tests String, Number, Object schema validations

* Implement HashSet to store Validations for different types

* Revert Validation Helper functions; Add Test cases for Any and Boolean

* Implement Unit Test for Array with inffective schema validations

* Reformat Code; Optimize Imports

* Add assertions to ineffective validation tests

* Add Test case for Null Schema Validations

* Adjust log level and message

* Merge commit ... into issue-6491

---------

Co-authored-by: Chidu Nadig <chidu.nadig@gmail.com>
2023-03-14 11:16:18 +08:00
Yannick Wiesner
ecd28b2090 JAX-RS Spec: Stop generating @NotNull Validation for required & optional properties (#12575)
* Stop generating @NotNull Validation for required & optional properties

* correct linebreak and add tests

* add samples in a separate folder
2023-03-14 00:39:31 +08:00
Eskild Diderichsen
e53b6fa7fa Setup GitHub Codespaces (#13533)
* Setup GitHub Codespaces

* updated devcontainer to new format
2023-03-14 00:35:44 +08:00
Mathias Dierickx
e52a9fd961 Add missing ConfigureAwaits for csharp-netcore generator (#13664) 2023-03-14 00:29:03 +08:00
William Cheng
dbc6c82446 minor fix to isPassword (#14942) 2023-03-13 23:37:40 +08:00
Romain Bioteau
59be28cc8a feat(password): add isPassword codegen property (#13982)
Expose `isPassword` codegen property. This property can be used in the
mustache templates to handle specific generation use case. _e.g._:
* hiding the string value of password fields in generated toString()
methods
* use more specific types like `char[]` instead of `String` in
[Java](https://stackoverflow.com/a/8881376)

Closes https://github.com/OpenAPITools/openapi-generator/issues/9124
2023-03-13 23:23:48 +08:00
Sascha Peilicke
df58ee3829 [Kotlin-Spring]: Dont't make readOnly properties nullable (#14509)
Resolves #14280
2023-03-13 23:14:02 +08:00
KlausH09
245851116f [Kotlin-Spring] add skip-default-interface option (#14662) 2023-03-13 22:51:49 +08:00
Nick Ufer
23cf8368e8 [Rust] fix: removes replacement which makes x-tag-name incompatible with spec (#14746) 2023-03-13 22:40:16 +08:00
Jonas Reichert
f45523dd1a [swift5] fix modelNamePrefix and -suffix for reserved types (#14768)
* only add suffix or prefix if type is not a primitive or from dependency

* add tests

* add sample

* add second API with prefix and suffix

* add primitives

* add missing pom

* add missing shell script

* fix cycle dependency

* generate samples
2023-03-13 09:42:24 +00:00
Robin Karlsson
564939a4a8 [java][jersey] Remove double brace initialization and some more jersey cleanup (#14783)
* Remove double brace initialization

* Use diamond operator

* Less clutter in generated api classes

* Optimize isJsonMime

* Revert change in escapeString

Skip toString() on string parameters.

* Fix edge-cases

A ServerVariable without enumValues and/or operationServers
with any ServerVariables would lead to invalid code.
2023-03-13 16:42:37 +08:00
William Cheng
9a53625fcc update erlang proper samples 2023-03-13 16:07:14 +08:00
William Cheng
6d71db3d6d update samples 2023-03-13 15:46:31 +08:00
David Weinstein
43697d2cfb [erlang-client] Fix Path (#14821) 2023-03-13 15:40:43 +08:00
devhl-labs
e9fed506b3 used the date format (#14936) 2023-03-13 15:25:29 +08:00
devhl-labs
8785acea7c added samples for unsigned (#14938) 2023-03-13 15:24:45 +08:00
William Cheng
0f2156191f add tests to jaxrs-cxf-cdi generator (#14937) 2023-03-12 23:43:39 +08:00
Antoine Reilles
72871cf930 [cxf-cdi] use InputStream for binary body (#14439)
Use a  single InputStream instead of "File".
This allows the generated code to build in case of a definition like:
      requestBody:
        content:
          text/plain:
            schema:
              type: string
              format: binary
This fixes #9372
2023-03-12 23:24:30 +08:00
William Cheng
790b0be964 update option description (#14932) 2023-03-12 16:47:32 +08:00
William Cheng
0c41a7c1b4 Minor bug fix in openapi normalizer (#14924)
* minor bug fix in openapi normalizer

* add test

* better code format

* fix hasCommonAttributesDefined
2023-03-12 15:28:16 +08:00
devhl-labs
3a940c93cc [csharp-netcore][aspnetcore] Added examples (#14927)
* added examples

* added examples to aspnet
2023-03-12 15:07:54 +08:00
devhl-labs
2b7007b653 [csharp-netcore] Moved formats to separate file (#14894)
* add unsigned integer/long support to c# netcore client

* moved formats to separate file

* moved formats to cli options

* moved formats to cli options

* reverted unintended changes

* reverted unintended changes

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-03-12 15:05:35 +08:00
William Cheng
140d941da2 [csharp-netcore] Add unsigned integer/long support (#14885)
* add unsigned integer/long support to c# netcore client

* undo change in test spec, samples

* new test spec

* update doc
2023-03-10 15:18:41 +08:00
William Cheng
c4b404dc2e Decommission csharp-dotnet2 client generator (#14911)
* decommission csharp-dotnet2 client generator

* update doc
2023-03-10 14:30:32 +08:00
William Cheng
cda42b9e7b update doc 2023-03-10 14:29:23 +08:00
Brahim Hadriche
f3960b2116 [v2] (RFC) Csharp netcore generator supports UnityWebRequest library (#14870)
* Base impl

* Improve Unity support

* update samples

* Sync bool property

* Update samples

* Set support file property

* Address comments

* Fix test asmdef

* Fixes for WebGL support

* Add note about Unity version

* Add Unity Sample

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-03-10 14:17:50 +08:00
William Cheng
f9efb7b2fb [OpenAPI Normalizer] update SIMPLIFY_ONEOF_ANYOF to convert enum of null to nullable (#14898)
* reorganize openapi normalizer tests

* add the logic to simply oneof anyof rule instead

* minor fix
2023-03-09 11:10:30 +08:00
William Cheng
77dd4990a4 update C# client dep, update samples (#14908) 2023-03-09 11:05:59 +08:00
Andre Vegas
d56a55a06b Fixing missing openApiNullable config for java apache-httpclient generator (#14828)
* 14827 - fixing missing openApiNullable config for java apache-httpclient generator

* 14827 - run PR steps updating examples & docs

* 14827 - fixing test data
2023-03-09 00:05:47 +08:00
Jorge Rodríguez Martín
9705617f93 [Java][Resttemplate] Normalize the RestTemplate ApiClient (#14845)
* Normalize resttemplate

* Update samples
2023-03-08 23:57:05 +08:00
Volker Suschke
c81ff5801d [Kotlin-Spring] Remove wildcard imports from mustache templates [#14652] (#14899)
* [Kotlin-Spring] Remove wildcard imports from mustache templates [#14652]

* [Kotlin-Spring] Update sample files [#14652]
2023-03-07 16:23:46 +00:00
William Cheng
4ed3cd9233 add new openapi-normalizer rule: ADD_UNSIGNED_TO_INTEGER_WITH_INVALID_MAX_VALUE (#14891) 2023-03-07 21:46:11 +08:00
William Cheng
e38ea578f8 Better support of inline allOf/anyOf/oneOf schemas (#14887)
* better support of inilne allof schemas

* add test file

* better handling of anyof, oneof inline schemas

* update samples

* add tests for nested anyof

* better code format
2023-03-07 15:53:53 +08:00
William Cheng
70faa6b15c better support of allOf with 1 sub-schema (#14882) 2023-03-07 00:35:34 +08:00
William Cheng
d497c3d087 [python-nextgen] Better docstring/documentation (#14880)
* better docstring/documentation in python nextgen client

* update instruction in test files
2023-03-06 21:22:43 +08:00
William Cheng
8ede021ec5 remove api import from model tests in csharp-netcore client (#14889) 2023-03-06 16:29:40 +08:00
Bruno Coelho
5dc0b70081 [swift5][client] remove deprecated APIs (#14635)
* [swift5][client] remove deprecated APIs

* [swift5][client] remove deprecated APIs
2023-03-05 11:35:51 +00:00
Bruno Coelho
4bb8372340 [swift5][client] improve headers order (#14636) 2023-03-05 11:33:05 +00:00
devhl-labs
2a9fb7b6e7 removed double encoding (#14883) 2023-03-05 10:09:57 +08:00
William Cheng
46fb49ecd0 [python-nextgen] Add pyproject.toml (#14861)
* add pyproject.toml in python-nextgen client generator

* minor fix
2023-03-04 14:14:43 +08:00
William Cheng
1beec7ef87 Merge remote-tracking branch 'origin' into 7.0.x 2023-03-03 21:52:50 +08:00
William Cheng
39e27a804d [python-nextgen] better enum naming (#14869)
* better handling of enum naming in python nextgen

* remove unused import

* update samples

* update samples

* map dot
2023-03-03 17:54:10 +08:00
Dan Čermák
e535066a85 [python-nextgen] Add @overload for api methods to handle async requests (#14851) 2023-03-03 15:51:59 +08:00
William Cheng
c50e449cf5 Disable unit tests to prevent build from failing (#14872)
* disable ts tests

* disable ts test

* fix template tests

* add sleep

* Revert "add sleep"

This reverts commit bdb14a3677.

* disable template tests
2023-03-03 15:18:12 +08:00
Terence Honles
057a56a827 fix(typescript-angular): only import services if providing them (#14864)
* fix(typescript-angular): only import services if providing them

* update samples
2023-03-02 15:17:31 +01:00
Terence Honles
c2f244ccfa fix(typescript-angular): fix model filename including modelNamePrefix (#14859)
This change removes the modelNamePrefix from the API import filename
to be consistent with the processing in the rest of the class.
2023-03-02 14:49:14 +01:00
Oleh Kurpiak
440861270e [Core] Close Stream<Path> on spec merger (#14862) 2023-03-02 15:07:46 +02:00
Oleh Kurpiak
ca3e8be1bc [Java][Spring] version parameter (#14847) 2023-03-02 13:29:01 +02:00
William Cheng
60e2d605c4 [python-nextgen] fix enum default value (#14846)
* fix enum value

* add test for default value

* update samples, better code format
2023-03-02 17:36:38 +08:00
William Cheng
27a4355c6c add dmtech logo to website (#14853) 2023-03-02 10:53:42 +08:00
sbilz
7de302c43e add dmTECH GmbH as company using openApiGenerator (#14850) 2023-03-02 10:26:37 +08:00
Kuzma
c8fab3f40a [Typescript] Use for of instead of for in at ObjectSerializer (#14849)
* [Typescript] Use for of instead of for in

* fix for

* regenerate samples
2023-03-01 22:16:01 +01:00
Joe Spandrusyszyn
2458743257 [Typescript-Axios] Add options to TypescriptAxios reserved words (#14650)
* Add options to TypescriptAxios reserved words

* Update generated docs

---------

Co-authored-by: Joseph Spandrusyszyn <joseph.spandrusyszyn@bstock.com>
2023-03-01 15:48:19 +01:00
jmejane
350fb82bed [K6] Enhancement: Make operationId accessible inside requests (#14787)
* feat(k6): Make operationId accessible inside requests

* feat(k6): Update sample script

* feat(k6): re-add space deleted by formater
2023-03-01 22:46:12 +08:00
Adam Stoffel
43493a94fe [typescript] Fix Invalid path separator for imports on Windows (#14754)
Fix for #14753
2023-03-01 15:41:18 +01:00
Antoine Lucas
e1ab25c915 Add constructor with required parameter for Spring (#14822) (fix #9789)
* Add constructor with required parameter for spring

Fix #9789

* [Java][Spring] constructor with required args

---------

Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-03-01 15:09:47 +02:00
William Cheng
c70a41210e python-nextgen: fix tests 2023-03-01 17:17:08 +08:00
William Cheng
6d48d73421 python-nextgen switch union order (#14762) 2023-03-01 15:30:18 +08:00
William Cheng
e82ae6bacd [python-nextgen] Add datetime, date format support (#14799)
* add datetime, date format support in python nextgen

* encode query parameters

* update default datetime format

* change default datetime format
2023-03-01 15:29:47 +08:00
William Cheng
854f8dbc6d [CI] try to fix bitrise deprecation warning #14834 (#14836)
* [CI] try to fix bitrise deprecation warning

* [CI] try to fix bitrise deprecation warning

* skip tests

* simply run tests

---------

Co-authored-by: Bruno Coelho <4brunu@gmail.com>
2023-03-01 11:01:46 +08:00
Sylvain Joubert
a9e4eaf582 [C++][Pistache] Add some missing {{declspec}} on classes and functions (#14808) 2023-02-28 18:19:43 +08:00
William Cheng
a4b5b85067 Update jackson nullable version to newer version v0.2.6 (#14823)
* update jackson nullable to newer version

* update samples

* update samples

* update samples
2023-02-27 18:38:31 +08:00
Michel Wohlert
07f1d2d51c Encode request parameters to enable whitespace characters (#14797) 2023-02-27 09:25:28 +08:00
Rémi Kalbe
099f138dd5 [RUST] Upgrade reqwest-middleware (#14819)
* [RUST] Upgrade reqwest-middleware

Bump reqwest-middleware from 0.1.6 to 0.2.0

* Bump sample
2023-02-27 09:05:37 +08:00
William Cheng
b5d4fa9d27 fix unique items in python nextgen client (#14816) 2023-02-26 10:21:26 +08:00
Emma
1f2d6b8848 [python-nextgen] support dict query params (#14727)
* [python-nextgen] convert dictionary query params to string

* [python-nextgen] regenerated samples

* [python-nextgen] added some test cases for parameters_to_url_query

* [python-nextgen] use json.dumps instead of str(v)

* [python-nextgen] update api_client tests
2023-02-25 22:25:52 +08:00
Dennis Melzer
92b96635bd Fix bean validation for Collection and add unit test (#14736)
* Fix bean validation for Collection + uni test

* Fix

* Adapt examples

* Fix comments

* Merge master

* Remove Bean validation for Maps

* Remove @Valid from jakarta

* Fix example

* Fix comments

* Fix springboot-3 example
2023-02-25 22:06:31 +08:00
David Weinstein
3aa7ec6a39 Get API configuration from application environment for erlang-client (#14752)
* Get config from classname api

* Use the packageName

* Add samples
2023-02-25 22:05:14 +08:00
sbilz
f4e53db8cf Java Jersey glassfish fix renewing OAuth-Accesstoken #14734 (#14735) 2023-02-25 22:01:33 +08:00
catostrophe
5c9999b7cf Stop using org.springframework.util.Base64Utils in Java generators (#14813)
This utility class has been marked as deprecated for future removal since Spring 6.0.5. All Java generators, except WebClient and RestTemplate, are already using Base64 directly.
2023-02-25 21:56:18 +08:00
William Cheng
8b2de37414 [openapi-normalizer] add a new rule to set tags for all operations (#14794)
* add doc for KEEP_ONLY_FIRST_TAG_IN_OPERATION

* add new rule SET_TAGS_FOR_ALL_OPERATIONS

* better null check

* improve doc
2023-02-24 15:26:34 +08:00
William Cheng
d400d7fb15 Better handling of x-nullable in codegen property (#14800)
* add failed tests

* add logic to handle x-nullable in property

* update samples

* update test
2023-02-24 15:24:34 +08:00
William Cheng
b527f3b816 Setup Github works for Erlang projects (#14788)
* add github work for erlang projects

* trigger build

* use setup-bean instead

* add rebar3 version

* update otp version

* fix otp version

* fix otp version

* use 22.2

* fix

* fix

* fix ubuntu version

* use 22.2

* comment out erlang server test
2023-02-22 15:03:21 +08:00
William Cheng
cab9872d6d Add from_dict in model anyOf in python-nextgen (#14781)
* add from_dict to model_anyof template in python-nextgen, fixes #14767

* add space before from_dict in model.anyof in python-nextgen

* update samples, add tests

---------

Co-authored-by: Tomas Karasek <tom.to.the.k@gmail.com>
2023-02-22 10:56:05 +08:00
Cameron Koegel
18ef6ff96a [Ruby] fix return_binary_data with attr_accessor (#14772)
* [Ruby] fix `return_binary_data` with `attr_accessor`

* regenerate samples
2023-02-22 00:51:21 +08:00
Sergey Prytkov
94733b8bdf ktor-client fix array generation (#14778) 2023-02-21 10:58:11 +00:00
William Cheng
e09196261a Add rule to simplify oneOf/anyOf (#14777)
* add rule to simplify oneof/anyof

* update doc

* test nullable
2023-02-21 17:39:43 +08:00
William Cheng
c9958e12b8 Add rule to simplify boolean enum (#14764)
* add rule to simplify boolean enum

* update doc
2023-02-21 14:06:24 +08:00
William Cheng
b215f67b2e fix gradle properties with the correct snapshot version 2023-02-20 16:44:23 +08:00
Naoki Ikeguchi
9290c1a75e [rust-server] Fix clippy warnings (#13907)
* fix(rust-server): clippy::blacklisted_name -> clippy::disallowed_names

* fix(rust-server): Remove unnecessary deref

* fix(rust-server): Allow clippy::single_match

* fix(rust-server): Use clone instead of to_owned on Cow

* fix(rust-server): Remove needless borrows

* chore(rust-server): Update sample outputs
2023-02-20 13:46:01 +08:00
William Cheng
94d6faffe3 revert spring boot back to 2.5.14 (#14755) 2023-02-20 12:35:47 +08:00
Kuzma
fb18e7a039 [Typescript] Enums generation (7.0.0) (#14663)
* Enums generation

* regenerate tests

* Update tests
2023-02-19 13:45:18 +01:00
William Cheng
c50a775e0c prepare 6.5.0 release (#14749) 2023-02-19 20:36:23 +08:00
William Cheng
8db004ffa3 update samples 2022-11-01 21:54:52 +08:00
William Cheng
558ae9373d Merge remote-tracking branch 'origin/master' into 7.0.x 2022-11-01 21:01:06 +08:00
William Cheng
2bac0a8d99 Merge remote-tracking branch 'origin/6.3.x' into 7.0.x 2022-10-16 21:27:53 +08:00
Bruno Coelho
6ba97321ff [swift5] update new minimum OS supported versions (#13667)
* [swift5] update new minimum supported versions

* [swift5] update new minimum supported versions

* [swift5] update new minimum supported versions

* [swift5] update new minimum supported versions
2022-10-12 09:07:32 +01:00
Christopher Chaaya
36fd9f13f2 Generate and use enum types in parameters for typescript-axios (#13438)
* target 7.0.x

* generate all files

* fix up type in JSDoc param as well, address comment

* add fix for rxjs build

Co-authored-by: Christopher Chaaya <christopher.chaaya@bukalapak.com>
2022-10-06 18:26:22 +02:00
William Cheng
249f1ed148 remove outdated TS samples 2022-07-19 12:04:49 +08:00
William Cheng
6bfef6c191 Merge remote-tracking branch 'origin/master' into 7.0.x 2022-07-19 11:54:20 +08:00
William Cheng
c54b0623b8 prepare 7.0.x 2022-05-26 13:17:52 +08:00
25710 changed files with 1069801 additions and 1322625 deletions

View File

@@ -31,14 +31,25 @@ commands: # a reusable command with parameters
# 'See docs on artifact collection here https://circleci.com/docs/2.0/artifacts/'
- run: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
# This is based on your 1.0 configuration file or project settings
#- run:
# command: sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java; sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac; echo -e "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $BASH_ENV
- run:
command: sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java; sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac; echo -e "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $BASH_ENV
command: java -version
- run:
command: 'sudo docker info >/dev/null 2>&1 || sudo service docker start; '
- run:
command: |-
printf '127.0.0.1 petstore.swagger.io
' | sudo tee -a /etc/hosts
command: |
sudo tee -a /etc/hosts \<<< "127.0.0.1 path.v1.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 path.v2.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.111 path.v3.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 operation.v1.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 operation.v2.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.111 operation.v3.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 server.v1.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 server.v2.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.111 server.v3.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 petstore.swagger.io"
cat /etc/hosts
# - run: docker pull openapitools/openapi-petstore
# - run: docker run -d -e OPENAPI_BASE_PATH=/v3 -e DISABLE_API_KEY=1 -e DISABLE_OAUTH=1 -p 80:8080 openapitools/openapi-petstore
- run: docker pull swaggerapi/petstore
@@ -47,7 +58,7 @@ commands: # a reusable command with parameters
- run: sleep 30
- run: cat /etc/hosts
# Test
- run: mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run: ./mvnw --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run:
name: "Setup custom environment variables"
command: echo 'export CIRCLE_NODE_INDEX="<<parameters.nodeNo>>"' >> $BASH_ENV
@@ -193,8 +204,8 @@ jobs:
- command_build_and_test:
nodeNo: "3"
node4:
docker:
- image: fkrull/multi-python
machine:
image: ubuntu-2004:202201-02
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -204,7 +215,7 @@ jobs:
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
- checkout
- command_docker_build_and_test:
- command_build_and_test:
nodeNo: "4"
workflows:
version: 2

View File

@@ -0,0 +1,47 @@
{
"name": "OpenAPIGenerator",
"image": "mcr.microsoft.com/devcontainers/base:debian",
"features": {
"ghcr.io/devcontainers/features/java:1": {
"version": "11",
"installMaven": true
},
"ghcr.io/devcontainers/features/node:1": {
"version": "lts"
},
"ghcr.io/snebjorn/devcontainer-feature/chromium:latest": {}
},
// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set *default* container specific settings.json values on container create.
"settings": {
"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",
"javadoc": "https://docs.oracle.com/en/java/javase/11/docs/api",
"default": true
}
]
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"vscjava.vscode-java-pack",
"attilabuti.mustache-syntax-vscode",
"formulahendry.code-runner",
"visualstudioexptteam.vscodeintellicode",
"42crunch.vscode-openapi",
"mermade.openapi-lint"
]
}
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "mvn clean package -DskipTests",
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
}

1
.envrc Normal file
View File

@@ -0,0 +1 @@
use flake

View File

@@ -800,12 +800,6 @@
"Client: Python"
]
},
{
"input": "python-server-flask-petstore-python2.sh",
"matches": [
"Server: Python"
]
},
{
"input": "python-server-flask-petstore.sh",
"matches": [

View File

@@ -18,8 +18,8 @@
For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
- [ ] In case you are adding a new generator, run the following additional script :
```
./bin/utils/ensure-up-to-date.sh
./bin/utils/ensure-up-to-date
```
Commit all changed files.
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (6.3.0) (minor release - breaking changes with fallbacks), `7.0.x` (breaking changes without fallbacks)
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (7.0.1 - patch release), `7.1.x` (minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
- [ ] 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.

View File

@@ -15,5 +15,5 @@ inputs:
runs:
using: "composite"
steps:
- run: mvn --no-snapshot-updates --batch-mode --quiet ${{ inputs.goal }} -P${{ inputs.name }} -Dintegration-test -Dmaven.javadoc.skip=true ${{ inputs.args }}
shell: bash
- run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet ${{ inputs.goal }} -P${{ inputs.name }} -Dintegration-test -Dmaven.javadoc.skip=true ${{ inputs.args }}
shell: bash

View File

@@ -4,3 +4,9 @@ updates:
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "maven"
directory: "/"
schedule:
interval: "weekly"
allow:
- dependency-name: "com.gradle.*"

View File

@@ -1,97 +0,0 @@
name: Check Supported Java Versions
on:
push:
branches:
- master
jobs:
build:
name: 'Build: JDK ${{ matrix.java }} (${{ matrix.os }})'
runs-on: ${{ matrix.os }}
strategy:
matrix:
java: [8, 11]
os: [ubuntu-latest]
include:
- java: 8
os: windows-latest
- java: 17
os: ubuntu-latest
# Need to update to Gradle version with v17 support in modules/openapi-generator-gradle-plugin/pom.xml
flags: -am -pl modules/openapi-generator-cli -Dmaven.javadoc.skip=true -Dmaven.test.skip=true
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('pom.xml', 'modules/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/cache@v3
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('modules/openapi-generator-gradle-plugin/pom.xml') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Build with Maven
shell: bash
run: mvn -nsu -B --quiet -Djacoco.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress clean install --file pom.xml ${{ matrix.flags }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v3
if: matrix.java == '8' && matrix.os == 'ubuntu-latest'
with:
name: artifact
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
- name: Test Gradle plugin usage
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
- name: Test Maven plugin integration
if: matrix.java == '8'
shell: bash
run: |
cd modules/openapi-generator-maven-plugin
mvn verify -Pintegration
verify:
name: Verify outputs on ${{ matrix.os }}
needs: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
# include:
# - os: windows-latest
# flags: --skip-docs
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Download build artifact
uses: actions/download-artifact@v3
with:
name: artifact
- name: Run Ensures Script
shell: bash
run: |
git config --global core.fileMode false
git config --global core.safecrlf false
git config --global core.autocrlf true
mvn clean package -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
# test with java (jersey2) client generation only as ensure-up-to-date script is run in another job instead
./bin/generate-samples.sh ./bin/configs/java-jersey2-8.yaml
# test debugSupportingFiles
./bin/generate-samples.sh ./bin/configs/python.yaml -- --global-property debugSupportingFiles

39
.github/workflows/docker.yaml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: Docker tests
on:
push:
paths:
- Dockerfile
- run-in-docker.sh
- pom.xml
- modules/openapi-generator-online/pom.xml
- modules/openapi-generator-online/Dockerfile
pull_request:
paths:
- Dockerfile
- run-in-docker.sh
- pom.xml
- modules/openapi-generator-online/pom.xml
- modules/openapi-generator-online/Dockerfile
jobs:
build:
name: 'Build: Docker'
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Test run-in-docker.sh
shell: bash
run: |
sed -i 's/ -it / /g' run-in-docker.sh
./run-in-docker.sh mvn clean install
- name: Build Dockerfile
shell: bash
run: docker build .
- name: Build modules/openapi-generator-online
shell: bash
run: |
docker build modules/openapi-generator-online/ -t test

View File

@@ -35,8 +35,10 @@ jobs:
${{ runner.os }}-test-gradle-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-gradle-plugin-
- name: Run tests
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./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)

View File

@@ -28,6 +28,7 @@ jobs:
- samples/client/petstore/java/jersey2-java8
- samples/client/petstore/java/okhttp-gson
- samples/client/petstore/java/okhttp-gson-group-parameter
- samples/client/petstore/java/webclient-swagger2
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3

View File

@@ -1,46 +0,0 @@
name: Java Helidon Functional tests
on:
push:
paths:
- modules/openapi-generator/src/test/java/org/openapitools/codegen/java/helidon/**
pull_request:
paths:
- modules/openapi-generator/src/test/java/org/openapitools/codegen/java/helidon/**
jobs:
build:
name: Java Helidon Functional tests
runs-on: ubuntu-latest
strategy:
matrix:
java-version: [11, 17]
steps:
- uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java-version }}
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
env:
cache-name: cache-maven-repository
with:
path: |
~/.m2/repository
~/.gradle
!~/.gradle/caches/*/plugin-resolution/
!~/.m2/repository/org/openapitools/
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Run unit tests
run: cd modules/openapi-generator && mvn --no-snapshot-updates --batch-mode -Dtest="**/functional/*Test" test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v3
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'

108
.github/workflows/linux.yaml vendored Normal file
View File

@@ -0,0 +1,108 @@
name: Linux tests
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
jobs:
build:
name: 'Build: JDK ${{ matrix.java }} (${{ matrix.os }})'
runs-on: ${{ matrix.os }}
strategy:
matrix:
java: [11, 17]
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('pom.xml', 'modules/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/cache@v3
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('modules/openapi-generator-gradle-plugin/pom.xml') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.9.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
- name: Build with Maven
shell: bash
run: ./mvnw clean -nsu -B --quiet -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress install --file pom.xml
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v3
if: matrix.java == '11' && matrix.os == 'ubuntu-latest'
with:
name: artifact
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
- name: Test Gradle plugin usage
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
- name: Test Maven plugin integration
if: matrix.java == '11'
shell: bash
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
cd modules/openapi-generator-maven-plugin
mvn clean verify -Pintegration
verify:
name: Verify outputs on ${{ matrix.os }}
needs: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Setup Maven
uses: s4u/setup-maven-action@v1.9.0
with:
java-version: 11
maven-version: 3.8.8
- name: Download build artifact
uses: actions/download-artifact@v3
with:
name: artifact
- name: Run Ensures Script
shell: bash
run: |
git config --global core.fileMode false
git config --global core.safecrlf false
git config --global core.autocrlf true
./mvnw clean package -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
# test with java (jersey2) client generation only as ensure-up-to-date script is run in another job instead
./bin/generate-samples.sh ./bin/configs/java-jersey2-8.yaml
# test debugSupportingFiles
./bin/generate-samples.sh ./bin/configs/go-petstore.yaml -- --global-property debugSupportingFiles

View File

@@ -34,9 +34,11 @@ jobs:
${{ runner.os }}-test-maven-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-maven-plugin-
- name: Run tests
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
mvn clean install -DskipTests -Dmaven.javadoc.skip=true
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/java-client.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/multi-module/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/kotlin.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/spring.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./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 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

View File

@@ -16,10 +16,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
@@ -36,7 +36,9 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Run maven
run: mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
env:
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
@@ -52,10 +54,10 @@ jobs:
- build
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
@@ -72,7 +74,9 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Run unit tests
run: mvn --no-snapshot-updates --batch-mode --quiet --fail-at-end test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet --fail-at-end test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v3
@@ -87,10 +91,10 @@ jobs:
- build
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v3
@@ -126,10 +130,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v3

View File

@@ -0,0 +1,27 @@
name: Samples c libcurl client
on:
push:
paths:
- 'samples/client/petstore/c/**'
pull_request:
paths:
- 'samples/client/petstore/c/**'
jobs:
build:
name: Build c libcurl client
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Prepare
run: |
sudo apt-get update
sudo apt-get install -y libssl-dev libcurl4-openssl-dev
- name: Build
working-directory: "samples/client/petstore/c"
run: |
mkdir build
cd build
cmake ..
make

View File

@@ -23,12 +23,16 @@ jobs:
- ubuntu-latest
- macOS-latest
- windows-latest
include:
- os: windows-latest
tools: 'tools_openssl_x64'
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt-version }}
tools: ${{ matrix.tools }}
- name: Build
working-directory: "samples/client/petstore/cpp-qt"
run: ./build-and-test.bash
run: cmake . && cmake --build .

View File

@@ -21,23 +21,15 @@ jobs:
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
env:
cache-name: maven-repository
with:
path: |
~/.m2/repository
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
java-version: 11
cache: maven
- name: Cache test dependencies
uses: actions/cache@v3
env:
cache-name: pub-cache
with:
path: $PUB_CACHE
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('samples/**/pubspec.yaml') }}
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('samples/**/pubspec.*') }}
- uses: dart-lang/setup-dart@v1
with:
sdk: 2.15.0

View File

@@ -3,10 +3,10 @@ name: Samples C# .Net Standard
on:
push:
paths:
- 'samples/client/petstore/csharp-netcore/**netstandard**/'
- 'samples/client/petstore/csharp/**netstandard**/'
pull_request:
paths:
- 'samples/client/petstore/csharp-netcore/**netstandard**/'
- 'samples/client/petstore/csharp/**netstandard**/'
jobs:
build:
name: Build .Net projects
@@ -16,10 +16,10 @@ jobs:
matrix:
sample:
# clients
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netstandard2.0
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.0.3
- uses: actions/setup-dotnet@v3.2.0
with:
dotnet-version: 3.1.*
- name: Build

View File

@@ -1,18 +1,25 @@
name: Samples C# .Net 6
name: Samples C# .Net 7
on:
push:
paths:
- 'samples/client/petstore/csharp-netcore/**net6.0**/'
- 'samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore**/'
- 'samples/client/petstore/csharp/**net6.0**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-netcore**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-manual-tests/**'
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
pull_request:
paths:
- 'samples/client/petstore/csharp-netcore/**net6.0**/'
- 'samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore**/'
- 'samples/client/petstore/csharp/**net6.0**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-netcore**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-manual-tests/**'
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-project4Models/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
- 'samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse/**'
- 'samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/**'
jobs:
build:
name: Build .Net projects
@@ -22,17 +29,21 @@ jobs:
matrix:
sample:
# clients
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-net6.0
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-net6.0-nrt
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-allOf
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-oneOf
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-anyOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0
- samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0-nrt
- samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-allOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-oneOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-anyOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-manual-tests
- samples/server/petstore/aspnetcore-6.0
- samples/server/petstore/aspnetcore-6.0-pocoModels
- samples/server/petstore/aspnetcore-6.0-project4Models
- samples/server/petstore/aspnetcore-6.0-useSwashBuckle
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.0.3
- uses: actions/setup-dotnet@v3.2.0
with:
dotnet-version: '7.0.x'
- name: Build

View File

@@ -0,0 +1,31 @@
name: Samples C# .Net 6
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@v3
- uses: actions/setup-dotnet@v3.2.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

View File

@@ -0,0 +1,81 @@
name: Samples C# .Net 6
on:
push:
paths:
# build C# API client (multiple frameworks)
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/**
# build C# API client (httpclient)
- samples/client/petstore/csharp/OpenAPIClient-httpclient/**
# build C# API client (generichost)
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/**
# build C# API client (netcore)
- samples/client/petstore/csharp/OpenAPIClient/**
- samples/client/petstore/csharp/OpenAPIClientCore/**
# build C# API client (.net framework 4.7)
- samples/client/petstore/csharp/OpenAPIClient-net47/**
# build C# API client (.net framework 4.8)
- samples/client/petstore/csharp/OpenAPIClient-net48/**
# build C# API client (.net 5.0)
- samples/client/petstore/csharp/OpenAPIClient-net5.0/**
# build C# API client (.net 5.0 with ConditionalSerialization)
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
# build C# API client (property, parameter name mappings)
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
pull_request:
paths:
# build C# API client (multiple frameworks)
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/**
# build C# API client (httpclient)
- samples/client/petstore/csharp/OpenAPIClient-httpclient/**
# build C# API client (generichost)
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/**
# build C# API client (netcore)
- samples/client/petstore/csharp/OpenAPIClient/**
- samples/client/petstore/csharp/OpenAPIClientCore/**
# build C# API client (.net framework 4.7)
- samples/client/petstore/csharp/OpenAPIClient-net47/**
# build C# API client (.net framework 4.8)
- samples/client/petstore/csharp/OpenAPIClient-net48/**
# build C# API client (.net 5.0)
- samples/client/petstore/csharp/OpenAPIClient-net5.0/**
# build C# API client (.net 5.0 with ConditionalSerialization)
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
# build C# API client (property, parameter name mappings)
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
# build C# API client (multiple frameworks)
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/
# build C# API client (httpclient)
- samples/client/petstore/csharp/OpenAPIClient-httpclient/
# build C# API client (generichost)
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/
# build C# API client (netcore)
- samples/client/petstore/csharp/OpenAPIClient/
- samples/client/petstore/csharp/OpenAPIClientCore/
# build C# API client (.net framework 4.7)
- samples/client/petstore/csharp/OpenAPIClient-net47/
# build C# API client (.net framework 4.8)
- samples/client/petstore/csharp/OpenAPIClient-net48/
# build C# API client (.net 5.0)
- samples/client/petstore/csharp/OpenAPIClient-net5.0/
# build C# API client (.net 5.0 with ConditionalSerialization)
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/
# build C# API client (property, parameter name mappings)
- samples/client/petstore/csharp-restsharp-name-parameter-mappings
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.2.0
with:
dotnet-version: '6.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -0,0 +1,41 @@
name: Samples C# .Net 6
on:
push:
paths:
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
pull_request:
paths:
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-project4Models/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
- 'samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse/**'
- 'samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/**'
jobs:
build:
name: Build .Net servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/aspnetcore-6.0
- samples/server/petstore/aspnetcore-6.0-pocoModels
- samples/server/petstore/aspnetcore-6.0-project4Models
- samples/server/petstore/aspnetcore-6.0-useSwashBuckle
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.2.0
with:
dotnet-version: '6.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

35
.github/workflows/samples-elm.yaml vendored Normal file
View File

@@ -0,0 +1,35 @@
name: Samples Elm
on:
push:
paths:
- samples/client/petstore/elm/**
- samples/openapi3/client/elm/**
pull_request:
paths:
- samples/client/petstore/elm/**
- samples/openapi3/client/elm/**
jobs:
build:
name: Build Elm clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/elm
- samples/openapi3/client/elm
steps:
- uses: actions/checkout@v3
- uses: jorelali/setup-elm@v5
with:
elm-version: 0.19.1
- name: Build
working-directory: ${{ matrix.sample }}
# Try to compile all .elm files
# This fails if:
# 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

35
.github/workflows/samples-erlang.yaml vendored Normal file
View File

@@ -0,0 +1,35 @@
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/client/petstore/erlang-client/**
- samples/client/petstore/erlang-proper/**
pull_request:
paths:
#- 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
strategy:
fail-fast: false
matrix:
sample:
#- samples/server/petstore/erlang-server/
- samples/client/petstore/erlang-client/
- samples/client/petstore/erlang-proper/
steps:
- uses: actions/checkout@v3
- uses: erlef/setup-beam@v1
with:
otp-version: '22.2'
rebar3-version: '3.14.3'
- run: rebar3 compile
working-directory: ${{ matrix.sample }}

View File

@@ -5,10 +5,12 @@ on:
paths:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
pull_request:
paths:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
jobs:
build:
@@ -20,17 +22,13 @@ jobs:
sample:
- samples/server/petstore/go-echo-server/
- samples/server/petstore/go-api-server/
- samples/server/petstore/go-chi-server/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: '>=1.17.0'
go-version: "stable"
- run: go version
- name: Install
- name: Run test
working-directory: ${{ matrix.sample }}
run: |
go get github.com/labstack/echo/v4/middleware@v4.9.0
go get github.com/labstack/echo/v4@v4.9.0
- name: Build
working-directory: ${{ matrix.sample }}
run: go test -v
run: go test -mod=mod -v

36
.github/workflows/samples-haskell.yaml vendored Normal file
View File

@@ -0,0 +1,36 @@
name: Samples Haskell
on:
push:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/client/petstore/haskell-http-client/**
pull_request:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/client/petstore/haskell-http-client/**
jobs:
build:
name: Build stack projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/haskell-yesod/
- samples/server/petstore/haskell-servant/
- samples/client/petstore/haskell-http-client/
steps:
- uses: actions/checkout@v3
- uses: haskell/actions/setup@v2
with:
# ghc-version: '8.8.4' # Exact version of ghc to use
# cabal-version: 'latest'. Omitted, but defaults to 'latest'
enable-stack: true
stack-version: 'latest'
- name: stack test
working-directory: ${{ matrix.sample }}
run: stack test

View File

@@ -8,6 +8,7 @@ on:
- 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**
pull_request:
paths:
@@ -16,6 +17,7 @@ on:
- 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**
jobs:
build:
@@ -38,6 +40,7 @@ jobs:
- samples/client/petstore/java/resttemplate-withXml
- samples/client/petstore/java/webclient
- samples/client/petstore/java/webclient-nullable-arrays
- samples/client/petstore/java/webclient-swagger2
- samples/client/petstore/java/vertx
- samples/client/petstore/java/jersey2-java8-localdatetime
- samples/client/petstore/java/resteasy
@@ -46,6 +49,8 @@ jobs:
- samples/client/petstore/java/rest-assured-jackson
- samples/client/petstore/java/microprofile-rest-client
- 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/apache-httpclient
- samples/client/petstore/java/feign
- samples/client/petstore/java/jersey1
@@ -54,6 +59,9 @@ jobs:
- samples/client/petstore/java/okhttp-gson-swagger1/
- samples/client/petstore/java/resttemplate-swagger1/
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/
- samples/client/petstore/java/okhttp-gson-swagger2/
- samples/client/petstore/java/resttemplate-swagger2/
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
@@ -70,4 +78,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

View File

@@ -34,6 +34,9 @@ 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
- name: Build with Gradle
working-directory: ${{ matrix.sample }}
run: gradle clean build

View File

@@ -0,0 +1,41 @@
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@v3
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v3
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

@@ -38,6 +38,7 @@ jobs:
- samples/server/petstore/jaxrs-cxf-annotated-base-path
- samples/server/petstore/jaxrs-cxf-cdi
- samples/server/petstore/jaxrs-cxf-non-spring-app
- samples/server/petstore/jaxrs-spec-microprofile-openapi-annotations
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3

41
.github/workflows/samples-julia.yaml vendored Normal file
View File

@@ -0,0 +1,41 @@
name: Samples Julia
on:
push:
paths:
- 'samples/client/petstore/julia/**'
- 'samples/server/petstore/julia/**'
pull_request:
paths:
- 'samples/client/petstore/julia/**'
- 'samples/server/petstore/julia/**'
jobs:
tests-julia:
name: Tests Julia
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: julia-actions/setup-julia@v1
with:
version: 1.8
arch: x64
- name: Test
shell: bash
working-directory: 'samples'
run: |
currdir=`pwd`
# Using a specific version of OpenAPI.jl helps avoid introducing version inter-dependencies
# and allows breaking changes to be done in either repos independently
# 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
cd $currdir
rm -rf ~/.julia/dev/OpenAPI/test/client/openapigenerator_petstore_v3/petstore
rm -rf ~/.julia/dev/OpenAPI/test/server/openapigenerator_petstore_v3/petstore
cp -r client/petstore/julia ~/.julia/dev/OpenAPI/test/client/openapigenerator_petstore_v3/petstore
cp -r server/petstore/julia ~/.julia/dev/OpenAPI/test/server/openapigenerator_petstore_v3/petstore
# setting this env runs only the tests relevant to the openapi-generator repo
export OPENAPI_GENERATOR=true
julia -e "using Pkg; Pkg.test(\"OpenAPI\");"

View File

@@ -4,9 +4,11 @@ on:
push:
branches:
- 'samples/client/petstore/kotlin*/**'
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
pull_request:
paths:
- 'samples/client/petstore/kotlin*/**'
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
env:
GRADLE_VERSION: 6.9
@@ -49,13 +51,19 @@ jobs:
- samples/client/petstore/kotlin-array-simple-string-multiplatform
- samples/client/petstore/kotlin-bigdecimal-default-multiplatform
- samples/client/petstore/kotlin-bigdecimal-default-okhttp4
- samples/client/petstore/kotlin-jvm-jackson
- samples/client/petstore/kotlin-jvm-ktor-jackson
- samples/client/petstore/kotlin-jvm-ktor-gson
- samples/client/petstore/kotlin-jvm-ktor-gson
- samples/client/petstore/kotlin-jvm-ktor-kotlinx_serialization
- samples/client/petstore/kotlin-jvm-vertx-gson
- samples/client/petstore/kotlin-jvm-vertx-jackson
- samples/client/petstore/kotlin-jvm-vertx-jackson-coroutines
- 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-spring-cloud
- samples/client/petstore/kotlin-name-parameter-mappings
- samples/client/others/kotlin-jvm-okhttp-parameter-tests
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3

View File

@@ -4,9 +4,13 @@ on:
push:
branches:
- 'samples/server/petstore/kotlin-springboot-3*/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
pull_request:
paths:
- 'samples/server/petstore/kotlin-springboot-3*/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 7.4
@@ -21,6 +25,8 @@ jobs:
sample:
# server
- samples/server/petstore/kotlin-springboot-3
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3

View File

@@ -3,10 +3,16 @@ name: Samples Kotlin server
on:
push:
branches:
- samples/server/others/kotlin-server/jaxrs-spec/**
- 'samples/server/petstore/kotlin*/**'
# comment out due to gradle build failure
#- samples/server/petstore/kotlin-spring-default/**
pull_request:
paths:
- samples/server/others/kotlin-server/jaxrs-spec/**
- 'samples/server/petstore/kotlin*/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 6.9
@@ -29,7 +35,11 @@ jobs:
- samples/server/petstore/kotlin-springboot-springfox
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server/jaxrs-spec
- samples/server/petstore/kotlin-server/jaxrs-spec-mutiny
- samples/server/petstore/kotlin-server-modelMutable
- samples/server/others/kotlin-server/jaxrs-spec
# comment out due to gradle build failure
#- samples/server/petstore/kotlin-spring-default
# no build.gradle file
#- samples/server/petstore/kotlin-vertx-modelMutable
steps:

View File

@@ -3,10 +3,10 @@ name: Python Client (Echo API)
on:
push:
paths:
- samples/client/echo_api/python-nextgen/**
- samples/client/echo_api/python/**
pull_request:
paths:
- samples/client/echo_api/python-nextgen/**
- samples/client/echo_api/python/**
jobs:
build:
name: Test Python client
@@ -16,7 +16,7 @@ jobs:
matrix:
sample:
# clients
- samples/client/echo_api/python-nextgen
- samples/client/echo_api/python
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4

View File

@@ -0,0 +1,27 @@
name: Python Server
on:
push:
paths:
- samples/server/petstore/python-aiohttp/**
pull_request:
paths:
- samples/server/petstore/python-aiohttp/**
jobs:
build:
name: Test Python server
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/python-aiohttp/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.7'
- name: Test
working-directory: ${{ matrix.sample }}
run: make test-all

View File

@@ -3,12 +3,14 @@ name: Samples Rust
on:
push:
paths:
- 'samples/client/petstore/rust/**'
- 'samples/server/petstore/rust-server/**'
- "samples/client/others/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/client/petstore/rust-server/**"
pull_request:
paths:
- 'samples/client/petstore/rust/**'
- 'samples/server/petstore/rust-server/**'
- "samples/client/others/rust/**"
- "samples/client/petstore/rust/**"
- "samples/server/petstore/rust-server/**"
jobs:
build:
@@ -19,6 +21,7 @@ jobs:
matrix:
sample:
# these folders contain sub-projects of rust clients, servers
- samples/client/others/rust/
- samples/client/petstore/rust/
- samples/server/petstore/rust-server/
steps:

View File

@@ -27,6 +27,7 @@ jobs:
- 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
steps:

View File

@@ -0,0 +1,36 @@
name: Samples Java Spring (JDK17)
on:
push:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
pull_request:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
jobs:
build:
name: Build Java Spring (JDK17)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v3
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

@@ -22,26 +22,32 @@ jobs:
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/client/petstore/spring-stubs
- 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
# servers
- samples/server/petstore/springboot
- samples/openapi3/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-useoptional
- samples/openapi3/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-reactive
- samples/openapi3/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/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-implicitHeaders-annotationLibrary
- 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
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3

50
.github/workflows/samples-swift.yaml vendored Normal file
View File

@@ -0,0 +1,50 @@
name: Samples Swift
on:
push:
paths:
- samples/client/petstore/swift5/**
pull_request:
paths:
- samples/client/petstore/swift5/**
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [macos-latest]
sample:
- samples/client/petstore/swift5/alamofireLibrary
- samples/client/petstore/swift5/anycodableLibrary
- samples/client/petstore/swift5/asyncAwaitLibrary
- samples/client/petstore/swift5/combineLibrary
- samples/client/petstore/swift5/default
- samples/client/petstore/swift5/deprecated
- samples/client/petstore/swift5/frozenEnums
- samples/client/petstore/swift5/nonPublicApi
- samples/client/petstore/swift5/objcCompatible
- samples/client/petstore/swift5/oneOf
- samples/client/petstore/swift5/promisekitLibrary
- samples/client/petstore/swift5/readonlyProperties
- samples/client/petstore/swift5/resultLibrary
- samples/client/petstore/swift5/rxswiftLibrary
- samples/client/petstore/swift5/urlsessionLibrary
- samples/client/petstore/swift5/validation
# NOTE: disabled as vaporLibrary doesnt build when adding this CI config
#- samples/client/petstore/swift5/vaporLibrary
- samples/client/petstore/swift5/x-swift-hashable
include:
- os: ubuntu-latest
sample: samples/client/petstore/swift5/alamofireLibrary
name: Build Swift samples
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: swift-actions/setup-swift@v1
if: ${{ matrix.os == 'ubuntu-latest' }}
with:
swift-version: '5'
- name: Build
working-directory: ${{ matrix.sample }}
run: swift build

30
.github/workflows/samples-zapier.yaml vendored Normal file
View File

@@ -0,0 +1,30 @@
name: Samples Zapier
on:
push:
branches:
- 'samples/client/petstore/zapier/**'
pull_request:
paths:
- 'samples/client/petstore/zapier/**'
jobs:
validate:
name: Test zapier generation
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/zapier
steps:
- uses: actions/checkout@v3
- name: Setup node
uses: actions/setup-node@v3
- name: Install dependencies
working-directory: ${{ matrix.sample }}
run: |
npm install
- name: Validate
working-directory: ${{ matrix.sample }}
run: node index.js

View File

@@ -19,8 +19,8 @@ jobs:
distribution: 'temurin'
java-version: 11
- name: Compile with Maven
run: mvn -B -q clean install jacoco:report
run: ./mvnw -B -q clean install jacoco:report
- name: Jacoco Aggregate
run: mvn jacoco:report-aggregate
run: ./mvnw jacoco:report-aggregate
- name: Publish to Sonar
run: mvn -B -q -nsu sonar:sonar -Dsonar.projectKey=OpenAPITools_openapi-generator -Dsonar.organization=openapitools -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.branch.name=${GITHUB_REF##*/}
run: ./mvnw -B -q -nsu sonar:sonar -Dsonar.projectKey=OpenAPITools_openapi-generator -Dsonar.organization=openapitools -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.branch.name=${GITHUB_REF##*/}

59
.github/workflows/windows.yaml vendored Normal file
View File

@@ -0,0 +1,59 @@
name: Windows tests
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
jobs:
build:
name: Build
runs-on: windows-latest
strategy:
matrix:
java: [11, 17]
steps:
- uses: actions/checkout@v3
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
env:
cache-name: cache-maven-repository
with:
path: |
~/.m2/repository
~/.gradle
!~/.gradle/caches/*/plugin-resolution/
!~/.m2/repository/org/openapitools/
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.9.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
- name: Run maven
run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet install
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Test Template Retrieval
run: |
cd modules/openapi-generator-cli/target
# generator names containing "-" caused problems in the past, see https://github.com/OpenAPITools/openapi-generator/issues/9528
java -jar ./openapi-generator-cli.jar author template --verbose -g jaxrs-spec --library quarkus
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Gradle tests
run: |
gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace

8
.gitignore vendored
View File

@@ -35,6 +35,8 @@ packages/
nbproject/
nbactions.xml
nb-configuration.xml
.direnv/
**/:w
.settings
@@ -171,17 +173,17 @@ samples/client/petstore/csharp-refactor/OpenAPIClient/nuget.exe
# Python
*.pyc
__pycache__
.venv/
samples/client/petstore/python/dev-requirements.txt.log
samples/client/petstore/python/swagger_client.egg-info/SOURCES.txt
samples/client/petstore/python/.coverage
samples/client/petstore/python/.projectile
samples/client/petstore/python/.venv/
samples/client/petstore/python-asyncio/.venv/
samples/client/petstore/python-asyncio/.pytest_cache/
samples/client/petstore/python-tornado/.venv/
# PHP
samples/client/petstore/php/OpenAPIClient-php/composer.lock
samples/client/petstore/php-nextgen/OpenAPIClient-php/composer.lock
samples/client/petstore/php-dt/composer.lock
samples/client/petstore/php-dt-modern/composer.lock
samples/openapi3/server/petstore/php-symfony/SymfonyBundle-php/composer.lock

13
.mvn/extensions.xml Normal file
View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<extensions>
<extension>
<groupId>com.gradle</groupId>
<artifactId>gradle-enterprise-maven-extension</artifactId>
<version>1.17</version>
</extension>
<extension>
<groupId>com.gradle</groupId>
<artifactId>common-custom-user-data-maven-extension</artifactId>
<version>1.11.1</version>
</extension>
</extensions>

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Common gradle-enterprise.xml configuration for Maven shared between CI agents and developers building locally.
The build cache credentials required for CI builds to write to the remote build cache are read from environment variables.
Possibly, the credentials are configured in Jenkins via Credentials plugin (https://plugins.jenkins.io/credentials/) and
Credentials Binding plugin (https://plugins.jenkins.io/credentials-binding/), or the credentials are injected using the
vendor-specific mechanism of the CI server running the build.
Note: In the XML configuration below, you need to adjust
- the server url of your Gradle Enterprise server
- the name of the environment variable that reveals the build is running in a CI environment
- the names of the environment variables holding the build cache credentials
to the specifics of your CI server settings. -->
<gradleEnterprise
xmlns="https://www.gradle.com/gradle-enterprise-maven" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.gradle.com/gradle-enterprise-maven https://www.gradle.com/schema/gradle-enterprise-maven.xsd">
<server>
<url>https://ge.openapi-generator.tech/</url> <!-- adjust to your GE server -->
<allowUntrusted>false</allowUntrusted> <!-- ensure a trusted certificate is configured -->
</server>
<buildScan>
<captureGoalInputFiles>true</captureGoalInputFiles>
<backgroundBuildScanUpload>#{isFalse(env['CI'])}</backgroundBuildScanUpload> <!-- adjust to your CI provider -->
<publish>ALWAYS</publish>
<publishIfAuthenticated>true</publishIfAuthenticated>
<obfuscation>
<!-- Use a redacted value.-->
<ipAddresses>#{{'0.0.0.0'}}</ipAddresses>
</obfuscation>
</buildScan>
<buildCache>
<local>
<enabled>false</enabled>
</local>
<remote>
<server>
<url>https://ge.openapi-generator.tech/cache/exp3/</url> <!-- adjust to your GE hostname, and note the trailing slash -->
<allowUntrusted>true</allowUntrusted> <!-- set to false if a trusted certificate is configured for the GE server -->
<credentials>
<username>${env.GRADLE_ENTERPRISE_CACHE_USERNAME}</username>
<password>${env.GRADLE_ENTERPRISE_CACHE_PASSWORD}</password>
</credentials>
</server>
<enabled>true</enabled> <!-- must be true for this experiment -->
<storeEnabled>#{env['CI'] != null}</storeEnabled> <!-- adjust to an env var that is always present only in your CI environment -->
</remote>
</buildCache>
</gradleEnterprise>

View File

@@ -1,117 +0,0 @@
/*
* Copyright 2007-present the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;
public class MavenWrapperDownloader {
private static final String WRAPPER_VERSION = "0.5.6";
/**
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
*/
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
/**
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
* use instead of the default one.
*/
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
".mvn/wrapper/maven-wrapper.properties";
/**
* Path where the maven-wrapper.jar will be saved to.
*/
private static final String MAVEN_WRAPPER_JAR_PATH =
".mvn/wrapper/maven-wrapper.jar";
/**
* Name of the property which should be used to override the default download url for the wrapper.
*/
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
public static void main(String args[]) {
System.out.println("- Downloader started");
File baseDirectory = new File(args[0]);
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
// If the maven-wrapper.properties exists, read it and check if it contains a custom
// wrapperUrl parameter.
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
String url = DEFAULT_DOWNLOAD_URL;
if(mavenWrapperPropertyFile.exists()) {
FileInputStream mavenWrapperPropertyFileInputStream = null;
try {
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
Properties mavenWrapperProperties = new Properties();
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
} catch (IOException e) {
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
} finally {
try {
if(mavenWrapperPropertyFileInputStream != null) {
mavenWrapperPropertyFileInputStream.close();
}
} catch (IOException e) {
// Ignore ...
}
}
}
System.out.println("- Downloading from: " + url);
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
if(!outputFile.getParentFile().exists()) {
if(!outputFile.getParentFile().mkdirs()) {
System.out.println(
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
}
}
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
try {
downloadFileFromURL(url, outputFile);
System.out.println("Done");
System.exit(0);
} catch (Throwable e) {
System.out.println("- Error downloading");
e.printStackTrace();
System.exit(1);
}
}
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
String username = System.getenv("MVNW_USERNAME");
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
}
URL website = new URL(urlString);
ReadableByteChannel rbc;
rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream(destination);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
rbc.close();
}
}

Binary file not shown.

View File

@@ -5,14 +5,14 @@
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
#
# http://www.apache.org/licenses/LICENSE-2.0
#
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.4/apache-maven-3.8.4-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.8/apache-maven-3.8.8-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar

View File

@@ -1,7 +1,7 @@
sudo: required
language: java
jdk:
- openjdk8
- openjdk11
# See https://docs.travis-ci.com/user/languages/java/#caching
before_cache:
@@ -127,21 +127,6 @@ before_install:
gpg --check-trustdb ;
fi;
- pushd .; cd website; yarn install; popd
# install Deno
#- sh -s v1.6.2 < ./CI/deno_install.sh
#- export PATH="$HOME/.deno/bin:$PATH"
install:
# Add Godeps dependencies to GOPATH and PATH
#- eval "$(curl -sL https://raw.githubusercontent.com/travis-ci/gimme/master/gimme | GIMME_GO_VERSION=1.4 bash)"
#- export GOPATH="${TRAVIS_BUILD_DIR}/Godeps/_workspace"
- export PATH="${TRAVIS_BUILD_DIR}/Godeps/_workspace/bin:$HOME/.cargo/bin:$PATH:/usr/lib/dart/bin"
#- go version
- gcc -v
- echo $CC
- echo $CXX
#- pub version
#- dart --version
script:
# fail fast
@@ -150,14 +135,14 @@ script:
- docker buildx version
# run integration tests defined in maven pom.xml
# WARN: Travis will timeout after 10 minutes of no stdout/stderr activity, which is problematic with mvn --quiet.
- mvn -e --no-snapshot-updates --quiet --batch-mode --show-version clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
#- mvn -e --no-snapshot-updates --quiet --batch-mode --show-version verify -Psamples -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# show "error" only to reduce the log size
- ./mvnw -e --no-snapshot-updates --quiet --batch-mode --show-version clean install -DskipTests -Dmaven.javadoc.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error
after_success:
# push to maven repo
- if [ $SONATYPE_USERNAME ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
if [ "$TRAVIS_BRANCH" = "master" ] && [ -z $TRAVIS_TAG ]; then
echo "Publishing from branch $TRAVIS_BRANCH";
mvn clean deploy -DskipTests=true -B -U -P release --settings CI/settings.xml;
./mvnw clean deploy --quiet -DskipTests=true -B -U -P release --settings CI/settings.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error;
echo "Finished mvn clean deploy for $TRAVIS_BRANCH";
pushd .;
cd modules/openapi-generator-gradle-plugin;
@@ -166,7 +151,7 @@ after_success:
popd;
elif [ -z $TRAVIS_TAG ] && [[ "$TRAVIS_BRANCH" =~ ^[0-9]+\.[0-9]+\.x$ ]]; then
echo "Publishing from branch $TRAVIS_BRANCH";
mvn clean deploy --settings CI/settings.xml;
./mvnw clean deploy --quiet --settings CI/settings.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error;
echo "Finished mvn clean deploy for $TRAVIS_BRANCH";
pushd .;
cd modules/openapi-generator-gradle-plugin;

View File

@@ -9,20 +9,11 @@ set -e
export NODE_ENV=test
function cleanup {
# Show logs of 'petstore.swagger' container to troubleshoot Unit Test failures, if any.
if [ "$NODE_INDEX" != "4" ]; then
docker logs petstore.swagger # container name specified in circle.yml
fi
}
trap cleanup EXIT
if [ "$NODE_INDEX" = "1" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci' defined in pom.xml ..."
java -version
mvn --no-snapshot-updates --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
elif [ "$NODE_INDEX" = "2" ]; then
echo "Running node $NODE_INDEX to test Go"
@@ -43,7 +34,7 @@ elif [ "$NODE_INDEX" = "2" ]; then
go version
# run integration tests
mvn --no-snapshot-updates --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
elif [ "$NODE_INDEX" = "3" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci.node3' defined in pom.xml ..."
@@ -54,7 +45,7 @@ elif [ "$NODE_INDEX" = "3" ]; then
#sudo make altinstall
pyenv install --list
pyenv install 3.7.12
pyenv install 2.7.14
#pyenv install 2.7.14 #python2 no longer supported
pyenv global 3.7.12
# Install node@stable (for angular 6)
@@ -72,22 +63,23 @@ elif [ "$NODE_INDEX" = "3" ]; then
echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
echo "[ -s \"$NVM_DIR/nvm.sh\" ] && . \"$NVM_DIR/nvm.sh\"" >> $BASH_ENV
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node3 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci.node3 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
elif [ "$NODE_INDEX" = "4" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci.node4' defined in pom.xml ..."
#mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node4 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
(cd samples/openapi3/client/petstore/python && make test)
(cd samples/openapi3/client/petstore/python-prior && make test)
(cd samples/openapi3/client/3_0_3_unit_test/python && make test)
#(cd samples/openapi3/client/petstore/python && make test)
# comment out due to ModuleNotFoundError: No module named 'urllib3.request'
#(cd samples/openapi3/client/petstore/python-prior && make test)
#(cd samples/openapi3/client/3_0_3_unit_test/python && make test)
else
echo "Running node $NODE_INDEX to test 'samples.circleci.others' defined in pom.xml ..."
java -version
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.others -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet javadoc:javadoc -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci.others -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet javadoc:javadoc -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
fi

View File

@@ -73,6 +73,7 @@ Code change should conform to the programming style guide of the respective lang
- Scala: http://docs.scala-lang.org/style/
- Swift: [Apple Developer](https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html)
- TypeScript: https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines
- Xojo: https://documentation.xojo.com/topics/code_management/coding_guidelines.html
For other languages, feel free to suggest.

137
README.md
View File

@@ -10,23 +10,17 @@
[![Follow OpenAPI Generator Twitter account to get the latest update](https://img.shields.io/twitter/follow/oas_generator.svg?style=social&label=Follow)](https://twitter.com/oas_generator)
[![Contribute with Gitpod](https://img.shields.io/badge/Contribute%20with-Gitpod-908a85?logo=gitpod)](https://gitpod.io/#https://github.com/OpenAPITools/openapi-generator)
[![Conan Center](https://shields.io/conan/v/openapi-generator)](https://conan.io/center/openapi-generator)
[![Revved up by Gradle Enterprise](https://img.shields.io/badge/Revved%20up%20by-Gradle%20Enterprise-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.openapi-generator.tech/scans)
</div>
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`6.4.0`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.0.1`):
[![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)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/master?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
[7.0.x](https://github.com/OpenAPITools/openapi-generator/tree/7.0.x) (`7.0.x`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/7.0.x.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/7.0.x.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=7.0.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/7.0.x?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
</div>
<div align="center">
@@ -65,6 +59,7 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[<img src="https://openapi-generator.tech/img/companies/burkert.jpg" width="128" height="128">](https://www.burkert.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/finbourne.png" width="128" height="128">](https://www.finbourne.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/bumpsh.png" width="128" height="128">](https://bump.sh/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/bileto.png" width="128" height="128">](https://www.bileto.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS and Checkly for sponsoring the API monitoring
@@ -76,13 +71,13 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
## Overview
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an [OpenAPI Spec](https://github.com/OAI/OpenAPI-Specification) (both 2.0 and 3.0 are supported). Currently, the following languages/frameworks are supported:
| | Languages/Frameworks |
| -------------------------------- |-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient 4.x, Apache HttpClient 5.x, Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client, Helidon), **Jetbrains HTTP Client**, **Julia**, **k6**, **Kotlin**, **Lua**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (2.x - 13.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, Azure Functions), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/), [Apache Camel](https://camel.apache.org/), [Helidon](https://helidon.io/)), **Julia**, **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, [Mezzio (fka Zend Expressive)](https://github.com/mezzio/mezzio), Slim, Silex, [Symfony](https://symfony.com/)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** ([rust-server](https://openapi-generator.tech/docs/generators/rust-server/)), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML** |
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Protocol Buffer**, **WSDL** |
| | Languages/Frameworks |
| -------------------------------- |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient 4.x, Apache HttpClient 5.x, Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client, Helidon), **Jetbrains HTTP Client**, **Julia**, **k6**, **Kotlin**, **Lua**, **N4JS**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (9.x - 16.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs), **XoJo**, **Zapier** |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, Azure Functions), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/), [Apache Camel](https://camel.apache.org/), [Helidon](https://helidon.io/)), **Julia**, **Kotlin** (Spring Boot, [Ktor](https://github.com/ktorio/ktor), [Vert.x](https://vertx.io/)), **PHP** (Laravel, Lumen, [Mezzio (fka Zend Expressive)](https://github.com/mezzio/mezzio), Slim, Silex, [Symfony](https://symfony.com/)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** ([rust-server](https://openapi-generator.tech/docs/generators/rust-server/)), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML** |
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Protocol Buffer**, **WSDL** |
## Table of contents
@@ -120,14 +115,16 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 7.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.0.0-SNAPSHOT/) | Feb/Mar 2023 | Major release with breaking changes (no fallback) |
| 6.4.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.4.0-SNAPSHOT/) | 05.12.2022 | Minor release with breaking changes (with fallback) |
| [6.3.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v6.3.0) (latest stable release) | 01.02.2023 | Minor release with breaking changes (with fallback) |
| 7.0.1 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.0.1-SNAPSHOT/) | 08.09.2023 | Patch release (enhancements, bug fixes, etc) |
| [7.0.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.0.0) (latest stable release) | 25.08.2023 | Major release with breaking changes (no 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) |
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0
(We do not publish daily/nightly build. Please use SNAPSHOT instead)
For old releases, please refer to the [**Release**](https://github.com/OpenAPITools/openapi-generator/releases) page.
For decomissioned generators/libraries/frameworks, please refer to [the "Decommission" label](https://github.com/OpenAPITools/openapi-generator/issues?q=label%3ADecommission+is%3Amerged+) in the pull request page.
@@ -180,27 +177,28 @@ See the different versions of the [openapi-generator-cli](https://search.maven.o
### [1.3 - Download JAR](#table-of-contents)
<!-- RELEASE_VERSION -->
If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 8 runtime at a minimum):
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/6.3.0/openapi-generator-cli-6.3.0.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/6.3.0/openapi-generator-cli-6.3.0.jar -O openapi-generator-cli.jar
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.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/6.3.0/openapi-generator-cli-6.3.0.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
For Mac users, please make sure Java 8 is installed (Tips: run `java -version` to check the version), and export `JAVA_HOME` in order to use the supported Java version:
For Mac users, please make sure Java 11 is installed (Tips: run `java -version` to check the version), and export `JAVA_HOME` in order to use the supported Java version:
```sh
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
export JAVA_HOME=`/usr/libexec/java_home -v 1.11`
export PATH=${JAVA_HOME}/bin:$PATH
```
<!-- /RELEASE_VERSION -->
### Launcher Script
@@ -249,25 +247,33 @@ openapi-generator-cli version # is always 4.0.2, unless any of the above overrid
To build from source, you need the following installed and available in your `$PATH:`
* [Java 8](https://www.oracle.com/technetwork/java/index.html)
* [Java 11](https://adoptium.net/)
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/)
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/) (optional)
After cloning the project, you can build it from source with this command:
After cloning the project, you can build it from source using [maven wrapper](https://github.com/takari/maven-wrapper):
- Linux: `./mvnw clean install`
- Windows: `mvnw.cmd clean install`
#### Nix users
If you're a nix user, you can enter OpenAPI Generator shell, by typing:
```sh
mvn clean install
nix develop
```
It will enter a shell with Java 11 installed.
If you don't have maven installed, you may directly use the included [maven wrapper](https://github.com/takari/maven-wrapper), and build with the command:
Direnv supports automatically loading of the nix developer shell, so if you're using direnv too, type:
```sh
./mvnw clean install
direnv allow
```
and have `java` and `mvn` set up with correct versions each time you enter project directory.
The default build contains minimal static analysis (via CheckStyle). To run your build with PMD and Spotbugs, use the `static-analysis` profile:
```sh
mvn -Pstatic-analysis clean install
```
- Linux: `./mvnw -Pstatic-analysis clean install`
- Windows: `mvnw.cmd -Pstatic-analysis clean install`
### [1.5 - Homebrew](#table-of-contents)
@@ -283,11 +289,13 @@ To reinstall with the latest master, run `brew uninstall openapi-generator && br
To install OpenJDK (pre-requisites), please run
```sh
brew tap AdoptOpenJDK/openjdk
brew install --cask adoptopenjdk12
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home/
brew install --cask adoptopenjdk11
export JAVA_HOME=`/usr/libexec/java_home -v 1.11`
```
To install Maven, please run
or download installer via https://adoptium.net/
To install Maven (optional), please run
```sh
brew install maven
```
@@ -370,19 +378,18 @@ Once built, `run-in-docker.sh` will act as an executable for openapi-generator-c
```sh
./run-in-docker.sh help # Executes 'help' command for openapi-generator-cli
./run-in-docker.sh list # Executes 'list' command for openapi-generator-cli
./run-in-docker.sh /gen/bin/go-petstore.sh # Builds the Go client
./run-in-docker.sh generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g go -o /gen/out/go-petstore -p packageName=petstore # generates go client, outputs locally to ./out/go-petstore
```
##### Troubleshooting
If an error like this occurs, just execute the **mvn clean install -U** command:
If an error like this occurs, just execute the **./mvnw clean install -U** command:
> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project openapi-generator: A type incompatibility occurred while executing org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test: java.lang.ExceptionInInitializerError cannot be cast to java.io.IOException
```sh
./run-in-docker.sh mvn clean install -U
./run-in-docker.sh ./mvnw clean install -U
```
> Failed to execute goal org.fortasoft:gradle-maven-plugin:1.0.8:invoke (default) on project openapi-generator-gradle-plugin-mvn-wrapper: org.gradle.tooling.BuildException: Could not execute build using Gradle distribution 'https://services.gradle.org/distributions/gradle-4.7-bin.zip'
@@ -397,7 +404,7 @@ cd openapi-generator
vagrant up
vagrant ssh
cd /vagrant
./run-in-docker.sh mvn package
./run-in-docker.sh ./mvnw package
```
### [1.7 - NPM](#table-of-contents)
@@ -416,7 +423,7 @@ openapi-generator-cli version
To use a specific version of "openapi-generator-cli"
```sh
openapi-generator-cli version-manager set 6.3.0
openapi-generator-cli version-manager set 7.0.0
```
Or install it as dev-dependency:
@@ -431,7 +438,7 @@ To generate a PHP client for [petstore.yaml](https://raw.githubusercontent.com/o
```sh
git clone https://github.com/openapitools/openapi-generator
cd openapi-generator
mvn clean package
./mvnw clean package
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g php \
@@ -440,7 +447,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
(if you're on Windows, replace the last command with `java -jar modules\openapi-generator-cli\target\openapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g php -o c:\temp\php_api_client`)
<!-- RELEASE_VERSION -->
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/6.3.0/openapi-generator-cli-6.3.0.jar)
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar)
<!-- /RELEASE_VERSION -->
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
@@ -584,12 +591,14 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Adyen](https://www.adyen.com/)
- [Agoda](https://www.agoda.com/)
- [Airthings](https://www.airthings.com/)
- [Aleri Solutions Gmbh](https://www.aleri.de/)
- [Allianz](https://www.allianz.com)
- [Angular.Schule](https://angular.schule/)
- [Aqovia](https://aqovia.com/)
- [Australia and New Zealand Banking Group (ANZ)](http://www.anz.com/)
- [ASKUL](https://www.askul.co.jp)
- [Arduino](https://www.arduino.cc/)
- [ASKUL](https://www.askul.co.jp)
- [Amazon Web Services (AWS)](https://aws.amazon.com/)
- [b<>com](https://b-com.com/en)
- [百度营销](https://e.baidu.com)
- [Bandwidth](https://dev.bandwidth.com)
@@ -613,6 +622,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [DB Systel](https://www.dbsystel.de)
- [Deeporute.ai](https://www.deeproute.ai/)
- [Devsupply](https://www.devsupply.com/)
- [dmTECH GmbH](https://www.dmTECH.de)
- [DocSpring](https://docspring.com/)
- [dwango](https://dwango.co.jp/)
- [Edge Impulse](https://www.edgeimpulse.com/)
@@ -641,6 +651,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Klarna](https://www.klarna.com/)
- [Kronsoft Development](https://www.kronsoft.ro/home/)
- [Kubernetes](https://kubernetes.io)
- [Landeshauptstadt München - it@M](https://muenchen.digital/it-at-m/)
- [Linode](https://www.linode.com/)
- [Logicdrop](https://www.logicdrop.com)
- [Lumeris](https://www.lumeris.com)
@@ -664,6 +675,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Paxos](https://www.paxos.com)
- [Plaid](https://plaid.com)
- [PLAID, Inc.](https://plaid.co.jp/)
- [Pinterest](https://www.pinterest.com)
- [Ponicode](https://ponicode.dev/)
- [Pricefx](https://www.pricefx.com/)
- [PrintNanny](https://www.print-nanny.com/)
@@ -877,6 +889,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2022-04-06 - [Effective Software Development using OpenAPI Generator](https://apexlabs.ai/post/openapi-generator) by Ajil Oommen (Senior Flutter Developer)
- 2022-05-13 - [A Path From an API To Client Libraries](https://www.youtube.com/watch?v=XC8oVn_efTw) by [Filip Srnec](https://www.devoxx.co.uk/talk/?id=11211) at Infobip
- 2022-06-01 - [API First, using OpenAPI and Spring Boot](https://medium.com/xgeeks/api-first-using-openapi-and-spring-boot-2602c04bb0d3) by [Micael Estrázulas Vianna](https://estrazulas.medium.com/)
- 2022-06-12 - [Mustache templates with OpenAPI specs](https://medium.com/geekculture/mustache-templates-with-openapi-specs-f24711c67dec) by [Beppe Catanese](https://github.com/gcatanese)
- 2022-07-01 - [Generate API contract using OpenAPI Generator Maven plugin](https://huongdanjava.com/generate-api-contract-using-openapi-generator-maven-plugin.html) by [Khanh Nguyen](https://huongdanjava.com/)
- 2022-07-22 - [使用OpenAPI Generator Maven plugin开发api优先的java客户端和服务端代码](https://blog.roccoshi.top/2022/java/openapi-generator%E7%9A%84%E4%BD%BF%E7%94%A8/) by [Lincest](https://github.com/Lincest)
- 2022-08-01 - [Tutorial: Etsy Open API v3 (ruby)](https://blog.tjoyal.dev/etsy-open-api-v3/) by [Thierry Joyal](https://github.com/tjoyal)
@@ -888,6 +901,16 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2022-12-13 - [API-First with Spring WebFlux and OpenAPI Generator](https://boottechnologies-ci.medium.com/api-first-with-spring-webflux-and-openapi-generator-38b7804c4ed4) by [Eric Anicet](https://boottechnologies-ci.medium.com/)
- 2023-01-06 - [Major Improvements with Helidon and OpenAPI](https://medium.com/helidon/major-improvements-with-helidon-and-openapi-f76a0951508e) by [Tim Quinn](https://medium.com/@tquinno600)
- 2023-02-02 - [Replacing Postman with the Jetbrains HTTP Client](https://lengrand.fr/replacing-postman-in-seconds-with-the-jetbrains-http-client/) by [julien Lengrand-Lambert](https://github.com/jlengrand)
- 2023-03-15 - [OpenAPI Generatorに適したOpenAPIの書き方](https://techblog.zozo.com/entry/how-to-write-openapi-for-openapi-generator) by [ZOZO Tech Blog](https://techblog.zozo.com/)
- 2023-03-19 - [EXOGEM: Extending OpenAPI Generator for Monitoring of RESTful APIs](https://link.springer.com/chapter/10.1007/978-3-031-26507-5_10) by Daniel Friis Holtebo, Jannik Lucas Sommer, Magnus Mølgaard Lund, Alessandro Tibo, Junior Dongo & Michele Albano at "ICSOC 2022: Service-Oriented Computing ICSOC 2022 Workshops"
- 2023-03-28 - [API-First Design with OpenAPI Generator](https://www.linkedin.com/pulse/api-first-design-openapi-generator-jonathan-manera/) by [Jonathan Manera](https://www.linkedin.com/in/manerajona/)
- 2023-03-28 - [ハンズオンで学ぶサーバーサイド KotlinSpring Boot&Arrow&OpenAPI Generatorv1.0.1](https://zenn.dev/msksgm/books/implementing-server-side-kotlin-development) by [msk](https://zenn.dev/msksgm)
- 2023-04-01 - [OpenAPI Client Code Generation](https://testingboss.com/blog/openapi-client-generation/) by Kwo Ding
- 2023-04-27 - [Create an Angular Client using OpenAPI Specifications](Create an Angular Client using OpenAPI Specifications) by [Patric](https://pguso.medium.com/)
- 2023-05-16 - [Adyen for Java developers](https://www.adyen.com/blog/adyen-java-library) by [Beppe Catanese, Developer Advocate, Adyen](https://github.com/gcatanese)
- 2023-05-18 - [如何基于 Swagger 使用 OpenAPI Generator 生成 JMeter 脚本?](https://blog.51cto.com/u_15181572/6294974) by [高楼Zee)](https://blog.51cto.com/u_15181572)
- 2023-06-28 - [Generate API contract using OpenAPI Generator Maven plugin](https://huongdanjava.com/generate-api-contract-using-openapi-generator-maven-plugin.html) by [Khanh Nguyen](https://huongdanjava.com/)
- 2023-06-30 - [Generate Client SDKs with OpenApi Generator in Springboot](https://medium.com/@ramavathvinayak/generate-client-sdks-with-openapi-generator-in-springboot-f9f012e73c0b) by [Vinayak Ramavath](https://medium.com/@ramavathvinayak)
## [6 - About Us](#table-of-contents)
@@ -969,7 +992,9 @@ Here is a list of template creators:
* Kotlin: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Kotlin (MultiPlatform): @andrewemery
* Kotlin (Volley): @alisters
* Kotlin (jvm-spring-webclient): @stefankoppier
* Lua: @daurnimator
* N4JS: @mmews-n4
* Nim: @hokamoto
* OCaml: @cgensoul
* Perl: @wing328 [:heart:](https://www.patreon.com/wing328)
@@ -986,10 +1011,12 @@ Here is a list of template creators:
* Scala (scalaz & http4s): @tbrown1979
* Scala (Akka): @cchafer
* Scala (sttp): @chameleon82
* Scala (sttp4): @flsh86
* Swift: @tkqubo
* Swift 3: @hexelon
* Swift 4: @ehyche
* Swift 5: @4brunu
* Swift Combine: @dydus0x14
* TypeScript (Angular1): @mhardorf
* TypeScript (Angular2): @roni-frantchi
* TypeScript (Angular6): @akehir
@@ -1002,6 +1029,8 @@ Here is a list of template creators:
* TypeScript (Node): @mhardorf
* TypeScript (Rxjs): @denyo
* TypeScript (redux-query): @petejohansonxo
* Xojo: @Topheee
* Zapier: @valmoz, @emajo
* Server Stubs
* Ada: @stcarrez
* C# ASP.NET 5: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
@@ -1015,6 +1044,7 @@ Here is a list of template creators:
* Erlang Server: @galaxie
* F# (Giraffe) Server: @nmfisher
* Go Server: @guohuang
* Go Server (refactored in 7.0.0): @lwj5
* Go (Echo) Server: @ph4r5h4d
* Go (Gin) Server: @kemokemo
* GraphQL Express Server: @renepardon
@@ -1110,7 +1140,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| Bash | @frol (2017/07) @bkryza (2017/08) @kenjones-cisco (2017/09) |
| C | @zhemant (2018/11) @ityuhui (2019/12) @michelealbano (2020/03) |
| C++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) @muttleyxd (2019/08) |
| C# | @mandrean (2017/08) @frankyjuang (2019/09) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) |
| C# | @mandrean (2017/08) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) @iBicha (2023/07) |
| Clojure | |
| Crystal | @cyangle (2021/01) |
| Dart | @jaumard (2018/09) @josh-burton (2019/12) @amondnet (2019/12) @sbu-WBT (2020/12) @kuhnroyal (2020/12) @agilob (2020/12) @ahmednfwela (2021/08) |
@@ -1119,17 +1149,18 @@ If you want to join the committee, please kindly apply by sending an email to te
| Elm | @eriktim (2018/09) |
| Erlang | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) |
| F# | @nmfisher (2019/05) |
| Go | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/04) |
| Go | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/04) @lwj5 (2023/04) |
| GraphQL | @renepardon (2018/12) |
| Groovy | |
| Haskell | |
| Java | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) |
| Java Spring | @cachescrubber (2022/02) @welshm (2022/02) @MelleD (2022/02) @atextor (2022/02) @manedev79 (2022/02) @javisst (2022/02) @borsch (2022/02) @banlevente (2022/02) @Zomzog (2022/09) |
| Java | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) @martin-mfg (2023/08) |
| Java Spring | @cachescrubber (2022/02) @welshm (2022/02) @MelleD (2022/02) @atextor (2022/02) @manedev79 (2022/02) @javisst (2022/02) @borsch (2022/02) @banlevente (2022/02) @Zomzog (2022/09) @martin-mfg (2023/08) |
| JMeter | @kannkyo (2021/01) |
| Jetbrains HTTP Client | @jlengrand (2023/01) |
| Julia | @tanmaykm (2023/01) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) @stefankoppier (2022/06) |
| Lua | @daurnimator (2017/08) |
| N4JS | @mmews-n4 (2023/03) |
| Nim | |
| NodeJS/Javascript | @CodeNinjai (2017/07) @frol (2017/07) @cliffano (2017/07) |
| ObjC | |
@@ -1141,9 +1172,10 @@ If you want to join the committee, please kindly apply by sending an email to te
| R | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
| Ruby | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
| Rust | @frol (2017/07) @farcaller (2017/08) @richardwhiuk (2019/07) @paladinzh (2020/05) @jacob-pro (2022/10) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) @fish86 (2023/06) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) @dydus0x14 (2023/06) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) @davidgamero (2022/03) @mkusaka (2022/04) |
| Xojo | @Topheee (2023/04) |
Past Members of Technical Committee:
@@ -1229,3 +1261,4 @@ See the License for the specific language governing permissions and
limitations under the License.
---

View File

@@ -3,99 +3,63 @@ image: Visual Studio 2022
hosts:
petstore.swagger.io: 127.0.0.1
install:
- ps: |
Add-Type -AssemblyName System.IO.Compression.FileSystem
if (!(Test-Path -Path "C:\maven" )) {
(new-object System.Net.WebClient).DownloadFile(
'https://archive.apache.org/dist/maven/maven-3/3.8.3/binaries/apache-maven-3.8.3-bin.zip',
'C:\maven-bin.zip'
)
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:\maven-bin.zip", "C:\maven")
}
# install gradle
- ps: |
Add-Type -AssemblyName System.IO.Compression.FileSystem
if (!(Test-Path -Path "C:\gradle\gradle-7.6" )) {
(new-object System.Net.WebClient).DownloadFile(
'https://services.gradle.org/distributions/gradle-7.6-bin.zip',
'C:\gradle-bin.zip'
)
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:\gradle-bin.zip", "C:\gradle")
}
- cmd: SET PATH=C:\maven\apache-maven-3.8.3\bin;C:\gradle\gradle-7.6\bin;%JAVA_HOME%\bin;%PATH%
- cmd: SET MAVEN_OPTS=-Xmx4g
- cmd: SET JAVA_OPTS=-Xmx4g
- cmd: SET M2_HOME=C:\maven\apache-maven-3.8.3
- cmd: java -version
- cmd: gradle -v
- cmd: dir/w
- git clone https://github.com/wing328/swagger-samples --depth 1
- ps: Start-Process -FilePath 'C:\maven\apache-maven-3.8.3\bin\mvn' -ArgumentList 'jetty:run' -WorkingDirectory "$env:appveyor_build_folder\swagger-samples\java\java-jersey-jaxrs-ci"
- ps: Start-Sleep -s 15
- cmd: docker pull swaggerapi/petstore
- cmd: docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- ps: Start-Sleep -s 120
- ps: $PSVersionTable.PSVersion
- ps: Install-Module -Name Pester -Force -Scope CurrentUser
build_script:
- dotnet --info
# build C# aspnetcore 5.0 server
- dotnet build samples\server\petstore\aspnetcore-5.0\Org.OpenAPITools.sln
# build C# aspnetcore 3.1 server
- dotnet build samples\server\petstore\aspnetcore-3.1\Org.OpenAPITools.sln
# build C# aspnetcore 3.0 server
- dotnet build samples\server\petstore\aspnetcore-3.0\Org.OpenAPITools.sln
# build C# aspnetcore 2.2 server
- dotnet build samples\server\petstore\aspnetcore\Org.OpenAPITools.sln
# build C# API client (multiple frameworks)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClientCoreAndNet47\Org.OpenAPITools.sln
# build C# API client (httpclient)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-httpclient\Org.OpenAPITools.sln
# build C# API client (generichost)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-generichost-netstandard2.0\Org.OpenAPITools.sln
# build C# API client (netcore)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient\Org.OpenAPITools.sln
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClientCore\Org.OpenAPITools.sln
# build C# API client (.net framework 4.7)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-net47\Org.OpenAPITools.sln
# build C# API client (.net framework 4.8)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-net48\Org.OpenAPITools.sln
# build C# API client (.net 5.0)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-net5.0\Org.OpenAPITools.sln
# build C# API client (.net 5.0 with ConditionalSerialization)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-ConditionalSerialization\Org.OpenAPITools.sln
## build C# API client
#- nuget restore samples\client\petstore\csharp\OpenAPIClient\Org.OpenAPITools.sln
#- msbuild samples\client\petstore\csharp\OpenAPIClient\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
## build C# API client (with PropertyChanged)
#- nuget restore samples\client\petstore\csharp\OpenAPIClientWithPropertyChanged\Org.OpenAPITools.sln
#- msbuild samples\client\petstore\csharp\OpenAPIClientWithPropertyChanged\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
# build C# .net standard 1.3+ API client
#- nuget restore samples\client\petstore\csharp\OpenAPIClientNetStandard\Org.OpenAPITools.sln
#- msbuild samples\client\petstore\csharp\OpenAPIClientNetStandard\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
# install openapi-generator locally
- mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# run the locally installed openapi-generator-gradle-plugin
- gradle -b modules\openapi-generator-gradle-plugin\samples\local-spec\build.gradle buildGoSdk --stacktrace
#- dotnet build samples\server\petstore\aspnetcore-5.0\Org.OpenAPITools.sln
## build C# aspnetcore 3.1 server
#- dotnet build samples\server\petstore\aspnetcore-3.1\Org.OpenAPITools.sln
## build C# aspnetcore 3.0 server
#- dotnet build samples\server\petstore\aspnetcore-3.0\Org.OpenAPITools.sln
## build C# aspnetcore 2.2 server
#- dotnet build samples\server\petstore\aspnetcore\Org.OpenAPITools.sln
## build C# API client (multiple frameworks)
#- dotnet build samples\client\petstore\csharp\OpenAPIClientCoreAndNet47\Org.OpenAPITools.sln
## build C# API client (httpclient)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-httpclient\Org.OpenAPITools.sln
## build C# API client (generichost)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-generichost-netstandard2.0\Org.OpenAPITools.sln
## build C# API client (netcore)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient\Org.OpenAPITools.sln
#- dotnet build samples\client\petstore\csharp\OpenAPIClientCore\Org.OpenAPITools.sln
## build C# API client (.net framework 4.7)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-net47\Org.OpenAPITools.sln
## build C# API client (.net framework 4.8)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-net48\Org.OpenAPITools.sln
## build C# API client (.net 5.0)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-net5.0\Org.OpenAPITools.sln
## build C# API client (.net 5.0 with ConditionalSerialization)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-ConditionalSerialization\Org.OpenAPITools.sln
test_script:
# test c# API client (multiple frameworks)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClientCoreAndNet47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClientCoreAndNet47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (httpclient)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-httpclient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClient-httpclient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (generichost)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-generichost-netstandard2.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClient-generichost-netstandard2.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (netcore)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClientCore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClientCore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
#- dotnet test samples\client\petstore\csharp\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net framework 4.7)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-net47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net framework 4.8)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-net48\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net48\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net 5.0)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-net5.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net5.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API Client using conditional-serialization
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-ConditionalSerialization\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
## test c# API client
#- nunit3-console samples\client\petstore\csharp\OpenAPIClient\src\Org.OpenAPITools.Test\bin\Debug\Org.OpenAPITools.Test.dll --result=myresults.xml;format=AppVeyor
## test c# API client (with PropertyChanged)
#- nunit3-console samples\client\petstore\csharp\OpenAPIClientWithPropertyChanged\src\Org.OpenAPITools.Test\bin\Debug\Org.OpenAPITools.Test.dll --result=myresults.xml;format=AppVeyor
- dotnet test samples\client\petstore\csharp\OpenAPIClient-ConditionalSerialization\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
### TODO: Execute all generators via powershell or other
# generate all petstore clients

15
bin/configs/ada.yaml Normal file
View File

@@ -0,0 +1,15 @@
generatorName: ada
outputDir: samples/client/petstore/ada
inputSpec: modules/openapi-generator/src/test/resources/3_0/ada/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/Ada
nameMappings:
_type: P_UnderscoreType
type_: P_TypeWithUnderscore
http_debug_operation: P_HTTPDebugOperation
parameterNameMappings:
_type: UnderscoreType
type_: TypeWithUnderscore
http_debug_operation: HttpDebugOperation
additionalProperties:
modelPackage: Samples.Petstore
projectName: Petstore

View File

@@ -0,0 +1,9 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
inputSpec: modules/openapi-generator/src/test/resources/3_0/aspnetcore/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnetcore/3.0
additionalProperties:
packageGuid: '{3C799344-F285-4669-8FD5-7ED9B795D5C5}'
aspnetCoreVersion: "6.0"
userSecretsGuid: 'cb87e868-8646-48ef-9bb6-344b537d0d37'
useNewtonsoft: false

View File

@@ -0,0 +1,9 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
inputSpec: modules/openapi-generator/src/test/resources/3_0/aspnetcore/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnetcore/3.0
additionalProperties:
packageGuid: '{3C799344-F285-4669-8FD5-7ED9B795D5C5}'
aspnetCoreVersion: "6.0"
userSecretsGuid: 'cb87e868-8646-48ef-9bb6-344b537d0d37'
nullableReferenceTypes: true

View File

@@ -0,0 +1,11 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-6.0-useSwashBuckle
inputSpec: modules/openapi-generator/src/test/resources/3_0/aspnetcore/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnetcore/3.0
additionalProperties:
packageGuid: '{3C799344-F285-4669-8FD5-7ED9B795D5C5}'
aspnetCoreVersion: "6.0"
userSecretsGuid: 'cb87e868-8646-48ef-9bb6-344b537d0d37'
useSwashBuckle: false
buildTarget: library
isLibrary: true

View File

@@ -2,3 +2,6 @@ generatorName: c
outputDir: samples/client/petstore/c
inputSpec: modules/openapi-generator/src/test/resources/2_0/c/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/C-libcurl
modelNameMappings:
another_model: MappedModel
another_property: mappedProperty

View File

@@ -7,3 +7,12 @@ additionalProperties:
moduleName: Petstore
shardName: petstore
strictSpecBehavior: false
modelNameMappings:
PropertyNameMapping: AnotherPropertyNameMapping
nameMappings:
_type: underscore_type
type_: type_with_underscore
type-: type_with_dash
parameterNameMappings:
_type: underscore_type
type_: type_with_underscore

View File

@@ -1,6 +0,0 @@
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'

View File

@@ -0,0 +1,7 @@
generatorName: csharp-functions
outputDir: samples/client/petstore/csharp-functions
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-functions
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
userSecretsGuid: "76e9e993-9159-441c-9c5b-fe95e7f4f020"

View File

@@ -0,0 +1,11 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-allOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/allOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

@@ -0,0 +1,11 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-anyOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/anyOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

@@ -0,0 +1,11 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0-nrt
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

@@ -0,0 +1,11 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-oneOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/oneOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

@@ -0,0 +1,11 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: false

View File

@@ -0,0 +1,11 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: netstandard2.0

View File

@@ -0,0 +1,12 @@
# for .net standard httpclient
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-httpclient
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
library: httpclient
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0

View File

@@ -1,12 +0,0 @@
# for csharp-netcore generichost
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-allOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/allOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: net7.0
nullableReferenceTypes: true

View File

@@ -1,12 +0,0 @@
# for csharp-netcore generichost
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-anyOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/anyOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: net7.0
nullableReferenceTypes: true

View File

@@ -1,12 +0,0 @@
# for csharp-netcore generichost
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-oneOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/oneOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: net7.0
nullableReferenceTypes: true

View File

@@ -1,12 +0,0 @@
# for csharp-netcore generichost
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-net6.0-nrt
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: net7.0
nullableReferenceTypes: true

View File

@@ -1,12 +0,0 @@
# for csharp-netcore generichost
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-net6.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: net7.0
nullableReferenceTypes: false

View File

@@ -1,11 +0,0 @@
# for csharp-netcore generichost
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netstandard2.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: netstandard2.0

View File

@@ -1,12 +0,0 @@
# for .net standard httpclient
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-httpclient
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
library: httpclient
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0

View File

@@ -1,11 +0,0 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-net47
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net47

View File

@@ -1,11 +0,0 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-net48
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net48

View File

@@ -1,11 +0,0 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-net5.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net7.0

View File

@@ -1,10 +0,0 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true

View File

@@ -1,8 +0,0 @@
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClientCore
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netcoreapp3.1
useCompareNetObjects: "true"

View File

@@ -1,8 +0,0 @@
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClientCoreAndNet47
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.1;net47
useCompareNetObjects: "true"

View File

@@ -1,12 +0,0 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-ConditionalSerialization
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{fa96c953-af24-457d-8a01-f2fd2a7547a9}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0
conditionalSerialization: true

View File

@@ -1,10 +0,0 @@
generatorName: csharp-netcore
outputDir: samples/client/others/csharp-netcore-complex-files
inputSpec: modules/openapi-generator/src/test/resources/3_0/form-multipart-binary-array.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.0
useCompareNetObjects: "true"
globalProperties:
skipFormModel: "false"

View File

@@ -1,7 +0,0 @@
generatorName: csharp-netcore-functions
outputDir: samples/client/petstore/csharp-netcore-functions
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore-functions
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
userSecretsGuid: "76e9e993-9159-441c-9c5b-fe95e7f4f020"

View File

@@ -0,0 +1,9 @@
generatorName: csharp
outputDir: samples/client/echo_api/csharp-restsharp
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{322C8CAF-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: net6.0
setCompareNetObjects: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,8 @@
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClientCoreAndNet47
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.1;net47
useCompareNetObjects: "true"

View File

@@ -0,0 +1,12 @@
# for .net standard
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-net47
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net47
skipOneOfAnyOfGetter: true

View File

@@ -0,0 +1,11 @@
# for .net standard
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-net48
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net48

View File

@@ -0,0 +1,18 @@
generatorName: csharp
outputDir: samples/client/petstore/csharp-restsharp-name-parameter-mappings
inputSpec: modules/openapi-generator/src/test/resources/3_0/name-parameter-mappings.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
nameMappings:
_type: UnderscoreType
type_: TypeWithUnderscore
http_debug_operation: HttpDebugOperation
parameterNameMappings:
_type: UnderscoreType
type_: TypeWithUnderscore
http_debug_operation: HttpDebugOperation
modelNameMappings:
Environment: Env
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
hideGenerationTimestamp: "true"
targetFramework: net6.0

View File

@@ -0,0 +1,8 @@
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClientCore
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: net7.0
useCompareNetObjects: "true"

View File

@@ -0,0 +1,11 @@
# for .net standard
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-net5.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: net7.0

View File

@@ -0,0 +1,10 @@
generatorName: csharp
outputDir: samples/client/others/csharp-complex-files
inputSpec: modules/openapi-generator/src/test/resources/3_0/form-multipart-binary-array.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.0
useCompareNetObjects: "true"
globalProperties:
skipFormModel: "false"

View File

@@ -0,0 +1,12 @@
# for .net standard
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{fa96c953-af24-457d-8a01-f2fd2a7547a9}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0
conditionalSerialization: true

View File

@@ -0,0 +1,11 @@
# for .net standard
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0

View File

@@ -0,0 +1,8 @@
# for .net Unity
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-unityWebRequest
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
library: unityWebRequest
additionalProperties:
targetFramework: netstandard2.0

View File

@@ -4,3 +4,10 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-e
templateDir: modules/openapi-generator/src/main/resources/elixir
additionalProperties:
invokerPackage: OpenapiPetstore
modelNameMappings:
DeprecatedObject: DeprecatedModel
# the following options have no effect on elixir client gen which uses baseName
nameMappings:
deprecatedRef: deprecatedReference
parameterNameMapping:
ioutils: ioutils_parameter

View File

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

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