Compare commits

...

1492 Commits

Author SHA1 Message Date
William Cheng
bb124e1178 Prepare v5.3.0 release (#10680)
* prepare 5.3.0 release

* remove docker-tag-latest-release
2021-10-24 22:22:29 +08:00
William Cheng
602cffbb13 [java][okhttp] Add CI tests for streaming (#10678)
* add ci tests for streaming

* use spaces instead of tabs

* update samples
2021-10-24 18:59:15 +08:00
William Cheng
fcef9fab63 update doc for java useAbstractionForFiles option (#10677) 2021-10-24 16:21:28 +08:00
William Cheng
8069d183f3 [Java] Add streaming endpoint support (#9813)
* add streaming endpoint support to java client

* update doc
2021-10-24 16:02:49 +08:00
WILLIAM CHENG
1cd591bf7d update doc 2021-10-24 12:28:46 +08:00
Troy P
91d0e2dad0 (fix #9673) This change introduces a flag to have tests generated under the pythonSrcRoot directory if it's specified. (#9674)
This change also introduces AssertJ as a new dependency.
2021-10-24 12:22:18 +08:00
William Cheng
2413783288 update build.gradle to work with gradle 7.x, add test (#10669) 2021-10-24 12:19:52 +08:00
William Cheng
ec2ed98269 better comment/docstrings in jersey2 apiclient (#10668) 2021-10-24 12:19:20 +08:00
William Cheng
bb37a71d06 update dependencies in build.sbt to newer versions (#10667) 2021-10-23 16:17:46 +08:00
Maciej Sitarz
2875c7e14d Improve Apache Httpclient support (#10624)
* Move apache-httpclient templates to proper dir

* Add template for Gradle

* Fix few JavaDoc compile warnings

* Add properly generated samples

* Empty just trigger PR checks rebuild
2021-10-23 14:57:32 +08:00
cyangle
27459b5003 [crystal] Fix some issues in crystal client templates (#10629)
* Fix some issues in crystal client templates using google drive v3 oas3 api spec

* update crystal petstore sample code

* Address PR comments

Raises on unsupported feature
clean up extra new lines in partial_model_enum_class.mustache

* Use size instead of length

length is undefined for String or Array

* Fix typo

* Use default value instead of nil

* remove unused template file

* Use ::File instead of File as file type to avoid conflicts

The spec could also have a File model

* support file upload in multipart/form-data post body

* Revert breaking changes in api template

* Use double quotes to quote string values

single quotes are used for single char in crystal

* Update api_client to use global ::File and update petstore samples

* JSON Annotation Field key's value should be double quoted

* Handle nil values for form_params

* Remove default values from method definitions due to grammar error

* Fix integration tests
2021-10-23 11:34:08 +08:00
William Cheng
885a813f86 update java jersey2 dependencies (#10659) 2021-10-23 10:13:39 +08:00
Tomasz Prus
b1950dd488 [Python] Remove virtualenv deprecated option from test scripts. (#10666)
* [Python] Remove virtualenv deprecated option from test scripts.

* [Python/asyncio] create venv with Python 3.x
2021-10-22 17:32:44 -07:00
Jordan M. Adler
e7dace6099 [typescript] Add headers to ApiException (#10153) 2021-10-22 08:50:03 +02:00
William Cheng
37006f8a03 add snak case lambda (#10658) 2021-10-22 10:49:38 +08:00
William Cheng
fa5401be37 remove invalid arg in newer version of jvm (#10652) 2021-10-22 09:16:12 +08:00
Bilal Shaikh
4c8279e3f2 fix(NestJS): use correct typing for default headers (#10616)
* fix(NestJS):  use correct typing for default headers

closes #10615

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

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

* update

Co-authored-by: Alexey Makhrov <amakhrov@gmail.com>
2021-10-21 07:57:31 +02:00
Arturo
108e8e513a add try-with-resources statement to unclosed streams (#10641) 2021-10-21 11:08:27 +08:00
William Cheng
0a003c39b2 [TS] fix CI failure by installing node v16 (#10649)
* install node v16 instead of latest stable

* fix install

* fix install

* fix typo
2021-10-21 01:06:23 +08:00
AlexMog
c16562995b fix: missing typescript local variable name 'from' (#10587)
Co-authored-by: Alexandre Moghrabi <alexandre.moghrabi@circular.xyz>
2021-10-19 21:45:08 +02:00
Vesa Poikajärvi
124511e7be [typescript-axios] Update to Axios 0.23.0 (#10626)
* [typescript-axios] Update Axios to 0.23.0

BREAKING CHANGE: Axios 0.23.0 has a breaking TypeScript defintion change
which is incompatible with older versions of Axios.

* [typescript-axios] Update samples

* [typescript-axios] Use default binding for config to support older versions

With 2 generics arguments and leaving the AxiosRequestConfig arguments to it's
default the generated code can work both with 0.23.0 and older versions
2021-10-19 07:55:39 +02:00
Hugo Alves
ff286aa06f [Java][Feign] Add http status to feign result (#10583)
* Add .circleci/config.yml

* Add Http status to the feign response wrapper

* Add Http status to the feign response wrapper

* Add Http status to the feign response wrapper

Fix typo

* Add Http status to the feign response wrapper

Fix typo

* Rename HttpResponse to ApiResponse
2021-10-19 00:04:32 +08:00
Yuriy Belenko
357f186c4e [php-slim4] Migrate PHPUnit config (#10230)
* Migrate PHPUnit9 config file template

* Refresh samples
2021-10-17 18:19:43 +08:00
Yuriy Belenko
9f92322b90 [php-slim4] Bump required PHP version to 7.3 (#10228)
* Change minimum PHP version to 7.3

* Refresh samples

* Remove PHP8 notice from readme

Signed-off-by: Yuriy Belenko <yura-bely@mail.ru>
2021-10-17 18:19:14 +08:00
William Cheng
1bffeef146 Add links to Youtube videos on openapi-generator (#10612) 2021-10-17 18:13:01 +08:00
Richard Willis
a7ace4fb56 Add link to TypeScript/Fetch article (#10611) 2021-10-17 15:15:33 +08:00
Eric Durand-Tremblay
11bfc66782 Issue #10591 kotlin enum defaultValue (#10592)
* Issue #10591 kotlin enum defaultValue

* Updated sample

* Register sample

Co-authored-by: Eric Durand-Tremblay <etremblay@kronostechnologies.com>
2021-10-16 13:47:31 +08:00
Benjamin Heiss
69452360ab Issue-7869: Update to Guzzle 7, removed all deprecated Guzzle\Psr7 function calls by their static counterparts and updated FakeHttpClient interface to Guzzle7 client (#10585)
Co-authored-by: Benjamin <Benjamin.Heiss@tngtech.com>
2021-10-16 13:24:11 +08:00
Jeef
fc7c6d8edb Changing from scriptName to x-codegen-script-name will render dockerfile correctly because scriptName isn't being set (#10594) 2021-10-16 13:01:40 +08:00
William Cheng
ee9687f38c update dependencies (#10599) 2021-10-14 18:06:07 +08:00
dependabot[bot]
6922c71080 Bump url-parse from 1.4.4 to 1.5.3 in /website (#10537)
Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.4.4 to 1.5.3.
- [Release notes](https://github.com/unshiftio/url-parse/releases)
- [Commits](https://github.com/unshiftio/url-parse/compare/1.4.4...1.5.3)

---
updated-dependencies:
- dependency-name: url-parse
  dependency-type: indirect
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-14 15:01:46 +08:00
dependabot[bot]
d470fd45e4 Bump path-parse from 1.0.6 to 1.0.7 in /website (#10128)
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-14 15:01:36 +08:00
dependabot[bot]
a2cbd26875 Bump postcss from 7.0.7 to 7.0.36 in /website (#9779)
Bumps [postcss](https://github.com/postcss/postcss) from 7.0.7 to 7.0.36.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/7.0.7...7.0.36)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-14 15:01:28 +08:00
dependabot[bot]
a6163a8b8c Bump lodash from 4.17.15 to 4.17.21 in /website (#9435)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.21)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-14 15:01:16 +08:00
yongmingl
b0e2ab67a6 Add hasQueryParamsOrAuth to reflect apiKey in query (#10582)
Compilation fails in generated typescript-angular client when an
`apiKey` is passed in query due to an uninitialised variable.

This change adds `getHasQueryParamsOrAuth()` to reflect if there's at
least one query parameter or passing API keys in query in the
`hasQueryParamsOrAuth` template variable.
2021-10-14 14:16:22 +08:00
William Cheng
2bd2c23115 Revert "[JAVA][jersey2] import the auto generated supporting JSON class only when discriminator is needed (#10557)" (#10597)
This reverts commit 52713b21d4.
2021-10-14 11:41:19 +08:00
Fabio Bombardi
ae86ff7aaf Kotlin multiplatform updated to fit future Kotlin 1.6.0 release (#10468)
* Update Kotlin Version to 1.6.0-M1
Update Multiplatform Plugin to 1.6.0-M1
Update Gragle to 7.2
Update AGP to 7.0.2

Update samples accordingle

Resolve: https://github.com/OpenAPITools/openapi-generator/issues/10467

* Removes local.properties from kotlin-multiplatform petstore client, that was accidentally added

* Use the latest kotlin stable version 1.5.31

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-10-13 15:56:28 +08:00
Peter Leibiger
34f475f7f7 [dart][dio] Respect import-mappings parameter (#10528)
* first check import mappings before defaulting to model import
* respect primitive types when generating serializes, these can still be models if passed via generator args
2021-10-13 15:55:45 +08:00
Sergii Baitala
71afbf5909 [cpprestsdk] fix string conversion, add integer enum support (#10531)
* [cpprestsdk] fix string conversion

* Support number enums
2021-10-13 15:49:19 +08:00
Dennis Melzer
12d80bfbb5 Fix import for new spring boot version (#9144)
* Fix import for new spring boot version

#8561

* Add new versions

* Fix samples

* Remove unused dependencies

* Revert "Remove unused dependencies"

This reverts commit bdac08b80a.

* Add version

* Fix version

* Add hystrix note this depcreated

* Migrate to Junit5

* Trigger build

* Add junit5

* Upgrade to new hystrix starter

* Try to enable hystrix

* Remove hystrix and upgrade to boot 2.5.5

* Remove hystrix

* Revert yaml

* Remove hysterix

* Trigger build

* Update docu

* use 4-space instead of tabs

* remove HystrixCommand

* add back spring-cloud test with oas 3.0 spec

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-10-13 15:29:14 +08:00
agilob
45336be847 Improve version management, update dependencies, remove unused dependencies (#10544)
* Move verion properties to main pom.xml

* Sort properties and remove duplicates

* Use properties for known versions

* Deduplicate versions of maven plugins

* Deduplicate wagon dependencies

* Deduplicate maven targer and source properties

* Explicitly set testng version

* Remove property used once

* Sort lines

* Standardise name of maven version properties

* Upgrade maven-surefire-plugin

* Comment out jackson-datatype-jsr310

* Comment out com.fasterxml.jackson.core:jackson-core:jar:2.10.2:compile

* Remove commented out dependencies

* Rename maven param name

* Remove org.hamcrest:java-hamcrest:jar:2.0.0.0:test

* Bump jacoco

* Upgrade guava, replace deprecated or removed api with vanilla java

* Bump jmustache.version

* Bump jackson.version

* Bump jackson.version and mockito

* Bump testng

* Bump wagon-ssh-external.version

* Downgrade jmustache

* Bump spring boot version and add junit

* Bump maven in wrapper

* Bump apache libs

* Bump dependencies

* Revert checkstyle bump
2021-10-13 14:46:01 +08:00
shayan-eftekhari
843e572a10 [cpp-rest-sdk-client] Serialize boolean parameters as true/false instead of 1/0 (#10554)
* BUG FIX: A missing semicolon in cpp-pistache-server generated code.

* BUG FIX: Provide default values of schema in cpp-pistache-server generated code.

* BUG FIX: Provide default values of schema in cpp-pistache-server generated code.

* Fix a bug in cpprest-sdk generator (Issue #8450)

* Fix a bug in cpprest-sdk generator (Issue #8450)

* Fix a bug in cpprest-sdk generator (Issue #8450)

* Revert "Fix a bug in cpprest-sdk generator (Issue #8450)"

This reverts commit 7d8f842860.

* Fix a bug in cpprest-sdk generator (Issue #8450)

* A new overloaded version of parameterToString method is added to the ApiClient class (mustache file) of cpp-rest-sdk-client generator. This new overload accepts bool value and is added to serialize bool values as boolapha instead of integer representation.

* A new overloaded version of parameterToString method is added to the ApiClient class (mustache file) of cpp-rest-sdk-client generator. This new overload accepts bool value and is added to serialize bool values as boolapha instead of integer representation.
2021-10-13 14:16:57 +08:00
Sean Kelly
5defb9a353 [cpp][qt] Start cleanup of cpp qt readme (#10549)
* Update Qt cpp readme

* update sample

* Update indentation and codeblocks

* More cleanup of duplicate/dead content
2021-10-13 14:10:06 +08:00
jens1205
3d0d1d5ed8 rust: replace @ with at_ to allow properties like @type and type at the (#10521)
same time

Co-authored-by: Jens Gersdorf <jens.gersdorf@telekom.de>
2021-10-13 14:01:01 +08:00
Lukas Woodtli
0023f3b7ce Improve templates for C++ Restbed (#10543)
* Improve templates for C++ Restbed

The templates now generate classes which have virtual functions that can
be overridden to implement handlers.

* Fix missing HTTP methods in generated restbed C++ code

There was a wrong handling of "x-codegen-other-methods".

Change-Id: If6526d2672434beb5ebb0871d84cb80d84c34c38
2021-10-13 13:57:40 +08:00
Nick Ufer
80c3a0e4c3 [php] fix 'mixed' invalid for settype() (#10576)
Signed-off-by: Nick Ufer <nick@ufer.dev>
2021-10-12 16:28:59 +08:00
Ghufran Zahidi
b4206ad249 [csharp-netcore]For conditionalSerialization do not initialize the default value. (#10551)
* added allowDefaultValue flag for conditionSerialization

* update doc

* club the allowDefaultValue flag with ConditionSerialzation.

* fixed the tabs space.

* fixed the tabs space.

* fixed the tabs space.

* update samples, docs

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-10-12 16:14:14 +08:00
Dai Wentao
6e14fc411f fix RestTemplate not handling ApiKey in cookie (#10578)
fix Java RestTemplate ApiClient not handling ApiKey in cookie.
2021-10-12 16:09:02 +08:00
agilob
77b72bd0ee Dart json_serializable: remove experimental generator (#10532) 2021-10-12 16:07:23 +08:00
beytun
52713b21d4 [JAVA][jersey2] import the auto generated supporting JSON class only when discriminator is needed (#10557)
* Import the auto generated supporting JSON class only when discriminator is needed

* Generate samples again
2021-10-12 16:05:38 +08:00
RomainPruvostMHH
48f3af19dd Fix compilation issues in the CSharpOperationTest class (#10574)
Co-authored-by: rpruvost <rpruvost@ITEM-S78402.emea.msad.sopra>
2021-10-11 21:10:55 +08:00
William Cheng
4b62b55877 use implementation, add min version of maven, gradle (#10571) 2021-10-11 21:10:04 +08:00
Dmitry Olyenyov
efa032abdb Fixes #10568 (#10569)
Do'not output &str for isString if it is also isUuid
2021-10-09 18:33:43 +08:00
William Cheng
c51f2eb8fe [Java][CI] fail fast, add path (#10570)
* fail fast, add path

* include more samples for testing

* remove path to trigger build

* Revert "remove path to trigger build"

This reverts commit c7f4c0a4c0.

* remove samples
2021-10-09 18:31:41 +08:00
Hugo Alves
331b61dc1c [Java][Feign] Expose response headers for feign client (#10507)
* Add .circleci/config.yml

* Add the property exposeResponseHeaders to feign client

This new property indicates if the feign client should expose the response headers on the API class.

* Generate new docs for exposeResponseHeaders additional property

* Rename HeaderAwareResponse to HttpResponse

* Update samples

* Refactor the implementation to use the same approach as the c# generator.
Creates a new feign operation with the suffix WithHttpInfo, this operation returns the response encapsulated in a HttpResponse class.
The HttpResponse class contains the decoded body and the response headers

* Refactor the implementation to use the same approach as the c# generator.
Generate samples

* Refactor the implementation to use the same approach as the c# generator.
Generate docs

* Use Void instead of void for HttpResponse parameterized type
2021-10-09 15:50:55 +08:00
Hyunjin Jeong
e1f7fb0fbd add-word-in-docs (#10567) 2021-10-09 15:47:57 +08:00
Mickael Magniez
ba55332f4c fix: don't send just " " in body, send an empty string (#10561)
Co-authored-by: Mickael MAGNIEZ <mmagniez@veepee.com>
2021-10-09 15:45:30 +08:00
agilob
cd9bd969d7 Remove eclipse formatter plugin (#10547) 2021-10-09 15:44:53 +08:00
Radosław Zawartko
d20f251f8b Another company using OpenAPI Generator (#10562)
* Update users.yml

Elastic Email is using OpenAPI Generator for it's client libraries

* Elastic Email logo

Co-authored-by: radzaw <radoslaw.zawartko@elasticemail.com>
2021-10-09 15:42:16 +08:00
William Cheng
08296c2b1d Ruby: Fix deprecation warning for Faraday (#10559)
* Fix deprecation warning for Faraday

* test only ruby

* Revert "test only ruby"

This reverts commit 2ca650e66b.
2021-10-08 12:06:53 +08:00
Oleg Orlov
8b8654facc Fix deprecation warning for Faraday (#10558)
To avoid this warnings while running rspecs
```
WARNING: `Faraday::Connection#basic_auth` is deprecated; it will be removed in version 2.0.
While initializing your connection, use `#request(:basic_auth, ...)` instead.
See https://lostisland.github.io/faraday/middleware/authentication for more usage info.
```
2021-10-08 11:37:39 +08:00
William Cheng
96c65fea61 [Java] add an option to customize gradle.properties (#10540)
* add an option to customize gradle properties

* add more info to gradle.properties
2021-10-08 11:20:50 +08:00
William Cheng
20ccf36c50 Add Gradle tests in Github actions (#10550)
* add github actions to test gradle

* use bin/sh

* remove branch name

* trigger build failure

* retest branch

* Revert "retest branch"

This reverts commit b121887ede.

* Revert "trigger build failure"

This reverts commit fce4d6f462.
2021-10-08 10:49:23 +08:00
William Cheng
6c5f6d2400 [java] Update Gradle to 7.2 (#10538)
* update gradle to 7.2

* update samples

* use gradle-7.2-bin.zip instead
2021-10-08 10:48:27 +08:00
agilob
8d7be74b79 Dart json_serializable: remove experimental generator (#10533) 2021-10-06 01:38:50 +08:00
William Cheng
72cec10edf Fix Windows build failure in some environments (#10529)
* update surefire to newer version

* more fixes

* update pet.proto

* update model protobuf template

* add charset

* set line separator

* set proper line break in proto test

* minor fix

* use UTF-8

* use FileUtils.contentEquals

* remove line break

* remove line breaks

* revert utf-8 change
2021-10-05 20:37:24 +08:00
Bodo Graumann
9aadd7724c Add message and more context to RequiredError (#10530) 2021-10-05 12:41:49 +02:00
andrew-matteson
22d98c177d Correct a dependency resolution failure in generated angular typescript packages for Angular 12 (#10525)
* Update version

* Rebuild sample
2021-10-05 10:14:58 +02:00
Josh Burton
f5e8f54b21 [dart-dio-next] Adds an option for using the dio_http package (#10497)
* [dart-dio] Adds an option for using the dio_http package

Relates to #10305

* [dart-dio-next] Generates new dio_http sample

* [dart-dio-next] renames dio_http sample, adds pom.xml

* [dart-dio-next] Removes executions not required
2021-10-05 14:03:48 +08:00
RomainPruvostMHH
1735ab9d27 [Java] Replace Java EE 8 dependencies by Jakarta EE 8 (#10513)
* Migrate javax.annotation:javax.annotation-api to
jakarta.annotation:jakarta.annotation-api:1.3.5

* Migrate javax.annotation:javax.annotation-api to
jakarta.annotation:jakarta.annotation-api:1.3.5 for sbt

* Migrate javax.annotation:javax.annotation-api to
jakarta.annotation:jakarta.annotation-api:1.3.5 for gradle

* Commit samples files after the execution of the command
"generate-samples.sh for configs java and kotlin

* Delete org.jboss.spec.javax.annotation:jboss-annotations-api_1.2_spec
from the exclusion section of org.jboss.resteasy:resteasy-client in the
resteasy module because jboss-annotations-api_1.2_spec isn't a
transitive dependency

* Migrate javax.validation:validation-api to
jakarta.validation:jakarta.validation-api:2.0.2 for maven

* Migrate javax.validation:validation-api to
jakarta.validation:jakarta.validation-api:2.0.2 for gradle

* Migrate javax.validation:validation-api to
jakarta.validation:jakarta.validation-api:2.0.2 for sbt

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Migrate javax.ws.rs:javax.ws.rs-api to
jakarta.ws.rs:jakarta.ws.rs-api:2.1.6 for maven

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Migrate javax.json.bind:javax.json.bind-api to
jakarta.json.bind:jakarta.json.bind-api:1.0.2 for maven

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Migrate javax.json:javax.json-api to jakarta.json:jakarta.json-api:1.1.6
for maven

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Migrate javax.xml.bind:jaxb-api to
jakarta.xml.bind:jakarta.xml.bind-api:2.3.3 for maven

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Migrate javax.el:el-api to jakarta.el:jakarta.el-api:3.0.3 for maven

* Migrate javax.servlet:servlet-api to
jakarta.servlet:jakarta.servlet-api:4.0.4 for maven

* Delete the property servlet-api-version in pom files because it is
useless

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Migrate javax.activation:activation to
jakarta.activation:jakarta.activation-api:1.2.2 for maven

* Delete javax.activation:activation from the exclusion section of
org.jboss.resteasy:resteasy-client in the resteasy module because
javax.activation:activation isn't a transitive dependency

* Commit samples files after the execution of the command
"generate-samples.sh for configs java, spring, jaxrs and kotlin

* Fix the name of property jakarta.activation-version

* Fix a missing property 'jakarta-annotation-version' in
JavaJaxRS/resteasy/pom.mustache

* generate samples

* Fix version value of jakarta.validation-api artifact in
Java/libraries/rest-assured/pom.mustache

* Fix missing property jakarta-annotation-version in
jaxrs-resteasy/eap/pom.mustache

* generate samples

* Revert changes in sample files after running the command
generate-samples.sh in gitBash

* Fix files in
samples/openapi3/client/extensions/x-auth-id-alias/java/jersey2-java8

* Replace the old dependency javax.validation:validation-api by the new
Jakarta EE 8 jakarta.validation:jakarta.validation-api in
openapi-generator-online

Co-authored-by: rpruvost <rpruvost@ITEM-S78402.emea.msad.sopra>
Co-authored-by: rpruvost <romain.pruvost@soprasteria.com>
2021-10-05 09:47:29 +08:00
William Cheng
e1d1ced117 regenreate package-lock.json for ts axios (#10520) 2021-10-04 21:16:21 +08:00
dependabot[bot]
9421b3d3c2 Bump eskatos/gradle-command-action from 1 to 2 (#10491)
Bumps [eskatos/gradle-command-action](https://github.com/eskatos/gradle-command-action) from 1 to 2.
- [Release notes](https://github.com/eskatos/gradle-command-action/releases)
- [Commits](https://github.com/eskatos/gradle-command-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: eskatos/gradle-command-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-04 17:13:24 +08:00
John Gallagher
2ceccfbe3c [REQ] [RUBY] [FARADAY] Allow middleware to be configured (#10495)
* feat: allow configuring middleware in setup

* fix: stop requiring Faraday middleware unnecessarily

* chore: regenerate petstore samples

* chore: regenerate openapi3 client

* chore: ci fails so rebuild
2021-10-04 17:09:21 +08:00
madsvonqualen
45e0b461ba [Java] [jaxrs-spec] Add @JsonTypeName to Pojo's (#10489)
* Add @JsonTypeName annotation to pojo's in order to make Jackson deserialize superclass instances

* Generate samples
2021-10-04 16:43:29 +08:00
Larry Diamond
10b310d33f Optimize: entrySet is faster than keySet + get to prevent N lookups (#10496)
* Optimize: replace keySet + N get calls with entrySet saving N calls to get method in a few places

* missed one performance optimization

* Rolling back a change that was dependent on Java 11
2021-10-04 16:37:34 +08:00
William Cheng
768c76ea33 Add a link to hackernoon article (#10518) 2021-10-04 10:53:35 +08:00
Heikki Haapala
38b8685b00 [typescript-axios] Fix invalid query params usage (#10512)
* fix: axios query params from options

Remove passing query params from options to setSearchParams. Options
were already passed to Axios in full so this removes some duplicate
logic. Axios does merge query params given in path and through params
option so no change in outcome.

* chore: generate samples
2021-10-03 16:30:06 +02:00
William Cheng
026dd8d5f8 Move TypeScript, JavaScript tests to CircleCI (#10510)
* move ts, js tests to circleci

* set NODE_ENV

* curl -k

* comment out haskell installation
2021-10-02 15:38:05 +08:00
Heikki Haapala
755359c031 [typescript-axios] Fix model property naming (#10447)
* fix: typescript-axios property names

Disables MODEL_PROPERTY_NAMING for typescript-axios generator as this
was never supported (templates have no mapping between original property
names and formatted names). Wraps all properties in model interfaces
with '' to support most characters except ' for now. Also fixes missing
options typing that was any before.

* chore: add new sample, generate samples

* chore: update generator docs
2021-10-02 08:06:29 +02:00
William Cheng
bcf12b36e6 skip crystal tests (#10509) 2021-10-02 13:51:05 +08:00
William Cheng
8602fbc87c update ruby samples 2021-10-02 13:10:13 +08:00
NivathaSV8
0eb7189fae [Ruby][Faraday][#10137] Fix config request options and timeout (#10405)
* Update default timeout of Faraday request to 60 seconds

* Fix request options of Ruby Faraday client
2021-10-02 13:05:41 +08:00
Surya Asriadie
68285bcd0a [Kotlin] Fix prevent string default value to be escaped (#10501) 2021-10-02 11:48:34 +08:00
NouemanKHAL
1224283c84 use array examples in ruby (#10500) 2021-10-02 11:46:15 +08:00
Mustafa Arif
a57ab19d90 Add Aqovia & clients as using OpenAPITool (#10493)
Added our company (Aqovia) as well as our spin-out (NeuerEnergy) and client (Interxion) all of whom are using the OpenAPI-generator as part of build toolchains.
2021-10-02 11:45:19 +08:00
Justin Black
638a2faa3d Updated model generation, addProps handling moved into type object and anyType handling (#10505)
* Updates fromModel helpers

* Samples regenerated

* updateModelForComposedSchema made protected so it can be overridden
2021-10-01 13:09:32 -07:00
Richard Kolkovich
8c059a8663 [typescript-node] Set model default values (#10262)
* fix: add default value, if present, for model properties (closes #10261)

* update samples

* fix: set default to null to allow #defaultValue to work in templates

* fix: escape the string default value, leverage super rather than copy-pasta

* update samples again
2021-09-30 07:43:16 +02:00
xiedaxia1hao
c09c6261eb [Java] Fix Potential Flaky Tests (#10485)
* fixed flaky test

* fix flaky test

* update import to the original

* recover indent

* fix format

* finalize
2021-09-28 11:55:35 +08:00
William Cheng
5dcd76d9cb add decimal support to R client generator (#10487) 2021-09-28 11:47:43 +08:00
Ben Zvan
26ffab184f update to handlebars.java 4.2.1 (#10483) 2021-09-28 11:46:58 +08:00
William Cheng
334b18ae24 add decimal support to powershell (#10486) 2021-09-28 11:38:36 +08:00
William Cheng
51d468e2f6 add decimal support to ruby generators (#10484) 2021-09-28 11:38:19 +08:00
William Cheng
d22e9fb1c1 update rust samples 2021-09-28 11:34:07 +08:00
Derek Strickland
bfce822c34 Use packageName in all of install instructions (#10480)
Thanks for fixing the issue with the non-templatized package name in the install instructions. I'm submitting this slight improvement to

- instruct the user to name the folder after the packageName
- set the path to that new folder name
2021-09-28 10:12:34 +08:00
William Cheng
1a50f1f493 [PHP] fix numeric value in model enum (#10474)
* fix number value :win model enum

* fix tests
2021-09-28 10:10:59 +08:00
Justin Black
d4b8ff60a1 [Java] Fixes schema class type booleans for composed schemas (#10334)
* Adds get/setIsString interface to IJsonSchemaValidationProperties

* Adds get/set isNumber interface in IJsonSchemaValidationProperties

* Adds get/set isAnyType in IJsonSchemaValidationProperties

* Adds and uses ModelUtils.isAnyType, adds setTypeProperties

* Adds missing descriptions of isAnyType parameters

* Uses ModelUtils.isAnyType

* Samples regenerated

* Moves isArray handling higher up in fromProperty

* Moves isAnyTypeSchema handling higher up in fromProperty

* Moves isFreeFormObject handling higher up in fromProperty

* Refactors fromProperties, updates tests

* Fixes the fromProperty refactor, tests now pass

* Uses setTypeProperties to set isNumber, isNull, isArray, and isUnboundedInteger

* Sets isAnyType in setTypeProperties

* Sets isMap in setTypeProperties

* Sets property.isPrimitiveType in isFreeFormObject, tweaks if condition order

* Adds fix for JavaClientCodegenTest.testJdkHttpClientWithAndWithoutDiscriminator

* Refactors fromProperty

* Adds updatePropertyForObject updatePropertyForAnyType

* Sets binary and file types to not be strings

* Updates samples

* Adds updatePropertyForString

* Adds testComposedPropertyTypes

* Fixes python test

* Samples updated

* Switches all isAnyTypeSchema usages to ModelUtils.isAnyType

* Refactors model enum handling higher up

* Moves m.dataType assignent higher into fromModel

* Moves m.isNullable setting higher into isModel

* Adds updateModelForComposedSchema

* Further fromModel refactoring, all schema checks are now at the same indentation level

* Further refactors fromModel, adds isTypeObjectSchema block

* Moves addVars into anyType or objectType blocks in fromModel

* Turns off isNullable n isAnyType array

* Fixes typescript CodegenParameers

* Adds updatePropertyForAnyType to typescript-axios so property.isNullable will be false for AnyType

* Adds testComposedModelTypes

* Updates ComposedAnyType schema

* Fixes tests for JavaJAXRSCXF by adding updateModelForObject method

* Updates go and csharp to handle object model differently

* Adds updateModelForAnyType

* Fixes name reference

* Adds testComposedResponseTypes

* Refactoring fromResponse

* Further refactoring of fromResponse

* Uses setTypeProperties in fromResponse

* Tests now pass for testComposedResponseTypes

* Sets COdegenResponse dataType using getTypeDeclaration

* Begins refactoring of fromRequestBody

* Adds updateResponseBodyForPrimitiveType

* Adds all needed type if else blocks in fromRequestBody

* Fixes JavaJAXRSCXFExtServerCodegenTests

* Fixes RubyClientCodegenTests

* Adds fixes for clients that need custom isMap for body parameters

* Ruby broken, samples regened, debugging

* Adds updateRequestBodyForArray, renames updateRequest.. methods

* Samples regenerated

* Removes changes from Ruby generator

* Reverts RubyClientCodegen.java

* Reverts changes to GoClientCodegen.java

* Reverts PowerShellClientCodegen.java

* Reverts CrystalClientCodegen.java

* Removes updateRequestBodyForObject from JavaCXFServerCodegen.java

* Adds comment about refed models

* Tweaks made to fromProperties to add an explanatory comment

* Updates RustServer to have ByteArray request bodies not be strings

* Sets types in fromFormProperty

* Adds testComposedRequestBodyTypes

* Fixes when validation syncing is done in syncValidationProperties

* Removes redundant validation code from fromParameter

* Moves parameter inX setting higher up before schema logic in fromParameter

* More refactoring in fromParameter, uses early return to reduce levels of indentation

* Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForArray

* Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForObject

* Removes setParameterBooleanFlagWithCodegenProperty from  updateRequestBodyForPrimitiveType

* Removes setParameterBooleanFlagWithCodegenProperty from updateRequestBodyForMap

* Removes setParameterBooleanFlagWithCodegenProperty from addBodyModelSchema

* Removes setParameterBooleanFlagWithCodegenProperty from fromFormProperty

* Refactors parameter array handling code into fromFormProperty

* Simplifies fromRequestBodyToFormParameters

* Removes setParameterBooleanFlagWithCodegenProperty from fromParameter

* Adds deprecated docstring to setParameterBooleanFlagWithCodegenProperty

* Refactors ModelUtils.isFileSchema out of string schema check

* Removes ModelUtils.isFileSchema from RustServer updateRequestBodyForString

* Improves comment text

* Fixes RustServer uuid type setting for CodegenParameter

* Removes unneeded parens

* Fixes array property examples

* Removes unused code

* Renames variable to itemsProperty

* Adds testComposedRequestQueryParamTypes

* Adds updatePropertyForAnyType to rustserver will not have changed model properties

* Hoists arrayInnerProperty._enum into parameter for html2 generator

* Moves turning string type off into the codegen files

* Adds two more missing locations in rustserver

* Moves addVarsRequiredVarsAdditionalProps into anytype and objecttype handling

* More refactoring of where addVarsRequiredVarsAdditionalProps is used

* Samples regenerated
2021-09-27 16:12:40 -07:00
Eugene
60b29e1f8e #10472 csharp-netcore client - allow to specify content-type for files (#10473) 2021-09-26 23:31:37 +08:00
William Cheng
119370079a update spec template, samples 2021-09-25 18:14:26 +08:00
romanblack1
7384a1e513 Define content type only if the body is not empty (#9766)
* define content type iff the body is not empty

* update samples
2021-09-25 15:05:38 +08:00
William Cheng
00ea470e49 update ruby tests 2021-09-25 15:03:01 +08:00
romanblack1
622a936358 Define content type if and only if the body is not empty (#9910)
* rubypatch

* moving change to api.must

* fix content_type to content-type

* added end to if
2021-09-25 14:53:58 +08:00
William Cheng
323065e53f Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-09-25 13:59:06 +08:00
William Cheng
871b9ab5b6 update phpunit xml to newer format (#10470) 2021-09-25 13:58:27 +08:00
William Cheng
150e304b4c update samples 2021-09-25 13:56:00 +08:00
Wim Van Renterghem
4e029e99ea Remove type erasure of the Error response, as it is always the same type (#10460) 2021-09-25 13:52:50 +08:00
jakubskopal
56b060c6fa Fix missing import for JsonTypeName (#8815)
Attempt to fix #8157
2021-09-25 13:47:10 +08:00
William Cheng
c9047a6faa [php] enhance type mapping (#10457)
* map BigDecimal to float

* enhance type mapping in php generators

* update tests

* update doc, samples

* remove primitive types from phpdt, mezzio
2021-09-25 12:09:34 +08:00
Bodo Graumann
be3bd2e6c7 [Typescript] Improve exception for unknown responses (#10361)
* Clean up tests

* Change pets to async-await

* Use different pets for each test

* Workaround multiple petstore server instances

* Add test for unknown error response code

* Remove call duplication

Running the petstore server locally fixes all issues.

* Make body of unexpected error responses available

* Regenerate all consolidated typescript samples

* Remove json heuristic for unknown error responses
2021-09-24 23:53:37 +02:00
Yoann Ricordel
476a82cb75 [bash] Force Content-Length: 0 on empty posts (#10462)
In the case where we are making empty posts, use -d '' to force curl to
set the Content-Length header to 0. Some backends (among which Microsoft
Kestrel) are sensitive about POST without a Content-Length set.
2021-09-24 01:13:22 +08:00
Pi Delport
5096a00087 Rust client docs improvements (#10461)
* docs(rust,client): link from parameter structs to operation methods

* docs(rust,client): move "more information" text up

This prevents the "more information" text from flowing into the previous
bullet point.

* docs(rust,client): use code formatting for generatorClass

* docs(rust,client): use packageName variable for Cargo.toml dependencies example

* chore(rust,client): capture sample updates
2021-09-24 01:03:01 +08:00
William Cheng
1d934643fd update samples 2021-09-23 14:29:33 +08:00
Himanshu Pant
538f12c36d fix: 🐛 Added ability to override basePath while creating ApiClient instance (#10327)
Solves #9179
2021-09-23 14:23:56 +08:00
Pi Delport
31342580cb feat(rust,client): derive Default for operation parameter structs (#10432)
* feat(rust,client): derive Default for model & api structs

This makes operations with many parameters easier to work with.

* chore(rust,client): capture sample changes: derive Default
2021-09-23 11:31:09 +08:00
Bruno Coelho
7c133be617 [swift5][client] add support for async await (#10442)
* [swift5][client] add support for async await

* [swift5][client] disable CI for the async await sample project temporarily
2021-09-23 10:53:57 +08:00
msmerc
916791de7c Add semicolon as a special case (#10451)
Please could you also add `;` as a special case in enums?
2021-09-23 10:51:02 +08:00
Pi Delport
de95e2a144 fix(rust,client): re-enable TLS support for reqwest with supportAsync (#10439)
* fix(rust,client): keep default reqwest features with supportAsync

This avoids disabling TLS support entirely.

* chore(rust,client): capture sample changes

This avoids disabling TLS support entirely.
2021-09-22 12:08:56 +08:00
Pi Delport
30a37b3d8c ci(drone): fix duplicate pipeline names (#10437)
Drone requires unique pipeline names, which PR #10423 (5c45465) missed.
2021-09-22 11:12:53 +08:00
William Cheng
14bebcd2f2 string comparison bug fix, minor format change (#10446) 2021-09-22 11:06:18 +08:00
Philipp Heuer
3b6b194a24 [gradle]: allow setting custom engines other than handlebars (#10416) 2021-09-22 11:01:36 +08:00
William Cheng
acdf357b76 Revert "Accept header forces application/json type even if server (#10337)" (#10440)
This reverts commit 18301d0011.
2021-09-21 18:17:05 +08:00
Aleksandr Nekrasov
ef0186c9cf [scala] Fix Array[Byte] type for Openapi type string format byte (#10426)
* [scala] fix byteArray mapping in AbstractScala

* fix testng framework instead of junit for sttp codegen

* regenerate scala examples

* regenerate docs and examples

* fix test
2021-09-21 12:15:49 +08:00
Wojciech Trocki
18301d0011 Accept header forces application/json type even if server (#10337)
* fix!: accept should not force application JSON 

Generated code offen provides range of accept methods.
This method improperly takes JSON as preferred

Example:
	localVarHTTPHeaderAccepts := []string{"application/zip", "application/json"}

* chore: generated changes
2021-09-21 12:04:00 +08:00
Andrew
61852a072a [go]: fix anyOf compilation error (#10431) 2021-09-21 12:01:35 +08:00
Wojciech Trocki
a939676c0d fix: expose allowed values of the enum (#10386)
* fix: expose allowed values of the enum

Fixes #10385

* chore: update examples
2021-09-21 11:58:38 +08:00
William Cheng
1947f130c0 update doc, samples 2021-09-21 11:52:33 +08:00
adessoDpd
1a48c5f19f [Wsdl] Handle schema property of type array with oneOf items and other minor updates/fixes (#10434)
* add handling of array of oneOfs

* handle res model-type lowercase name +shorten code

* remove unnecessary vendor-extension model enum

* handle openapi lowercase schema name for array res

* change xs:anytype to string for file responses

* update checkstyles

* remove not needed imports again

* update samples

* upper/lowercase use local getdefault

* update  samples again
2021-09-21 11:46:05 +08:00
RomainPruvostMHH
04e67acd0a Fix issue 8352: [Java][RestTemplate][WebClient] Incorrect handling of free form query parameters (#10428)
* [Java][RestTemplate][WebClient] fix issue #8352 handling of free-form
query parameters with Java

* replace tab by spaces

* commit samples files generated by the generate-samples.sh script
2021-09-21 11:40:56 +08:00
Pi Delport
ce30a3f3bc fix(rust,client): convert form isArray values to string (#10420) 2021-09-21 11:36:02 +08:00
Pi Delport
5c45465a97 ci(drone): use parallel pipelines (#10423)
Docs: https://docs.drone.io/pipeline/configuration/#multiple-pipelines
2021-09-21 11:23:04 +08:00
Jon Schoning
1247e77453 [haskell-http-client] add ability to choose additional characters in querystring which should not be encoded (e.g. "+" or ":") (fixes #3459) (#10424) 2021-09-19 02:02:22 -05:00
Jon Schoning
f2cc23442c regen samples (#10425) 2021-09-19 00:11:55 -05:00
William Cheng
14758dbb0b Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-09-19 13:10:12 +08:00
William Cheng
e3b558c0f1 update samples 2021-09-19 12:40:33 +08:00
Vitaliy Kim
b13e37839a fixes OpenAPITools#10403 (#10404) 2021-09-19 12:29:20 +08:00
Pi Delport
10288397f9 fix(RustServerCodegen): fix reserved word model rename log message (#10418) 2021-09-19 11:49:35 +08:00
Pi Delport
2bd20a08de fix(rust,client): use local_var prefix for configuration (#10419)
* fix(rust,client): use local_var prefix for configuration

This avoids conflicting with params named "configuration".

* chore(rust,client): capture updated samples
2021-09-19 11:44:42 +08:00
Thomas Leplus
80fb9e9889 Use 'this' to assign to class field. (#10417) 2021-09-19 11:42:34 +08:00
Gregor
a463c11354 10408: made Validate public. (#10413) 2021-09-19 11:41:18 +08:00
bgong-mdsol
fdb13c3e2e add the correct import of enum (#10412) 2021-09-17 09:38:48 +08:00
Surya Asriadie
0936b43dfd [Kotlin] Fix default value for kotlin class (#10407)
* Fix default value for kotlin class

* fix style: remove trailing line

* fix ktorm schema
2021-09-17 01:12:41 +08:00
Foorack / Max Faxälv
f9320cae68 [typescript-axios] Upgrade axios from 0.21.1 to 0.21.4 (#10381)
* Upgrade typescript-axios from 0.21.1 to 0.21.4

* Update samples
2021-09-16 10:39:38 +08:00
bgong-mdsol
aac9aa681e fix not type found ByteArray (#10166) 2021-09-16 10:24:44 +08:00
Ben Zvan
340eb7db1a udates to kotlin 1.3.30 (#10389) 2021-09-15 11:54:48 +08:00
Jon Schoning
df877a8cf9 [haskell-http-client] fixes for GHC 9 (#10400)
- update stack/deps to LTS 18.10 for ghc-8.10.7
- fixes for GHC 9
- update samples
2021-09-14 16:15:58 -05:00
bflaton
9479d35081 Python client docstring (#10339)
* Updated template so that generated code now renders docstrings and function parameters nicely in IDE.

Endpoints are still accessible in generated code, mainly to satisfy some test cases.

* fixed manual tests
2021-09-14 09:38:48 -07:00
Bruno Coelho
084e0930d0 [kotlin][client] fix warning (#10390) 2021-09-14 21:20:16 +08:00
Bruno Coelho
27727acf52 [swift5][client] Fix issue 9953 (#10387)
* [swift5][client] Fix issue 9953

* [swift5][client] update docs
2021-09-14 11:39:32 +08:00
Bruno Coelho
0211f7b82e [kotlin][client] add support for okhttp requests with empty body (#10369)
* [kotlin][client] add support for okhttp requests with empty body

* [kotlin][client] add support for okhttp requests with empty body
2021-09-14 11:33:06 +08:00
Ahmed Yarub Hani Al Nuaimi
29f3869bda Fix installation script (#10378) 2021-09-14 11:31:21 +08:00
Martin Delille
dd6e399ff5 Fix ci again (#10388)
* Fix ci again

* Improve .gitignore
2021-09-14 11:23:18 +08:00
Bruno Coelho
2732c45cc1 [swift5][client] code formatting and dependencies ordering (#10370) 2021-09-13 20:00:20 +08:00
Noor Dawod
495f6eb30c Dart2 template linting (#10263)
* Bump jimschubert/query-tag-action from 1 to 2

Bumps [jimschubert/query-tag-action](https://github.com/jimschubert/query-tag-action) from 1 to 2.
- [Release notes](https://github.com/jimschubert/query-tag-action/releases)
- [Commits](https://github.com/jimschubert/query-tag-action/compare/v1...v2)

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

* Updated Dart2 template to fix linting errors when using recommended rules.

* Updated Petstore code.

* Revert to having no EOF marker at end of few files.

* Fix a call on null value.

* Updated Petstore code.

* Add more checks for nulls.

* Updated Petstore code.

* Updated Petstore code.

* Revert back decoding an enum value.

* Revert back decoding an enum value.

* Updated Petstore code.

* Revert to older version of _convertParametersForCollectionFormat method.

* Updated Petstore code.

* Updated template and Petstore files.

* Adjust doc for analysis_options file.

* Updated Petstore sources.

* Shorten command to replace path parameters.

* Updated Petstore code.

* Add a space for readability.

* Adjust template per feedback.

* Remove unneeded break statements.

* Updated Petstore code.

* Keep a new line character when replacing parameter names (like before).

* Remove string interpolation.

* Updated Petstore code.

* Remove commented code.

* Regenerate Petstore code.

* Regenerated Petstore code.

* Use another parameter name to stop variable shadowing.

* Regenerated Petstore code.

* Put description adjacent to the class.

* Add another global ignore for all files: constant_identifier_names

* Use const for contentTypes and authNames.

* Regenerate Petstore code.

* Use shorter code to check for an empty array.

* Regenerate Petstore code.

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-13 09:40:15 +08:00
William Cheng
eef7fdafd4 re-enable c petstore tests 2021-09-12 23:41:56 +08:00
Martin Delille
1eb4d886e6 cpp-qt-client: Fix CI (#10376) 2021-09-12 23:41:03 +08:00
William Cheng
c67a2fb60c Add a link to AWS ParallelCluster API documentation (#10380)
* Add a link to documentation

* add link description
2021-09-11 22:56:35 +08:00
William Cheng
592cb64465 minor code improvement based on sonarcloud reports (#10364) 2021-09-10 18:12:23 +08:00
Mike Marchetti
9464999d9c fix: handle deepcopy of openapi objects (#9735) (#9735)
- Add __deepcopy__ and __copy__ to OpenApiModel
- pass discriminator inside deepcopy if exists
- add test cases for deepcopy of models
2021-09-09 09:16:59 -07:00
William Cheng
477e2365c7 improve git_push.sh (#10356) 2021-09-09 12:49:03 +08:00
William Cheng
483a13f3e1 Test Python clients in CircleCI (#10354)
* test python in node3

* install python3

* install python 3.6

* use pyenv

* run with 3.5.2

* install py 3.8.9

* fix folder name

* install via pyenv

* list pyenv

* install 3.6.3

* rearrange test

* Revert "rearrange test"

This reverts commit 1b075ed97c.

* only test py3
2021-09-09 12:43:55 +08:00
William Cheng
a8ee07c132 replace tabs with 4-spaces 2021-09-09 12:27:31 +08:00
William Cheng
1231b1ab04 update samples, update html doc 2021-09-09 12:09:38 +08:00
shayan-eftekhari
4626b185fe [cpp-restsdk] Fix ModelBase::fromJson(const web::json::value&, int64_t&) bug which incorrectly returns zero (#10300)
* BUG FIX: A missing semicolon in cpp-pistache-server generated code.

* BUG FIX: Provide default values of schema in cpp-pistache-server generated code.

* BUG FIX: Provide default values of schema in cpp-pistache-server generated code.

* Fix a bug in cpprest-sdk generator (Issue #8450)

* Fix a bug in cpprest-sdk generator (Issue #8450)

* Fix a bug in cpprest-sdk generator (Issue #8450)

* Revert "Fix a bug in cpprest-sdk generator (Issue #8450)"

This reverts commit 7d8f842860.

* Fix a bug in cpprest-sdk generator (Issue #8450)
2021-09-09 11:57:45 +08:00
agilob
d2d06f0503 Add ArchUnit to test format of loggers and Abstract classes (#10335)
* Add archunit to programatically test format and scope of loggers

* Fix use of loggers

* Update error message

* Add check for abstract class

* Test if classes with abstract in name are abstract

* Make abstract class abstract

* Rename test class

* Make logger private final

* Make logger private
2021-09-09 11:54:51 +08:00
Thomas Hervé
36ae0b9ffe Handle nullable items in Go arrays (#10268)
If an item in a go array is nullable, we want to represent it as a pointer,
otherwise it will be deserialized with a default value and it will be
impossible to differentiate it from null.
2021-09-09 11:53:23 +08:00
Bas Huisman
54e98c86bb make updateParamsForAuth protected for java webclient (#10351)
Co-authored-by: Bas Huisman <bash@lostlemon.nl>
2021-09-09 11:27:52 +08:00
klhmeyer
66f86d890d Update pojo.mustache (#10353)
For setters the Jackson based property name conversion  (e. g.  from _-separated to CamelCase) is missing. So I propose this.
2021-09-09 11:26:26 +08:00
Kraust
0eba15f042 Updated the HTML2 Doc Curl Examples to provide sample Request Body & Query Param examples. (#10323)
* Updated the HTML2 Doc Curl Examples to provide sample Request Body & Query Param examples.

* Updated the HTML2 Doc Curl Examples to provide sample Request Body & Query Param examples.

Co-authored-by: Kraust <kraust@cock.li>
2021-09-09 11:24:13 +08:00
William Cheng
6629f8f996 Show an error instead of NPE when schema is not defined (#10348)
* show warning instead of npe when schema is not defined

* better error message
2021-09-09 11:22:14 +08:00
William Cheng
02371d08d6 comment out cpp qt test 2021-09-09 11:05:06 +08:00
Martin Delille
2239ca36fd cpp-qt-client: Fix cppcheck warnings (#10322)
* Fix cppcheck warnings

* Improve coding style

* Add 4 spaces
2021-09-08 16:10:28 +08:00
Ahmed Yarub Hani Al Nuaimi
86ead27a40 Windows adaptations and installer configuration (#10326)
* Undefine reserved keywords
Cast to correct type when applicable to be compilable on C++ compilers
Add conditional instllation of configuration files

* Update samples

* Use default installation method if no configuration script is provided

* Undefine stdin/stderr/stdout only for model files

* Undefine stdin/stderr/stdout only for model files in samples

* Remove #undef directives

* Add stdin/stderr/stdout to reserved words for libcurl-C generator

* Expose all symbols when compiling libcurl as a shared library on Windows
Install header files
Set correct flags for target link libraries

* Remove line

* Regenerate samples

* Add comment

* Update documentations

* Revert "Update documentations"

This reverts commit 0e25659de2.

* Update documentations

* Add versioning support

* Add versioning support

* Add comment
2021-09-08 10:55:49 +08:00
Jorge Rodríguez Martín
a24e7e2af3 Fix default value for enum type in RequestParameter was not added (#10332) 2021-09-08 10:16:00 +08:00
Matthias Wimmer
2640c369e8 [elm] fix generated invalid code for enums (#10328)
As described in
https://github.com/OpenAPITools/openapi-generator/issues/8343 invalid
code was generated when the OpenAPI uses enums. With this the
decoders/encoders are called at the correct place.
2021-09-08 10:04:48 +08:00
MATSUBARA Nobutada
2c5943d32f Fix response array and dict in elm template (#10310) 2021-09-08 10:00:13 +08:00
hackerman
8eed5d0c89 [csharp-netcore] verbose null checking (#10333)
This patch addresses an issue where csharp-netcore failed to generate compilable code when required attributes were of complex types.

By using the non-shorthand syntax for checking if the value is set, and throwing an error in that case, the compile issues have been resolved.

Closes #9442
Closes #5442
2021-09-08 09:59:42 +08:00
ahjota
85767829cb [R] Fix shellcheck violations in git_push.sh.template (#10345)
* shellcheck

* regenerated sample
2021-09-08 09:58:34 +08:00
andrew-matteson
bc3ee32498 Angular 12 Support: Typescript upgrade + HttpContext (#10336)
* Basic Angular 12 support.

* Make samples

* Pass HTTP Context for Angular client

* Generate samples for Angular-v12

* Add all samples
2021-09-07 08:23:52 +02:00
Justin Black
b258bba5dd Revert "Updated template so that generated code now renders docstrings and function parameters nicely in IDE. (#10331)" (#10338)
This reverts commit ae88cf14da.
2021-09-06 20:20:04 -07:00
bflaton
ae88cf14da Updated template so that generated code now renders docstrings and function parameters nicely in IDE. (#10331)
Endpoints are still accessible in generated code, mainly to satisfy some test cases.
2021-09-06 15:01:33 -07:00
William Cheng
d8d5709b8b update samples 2021-09-03 20:36:36 +08:00
Jimi Steidl
1da6c223e6 Fix condition bug in dart-dio-next OauthInterceptor (#10317) 2021-09-03 20:27:58 +08:00
Peter Leibiger
a558554961 Add OAS3 allowEmptyValue for query params (#10312)
* add the special case of empty query parameters to the fake API
2021-09-03 16:32:51 +08:00
Guus Bloemsma
490c747c2b [kotlin-client] OkHttp call is now non-blocking (#10303)
* suspend method is now non-blocking

* added required imports

* generated the samples

* suspend method is now non-blocking

* added required imports

* generated the samples

* Cancelling the call when the coroutine is cancelled
Only use coroutines when requested
Not adding potentially unavailable imports

Co-authored-by: Guus Bloemsma <Guus.Bloemsma@Rabobank.nl>
2021-09-03 11:56:31 +08:00
Kaijia Feng
8cc2bc4fa7 [Java][RestTemplate][WebClient] Fix typo in comments (#10311) 2021-09-02 21:03:29 +08:00
William Cheng
6061a70db0 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-09-02 11:28:24 +08:00
William Cheng
f79f1916ed test springboot-reactive in circleci 2021-09-02 11:27:56 +08:00
Josh Bridge
6331eb6293 [Java] Return content type on default spring reactive responses (#10099)
* Return content type on default spring reactive responses

* Return content type on default spring reactive responses

* Refactor apiUtil and use request mediaType

Co-authored-by: Joshua Bridge <jbridg12@jaguarlandrover.com>
2021-09-02 11:19:13 +08:00
Artem
d68d65ce00 Fix java examples (#10257)
* TAP-655 fix examples java

* update samples
2021-09-02 11:08:35 +08:00
Eric Durand-Tremblay
f9fa62a79e Issue #10244 fix php enum default value initialization (#10273)
Co-authored-by: Eric Durand-Tremblay <etremblay@kronostechnologies.com>
2021-09-02 11:03:31 +08:00
Oleh Kurpiak
c148539ce3 [Java][Spring] fix imports for nullable helpers (#10234) 2021-09-02 11:01:12 +08:00
林裕凯
74f84b6f9b [Java][Spring] fix enum variables in path parameters which generated allowableValues with double quote(#6762) (#10285)
Co-authored-by: Yukai Lin <yukai.lin@ericsson.com>
2021-09-02 10:45:04 +08:00
LionH
67e515447e Adding the useOptional in the ApiController (#6735)
* Adding the useOptional in the ApiController

* If jdk8 is disabled but useOptional is enabled, avoid duplicate import.
2021-09-02 10:32:15 +08:00
William Cheng
a3f012545d replace the tab with 4-space 2021-09-01 14:13:49 +08:00
Yuriy Belenko
062cc96011 [php-slim4] Reduce log noise (#10229)
* Add AbstractAuthenticator once

* Refresh samples
2021-09-01 10:59:18 +08:00
Bruno Coelho
de1c2fd545 [swift][client] upgrade alamofire to version 5.4.3 (#10292)
* [swift][client] initial swift upgrade

* [swift][client] upgrade alamofire
2021-09-01 10:08:00 +08:00
Foorack / Max Faxälv
d980431a96 [Rust][Client] Default version to spec version if not provided as property (#10296)
* [Rust] Default version to spec version if not provided as property

* fix(ci): OpenAPI was null during test
2021-09-01 10:05:37 +08:00
bgong-mdsol
0c7ec41aff [sala-sttp]Add 'clone' in reservedWords list (#10293)
* add 'clone' to reservedWords

* scala - add reserved keyword clone
2021-09-01 02:28:43 +08:00
William Cheng
4b45b370a5 add pexa as bronze sponsor (#10290) 2021-08-31 21:19:26 +08:00
Esteban Gehring
7c4d2b87f6 [typescript] fix compilation error for file upload (#10288) 2021-08-31 18:33:09 +08:00
Ahmed Yarub Hani Al Nuaimi
bfaa38daa0 Fix names of pre- and post- scripts for building libcurl (#10284) 2021-08-31 11:13:47 +08:00
William Cheng
d9f36cd44c Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-08-29 11:14:58 +08:00
William Cheng
94b02f518d update gradle plugin test version 2021-08-29 11:14:16 +08:00
William Cheng
d198132d10 Add @ahmednfwela to Dart technical committee (#10281) 2021-08-29 10:52:49 +08:00
Nathan Baulch
5d68bd6a03 Fix thousands of spelling typos (#10272) 2021-08-28 22:58:24 +08:00
Artem
2d239271e5 #10264 fix spaces in signatures (#10265)
* TAP-198 fix spaces in spring java

* update samples
2021-08-28 22:57:08 +08:00
William Cheng
7bdbfed467 Remove skipReadonlyPropertiesInInit option (#10269)
* remove skipReadonlyPropertiesInInit option

* fix removal

* more removal

* fix again
2021-08-28 22:43:53 +08:00
Ahmed Yarub Hani Al Nuaimi
8818bf260e Libcurl CMake adaptations (#10249)
* Enable using more recent CMake versions
Remove default build type
Add OpenSSL using imported targets
PreTarget and PostTarget scripts
Do not build as shared by default
Fix typos

* Default to building shared libraries

* Remove add_compile_definitions()
Correctly add target link libraries

* Fix syntax

* Fix Indentation
2021-08-27 14:16:30 +08:00
William Cheng
808e6af94d update go petstore samples 2021-08-27 13:37:05 +08:00
Bo Chen
c3eb442900 [Go-client] Fix the ineffectual assignment to err in decode (#10275)
Fixes: #10064

Signed-off-by: Bo Chen <chen.bo@intel.com>
2021-08-27 13:32:34 +08:00
Ween Jiann
3b8f66cd1f [go-server] Fix: param names clash with variables, added suffix (#10243)
* Postfix "Param" to param names in controller

* Regen samples
2021-08-27 13:07:31 +08:00
Bradley Friedman
3446bc6337 [bugfix] [cpp-ue4] API often tries to set reference to null when calling GetHttpRetryManager (#10277)
* [cpp-ue4] implemented null check and fatal log for GetHttpRetryManager]

* [cpp-ue4] reimplemented null check as checkf rather than Fatail UE_LOG

* [cpp-ue4] regenerated samples and docs
2021-08-27 12:57:14 +08:00
Lazar Prijović
ae5db7ee20 [cpp-ue4] Add missing convertors for arbitrary-typed variables (#10276)
* Add missing convertors for TSharedPtr<FJsonValue>

* Update samples
2021-08-27 12:55:10 +08:00
Bradley Friedman
0948a95b8c [cpp-ue4] bug-fix issue 10205: response json parsing logging a error to unreal console when there is no actual parsing problem (#10221)
* [cpp-ue4] Fixed a bug where respose json parsing was not taking 'writeOnly' or 'required' into account and was logging a error to the console when there was no actual problem.

* [cpp-ue4] Moved comments to tail of line in response to improve code appearance.  Added baseName to comments for clarity of reading.

* [cpp-ue4] removed comments from template from previous commits.

* [cpp-ue4] added back ParseSuccess flag flip for TOptional, as the templated version of TryGetJsonValue does actually handle the absense of the field correctly for TOptional.

* [cpp-ue4] reworked looping in model source template's FromJson to better mirror the loop in WriteJson

* [cpp-ue4] more concise version of writeOnly change to FromJson
2021-08-26 17:04:47 +08:00
Lazar Prijović
691a10ad8e [cpp-ue4] Fix model generation for arbitrary-typed values (#10267)
* Replace AnyType declaration with FJsonValue

* Rebuild docs
2021-08-26 16:35:25 +08:00
Nathan Baulch
9c66d33171 [go] Support for response status code ranges (#10075) 2021-08-25 11:15:23 +08:00
William Cheng
badfdccd5e update doc 2021-08-25 10:25:11 +08:00
Aanisha Mishra
67fbb1081e Skip setting readOnly properties with default values in model constructors (#10196)
* skipReadonlyPropertiesInInt flag to go SDK

* minor amendments

* update docs for go
2021-08-25 10:21:02 +08:00
Oliver B. Fischer
309dccd52e [#10251] Improve the documentation of the option serializationLibrary (#10252)
This commit tries to improve the documentation on the relationship
between the two configuration options library and serializationLibrary.
2021-08-25 10:19:01 +08:00
fvlad
bf57d58db1 Move Java Spring Springfox ApiIgnore under conditions (#9644)
* Remove SpringFox @ApiIgnore imports and reference class directly

* Update generated sources

Co-authored-by: Vladislav Fefelov <vladislavf@playtika.com>
2021-08-25 10:17:29 +08:00
Thomas Zeeman
f2b50faeec Fix unchecked conversion (#10246)
* Fix unchecked conversion

Update restttemplate and webclient templates to use <>-operator.
Also update samples.

* Update samples
2021-08-25 10:09:53 +08:00
Thomas Zeeman
cab2244646 Typescript-axios: Replace the non-space whitespace 2021-08-24 18:48:07 +02:00
William Cheng
158649aff9 Add oneOfProps, allOfProps, anyOfProps to Codegen model (#10231)
* add oneOfProps, allOfProps, anyOfProps to codegen model

* remove commented code
2021-08-23 12:03:34 +08:00
William Cheng
bcd2459a8d add a link to medium article 2021-08-23 10:56:40 +08:00
Vikrant Balyan
f2e994271f [Python] fixes __setitem__ throwing an error for composed instance (#10197)
* adding a test for issues 10083

* commiting the generated files

* fix for the setattr issue

* commit generated files

Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
2021-08-22 10:44:19 -07:00
devhl-labs
bee8b615a5 [abstract csharp] Ensure enum dataType is not nullable string (#9891)
* ensure enum cannot be a nullable string

* build samples

* removed errounous changes meant for another pr

* build samples

* build samples

* reordered test parameters for readability

* build samples

* deleted eroneous sample files
2021-08-22 23:40:46 +08:00
Yuriy Belenko
84a6e31fb4 [php-slim4] Follow PDS skeleton (#9189)
* Rename test folder to tests

* Put index.php and .htaccess into public

* Refresh samples
2021-08-22 16:13:48 +08:00
William Cheng
f7bc2aa995 k6: use spaces instead of tab, remove trailing spaces, update samples 2021-08-22 16:11:52 +08:00
Michal H Siemaszko
6844737d07 [ K6 Generator ] Support for extracting examples defined at parameter level of Swagger/OpenAPI specification, plus minor fixes (#9750)
* K6 Generator - Support for extracting parameter examples & minor fixes

* K6 Generator - Support for extracting parameter examples & minor fixes

PR checklist: update samples

* K6 Generator - Support for extracting parameter examples & minor fixes

Fixed indentation
2021-08-22 16:02:46 +08:00
William Cheng
d26dd7b9db Add a link to dzone article 2021-08-22 14:18:33 +08:00
William Cheng
deed7c603b update samples 2021-08-22 13:29:08 +08:00
William Cheng
a6ba8d58d4 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-08-22 13:15:28 +08:00
William Cheng
845ce72ecb Update javascript flowed client's package-lock.json file (#10225)
* add @turkeylurkey as microprofile template creator

* update package-lock.json

* rearrange order, update samples
2021-08-22 13:14:42 +08:00
William Cheng
de1f37cc4d Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-08-22 11:57:34 +08:00
Johannes Wienke
e89e19e43e Add a Jandex index to microprofile client packages (#10173)
Quarkus, as one potential target for using the Java microprofile client
generator, requires a Jandex index to be present in library jars for
discovering beans inside these jars. Therefore, include Jandex index
generation in the pom.xml for microprofile clients as explained here:
https://quarkus.io/guides/cdi-reference#how-to-generate-a-jandex-index

Generating and shipping the index is only a small overhead that is
probably not worth an additional client option.
2021-08-22 11:57:28 +08:00
William Cheng
14c7e80111 add @turkeylurkey as microprofile template creator 2021-08-22 11:56:57 +08:00
Hugo Alves
197cdac1e0 [JAVA][FEIGN] Automatically retry request that fail due to a 401 or 403 (#10021)
* Renew the access token after receiving a 401/403

Feign clients tries to renew the access token after it receives a 401 or 403. It Retries the request 1 time

* Add unit test for exhausted retries

* Update samples
2021-08-22 11:45:04 +08:00
Antoine Reilles
4a9a922abf java cxf generator should not depend on jaxb when not withXml (#10204)
Only depend on jaxb when whichXml is true.
This makes things much easier with java11
2021-08-22 11:42:56 +08:00
Hippolyte HENRY
5b072ea66b Add extension to store oneOf/anyOf/allOf objects as full properties (#9977) 2021-08-22 11:35:03 +08:00
William Cheng
90fca17de1 [haskell-yesod] Better code format, mark generator as beta (#10222)
* better code format, mark haskell-yesod as beta

* fix copyright

* update doc
2021-08-22 11:31:38 +08:00
William Cheng
3de5483aa0 [JAVA] Add apache httpclient library to java clients (#10218)
* Add apache java client option

* Add sample apache client config

* Switch serialization library, use time formatter

* Add pom template for apache dependencies

* Add initial implementation of ApiClient using apache

* Add apache api template

Plus switch to TypeReference to handle generic types

* Add support for sending json data

* Generate test stubs with @Ignore

* Add accept header

* Remove unnecessary builder assignments

* Set responseHeaders instance variable

* Switch to general serialize / deserialize functions

* Handle sending url encoded form data

* Split response processing into new method

* Allow requests without body

* Use general HttpResponse interface

If the method doesn't need to close it

* Use clients connection timeout

* Add constructor accepting custom client

* Handle multipart and direct file uploads

* Support file downloading

Based on the implementation in the jersey client

* Handle missing content disposition

* Raise error if body given for an unexpected method

* Use try with resources for response handling

* Remove unused url parameter encode method

* Handle content type parse exception

* Improve response content type handling

Would have had issues with content type headers containing a charset

* Make all set methods return client

* Add basic readme

* Send content type with files

* Set domain and path on cookies

Otherwise they will be excluded from the request

* Use consistent quoting in error messages

* Add generated apache sample

* Add generated docs changes

* update samples

* rename library, update samples, docs

* update readme

Co-authored-by: Harry White <hwhite@atlassian.com>
2021-08-22 11:17:31 +08:00
William Cheng
4fcf1f56fb update samples, doc 2021-08-22 01:49:22 +08:00
Ghufran Zahidi
a71258d7f7 [chsarp-netcore]handle the exception to get correct error message. (#10207)
* handle the exception to get meaningful message.

* minor code format enhancement, update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-08-22 01:24:24 +08:00
Kenzo Yotsuya
4e3a98cee4 New server generator for Haskell/Yesod (#10193)
* Add a new server generator for Haskell/Yesod

* Fix missing locale
2021-08-21 23:57:18 +08:00
Isaac van Bakel
aff4d2f4c2 Correct #9916, fix Produces instances (#10185)
While the fix in #9916 correctly made endpoint types which did not
produce content return the `NoContent` type, those endpoint still
generated `Produces` instances with the wrong mime types due to not
resetting the `hasProduces` variable. This corrects that fix so that the
`Produces` instance for `MimeNoContent` is generated instead of any
other instance.
2021-08-21 22:52:14 +08:00
Johannes Wienke
f47dc4d84b Document JSON-B as microprofile client target (#10172)
The documentation for the Java microprofile client wrongly states that
Jackson is used. This commit corrects this to JSON-B.

Relates to: #8015
2021-08-21 22:32:04 +08:00
Esteban Gehring
65e9e92282 enable typescript unit tests (#10211)
* enable typescript unit tests

* disable failing isomorphic fetch tests
2021-08-21 10:04:47 +02:00
Richard Willis
ff13923f55 [typescript-fetch] Fix config getter type issue (#10216)
The return type now matches the config fetchApi type
2021-08-21 08:32:32 +02:00
Kuzma
3fd5e4111f [Typescript] Add application/x-www-form-urlencoded content support (#9960)
* Add application/x-www-form-urlencoded content support

* cs fix

* cs fix

* add samples

* fix double content type

* fix samples

* fix util.canConsumeForm

* revert unrelated ghanges

* regenerate samples

* change includes to indexof

* regenerate samples

* regenerate samples
2021-08-20 16:07:43 +02:00
Esteban Gehring
8462bf3790 typescript-angular: copy tests to angular 11 samples (#10209) 2021-08-20 13:17:24 +02:00
Esteban Gehring
c772d8292b typescript-angular: fix angular tests by using in-memory fake backend (#10208) 2021-08-20 11:25:06 +02:00
Marius Møller
9312ed831f [Typescript-Angular] Fix invalid property in generated code
* fix_issue_10182

* Step 3

* update samples

Co-authored-by: Marius Møller <mm@carbuddii.com>
Co-authored-by: Esteban Gehring <esteban.gehring@bithost.ch>
2021-08-19 19:49:15 +02:00
BigBadBassMan
cf4523fa1b use specific jms/serializer annotation on simple date fields (#10048) 2021-08-19 13:30:46 +08:00
William Cheng
67cba32d3a update cpp-ue4 samples (#10194) 2021-08-19 12:24:54 +08:00
Christie Williams
7a64d5912c AnyType support for ruby generator (#10192) 2021-08-19 12:23:11 +08:00
Bradley Friedman
81269b867d [cpp-ue4] fix for generating formParams in json requests (#10177)
* fixed non-functional template which assumed a bodyParam requests and made no effort to construct json body from formParams.

* changed spaces to tabs for new lines from last commit

* fixed further indent and tab issues
2021-08-19 12:16:41 +08:00
Vikrant Balyan
245aec14eb [python] Fixes a breakage while deserializing the read-only attributes (#10155)
* fixes a breakage while deserializing the read-only attributes

* updating generated samples

* taking care of the PR comments

* updating samples

* protect against cases where _spec_property_naming may not be present

* updating samples

* adding tests for this issue

* other generated files

* taking care of the comments

* updating the generated samples

Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
2021-08-18 12:01:58 -07:00
Adrien Guerard
a7de7095a7 [Java][Native] Add an async response interceptor in ApiClient (#10027)
Prior to this change, clients generated with asyncNative=true
could not intercept the responses using the existing repsonse
interceptor. This adds another response interceptor solely for
asyncNative=true clients.
2021-08-18 21:11:29 +08:00
Ahmed Fwela
63562dc2c3 [dart-dio-next] Improve handling nullable objects (#10118)
* handle nullable objects

* reverted java code

* Rewrote type generation to be recursive

* checking for isRequired only makes sense in the model class

* remove comments

* remove whitespaces

* regen samples

* use const once https://dart.dev/guides/language/effective-dart/usage#dont-use-const-redundantly

* remove const from mustache

* added space between comma and type

* fixed formatting

* remove commas

* regen samples

* bad whitespaces
2021-08-18 18:28:06 +08:00
William Cheng
97b92e351b replace tabs with spaces 2021-08-18 17:22:38 +08:00
William Cheng
cba76c4b91 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-08-18 16:44:09 +08:00
William Cheng
a26422cfa2 update samples 2021-08-18 16:43:55 +08:00
Nikita Karnaukh
2be2195660 fix registering gradle tasks when apply plugin to project (#10079)
Co-authored-by: n.karnaukh <n.karnaukh@tinkoff.ru>
2021-08-18 16:42:27 +08:00
guy-har
50acdcb4a3 Fix python generated markdown documentation for Jekyll (#10111)
* Fix python generated markdown documentation

* Generated `build the project` and upate sample scripts
2021-08-18 16:25:30 +08:00
Marc Lherbette
d9f3a02d5b Fix #8890 (part 2) in every JaxRS pom.mustache templates (#10132) 2021-08-18 16:23:48 +08:00
michaelgrahamevans
4da3d45c21 [markdown] Add primitive types to Markdown generator (#5449) (#10106) 2021-08-18 16:20:02 +08:00
Johannes Wienke
c71e66835b [Java] Add missing imports for Set in java clients (#10171)
* Add missing imports for Set in microprofile client

In case of array properties declared with uniqueItems: true, the
generated Java code uses Sets but imports are not present for them in
the Api and Test classes.

* Add missing imports for Set in java native clients

In case of array properties declared with uniqueItems: true, the
generated Java code uses Sets but imports are not present for them in
the Api and Test classes.
2021-08-18 15:48:12 +08:00
William Cheng
0204bf4ae2 Squashed commit of the following:
commit c5a0d0f7394aa742fa336fff7e7c1d3049761868
Merge: 8c4991ba3e f8ff8c8760
Author: William Cheng <wing328hk@gmail.com>
Date:   Tue Aug 17 18:28:12 2021 +0800

    Merge branch 'mustache-linting' of https://github.com/NathanBaulch/openapi-generator into NathanBaulch-mustache-linting

commit f8ff8c8760
Author: Nathan Baulch <nathan.baulch@gmail.com>
Date:   Thu Aug 5 14:12:47 2021 +1000

    Reorder tags that handle missing values

commit f5d8a33709
Author: Nathan Baulch <nathan.baulch@gmail.com>
Date:   Thu Aug 5 14:08:59 2021 +1000

    Use dot notation where possible

commit 493d14921e
Author: Nathan Baulch <nathan.baulch@gmail.com>
Date:   Thu Aug 5 14:10:49 2021 +1000

    Remove empty tags

commit 32480dc53f
Author: Nathan Baulch <nathan.baulch@gmail.com>
Date:   Thu Aug 5 10:41:58 2021 +1000

    Remove redundant sections

commit a8edabd722
Author: Nathan Baulch <nathan.baulch@gmail.com>
Date:   Wed Aug 4 22:02:22 2021 +1000

    Trim extra EOF new lines

commit e89bd7458e
Author: Nathan Baulch <nathan.baulch@gmail.com>
Date:   Wed Aug 4 21:59:26 2021 +1000

    Trim trailing whitespace
2021-08-17 18:37:51 +08:00
agilob
7edddb6531 Add map property in url params (#10154)
* Add map property in request params

* Regenerate samples to include map in url property
2021-08-17 18:31:53 +08:00
Peter Leibiger
4cbb33bb28 [dart][dio] Parameter with default value must not be required (#10163)
Fixes a bug introduced in #10147
2021-08-17 18:30:48 +08:00
William Cheng
8c4991ba3e minor update to use 5.3.0 (#10168) 2021-08-17 18:26:50 +08:00
Guillaume TOURBIER
9ece1b5111 [Java] refactor: improve additionalModelTypeAnnotations generation (#8269)
* refactor: improve additionalModelTypeAnnotations generation

Split by ';' and/or newline
Trim value

fix: #7032

Run ./bin/generate-samples.sh to regenerate model files

Revert "Run ./bin/generate-samples.sh to regenerate model files"

This reverts commit da509c39f363da046fbd457e1ab67ef0f62f3561.

refector: remove unnecessary import

test: multiples tests for AdditionalModelTypeAnnotations

Add a getter to test the list

refactor: remove duplicate AdditionalModelTypeAnnotations

Without using Set to avoid any side effect somewhere, I use stream and
distinct to avoid duplicates

refactor: using Set instead of stream

Remove stream distinct for performance reason, use newHashSet
Keep AdditionalModelTypeAnnotations as List

doc: update info additionalModelTypeAnnotations

refactor: move doc in code for autogen

style: tab in java class

doc: run ensure-up-to-date

refactor: add imports lost in rebase

docs: regenerate docs

docs: update

* fix: docs
2021-08-17 18:10:19 +08:00
William Cheng
da5d611ca9 update readme 2021-08-16 21:41:55 +08:00
William Cheng
764a462711 Merge remote-tracking branch 'origin/5.3.x' 2021-08-16 21:38:34 +08:00
William Cheng
8403e59aa0 Prepare 5.2.1 release (#10161)
* prepare for 5.2.1 release

* update samples
2021-08-16 19:08:29 +08:00
William Cheng
d10880cf51 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-08-16 17:28:31 +08:00
William Cheng
2d8ee32174 skip php client tests due to newer version required 2021-08-16 17:28:16 +08:00
Vikrant Balyan
849fec29b0 [CSharp-Netcore][Go] Optimize time taken to generate CSharp code (#10152)
* adds memoization to speed up csharp code generation

* takes care of review comments

* memoize adds to toModel for Go generator as well

Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
2021-08-16 12:11:04 +08:00
William Cheng
8eb31d0c7c minor improvements to php-dt generator (#10159) 2021-08-16 12:05:02 +08:00
William Cheng
87554ecb2d [java][micronaut] minor improvements (#10158)
* mark java micronaut generator as beta

* update doc
2021-08-16 12:04:42 +08:00
William Cheng
74671fa242 update doc 2021-08-15 23:02:36 +08:00
William Cheng
23fdd1b7d8 update samples 2021-08-15 22:41:42 +08:00
Andriy Dmytruk
09aa7bfd0a Add support for Micronaut Client (#10063)
* Create initial version of openapi micronaut generator

* Update validation, authorization, query parameters and time format

* Move micronaut to its own generator

* Add micronaut documentation

* Refactor and add tests to JavaMicronautClientGenerator

* Refactor model mustache for micronaut client

* Refactor model enum and pojo mustache files for micronaut client

* Move micronaut client generation to micronaut 3.0.0-M5 version

* Generate samples for micronaut client

* Add hidden files of generated samples for micronaut client

* Add and configure micronaut tests as maven profile

* Add option to choose between junit and spock for micronaut client generator

* Add tests for micronaut 'build' and 'test' options; regenerate micronaut samples
2021-08-15 22:36:45 +08:00
Arthur Mogliev
2210c9f016 [PHP] New client generator php-dt (#10041)
* - new PHP client generator php-dt

* - samples regen after rebase

* - README update

* - fix missing options for php-dt-modern config

* - use another workaround to prevent special treatment of form media types in DefaultGenerator - GlobalSettings usage mangled behaviour of other generators
- fix of missing spaces in generated docs

* - samples update after rebase
2021-08-15 22:15:44 +08:00
David Hutchison
fce10c7284 fix: correctly checks the hash file when using a classpath input spec (#9840)
The skipIfSpecIsUnchanged did not work when the input spec came from a
classpath resource, which could lead to infinite build loops when the
plugin was used in eclipse

#5805
2021-08-15 16:04:57 +08:00
Peter Leibiger
5fe76c2453 [dart][dio] Nullable parameters & defaults for header/query parameters (#10147)
* respect the nullable flag for all parameters (except path params where this is not allowed)
* generate default values for header and query parameters that are not collections
* we can not handle default values for collection with built_value atm. (not const)
* we can not handle default values for form/body parameters atm. as those can be enums which we can not construct easily
2021-08-15 13:49:32 +08:00
LeComptoirDesPharmacies
7d35e8dd9b [python-flask] Fix NoneType when deserialize optional date (See #5813) (#10081)
* Bug #5813 :

As "deserialize_date" and "deserialize_datetime" are used outside of "deserialize_model", we should check 'None' value before parsing string.

* Bugfix 5813 :

Update samples and docs
2021-08-15 00:41:14 +08:00
shayan-eftekhari
8569ff8203 [cpp-pistache-server] Fix missing semicolon in template and missing code to set default values of model schema (#10136)
* BUG FIX: A missing semicolon in cpp-pistache-server generated code.

* BUG FIX: Provide default values of schema in cpp-pistache-server generated code.

* BUG FIX: Provide default values of schema in cpp-pistache-server generated code.
2021-08-15 00:32:14 +08:00
Ahmed Fwela
55ff5a0807 Don't use encodeCollectionQueryParameter on maps (#10116) 2021-08-13 23:16:09 +08:00
Ghufran Zahidi
8ee400305b Fixed the utc time issue for httpSigning auth. (#10139) 2021-08-13 22:47:46 +08:00
Peter Leibiger
c72e69f28a [dart][dio] Update built_value to =>8.1.0 (#10122) 2021-08-13 12:57:30 +08:00
Ween Jiann
6a9c8077e1 Add Inquisico to list of generator users (#10142) 2021-08-13 12:13:28 +08:00
Richard Kolkovich
c58326ad2f add my companies to README (#10146) 2021-08-13 12:10:34 +08:00
Hui Yu
bd8efe2f91 [C][Client] Allocate memory for the element of array when the type is number (#10124) 2021-08-11 21:12:46 +08:00
William Cheng
7dcca2e891 update samples 2021-08-11 12:10:37 +08:00
Sampo Kivistö
f9dd448451 Fixed typo in csharp-netcore httpclient generated code (#10119) 2021-08-11 10:58:58 +08:00
Marley
d0788cdbc1 Typescript-angular: Added missing semi colon to interface export in apis.ts template file. (#10121) 2021-08-10 14:00:57 +02:00
Marius Møller
664aa2d946 Fix issue 10020: [BUG] [typescript-angular] Add "header" to reserved words (#10091)
* Rename queryParameters to localVarQueryParameters

* Rename headers to localVarHeaders

* Rename credential to localVarCredential

* Rename httpHeaderAcceptSelected to localVarHttpHeaderAcceptSelected

* Rename formParams to localVarFormParams

* Rename useForm to localVarUseForm

* Rename convertFormParamsToString to localVarConvertFormParamsToString

* Step 3

* update doc

Co-authored-by: Marius Møller <mm@carbuddii.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-08-08 20:48:00 +02:00
Tino Fuhrmann
ccccb6aa67 Add missing samples for #9857 2021-08-07 23:48:41 +02:00
NouemanKHAL
74e28a7709 [typescript] FIX: Generate documentation and examples #9413 (#9857)
* generate docs for typescript

* commit changed files

* Fix NullPointerException on ComposedSchema

* Fix merge issues
2021-08-07 23:27:13 +02:00
Justin Black
cb71ae95a6 Feat adds has discriminator with non empty mapping (#9667)
* Adds hasDiscriminatorWithNonEmptyMapping getter and setter

* Removes venv

* Adds hasDiscriminatorWithNonEmptyMapping to CodegenModel

* Removes python-experimental folder

* Adds hasDiscriminatorWithNonEmptyMapping to CodegenProperty

* Adds hasDiscriminatorWithNonEmptyMapping to CodegenParameter

* Adds hasDiscriminatorWithNonEmptyMapping to CodegenResponse

* Sets hasDiscriminatorWithNonEmptyMapping in codegenModels

* Samples updated

* Adds getHasDiscriminatorWithNonEmptyMappin checks in existing discriminator tests
2021-08-07 07:52:10 -07:00
devhl-labs
930643b7bc Add switches (authentication collections) to support files (#9884)
* added authentication switches to support files

* build samples

* build samples

* added documentation
2021-08-07 21:54:23 +08:00
Ahmed Fwela
dbd80fbf8a [dart-dio-next] improve encodeCollectionQueryParameter to handle cases where collectionFormat is null (#10105)
* improve encodeCollectionQueryParameter to handle cases where collectionFormat is null

* updated samples
2021-08-07 21:53:36 +08:00
Ween Jiann
11d29eb22b [go-server] Feat: add required assertions to models (#10068)
* Add RequiredError

* Add IsZeroValue helper

* Add AssertRequired method to all models

* Add AssertRequired call for body param

* Regenerate files

* Add DisallowUnknownFields

* Regenerate samples

* Use hasRequired in model to remove unnecessary code

* Revert disallowUnknownFields

* Use isAdditionalPropertiesTrue for disallowing unknown fields

* Updated samples

* Fix indent

* Add require checks for nested slices

* Add new tests

* Regenerate samples

* Regenerate samples after merging
2021-08-07 21:29:14 +08:00
Yorick Holkamp
189b44b191 [dart2] Include request body on DELETE call (#10100)
* Include request body on DELETE call

This change updates the generated `ApiClient` to include the request body on DELETE calls. [Per the RFC on page 2][1], DELETE calls are allowed to have a request body, even though the behavior may be undefined. I've not come across many APIs that use this behavior but there are a few, in particular the [Ory Kratos API][2] does so, not forwarding the body prevents such an API from being used. An API spec that does not define a request body should continue to function as expected.

[1] https://datatracker.ietf.org/doc/html/rfc7231#section-4.3.5
[2] https://www.ory.sh/kratos/docs/reference/api/#operation/submitSelfServiceLogoutFlowWithoutBrowser

* Samples generated with dart2 template change
2021-08-07 21:11:03 +08:00
James Gilliland
09a4da0970 Make php's array a primitive (#10093)
Fixes a bug where code generation would sometimes treat arrays as
objects and break serialization and code documentation.
2021-08-07 21:02:40 +08:00
Timothy Langer
ac1ef4bdeb Fix typo (preffer -> prefer) (#10098) 2021-08-07 20:57:43 +08:00
ND Tai
fe63b0e28e Fix typo on rust client (#10096) 2021-08-07 20:53:27 +08:00
Richard Willis
6d8791c3da [typescript-fetch] Fix double comma arguments due to initOverrides. Refs #10050 (#10101) 2021-08-06 10:21:05 +02:00
Braden Mars
39901c824f [typescript-inversify] fix: Sets IsCollectionFormatMulti to true on multi file uploads (#9796) 2021-08-06 09:25:10 +02:00
ota42y
e2ff39d3e3 [TypeScript-fetch] disable lint in index file (#9675)
* [TS] disable lint in index file

We disable lint in typescript-fetch in this PR
https://github.com/OpenAPITools/openapi-generator/pull/4110

But we doesn't disable index.ts files so we'll get error with [no-cycle](https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/no-cycle.md) rule.

- index.ts [import all classFiles](https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/resources/typescript-fetch/models.index.mustache#L4) to exporting
- When model use another models (i.e. article model have user model as author), model import another model [using index.ts](https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/resources/typescript-fetch/modelGeneric.mustache#L10)

So we need disable all generated file.

* generate files

Co-authored-by: Esteban Gehring <esteban.gehring@bithost.ch>
2021-08-06 09:22:24 +02:00
Richard Willis
c4b9804139 [typescript-fetch] Add initOverrides (#10050)
You can now pass in fetch initOverrides per request.

This change is mainly to add support for request cancellation (via AbortSignal).
2021-08-06 09:14:52 +02:00
duxiaofeng
c05ec99182 make typescript-fetch code compatiable with nodejs environment (#10072) 2021-08-06 08:59:40 +02:00
Peter Leibiger
75181210d5 Add tests for enum query encoding (#10054) 2021-08-05 18:16:59 +08:00
Nathan Baulch
ca5de9d503 [php] Deprecated annotation on operations and fields (#10085) 2021-08-04 17:29:19 +08:00
Nathan Baulch
dc23267580 [csharp] Obsolete attribute on deprecated operations and properties (#10084) 2021-08-04 17:28:45 +08:00
William Cheng
865510ea59 Update test build files to the latest SNAPSHOT version (#10090)
* fix versions in test build files

* test branch

* Revert "test branch"

This reverts commit 00ce0f029d.
2021-08-04 17:03:54 +08:00
Peter Leibiger
ccd23ec75a [dart-dio] Fix parameter generation problems (#10061)
* fix parameter with list of `MultipartFile` being generated as single `MultipartFile`
* generate serializer factories for all container params, not only body params
* fix compilation errors when `skipFormModel=false`
2021-08-04 14:25:26 +08:00
Gareth Smith
98e4eb708f [BUG]Java] Fix a race condition in RetryingOAuth.mustache (#10087)
If there were multiple concurrent requests at a time at which the OAuth token had expired, only a single request would be retried. The other requests would fail because of the expired token, but not be retried and so the failures would be propagated to the caller.
2021-08-04 10:06:39 +08:00
William Cheng
4d0a40e982 update samples 2021-08-04 01:21:22 +08:00
Nathan Baulch
c1c5775271 [go] More idiomatic godoc comments (#10044)
* [go] More idiomatic godoc comments

* [go] Mark deprecated fields and functions

* [go] Minor mustache readability/consistency fixes

* [go] Mark deprecated operation parameters

* [go] Deprecate a petstore component property for testing

* [go] Apply deprecated godoc in Go servers also
2021-08-03 17:11:16 +08:00
Sem Schilder
4210b41f84 [php-symfony] Add backslash to "load" namespaces from global namespace (#9740)
* Add backslash to load namespace from global namespace

* Update example

* Remove hardcoded slash

* Add backslash from java side

* Update samples

* Fix first sample

* Fix other snapshot

* Update version file
2021-08-03 17:09:52 +08:00
William Cheng
c28c1253a4 fix missing jackson-databind-nullable in okhttp java client (#10078) 2021-08-03 17:07:14 +08:00
Hui Yu
c21e6de7da [C][Client] Treat the data type "byteArray" same as "string", part 2 (#10067) 2021-08-03 16:50:14 +08:00
Ween Jiann
bea17c9d68 [typescript] Fix: any type (8 liner PR) (#10080)
* [typescript] Fix: any type (1 liner PR)

* Add toAllOfName override

* Add tests

* Add line at EOF
2021-08-03 16:48:20 +08:00
William Cheng
31eb65ab67 [C#][netcore] minor bug fixes (#10074)
* fix property name, fix enum comment

* update doc
2021-08-03 16:43:39 +08:00
William Cheng
0ceeddb441 fix path and query parameters encoding (#10069) 2021-08-03 16:43:21 +08:00
William Cheng
594d08a7a4 update kotlin auto-generated test to avoid npe (#10058) 2021-08-02 18:44:03 +08:00
William Cheng
ec49dc3fed [Kotlin] minor bug fixes (#10071)
* fix http basic auth, deprecate option, escape special property name

* update doc
2021-08-02 18:04:38 +08:00
Noor Dawod
e39e4bcd6e Kotlin client/spacings indentations (#9853)
* Bump jimschubert/query-tag-action from 1 to 2

Bumps [jimschubert/query-tag-action](https://github.com/jimschubert/query-tag-action) from 1 to 2.
- [Release notes](https://github.com/jimschubert/query-tag-action/releases)
- [Commits](https://github.com/jimschubert/query-tag-action/compare/v1...v2)

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

* Adjust spacings, bring back suppresses to silence IntelliJ IDEs.

* Suppress few warnings since we know we are using them in the code.

* toLowerCase() is deprecated.

* Wrap enum values in backticks to guard against reserved names, bring back encode/decode for each enum.

* Wrap property names in backticks to guard against reserved names.

* Regenerate samples.

* Do not warn about unused imports.

* Regenerate samples.

* Updated petstore code.

* Add missing reserved Kotlin operators and special keywords.

* Revert adding backticks.

* Regenerate pet store shop code.

* Remove unused suppression.

* Use 3 braces to wrap name.

* Regenerate pet store shop code.

* Remove get from reserved words.

* Revert back removal of description.

* Regenerate source code for Petstore.

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-02 17:38:22 +08:00
Ghufran Zahidi
e5ce66aae6 [csharp-netcore]Model's FromJson method check for jsonstring is not nullOrEmpty before deserializing (#10060)
* check for jsonstring is not nullOrEmpty before desrializing for oneOf and anyOf

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-08-02 11:35:00 +08:00
William Cheng
fc28661dde add AnyType support to Kotlin (#10070) 2021-08-02 00:19:05 +08:00
William Cheng
70982ddc75 update samples 2021-07-31 21:28:10 +08:00
Mike
831034bb24 Move the JsonbProperty annotation from the getter to the field declaration (#10035)
Co-authored-by: Mike Anderson <mike.d.anderson@oracle.com>
2021-07-31 21:19:44 +08:00
Nathan Baulch
6686048b0e Specify templateDir in all sample configs (#10062) 2021-07-31 18:45:35 +08:00
Bruno Coelho
8a714f48d3 [Kotlin][Client] improve imports (#10052) 2021-07-29 18:02:20 +08:00
Piotr Krzemiński
b1a009803e [Kotlin][Multiplatform] Add missing JVM dependency (#10051)
This dependency was accidentally removed in PR #9755 where we switched
from `build.gradle` to `build.gradle.kts`.
2021-07-29 18:01:44 +08:00
Stefan Burnicki
d18ee5459c [kotlin-spring] Support model objects and date-time query params (#8257)
* [kotlin-spring] Support query params with model objects (#8080)

Must fix #8080

* [kotlin-spring] Support parsing date and date-time parameters

adopted #3860 for kotlin-spring

Co-authored-by: Мышкин Максим <m.myshkin@tinkoff.ru>
2021-07-29 10:37:31 +08:00
Ween Jiann
870ef3a87a [go-server] Allow user to specify how errors are handled (#9764)
* Added error.go

* Updated controller to use error

* Fix redeclared func

* Add generated files

* Merge

* Added docs

* Remove variadic

* Regenerate files

* Updated go doc to meet standard

* Updated doc to meet go standard

* Updated
2021-07-28 17:19:47 +08:00
William Cheng
4c8c576a0f add new file 2021-07-28 11:13:49 +08:00
William Cheng
d68c14cf98 use fully qualified name for Pageable (#10045) 2021-07-28 11:03:24 +08:00
Oleh Kurpiak
b1cc7445a0 [Java][Spring] fix Spring RequestMapping (#9900) 2021-07-27 14:27:47 +08:00
William Cheng
fcdc9d49f7 update samples 2021-07-27 14:16:55 +08:00
unintended
68d48ea03a Store uri template attribute for webclient to store in metrics (#9964)
* store URI template attribute for webclient

* generate samples
2021-07-27 14:13:24 +08:00
Oleh Kurpiak
aa4018d09b [Java] fix nullable arrays when JsonNullable is used (#10012) 2021-07-27 13:57:07 +08:00
Richard Moorhead
ddd23ab197 fix java8 datetime jaxrs-resteasy (#10014) 2021-07-27 13:51:31 +08:00
William Cheng
3825a20ddc update samples 2021-07-27 11:42:45 +08:00
William Cheng
56aafe30d9 Merge remote-tracking branch 'origin/master' into 5.3.x 2021-07-27 11:33:35 +08:00
William Cheng
2f18bbe1c7 Remove @swipesight (2018/09) from Dart tech committee (#10042) 2021-07-27 11:32:10 +08:00
Peter Leibiger
88e22b0a52 [dart][dart-dio-next] Authentication fixes and improvements (#9975)
* [dart-dio-next] Update http mock test library

* [dart-dio-next] Fix authentication problems

* correctly map authentication by type and scheme
* add new authentication interceptor for `bearer` scheme - this currently does the same as the OAuth interceptor
* add tests for all authentication types except OAuth
* use temporary test library branch until new fixes and features get merge there

* Actually commit the fixed test library dependency

* Update http mock library

* Format :/
2021-07-27 10:04:05 +08:00
Hui Yu
5fb845a58f [C][Client]Treat the data type "byteArray" as "string" (#10034) 2021-07-27 00:10:36 +08:00
William Cheng
f0ebcd56d1 [Java][resttemplate] better code format (#10033)
* java restemplate: better code format

* update samples
2021-07-25 16:07:04 +08:00
Robin Trietsch
8eba70dd3d [BUG][Kotlin] Add support for collection of generic classes (Jackson / Gson / Moshi) (#9918)
* Cherry picked commits from add-support-for-collection-of-generic-classes

* Regenerated samples

* Missing work by @adamsz-lume

* Try to fix maven plugin error

Co-authored-by: Bruno Coelho <4brunu@gmail.com>
2021-07-24 23:04:14 +08:00
Sebastian Weddmark Olsson
888f9cd84a [erlang-server] Dialyzer spec (#9983)
* [erlang-server] Fix dialyzer spec

* add generated file
2021-07-24 22:37:40 +08:00
William Cheng
5d6431d799 Add a link to Line engineering video (#10030) 2021-07-24 21:52:21 +08:00
William Cheng
38a2fac37e migrate rust client samples to 3.0 spec (#9999) 2021-07-23 11:22:20 +08:00
Yuriy Belenko
fe9636e9d9 [php] Fix Composer 2 name error (#10002)
* Fix obvious typo

* Add function to build Composer package name

* Add composerPackageName codegen property

* Use package name if it's not empty

* Refresh samples
2021-07-22 10:32:11 +08:00
Oleh Kurpiak
9e314d165b [Java][Server] remove snapshot dependency (#9997) 2021-07-21 22:53:23 +08:00
Jorge Rodríguez Martín
e568376a01 [Java][RestTemplate][WebClient] Templatized query params for metrics and evicts oom (#9871)
* [Java][RestTemplate] Templatized query params for metrics and evicts oom

* [Java][WebClient] Templatized query params for metrics and evicts oom

* [Java][RestTemplate] Templatized query params for metrics and evicts oom

* Update samples

* [Java] Add javadoc

* [Java] Update samples
2021-07-21 17:03:19 +08:00
sigand
352ff98dff Fix Kotlin default values for strings and arrays (#9865)
* Properly escape default values

* Support default values for array types

* Use Kotlin initializers, not Java

Co-authored-by: Sigrid Andersson <sigrid.andersson@entur.org>
2021-07-21 15:58:16 +08:00
Christopher Gretzki
d23915a7b4 [swift5 client] fix filename for binary downloads (#9989)
* fix-filename-from-header-response-retrieval: fix early exit of iteration

before a match could be found

* fix-filename-from-header-response-retrieval: fixed same bug for alamofire usage too

* fix-filename-from-header-response-retrieval: build project and update samples

Co-authored-by: Christopher Gretzki <gretzki@adesso-mobile.de>
2021-07-21 12:37:48 +08:00
Yuriy Belenko
1d648223e6 [php] Set PHP version to 7.3 (#9986)
* Remove 7.2 from TravisCI config

* Bump Composer PHP requirement

* Bump PHP version in docblocks

* Add PHP 8 notice to readme

* Refresh samples
2021-07-20 21:06:50 +08:00
Michael Marner
e20ccd49ed 9955 dart-dio-next only remove typed_data import if safe (#9956) 2021-07-19 17:27:46 +08:00
William Cheng
2e1b028ccd update samples 2021-07-19 11:43:03 +08:00
William Cheng
e263e6acc0 [Java] update test samples (#9972)
* remove new java samples

* java feign, webclient use fake petstore for tests

* update samples
2021-07-19 11:08:44 +08:00
Marcel Stör
c5f5d3dd6a [Java] Add @javax.annotation.Nonnull to required getters (#9593)
* Add @javax.annotation.Nonnull to required getters

* Add updated samples

* Consider the nullable constraint
2021-07-19 10:48:58 +08:00
Jon Jensen
bd070308d9 [Java][*] Annotate deprecated operations and schemas (#9478)
Refs #3358

Ensure `deprecated` operations are annotated/documented as such on the
generated methods. Libraries updated:
  * [feign]
  * [google-api-client]
  * [microprofile]
  * [okhttp-gson]
  * [resttemplate]
  * [retrofit]
  * [retrofit/play*]
  * [webclient]
  * [vertx]

Ensure `deprecated` schemas are annotated/documented as such on the
generated classes/fields. Libraries updated:
  * [feign]
  * [google-api-client]
  * [jersey2]
  * [microprofile]
  * [native]
  * [okhttp-gson]
  * [rest-assured]
  * [resteasy]
  * [resttemplate]
  * [retrofit*]
  * [webclient]
  * [vertx]

Also fix two minor bugs to get the java sample tests working:

* Fix an invalid jackson-datatype-threetenbp version number in vertx/pom.mustache
* Fix a bad return type in webclient/api_test.mustache when uniqueItems=true

Since this commit updates petstore-with-fake-endpoints-models-for-testing.yaml,
several other samples were updated, but it's just new files to reflect the
deprecated schemas, so there should be no consequential differences.

Relevant bits of the spec:

* https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#user-content-operationdeprecated
* https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#user-content-schemadeprecated
2021-07-19 10:27:03 +08:00
Florian Kamella
c42e03e251 Support openApiNullable in jaxrs-cxf-client generator (#8863)
* Introduce jaxrs-cxf-client-jackson-nullable sample

Generated using: ./bin/generate-samples.sh bin/configs/other/openapi3/jaxrs-cxf-client-jackson-nullable.yaml

* Add support for openApiNullable to JavaCXFClientCodegen

Add import mapping for JsonNullable to AbstractJavaCodegen

* Deduplicate string "jackson" in generators extending AbstractJavaCodegen

* Adjust nullable fields

* Adjust standard getters for nullable fields

add @JsonIgnore to standard getters

* Adjust standard setters for nullable fields

* Adjust fluent setter for nullable fields

* Introduce distinct getter and setter for nullable fields

* Adjust add method for nullable lists

* Adjust put method for nullable maps

* Cleanup JavaJaxRS/cxf/pojo.mustache

* Further cleanup JavaJaxRS/cxf/pojo.mustache

* Adjust inner enum getters
2021-07-19 10:22:52 +08:00
szTheory
6229801935 [Ruby] Add new Ruby versions to the Travis CI build matrix configuration (#9971)
* Add new Ruby versions to the Travis CI build matrix configuration

* Build the project and update samples
2021-07-19 09:57:55 +08:00
Peter Leibiger
5920bbd6df [dart] Fix tests failing in CI after automatic dependency update (#9961)
* prevent future problems of this kind by adding the pubspec.lock file to VCS for all 3 test projects
2021-07-16 21:05:23 +08:00
William Cheng
160db768af update cpp ue4 samples 2021-07-16 11:46:03 +08:00
Samuel Kahn
27e2ee0b64 [cpp-ue4] Added support for bool in URL parameters, now writes true/false instead of 1/0 (#9951) 2021-07-16 11:37:34 +08:00
Mikael Lixenstrand
2e030c0c47 [Erlang] decrease memory usage (#9946)
* do not keep generator_state in cowboy match structure

* update generated example
2021-07-16 11:34:18 +08:00
William Cheng
d99f16edc5 [C#][netcore] Remove redundant logic in adding ICollection (#9938)
* remove reduce logic in adding IColletion

* remove redundant logic in csharp client generator

* update samples
2021-07-16 11:33:40 +08:00
Toby Archer
8df43a10c1 [Elixir] Adding :package and :description to mix.exs template (#9945)
* feat: templating elixir's mix.exs :package and :description

* adding updated elixir sample
2021-07-16 11:16:18 +08:00
Isaac van Bakel
65a271c50b Haskell-http-generator - Make endpoints which don't return anything yield NoContent (#9916)
* Make endpoints which don't return anything yield NoContent

Relevant issue: OpenAPITools/openapi-generator#9901

The haskell-http-client generator tries to generate a polymorphic return
type for endpoints which don't return anything in the success case, but
still produce content in other cases. This means that these endpoints
hit a decoding error in the success case, because there is no content to
decode.

This changes the behaviour so that endpoints that don't return anything
are *always* generated as returning NoContent, and never try to decode
the response. This change is based on a similar one for the
haskell-servant generator, which can be found at:

OpenAPITools/openapi-generator#9830

which resolved a similar issue for that generator.

* Update samples after haskell-http-client NoContent change
2021-07-15 10:57:14 -05:00
William Cheng
79866e90cf update haskell servant samples 2021-07-13 21:03:07 +08:00
devhl-labs
519ab9290e [abstract csharp] Optional param data type (#9885)
* fix optional parameter dataType

* add test

* removed stray spaces

* improved test method name
2021-07-13 17:12:31 +08:00
Profpatsch
7bd633f1ae [haskell][server] Export the Wai Application for the server (#9801)
For tests it’s useful to have direct access to the Wai `Application`,
which is the plain function from `Request` to `Response`.

Then you don’t need to use a full-blown http server to run requests.
2021-07-13 17:00:06 +08:00
Jacob Heider
aa88d5bbe6 Swift5/Vapor query parameter coding keys required (#9924)
* Fixes camel-case query parameters (perPage => per_page)

* Prep for PR
2021-07-13 15:27:44 +08:00
Bruno Coelho
26f998b043 [kotlin][client] define kotlin coroutines context (#9936)
* [kotlin][client] define coroutines context

* [kotlin][client] update sample projects

* [kotlin][client] add missing kotlinx coroutines dependency

* [kotlin][client] update sample projects
2021-07-13 15:26:59 +08:00
William Cheng
7573234a4c Update PR template to refer to 5.3.x 2021-07-12 16:59:53 +08:00
Justin Black
11515da053 Python client - fixes boolean enum use case (#9926)
* Adds boolean enum component and object property and tests of it

* Regenerates samples

* Passes needed locale argument to toUpperCase

* Regenerates samples
2021-07-09 18:55:22 -07:00
William Cheng
39fbf53150 create v5.3.0 2021-07-10 00:12:23 +08:00
William Cheng
02835b35bc Prepare v5.2.1 (#9922)
* bump verions to 5.2.1-SNAPSHOT

* update samples

* update readme

* fix gradle properties
2021-07-09 22:42:31 +08:00
William Cheng
90f7bcd909 Prepare v5.2.0 release (#9920)
* 5.2.0 release

* update samples

* update meta codegen
2021-07-09 17:06:55 +08:00
Bruno Coelho
f5c3430a26 [swift5][client] avoid local variable name collision (#9913)
* [swift5][client] avoid variable name collision

* [swift5][client] update sample projects
2021-07-09 01:03:54 +08:00
John Boyes
7084a79ede [BUG][PYTHON] Do not set Content-Type for GET, HEAD or DELETE requests (#9852)
* [BUG][PYTHON] Do not set Content-Type for GET, HEAD or DELETE requests

The Python generator no longer sets a default `Content-Type` of
`application/json` for `GET`, `HEAD` and `DELETE` requests.

Having the `Content-Type` set for these requests was causing issues with
other tools which insist that GET, HEAD and DELETE requests do not have
a Content-Type (as per the OpenAPI 3 specification).

An example of the problem that this commit fixes is when using
[Prism][1] as a [validation proxy][2].

[Prism rejects any GET request that has a Content-Type][3].

Here is [an example of the problem manifesting itself][4].

To validate the fix in this commit:

1. Start with any OpenAPI3 spec e.g. the Petstore example at
https://editor.swagger.io/
2. Generate Python client code for the spec
3. Look at the generated `rest.py` e.g. in the [standard sample in this
repo][5] and see that the `Content-Type` defaults to `application/json`
for all HTTP methods (including `GET`, `HEAD` and `DELETE`), rather than
there being no `Content-Type` for `GET`, `HEAD` and `DELETE`.

Fixes #9831

[1]: https://github.com/stoplightio/prism
[2]: https://meta.stoplight.io/docs/prism/docs/guides/03-validation-proxy.md
[3]: https://github.com/stoplightio/prism/issues/1408#issuecomment-690948020
[4]: https://github.com/agilepathway/gauge-openapi-example/pull/28/checks?check_run_id=2888606052#step:13:18
[5]: 969cea8ce1/samples/openapi3/client/petstore/python/petstore_api/rest.py (L141)

* update samples

* Fix Python DELETE bug introduced in earlier commit

The earlier commit 9dfe1f6 introduced a bug for `DELETE` requests on the
standard Python generator.  This commit fixes that bug and also includes
the updated samples.

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-07-07 11:04:26 +08:00
William Cheng
60c4c88a74 update samples 2021-07-06 15:36:48 +08:00
William Cheng
046780657c fix regex in erlang, update samples (#9892) 2021-07-06 11:10:08 +08:00
Łukasz Leszczuk
efe0e1d7a0 Fix cancellation token usage for async calls in csharp-netcore. (#9841) 2021-07-05 13:11:45 +08:00
William Cheng
eb2e56dbb1 better code indentation 2021-07-05 09:30:51 +08:00
Katsuya Oda
a835f6ec0e fix: missing vendor extensions in inlined objects #8064 (#9810) 2021-07-05 09:16:35 +08:00
Jens Fischer
870c1e1894 [Java] [Native] Unify exception messages for async, add the status code (#9825)
* [Java] [Native] Unify exception messages for async, add the status code

The template has two methods for creating API exceptions, and the enhancements from #9169 didn't make it to the async version.

- unify the signatures of the two methods (name, arguments)
- make sure the sync version is not generated with asyncNative
- extract the formatting logic into a common formatExceptionMessage() method
- add the status code to the exception message as well, not just the body
- shortened "call received non-success response" to a more concise "call failed with"

* Treat an empty body the same as a null body

Co-authored-by: Jens Fischer <jens.fischer@vier.ai>
2021-07-05 08:57:40 +08:00
William Cheng
a5c98dd416 better null check to surpress sonarcloud warning (#9888) 2021-07-04 15:16:19 +08:00
cal
d2e79be728 [cleanup] erefactor/AutoRefactor - TestNG asserts (#9861)
AutoRefactor cleanup 'TestNGAssert' applied by erefactor:

Refactors to a proper use of TestNG assertions.

For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor
For erefactor see https://github.com/cal101/erefactor
2021-07-04 14:49:47 +08:00
cal
611a3effa6 [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9859)
AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor:

Replaces a string concatenation as parameter of a logger method by a
string template followed by objects.

For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor
For erefactor see https://github.com/cal101/erefactor
2021-07-04 14:47:52 +08:00
cal
54814caeb1 [cleanup] erefactor/EclipseJdt - Add missing @Override annotation - include interface implementations (#9860)
EclipseJdt cleanup 'AddMissingOverrideAnnotation' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.20/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-07-04 14:44:57 +08:00
William Cheng
b134e8e135 Fix GitHub action (#9887)
* fix missing jar

* add comment
2021-07-04 13:53:25 +08:00
dependabot[bot]
6c6525aa31 Bump actions/download-artifact from 2.0.9 to 2.0.10 (#9793)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2.0.9 to 2.0.10.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v2.0.9...v2.0.10)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-04 12:43:34 +08:00
dependabot[bot]
e345eef32c Bump actions/upload-artifact from 2.2.3 to 2.2.4 (#9794)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2.2.3 to 2.2.4.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.2.3...v2.2.4)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-04 12:43:08 +08:00
Bastien Gérard
510e64fa43 Fix minor typo in @cached_property docstring (#9886) 2021-07-04 12:29:55 +08:00
Matthias Ernst
17b6379df5 [Kotlin Multiplatform] Update and fixes for Kotlin 1.5.10 and Kotlinx.serialization 1.2.1 (#9755)
* Update Kotlin Multiplatform with Kotlin 1.5.10, Ktor 1.6.0 and Kotlinx.serialization 1.2.1
* remove @Serializable from interfaces
* Using 'String(CharArray): String' is an error. Use CharArray.concatToString() instead
* Fix, RequestConfig needs a type to infer type variable T

Fixes from @DevSrSouzaern
* Fix `private` keyword not being handle as a reservedWords
* Fix enum serialization generation
* Migrate gradle build to Kotlin DSL

* update samples and documentation

* PR Review changes
* sample update
* revert non multiplatform kotlinx_serialization removal
* default Json{} in ApiClient
* revert accidental version push for jvm client
* Match ktor and Kotlinx Serialization version in documentation and build.gradle.kts

* remove const from JSON_DEFAULT

* Update AbstractKotlinCodegen.java

Co-authored-by: Gabriel Souza <devsrsouza@gmail.com>
Co-authored-by: ern <ern@ti8m.ch>
2021-07-03 23:33:39 +08:00
William Cheng
173c7ca652 update powershell samples 2021-07-03 22:30:54 +08:00
SimeonGerginov
3663831b4d [REQ][PowerShell] Improve generated PowerShell examples (#9836)
* Implement new PowerShell example structure

Signed-off-by: Simeon Gerginov <sgerginov@vmware.com>

* Modify documentation template to work with the new PowerShell example format

Signed-off-by: Simeon Gerginov <sgerginov@vmware.com>

* Update PowerShell Generator documentation with the new properties

Signed-off-by: Simeon Gerginov <sgerginov@vmware.com>

* Update PowerShell samples with the new PowerShell example format

Signed-off-by: Simeon Gerginov <sgerginov@vmware.com>

* Fix issues with array of models as parameters

Signed-off-by: Simeon Gerginov <simeongerginov1@gmail.com>

* Change string value generation to include the prefix 'My'

Signed-off-by: Simeon Gerginov <simeongerginov1@gmail.com>

* Remove multiple new lines and trim leading and trailing spaces in PowerShell example

Signed-off-by: Simeon Gerginov <simeongerginov1@gmail.com>
2021-07-03 22:27:06 +08:00
Bernhard Danecker
32a3eb1655 fix generate-samples code sample line break (#9880) 2021-07-03 22:09:53 +08:00
Marc de Jonge
bba23272ff #9848 Add support for generating a Set for a list with uniqueItems set to true (#9849) 2021-07-01 17:56:28 +08:00
Adriaan Duz
147367e559 [Kotlin][Bug] Added open, external and internal as reserved keywords for kotlin (#9842)
* Added open, external and internal as reserved keywords for kotlin

* ./bin/generate-samples.sh
./bin/utils/export_docs_generators.sh
with only kotlin
2021-07-01 17:54:04 +08:00
Bernhard Danecker
f0cbfbc820 Updated openapi-generator-gradle-plugin/README.adoc to latest plugin version (#9874)
Updated docs to reference latest gradle plugin version with important support for gradle 7
2021-07-01 17:48:28 +08:00
William Cheng
cd2bd84bb6 update samples 2021-06-29 20:37:09 +08:00
Ghufran Zahidi
90233d6653 conditional serialization add only those property which user wants to… (#9807)
* conditional serialization add only those property which user wants to configure.

* fixed the samples

* fixed the sample String to string issue.

* fixed the sample String to string issue.

* updated the sample

* Added unit test for conditional serialization

* update samples

* remove trailing spaces, update samples

* remove files

* add back files

* build the project in the ci

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-06-29 20:28:47 +08:00
Florian Verger
b9b539459a Typescript angular discriminator mapping (#8929)
* remove trailing spaces

* add support of discriminator mapping for typecript-angular generator

* PR comment
2021-06-29 13:01:58 +02:00
William Cheng
919945b65b ensure haskell, erlang server samles up-to-date (#9851) 2021-06-26 18:53:07 +08:00
Michał J. Gajda
1cd1001e34 Fix returning NoContent. (#9830) 2021-06-26 18:20:59 +08:00
William Cheng
0f578d4a83 comment out ts inversify tests 2021-06-24 11:42:49 +08:00
Gabriel Rohden
44c1fee3e2 [dart] fix some compilation issues and added casts for analyzer implicit-casts flag (#8244)
* fix: missing dart casts and analyzer issues

* chore: regenerate dart template files

* refactor: remove unneeded implicit-casts:false and regenerate sources

* chore: regenerate templates after merge

* chore: regenerate dart pet store codes
2021-06-24 10:24:28 +08:00
bflamand
48e05ce162 [Typescript Fetch] New optional mode with redux saga & immutablejs (saga & records) (#8578)
* first commit: add cli option for saga and records. Added dummy sagas.mustache test file.

* More progress with default values. First prototype for isEntity and isUniqueId.

* record generation complete

* record generation complete

* progress with saga generation

* progress with saga generation

* first fully working saga generation

* merge with latest master

* removed unneeded "items" properties.

* moved global CodegenModel modifications into subclass ExtendedCodegenModel used exclusively by TypescriptFetchClient. Adding missing samples files.

* moved global CodegenOperation modifications into subclass ExtendedCodegenOperation used exclusively by TypescriptFetchClient.

* moved global CodegenProperty modifications into subclass ExtendedCodegenProperty used exclusively by TypescriptFetchClient.

* moved global CodegenParameter modifications into subclass ExtendedCodegenParameter used exclusively by TypescriptFetchClient.

* added the missing "allSagas" export.

* renamed & reworked "meta data response" flags to a more useful general concept of "operation return passthrough"

* added vendor flag keepAsJSObject as escape hatch to support circular dependencies in models and other special cases. Also fixed issues with default values for some records properties.

* added autodetection for passthrough to simplify standardised specs.

* fix small issue with passthrough void

* fix small issues with passthrough void and missing passthrough imports in some cases. Fix issues with enum default values.

* fix small issues with passthrough void and missing passthrough imports in some cases. Fix issues with enum default values.

* Added "reservedRecordField" feature to support remapping fields names that cannot be used in Records. Added missing export to record: toApi().

* added uniqueId inference. Fix small generation when uniqueId property is an array.

* removed feature "reservedRecordField" and replaced it with existing built-in "reserved words" feature. Fix minor issues with typings in generated files.

* Changed api recType names to make them less likely to cause name conflicts. Added generated ApiEntities (record, reducer & selector) files.

* Moved location of ApiEntities related files and fix issues with exports.

* - merge latest master
- renamed fake test apis to better fit the "pet theme"
- added mode for "SourceOnlyLibrary" (same as used in codegen typescript jquery)

* - missing ganarate sampless

* - Modified way to export apiEntitiesSelectpr to reduce typescript analysis time for consuming project. Removed tab characters in mustache files. Reformat code for TypeScriptFetchClientCodegen to try to remove false positive for tabs vs spaces.

* - added markErrorsAsHandled property to api sagas. Increased typescript version to address some typing errors on library build.

* - fix bug in saga interfaces. Upgraded to typescript "strict" mode to ensure proper typechecking info is generated.

* - added optional id for apiEntity selectors. Added toInlined() support to convert an entity to an inlined model recursively.

* - minor tweak for apiEntitySelector to accept null id

* - minor tweak for apiEntitySelector

* - runned ensure up to date.

* Revert "- runned ensure up to date."

This reverts commit ea9b4aed

* - runned ensure up to date.

* - runned ensure up to date.

Co-authored-by: Bruno Flamand <bflamand@stingray.com>
2021-06-24 00:07:17 +08:00
William Cheng
5bf4e77400 Add a link to blog post about openapi-generator (#9832) 2021-06-23 15:16:07 +08:00
Kevyn Liebersbach
77f84ec811 Limit depth of example code generation in RClientCodegen (#9822) 2021-06-23 11:29:48 +08:00
Kuzma
969cea8ce1 [Typescript] Fix oneOf (#9628)
* on of

* fix map

* samples

* file to any

* samples

* add unit tests

* clear code
2021-06-21 23:42:47 +02:00
Max Goltzsche
2e85ccdec8 [go-server] fix addResponseHeaders tpl option typo (#9814)
According to the [documentation](https://openapi-generator.tech/docs/generators/go-server) the go-server generator should support an `addResponseHeaders` option but a template uses an `addResponseHeader` option in some places which this PR fixes.

Closes #9795

Signed-off-by: Max Goltzsche <max.goltzsche@gmail.com>
2021-06-21 11:46:51 +08:00
William Cheng
939b5f6bb8 update samples 2021-06-21 11:24:46 +08:00
Mehmet YUCE
ccd031a3da Continuing from #1317 and its PRs for pistache server string enum code generation (#9786)
* Continuing from #1317 and its PRs for pistache server string enum code generation;
* A class that has an `anyOf` specification, in cpp side will have no members: in stead it should have a member having the type `classname_anyOf`
* Thus, Its `==` operator is not present or wrongly filled
* An string enum, should have a better usage, hence the `setEnumValue`
* this PR, is a brigde between `stringenumclassname_anyOf` and `stringenumclassname`
* `anyOf` specification is not just about `Enums`, so a better handling is needed from mustache templates, hence new template model parameter `isStringEnumContainer`

* PR fix: muttleyxd: `double semicolon`

* PR fix: wing328: `I think std::string is C++ only. What about adding x-is-string-enum-container instead in the postProcessModel operation in the C++ pistache server generator?`

* PR fix: wing328: `I think std::string is C++ only...` after fix get latest codes and then generate samples

Co-authored-by: Mehmet Fatih <mfyuce@netas.com.tr>
2021-06-20 22:13:38 +08:00
Sascha Peilicke
463d905664 Kotlin-Server: Optional metrics and upgrade to Ktor 1.5.4 (#9358)
Use Gradle 6.9 and Kotlin 1.4.32. Generate Paths for other HTTP verbs
(#828) and fix imports (#5640). Use 'object' when no parameters are
used. Introduce 'featureMetrics' to control metrics plugin usage. Remove
HOCON configuration parsing. This is provided by
`Application.environment.config already` and removes a dependency.

Resolves #9087, resolves #828, resolves #5640
Relates-To #5346
2021-06-20 22:03:44 +08:00
Prajon Shakya
015886fded [csharp][netcore] Update type "String" to "string" for consistent type (#9713)
* Updated 'String' to 'string' for consistent use of keyword

* Build project and update samples for csharp-netcore
2021-06-19 12:42:33 +08:00
William Cheng
c5405aa59a [Go-client] Fix inability to download files (#9812)
* Revert a change to the Go Client code that broke
the ability to download files. This reverts the change
from 14d41310b9

* Missed import for "io/ioutil"

* update samples

Co-authored-by: icubbon <icubbon@gmail.com>
2021-06-19 11:23:05 +08:00
William Cheng
70fb429c98 update erlang server samples 2021-06-19 10:50:52 +08:00
Yoshiyuki Kurauchi
513e242a3e Return empty binary for 304 (#9800) 2021-06-19 10:50:28 +08:00
Sebastian Weddmark Olsson
73350073b2 [erlang-server] spec fixes (#9784) 2021-06-19 10:44:31 +08:00
William Cheng
d13685a3ad More updates for isBoolean (#9802)
* more updates for isBoolean

* update samples
2021-06-19 10:44:00 +08:00
Minjae Kim
41afcd0f86 Handle boolean enum correctly in typescript-axios (#9025)
can't use enum because of TS18033
2021-06-18 16:34:38 +08:00
Hippolyte HENRY
7389446354 Add imports for inner items of arrays/maps in composed schemas (#9268)
* Add imports for inner items of arrays/maps in composedSchemas

* Add test case for typescript-angular

* tests

* tests

* disable generate alias

* Create different config
2021-06-18 16:08:03 +08:00
Guillaume TOURBIER
95a11a7f5d [Java][WebClient] add ResponseEntity return for webclient (#9327)
* feat: add ResponseEntity return for webclient

fix: #5599

* refactor: merge functions

simplification to avoir duplicated code
2021-06-18 16:03:38 +08:00
Sandeep jindal
c7038d1b57 [scala][client] invoker package enhancement (#9381)
* updated invoker

remove unwanted set the invoker

fixed the ordering of supported files

added sample generated files

regenerated samples

added docs

* sample files

Co-authored-by: sjindal <sandeep.jindal@agoda.com>
2021-06-18 15:53:25 +08:00
Daniel Krebs
2e65e6f62d [python][client] allow passing floats for _request_timeout (#9532)
* [python][client] allow passing floats for _request_timeout

While several method docstrings suggested that you could pass floats for
_request_timeout and the underlying urllib3.Timeout can deal with them,
the code only allowed integer values so far when passed as a single
number.

* [python][samples] update with fix for _request_timeout type
2021-06-18 15:09:55 +08:00
shartte
8a31064028 [Java] Remove JAX-RS dependency from generated java-native client. (#8320) (#9585) 2021-06-18 15:05:55 +08:00
Tobias Tiemerding
75fc1383bc Fix typo (Unsuported -> Unsupported) (#9790) 2021-06-17 13:44:12 +08:00
Albert
55600256b2 [rust-client]: fix reqwest not support client::options (#9745)
* fix: https://github.com/OpenAPITools/openapi-generator/issues/9743

* update samples
2021-06-17 01:17:50 +08:00
Bruno Coelho
687692cedc update AnyCodable and gitignore (#9777) 2021-06-17 00:37:23 +08:00
Anders Aaen Springborg
56260bf522 Update contributers (#9783)
We were four people who made the cpp-tiny client generator :) ❤️
2021-06-17 00:36:38 +08:00
Ween Jiann
77e1ca56cf [go-server] Add go-chi generator to go-server via a router property (#9748)
* Add go-chi generator to go-server

* Add go-chi configs

* Add go-chi generated output

* Updated docs

* Add some javadocs

* Fix import issue

* Regen files
2021-06-16 16:53:20 +08:00
William Cheng
d3baa93a62 update java resteasy samples 2021-06-16 16:02:58 +08:00
Celebrate-future
8af147b3ea Update pom.mustache (#9768)
* Update pom.mustache

* Update pom.mustache
2021-06-16 15:59:09 +08:00
Nikita Vakula
d3b2089e89 [python-fastapi] Fixed integration tests (#9771)
* [python-fastapi] Fixed integration tests

Currently, it is required to use python 3.7 to make
python-fastapi generator work. This version is already
set in the generated Dockerfile. Thus, it makes sense to
build this image. Spotify's docker maven plugin can be
used to build the docker image.

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* fixup! [python-fastapi] Fixed integration tests

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2021-06-16 15:49:02 +08:00
Christian Schuster
5bbdc62ada create explicit copy of system properties (#7601) (#9653) 2021-06-15 21:27:13 +08:00
William Cheng
ef3186f4a6 comment out python fastapi test due to failure in ci 2021-06-15 15:26:30 +08:00
Julian G
3fcbf17536 [C++][Pistache] Fix compile break, error handling (#9742)
* fix compilation break with validate function

* fix error handling in handleParsingException
bug caused all errors to be regarded as an internal server error

* generate samples
2021-06-15 14:42:29 +08:00
randomswdev
3edeaeea07 Fix single inheritance code generation for goserver (#8356)
Co-authored-by: Bernardo Pastorelli <13519917+randomswdev@users.noreply.github.com>
2021-06-14 18:56:02 +08:00
William Cheng
795c25d273 update go gin server samples 2021-06-14 18:50:21 +08:00
parpa
376e4192e1 Update routers.mustache (#9662)
Add PATCH suppord.
2021-06-14 18:48:55 +08:00
William Cheng
d14a82f7a7 update readme with travis-ci.com (#9762) 2021-06-14 18:22:57 +08:00
Christoph Ludwig
f3e3a724fb Fix python-fastapi free-form objects mapping and forward ref type hints (#9723)
* map free-form objects to Dict[str, Any]

* support Forward Type References

Forward type references will be supported by default from Python 3.10 on only. Until then (and starting with Python 3.7), we can opt in by a __future__ import, cf. https://docs.python.org/3.9/whatsnew/3.7.html?highlight=forward#pep-563-postponed-evaluation-of-annotations

* re-created pet-store sample

* bump required Python version to 3.7 for generated FastAPI projects

* make pydantic modell classes process forward type references
2021-06-14 18:05:36 +08:00
William Cheng
874d7d4f97 skip oauth files in java feign (#9760) 2021-06-14 18:04:34 +08:00
William Cheng
45175f018b update haskell-servant samples 2021-06-14 17:01:26 +08:00
Profpatsch
cdb92086db [haskell][server]: Set "AnyType" to Aeson.Value (#9733)
* [haskell][server]: Set "AnyType" to `Aeson.Value`

`AnyType` would not be translated to the json value type.
This fixes that.

* [haskell][server] Fix haddock error in `API.hs`

Haddock (the Haskell documentation generator) would choke on the
misplaced docstring. The heading has to appear inside the list.
2021-06-14 17:00:11 +08:00
Ivan
856eca4ee6 Hide buildOauthRequestInterceptor under isOAuth section (#9147) (#9736) 2021-06-14 15:39:55 +08:00
Daiki Ojima
5c1270aa37 fix(readme): update brew cask usage (#9757) 2021-06-14 15:08:21 +08:00
Tino Fuhrmann
0dcae66e0c Revert "[typescript] Generate documentation and examples (#9413)" (#9758)
This reverts commit 624b6a7a85.
2021-06-14 08:12:41 +02:00
Yuriy Belenko
150dfa2ddd Add ybelenko as php-slim4 template creator (#9754)
Thanks to Julian(jfastnacht) who started Slim3 generator and maintained it
until Nov 27, 2017(latest PR). Since Slim4 codegen is based on deprecated
Slim3 I greatly appreciate your commitment.
2021-06-13 01:24:56 +08:00
NouemanKHAL
624b6a7a85 [typescript] Generate documentation and examples (#9413)
* generate docs for typescript

* commit changed files
2021-06-12 09:31:40 +02:00
Payal Gadura
98ae4ab614 Filter out problem+json mime type from JSON mime types (#9680) 2021-06-11 00:59:22 +08:00
Ygal Blum
bd18ba6b41 operationId: Allow getting only the method name (#9719) (#9724)
Add new configuration flags: REMOVE_OPERATION_ID_PREFIX_DELIMITER and REMOVE_OPERATION_ID_PREFIX_COUNT
Add the corresponding fields in the DefaultCodegen
Sanitize the operationId according to the new fields
Add delimiter to list of nonNameElementPattern
Add unit test
2021-06-11 00:02:03 +08:00
FallenRiteMonk
6611ae64bb [dart] fix Date.toDateTime utc (#9717) 2021-06-10 11:11:08 +08:00
dependabot[bot]
99994945c7 Bump actions/cache from 2.1.5 to 2.1.6 (#9614)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-10 11:10:15 +08:00
Peter Leibiger
46bf3e8e46 [ci] Only run samples when they actually changed (#9636)
* [ci] Only run samples when they actually changed

* in pull requests only run the samples that matter
* if a sample is outdated it will still fail in the build pipeline

* Test Kotlin sample changes

* Revert Kotlin sample change
2021-06-10 11:08:23 +08:00
Fabian Sellmann
32c1e925dc [typescript-fetch] runtime: pass init and url as returned by the premiddleware to the postmiddleware (#9716)
* pass init and url as returned by the premiddleware to the postmiddleware

Current implementation will always pass the initial url and init object. However if a pre middleware changes returns an object whose `init` or `url` property refer to a different url string or object, any following post middleware wont have access to it. Effectively providing the post middleware with a completely different request information then what was actually used to make the fetch call.

* update samples and docs
2021-06-09 18:23:50 +02:00
devhl-labs
46f8a6733a [csharp] Move nullable reference types switch to abstract (#9661)
* moved switch to abstract

* build samples

* added nullable option to csproj

* removed unused method

* added switch back to aspnetcore

* build samples
2021-06-09 16:09:39 +08:00
Samuel Kahn
f1ee1cbe2e [cpp-ue4] Updated generator to return the http request so that it can be canceled or further manipulated. (#9693) 2021-06-09 15:45:45 +08:00
William Cheng
cce0d0a222 update resteasy dependencies (#9729) 2021-06-09 15:43:55 +08:00
William Cheng
0e93e79cd6 Fix Appveyor CI issues (#9731)
* sleep for 15 seconds after starting the server

* fix sleep

* set clone depth to 1
2021-06-09 14:53:44 +08:00
William Cheng
d33660453a Add a link to flutter blog post (#9730) 2021-06-09 14:12:08 +08:00
William Cheng
85e77e77fc [Android] update httpclient version, fix compilation issue in the sample (#9728)
* update httpclient version, fix compilation issue in the sample

* add new file
2021-06-09 13:21:10 +08:00
dependabot[bot]
8d2d4ac154 Bump actions/download-artifact from 2.0.8 to 2.0.9 (#9458)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2.0.8 to 2.0.9.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v2.0.8...v2.0.9)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-09 10:06:49 +08:00
William Cheng
cd2ef91dc3 Update logback to 1.2.0 (#9722)
* update logback to 2.1.0

* udpate jax-rs samples
2021-06-09 10:03:17 +08:00
Bruno Coelho
e600f7d149 [kotlin][client] silence deprecation warning (#9656)
* [kotlin][client] silence deprecated warning when used internally

* [kotlin][client] update sample projects
2021-06-08 23:17:20 +08:00
William Cheng
c379f5bcc4 encode URL parameters (#9688) 2021-06-08 10:02:33 +08:00
William Cheng
37b7c80c4f null check on $ContentTypes (#9687) 2021-06-08 09:09:21 +08:00
Mike Marchetti
7125ef43f5 Typescript: fix: add paramPropertyNaming (#9546)
Model naming conforms to the property: modelPropertyNaming, however the
parameter naming scheme is currently hardcoded to camelcase. Since the
parameter names are closely tied to the model properties names, is maybe
desirable to use a similar naming approach.

The toParamName cannot directly use the paramPropertyNaming since that
will cause issues with current generated code, since the
modelPropertyNaming currently defaults to "original"

A new property has been created to override this behavior, named
"paramPropertyNaming", and its default is set to "camelcase".
2021-06-07 22:17:25 +02:00
Georgy Ushakov
64ee3fe207 Added support for async accessToken in typescript-fetch (#9659) 2021-06-07 22:15:01 +02:00
cal
3cbc5a8f93 [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9133)
AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor:

Replaces a string concatenation as parameter of a logger method by a
string template followed by objects.

For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor
For erefactor see https://github.com/cal101/erefactor
2021-06-07 14:26:56 +08:00
cal
19f5718477 [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9664)
AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor:

Replaces a string concatenation as parameter of a logger method by a
string template followed by objects.

For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor
For erefactor see https://github.com/cal101/erefactor
2021-06-07 14:25:30 +08:00
cal
2d5199f80f [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9665)
AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor:

Replaces a string concatenation as parameter of a logger method by a
string template followed by objects.

For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor
For erefactor see https://github.com/cal101/erefactor
2021-06-07 14:24:18 +08:00
Gabriel Castro
9099b43cd8 bump swagger-parser-version to v2.0.26 to close #9086 (#9631)
* bump swagger-parser-version to v2.0.26

* add tests for #9086
2021-06-07 12:44:49 +08:00
William Cheng
c2cc7a02aa Fix kotlin client issue in maven plugin tests (#9690)
* fix kotlin client issue in maven plugin tests

* set version to v1.5.10

* update doc
2021-06-07 12:44:23 +08:00
Nikita Vakula
599a2ca477 Add validators to models fields (#9668)
* [python-fastapi] Apply constraints to models

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Use pydantic types to validate models fields

Some data formats can be validated by annotating fields with some
special pydantic data types (EmailStr, forr example).

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Updated samples

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2021-06-07 12:00:04 +08:00
William Cheng
088bca1580 [python][fastapi] various minor improvements (#9672)
* fix python fastapi tests, update readme, add CI test

* update FILES

* use virtualenv

* fix pom.xml

* skip flake8
2021-06-07 11:55:26 +08:00
Bruno Coelho
8c268c9578 [swift][client] make swift 5 generator stable (#9666) 2021-06-07 10:46:52 +08:00
Peter Leibiger
fdbf02764d [dart][dart-dio] Add support for query collection parameter format (#9635)
* [dart][dart-dio] Add support for query collection parameter format

* add support for collectionFormat in query parameters and www-url-encoded content
* add tests
* remove empty query parameter maps from generated code
* closes #6681
* closes #9522
* closes #8271 (the last remaining parts)

* Fix formatting
2021-06-07 09:49:59 +08:00
Ayman Bagabas
f923a0ef15 Swift5 Vapor 4 client library (#9625)
* [swift5] Add Vapor client library

* Try to improve overall spacing (#17)

* [swift5] try to remove changes in model and api

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* [swift5] update sample projects

* Update samples

* [swift5] vapor: return clientResponse when no default case

* Update samples

Co-authored-by: Bruno Coelho <4brunu@users.noreply.github.com>
2021-06-06 22:08:14 +08:00
Mike Nelson
c5fefa938a (#8000) Insure toImportMap only returns needToImport (#9275)
`toModelImportMap` only accounts for union types and not intersection types, so I've combined those cases into `splitComposedType`. For `splitComposedType` I combined `replace(" ","").split("\\|")` and `split("( [|&] )|[<>]")` into `replace(" ","").split("[|&<>]")`.

I've added the `needToImport` check to `toModelImportMap`. This is the same check that happens in `addImport`.
2021-06-04 08:03:32 +02:00
Armel Soro
a8c4cbd14d fix(#9328): Gradle Plugin ValidateTask does not work under Gradle 7.0 (#9453)
* Allow to run ValidateTask tests against Gradle 7.0 as well

* Drop setters for ValidateTask properties of mutable types

This is applicable to the following properties:
- inputSpec
- recommend

Otherwise, Gradle 7.0 now returns an error when attempting
to configure this task.

See https://docs.gradle.org/7.0/userguide/validation_problems.html#mutable_type_with_setter

* Be more specific about the versions of Gradle tested in ValidateTaskDslTest

Test against the latests Gradle 5.x and 6.x versions
2021-06-03 23:07:34 +08:00
Dheeraj Nalluri
972ad566fe [typescript-angular] Fix undefined query param (#9657) 2021-06-03 07:58:53 +02:00
Nikita Vakula
93880a486e python-fastapi improvements (#9649)
* [python-fastapi] Ignore some flake8 warnings

1. Some of the "imported but not used" warnings are there because
it is not easy to express what should be imported in mustache template
language. These warnings are silenced in order to keep the templates
morre readable.
2. Single quotes -> Double quotes (for consistency).

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Added flake8 config

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Set extra constraints on values

It is important to set all constraints (pattern, greater than, etc.)
on values of all arguments, because FastAPI can handle them automatically.

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Updated samples

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2021-06-03 10:13:24 +08:00
ricou13770
2b495fc7a3 Fix module "go-server" - template "controller-api.mustache" : query.Get() must use {{baseName}} instead of {{paramName}} on boolean and default query parameters (#9580) 2021-06-03 10:02:00 +08:00
Blackclaws
439a1a9ba2 Do not validate enum parameters (#9594) 2021-06-03 09:55:47 +08:00
William Cheng
f0bbeb75ff update erlang-server samples 2021-06-03 09:52:05 +08:00
Mikael Lixenstrand
cdc00769aa [Erlang] return empty body for 204 (#9512)
* fix handle_request_json spec res

* fix client spec

* make it possible to answer with 0 size binary for 204

* only generate empty bin for 204

* only generate empty bin for 204
2021-06-03 09:49:32 +08:00
Shyla Srinivas
3c866fb4a3 Fix python generation when custom files and templates are specified (#9572)
* fix python generation when custom files and templates are specified

* add test for processUserDefinedTemplates
2021-06-02 09:13:10 -07:00
Troy P
7bb7c72cc5 Adding usePythonSrcRootInImports logic to AbstractPythonConnexionServerCodegen. (#9558) (#9559) 2021-06-02 09:03:45 -07:00
Michael Janssen
b9e75951e7 Add nullable annotation support to AspNetCoreServer (#9620)
* Add nullable annotation support to AspNetCoreServer

* Adjust naming for compatability with PR #9235 by @dehl-labs
2021-06-02 11:54:16 +08:00
Bruno Coelho
0f51662650 [kotlin][client] small improvements (#9640)
* [kotlin][client] standardize adapter type names

* [kotlin][client] remove unused class

* [kotlin][client] fix IDE warning

* [kotlin][client] improve import layout

* [kotlin][client] update sample projects
2021-06-02 11:07:26 +08:00
Ayman Bagabas
9bce71656c Swift5 namespace changes (#9624)
* [swift5] Rename the API class to {{projectName}}

Instead of {{projectName}}API. This removes some unnecessary naming
complexity.

* [swift5] Define models and Configuration classes under namespace

When swiftUseApiNamespace is set, API classes get defined under the
projectName namespace. This does the same for models and the
Configuration class. Plus adding a deprecation warning when using the
un-namespaced variants.

* [swift5] Use CodingKeys in model decoder

Fixes: 0f5e7d1e3c ("Swift5 models improvements (#9205)")

* [swift5] Add swiftUseApiNamespace to urlsessionLibrary config

* Update samples

* Try to reduce model changes

Co-authored-by: Bruno Coelho <4brunu@gmail.com>
2021-06-02 00:45:01 +08:00
William Cheng
ae0cce0481 add sponsor message to python fastapi (#9637) 2021-06-01 11:26:15 +08:00
Bruno Coelho
463ae10c4a [kotlin][client] update dependencies (#9629)
* [kotlin][client] update dependencies

* [kotlin][client] update sample projects

* [kotlin][client] fix update dependencies
2021-06-01 10:09:48 +08:00
Bruno Coelho
6cf4843249 [swift5][client] update dependencies (#9633)
* [swift5][client] update dependencies

* [swift5][client] update sample projects

* [swift5][client] update dependencies in Carthage
2021-06-01 10:09:22 +08:00
Sascha Peilicke
173a349e04 Kotlin: Fix kotlinx_serialization code generation (#9576)
And update to Kotlin 1.5.0 and kotlinx.serialization 1.2.1. Fix nested
enum annotation '@Serializable' instead of '@KSerializable' when
'kotlinx_serialization' is used. Fix missing JsonMediaType in
ApiClient.kt (#9242). Add 'kotlinx_serialization' serialization library
to documentation. Use explicity type in RequestConfig to keep type
information for JSON serialization.

Resolves #9242
2021-05-31 21:48:39 +08:00
William Cheng
32a045060e [ python-fastapi] minor improvements (#9622)
* minor python-fastapi improvements

* update doc

* fix refreshUrl
2021-05-31 17:00:23 +08:00
Ayman Bagabas
c4df343052 [Swift5] Add useClasses cli option (#9608)
* [swift5] Add useClasses cliOption

* Update swift docs
2021-05-31 10:37:14 +08:00
Peter Leibiger
88f279ead3 [ci] Build kotlin samples via github (#9609) 2021-05-31 09:56:05 +08:00
Peter Leibiger
afd65b3cb0 Update query parameter sample to include pipe delimiter (#9590) 2021-05-30 17:45:38 +08:00
Nikita Vakula
0da4099868 New python-fastapi generator (#9611)
* [python-fastapi] Added new generator

See https://fastapi.tiangolo.com/ for more details about FastAPI

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Added samples

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2021-05-30 17:43:31 +08:00
Bruno Coelho
dee2840b20 [swift5][client] improve docs for Data (#9605) 2021-05-30 17:40:09 +08:00
Peter Leibiger
f7b93ebdf2 Update fake API to contain sample with binary body (#9610) 2021-05-29 10:26:01 +08:00
Stefan Hanselmann
1b6fd2dd7a [Kotlin][retrofit2] replace okhttpclient with callfactory (#9451)
* [Kotlin][Retrofit][#9448] Replace OkHttpClient parameter with Call.Factory.

* [Kotlin][Retrofit][#9448] Update sample project.
2021-05-28 21:50:28 +08:00
William Cheng
763f65f293 [Wsdl] minor improvements, bug fixes (#9613)
* minor improvements to wsdl-schema gen

* better code format

* update readme
2021-05-28 21:38:36 +08:00
William Cheng
28c3e1d544 update samples, docs 2021-05-28 10:26:48 +08:00
adessoDpd
12c34d4658 New generator: WSDL (#9545)
* init port

* add outputDir

* fill out current .md

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-05-28 10:22:28 +08:00
adameste
73b34ade6a [cpp-restsdk] Update json double/float parse. (#9577)
* [cpp-restsdk] Update json double/float parse.

Fix cpp-restsdk double and float parse.

double.NaN was parsed when server doesn't ensure the floating point value has decimal point in in.

* Update docs & samples.
2021-05-28 09:58:01 +08:00
William Cheng
670c5884b6 update samples 2021-05-27 11:23:00 +08:00
Hemant Zope
5227e06055 [C]: Fix enum values (#9537)
* use unmodified enum values in arrays

* update enum values in body and api mustache
2021-05-27 11:00:21 +08:00
Peter Leibiger
6edbc91eeb [dart][dart-dio] Update docs for dart-dio-next (#9584)
* remove deprecated author field from all pubspec templates
* improve dart-dio-next readme/markdown documentation
* add a lot of dart-doc to model and API classes
2021-05-27 10:58:37 +08:00
Elan Thangamani
62a52bf1e8 Upgrade Virtualan version with 2.2.1 -> Open API Mock service (#9598)
* changed correct values

* Updated virtualan version

* updated the correct version

* Updated with latest version

* Update pom.xml

* Updated with 2.5.0

* Updated with db 2.5.0 version
2021-05-27 10:46:22 +08:00
William Cheng
32d5900611 update samples, docs 2021-05-27 10:40:32 +08:00
desmese
4f1d8f4699 - added localVar prefix to the contentType variable defined in the api.mustache template in the java resttemplate library (#9568)
- rerun generate-samples.sh and export_docs_generators.sh
2021-05-27 10:24:38 +08:00
Bruno Coelho
a61db6e596 [swift5][client] fix binary response (#9595)
* [swift5][client] fix binary respose

* [swift5][client] fix binary respose
2021-05-27 10:18:51 +08:00
Bruno Coelho
b5843f41a6 [swift5] update docs (#9587) 2021-05-27 10:05:48 +08:00
Justin Black
6e6b8472d4 Adds isShort + isUnboundedInteger to IJsonSchemaValidationProperties implementers (#9519)
* Adds getter + setter methods for isShortInteger in IJsonSchemaValidationProperties

* Adds isShortInteger to CodegenModel

* Adds isShortInteger to CodegenProperty

* Adds isShortInteger to CodegenParameter

* Adds isShortInteger to CodegenResponse

* Ensures that samples are up to date

* Changes interface to isShort

* Removes typescript file

* Adds isShort to CodegenModel and CodegenProperty instances

* Samples updated, shows too many changes across generators

* Adds isUnboundedInteger and implements it in CodegenModel

* Adds isUnboundedInteger to COdegenProperty

* Adds isUnboundedInteger to CodegenParameter

* Adds isUnboundedInteger to CodegenResponse

* Regenerates samples and docs

* Adds testBooleansSetForIntSchemas

* Fixes integer tests
2021-05-26 11:59:28 -07:00
Samuel Kahn
8134362244 [cpp-ue4] Added public methods to process enums in string form (#9569)
* [cpp-ue4] Added public methods to process enums in string form as it may be useful for the user code

* [cpp-ue4] Fixed linker errors in some configurations
2021-05-26 23:33:47 +08:00
Anders Aaen Springborg
b2041414eb Change logo to English (#9591)
* add Aalborg university

* English logo
2021-05-26 23:32:16 +08:00
Bruno Coelho
163d13e415 [kotlin][client] fix Android crash on API level 25 and bellow (#9578)
* [kotlin][client] fix Android crash on API level

* [kotlin][client] update sample project

* Try to fix CI

* [kotlin][client] add flag to control android api level supported

* [kotlin][client] update docs

* [kotlin][client] update docs
2021-05-26 18:24:52 +08:00
William Cheng
a1f539ce6e add Aalborg University to readme.md, reduce image size 2021-05-26 18:20:50 +08:00
Anders Aaen Springborg
8742228049 add Aalborg university (#9588) 2021-05-26 18:04:14 +08:00
Ayman Bagabas
ae0350280f [swift5] Map file and binary to Data (#9419)
* [swift5] Map file and binary to Data

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

* Update docs
2021-05-26 17:02:28 +08:00
Blackclaws
e09409fbce Handle Deserialization Asynchronously (#9424) 2021-05-26 00:12:12 +08:00
Peter Leibiger
ab11acd634 [dart][dart-dio-next] Improve support for file uploads (#9542)
* [dart][dart-dio] Improve support for file uploads

* add support for filenames in multipart requests by using  `MultipartFile` from dio directly
* add support for binary/file body data
* fixes #6671
* fixes #9079

* Add and fix tests

* Only use MultipartFile for body/multipart parameters

* Fix test

* Actually fix tests
2021-05-25 23:58:39 +08:00
William Cheng
ae430a8c14 [cpp][tiny] rename generator, update samples (#9560)
* rename generator, update samples

* add doc

* update readme
2021-05-25 23:55:16 +08:00
Alexandre
6c40192706 [swift5] Add support for oneOfs (#8714)
* [swift5] Add support for oneOfs

* Generate a sample Swift project with oneOfs

* Update Swift Samples
2021-05-24 13:01:16 +08:00
Anders Aaen Springborg
4e48dae8e4 New generator | Arduino cpp (#9489)
* initil tiny client generator

* Helper string

* WIP: added helper file with json helper functions

* WIP: model implementation.. Working on JSON

* Added codegen files for model and helper

* WIP: toJson()

* Added mapping configurations

* Upadet string compare

* Removed redundant namespaces

* Added files for example

* fixed syntax errors

* fixed syntax errors

* header generation

* unittest example for pet class

* Refactored mustache & fixed logical errors

* WIP: unit test mustache format

* Removed legacy file

* mustache service

* Declare service in Java file

* Removed legacy file

* removed legacy code

* Documentation

* Added folder structure + new supporting files

* Added file to run all unittests

* Refactored unit tests

* typemappings and new paths

* First service impl

* Added esp32 and esp8266 env

* Added default values

* Added cli option to specify controller

* added type decl method

* Added stringify methods

* service get requests

* Fix helper header

* post merge fix

* fix long test

* Tiny namespace

* remove shared pointer

* include petapi

* stringify

* return problems

* Canged logic for response-body handling

* Implemented last logic for reponse handeling

* Implemented constructor logic

* first tiny sample

* update basepath to petstore v3

* standard main example

* root certificate example

* root folder

* TODO cleanup

* exclude features

* supports delete again!👷

* remove todo 

* new main example ❣️

* new main example ❣️

* Make our feature set realistic

* fix indentation

* HTTP / HTTPS Connection

* Root certificate sample

* https vs http 👨🏻‍🔬

* fix lint in template

* default value for controller in config

* new readme 📜

* remove old comments

* removed unused testfile

* no default root certificate

* new main

* remove test

* Update platformio.ini.mustache

🤷‍♂️

* Update platformio.ini.mustache

remove native

* added support info

* Add namespace to Pet 🐅

* bourne compatibility fix

* spelling error in python file

* bourne python script 🐍

* Version bump

* Add bourne script to readme

* update main sample, from template

* pre_compiling_bourne.py.mustache to samples folder 📃

* set header Content'type to json

* map todo🗺️

* remove unused debug flag⚒️

* added support for ESP8266 ༼ つ ◕_◕ ༽つ

* added new sample for ESP32 📀

* 🎯

* removed use of namespace std 

* removed use of "__" in variables

* removed unused code in destructor

* fixed type comparison

* move default ctor to header

* added zero initialized primitive variables

* moved variable to TypeMappings

* updated ifndefines

* Extra comment for build error in standard example 🦸🏽‍

* afer cpp-ish cast from std::string to uint8* cast🏰

* excluded maps type

* Documentation og generator

Co-authored-by: kaareHH <kaare.hattel@gmail.com>
Co-authored-by: mkakbas <45030188+mkakbas@users.noreply.github.com>
Co-authored-by: mkakbas <martinkandersen1@gmail.com>
2021-05-24 11:11:44 +08:00
alespour
e360228a76 fix: dart2 mustache templates minor improvements (#9539)
* fix: prefer_is_not_empty linter suggestion

* fix: annotate_overrides linter suggestion

* chore: update samples
2021-05-24 11:01:53 +08:00
Peter Leibiger
22db406c35 [ci] Move openapi-generator build/docs/samples to github actions (#9550)
* [ci] Move openapi-generator build/docs/samples to github actions

* Naming

* Test failure on samples and docs

* Revert code changes after successful docs/sample failure
2021-05-24 10:59:35 +08:00
Peter Leibiger
be84c44fcc [dart][dart-dio-next] Add stacktraces to manual DioError instances (#9549) 2021-05-24 10:54:51 +08:00
Peter Leibiger
48924eb1a0 [dart] Improve content-type handling (#9517)
* [dart] Improve content-type handling

* fixes #9334
* superseeds #9454
* use `prioritizedContentTypes` in the same way `JavaClientCodegen` does
* move `application/json` to the front if it exists
* don't do anything if it is multi-part or url-encoded as for this the first content-type already needs to match
* log warning if an unsupported content-type is first after prioritizing
* remove some unused code blocks from dio generators

* Only use first prioritized content-type in dio generators

* don't default to any content-type in dio-next, dio defaults itself to JSON
2021-05-24 10:53:39 +08:00
Yuriy Belenko
1e92469b9f Decouple Slim4 codegen from deprecated Slim3 (#9208)
It was a mistake to extend Slim4 from Slim3 codegen. When I need to fix
something in Slim4 I have to overwrite code from Slim3 somehow and it's
not always possible. It's even more important that Slim3 codegen shouldn't
be touched as soon as it's deprecated long time ago.
2021-05-24 10:43:18 +08:00
Julian G
7c152daa48 fix missing default values for string types (#9541) 2021-05-23 23:02:22 +08:00
agilob
b1cba96627 Revert "[Java][Spring] Fix for #8659 - Different in-parameter types generated for api and delegate for files (#9331)" (#9555)
This reverts commit b9a1c8f016.
2021-05-23 22:59:51 +08:00
Rinish Sam
9eb9c30a92 [dart][dart-dio] Fix gitignore comment style (#9554)
* Fix gitignore comment style in templates

* Update samples
2021-05-23 11:27:07 +08:00
Blackclaws
696bcb3e85 [csharp][httpclient] Remove noncompliant post behaviour (#9427)
* Remove behaviour that does not 1:1 represent spec

* Update samples
2021-05-21 14:50:42 +08:00
Blackclaws
2c4e79f45c [csharp][httpclient] Introduce FileParameter as an abstraction (#9426)
* Introduce FileParameter as an abstraction

* Update Samples

* Add new file to samples

* Fix hardcoded package name

* Fix hardcoded package name, import FileParameter in Model

* Remove unneccesary warning
2021-05-21 14:49:33 +08:00
Peter Leibiger
b8c5a647e0 [dart][ci] Move Dart samples from CircleCI to Github actions (#9515)
* [dart] Move Dart samples from CircleCI to Github actions

* Fix format failing with latest Dart version

* Workflow naming

* Split dart samples depending on version

* use fixed version to prevent flaky builds

* Change branch pattern for release branches
2021-05-21 14:45:50 +08:00
William Cheng
071dc3413d fix typescript node due to @types/bluebird 3.5.35 (#9533) 2021-05-21 14:45:14 +08:00
Arthur Mogliev
ab6d66147b [php-mezzio-ph] PHP 8 support (#9445)
* Huge update for php-mezzio-ph generator:
- proper container support for data types
- support for query parameter references and query parameter schema references
- dependency update (PHP 7.3+, PathHandler 0.7+, DataTransfer 0.5+)

* Sample regeneration after rebasing for php-mezzio-ph

* - added custom CLI option for php-mezzio-ph to generate code using modern PHP syntax
- removed obsolete php-mezzio-ph samples in samples/openapi3/server/petstore/php-mezzio-ph

* - fixes for JavaDoc declarations that seems to break CI

* - fix for outdated sample file
2021-05-21 14:40:38 +08:00
William Cheng
4948ce78ed update samples 2021-05-21 12:54:40 +08:00
Yusuke Hosonuma
338812114c [crystal][client] support configure method with block (#9506)
* [crystal][client] allow initialize Configuration with block

* [crystal][client] update samples

* [crystal][client] add test for configuration.cr

* [crystal][client] fix .configure

* [crystal][client] update samples

* [crystal][client] add test for pestore.cr

* [crystal][client] fix Configuration#configure
2021-05-21 12:37:21 +08:00
Stefan Hanselmann
d1b8a3fac4 [Kotlin] [#8809] Allow optional header parameters with Kotlin and ret… (#9306)
* [Kotlin] [#8809] Allow optional header parameters with Kotlin and retrofit2

* [Kotlin] [#8809] Update sample client

* [Kotlin] [#8809] Replace mustache dot notation with more classic style

* [Kotlin] [#8809] Remove new line at the end of the mustache template
2021-05-20 23:07:04 +08:00
Kazuki Chigita
1ff436a86a [REQ] [kotlin-client] Add uriAdapter for moshiBuilder (#9494)
* Apply UriAdapter to moshiBuilder

* Add UriAdapter for supportingFiles

* Fix test

* Apply ./bin/generate-samples.sh
2021-05-20 23:05:22 +08:00
Makoto Aoyama
0a34839567 Add hashableModels to additional properties (#9495)
* Add hashableStruct

* Revert "Remove x-swift-hashable"

This reverts commit 18053af001.

* Add Hashable for x-swift-hashable

* Add config yaml to test x-swift-hashable

* Run ./bin/generate-samples.sh ./bin/configs/swift5*

* Run ./bin/utils/export_docs_generators.sh

* Run ./bin/generate-samples.sh ./bin/configs/swift5*

* Verify setHashableStruct

* Rename hashableStruct => hashableModels

- Replace hashableStruct => hashableModels
- Replace HashableStruct => HashableModels
- Replace HASHABLE_STRUCT => HASHABLE_MODELS
- Update docs

* Refactor modelObject.mustache

* Control equals and hash functions
2021-05-20 23:04:19 +08:00
Bruno Coelho
f48311dac4 [swift5][client] make AnyCodable optional (#9479)
* [swift5][client] make AnyCodable usage optional

* [swift5][client] update sample projects
2021-05-18 23:47:26 +08:00
Dennis Melzer
6b5794df9d Fix bean validation for type Optional (#8708)
* Fix bean validation for type Optional
#8690

* Revert path params
2021-05-18 23:17:57 +08:00
William Cheng
9e4afb0fc3 [C++] Rename Qt5 to Qt (#9490)
* rename qt5 to qt

* rename, update

* rename qt5 to qt in the templates

* update doc
2021-05-18 23:09:59 +08:00
Peter Leibiger
55b95bc9c5 Fix CircleCI failures (#9503)
* Fix go-echo-server sample not running in CircleCI

* remove wrong argument

* [dart] Fix petstore sample tests & Multipart not working

* follow up to #9392
* `MultipartRequest(null, null)` is no longer valid after `http` package upgrade
* fix petstore sample project not compiling
* disable live petstore tests
* use template to strip out unused code blocks
2021-05-18 23:09:29 +08:00
Michał Wilski
93166dd6b5 fix: properly mark 'deprecated' routes in typescript-axios template #9502 (#9505)
Co-authored-by: Michał Wilski <michal.wilski.ext@eloomi.com>
2021-05-18 08:10:44 +02:00
Justin Black
fb3aed6dc4 Fixes python test_fake_api tests (#9483)
* Fixes test_upload_download_file

* Fixes test_string

* Fixes test_string_enum

* Fixes test_number_with_validations test_composed_one_of_number_with_validations

* Fixes two more tests

* Fixes test_array_of_enums

* Fixes two tests

* Removes comment

* Fixes serializationf of composed schema object models, fixes test

* Samples regenerated

* Removes pdb
2021-05-17 20:15:53 -07:00
Kuzma
e1ef7d40b3 add OAuth2 to typescript template (#9466)
* add OAuth to typescript

* generate samples
2021-05-17 18:22:18 +02:00
Kuzma
1c733247b1 fix api key (#9476) 2021-05-17 18:19:08 +02:00
William Cheng
c4f7091da5 partially revert 9404: avoid empty string enum value (#9501) 2021-05-17 23:47:07 +08:00
Yusuke Hosonuma
477926f008 [crystal][client] Support authorization (#9488)
* [crystal][client] support authorization header

* [crystal][client] update samples

* [crystal][client] update tests

* [crystal][client] add unit test for api_client.cr
2021-05-17 21:24:30 +08:00
William Cheng
08467928de update samples 2021-05-17 18:25:07 +08:00
quarantam
69e8e07cab Update ApiClient.mustache (#9492)
Fixing #7209
2021-05-17 18:10:29 +08:00
Amal Thomas
2f6bfb0dfc Update plugins.md (#9499) 2021-05-17 13:38:09 +08:00
Steffen Neumann
97ddcc2257 Add support for Boolean in R client generator (#9469)
* Add support for Boolean in R client generator

* Regenerated with updated R generator
2021-05-15 23:22:48 +08:00
William Cheng
2342396465 reduce travis ci job runtime (#9491) 2021-05-15 22:59:15 +08:00
William Cheng
2f70e6a5bc Add a link to powershell devops conf presentation (#9487) 2021-05-15 16:42:35 +08:00
William Cheng
f7b79e9a26 Add @lucamazzanti to the C# technical committee (#9486) 2021-05-15 16:27:13 +08:00
Yusuke Hosonuma
5ea31b585c [crystal] Update crystal version 1.0.0 (from 0.35.1) (#9477)
* [crystal] update crystal version 1.0.0

* [crystal] show crystal version on CI

* [crystal][client] $ shards update --ignore-crystal-version

* [crystal][client] update pom.xml
2021-05-15 16:02:06 +08:00
Bruno Coelho
e6a10ae350 [swift5][client] add option to generate or not the model additional properties (#9375)
* [swift5][client] add option to generate or not the models additional properties

* [swift5][client] update sample projects

* [swift5][client] format code

* [swift5][client] format code

* [swift5][client] format code

* [swift5][client] update docs
2021-05-15 15:46:32 +08:00
William Cheng
ecedd28e4e better code format (#9463) 2021-05-13 17:32:00 +08:00
Yusuke Hosonuma
44efb7a3f6 [python][flask] specify flask version 1.1.2 (#9471) 2021-05-13 17:28:47 +08:00
Sheldon Young
f9cd80deed [scala-sttp] Bump minor versions of libraries, SBT and Scala (#9356) 2021-05-12 21:29:51 +08:00
Sheldon Young
be06541b47 [scala-sttp] Compilation failed when URI parameter name is not camelCase, fixes #9345 (#9354) 2021-05-12 21:16:27 +08:00
Bruno Coelho
c4c15cecb6 [kotlin][client] add sample for parcelizeModels (#9394) 2021-05-12 20:56:03 +08:00
William Cheng
456023b77c Update erlang-server dependencies (#9414)
* update erlang-server dependencies

* reenable erlang-server test

* test with 2.7.0

* use only cowboy

* comment out erlang server test
2021-05-12 17:08:59 +08:00
gbmarc1
c966b5fe1f [python] readonly constructors (#9409)
* readonly

* other tests

* doc

* python samples

* model utils
2021-05-10 18:41:26 -07:00
Kuzma
686b2110e6 [BUG] [typescript] Duplicate parameter's names (rename options to _options and config to _config) (#9428)
* rename options to _options and config to _config

* add samples
2021-05-10 19:52:58 +02:00
Bruno Coelho
3173e0b1d3 [kotlin][client] improve docs (#9393) 2021-05-10 20:42:13 +08:00
William Cheng
a63912ee1e add --allow-different-user (#9439) 2021-05-10 20:23:38 +08:00
William Cheng
85ff15ac8a update samples 2021-05-10 19:05:02 +08:00
Guillaume TOURBIER
808c0b03bd feat: add access to webclient and webclientBuilder (#9329)
* feat: add access to webclient and webclientBuilder

fix: #8602

* docs: add params for webclient & builder
2021-05-10 19:02:36 +08:00
William Cheng
4bb5c8ae0f better code format, update samples (#9438) 2021-05-10 18:26:23 +08:00
Yusuke Hosonuma
1751aa7272 [crystal][client] some fix and minor improvement (#9416)
* [crystal][client] remove redundant include JSON::Serializable

* [crystal][client] fix syntax error

* [crystal][client] fix shard name

* [crystal][client] add 'require "json"'

* [crystal][client] update sample projects
2021-05-10 16:17:49 +08:00
Mark Nevill
ae2423e64a [Bash] Fix matching of header parameters (#9370) 2021-05-10 16:11:13 +08:00
Kyle Kelly
a98cb97f91 [Javascript-Flowtyped] Handle joining uniqueItems in api template (#9417)
* Add handling for casting uniqueItems from Set to Arrays so they can be properly joined

* Fix mixed-indent lines
2021-05-10 16:10:24 +08:00
Adi1231234
1961c661f3 upgrade dart generator dependencies (#9392)
* upgrade intl package

* upgrade http package and change url to uri

* update petstore sample

* update pubspec files

* upgrade http dependency

* upgrade dev dependencies

* update json_serializable and test

* delete nullable - deprecated on json_serializable 4.1.1

* fixed NNBD issue

* change test version
2021-05-10 16:07:03 +08:00
William Cheng
85c43e731b fix incorrect date in the readme 2021-05-10 15:15:07 +08:00
William Cheng
a0c3db1157 Merge branch '5.2.x' 2021-05-07 12:09:21 +08:00
William Cheng
cff2286d67 fix distribution 2021-05-07 10:29:38 +08:00
William Cheng
e9a62ab910 update readme 2021-05-07 10:19:19 +08:00
William Cheng
be214dc349 Merge remote-tracking branch 'origin/master' into 5.2.x 2021-05-07 10:15:12 +08:00
William Cheng
560bf7e080 v5.1.1 release (#9421) 2021-05-07 09:57:19 +08:00
Luca Mazzanti
2f2e250ab2 [csharp-netcore][httpclient] Issues managing error statuses (#9389)
* [csharp-netcore] correct rawContent read

* [csharp-netcore] avoid deserialize result when in error

* [csharp-netcore] avoid aggregate exceptions

* Updated samples

* Updated samples

* Refactored PetApiTest

* Updated samples

* Fixed test issues

* reverted previous commit
2021-05-07 07:23:53 +08:00
Bruno Coelho
f4f4d5de0e [kotlin][client] fix warning for non optional header parameter (#9415) 2021-05-07 00:26:22 +08:00
William Cheng
7703c923f9 update doc 2021-05-06 12:14:45 +08:00
Samuel Kahn
343d7eb712 [cpp-ue4] Improved retry system to use Unreal's FHttpRetrySystem (#9382)
* Revert "[cpp-ue4] Added the possibility to retry requests easily with AsyncRetry method on the response and SetAutoRetryCount on the request"

* [cpp-ue4] Improved retry system to use Unreal's FHttpRetrySystem

* [cpp-ue4] Updated style guide link

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-05-06 11:26:07 +08:00
matt beary
32b2ea3291 Fixes #9398: fix aspnet enum documentation (#9404) 2021-05-06 11:23:32 +08:00
matt beary
45d55f6b73 [aspnetcore] Fix incorrect logging messages (#9405)
* fix incorrect aspnetcore logging messages

* address comments from review

cleans up log messages
2021-05-06 10:46:06 +08:00
William Cheng
ec085713ce [Erlang] migrate CI to drone.io (#9406)
* test erlang client, server in drone.io

* rearrange tests, add server folder

* comment out erlang server tests
2021-05-06 10:42:46 +08:00
Julian G
8f5639554e [C++] [Pistache] Model validation, general overhaul (#9251)
* overhaul pistache templates

* fix function signature in model-source
return type now aligns with definition in model-header

* use default keyword for destructors

* generate pistache samples

* move bin/configs/other/cpp-pistache-server-cpp-pistache.yaml to bin/configs/cpp-pistache-server-cpp-pistache.yaml

* Only generate validation body if necessary

* generate pistache samples
2021-05-05 16:52:47 +08:00
shylacs
4d2b022619 Add VMware to users list (#9388)
* Add VMware to users list

LMK if I can provide the png for company logo. I tried uploading to img folder and could not.

* add logo, update readme

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-05-05 00:08:15 +08:00
Luca Mazzanti
e9fa936886 [csharp][netcore-httpclient] Refactor of constructors: removed obsolete attribute (#9373)
* Removed obsolete attribute on constructors without HttpClient prameter

* add clickable link in the tooltip

* update doc, add tests

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-05-04 23:58:20 +08:00
Stefan Wendt
d21743e9e5 [TypeScript-fetch] Fix issue 9360 (#9362)
* [TypeScript] Fix misplaced parentheses

* [TypeScript] Run PR relevant scripts

* [TypeScript] ensure up to date

* Revert "[TypeScript] ensure up to date"

This reverts commit 320ec45f

* Revert "[TypeScript] Run PR relevant scripts"

This reverts commit 23cda753

Co-authored-by: Stefan Wendt <stefan.wendt@isax.com>
2021-05-03 18:15:52 +02:00
Matthew
3da1999135 Fix typo in readme (#9387) 2021-05-03 22:45:55 +08:00
johnthagen
a88313c40c [Python] Avoid DeprecationWarning in inspect.getargspec on Python 3 (#9271)
* Avoid DeprecationWarning in inspect.getargspec on Python 3

* Regenerate samples
2021-04-30 11:59:33 -07:00
ex0ns
ebc1d7bd95 [scala][akka] Update dependencies for scala 2.13 in scala-akka (#8624)
* [scala][akka] Update dependencies for scala 2.13

* Update pom.mustache to support multiple scala's version

* Update pom.xml

* Scala cross build 2.12 and 2.13

* Update version. Migrate to sbt

* Remove space

* Add pom.xml back
2021-04-29 18:51:30 +08:00
Anders Aaen Springborg
dbb42f9027 [BUG] new.sh fix generator type , issue #9320 (#9321)
* generation type on  template dir path

* remove gen_type from template and resources
2021-04-29 18:23:13 +08:00
William Cheng
1c1c6b465f [kotlin-server-deprecated] minor improvements (#9367)
* minor wording change

* remove samples

* remove yaml
2021-04-29 11:50:05 +08:00
William Cheng
18cdb36d3e [Test] Migrate samples from 2.0 Spec to 3.0 spec (#9347)
* nim petstore to use 3.0 spec

* ktorm to use 3.0 spec

* update c petstore to use 3.0 spec

* Revert "update c petstore to use 3.0 spec"

This reverts commit a8ff0517ba.
2021-04-29 10:23:55 +08:00
Rustam
ccbb78e1b2 Keep old Ktor server generator for backward compatibility (#9365) 2021-04-29 08:26:57 +08:00
William Cheng
5d946289ef Bump OkHTTP dependency to latest in build.sbt (#9361) 2021-04-28 22:36:29 +08:00
Rustam
53398a0850 Ktor server upgrade (#9088)
* Update to new ktor version #9087

* Update doc #9087

* Cleanup #9087
2021-04-28 21:57:15 +08:00
William Cheng
73564bc046 update samples 2021-04-28 17:57:26 +08:00
William Cheng
37eaf70755 Merge remote-tracking branch 'origin/master' into 5.2.x 2021-04-28 17:48:21 +08:00
Ayman Bagabas
057c1080f8 [Codegen] Add hasDefaultResponse property (#9203)
Check if there's a default response in the specs.
2021-04-28 17:03:22 +08:00
Toby Murray
83adc064a4 Fixes #9151: Bump OkHTTP dependency to latest (#9353)
In 5.0.1 the generated line in `ApiClient` was:
```
return RequestBody.create(MediaType.parse(contentType), (byte[]) obj);
```
in 5.1.0 it is:
```
return RequestBody.create((byte[]) obj, MediaType.parse(contentType));
```

Looks like this change was introduced in #8969, and requires a more recent version of OkHttp to compile in some (all?) circumstances.
2021-04-28 16:55:12 +08:00
Andre Praca
ad9e2395ac [PHP] Fix parentSchema conditional causing parent call when parent isn't present (#8705)
* Fix parentSchema conditional

we cannot call `parent::` if parent isn't present. Everywhere else in the schema we're checking for `{{parentSchema}}` but here we're checking for `{{parent}}` which is causing errors when parent is not present

* Update samples
2021-04-28 15:08:50 +08:00
William Cheng
4aaaae765b [Scala][Akka] Use Files.createTempFile to address security concerns (#9348)
* fix scala akka server temp file issue

* update test templates
2021-04-28 14:53:51 +08:00
Toby Murray
4f84e86001 Support #9151: Default Java client to Java 8 (#9344)
My understanding of the version 5 release of OpenAPI generator was that Java 7 support was dropped. Currently the Java client defaults to Java 7, Java 8 can be opted in with the `java8` config option. This removes the conditional logic in `build.gradle` around that config option and defaults to Java 8. This is to support #9151, up-to-date dependency versions rely on Java 8 and it's easier if that is the default.

To be clear, this changes behavior - previous default version was Java 7, this changes it to Java 8.
2021-04-27 09:37:14 +08:00
dependabot[bot]
1f880f43d4 Bump actions/setup-java from v1 to v2 (#9187)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from v1 to v2.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v1...8764a52df183aa0ccea74521dfd9d506ffc7a19a)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-26 22:35:17 +08:00
William Cheng
ad3ecadd75 Move ensure up-to-date script to drone.io (#9339)
* move ensure up-to-date to drone.io

* fix tests

* Revert "fix tests"

This reverts commit ea5efd3b3b.

* skip 2.0 tests

* use mvnw

* fail fast

* fix meta-codegen

* test java 11 first
2021-04-26 22:08:49 +08:00
dersvenhesse
a62d22593e [DOCS] Updated pom.xml snippet with latest version (#9342) 2021-04-26 16:41:45 +08:00
William Cheng
f572125b30 [Python] Fix exclusive min and max (#9340)
* [Python] Fix exclusiveMinimum and exclusiveMaximum conditions

* add tests, update samples

Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>
2021-04-26 14:01:40 +08:00
Yuriy Belenko
b6197dd859 [core] Add refreshUrl to CodegenSecurity (#9210)
* Add refreshUrl to CodegenSecurity

Ref:
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#oauth-flow-object

* Add refreshUrl to setOauth2Info method
2021-04-26 10:33:18 +08:00
William Cheng
7df0f56fdc update samples 2021-04-26 10:21:48 +08:00
Ayman Bagabas
f7c3773903 Swift5 use json type for any (#9206)
* [swift5] Fix additionalProps inner type

* [swift5] Add and use AnyCodable type instead of any

* [swift5] Use the original petstore w/fake models for testing default

* [swift5] Update swift-tools-version to 5.1

* [swift5] Update samples and docs
2021-04-26 09:57:42 +08:00
Mateusz Hubert Stefaniak
b9a1c8f016 [Java][Spring] Fix for #8659 - Different in-parameter types generated for api and delegate for files (#9331) 2021-04-26 09:49:21 +08:00
Sai Giridhar P
812d563c78 [Java][Jersey2]: Fixing a package import (#9336) 2021-04-26 09:15:49 +08:00
Ayman Bagabas
0f5e7d1e3c Swift5 models improvements (#9205)
* [swift5] Add useClasses to use `final class` instead of `struct`

* [swift5] Always include CodingKeys enum

* [swift5] Implement model equals and hash functions

* [swift5] Encode `null` values

* [swift5] Test `useClasses` in urlsessionLibrary

* [swift5] Add a required nullable prop test case to 2_0/swift/petstore*.yaml

* [swift5] Update samples and docs
2021-04-24 10:04:30 +08:00
Stefan Hanselmann
22950fa2b2 [Kotlin][#9313] Generator should support optional form parameter (#9314)
* [Kotlin][#9313] Make form params optional in Kotlin retrofit2 template.

* [Kotlin][#9313] Update sample files.

* [Kotlin] [#9313] Remove new line at the end of the mustache template
2021-04-23 12:30:58 +08:00
William Cheng
ee905cf0fe add the u of aizu to the user list (#9326) 2021-04-23 12:11:57 +08:00
William Cheng
ab688d4c3a Update documentation (#9322)
* update doc

* update doc
2021-04-22 20:54:01 +08:00
William Cheng
05aa956fe1 update samples 2021-04-22 19:20:11 +08:00
Ayman Bagabas
33107c14de [Swift5] escape reserved words (#9204)
* [swift5] `List` is not a Swift data type

* [swift5] Escape reserved words using backticks

https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID412

* [swift5] Update tests

* [swift5] Update samples and docs
2021-04-22 19:13:39 +08:00
Stefan Hanselmann
5468b22b83 [Kotlin][#7925] Make ApiClient in jvm-retrofit2 be able to add additional retrofit Converter.Factory (#9316)
* [Kotlin][#7925] Add an optional Converter.Factory to the Kotlin retrofit2 ApiClient template.

* [Kotlin][#7925] Update sample project.
2021-04-22 19:07:55 +08:00
Stefan Hanselmann
05f329959c [Kotlin][#9317] Add parameter sorting to Kotlin client generator (as used in the Java generator). (#9318) 2021-04-22 18:48:26 +08:00
William Cheng
946d145d30 [bash] Update Bash Client Dockerfile.mustache (#9310)
* Update Dockerfile.mustache

Using alpine instead of ubuntu for leaner Docker images.

Small fix for welcome message.

Changing default shell to `zsh` and fixing entrypoint.

* update samples

* move config, add new files

Co-authored-by: avbenavides <62693723+avbenavides@users.noreply.github.com>
2021-04-22 15:02:38 +08:00
William Cheng
d7736366b7 add a link to twilio blog (#9312) 2021-04-22 12:28:17 +08:00
William Cheng
d44d9a3907 Add a link to blog post in unibuddy tech blog (#9311)
* Add a link to blog post in unibuddy tech blog

* minor change

* fix link
2021-04-22 12:17:07 +08:00
dependabot[bot]
347a4cef47 Bump actions/upload-artifact from v2.2.2 to v2.2.3 (#9198)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from v2.2.2 to v2.2.3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.2.2...ee69f02b3dfdecd58bb31b4d133da38ba6fe3700)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-22 08:44:07 +08:00
dependabot[bot]
b38166305f Bump actions/cache from v2.1.4 to v2.1.5 (#9249)
Bumps [actions/cache](https://github.com/actions/cache) from v2.1.4 to v2.1.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.4...1a9e2138d905efd099035b49d8b7a3888c653ca8)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-22 08:38:02 +08:00
Ayman Bagabas
3894aa4759 [swift5] Add useSPMFileStructure (#9074)
* [swift5] Add useSPMFileStructure

Signed-off-by: Ayman Bagabas <ayman.bagabas@gmail.com>

* [swift5] Add swiftPackagePath

Prioritize swiftPackagePath over useSPMFileStructure

* [swift5] Add cli options and update docs

* [swift5] Fix tests

* [swift5] Update XcodeGen source path

* [swift5] Update samples and docs

Add useSPMFileStructure to URLSession library
2021-04-22 00:43:33 +08:00
William Cheng
139e9e458f Minor improvements to go-echo server (#9303)
* minor improvements to go-echo server

* update go tech comm
2021-04-21 21:11:05 +08:00
William Cheng
b4f174753c [PS] minor improvements to the auto-generated appveyor.yml (#9300)
* appveyor improvement

* update samples
2021-04-21 18:18:02 +08:00
Farshad Nematdoust
733a180a62 Add Go echo server codegen (#9224)
* Update codegen config

* Add templates for Go Echo openapi-codegen

* Add the yaml config file!

* Add GoEchoServerCodegen.java.
This is the first iteration, it works but probably needs a lot of improvements.

* Update codegen, adds some comments.

* Update GoEchoServerCodegen.java

* Update GoEchoServerCodegen.java

* Update GoEchoServerCodegen.java and related yaml file

* Add the result of generate-samples.sh for CI purposes.

* Add the result of bin/utils/ensure-up-to-date for CI purposes.

* Update go-echo-server-petstore-new.yaml
Fix the outputdir

* Update in regard to result of ./bin/generate-samples.sh

* Update in regard to result of ./bin/generate-samples.sh

* Remove wrongly generated files

* Add correct generated files.

* Add changes regarding /bin/utils/ensure-up-to-date

* Update templates to include comments.

* Update/add result of ./bin/generate-samples.sh and ./bin/utils/export_docs_generators.sh
2021-04-21 16:22:10 +08:00
William Cheng
92561085ba update ruby sinatra samples 2021-04-21 16:00:23 +08:00
Yasuhiro ABE
d4748a7a20 Dockerfile for the Ruby-Sinatra generator (#9299)
* add the Dockerfile and updated the README and others.

Signed-off-by: Yasuhiro ABE <yasu-abe@u-aizu.ac.jp>

* fixed the indent to follow the coding style guide.

Signed-off-by: Yasuhiro ABE <yasu-abe@u-aizu.ac.jp>

* revised.

Signed-off-by: Yasuhiro ABE <yasu-abe@u-aizu.ac.jp>
2021-04-21 15:46:56 +08:00
William Cheng
ebc98ec848 [PowerShell] improve return type documentation (#9295)
* revise return type doc

* revise return type doc
2021-04-21 10:01:41 +08:00
Sean Kelly
ef2299ad65 Qt5 support date format enum (#9283)
* initial commit

* Update sample and make sure it builds

* PR feedback

* Limit scope of struct to within the class and fix whitespace
2021-04-21 09:55:30 +08:00
William Cheng
41f586bede update cpp ue4 samples 2021-04-20 21:47:12 +08:00
Josh Wittner
28e0d9b22e Support FGuid with helpers (#9291) 2021-04-20 21:23:36 +08:00
William Cheng
51028f0c1b prevent NPE in constructing oneOf example (#9231) 2021-04-20 15:05:34 +08:00
Esteban Gehring
aa5adbf3f5 update samples (#9288) 2021-04-19 08:11:00 +02:00
William Cheng
da37e980d3 [Kotlin]] add support for binary response (#9284)
* Support File responses for Kotlin client

* Regen samples

* Reset version

* Fix file class check

* Add imports

* use Files.createTempFile instead

* better tmp file naming

Co-authored-by: Mischa Spiegelmock <me@mish.dev>
2021-04-17 18:25:32 +08:00
William Cheng
77dfd40681 [Enhancement] added support for custom type & format mapping (#9285)
* resolve merge conflicts

* use + in type mapping, add tests

* add new test spec
2021-04-17 18:24:59 +08:00
Themi Tsiotas von Pfaler
a9c7644c32 [typescript-axios] add missing baseName when using set or append on FormData (#9273) 2021-04-17 09:14:55 +02:00
Emmanuel Roux
032911990d typescript-angular: Fix Cannot read property 'apiKey' of undefined (#9260)
* fix #9259

* avoid optional chaining operator
2021-04-16 16:54:58 +02:00
Cody Mikol
b5dac42959 feat(adapter): add BigDecimal kotlin support (#8880)
* feat(adapter): add BigDecimal kotlin support

this allows the kotlin client generator to support
BigDecimal values

Fixes #7196

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-04-16 22:24:10 +08:00
Luca Mazzanti
3929afff7d [csharp][netcore-httpclient] Refactor of constructors (#9145)
* Refactor on constructors

Updated samples

Fixed a bug of previous commit

Refactor on constructors

* Fixed indentation in source code

* Updated samples

* Marked constructors with obsolete

* Updated obsolete constructors messages

* Updated samples
2021-04-16 22:03:07 +08:00
William Cheng
515d4a0153 [Java][JavaJaxRS] Respect readOnly/writeOnly attribute markers (#9276)
* [Java] [JavaJaxRS] Respect readOnly/writeOnly attribute markers

Generate jackson JsonProperty like following:
- `readOnly` is present in Spec: `@JsonProperty(value = "[name]", access = JsonProperty.Access.READ_ONLY)`
- `writeOnly` is present in Spec: `@JsonProperty(value = "[name]", access = JsonProperty.Access.WRITE_ONLY)`

Edge case: both are present -> Spec is invalid and generator cancels anyway with:
> org.openapitools.codegen.SpecValidationException: There were issues with the specification. The option can be disabled via validateSpec (Maven/Gradle) or --skip-validate-spec (CLI).
> | Error count: 1, Warning count: 1
> Errors: 
>	-attribute components.schemas.Example. writeOnly and readOnly are both present

* update samples

Co-authored-by: Michael Kroll <9883575+mickroll@users.noreply.github.com>
2021-04-16 18:07:41 +08:00
Christopher Schramm
4a63aae746 [Kotlin] Fix (de)serialization of enum classes (#7917)
While inner enum classes from dataClass.mustache work fine, standalone enum classes lack `@JsonProperty` annotations so that Jackson uses names instead of values.
2021-04-16 12:01:05 +08:00
Moshe Elisha
af992e4b29 [Java] [Native] Add response body to exception message (#9169)
* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Revert "Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true"

This reverts commit 56e2b1fb

* Revert "Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true"

This reverts commit 335c304d

* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed

* Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed

* Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed

* [Java] [Native] Add response body to exception message

* [Java] [Native] Use default base URI if baseUri param is null

* [Java] [Native] Use default base URI if baseUri param is null
2021-04-16 11:02:56 +08:00
Stieglitz
6dce8179de [Kotlin] Fix (de)serialization of enum classes (kotlinx serialization) (#9143)
* fix kotlin enum serialization

* fix kotlin serialization compiler warning

* change samples
2021-04-16 10:46:51 +08:00
jenswet-el
786458e928 Add missing ResponseBody import (#9239) 2021-04-16 10:11:04 +08:00
Thomas Hervé
60dcf8613f Don't include read-only properties in Python examples. (#9252)
* Don't include read-only properties in Python examples.

When using a schema with read-only fields as API inputs, Python
generates examples for those: this excludes them.

* Fix tests
2021-04-14 11:43:28 -07:00
Vincent Galloy
9edf70e980 @Input and @Internal should not be apply on the same property (#9059)
Motivation:

In Gradle 7.0 apply @Input and @Internal on property is forbidden.
Before Gradle 7.0 applying both on the same property is confusing. According to the documentation:

* @Input: Attached to a task property to indicate that the property specifies some input value for the task.
* @Internal: Attached to a task property to indicate that the property is not to be taken into account for up-to-date checking
2021-04-14 17:02:48 +08:00
William Cheng
dbdb6c51c4 fix missing space in bash script 2021-04-14 16:55:12 +08:00
William Cheng
19b68f75de [Docker] support multi-arch build (#9246)
* multi arch build

* fix buildx

* use openjdk

* fix bash install

* remove armv7

* remove arm64

* use jre 11

* add v8

* skip bash install

* add back tests

* remove v8

* minor change

* fix tag and push

* fix tag

* skip pull request for dockerhub push
2021-04-14 11:15:12 +08:00
William Cheng
c285f393b0 switch to oas3 spec for php-symfony samples (#9248) 2021-04-14 10:36:48 +08:00
William Cheng
1b63822501 camelize name in nim (#9255) 2021-04-14 10:14:59 +08:00
Peter Leibiger
b4ea00ed42 [dart][dart-dio] Add built_value date support w/o timemachine (#9180)
* [dart][dart-dio] Add built_value date support w/o timemachine

* Test improvements

* Fix lists of dates not working
2021-04-13 16:52:27 +08:00
Eike Starkmann
7a1f7b2270 Update model_variables.mustache (#7074)
Recursive validate non primitive objects
2021-04-13 14:57:50 +08:00
Peter Leibiger
29c1688860 [dart][dart-dio] Update pubspec/readme templates (#9201)
* Add homepage option to pubspec.yaml

package validation fails when trying to publish to pub.dev

See: https://dart.dev/tools/pub/pubspec
Blocking https://github.com/bigpanther/trober/pull/108

cc: @kuhnroyal

* Add missing fields

* Update templates and generate samples

Co-authored-by: Harsimran Singh Maan <maan.harry@gmail.com>
2021-04-13 14:37:15 +08:00
William Cheng
13c0b2c3c7 Use warning instead of throwing exceptions (#9188)
* use warning instead of throwing exceptions

* comment out tests
2021-04-13 14:09:19 +08:00
William Cheng
1f227061c6 add sponsor message in F# giraffe generator (#9247) 2021-04-13 13:50:41 +08:00
Aliaksei Zhuk
53e5986800 [Go] Parse int arrays and respect the 'required' property (#9120)
* Added int arrays parsing in parameters. Respect the 'required' property.

* Replaced spaces with tabs

* Generate samples with new spacing

* Removed unused import

* Merged with latest master
2021-04-11 23:43:53 +08:00
johannes karoff
63fdd3eaf0 support uuid parameter (#9215) 2021-04-11 18:42:00 +08:00
gbmarc1
8e0955fd3c Bug - python client deserialization when attribute named self (#9006)
* fix by mapping outside of class

* tests

* regeneration and tests

* server

* INDENT

* a

* enable mapping

* Revert "server"

This reverts commit 6fc9712fb5.

* Samples regenerated

Co-authored-by: Justin Black <justin.a.black@gmail.com>
2021-04-10 19:00:32 -07:00
William Cheng
14c7f39c2b [C#][netcore] Add multiple frameworks support (#9196)
* add multiple frameworks support

* test in appveyor

* update samples
2021-04-09 21:25:56 +08:00
Guy King
23c9627b98 Resolve response type name conflict in angular typescript lib (#9216)
* fix: rename var

* fix: run pr checklist scripts

* fix: correct response type var name for http client

* chore: run build scripts

* test: ci and correct name?
2021-04-08 21:57:23 +02:00
Esteban Gehring
fa4462ef11 Revert "Resolve responseType name conflict in Angular Typescript lib (#9202)" (#9214)
This reverts commit 9dda4aa2e8.
2021-04-08 18:52:54 +02:00
mazrean
01ff635139 [Go] Fix golang comment typos (#9207)
* fix go comment typo insensitive

* fix go comment typo response

* update samples
2021-04-08 09:59:31 +08:00
Guy King
9dda4aa2e8 Resolve responseType name conflict in Angular Typescript lib (#9202)
* fix: rename var

* fix: run pr checklist scripts
2021-04-07 19:35:20 +02:00
Peter Leibiger
065c0281fa [dart] Improve types & imports (#9167)
* [dart] Improve types & imports

* don't use importMapping as it is intended for something different that is not possible in dart
* introduce imports map for dart specific features
* always import `dart:core`
* get rid of additionalReservedWords
* fix `--type-mappings` not working
* use required type mappings in samples
* no longer define additional reserved words  as it is impossible to list all anyways, they can now be configured via type-mapping parameter
* simplify dio imports

* Don't use guava for map instantiation

* Update docs
2021-04-07 00:33:35 +08:00
HexagonSun
acedd1cfba [typescript-angular] Provide return value for all code paths (#9174) (#9176)
In order to avoid a compiler error when using `noImplicitReturns `, we
change the mustache template to use provide a return value for the if-
and else branch.

Fixes #9174.
2021-04-06 07:21:11 +02:00
Makoto Aoyama
c3b7ecff21 Add Hashable for Struct (#9166)
* Add hashable for struct

* Remove x-swift-hashable

* Run the shell script ./bin/generate-samples.sh
2021-04-06 10:50:23 +08:00
Peter Leibiger
29c131e781 [dart][dart-dio] Update dependencies (#9178)
* finally use released versions for http mocking
2021-04-05 23:39:18 +08:00
Peter Leibiger
11eedc86dc [dart] Remove OS2 samples which have OAS3 counter parts (#9177)
These samples are the same as their OAS3 counterparts and don't give any additional benefits. This should speed up CI builds by a good amount.
2021-04-05 22:59:14 +08:00
Thibault Duperron
4462d35195 Link filehash with execution id (#7848)
Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-04-05 21:11:27 +08:00
Yuri Orlov
659b00a4f9 use standard constant for UTF8 charset in generated java api clients (#7828) 2021-04-05 20:02:28 +08:00
William Cheng
5dae270c3e [Go][server] parse bool in query parameter (#9171)
* Add bool query in example

* Add parseBoolParameter

* test with boolean parameter

* add endpiont for testing boolean

* remove bool parameter test

Co-authored-by: Stéphane Guillemot <gmtstephane@gmail.com>
2021-04-05 16:45:38 +08:00
William Cheng
c79d056935 Allow to specify response headers (needed for redirecting clients) (#9170)
* Allow to specify response headers (needed for redirecting clients) (#8148)

Co-authored-by: Bernardo Pastorelli <13519917+randomswdev@users.noreply.github.com>

* add addResponseHeaders option

* enable addResponseHeaders

* fix comma

Co-authored-by: randomswdev <randomswdev@users.noreply.github.com>
Co-authored-by: Bernardo Pastorelli <13519917+randomswdev@users.noreply.github.com>
2021-04-05 16:27:41 +08:00
Matthew Dowdell
226a8b5f77 Update templating docs to correct the name of x-response-id (#7839) 2021-04-05 11:33:38 +08:00
Hippolyte HENRY
f8202df9aa [go] Add constructor and IsValid method to enum types (#8224)
* Add constructor and IsValid method to enum types

* Add samples
2021-04-04 17:32:17 +08:00
lerminou
7cf6ee1957 [php-symfony] fix double quoting string defaults values (#9126)
quoting for default values is already done in:
https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java#L533
2021-04-04 10:40:16 +08:00
Martin Delille
c9716fcebb Include QVariant helpers header (#9161) 2021-04-04 10:06:57 +08:00
William Cheng
403e9bca44 replace semver versin with just version 2021-04-03 14:46:22 +08:00
Marcono1234
7a3b01a0f6 Update usage.md with current CLI output (#9156) 2021-04-03 11:28:25 +08:00
William Cheng
4db6f46a00 Add links to blog posts about openapi-generator (#9164)
* Add links to blog posts about openapi-generator

* add more articles

* add more article
2021-04-03 11:18:05 +08:00
Justin Black
fc58adee31 Fixes serialization of array items in model_to_dict [python] (#9153)
* Adds tests of endpoint with inline and refed model

* Regen samples

* Samples regenerated
2021-04-01 13:34:19 -07:00
Justin Black
71f67c3d40 Samples regenerated (#9154) 2021-04-01 11:31:21 -07:00
sforst
7bf792a348 [typescript-axios] handle uniqueItems in query and header parameters (#8965)
* [typescript-axios] handle uniqueItems in query and header parameters

add endpoint /fake/test-unique-paramters to petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml for demonstration

* update samples

* [typescript-axios] update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-04-01 16:57:36 +08:00
cal
57e44e173f [cleanup] erefactor/EclipseJdt - Evaluate without null check (#9134)
EclipseJdt cleanup 'EvaluateNullable' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-04-01 11:32:10 +08:00
de1mos
b335ba834f fix #7325 kotlin-spring fix reactive delegate pattern combination (#8867)
* #7325 kotlin-spring remove exchange field from reactive delegate pattern

* #7325 remove examples from kotlin-spring reactive delegate and add missing import

* #7325 add test assertions

* fix swagger spec in test
2021-04-01 09:47:11 +08:00
William Cheng
917b358e27 Merge remote-tracking branch 'origin/master' into 5.2.x 2021-04-01 09:25:19 +08:00
William Cheng
59089feb64 update samples 2021-04-01 09:19:50 +08:00
Noor Dawod
26ca6ab27e [Dart2] Add initial support to use an isolate to offload JSON serialization/deserialization (#9100)
* Change signature of deserialize() to be a Future.

* Grammar tlc for a couple of sentences.

* Make serialize() use a Future also.

* Add useCompute as a parameter to ApiClient, adjust to use compute when serializing/deserializing.

* Updated Pet Store client code.

* Ordered imports.

* Remove Flutter-specific implementation.

* Rename global functions to serialize/deserialize JSON.

* Fix return type for apiClientSerialize.

* Updated pet store client code.

* Remove remark for _deserialize.

* Make _decodeBodyBytes a Future function.

* Updated pet store client code.

* Use await when calling serialize().

* Fix a grammatical error.

* Adjust doc.

* Centralize deserialization code in one function.

* Updated pet store client code.

* Add await to serialize() in few more tests.

* Make output look better for linting and humans.

* Updated pet store code.

* Add an empty line.

* Updated pet store code.

* Call the right serializer.

* Reuse same variable.

* Updated pet store code.

* Fix a logical error when deserializing.

* Calculate growable once.

* Ignore reassignment.

* Adjust a test.

* Regenerate petstore code.

* Revert back previous test.

* Use serialize() for testing.

* Revert using serialize() for testing.

* Add removal deprecation for serialize/deserialize.

* Updated petstore code.

* Updated deprecation note.

* Adjust tests to wait for futures.
2021-03-31 23:53:22 +08:00
Justin Black
6cc270633b [python] Fixes additional_properties_type for models (#8802)
* Fixes additionalProperties values for models, updates docs, adds tag test of it, fixes frit and gmfruit tests

* Moves this.setDisallowAdditionalPropertiesIfNotPresent higher

* Makes setting additional_properties_model_instances contingent on the presence of addprosp in schema, updates sample spec composed schemas to remove addprops False form two

* Fixes oneOf anyOf allOf instantiation logic

* Removes Address from Cat definition

* Adds required vars for apple and banana, removes required vars from composed schema init sig

* Updates composed schema vars to be set on self and all composed instances

* Removes get_unused_args, get_var_name_to_model_instances, and get_additional_properties_model_instances

* Fixes fruit + deserilization tests, creates ComposedSchemaWithPropsAndNoAddProps

* Fixes FruitReq tests

* Fixes GmFruit tests

* Fixes discard_unknown_keys tests

* Samples updated

* Removes additionalproperties False in Child

* Samples updated

* Improves handling of v2 and v3 specs for isFreeFormObject, v2 sample spec updated with link to bug

* Adds cli option disallowAdditionalPropertiesIfNotPresent to python

* Adds getAdditionalProperties method so the value for addProps will be correct

* Reverts file

* Reverts file

* Updates python doc

* Reverted anytype_3 definition

* Updates test_deserialize_lizard

* Updates test_deserialize_dict_str_dog

* Updates testDog

* Updates testChild

* Adds v2 python_composition sample

* Adds needed files for python testing

* Adds existing tests into the new python sample

* Fixes test_dog

* Removes addProps false form Dog

* Fixes testChild

* Updates how additionalProperties are set

* Fixes empty_map type

* Type generation fixed for v2 and v3 specs

* Refactors getTypeString, updates artifactids in pom.xml files

* Adds new python sample to CI testing I think

* Fixes artifactId collision, regenrates docs
2021-03-31 08:48:12 -07:00
Peter Leibiger
47e292c0e7 [dart][dart-dio] Remove sample formatting from dart-dio-next (#9121) 2021-03-31 16:45:47 +08:00
William Cheng
628e3d1914 remove pthread (#9130) 2021-03-31 15:56:50 +08:00
William Cheng
de5651adac [C#] fix integer enum without format (#9136)
* fix inner enum integer without format

* add line break, update samples

* remove line break

* add line break

* update SHA
2021-03-31 15:11:10 +08:00
Luca Mazzanti
e1ef00903e [csharp][netcore-httpclient] Reuse HttpClient, Allow use of external HttpClient. Patch to previous PR. (#9109)
* [csharp][netcore-httpclient] Reuse HttpClient, Allow use of external HttpClient.

* Updated samples

* Removed local variables no more useful

* Added InvalidOperationException when used a configuration not supported for the constructor

* Updated samples
2021-03-30 18:10:08 +08:00
Justin Black
ae099330b9 Feature fixed, samples regenerated (#9131) 2021-03-29 23:42:14 -07:00
William Cheng
3973d4c831 Merge remote-tracking branch 'origin/master' into 5.2.x 2021-03-30 12:00:41 +08:00
William Cheng
a3072680cd update samples 2021-03-30 11:54:37 +08:00
William Cheng
99ddd6d2f2 Merge remote-tracking branch 'origin/master' into 5.2.x 2021-03-30 11:41:09 +08:00
Jakob
0af45b3823 [Java] add jackson annotations to setters (#9041)
* [Java] add jackson annotations to setters

Closes #6856

* [Java] fix conflictiong setter with JsonNullable
2021-03-30 11:17:15 +08:00
William Cheng
becb424455 [PHP] minor code enhancement (#9009)
* minor code enhancement

* remove unused files
2021-03-30 11:13:30 +08:00
William Cheng
f898bfc7d6 better default value handling in go generators (#9106) 2021-03-30 11:09:21 +08:00
Peter Leibiger
f66fbf6969 [dart][dart-dio] Update dependencies (#9122)
* [dart-dio] Update dio

* [dart-dio] Update to dio 4.0.0

* [dart-dio] Fix dependency problems with Dart 2.12 SDK during build

* Revert changes to analyzer

This only fails locally, not sure why. CI only shows a warning.

* Fix compile error after http_mock update
2021-03-30 00:17:37 +08:00
cal
7816ea076e [cleanup] erefactor/EclipseJdt - Invert equals arguments if parameter is constant string (#9111)
EclipseJdt cleanup 'InvertEquals' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-29 23:58:52 +08:00
cal
6daecb88c2 [cleanup] erefactor/EclipseJdt - Use primitive parse methods instead of wrapper. (#9113)
EclipseJdt cleanup 'ParsePrimitive' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-29 21:02:51 +08:00
Peter Leibiger
6c8bc1ec88 [core] Allow using lists as globalProperty in config files (#8339) 2021-03-29 20:56:11 +08:00
cal
d913b14d45 [cleanup] erefactor/EclipseJdt - Make inner class static (#9112)
EclipseJdt cleanup 'MakeInnerClassStatic' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-29 20:54:41 +08:00
cal
67d7f60f6a [cleanup] erefactor/EclipseJdt - Convert 'for' loops to enhanced (#9110)
EclipseJdt cleanup 'ConvertForLoopToEnhanced' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-29 12:13:26 +08:00
William Cheng
8d372fa66a better null check for response (#9105) 2021-03-29 12:05:17 +08:00
William Cheng
ab6c6962c2 add enum suffic support to rust client (#9107) 2021-03-29 11:40:26 +08:00
linnefromice
70616b541e [Ruby] remove duplicated supportingFiles.add (#9108)
* remove duplicated supportingFiles

* modify examples - remove duplicated supportingFiles
2021-03-29 11:31:24 +08:00
William Cheng
9fb97c6c29 postpone require models with parent (#9103) 2021-03-29 11:07:57 +08:00
Justin Black
fe52529f05 [python] fix custom model template feature (#9118)
* Removes colliding __init__model.mustache in PythonClientCodegen.java

* Removes unused files

* Regenerates samples
2021-03-28 11:28:25 -07:00
William Cheng
c99226900b update samples 2021-03-27 18:47:57 +08:00
Blackclaws
45654d28ed [csharp][netcore-httpclient] Reuse HttpClient, Allow use of external HttpClient, Fix Socket Exhaustion, Alternative With Constructor Injection (#9085)
* Do not allow not reusing HttpClient, fix socket exhaustion issues, add Readme on how to add your own client

* Add Readme change

* Alternative version via constructor injection

* Update samples

* Update usage in ExecAsync

* Clean Constructor

* Add Warning to constructor, Update Samples

* Add warning, fix last constructor, update samples

* Change client to private in constructor injection

* Add disposable to ApiClient

* Do not dispose handler if we did not create it

* Update samples

* Add disable switch and update samples and documentation
2021-03-27 15:20:58 +08:00
William Cheng
b7f389aacb minor code improvement (#9091) 2021-03-27 14:57:26 +08:00
Prakhar Gupta
b1837693b1 [JAVA][jaxrs-spec] Added custom methods to add/remove elements from Java Collections (#6468) 2021-03-27 13:59:49 +08:00
Jakub Surdej
711ce5431a Add method allowing to apply middleware to request (#7403)
Prepare custom auth function template to be optional one

Rename auth function to middleware

Move middleware execution below operations with context

Generate samples for go

Modify new line characters in template not to affect default one

Generate samples with modified template
2021-03-27 13:53:30 +08:00
Phillip Verheyden
fa624ef38c Use prepare script instead of prepack (#7807)
Including the generated JS client library code as a git repository did not work when executing npm install. It complained about not being able to find 'babel'. Apparently when referencing a dependency from git, both prepare and prepack are executing to build the 'dist' directory, but prepack does will not include any devDependencies. Therefore we need to switch this to prepare instead.
2021-03-27 13:45:11 +08:00
William Cheng
e6f56626ed Revert "Enable useOneOfInterfaces for the ruby generator (#8061)" (#9104)
This reverts commit 23bc2aaf6b.
2021-03-27 13:43:31 +08:00
Jacob Burroughs
23bc2aaf6b Enable useOneOfInterfaces for the ruby generator (#8061)
Tested against https://ftc-events.firstinspires.org/swagger/v2.0/swagger.json

Used to generate un-runnable code, now it works
2021-03-27 13:42:48 +08:00
William Cheng
3579094298 update samples 2021-03-27 13:03:16 +08:00
dependabot[bot]
474df9dd5e Bump actions/download-artifact from v1 to v2.0.8 (#8781)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from v1 to v2.0.8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v1...4a7a711286f30c025902c28b541c10e147a9b843)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-27 10:04:20 +08:00
dependabot[bot]
a2401f71b0 Bump actions/upload-artifact from v1 to v2.2.2 (#8782)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from v1 to v2.2.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v1...e448a9b857ee2131e752b06002bf0e093c65e571)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-27 10:04:09 +08:00
dependabot[bot]
8e7440e294 Update actions/cache requirement to v2.1.4 (#8780)
Updates the requirements on [actions/cache](https://github.com/actions/cache) to permit the latest version.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](26968a09c0)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-27 10:03:32 +08:00
tomred-net
38b49e77af fix #8755 [BUG] Java (jersey2) ApiClient debug cannot be enabled (#8756)
* fix #8755 [BUG] Java (jersey2) ApiClient debug cannot be enabled

* fix #8755 updating samples
2021-03-27 10:01:39 +08:00
avbenavides
2525639875 Update client.mustache (#8970)
Bash Client Escapes parameters with a 't' to %09 and leaves tabs unescaped
Fixes https://github.com/OpenAPITools/openapi-generator/issues/7303
2021-03-27 09:59:53 +08:00
sullis
764d7f3035 maven-jar-plugin 3.2.0 (#8248) 2021-03-27 09:57:23 +08:00
leonluc-dev
7e6ce69c64 [ASPNETCORE 3.x] Microsoft.AspNetCore.Authorization directive no longer requires useSwashbuckle condition (#8368)
* Update controller.mustache

Moved using directive for Microsoft.AspNetCore.Authorization outside of useSwashbuckle tag to prevent compilation errors with Authorize tag if Swashbuckle is disabled.

* Updated aspnetcore-3.x samples
2021-03-27 09:56:37 +08:00
William Cheng
5abf020be3 use interrupted exception instead of just exception (#9092) 2021-03-26 21:41:24 +08:00
William Cheng
854296634a better logging (#9090) 2021-03-26 18:21:59 +08:00
William Cheng
16b141e402 Merge remote-tracking branch 'origin/master' into 5.2.x 2021-03-26 10:20:36 +08:00
William Cheng
e71ae12e14 Restore interrupted state (#9084) 2021-03-26 09:42:27 +08:00
William Cheng
ba28702da0 Remove dart-jaguar configs and samples (#9081)
* remove dart jaguar config and samples

* update pom.xml
2021-03-26 09:42:15 +08:00
William Cheng
402cf9a3a2 Fix integer enum in csharp generators (#9035)
* fix integer enum in csharp generators

* add comment
2021-03-25 21:30:42 +08:00
cal
6a26ac8e20 [cleanup] erefactor/EclipseJdt - Remove trailing whitespace - All lines (#9077)
EclipseJdt cleanup 'RemoveAllTrailingWhitespace' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-25 21:24:24 +08:00
cal
97e27f2b36 [cleanup] erefactor/EclipseJdt - Remove trailing whitespace - All lines (#9076)
EclipseJdt cleanup 'RemoveAllTrailingWhitespace' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-25 21:23:29 +08:00
cal
9419de573e [cleanup] erefactor/EclipseJdt - Remove unused imports (#9075)
EclipseJdt cleanup 'RemoveUnusedImport' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-25 21:21:21 +08:00
cal
6e0ca448dd [cleanup] erefactor/EclipseJdt - Remove unused imports (#9068)
EclipseJdt cleanup 'RemoveUnusedImport' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-25 16:42:41 +08:00
William Cheng
fea1377603 Use InterruptedException, IOException instead of just Exception (#9063)
* use InterruptedException, IOException instead of just Exception

* undo changes to the license
2021-03-25 13:30:30 +08:00
cal
7813398e7e [cleanup] erefactor/EclipseJdt - Remove unused imports (#9067)
EclipseJdt cleanup 'RemoveUnusedImport' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-25 10:52:22 +08:00
cal
862e9cb79a [cleanup] erefactor/EclipseJdt - Remove unused imports (#9066)
EclipseJdt cleanup 'RemoveUnusedImport' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-25 10:51:53 +08:00
cal
ee2f585f37 [cleanup] erefactor/EclipseJdt - Remove unused imports (#9058)
EclipseJdt cleanup 'RemoveUnusedImport' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-24 20:48:14 +08:00
cal
8043a8b9f4 [cleanup] erefactor/EclipseJdt - Remove trailing whitespace - All lines (#9057)
EclipseJdt cleanup 'RemoveAllTrailingWhitespace' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-24 20:47:39 +08:00
cal
b7c5d38011 [cleanup] erefactor/EclipseJdt - Remove redundant semicolons (#9056)
EclipseJdt cleanup 'RemoveRedundantSemicolons' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.19/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-03-24 20:46:31 +08:00
William Cheng
7937e2e0c9 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-03-24 13:46:54 +08:00
William Cheng
0e0dc3f26b update doc 2021-03-24 13:45:52 +08:00
vnq
74e5c3ccd3 [php-symfony] remove nested Valid constraint (#8994)
* Fix constraint Valid cannot be nested

* Update PetController.php

* Update UserController.php
2021-03-24 13:30:42 +08:00
Kam
f137f3331a Add possibility to generate only files needed for sources compilation (#9012) 2021-03-24 13:27:25 +08:00
Blackclaws
650aaa2bee Fix FromForm for complex parameters (#9040) 2021-03-24 12:33:17 +08:00
Blackclaws
b69fb79573 [csharp][aspnetcore] Enable Consumes Tag for Specs where not every operation consumes (#9039)
* Change break to consumes so that all operations will be processed

* Update Samples
2021-03-24 12:30:23 +08:00
Ze Wang
7e0382b08d [Java][Jaxrs-Resteasy] Fixes generator devaultValues for int64/float/… (#8988)
* [Java][Jaxrs-Resteasy] Fixes generator devaultValues for int64/float/double

* add test

* fix tests

* trigger rerun of timeout tests

* remove SmartBear line from comments for new files

* trigger rerun of validations

* trigger rerun of validations

* trigger rerun of validations

* trigger rerun of validations

* trigger rerun of validations

* move postProcessParameter to AbstractJavaCodegen

* move postProcessParameter to AbstractJavaCodegen

Co-authored-by: zewang <zewang@deepmap.ai>
2021-03-24 12:23:34 +08:00
Florian Kamella
03be3c612d Fix default value generation for composed schemas in AbstractJavaCodegen (#8918) 2021-03-24 00:36:54 +08:00
Blackclaws
0f981fffc3 [csharp][httpclient] Fix accidental use of c# 8 language feature (#9037)
* Fix c# 8 language feature being present

* Change config to refer to netstandard 2.0

* Update samples
2021-03-24 00:33:13 +08:00
William Cheng
d438d797da [C#][netcore] Fix model, property name check (#9049)
* fix model, property name check in c# generator

* remove file

* remove file

* specify name
2021-03-23 20:00:26 +08:00
William Cheng
bedfe156bb specify name (#9051) 2021-03-23 19:59:27 +08:00
William Cheng
97a3fc4b8e [C#][netcore] Set EmitDefaultValue to true for boolean property (#9042)
* set EmitDefaultValue to true for boolean property

* update samples
2021-03-23 10:43:35 +08:00
William Cheng
39f0177ede [Java] Update WebClient dependencies (#8972)
* update webclient dependencies

* update build.gradle
2021-03-22 13:58:04 +08:00
Blackclaws
46a7d972b9 [csharp][aspnetcore] Fix FileUpload Parameter Generation for aspnetcore (#9000)
* Aspnetcore fix file parameters

https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/1183#issuecomment-612022568

* Update Samples

* Add Consumes to Controller. Needed for correct swashbuckle

* Add bodyParam annotation again

* Add InputFormatterStream

* Selective Use of IFormFIle

* Update samples

* Add missing List

* Fix duplicate consumes

* Update samples

* Remove executable bit

* Add missing files

* Add Comments
2021-03-22 12:35:45 +08:00
Justin Black
113d38eb71 Sets model.additionalProperties for composed schemas (#9033)
* Turns on setting model.additionalProperties for composed schemas when supportsAdditionalPropertiesWithComposedSchema is true, tests updated for v2 and v3 specs

* Comment change

* Samples updated

* Turns on supportsAdditionalPropertiesWithComposedSchema for CsharpNetCoreClient, samples regenerated

* Changes commented out, samples regnerated

* Refactors the update in setAddProps to not impact the charp client
2021-03-21 19:22:18 -07:00
William Cheng
e0021e662f update readme 2021-03-21 11:06:27 +08:00
William Cheng
773a8d8a08 move dart test to node 2, remove oas v2 dart tests (#9028) 2021-03-21 10:53:00 +08:00
William Cheng
3a0eb9d040 update meta-codegen 2021-03-21 00:58:43 +08:00
William Cheng
47483e60cb update version to 5.2.0-SNAPSHOT, update samples 2021-03-21 00:10:10 +08:00
William Cheng
0dc62e8b79 Prepare v5.1.1 in the master (#9027)
* Prepare v5.1.1 in the master

* move dart dio next to configs/other
2021-03-20 23:05:11 +08:00
William Cheng
e023eaa821 Prepare v5.1.0 release (#9017)
* prepare v5.1.0 release

* update samples (dart-dio-next)
2021-03-20 16:45:05 +08:00
Peter Leibiger
3d038b74fd [dart][dart-dio] Next-gen dart-dio generator (#8869)
* [dart-dio] Remove old Dart 1.x templates

* [dart-dio] Initial version of a next-gen Dart Dio generator

* Fix a couple readme links and examples

* Fix import in testcase

* Add integration tests to master POM

* Run initial dart format and improve some base formatting

* Generate docs

* Use integer matchers in test for content-length

* Separate more built_value specific files

* Fix mustache partial path

* Update pubspec template

* Fix tests after mock lib updates

* Generate with new built_value pre-release

This solves the problem of not being able to serialize null.

* Update built_value dependency

* Regenerate after merge

* Regenerate tests

* Fix missing byte response cast

* Update dio to 4.0.0-prev1

* Run format

* Ignore unused imports in inheritance classes

* Update mock test library

* Update docs

* Make a couple variables final

* Update and freeze dio dependency

* Update generator doc

* Add a new option to post processes all dart output at once

This is much faster than individual files. The committed samples should be formatted since Dart is very opinionated and it makes diffs in PRs much easier to read.
Due to this, we also need to format in CI, otherwise there is a git diff.

* Test some CI stuff
2021-03-20 12:26:56 +08:00
Blackclaws
88fa5d70d7 [csharp][csharp-netcore] Fix Fileupload for Request Bodies for RestSharp and HttpClient libraries (#9010)
* Fix Request Body File Upload for RestSharp and csharp-netcore

* Update Samples

* Fix missing using and update samples

* Enable upload test

* Fix form data and file upload handling for httpclient, update samples
2021-03-20 01:01:21 +08:00
William Cheng
46326249d2 mark httpclient support as experimental (#9016) 2021-03-19 23:14:58 +08:00
Blackclaws
061b00e990 [csharp][aspnetcore] Update aspnetcore nuspec and csproj with authors and description (#8995)
* Update aspnetcore nuspec and csproj with authors and description

* Removed unneccesary include
2021-03-19 21:25:32 +08:00
Peter Leibiger
de8b344a34 [dart] Generic docs update and fixes (#8999)
* [dart] Generic docs update and fixes

* none of the dart generators supports XML
* jaguar is no longer maintained
* dart and dart-dio support bearer token
* none of the dart generators supports composition atm.

* [dart-dio] Supports customization of authorizations and userAgent

* Remove deprecation of dart-jaguar for now
2021-03-19 21:15:13 +08:00
agilob
c920d08b69 [dart] mark json_serializable as experimental (#8979)
* Hide json_serializable from public users

* Make json_serializable as experimental

* Update wording marking json_serializable as experimental
2021-03-19 21:11:22 +08:00
William Cheng
f8bc4a1c4c remove unnecessary dependencies in android volley (#8991) 2021-03-19 20:44:42 +08:00
Denis Istomin
558bdad85d Update docs of skipFormModel default value (#9014) 2021-03-19 20:35:02 +08:00
Nikita Karnaukh
d657e95021 [Kotlin][Client] Added Kotlinx Serialization for JVM/Retrofit2/OkHttp3&4 (#6916)
* Added supporting kotlin.serialization for jvm

* Added Serializable annotations for java types(date,time,url,uri etc.)

* Added SafeEnumSerializer

* Added StringBuilderAdapter for kotlin.serialization
Fix adapter naming
Fix Retrofit ApiClient.kt for kotlin.serialization

* Added StringBuilderAdapter for kotlin.serialization

* Switch sample to retrofit2-kotlin-serialization

* Add sample for retrofit2-kotlin.serialization

* update sample

* update sample

* update sample #3

* Fix enum quotes for kotlin.serialization

* update samples

* update pom.xml

* add pom.xml to child module

* fix kotlin-multiplatform freeCompilerArgs

* refactoring, add useSafeEnum option, remove safeEnum for kotlin.multiplatform

* update kotlin samples

* fix import kotlinx.serialization.Required

* Update kotlinx.serialization 1.0.0-rc-2, kotlin 1.4.10, retrofit-kotlinx-converter 0.7.0

* Update gradle wrapper 6.7-rc-3

* fix SafeEnum import

* fix Json initialization,
fix SafeEnumSerializer

* update samples

* update kotlinx.serialization to 1.0.0

* Update gradle to 6.7 in kotlin samples

* fixed adding @Contextual for collections with non-primitive type elements

* remove unused SafeEnum imports, refactored

* update kotlin readme

* update kotlin project template Readme.md

* update samples for kotlin

* simplify template for class properties

* remove @Contextual from kotlin-multiplatform

* update kotlin multiplatform dependencies

* refactoring templates

* revert all changes for multiplatform

* fix tests

* revert multiplatform #2

* update samples after merge, fix missed isListContainer->isArray

* fixed redundant space before @Contextual

* Fixed enum template, Class were missed in generated samples

* fix enum template toString value->serialName

* fixed isEnum case for collections

* update samples

* removed useSafeEnum option, kotlinx serialization has out of box approach with coerceInputValues option for same behavior

* generate samples

* update kotlinx.serialization 1.0.1

* update samples

* Added pom.mustache template for kotlin-client samples with fixed execution of gradle wrapper instead standalone installed gradle on CI

* update samples with new pom.xml

* reverted enum value property name

* fixed kotlin-multiplatform pom.xml

* update kotlin-threetenbp sample

* update kotlin-string sample

* update kotlin-string sample

* fix adding kotlinx.serialization classpath to build.gradle

* generate samples

* add supporting kotlinx_serialization kotlinx.serialization.Serializable with java.io.Serializable at the same time

* update retrofit2-kotlinx-serialization-converter:0.8.0

* update kotlinx_serialization sample with retrofit2-kotlinx-serialization-converter:0.8.0

* apply suggest from @blendthink

* added proguard-rules.pro file for kotlinx.serialization on Android projects

* fix pom.mustache

* update gradle wrapper to 6.8.3

* update kotlin samples

* fix kotlin readme template, update kotlin samples

* update kotlin samples

* update kotlin sample
delete petstore/kotlin unit tests

* revert deletion kotlin client tests
remove adding pom.xml to kotlin client samples

* add support kotlinx serialization for okhttp3/4

* update kotlin client samples
2021-03-19 18:12:23 +08:00
William Cheng
349445ab01 update perl sponsorship message (#9004) 2021-03-19 12:20:30 +08:00
Justin Black
a925c76561 Adds hasRequired to all Java schema classes (#8962)
* Adds getHasRequiredVars + setHasRequiredVars to IJsonSchemaValidationProperties

* CHanges to getHasRequired and setHasRequired and implements in CodegenModel

* Updates CodegenProperty

* Updates codegenparameter

* Updates codegenresponse

* Uses setHasRequired in model/prop/parameter/response

* Adds issue spec 8906

* Adds testHasRequiredInModel

* Adds testHasRequiredInProperties

* Fixes issue spec errors

* Adds sample endpoint with schemas in patch parameter

* Adds testHasRequiredInParameters

* Adds response schemas in issue spec

* Samples and docs regenerated
2021-03-18 20:42:42 -07:00
William Cheng
2367460fef update sponsorship message in r generator (#8997) 2021-03-18 22:25:43 +08:00
William Cheng
95c775b694 update samples 2021-03-18 08:59:33 +08:00
Ajith Kumar
9ea852d4df [JAVA] [Spring] Conditionally importing spring pageable (#8915)
* [JAVA][SPRING] Making spring pageable import optional

* [JAVA][SPRING] Regenerating samples

* [JAVA][SPRING] Regenerating samples again
2021-03-18 00:03:31 +08:00
Peter Leibiger
d29d898774 [dart] Ensure tests compile with Dart 2.12+ (#8984) 2021-03-17 21:53:48 +08:00
sbu
e9f3b09d05 [DART] Add standard generated classes as reserved (#8975)
* [DART] Add standard generated classes as reserved

* Move StreamedRequest into dart client
2021-03-17 21:53:06 +08:00
Peter Leibiger
45a3764180 [dart][dart-dio] Fix missing byte response cast (#8985)
There doesn't seem to be an example.
2021-03-17 21:33:54 +08:00
Samuel Kahn
9ab3463144 [cpp-ue4] Added UE4.26 support, (#8964)
* [cpp-ue4] Fixed enum values not being quoted. I'm not sure when this started breaking.

* [cpp-ue4] UE 4.26 Compatibility: Replaced TSharedRef<IHttpRequest by FHttpRequestRef for better portability

* [cpp-ue4] Improved DateTime parsing

* [cpp-ue4] Made HttpFileInput constructors explicit

* [cpp-ue4] Added the possibility to retry requests easily with AsyncRetry method on the response and SetAutoRetryCount on the request

WIP auto retry

[cpp-ue4] Adds support for instant retry

* [cpp-ue4] Using TaskGraph instead of TaskGraphMainThread for async retries

* update samples

* remove trailing spaces

Co-authored-by: Jean-Noel Gourdol <jngourdol@stormancer.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-03-17 17:50:42 +08:00
Sondre Eikanger Kvalø
4bfe13767f [Kotlin] Upgrade jackson version used in the Kotlin client (#8689)
* Upgrade jackson version used in the Kotlin client #8688

* Generated project

* Remove spaces before import

* Add generated sample from previous commit
2021-03-17 12:18:52 +08:00
agilob
8a11a1aa74 [dart] Split mustache file by serialization (#8958)
* Split mustache file by serialization

* Move specific serialization files to own directories

* Deduplicate constructor in dart client generator
2021-03-17 11:41:25 +08:00
Hui Yu
f8842b04bb [C-libcurl] Generate API and module documents automatically (#8981) 2021-03-16 13:37:25 +08:00
Thomas Hervé
a1392305f1 Skip examples on complex body in Java (#8887)
* Skip examples on complex body in Java

This removes complex examples in Java which would not result in valid
code.

* Warn example being skip
2021-03-16 10:09:03 +08:00
sunn
fcab51322e [C++][Qt]Replace usage of QVariant with a more intuitive optional wrapper (#8960)
* Replace usage of QVariant with a more intuitive wrapper which also supports non standard types/classes

* Fix crash due to usage of object instead of reference
2021-03-15 18:56:20 +01:00
William Cheng
9d8494a89d update samples 2021-03-15 22:55:36 +08:00
David Gerber
c0187f2c31 fix: remove double URL encoding (#8660)
DefaultWebClient() already encodes URL query parameters.
2021-03-15 22:48:43 +08:00
Oleh Kurpiak
cfe86d9594 [Java][Server] fix default value (#8577)
* [Java][Server] fix default value

* [Java][Server] fix default value
2021-03-15 21:25:48 +08:00
Markus Wandersee
fae4d7a73d Fix for StackOverflow in Swift5 CodeGeneration Issue #8671 (#8672)
* StackOverflowFix for Issue 8671

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-03-15 17:59:09 +08:00
William Cheng
bf859c640e Better error handling for toExampleValue (#8940)
* better error handling for toExampleValue

* revise logging

* update debug
2021-03-15 17:54:15 +08:00
William Cheng
5d7f1c1c88 [android][volley] various improvements (#8968)
* fix samples

* build succcessful in android studio

* fix deprecatation warnings

* update dependencies

* add new file
2021-03-15 17:53:33 +08:00
Adam Leventhal
15c3bf47a4 [Rust Client] several small fixes to code generation errors (#8845)
* fix cyclic types

* fixed up bad enum names

* fixed double crate:: issue

* add required ToString for enum classes

* Adds Debug/Clone derive macro for generated configuration type

* Updates versions of dependencies recorded in generated Cargo.toml

* fix merge

* bin/generate-samples.sh

Co-authored-by: Benjamin Naecker <bnaecker@fastmail.com>
2021-03-15 10:30:22 +08:00
Rüdiger Keller
a8c56fb26a [jaxrs-cxf][jaxrs-spec] Add missing @NotNull annotation for required body parameters when using BeanValidation, fixes #4280 (#6494)
* [jaxrs-spec] Add missing @NotNull annotation for required body parameters when using BeanValidation.

* [jaxrs-cxf] Add missing @NotNull annotation for required body parameters when using BeanValidation (#4280).

* [jaxrs-cxf] Add @NotNull annotation only for body parameters that are required and not nullable.

* [jaxrs-spec] Add @NotNull annotation only for body parameters that are required and not nullable.

* [jaxrs-cxf] Updated sample files after adding missing @NotNull annotation for required body parameters when using BeanValidation.

* [jaxrs-spec] Updated sample files after adding missing @NotNull annotation for required body parameters when using BeanValidation.
2021-03-15 09:47:29 +08:00
William Cheng
abe64b7976 fix deprecation warnings (#8969) 2021-03-15 09:45:17 +08:00
Backfighter
ad603f44fb [Java][webclient] Fix deprecation warning: BodyInserters.fromObject (#8963)
* Fix deprecation warning: BodyInserters.fromObject

See for more information #8553

* [Java][webclient] Upgrade to spring 5.2.13
2021-03-14 00:12:48 +08:00
William Cheng
4e2ece4b51 [Perl] minor improvements (#8967)
* update perl readme, test files

* update perl test files

* update readme
2021-03-13 21:48:00 +08:00
SimeonGerginov
030cabc1cc [REQ][PowerShell] Add additional reserved words list for parameter name in PowerShell (#8935)
* Add additional reserved words list for parameter name in PowerShell

Signed-off-by: SimeonGerginov <simeongerginov1@gmail.com>

* Add missing check for parameter name starting with number

Signed-off-by: SimeonGerginov <simeongerginov1@gmail.com>
2021-03-12 12:35:51 +08:00
Blackclaws
e16ee8c6b8 Add version to csproj, fix target framework, update samples (#8956) 2021-03-12 10:34:06 +08:00
William Cheng
ff55bf11e2 Add messages about powershell ebook after generating a PowerShell client (#8951)
* add message about powershell ebook

* change spacing
2021-03-12 10:02:57 +08:00
Tobias Larscheid
604e141bf6 Do not generate Application.kt when interfaceOnly=true (#8938)
In an effort to make `kotlin-spring` behave the same as `spring` (java), I disabled generation of the `Application.kt` when interfaceOnly=true. This is similar to what `spring` does: https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java#L368
2021-03-12 00:15:34 +08:00
William Cheng
ed6a7e7656 better code format in C# netcore client (#8939) 2021-03-11 21:59:48 +08:00
agilob
b782cff511 [dart] Fix api client deserialization for json_serializable (#8882)
* Fix api-client deserialization for json_serializable

* Use raw string for url path

* Use Set/List.of

* Use returnTypeIsPrimitive in template

* Regenerate all templates

* Fix casting map to Iterable of things

* Add json_serializable to maven modules

* Run build_runner before pub run test

* Return future of type for strong linter mode
2021-03-11 21:16:54 +08:00
Ragul Murugesan
f7a6b7f2d3 Arrow function removed (#8433)
* Arrow function removed

* update samples

Co-authored-by: Ragul Murugesan <y509198@softwareag.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-03-11 08:55:35 +01:00
Peter Leibiger
bf35ceee25 [dart][dart-dio] Lower upper bound for built_value (#8947)
The `8.x` versions are no longer compatible with the current generated code. An update is also not possible without breaking change and null-safety support.
2021-03-11 12:10:58 +08:00
Thomas Hervé
2f047fe64a Fix python example list (#8877)
* Fix python example list

Closing char was missing.

* Add sample, and fix generation for sample not to show up

* Add test of example generation
2021-03-10 08:27:48 -08:00
morphlne
38ef0e1f3a [JaxRS] Fix ambiguous dependency (#8922) (#8923) 2021-03-10 17:03:30 +08:00
William Cheng
f56dd9f59b remove deprecated restsharp parameter class (#8933) 2021-03-10 14:51:23 +08:00
William Cheng
952483abde add plaid logo (#8932) 2021-03-10 14:50:15 +08:00
Justin Black
786c71f339 Adds hasVars (#8928)
* Adds getHasVars and setHasVars to IJsonSchemaValidationProperties

* Updates CodegenModel

* Updates CodegenProperty

* Updates codegenparameter

* Updates codegenresponse

* Adds testHasVarsInModel

* Adds testHasVarsInProperty

* Updates testHasVarsInProperty

* Adds testHasVarsInParameter

* Adds testHasVarsInResponse

* Samples update
2021-03-09 12:14:02 -08:00
Mehmet YUCE
86e418d57b Fix not processing enums in cpp-pistache-server (#8886)
* Fix not processing enums in cpp-pistache-server

Defining a reusable enum as a component schema results in an empty
class. Following changes are made:

- activate 'postProcessModelsEnum' in 'AbstractCppCodegen'
- modify model templates for the 'cpp-pistache-server' project

As 'postProcessModelsEnum' is now available in the 'AbstactCppCodegen'
the 'enumVars' variables are now available in mustache templates for all
cpp based code generators.

As the 'AbstractCppCodegen' was touched all cpp based
samples were updated.

* fixes encountered on real world

* PR fixes

Co-authored-by: mfyuce <mfyuce@netas.com.tr>
2021-03-09 15:17:25 +08:00
William Cheng
065c524894 [C#][netcore] Fix deserialisation for models with additional properties (#8912)
* better check for additioanl properties serializer

* fix additional properties check

* use additonal prop serializer with model mappings
2021-03-09 15:15:33 +08:00
mentalfoundry
8110884aac Update usage.md (#8917)
The command examples are out of date.  The 'openapi-generator' command is now 'openapi-generator-cli'.
2021-03-09 15:14:57 +08:00
William Cheng
1ba323f058 Add tests for array of string serialization (#8913)
* add tests for array of string serialization

* update test file SHA
2021-03-09 08:53:05 +08:00
Chase Farmer
881553a484 Add Plaid to companies using the generator. (#8930) 2021-03-09 08:52:50 +08:00
Justin Black
8226269101 Fixes legacyDiscriminatorBehavior description (#8931)
* Fixes description

* Samples and docs updated
2021-03-08 13:39:12 -08:00
Tyler Ballast
f5151de9fc Add whitespace to SDK documentation where necessary (#8919)
* Add a space between table title and the line above it to resolve issues when translating markdown to asciidoc

* Regenerate Samples

Co-authored-by: Tyler Ballast <tyler.ballast@reportix.com>
Co-authored-by: tballast <tyler.ballast@gmail.com>
2021-03-08 21:40:54 +08:00
William Cheng
bce0eb6c8f fix header parameter naming (#8861) 2021-03-08 21:35:04 +08:00
William Cheng
7720c9f6bd update samples 2021-03-08 19:05:16 +08:00
Jiri Kuncar
8cb4741248 [go][client] Fix example value for non string enums (#8900)
* [go][client] Fix example value for non string enums

* regenerated samples
2021-03-08 18:11:50 +08:00
Justin Black
101da6e434 Adds getAdditionalPropertiesIsAnyType to java schema classes (#8908)
* Adds getter and setter for AdditionalPropertiesIsAnyType in IJsonSchemaValidationProperties

* Removes venv

* Implements getter and setter in CodegenModel

* Implements getter and setter in CodegenProperty

* Implements getter and setter in CodegenParameter

* Adds getter and setter in CodegenResponse

* Creates setAddProps

* Removes comment

* Adds setAdditionalPropertiesIsAnyType invocations

* Updates samples

* Updates tests in testAdditionalPropertiesPresentInResponses

* Updates tests in testAdditionalPropertiesPresentInParameters

* Updates testAdditionalPropertiesPresentInModelProperties to check getAdditionalPropertiesIsAnyType

* Updates testAdditionalPropertiesPresentInModels
2021-03-07 09:42:47 -08:00
William Cheng
51a19e1c27 [C#][netcore] Call static method without creating instance (#8889)
* call static method without creating instance

* fix instance

* fix missing equal sign

* skip instance creation

* cast to T

* update httpclient apiclient.mustache
2021-03-07 17:45:14 +08:00
Internaional Network Support & Service - Glas
041d908963 Changed virtualan version from 1.0.0 to 2.1.7. Update readme.md and d… (#8910)
* Changed virtualan version from 1.0.0 to 2.1.7. Update readme.md and description in springboot generator.

* Updated virtualan link in spring.md.

* update samples

Co-authored-by: networkinss <oliver.glas@inss.ch>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-03-07 09:38:31 +08:00
William Cheng
8509f6b25a remove javascript-promise-es6/test/model/ModelReturn.spec.js 2021-03-06 22:51:19 +08:00
William Cheng
d279b79d2d remove modelreturn.js spec 2021-03-06 21:53:43 +08:00
William Cheng
4ab17cfd96 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2021-03-06 21:01:52 +08:00
William Cheng
e617f7c166 remove unused js test spec 2021-03-06 21:01:35 +08:00
Ethan Keller
d25df488bd Fix String cast error on default object (#8903)
See #8896 .
2021-03-06 20:50:25 +08:00
William Cheng
bb6a858c32 update samples 2021-03-06 19:02:40 +08:00
delenius
7b5a583345 Make JS client case sensitive wrt. reserved words (#8905)
Fixes #8904
2021-03-06 18:40:06 +08:00
Pavel Sveda
e25fa8ed7d Allow to set additional property of any type. Useful for Boolean values. (#8507) 2021-03-06 17:35:23 +08:00
Blackclaws
85fd96a9ce [csharp-netcore] Make Blazor Webassembly compatible (#8876)
* Catch exception thrown in Blazor Webassembly when trying to access cookies

* Update samples
2021-03-06 15:50:48 +08:00
sunn
65a31f1d9f Make header checks case insensitive as described in RFC (#8874) 2021-03-06 15:49:51 +08:00
Sean Kelly
a13b222764 [Qt5] Emit signal when api has finished processing all pending work (#8884)
* Fixes #8864

* More elegant solution

* Rerun sample generation

* Fix whitespace that was fixed in merge conflict
2021-03-05 21:43:26 +01:00
sunn
3a40818519 Updated test and fix/workaround failed tests (#8899) 2021-03-05 17:54:21 +01:00
Jeff Shillitto
641ddc7cee Add Shotstack to users list (#8897) 2021-03-05 14:54:12 +08:00
Oleh Kurpiak
976b4aa757 [Java] Additional enum type annotations (#8389)
* [Java] Additional enum type annotations

* [Java] Additional enum type annotations
2021-03-04 23:33:00 +08:00
William Cheng
e18d4b97e0 [csharp-netcore][httpclient] add tests, bug fixes (#8885)
* add tests to csharp-httpclient petstore

* fix basepath in tests

* fix response headers

* skip file upload test in httpclient

* update samples

* update tech committee
2021-03-04 16:02:31 +08:00
sunn
1983dfc122 Indendation and whitespace changes (#8879)
Indentation and code readability
2021-03-03 20:36:11 +01:00
William Cheng
4986ea8c93 update samples 2021-03-04 00:45:20 +08:00
William Cheng
0c37275224 [C#][netcore] update dependencies to newer versions (#8872)
* update csharp-netcore dep to newer versions

* restore Org.OpenAPITools.Test.csproj

* rollback CompareNETObjects version

* rollback .net test sdk

* use 15.9.2 for test

* rollback sdk test version

* Revert "rollback CompareNETObjects version"

This reverts commit c03c00facb.

* Revert "Revert "rollback CompareNETObjects version""

This reverts commit acc66ae4f9.
2021-03-03 20:12:56 +08:00
sunn
d4696157d6 Add QSet Header to the Helper (#8873) 2021-03-03 18:13:22 +08:00
Blackclaws
8c2a0ce6d6 [csharp-netcore] Fix handling of Dictionary query parameters and fix deepObject style parameter handling (#8848)
* DeepObject also for required parameters

* Fix NullPointerException on inline deepObject such as a Dictionary<string, string>

* Add deepObject in ParameterToMultiMap for deepObjects without explicit parameters

* Add some context to TODOs

* ParameterToMultiMap fixed in CSharp template for OAS 3 Dicts, taking deepObject into account

* Remove added whitespace

* Update samples
2021-03-03 16:59:29 +08:00
William Cheng
e6947d7c22 [C#] Better code format (remove trailing spaces) (#8871)
* remove trailing spaces

* remove trailing space, update samples (C#)
2021-03-03 16:46:12 +08:00
Sean Kelly
89b9802be3 [QT5] Support optional params using QVariant (#8733)
Use QVariant for optional parameters
2021-03-03 07:45:04 +01:00
Peter Leibiger
d31875f505 [dart][dart-dio] Fix failing master due to unstable test dependency (#8870)
* replace branch ref with commit ref (new release of http_mock_adapter coming soon)
2021-03-03 13:00:22 +08:00
basyskom-dege
950bb3d18f added QSet as datatype for unique items (#8830) 2021-03-02 18:44:22 +01:00
agilob
83a5c3db1e [dart] Default value is only available when nullable is not set (#8854)
* Default value is only available when nullable is not set (not false)

* Simplify isNullable mustache syntax
2021-03-02 18:06:45 +08:00
agilob
a34569f065 Correct use of loggers with placeholders and remove some redundant operations (#8842)
* Remove redundant operations

* Use logger correctly with object placeholders

* static compile of frequently used pattern

compile pattern ahead of time to reduce object creation and optimize
method

* Fix typo in method name
2021-03-02 17:24:25 +08:00
Peter Leibiger
5ce64756a6 [dart][dart-dio] Handle nullable/required header/query parameters (#8837) 2021-03-02 11:09:47 +08:00
Peter Leibiger
2ed702b339 [bug][dart][dart-dio] Improve parameterToString handling (#8372)
* [dart][dart-dio] Improve parameterToString handling

* add tests
* not sure this is complete but it is better than before and can serve as a baseline with the test cases

* Add a map parameter to FormData test

* Rename method to clarify what it actually does

* Couple more tests
2021-03-02 11:08:47 +08:00
William Cheng
07f8bde6c1 Test go-gin-server sample with go test -v (#8855)
* test go gin sample with `go test -v`

* install via go get

* update main.mustache
2021-03-02 11:07:25 +08:00
William Cheng
f7b2baf38e Add ApiClient.mustache for http client library (#8859)
* add api client mustache for http client

* clean up api client template for restsharp

* test c# httpclient in appveyor

* remove apiclient.cs

* regenerate apiclient.cs

* set library for http client

* remove Libraries

* use libraries folder
2021-03-02 10:52:05 +08:00
basyskom-dege
16e7408eb7 [C++][Qt5] Added function to add a new Server. Removed unused variables (#8725)
* cleanup unused variables,added addServerConfiguration() function

* added setNewServer functions

* using QUrl instead of QString
2021-03-01 10:55:28 +01:00
William Cheng
be91db5574 Update C# readme (#8858)
* update readme related to C# httpclient

* update samples, readme
2021-02-28 23:57:01 +08:00
William Cheng
125e6a439b better code, update sample for erlang client gen (#8853) 2021-02-28 22:38:50 +08:00
Blackclaws
e815d7ced8 C# Netcore WebRequest and HttpClient functionality (#8821)
* Add switch to disable RestSharp

* Introduce CLI Option for webRequestLibrary

* Fix missing brace

* Remove restsharp references

* HttpClient added

* WebRequest NewRequest functionality added

* WebRequest added to CLIOptions

* Add custom HttpMethod only for Restsharp.

* Add WebRequestPathBuilder.mustache

* HttpClient NewRequest

* Add using Statement to WebRequestPathBuilder.mustache

* Adjusts retry configuration for HttpClient

* Reuse JsonDecoder

* Make reusing the client a separate option

* Save cookies in request

* Implement more methods for HttpClient

* Small fixes

* Fix post content

* Add new sample config

* Update existing samples

* Add new sample

* Add new property supportsRetry

* Use new property to exclude RetryConfiguration

* Exclude Polly on non supporting Retry

* Update sample and documentation

* Create HttpMethod Patch for netstandard 2.0 compatibility

* Fix query parameter generation

* Switch to library settings

* Allow httpclient reuse (experimental)

* Remove webrequest from template as its not used right now
2021-02-28 16:18:16 +08:00
Jim Schubert
5a0b832bb4 sonar.yml: Run for OpenAPITools only 2021-02-27 17:00:07 -05:00
sbu
6f413f6aca Don't deploy to sonar in forks (#8856) 2021-02-27 14:22:34 -05:00
William Cheng
2c0991dabe better test for go-server (#8852) 2021-02-27 18:21:28 +08:00
Thomas Hervé
3cf93226fa Make nullable fix on all vars in Go (#8820)
* Make nullable fix on all vars in Go

This applies the Nullable change to all variables on the model, instead
of just the ones in vars.

* Add sample showing the issue
2021-02-27 18:12:51 +08:00
Frank T
ebac91aa32 [OCaml] Fix enum returnType in of_json.mustache for Api Impl (#8631)
* Fix OCaml enum returnType in of_json.mustache

* update samples (ocaml, python)

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-27 17:13:45 +08:00
cal
bc4bc36de7 [cleanup] erefactor/EclipseJdt - Remove redundant semicolons (#8666)
EclipseJdt cleanup 'RemoveRedundantSemicolons' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.18/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-02-27 15:45:51 +08:00
cal
2327f856cd [cleanup] erefactor/EclipseJdt - Remove unnecessary casts (#8698)
EclipseJdt cleanup 'RemoveUnnecessaryCast' applied by erefactor.

For EclipseJdt see https://www.eclipse.org/eclipse/news/4.18/jdt.php
For erefactor see https://github.com/cal101/erefactor
2021-02-27 15:42:21 +08:00
Dheeraj Nalluri
264b017eec [Java][Client] JSON-B serialization support (#8729)
* Added JSON-B support.

* Mention jsonb in docs
2021-02-27 15:32:46 +08:00
Martin Delille
2b716684f3 [cpp-qt5-client ] Improve CMake (#8724)
* Improve CMake

* Don't link ssl and crypto only for apple

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-27 15:15:24 +08:00
Yannick Schutz
85b2b3c2e4 Add mime/multipart missing import in go server (#8790) 2021-02-27 14:50:16 +08:00
nitschy
a8b74d10ec FIX: Error in mustache.api (#8800)
When a GET/PUT/POST operations includes queryParams, then the feign generator wrongly generates the Basename instead of the paramName. That leads to
a java.illegalstateException ("Body parameters cannot be used with form parameters") in Feign Contract when attempting to invoke the Method.
i.e: a generated feign client:
public interface PersonClientTest extends RestApi {
    @RequestLine("GET /personen/{kundenNummer}?mitUnterstruktur={mitUnterstruktur}")
    @Headers({
            "Accept: application/json",
            "If-None-Match: {ifNoneMatch}"
    })
    PersonOut getPersonByKundenNummer(@Param(value="kundenNummer", expander=ParamExpander.class) String kundenNummer, @Param(value="If-None-Match", expander=ParamExpander.class) String ifNoneMatch, @Param(value="mitUnterstruktur", expander=ParamExpander.class) Boolean mitUnterstruktur);
}

in the headers:
 "If-None-Match: {ifNoneMatch}"
but in the method:
 @Param(value="If-None-Match", expander=ParamExpander.class) String ifNoneMatch
the value should be ifNoneMatch instead of "If-None-Match"
2021-02-27 14:47:11 +08:00
Blackclaws
f8770d7c33 C# Aspnetcore Generator. Fix Parameters missing (Name = ) Property (#8826)
* Fix parameter Name= missing.

* Update samples

* Fix wrong name in template

* Update samples again
2021-02-25 23:36:35 +08:00
Peter Leibiger
3e9c1e1fc3 [dart] Remove old leftover format parameter from path (#8834) 2021-02-25 20:29:34 +08:00
Peter Leibiger
fbe2bb7c97 [dart][dart-dio] API class/template refactoring (#8825)
* [dart][dart-dio] Refactor API template

* first construct a `RequestOptions` instance with all parameters etc. inline
* then construct and serialize the body data
* then send the request and await the response
* then deserialize the response
* always use the `specifiedType` for built_value (de)serialization instead of a mix of ways (this does the same as finding the serializer directly)
* use indent of 2 spaces (as per Dart convention)
* prefix all local variables to prevent name clashes with parameters

* Add tests that (de)serialize collections and add API key header
2021-02-25 20:24:21 +08:00
agilob
9fc33f6a73 [Dart] Add configuration to add new generators and add json_serializable (#8789)
* Add Dart configuration flag to set new generator

* Change templates to add json_serializable generator

* Fix dart tests

* Add custom serialization for standard generator

* this change opens us a way to allow adding more than 2 generators

* Add sample project for json_serializer

* Use basename for json field name

* Update samples with basename as json key

* Update dart generator docs

* Create AbstractDartCodegen class

* Update docs, dart-dio and dart-jaguar dont get json_serializable yet

* Deduplicate method calls

* Dix dart-dio generation

* Revert formatting change in dart mustache

* Fix formatting changes again

* Improve dart serialization documentation

specify default serializer

* Better name for cli option

* Rename default dart generator to 'native'

* Another attempt to reduce whitespace noise

* Fix api-client and api-helper

* Rename default serialization mode to include word serialization

* Remove trailing whitespace in enums
2021-02-25 17:11:16 +08:00
Rafael Ceron
34c77c2807 typescript-nestjs: removed unused basePath from api.service template (#8811)
* (nestjs) removed unused basePath from api.service template 8810

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

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

* added missing parenthesis on Global() decorator

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2021-02-25 08:43:21 +01:00
William Cheng
df1ae03960 [Refactor] create Python abstract class (#8817)
* create python abstract base class

* refactor AbstractPythonConnexionServerCodegen

* update doc
2021-02-25 14:10:49 +08:00
Adrien CABARBAYE
a31dba5b88 [GO] use latest available oauth2 version (#8764)
* [GO] use latest available oauth2 version

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-25 02:32:49 +08:00
Thomas Hervé
f9b1f98d21 Fix base type naming in Go (#8819)
Go generation didn't properly named base type in `getSchemaType`, which
ends up breaking some doc generation.
2021-02-25 02:31:59 +08:00
Peter Leibiger
4f4f1d4128 [dart][dart-dio] Remove manual json encode/decode calls in API classes (#8812)
* [dart][dart-dio] Remove manual json encode/decode calls in API classes

Dio automatically adds a default transformer which does call `json.encode` and `json.decode` when the content-type is `application/json`. When the content-type is different, then it  is up to the consumer to configure the Dio instance correctly to support custom content-types.

Also tests!!!

* [dart] Constraint test library to < 1.16.0 as it requires Dart 2.12.0

* Fix more constraint problems for the new test project
2021-02-24 23:29:41 +08:00
Martin Delille
b5c665472c Qt client handle deprecated (#8766)
* Qt client handle deprecated

* Update sample

* update VERSION

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-24 11:46:07 +08:00
William Cheng
91805936e6 [maven plugin] fix security issues (#8795)
* use Files.createTempFile in maven plugin to avoid security issues

* error check when creating a folder
2021-02-24 11:45:44 +08:00
William Cheng
c31e6e79d0 [online] use Files.createTempFile to address security concerns (#8788)
* use Files.createTempFile to address security concerns

* Update modules/openapi-generator-online/src/main/java/org/openapitools/codegen/online/service/Generator.java

Co-authored-by: Jonathan Leitschuh <Jlleitschuh@wpi.edu>

Co-authored-by: Jonathan Leitschuh <Jlleitschuh@wpi.edu>
2021-02-24 00:33:06 +08:00
William Cheng
c653051997 Revert "[Ruby] force users to specify the temp folder path to address security concerns (#8730)" (#8807)
This reverts commit 18a6f5a941.
2021-02-24 00:31:43 +08:00
Gabriel Féron
a7c6eccced Rust: Add support for lists (and sets) of enum values (#8693)
* Add support for arrays of enums for Rust

* Rust: Use HashSet if uniqueItems is true
2021-02-23 19:02:01 +08:00
William Cheng
9c4c624eb7 Add monitoring to detect tabs in the templates (#8738)
* add monitoring for tabs in the templates

* rename script

* add detect_tab_in_templates.sh

* rearrange tests

* add kotlin folders

* move test to circleci

* restore .travis.yml

* fix grep
2021-02-23 19:00:59 +08:00
Francesco Guardiani
4bf09833f4 [Java][Vert.x] Make ApiHandler reusable (#8720)
* Fix #8710

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Reintroduced default constructor

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Deprecated

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2021-02-23 15:38:57 +08:00
William Cheng
42d3dbd5d1 Fix bugs to ensure unique parameter names (#8762)
* fix unique parameter naming

* add tests
2021-02-23 14:49:44 +08:00
agilob
e7f50f66a3 Make all loggers non-static (#8799)
* Make all loggers non-static

Reduces memory usage on startup by between 2 and 4 MB

* Fix compile error in some autogenerated? module
2021-02-23 14:46:56 +08:00
Ronny Pfannschmidt
eb3d6d2f16 [python][template] move _path_to_item of simple init to avoid name error (#8737)
* [python][template] move _path_to_item of simple init up so its avaliable for missing default errors

* update generated examples
2021-02-22 21:00:14 -08:00
William Cheng
19f43b5330 use Files.createTempFile in asciidoc tests if possible (#8794) 2021-02-23 11:57:05 +08:00
William Cheng
1b6cabb97d [Java] use Files.createTempFile instead (#8787)
* use Files.createTempFile

* fix import

* add missing import
2021-02-23 11:40:37 +08:00
William Cheng
d85f61ff0c [TS] Revert changes in nestjs readme (#8793)
* revert changes to nestjs readme

* update samples
2021-02-23 11:33:32 +08:00
William Cheng
00c7ebab66 use Files.createTempFile (#8791) 2021-02-23 11:33:10 +08:00
William Cheng
764a3b044c replace tab with spaces, minor code format change (#8774) 2021-02-22 19:46:11 +08:00
William Cheng
e6b44349ba Add a link to the blog post by cloud-viadee (#8786) 2021-02-22 15:18:00 +08:00
Daniel Friesen
047a71c574 [typescript-axios] Support array query arguments (#8772)
* [typescript-axios] Support array query arguments

typescript-axios does not correctly output query arguments when you use `explode: true` for a parameter.

fixes #7966
fixes #7973

* Fix mistake in query parameter setting
2021-02-21 17:27:46 +01:00
Kamil Piotrowski
a9e797c6ca Add additional AWS v4 signature parameters to go client generator (#8706) 2021-02-21 22:07:22 +08:00
James Gilliland
f3c164d1ad [PHP] Use a valid php type for maps (#8718)
* Use a valid php type for maps

* Convert type hint to correct format

Align map array format to that expected by phpdoc and associated tools.
2021-02-21 18:07:45 +08:00
William Cheng
c636f7e08d update jackson to 2.12.1 (#8783) 2021-02-21 17:53:23 +08:00
William Cheng
e432dfa59a update gradle.properties to fix appveyor build issue 2021-02-21 14:47:37 +08:00
William Cheng
e9d4886e70 replace tab with spaces, minor code format change (#8775) 2021-02-21 12:14:52 +08:00
sullis
695efdba71 enable Dependabot v2 (#8642) 2021-02-21 11:55:29 +08:00
William Cheng
ea428d6048 update jackson dependencies to address security issues (#8778) 2021-02-21 11:40:24 +08:00
Govind
04bd1ece23 fix for 8760 (#8761) 2021-02-20 11:54:48 +08:00
William Cheng
9c20050bdc Add an option to skip operation examples (#8731)
* add flag to skip operation examples

* reset to false
2021-02-20 11:51:21 +08:00
William Cheng
ba4aae5074 [Go] bug fix (breaking), minor code format enhancement (#8715)
* go minor code format enhnacement

* fix required vars in the model new

* remove comma
2021-02-20 11:50:27 +08:00
William Cheng
ee12a6f7ee revise invalid spec error message (#8735) 2021-02-20 11:49:31 +08:00
William Cheng
18a6f5a941 [Ruby] force users to specify the temp folder path to address security concerns (#8730)
* address security issue when downloading files in the ruby client

* update samples

* fix double quote
2021-02-20 11:49:10 +08:00
William Cheng
095019a6d8 replace tabs with 4-space (#8757) 2021-02-19 23:06:20 +08:00
William Cheng
d19bfebeda replace tabs with 4-space in dart templates (#8740) 2021-02-19 18:02:54 +08:00
Anthony Whitaker
bb712013f8 Fix misleading warning message for missing output directory. (#8742)
Change warning message to info.
Add name of directory checked to message.

Resolves #4627
2021-02-19 11:48:54 +08:00
William Cheng
bed5ab17ef Remove flash templates (#8741) 2021-02-19 10:55:44 +08:00
William Cheng
d5a9b53bdc replace tabs with 4-space (#8739) 2021-02-19 10:54:55 +08:00
Martin Delille
df5050f3b0 [cpp-qt5-client] Fix qt5.15 check (#8711)
* Fix qt5.15 check

* Fix check fix
2021-02-18 11:54:10 +08:00
Peter Leibiger
c916df9381 [dart][dart-dio] Nullable support/improvements (#8727)
* [dart-dio] Disable nullable fields by default

This is not in line with the OAS and will prevent future Dart nullabilty features (NNBD) from being useful as all types would be optional.
Users can still opt-in for this.

* [dart-dio] Properties are nullable when not required AND not nullable

* [dart][dart-dio] Support nullable/required fields

* properties in built_value need to be nullable when they are nullable in OAS or when they are not required in OAS
* built_value does not support serializing `null` values by default as it is based on a serialization format based on iterables/lists and not maps
* dart-dio uses the built_value json plugin to convert the built_value format to regular json
* by generating a custom serializer for each class we can add support for serializing `null` values if the property is required AND nullable in OAS
* this is a breaking change as not all properties in the models are nullable by default anymore

* Implement required/nullable for dart

* Changes for set types and enum names after rebase

* Add some comments and fix built_value fields with default being nullable

* More rebase changes and regenerate docs
2021-02-17 21:44:21 +08:00
Peter Leibiger
7704ff3d08 [dart][dart-dio] Allow API key authentication with multiple API keys (#8728)
Remove the break stopping after the first key.
2021-02-17 21:40:27 +08:00
William Cheng
55292dd22b Add ASP.NET Core 5.0 support (#8717)
* add aspnet core 5.0 support

* skip overwriting Org.OpenAPITools.csproj

* update doc

* update doc
2021-02-17 18:58:13 +08:00
Oleh Kurpiak
135c8f45a4 [Java][native] extend native ApiClient (#8557) 2021-02-16 21:47:44 +08:00
Peter Leibiger
683dcb8889 [dart][dart-dio] Raise min Dart to 2.7.0 & update built_value constraint (#8684)
* raise min Dart version to 2.7.0 / Flutter 1.12.0
* update constraints for built_value to support new major versions with null safety
2021-02-16 18:00:59 +08:00
Peter Leibiger
608242b4d8 [dart][dart-dio] Improve prefixing of inner enums with classname (#8685)
* [dart][dart-dio] Improve prefixing of inner enums with classname

* prevent further name conflicts by correctly naming the enum, until now there could potentially occur conflicts e.g. 2x `MapTestInnerEnum` by renaming the `items` child property
* correctly set `enumName` to match `datatypeWithEnum`

* Unrelated test regeneration
2021-02-16 17:59:54 +08:00
Patrick McGleenon
3c4015b897 [REQ] [GO] Added enumClassPrefix option to go-gin-server. Used same appro… (#8681)
* [REQ] Added enumClassPrefix option to go-gin-server.  Used same approach as #7008 (go-server)

	modified:   docs/generators/go-gin-server.md
	modified:   modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoGinServerCodegen.java
	modified:   modules/openapi-generator/src/main/resources/go-gin-server/model.mustache

* Fixed CI error in docs
2021-02-16 17:54:00 +08:00
goexplore
cd0ca65732 [aspnetcore] Improve model inheritance support by including JsonSubTypes to properly handle serialization (#8384)
* Add JsonSubTypes to templates

* Add JsonSubTypes to templates

Co-authored-by: Anders Gilje <agilje@slb.com>
2021-02-16 09:20:47 +08:00
William Cheng
53285e5aa5 update samples 2021-02-16 08:15:04 +08:00
David Hontecillas
51c8fd1520 Fix generated go client cannot upload file (#8393)
* go client send **io.File body

* run generate-samples for Go upload fix
2021-02-16 08:08:27 +08:00
Benjamin Klatt
b294165548 New blog post about OpenAPI Generator added (#8712)
* FIX #8583 [BUG][JAVA] AbstractOpenApiSchema package

Fixed package declaration in AbstractOpenApiSchema.mustache template

* New blog post added
2021-02-16 07:56:57 +08:00
sforst
99b36b9b3a [typescript-fetch] handle uniqueItems correctly in model and api (#8695)
* [typescript-fetch] handle uniqueItems correctly in model and api

uniqueItems produces Set instead of Array as type, but the corresponding code did not treat Set correctly

use `Array.from` and `new Set` to convert from Set to Array and vice versa, if uniqueItems is true.

related to https://github.com/OpenAPITools/openapi-generator/issues/8258, but only fixes typescript-fetch

* [typescript-fetch] update samples
2021-02-14 17:12:00 +08:00
William Cheng
69cf4921c6 Add Gumtree to the user list (#8696)
* update headers

* add gumtree to user list
2021-02-14 11:34:40 +08:00
Reinhard-PTV
1006d2f21e [java native][dotnetcore] Implement QueryParameter deepObject style for client generators java native and dotnetcore. (#8563) 2021-02-14 11:03:08 +08:00
William Cheng
859a066052 add sponsorship message for jim's work (#8650) 2021-02-14 10:43:31 +08:00
Moshe Elisha
90e8dcf3e3 [JAVA][native] - Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed (#8554)
* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Revert "Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true"

This reverts commit 56e2b1fb

* Revert "Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true"

This reverts commit 335c304d

* Fix #8027 - import the auto generated supporting JSON class only when generateSupportingFiles is true

* Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed

* Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed

* Fix #8027 - import the auto generated supporting JSON class only when discriminator is needed
2021-02-12 23:02:13 +08:00
Daisuke Murase
ec39a2ffbf [rust client] upgrade reqwest crate to 0.11 (#8603)
* set reqwest version to 0.11

* update sample
2021-02-12 19:05:20 +08:00
Gary Blaser
0e16eba06a typescript-node: bug in models.mustache with for...in on an empty array. (#8575)
* Fixed typescript bug in models.mustache with for...in on an empty array.

When an empty array comes in, the current for...in syntax results in creating an empty object being created and added to the array. This is the output from receiving an empty array that gets deserialized, resulting in an object with undefined values.

Switching to a for i < array.length loop fixes this issue.

```
body: [
    GroupCustomResource {
      apiVersion: undefined,
      kind: undefined,
      spec: undefined,
      metadata: undefined,
      status: undefined,
      '': undefined
    }
  ]
```

* Fixed typescript deserialization bug that was adding non-existent entries to objects during deserialization.

When an object comes in, the current for...in syntax results in adding an undefined key/value pair to each nested object, with key being empty string and value being undefined. This is the output from receiving an object that gets deserialized.

Adding a check to see if attributeType.name exists before adding it to the deserialized object fixes this.

```
res.body of listGroup for saved group is  [
  GroupCustomResource {
    apiVersion: 'v1',
    kind: 'Group',
    spec: GroupSpec {
      name: 'TestDeploymentGroup67264',
      tenancyId: 'tenancy',
      description: 'TestGroup description',
      '': undefined
    },
    metadata: { additionalProp1: {}, spectra: [Object] },
    status: undefined,
    '': undefined
  }
]
```

* Fixed for array for loop in serialize and added truth check for deserialize

* Made for...in loop a for loop; gets rid of the need for the truth check

* Fixed serialze/deserialize for loops for arrays

Co-authored-by: Gary Blaser <gary.blaser@oracle.com>
2021-02-12 09:01:40 +01:00
miyucy
3c4b1a0c4c Fix syntax error (#8675)
Added missing closing brace in list_invalid_properties model method.
2021-02-11 23:43:19 +08:00
Bruno Coelho
23de86a434 [kotlin][client] update dependencies (#8673)
* [kotlin] update pom.xml

* [kotlin] update pom.xml

* [kotlin][client] update dependencies

* [kotlin][client] restore gradle

* [kotlin][client] try to fix CI

* Revert "[kotlin][client] restore gradle"

This reverts commit 20a2947447.

* [kotlin][client] try to fix CI

* [kotlin][client] try to fix CI

* [kotlin][client] try to fix CI

* install gradle

* [kotlin][client] try to fix CI

* [kotlin][client] try to fix CI

* [kotlin][client] disable integration tests

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-11 22:32:29 +08:00
William Cheng
47e697e492 add sponsorship message to the lau generator (#8665) 2021-02-10 12:08:00 +08:00
William Cheng
5193f975bc add lumeris to the user list (#8664) 2021-02-10 09:45:45 +08:00
William Cheng
97bf6d29dd update doc 2021-02-10 08:32:36 +08:00
Bruno Coelho
7a435ac1bb [Kotlin][Client] create request config method (#8617)
* [kotlin][client] create an api method to create the RequestConfig

* [kotlin][client] generate sample projects

* [kotlin] add docs to RequestConfig method

* [kotlin][client] generate sample projects

* [kotlin] improve docs on the RequestConfig method

* [kotlin][client] generate sample projects
2021-02-10 00:13:25 +08:00
Matěj Kašpar Jirásek
5a3ab4299f Update Swift styleguide link in contribution (#8656) 2021-02-10 00:11:36 +08:00
William Cheng
71a8e0afda Add sponsorship message in C generator (#8649)
* update c generator sponsorship message

* add powerofcreation
2021-02-09 21:49:49 +08:00
Kaijia Feng
df1df5c5df Minor fix for typescript-nestjs (#8654) 2021-02-09 13:42:27 +01:00
Reinhard-PTV
6fdd8ea3da Fixed serialization of date-time query parameters. (#8616) 2021-02-08 23:03:29 +08:00
basyskom-dege
578420cfa9 Finished paramter styling(query,path,header,cookie) (#8587) 2021-02-08 20:21:53 +08:00
Reinhard-PTV
df107e2244 Do not use context timezone. (#8614) 2021-02-08 19:25:58 +08:00
William Cheng
1bff357958 Fix HTTP Signing authentication in C# .net 5 client (#8645)
* fix issues with http signing in .net 5

* add new files

* remove comment from yaml
2021-02-08 19:22:09 +08:00
William Cheng
e4b31b7601 add sponsorship message in swift5 generator (#8643) 2021-02-08 19:06:19 +08:00
Jamie Gaskins
d4c76df79f Fix syntax errors and method calls in code generated by Crystal client generator (#8644)
* Fix string interpolation

* Fix syntax error and s/include\?/includes\?/

* Fix more `.include?` and `.key?` calls

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-08 19:02:55 +08:00
kalinjul
d57aa95b80 Replace deprecated import for kotlin Parcelize annotation (#8590)
* replace deprecated import

* update kotlin version to 1.4.20, add kotlin-parcelize plugin

* update samples to gradle 6.8.1

* Revert "update samples to gradle 6.8.1"

This reverts commit 2f9bbe804f.

* Revert "update kotlin version to 1.4.20, add kotlin-parcelize plugin"

This reverts commit 5063141c0c.

* Add kotlin-parcelize plugin for kotlin-client
2021-02-08 13:31:21 +08:00
Troy P
75b987104b [JS] the replace statement in parseDate is too greedy (#8632) (#8633)
* updated the regex used in the String.replace for parseDate() to more precisely target ISO-8601
* added the replace function call to the ES6 mustache file
2021-02-08 13:27:59 +08:00
cal
ef9e8b7181 refactor: erefactor/AutoRefactor - Annotation (#8544)
AutoRefactor cleanup 'AnnotationCleanUp' applied by erefactor:

Simplifies annotation uses:
- empty parentheses will be removed from annotations,
- single members named "value" will be removed from annotations and
only the value will be left.

For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor
For erefactor see https://github.com/cal101/erefactor
2021-02-08 11:50:21 +08:00
Stephane Carrez
a06af89be9 Fix #8640: [BUG] [Ada] Server skeleton does not compile when an operation has no parameter (#8641)
- add missing 'use Swagger.Streams;' clause
- add Style_Checks pragma to fix style compilation warnings in generated Ada code
- fix spurious spaces in licence headers that cause Ada style compilation warning
- update the default GNAT project config
2021-02-08 11:20:15 +08:00
Benjamin Klatt
c5ddf463c4 FIX #8583 [BUG][JAVA] AbstractOpenApiSchema package (#8635)
Fixed package declaration in AbstractOpenApiSchema.mustache template
2021-02-08 10:33:57 +08:00
William Cheng
64097ea139 remove release tag 2021-02-06 20:17:58 +08:00
William Cheng
8025e5fe7b update readme 2021-02-06 18:52:09 +08:00
William Cheng
07a4c7b5bf fix meta-codegen pom.xml 2021-02-06 17:58:59 +08:00
William Cheng
3e81876e2c Merge remote-tracking branch 'origin/master' into 5.1.x 2021-02-06 17:52:32 +08:00
William Cheng
c7fcb39a2d Prepare v5.0.1 release (#8627)
* release 5.0.1

* update samples
2021-02-06 16:37:22 +08:00
William Cheng
21d7330aea update samples 2021-02-06 14:55:43 +08:00
Žilvinas Urbonas
90e25f6f4c [BUG][Python] init access token for python client configuration (#7469)
* fix: init access token for python client configuration

* fix: remove duplicate initializations for access_token
2021-02-05 13:09:53 -08:00
Ryan Cloherty
4c3820f66f Fixed incorrect link (#8626)
The link to the Gradle plugin linked to the Maven plugin. I've pointed the link in the right direction.
2021-02-05 23:54:56 +08:00
William Cheng
c33b5a66e7 minor fixes to ts nestjs generator (#8622) 2021-02-05 19:45:10 +08:00
William Cheng
e6cee8eb71 Mark java-vertx as deprecated (#8609)
* mark java-vert as deprecated

* update, clean up samples

* remove entrites related to java-vertx
2021-02-04 16:36:55 +08:00
William Cheng
19eaf73205 update README with new generators 2021-02-04 15:03:11 +08:00
William Cheng
b7ee885805 [C#][netcore] fix binary response (#8593)
* fix binary response

* update test file hash
2021-02-04 11:01:44 +08:00
William Cheng
a5ac2ee1a3 remove import as already stated in the installation instruction (#8608) 2021-02-04 10:50:43 +08:00
Aanisha Mishra
d869544ce1 [Go][Client] Secret key content string in http signing support (#8570)
* accept private key content string

* sample update

* Add comments to new methods

* update samples with comments

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

Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>

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

Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>

* Update signing.mustache

* update sample comments

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

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

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

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* update empty checks for privateKey

Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
2021-02-04 10:33:17 +08:00
William Cheng
d7bdd7f490 Fix TS tests in Travis CI (#8607)
* remove npm test

* remove npm test

* rearrange tests

* move ts axios tests to circleci

* Revert "move ts axios tests to circleci"

This reverts commit 356f795617.

* add moduleResolution: node

* update tsconfig.json

* add axios installation

* install builds/with-npm-version

* update samples
2021-02-04 09:17:45 +08:00
William Cheng
6fa586635b fix logo 2021-02-03 17:20:37 +08:00
Bruno Coelho
45fc02350b [kotlin] fix Date types usages (#8594)
* [kotlin] fix Date types usages
2021-02-02 20:55:51 -05:00
Jens Oberender
b78d4fce6a Upgraded dependency versions in okhttp generator. (#8604)
Co-authored-by: Jens Oberender <burberius@users.noreply.github.com>
2021-02-02 20:45:09 -05:00
William Cheng
ca225e4827 update samples 2021-02-02 21:15:02 +08:00
William Cheng
5b99d8724c Merge remote-tracking branch 'origin/master' into 5.1.x 2021-02-02 21:04:15 +08:00
Peter Leibiger
1b440e191c [dart-dio] Improve API & API-Client field initialization (#8589) 2021-02-02 18:46:51 +08:00
Peter Leibiger
769b0e0e38 [feature][dart] Add support for uniqueItems/sets (#8375)
* [dart][dart-dio] Add support for set types

* copy `uniqueItems` usage from 2.0 fake spec to `3.0`
* add support for sets in parameters, responses and properties

* Regenerate all other samples

* Fix broken tests due to invalid cast

* Update documentation

* Regenerate samples

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-02-02 18:42:45 +08:00
William Cheng
f01ee4a8d2 Add a link to presentation at Open Source Summit Japan 2020 (#8596)
* Add a link to presentation at Open Source Summit Japan 2020

* rearrange
2021-02-02 15:37:40 +08:00
William Cheng
1baec57de8 remove old script reference in readme (#8595) 2021-02-02 11:47:13 +08:00
Peter Leibiger
26f21bb6a0 [dart-dio] Add missing isRedirect parameter to response (#8588) 2021-02-01 22:29:20 +08:00
William Cheng
19f21acd85 Fix handling of 1xx and 3xx in Rust Reqwest (#8574)
* Remove redundant Rust use statement

* Return errors only for 4xx and 5xx in Rust reqwest

Since 1xx and 3xx are perfectly valid status codes the client might
need to handle.

see: https://docs.rs/reqwest/0.11.0/reqwest/struct.StatusCode.html#method.is_informational

* Regenerate samples

Co-authored-by: Gabriel Féron <feron.gabriel@gmail.com>
2021-02-01 16:29:01 +08:00
Pe-te
c12f6041f7 Added 'hash' to objcReservedWords (#8582)
Fix for https://github.com/OpenAPITools/openapi-generator/issues/7991
2021-02-01 13:31:30 +08:00
William Cheng
6dee98784a Fix auto-generated R doc (#8584)
* fix auto-generated R doc

* better example for enum value
2021-02-01 13:30:31 +08:00
William Cheng
d36ce1225d Add @kannkyo to JMeter tech committee (#8585)
* Add @kannkyo to JMeter tech committee

* rearrange
2021-01-31 15:09:07 +08:00
William Cheng
370d0e82f8 update samples 2021-01-31 14:27:46 +08:00
Matthew Dowdell
b4154be8d0 [Rust Server] Add support for Bearer token authentication (#7840)
* [rust-server] Add support for Bearer auth

- Added bearer auth to the security features for rust server
- Supplemented the basic auth condition in the context template to handled basic auth and bearer auth separately.
- Repurpose an exising sample to confirm the code generation works as expected.

* Update docs

* Update readme for bearer tokens
2021-01-30 12:07:46 +00:00
Richard Whitehouse
4ea4ceb0ff [Rust Server] Serializable responses (#8516)
* [Rust Server] Make responses serializable

* Update samples
2021-01-30 11:49:42 +00:00
Richard Whitehouse
c15a4375e2 [Rust Server] Cargo Metadata Configuration (#8519)
* [Rust Server] Support Cargo Metadata Configuration

This adds support for publish, repository, documentation and homepage metadata.

* [Rust Server] Test Cargo Metadata configuration
2021-01-30 11:49:18 +00:00
Igor Sirotin
328cadb070 [Qt5][C++] Fixed QByteArray::toUtf8 with FILE as request body. Included <stdexcept>. (#8550)
* Multiple cpp-qt5-client bugfixes.

* Added '#include <stdexcept>' where std::runtime_error is used
* Fixed request with FILE body: QByteArray doesn't have ::toUtf8()
* Updated related samples

* Fixed isByteArray section

* updated docs

* Docs changes reverted
2021-01-30 11:35:52 +08:00
Peter Leibiger
5135967c91 [dart] Fix typo added in 57126a19 (#8581) 2021-01-30 11:32:33 +08:00
adpoliak
a4312412fc [PYTHON] use customized default Configuration() objects if configured by the programmer (#8500) 2021-01-29 16:24:10 -08:00
William Cheng
1f8ceb9a1e update samples 2021-01-29 22:08:32 +08:00
William Cheng
de40772939 Add viadee logo (#8573) 2021-01-29 14:16:35 +08:00
Oleh Kurpiak
f0b9e21b6b [Java] fix generation for JavaTimeFormatter (#8348)
* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter

* [Java] fix generation for JavaTimeFormatter
2021-01-29 11:22:37 +08:00
NANASHI0X74
57126a1900 Add getters for private default Headers and authentications (#8509)
* add getters for default headermap and auths

* regenerate samples, make shebangs portable

* Revert making shebangs portable

This reverts commit ec60f60359.

Co-authored-by: nanashi0x74 <rian.lindenberger@mpq.se>
2021-01-29 10:58:07 +08:00
NANASHI0X74
a968fb1e33 make shebangs portable (#8556)
Co-authored-by: nanashi0x74 <rian.lindenberger@mpq.se>
2021-01-29 10:54:54 +08:00
Petr Tůma
061552f5d4 [feature][python-flask] Add CORS support to python-flask server (#8472)
* Add CORS support to python-flask server generator

* Documentation update and CORS support for other generators using the same base class

* Trivial sample changes
2021-01-29 10:54:02 +08:00
Frank Lehmann
64f5dc8077 [swift5] URLSession: Fix memory leak of SessionDelegate (#8558)
* Remove unused stored reference of delegate. URLSession keeps a strong reference anyway.

* Fix cleanup

* Update samples
2021-01-29 10:52:39 +08:00
Justin Black
2553d056dc Removes nulltype from python, updates samples (#8555)
* Removes nulltype from python, updates samples

* Removes nulltype from the python requirements

* Removes nulltype import in models, moves requiredVars to optionalVars when approprieate
2021-01-28 09:30:36 -08:00
William Cheng
f887441591 update samples 2021-01-28 16:47:09 +08:00
William Cheng
d97717ee24 Merge remote-tracking branch 'origin/master' into 5.1.x 2021-01-28 15:52:44 +08:00
Ricardo Zanini
e377eabbc5 Fix #8492 - Use Vertx reference instead of static class (#8501) 2021-01-28 15:26:42 +08:00
MarcelTon
5b82ed9407 [BUG][Java]Fixed defaultValue escaping in Vert.x server template (#5321)
* Fixed defaultValue escaping in Vert.x server template

* Ran all java/vertx scripts in bin folder (java-vertx-*, java-petstore-vertx) and committed result.

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-28 14:00:37 +08:00
Chris Coltsman
a2a88cb8f0 Spring codegen - fix equals and hashCode methods for byte array and binary (#8345)
* Spring codegen - fix equals and hashCode methods for byte array and binary

- they should be compared using Arrays.equals
- they're hash code generated using Arrays.hashCode

* Corrected checkstyle issues

* Revert changes for binary types
2021-01-28 13:04:03 +08:00
Francesco Guardiani
0b2aa21f5d Bumped Vert.x template to Vert.x 4 GA (#8528)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2021-01-27 19:44:42 +08:00
William Cheng
b203539869 update doc, move bitrise.yml (#8547) 2021-01-27 13:19:59 +08:00
Frank Lehmann
f6019f00a1 [swift5] Fix #8511 (request closure not being called) (#8537)
* Remove weak self to fix too early deallocations

* Update samples

* Remove podfile lock

* Run pod install on samples/client/test/swift5/default/TestClientApp/

* Revert "Run pod install on samples/client/test/swift5/default/TestClientApp/"

This reverts commit 5ad327c707.
2021-01-27 11:17:42 +08:00
William Cheng
7654356df2 Migrate elixir samples to use OAS v3 (#8538)
* use 3.0 spec for testing

* add new files

* add 200 responses

* update samples, better code format for jaxrs
2021-01-27 11:14:58 +08:00
William Cheng
cbd2038cb5 [Swift] move swift config files under ./bin/config (#8539)
* move swift config files under ./bin/config

* update bitrise config
2021-01-26 19:06:53 +08:00
William Cheng
f6c617d09f Add typescript-nestjs client generator (#8522)
* #3336 add nestjs generator

* #3336 add nestjs generator

* #3336 add nestjs generator

* #3336 add nestjs generator

* remove extra files from building

* Revert "remove extra files from building"

This reverts commit 7f80f961ef.

* fix merge

* fix tests

* Add missing test client options provider for nestjs

* cleanup PRS

* fix compilation error

* remove groovy bin files;

* fix tests

* add samples

* update doc

* update samples

Co-authored-by: Victor Frank <vfrank@lumeris.com>
2021-01-26 09:34:33 +01:00
翠 / green
fb1b62816f [typescript-axios] reduce file size (#8283)
* [typescript-axios] reduce file size

* [typescript-axios] regenerate-samples
2021-01-26 12:23:09 +08:00
William Cheng
84813be309 remove supportJava6 option (#8514) 2021-01-26 10:27:09 +08:00
Michael Ramstein
0ae54911c3 [Elixir] Adds workaround for httpc for post/put/patch requests (#5682)
* Ensures empty body is always present for post/put/patch

* Generate samples
2021-01-26 10:25:21 +08:00
SBNTT
a127aab497 --http-user-agent arg support in javascript generator (#8531)
* add User-Agent header in Javascript generator

* add User-Agent header in Javascript-apollo generator

* update samples
2021-01-26 09:50:16 +08:00
Bruno Coelho
17bb3750c4 [swift 5] fix objc integration (#8534)
* [swift 5] fix objc integration

* [swift 5] fix combine integration
2021-01-25 20:53:42 +08:00
iyzana
ecf905681c Implement useAbstractionForFiles for webclient library (#7567)
* implement useAbstractionForFiles for webclient library

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-25 18:55:26 +08:00
Peter Leibiger
201acbd3de [dart] Fix switch on enums not possible (#8512)
All enum instances are `const` so `equals/hashCode` is not needed.
Removing this allows to `switch/case` on enum instances.
2021-01-25 18:31:19 +08:00
basyskom-dege
c55bee1273 [Qt][C++] Updated cpp-qt5-client doc (#8251)
* Update cpp-qt5-client.md

Added missing security feature support in the documentation

* added missing security features in doc
2021-01-25 18:26:47 +08:00
Benjamin Klatt
55a21bc4fb viadee as using company (#8529) 2021-01-25 18:19:14 +08:00
kannkyo
c7a711697c Support json data in csv (#8461) 2021-01-25 18:17:15 +08:00
kannkyo
bdfe3706f7 Support securityDefinitions (#8459) 2021-01-25 18:13:29 +08:00
William Cheng
4990dd6d8a remove windows batch script (#8526) 2021-01-25 17:54:04 +08:00
cal
8a955255b3 erefactor - AutoRefactor - Collections.addAll() rather than loop (#8464)
Collection related refactorings:
- replaces for/foreach loops to use Collections.addAll() where
possible,
- replaces for/foreach loops to use Collection.addAll() where possible,
- replaces for/foreach loops to use Collection.removeAll() where
possible.

AddAllRatherThanLoopCleanUp from AutoRefactor applied by erefactor.
For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor .
2021-01-25 17:34:52 +08:00
Antonio
cb530d4e75 Add .t in spec generation of Elixir structs (#8159)
* Add .t in spec generation of object types

* update samples

* Adds workaround for free-form maps with propper typespec

* Adds missing typsspec definition for structs

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: Michael Ramstein <mr@cyon.ch>
2021-01-25 16:13:23 +08:00
basyskom-dege
58f486651e [Qt5][C++] Removed deprecated functions to support Qt6 (#8234)
* removed depricated functions

* using preprocessor variable. Updated samples

* added version check for random functions

* added another version check to Json functions

* Update modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpFileElement.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpFileElement.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.h.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Apply suggestions from code review

Changed version check to Qt 5.15 to remove the warning of the deprecated functions when compiling with Qt 5.15

Co-authored-by: Martin Delille <martin@delille.org>

Co-authored-by: Martin Delille <martin@delille.org>
2021-01-25 15:32:43 +08:00
Bruno Coelho
3a56e3818f [Swift 5] remove old swift sample (#8280)
* [swift] remove old swift sample

* [swift] update bitrise.yml

* [swift] update unit tests
2021-01-25 13:34:10 +08:00
Kuzma
57227e510f Remove servers urls with trailing slash (#7940)
* remove trailing slash

* update sample app

* added tests

* bug fix

* Adds test in DefaultGeneratorTest

* Reverts python files

* Does not modify a value of /

* Stops skipping / use case

* update samples

Co-authored-by: Justin Black <justin.a.black@gmail.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-25 13:32:39 +08:00
William Cheng
c5d4dc6d10 fix gradle test in appveyor (#8525) 2021-01-25 09:42:21 +08:00
Christophe Bornet
06ad7a51ef [Kotlin-Spring] Fix properties default value (#8373)
* [Kotlin-Spring] Fix properties default value

* Fix kotlin enum default

* Update go sample
2021-01-24 22:43:58 +08:00
William Cheng
c96764f563 add apideck as the bronze sponsor (#8523) 2021-01-24 16:48:45 +08:00
William Cheng
9286b43dfa remove the bin folder under kotlin samples (#8520) 2021-01-24 14:20:40 +08:00
Richard Whitehouse
5f2ca61862 [Core, Rust Server] anyOf / oneOf support for Rust Server (#6690)
* [Core] Inline Model Resolution of Enums

Enums need to be named types, so handle them as part of inline model resolution

* [Rust Server] Handle models starting with a number correctly

* [Rust Server] Additional trace

* [Rust Server] Add support for oneOf/anyOf

* [Rust Server] Update supported features

* [Rust Server] General template tidy up

* [Rust Server] Implement IntoHeaderValue for wrapped data types

* [Rust Server] Convert from string correctly

* [Rust Server] Test for anyOf/oneOf

* Update samples

* Update docs
2021-01-23 21:32:51 +00:00
William Cheng
0068932470 fix Parcelable option (#8513) 2021-01-23 14:16:41 +08:00
Jean-François Côté
030b75b012 [Play Framework] Update the bean validation to use version 2.0. (#8354)
* Update the bean validation to use version 2.0. For a reason I don't know, it was not working anymore with version 1.

* better format

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-23 10:58:36 +08:00
SBNTT
96da7aaf9d --http-user-agent arg support in dart generator (#8508)
* add User-Agent header

* set User-Agent header only if httpUserAgent is defined

* add User-Agent header in dart-dio generator

* update samples
2021-01-23 10:39:21 +08:00
Frank Lehmann
eecd30c2da [swift5] Fix target SDKs for Combine option (#8476)
* Update min sdks when Combine is used

* Update samples

* Revert "Update min sdks when Combine is used"

This reverts commit e88b8abaa7.

* Wrap import combine with canImport directive

* Update samples

* Wrap functions using Combine with canImport because of compiler error on archive

* Update samples

* Remove unnecessary newline and update samles
2021-01-23 10:35:37 +08:00
William Cheng
ac59ab9201 Update parser to newer version 2.0.24 (#8494)
* update parser to 2.0.24

* update tests
2021-01-23 10:34:26 +08:00
William Cheng
2bd4febd28 update gradlew, gradlew.bat (#8469) 2021-01-23 10:34:06 +08:00
Hugo Alves
a7a5937813 [JAVA][FEIGN]Implement unit tests for java-feign client (#8484)
* Implement unit tests for feign client

Implement tests
Migrate to junit 5

* Default feign client does not support PATCH verb

Default feign client does not support PATCH verb

* Remove test for GET endpoint with request body

* Configure junit in gradle build

* Configure logback for unit tests

* Add missing dependencies to sbt

* Fix gradle dependency

* Add logback to gradle unit test

* Regenerate samples

* Make junit test classes package private

* Make junit test classes package private

* Update samples

* Organize imports

* Organize imports
2021-01-23 10:33:16 +08:00
Peter Leibiger
90ed1290fa [dart][dart-dio] Improve form param handling, respect required flag (#8369)
* [dart-dio] Improve form param handling, respect required flag

* simplify template
* respect required flag (only null check when not rquired)
* minor formatting

* Add additional nullable check
2021-01-22 17:58:27 +08:00
Justin Black
2331432cc0 Adds hasValidation to all java core Schema classes (#8474)
* Adds hasValidation to IJsonSchemaValidationProperties

* Adds model validation examples for maxItems, minItems, minProperties, maxProperties, minLength, maxLength, multipleOf

* Adds schemas with pattern validation

* Adds minimum example schemas

* Adds maximum example schemas

* Adds ArrayWithUniqueItems

* Adds exclusiveMinimum schemas

* Adds exclusiveMaximum examples

* adds testModelGetHasValidation

* Adds testPropertyGetHasValidation

* Adds testQueryParametersGetHasValidation

* Uncomments out query parameters

* Adds testHeaderParametersGetHasValidation

* Adds testCookieParametersGetHasValidation

* Adds length assertions for properties and marameters

* Adds testBodyAndResponseGetHasValidation

* Improves validation setting

* Only sets exclusiveMinimum when minimum is set, only set exclusiveMaximum when maximum is set

* Adds fix for rust

* Fixes min and max setting for integers

* Regenerates python samples

* Updates code so python sample does not change
2021-01-21 09:52:49 -08:00
William Cheng
3d23b99242 minor fix to powershell api doc (#8496) 2021-01-21 21:21:40 +08:00
Jose Tom
b447e4f51d [ plugin docs ] Update gradle plugin version to 5.0.0 (#8490)
* Update gradle plugin version to 4.3.1

1. Updated gradle plugin version to 4.3.1 (to keep in sync with maven sample)
2. Removed modelFilesConstrainedTo  in the gradle sample to generate code for dummies who are pasting and running.

* Update version to 5.0.0
2021-01-21 15:47:49 +08:00
Karsten Thoms
1ceb5f5c96 Update README.adoc (#8488) 2021-01-21 09:48:25 +08:00
Richard Whitehouse
a61b7bbc65 [Rust Server] Reinstate tests (#8477)
* Revert "comment out rust server tests (#8440)"

This reverts commit 32b01cb39b.

* Update to swagger-rs 5.0.2

* Update samples for swagger-rs 5.0.2

* Update swagger multipart usage

- swagger/multipart renamed multipart_form
- Update boundary call

* Update samples
2021-01-20 23:16:54 +00:00
William Cheng
4d75a29991 fix typo in useOneOfDiscriminatorLookup (#8480) 2021-01-20 18:51:56 +08:00
Nicolas Bouvrette
5de112fca5 Update roadmap.md (#8473)
Fixing broken link.
2021-01-19 20:24:13 +01:00
William Cheng
62eecabfa5 [csharp-netcore] add .Net 5.0 support (#8467)
* add net5.0 support to csharp-netcore client gen

* update doc

* update samples
2021-01-19 22:38:34 +08:00
Anh (Duke) Nguyen
8b2ac7b0ac Fix README typo for Crystal (#8470)
* Fix README typo for Crystal

* Fix README typo for Crystal in Mustache template
2021-01-19 16:38:53 +08:00
Noor Dawod
f5c49609d2 Javadoc + operations interface + provider for state(ful/less) handlers (#8346)
* Added Javadoc + meta-data about request/response + abstract class.

* Added one more method to set base path.

* Updated Javadoc for each endpoint.

* Shorten the method name displayed in Javadoc.

* Fix README grammar.

* Separate imports based on type.

* Put operations into their own interface class.

* Update Javadoc.

* Adjust Mustache template to support Java 1.5.

* Add import for HttpServerExchange, suppress warning about using a Lambda.

* Remove @Override from a mgetStatefulHandler().

* Regenrate the samples.
2021-01-19 13:16:20 +08:00
Hugo Alves
ede2a2316c [JAVA][Feign] Replace Apache oltu with scribejava (#8318)
* - Replace apache oltu with scribejava
- Implement the following authentication methods
  - ApiKey header
  - HTTP basic authentication
  - Oauth client credentials flow
  - Oauth Implicit flow
  - Oauth Pasword (deprecated)

* Create class hierarchy for Oauth flows implementation

* Add instructions of how to use the ApiClient to Readme.md

* Update samples

* Remove support for java 6 and 7

* Remove java 6 and 7 support from gradle

* Format pom.xml

* Remove empty line

* Update samples

* Remove oltu dependency from build.gradle and build.sbt.
Replace oltu with ScribeJava

Update samples

* Update samples

* Update samples
2021-01-19 12:41:25 +08:00
Vladimir L
6e4c1307a7 use '{{#hasPathParams}}' instead of '{{#pathParams}}' to avoid path repetiotion if path contains multiple parameters (#8402) 2021-01-19 11:33:17 +08:00
Sakari Bergen
83e9986bba Style fix: correct copy-paste mistake in test package name (#8451) 2021-01-19 11:04:27 +08:00
William Cheng
cd936a66fd [Nim] test the petstore client in drone.io (#8466)
* test nim client in drone.io

* trigger build failure

* Revert "trigger build failure"

This reverts commit 7253c8ad3b.
2021-01-19 10:52:46 +08:00
William Cheng
53a5bfecfd Merge remote-tracking branch 'origin/master' into 5.1.x 2021-01-18 11:33:57 +08:00
Justin Black
e9c850fd4e Adds isNull to codegenX java core classes that represent schemas (#8462)
* Adds isNull to all schema classes

* Adds null model and property samples, adds models test of isNull

* Adds isNull tests for parameter and response also

* Reverts version file
2021-01-17 12:28:17 -08:00
Johannes Wienke
cd2a0db1ce Fix counting for large API solutions in generated Python README (#8403)
* Fix counting for large API solutions

Let 2 follow 1.

* Update Python samples with new readme
2021-01-15 13:51:12 -08:00
Justin Black
c4dbd2cfa3 [python] Fixes file upload + download, adds tests (#8437)
* Adds tests for file upload and files upload

* Adds test_download_attachment

* Fixes test_upload_file

* Adds download_attachment endpoint

* Adds test_download_attachment

* Updates assert_request_called_with signature

* Samples regen

* Adds upload download file spec route and sample gen

* Fixes file upload for application/octet-stream, writes test_upload_download_file

* Changes if into elif

* Improves python code in api_client
2021-01-15 13:27:33 -08:00
Toby Murray
99144252f7 Migrate off deprecate Gradle configurations (#8436)
A bunch of gradle configurations have been deprecated, with drop in replacements. Relevant to this project:

compile -> implementation
testCompile -> testImplementation

They're visible by executing e.g. ./gradlew build --warning-mode all with supporting documentation here: https://docs.gradle.org/6.6.1/userguide/upgrading_version_5.html#dependencies_should_no_longer_be_declared_using_the_compile_and_runtime_configurations
2021-01-15 22:32:50 +08:00
William Cheng
a4b356c8b3 fix typo (#8452) 2021-01-15 22:00:01 +08:00
Sakari Bergen
e78183abde Clarify PR instructions regarding @mentioning the technical committee (#8381) 2021-01-15 18:24:08 +08:00
Ștefan Cenușă
dfcd86f35a [typescript-axios] bump axios version to 0.21.1 to fix vulnerability (#8445)
* fix(typescript-axios): updated axios dependency to new minor version 0.21.1

* fix(typescript-axios): update samples
2021-01-14 20:03:20 +01:00
William Cheng
e2ad6dbc1b [Go] Fix response body (#8439)
* fix go response body

* add missing import
2021-01-14 23:32:19 +08:00
William Cheng
32b01cb39b comment out rust server tests (#8440) 2021-01-14 16:07:38 +08:00
William Cheng
a3952b2beb Add a link to the blog post in nginx blog (#8438) 2021-01-14 14:14:51 +08:00
William Cheng
22ac8faec7 Revert "[GO][Client] return GenericOpenAPIError instead of error in Execute() (#8137)" (#8427)
This reverts commit 1562afea39.
2021-01-14 13:59:21 +08:00
William Cheng
2b7ae4fa46 Consolidate 3rd item into the 4th item in PR template (#8428)
* Consolidate 3rd item into the 4th item

* minor change, use mvnw
2021-01-14 10:53:52 +08:00
Ronny Pfannschmidt
6b6d1b1a97 [python] fix #8404: avoid shadowing the name Endpoint (#8405)
if a type was named Endpoint, its import for use in the api would shadow
the name Endpoint for the internal utility
2021-01-13 08:38:41 -08:00
Thessi
008ddfb1ef [typescript-angular] Fix configuration import in apiInterface.mustache when the configurationPrefix option is used (#8416)
Co-authored-by: Stefan Straka <Stefan.Straka@cloudflight.io>
2021-01-12 17:01:48 +01:00
Sergey Terentyev
a80788d424 Renamed basic authentication function in sttp client (#8396)
* Fix #8395 - changed function name to basic

* Fix #8395 - changed function name to basic

* Fix #8395 - removed test.yaml file

Co-authored-by: sergey <sterentyev@ebay.com>
2021-01-12 11:13:07 +08:00
William Cheng
1c85fdc473 update doc to use colon as the separator (#8411) 2021-01-12 10:47:09 +08:00
Gokul Raj S
ce3e0c7d68 7358 (#8388)
1. unable to use --global-property models="User,Pet" as this creates only User model.
2. to solve the issue, instead of "," separator used ":" separator
3. made some changes with that
2021-01-12 10:36:03 +08:00
agilob
ed9133e77f Make frequently used IO resources autoclosable (#8181)
* Make frequently used IO resources autoclosable

* Autoclose ruby error input stream
2021-01-12 00:26:25 +08:00
Ryan Feeney
e26f440729 Remove modelFilesConstrainedTo from gradle example (#8312) 2021-01-10 10:15:13 -05:00
Hui Yu
0284fcd5c7 [C][Client] Fix the memory leak when a JSON string of model fails to parse. (#8390) 2021-01-10 15:10:05 +08:00
Esteban Gehring
f136b9fd01 docs: improve pull request checklist (#8349)
* docs: improve pull request checklist

include build command before updating samples

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md
2021-01-10 14:46:31 +08:00
Bruno Coelho
646bcc64ad [Swift 5] code formatting (#8385)
* [swift] improve code formatting

* [swift] update sample projects

* Revert "[swift] improve code formatting"

This reverts commit 0cc280509c.

* [swift] update sample projects
2021-01-10 13:50:19 +08:00
Justin Black
ce893a84ff Fixes object serialization when there is an inline array property which contains a refed enum (#8387)
* Fixes object inline enum defintion with refed enum item

* Adds refed array model example w/ serialization + deserialization
2021-01-08 13:15:55 -08:00
William Cheng
1aa83b978b update meta-codegen 2021-01-08 21:55:56 +08:00
William Cheng
18bec1da28 Merge remote-tracking branch 'origin/master' into 5.1.x 2021-01-08 21:06:47 +08:00
Miroslav Šedivý
f2671fcb78 typescript-fetch: fix isCollectionFormatMulti for arrays of files (#8376) 2021-01-08 08:46:25 +01:00
Peter Leibiger
2ba0e03629 [dart-dio] Fix serialization of map body params (#8367) 2021-01-07 22:30:16 +08:00
Peter Leibiger
02473d8175 [dart] Cleanup, remove leftover inline objects/docs and regnerate tests (#8362) 2021-01-07 22:29:32 +08:00
Peter Leibiger
c43234711a [dart-dio] Generate the correct serializers (#8357)
* only generate actually used serializers (anything used in body or response)
* generate previously missing serializers for collection types
* improve formatting
2021-01-07 22:28:37 +08:00
Peter Leibiger
3b6c2b2342 [dart-dio] Add missing imports for container parameters (#8355)
* also remove redundant needToImport check
2021-01-07 22:27:27 +08:00
Wesley A
f5b2bb5057 Implement optional powershell verb parsing (#8252)
* Implement optional powershell verb parsing #8233

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-07 17:41:43 +08:00
William Cheng
1df719801e Add a new crystal client generator (beta) (#8304)
* add crytsal client generator

* update samples

* update doc

* regenerate spec

* regenerate spec

* various fixes

* test crystal in circleci

* test crystal client in drone ci

* Revert "test crystal client in drone ci"

This reverts commit 317f2cf2a0.

* fix install

* fix installation

* test crystal in travis

* cache image

* add --cache-from

* update doc

* run petstore with mvn

* install crystal

* fix install crystal

* sudo mvn

* run server

* using mvnw

* fix form or body parameter

* remove crystal from circleci

* fix test

* remove cache-from

* update doc
2021-01-07 17:10:22 +08:00
Dor Dadush
c67dc5d7d5 Fix error message templates for some field names (#8321)
some fields may start with a "u" character which causes
Powershell to think it is a unicode escape sequence.
2021-01-07 16:58:58 +08:00
Sascha Grebe
367ba3a2cf [cwiki] Added Enum documentation and fix newline problem for description (#8338)
* create enum documentation in model

* add newline to fix layout when a markdown table follows a markdown list

* avoid escaping of attributes to make sure documentation is displayed as in the spec
2021-01-07 16:57:14 +08:00
Thomas Hervé
4947634a24 Tweak regexp in underscore method (#8230)
The rule to split a capitalized word with plural didn't work properly,
leading to weird name generation in a few languages. This is an attempt
at fixing it.
2021-01-07 16:47:05 +08:00
Christophe Bornet
e73ae8c048 [Kotlin-Spring] Fix required model property deserialization (#8337)
* Fix required model property deserialization

* Update samples
2021-01-07 16:18:21 +08:00
Jon Schoning
4526ca2610 [haskell-http-client] regard mime type as json if "json" appears anywhere in the mimetype (#8361) 2021-01-06 14:33:31 -06:00
William Cheng
923e246fa8 rename titleCase, minor code format (#8350) 2021-01-06 23:48:11 +08:00
Guillaume TOURBIER
9bd2a45e72 typescript-angular: add providedIn for Angular 9+ (#8324)
* feat: add providedIn for Angular 9+

Adding new option, providedIn, for generator typescript-angular
Keep providedInRoot for backward compatibility but mark as deprecated
for Angular 9+

fix: #6432

* doc: providedIn

infos about providedIn
Mark providedInRoot as deprecated

* doc: run generate-samples for typescript

using typescript-angular-v9-provided-in-any.yaml

* refactor: runned ensure-up-to-date locally

* refactor: api.module.mustache rely on providedIn too

* doc: re-generate samples
2021-01-06 15:31:41 +01:00
William Cheng
663c8b2d80 update samples 2021-01-06 18:49:17 +08:00
Luiz Felipe Stangarlin
319bd7eaa8 Add Ktorm schema generator (#7759)
* [ktorm] added support for ktorm

* [ktorm] fixed type mapping

* [ktorm] fixed foreign key

* [ktorm] added variable for the missing package import

* [ktorm] added correct templates

* [ktorm] added relationship metadata

* [ktorm] also support relationships 1:m

* [ktorm] relation to primitive naming fix

* [ktorm] updated mustache templates

* [ktorm] small fixes on templates, assigmentbuilder, docs, sql script syntax.

* fix issue, rename to ktorm-schema

* replace tabs with 4 spaces

* [ktorm] added primarykey automatic generation

* [ktorm] added tests

* [ktorm] added gradle to samples

* [ktorm] fix datatime type

* [ktorm] template fixes array and primarykey

* [ktorm][sample] regenerate

* [ktorm][sample] added manually files from kotlin-client

We inherit from baseTable, so we need those for now

* [ktorm] fix: relation column types hardcoded

* update samples

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-06 17:04:49 +08:00
William Cheng
ae563bcf91 update technical committee (#8336) 2021-01-06 10:56:51 +08:00
fbl100
04dfff83e0 Fixes issue 8052: Stackoverflow in toExampleValue() for python client (#8326)
Added a Set<String> in toExampleValueRecursive() to keep track of which models we have
generated to avoid an infinite recursion for recursive models.  An example of a recursive
model would be a GeoJson GeometryCollection.

Co-authored-by: Frank Levine <frank.levine@blacklynx.tech>
2021-01-05 09:45:43 -08:00
Peter Leibiger
fc22de0522 [dart-dio] Fix failing integration tests (#8335)
This happened due to the merge of #6384 where implicit-dynamics were still allowed.
2021-01-05 22:08:55 +08:00
Dor Dadush
4cdf610be0 Fix fields null check in powershell model template (#8323)
If field is boolean, the value might be $False.
The current null checking does not allow $False to be set.
2021-01-05 21:56:06 +08:00
Hippolyte HENRY
a9c168c400 [ruby] Support aliasing of API keys (#8124)
* Allow aliasing of auth keys

* update sample and add config for feature

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-05 20:04:08 +08:00
William Cheng
c3a21863b5 fix bugs with duplicated decoder (#8223) 2021-01-05 14:58:24 +08:00
NickPak
72869d53a3 [C][Client] Add C++ reserved keywords to C-libcurl client generator, then the C client can be compiled by C++ compiler (#8205)
* [C][Client] Add cpp reserved keywords to C-libcurl client generator

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-01-05 14:39:56 +08:00
William Cheng
872f9399cd comment out dart dio tests due to CircleCI failure 2021-01-05 14:35:31 +08:00
William Cheng
3506ad6f17 Ignore docker login error for PR (#8327)
* ignre docker login error

* trigger faiure

* Revert "trigger faiure"

This reverts commit ce17593d28.
2021-01-05 10:46:28 +08:00
Peter Leibiger
9ec1e23c10 [dart][dart-dio] Fix collection and date default values not compiling (#8306)
* empty arrays are now correctly generated
* default arrays with values are empty
* date/dateTime is now always null in order to prevent compile errors
2021-01-05 09:45:27 +08:00
Peter Leibiger
0c4a928ebc [dart][dart-dio] Enable strong-mode and strict types (#8231)
* [dart-dio] Enable strong-mode and strict types

This will make it easier to eventually transition to NNBD. Also fix some formatting things.

* [dart-dio] Add implicit-casts: false to analysis options

* [dart-dio] Add dartanalyzer to integration tests

* raise minimum Dart version to 2.6 (to support spread collection)
* add header to all files for language version
* fix some missing imports that can be fixed (some remain due to missing inheritance support)
2021-01-05 09:43:17 +08:00
Josh Burton
604ac6d90f [dart-dio] Serializes request bodies using a specific serializer so a… (#6384)
* Updates samples

* Handles primitive types
2021-01-05 09:40:32 +08:00
Bruno Coelho
dd9a19ab8f [Swift 5] fix Multipart FormData encoding and add support for Form URLEncoded enconding (#8275)
* [swift5] fix issue with form data with null file

* [swift5] fix issue with form data with null file on alamofire implementation

* [swift5] update sample projects

* [swift5] fix issue with form data with null file on alamofire implementation

* [swift5] add support for form url enconded in URLSession

* [swift5] add support for form url enconded in Alamofire

* [swift] improve code formatting

* [swift] improve code formatting

* [swift] dont defaut to application/json
2021-01-05 09:27:14 +08:00
Bruno Coelho
d2aa40a935 [Swift 5] deprecate retry hook since its no longer needed (#8303)
* [Swift 5] deprecated retry hook since its no longer needed

* [Swift 5] deprecated retry hook since its no longer needed

* [swift] fix generator code formatting
2021-01-04 19:34:28 +08:00
William Cheng
caf52641f0 login dockerhub before pull (#8314) 2021-01-04 13:36:34 +08:00
Peter Leibiger
08fc5bb38f Update maven wrapper (#8305)
* ran `mvn -N io.takari:maven:0.7.7:wrapper`
* this fixes colored output not working in zsh/MacOs/BigSur, not exactly sure what caused it not to work anymore
2021-01-04 11:56:38 +08:00
Arnaud Jeansen
0c5cec8f75 7141: filter out problem+json mime type from JSON mime types fast tra… (#7976)
* 7141: filter out problem+json mime type from JSON mime types fast tracked into the Accept header (resttemplate)

* 7141: ran ensure-up-to-date

* 7141: minimize changes with master (keep using isJsonMime for MediaType)
2021-01-04 11:02:39 +08:00
Nicholas Muesch
00d56375b0 Use Map interface for configureApiKeys (#7982) 2021-01-04 10:54:01 +08:00
Sakari Bergen
ee2f0e04a9 Fix csharp-netcore enum var name underscore handling (#8213) 2021-01-04 10:35:24 +08:00
Hui Yu
a812bf18a8 [C][Client] Does not escape parameter name in URL path (#8243) 2021-01-04 10:30:48 +08:00
Christophe Bornet
bc247664eb [Kotlin-Spring] Fix optional requestBody with delegate (#8299) 2021-01-04 10:22:59 +08:00
Bruno Coelho
163c70e7d8 [Swift 5] create sample for URLSsession and Alamofire bearer authentication (#8302)
* [swift] create a sample of bearer token authentication with URLSession

* [swift] create a sample of bearer token authentication with URLSession

* [swift] create a sample of bearer token authentication with URLSession

* [swift] create a sample of bearer token authentication with URLSession

* [swift] create a sample of bearer token authentication with Alamofire

* [swift] create a sample of bearer token authentication with Alamofire
2021-01-04 10:03:26 +08:00
Bruno Coelho
72d6cff188 iOS - fix XcodeGen deploy target to match cocoapods (#8279) 2021-01-04 09:55:59 +08:00
Bruno Coelho
14efb8c70f [swift 5] update dependencies (#8277) 2021-01-04 09:55:23 +08:00
Tatsuro Shibamura
de3ec75b11 [csharp-netcore] Fixed ApiClient code generation not respecting modelPackage settings (#8272) 2021-01-04 09:52:07 +08:00
Josh Goldberg
566e7ef583 Fix two spaces after get headers() in typescript-fetch (#8294) 2020-12-30 10:32:40 +01:00
Justin Black
7d6063d05c Revert "Fixes issue 8052: Stackoverflow in toExampleValue() for python client (#8054)" (#8293)
This reverts commit fd02bc3d84.
2020-12-29 08:13:36 -08:00
Bruno Coelho
775b64f6c7 [swift5] add URLResponse to ErrorResponse (#8267)
* [swift5] add URLResponse to ErrorResponse

* [swift] improve unit tests

* [swift] improve unit tests
2020-12-29 23:31:12 +08:00
fbl100
fd02bc3d84 Fixes issue 8052: Stackoverflow in toExampleValue() for python client (#8054)
Added a Set<String> in toExampleValueRecursive() to keep track of which models we have
generated to avoid an infinite recursion for recursive models.  An example of a recursive
model would be a GeoJson GeometryCollection.

Co-authored-by: Frank Levine <frank.levine@blacklynx.tech>
2020-12-28 09:30:29 -08:00
Tomofumi Chiba
9889e5dfba [typescript(experimental)] fix for Deno v1.6 (#8265)
* fix for Deno 1.6

* update dependency version of Deno test code
2020-12-28 13:57:00 +01:00
William Cheng
c3220848f2 Update readme after 5.0.0 release (#8250)
* add badge for 5.1.x branch

* add badge for 6.0.0

* minor change

* update pr tempalte
2020-12-21 20:37:40 +08:00
William Cheng
25b0cbe2f1 Prepare 5.0.1 snapshot (#8249)
* update version to 5.0.1-SNAPSHOT

* update samples

* update meta codegen
2020-12-21 17:14:18 +08:00
William Cheng
345b68a107 prepare 5.1.0 snapshot release 2020-12-21 16:35:12 +08:00
William Cheng
d7d5e53f2b Prepare v5.0.0 release (#8247)
* update to 5.0.0

* update samples
2020-12-21 13:04:11 +08:00
Aanisha Mishra
72dc0cfb07 Fix logic for removal of forward slash in RegGen pattern (#8219)
* rxgen version update

* rgxgen version 1.2

* update rgxgen version to 1.3

* remove start end slash in patterns

* Remove debug logs

* fix logic for removal of backslash

* fix logic for forward-slash removal

* fix logic for removing unwanted characters in regex

* add test for example value for string properties

* improvise regex validation logic for example generation

* complicate regex examples

* regex pattern correction

Co-authored-by: aani <aani>
2020-12-21 10:15:32 +08:00
William Cheng
87926d0d1c Add a link to Yahoo! Tech blog (#8246)
* Add a link to Yahoo! Tech blog

* update link to techblog
2020-12-21 09:48:08 +08:00
William Cheng
d4e9f014ac Add a link to qiita blog post (#8245) 2020-12-21 09:42:09 +08:00
Arthur Mogliev
206f698a98 [php-ze-ph][php-mezzio-ph] Migration from Zend to Laminas and corresponding generator rename (#8145)
* Migration from php-ze-ph to php-mezzio-ph

* Sample regen after rebase

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-20 21:48:37 +08:00
randomswdev
d1dcdad3d5 [Go][Server] Use the correct parameter name (#8144)
* Use the correct parameter name

* Minor changes

Co-authored-by: Bernardo Pastorelli <13519917-randomswdev@users.noreply.github.com>
2020-12-20 15:32:57 +08:00
William Cheng
bde631c07f [aspnetcore] Set default version to 3.1 (#8240)
* set default version to 3.1

* rename config

* update doc
2020-12-20 11:00:39 +08:00
Slavek Kabrda
129881d04a Expose Handlebars infiniteLoops setting (#7926) 2020-12-19 21:54:46 +08:00
William Cheng
a2e5d274d6 Test ASP.Net core projects in AppveyorCI (#8239)
* test aspnetcore server in appveyor

* update samples

* to break the build

* Revert "to break the build"

This reverts commit ab23062815.

* ignore csproj. update samples
2020-12-19 21:02:13 +08:00
William Cheng
79a18b0440 [Qt5] rename the extension (#8236)
* rename extension, move config

* purge folder, regenerate samples
2020-12-19 15:16:46 +08:00
sunn
b127cc7b70 Allocate httpcontent (#8217) 2020-12-19 15:13:49 +08:00
basyskom-dege
febd65d3b8 Qt5 parameterized server (#8183)
* first Commit parameterzied Server support

* fixed serverconfig classes

* Defautl constructor f. Config, fixed regex replace

* Polosihed Templates, Added MultiServer support

* Update Readme. Fixed MultiServer. Fixed def. Value

* Passing global Server to mustache. Small fixes

* Updated  samples, fixed mustache for multi server

* added prefixes, removed unused imports

* added newly generated samples

* missing vendorExtension in mustache. Update smaple

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-19 11:34:12 +08:00
William Cheng
0be3fe6104 Set skipFormModel to true by default (#8125)
* set skipFormModel to true by default

* update tests

* regenerate ruby faraday client

* remove inline object spec files

* more clean up on inline object files

* update samples
2020-12-18 23:57:19 +08:00
Ghufran Zahidi
52c63bb325 Fixed the query string for HttpSigning core vs dotnet47 (#8189)
* Fixed the query string for HttpSigning core vs dotnet47

* updated the sample

* replace the tab with space

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-18 12:35:05 +08:00
William Cheng
a407090bef update samples 2020-12-18 12:28:41 +08:00
agilob
13042b76ea [java] Add setBearerToken method in okhttp-gson (#8200)
* Add setBearerToken method in okhttp-gson

* Update generated files
2020-12-18 12:08:30 +08:00
William Cheng
49f55b0d8e Add postProcess method to show donation message (#8142)
* add postProcess method to show donation message

* update comment
2020-12-18 10:16:21 +08:00
Aanisha Mishra
f766735d5c [Python][Client] Python model directory init missing (#8215)
* include model and api dir init mustaches

* update examples

* remove unwanted changes

* revert unwanted changes in sample

Co-authored-by: aani <aani>
2020-12-18 10:13:35 +08:00
Tivadar Bocz
f19f7064be feat(#8038): add url encode feature to WebClient (#8171) 2020-12-18 10:05:55 +08:00
Shinya Sugmoto
6a2ba0e615 test: enable typescript-axios integration test (#8163)
* test: enable typescript-axios integration test

* chore: update old dep & devDep

* refactor: use axios installed in test target

* chore(travisCI): update node version from v8.12.0 to v12.20.0
2020-12-17 11:38:19 +01:00
dependabot[bot]
9b6fd5a27d Bump ini from 1.3.5 to 1.3.7 in /website (#8160)
Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-17 18:05:32 +08:00
Peter Leibiger
a5377647f4 [dart][dart-dio] Add support for default values (#8201)
* [dart-dio] Generate default value builders

* return `null` when there is no default value instead of `"null"`
* use built_value's `_initializeBuilder` to set default values

* [dart-dio] Fix default value formatting in model doc
2020-12-17 17:50:36 +08:00
Peter Leibiger
67f305608b [dart][dart-dio] Add fake petstore integration tests to master POM (#8209) 2020-12-17 17:49:50 +08:00
Aanisha Mishra
1562afea39 [GO][Client] return GenericOpenAPIError instead of error in Execute() (#8137)
* error to GenericOpenAPIError

* reformatted files

* reformat files

* spaces to tabs

* update petstore examples

* remove extra brackets

* update sample generation

* update go test cases

* update openapi3 go tests

* edit test samples

* update documentation
2020-12-17 16:39:43 +08:00
Aanisha Mishra
c2005ca96e [Java][Client]com.github.curious-odd-man.rgxgen version update (#8139)
* rxgen version update

* rgxgen version 1.2

* update rgxgen version to 1.3

* remove start end slash in patterns

* Remove debug logs
2020-12-16 15:43:32 -08:00
Shinya Sugmoto
145d9c38a0 chore(CircleCI): move circle ci config file to correct location (#8214) 2020-12-17 00:07:46 +08:00
Peter Leibiger
96e6bc4650 [dart-dio] Allow dynamic headers and add additional dio parameters (#8191)
* fixes some compile errors due to header params not being of type `String`
* add optional `extra` and `validateStatus` parameters from dio
2020-12-16 23:24:09 +08:00
Peter Leibiger
e1c43f1356 [dart][dart-dio] Prevent name clashes with existing dart types (#8198)
* [dart][dart-dio] Prevent name clashes with existing dart types

Can not use dart import aliases for now as this is not supported by built_value. This means we need to add potentially clashing names/classes to an `additionalReservedWords` exclusion list. Starting with a basic list of some http/io classes.

Correctly use `importMapping` and `defaultIncludes` this time around. Improve reserved word checking.

This now successfully generates `ModelList`, `ModelFile` and `ModelClient` models which previously were not generated at all or were wrong types.

* Address review comment

* Update generator docs
2020-12-16 17:25:20 +08:00
Peter Leibiger
80df0b0004 [dart-dio] Remove unused code (#8196) 2020-12-16 17:23:48 +08:00
Hui Yu
f0c4fd7ab8 [C][Client] Fix coredump when releasing the memory of an incompleted resource (#8190) 2020-12-16 17:20:36 +08:00
Tomas Sykora, jr
180fae02cd [DART-DIO] [GENERATOR] Make header params with dynamic types (#6915)
* Make header params with dynamic types

Otherwise this will generate code which is not compile-able. Like this:

```dart
        Future<Response<List<StockItemProjectionDirect>>>getAllStockItems(Store storeId,{ int xXChunkNumber,int xXChunkSize,StockItemRequestFilterDto stockItemRequestFilterDto,CancelToken cancelToken, Map<String, String> headers, ProgressCallback onSendProgress, ProgressCallback onReceiveProgress,}) async {

        String _path = "/api/store/{storeId}/stock".replaceAll("{" r'storeId' "}", storeId.toString());

        Map<String, dynamic> queryParams = {};
        Map<String, String> headerParams = Map.from(headers ?? {});
        dynamic bodyData;

        headerParams[r'XX-Chunk-Number'] = xXChunkNumber;
        headerParams[r'XX-Chunk-Size'] = xXChunkSize;
```

See how the func recieves int argument which then assignes into a string... last 2 lines

* FIX: Dynamic header and sync with upstream

* DART-DIO new samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-16 17:13:50 +08:00
William Cheng
fb1661e451 update node-fetch (#8204) 2020-12-16 16:14:46 +08:00
William Cheng
afa750f249 [Protobuf] Fix how map is generated (#8203)
* test map with protobuf

* fix protobuf map

* use unescaped value

* use string

* undo changes to spec
2020-12-16 15:33:41 +08:00
Robert Parini
a4f84b2f8c [Python][Client] Default to system CA instead of certifi (#8108)
* Use system CA by default and remove certifi

See https://github.com/OpenAPITools/openapi-generator/issues/6506

* Use system CA by default in asyncio client

* Update README_onlypackage.mustache

* Result of ./bin/generate-samples.sh

* Add ssl_ca_cert argument for Configuration

* Result of ./bin/generate-samples.sh

* Remove certifi, use system CA by default
2020-12-15 16:36:35 -08:00
Thomas Hervé
952cd9c689 Include description directly in python docstrings (#8154)
* Include description directly in python docstrings

mustache escaping the description make them render weirdly, including
sometimes unsupported characters in python.

* More parameters
2020-12-15 09:30:50 -08:00
Peter Leibiger
ddd11abb87 [dart][dart-dio] Correctly type responses and futures (#8195)
* don't rely on implicit dynamics
* this is a requirement for NNBD
* add space between return type and some method names
2020-12-16 00:52:47 +08:00
Peter Leibiger
95b719814c [dart] Fix some dart files not being post processed (#8193) 2020-12-16 00:51:36 +08:00
Hippolyte HENRY
81a5e44a6c [ruby] Improve ruby client examples (#8040)
* [ruby] Improve ruby client examples

* samples

* quote fixes

* Keep enum value

* better string type handling

* fix failing tests

* add space after comment

* update samples

* use Time

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-16 00:10:04 +08:00
sahan
6f5076edb7 fix: use config basePath instead of the class context basePath (#8186)
* fix: use config basePath instead of the class context basePath

* chore: build samples
2020-12-15 10:54:13 +01:00
William Cheng
ed8b934b27 Add a link to IEEE conference paper (#8188) 2020-12-15 11:50:54 +08:00
Peter Leibiger
70e86a0840 [dart] Fix enums with default value (#8182)
* simplify template expression
2020-12-15 09:56:35 +08:00
Peter Leibiger
f484e0db42 [dart][dart-dio] Formatting improvements (#8180)
* always add trailing commas in arrays and break each line
* make variables final
* improve API formatting (mainly leading spaces)
* remove empty lines and whitespaces
* fix formatting of datatype and description and docs
* consistently use single quotation marks (dart already does this)
2020-12-15 09:55:33 +08:00
William Cheng
d1eda02be6 update samples 2020-12-15 09:52:51 +08:00
Peter Leibiger
e412145a1f [dart][dart-dio] More enum fixes for inner types (#8174)
* correctly generate enums from `mostInnerItems`
* use `datatypeWithEnum` which should always be he correct type
* dart generators prefix inner enums with the classname of the containing class, ensure datatypeWithEnum always matches
2020-12-14 23:05:31 +08:00
William Cheng
c974c512ff [Spring] openapi-generator generates an incorrect stub for types named "Resource (#8178)
* Initial push for fix #1680

* fix yaml

* update samples

Co-authored-by: JBurgess <joel.burgess@gmail.com>
2020-12-14 20:16:25 +08:00
Thibault Duperron
24fda2ab59 [Kotlin] Use array for generated annotation (#7800)
* Use array for generated annotation

fix #7799

* Add generation for kotlin spring delegate pattern

* Sample

restart tests
2020-12-14 17:57:14 +08:00
Michael Czolko
bc6da8c082 Update apiController.mustache (#7248)
If the delegate is optional, put it as optional in constructor
2020-12-14 16:10:26 +08:00
dpolyakov987
0cbf064d2b fix kotlin-spring generator does not add @Valid annotation to nested classes (#8037) 2020-12-14 16:09:06 +08:00
Peter Leibiger
351377ca29 [dart-dio] Fix x-www-form-urlencoded body not working (#8175)
* only use `FormData.fromMap()` for multipart content, `FormData` does not work with `x-www-form-urlencoded`
* use a basic map for `x-www-form-urlencoded` content
* fix formatting
2020-12-14 15:36:18 +08:00
Peter Leibiger
7f9012c554 [dart-dio] Use built_value collection types without string replacement (#8153) 2020-12-14 00:00:18 +08:00
Peter Leibiger
cd0257b0e5 [dart][dart-dio] Enum improvements (#8149)
* [dart] Always use the correct enum data type

* use raw strings for enum string values

* [dart-dio] Use raw strings for built_value enums

`@BuiltValueEnumConst` does some wierd string handling in the generated code `r'\$'` becomes `'$'`. This is different compared to the wireName in `@BuiltValueField`
2020-12-13 23:59:29 +08:00
agilob
79395de9b7 [java] Generate "static final" instead "final static" (#8158)
* Generate java code with "static final" instead "final static"

* Regenerate code with "static final"
2020-12-11 10:51:57 +08:00
William Cheng
e42fdb2b13 Update Dart technical committee with new members (#8151)
* Update Dart technical committee with new members

* add agilob

* remove ircecho
2020-12-11 10:51:13 +08:00
William Cheng
d20d9447a8 update samples 2020-12-10 19:09:27 +08:00
Peter Leibiger
a93a60b6eb [dart] Handle enumVarNames for negative names (#8143) 2020-12-10 18:59:23 +08:00
Aliaksei Zhuk
9e5610488f [Go] Fix for 'Invalid code for files array in multipart/form-data request'… (#8103)
* Fix for 'Invalid code for files array in multipart/form-data request' (OpenAPITools#8093)

* Executed ensure-up-to-date

* Replaced spaces with tabs.
2020-12-10 18:48:45 +08:00
Christophe Bornet
f2d8e3a25b [Java/okhttp] Add dynamic operations option (#7916)
* Add dynamicOperations option to okhttp gen

* Add tests

* Add apiclient tests

* Fix apiclient template

* Add dependencies in gradle and sbt
2020-12-10 18:22:39 +08:00
William Cheng
d2f9d421d4 Update swagger parser to 2.0.23 (#8128)
* update parser to 2.0.23

* upgrade to 2.0.24

* Revert "upgrade to 2.0.24"

This reverts commit d9714770c8.
2020-12-10 17:53:44 +08:00
William Cheng
5521d7745d Fix IndexOutOfBoundsException with no model definition (#8110)
* fix IndexOutOfBoundsException with no model

* better code format
2020-12-09 23:40:48 +08:00
Peter Leibiger
4ad6d0bfe5 [dart] Variable/Operation/Model naming (#8123)
* [dart] Properly escape param/var names that clash with Dart types

* [dart] Add tests for var/enumVar names

* note: public and private are no keywords in Dart
* some tests are still wrong, some are commented out

* Fix typo

* [dart] Improve variable name escaping

* add more tests

* [dart] Fix operationId naming

* [dart] Fix upper case var name with leading underscore

* [dart] Correctly support model prefix/suffix

* [dart] Support spaces in property names

* Call super for empty operationId

* [dart] Fix and improve enumVar naming/generation

* use same handling for all 3 generators
* allow `updateEnumVarsWithExtensions` to have access to the data type
* improve `x-enum-values` handling and add supprt for other enum vendor extensions
* remove duplicate and outdated tests from `DartDioModelTest`
* add more tests to `DartModelTest`
* no longer force lowercase enums for plain dart generator (breaking)
* this change also removes the trailing underscore from plain dart generator (breaking)
2020-12-09 23:21:08 +08:00
Hui Yu
828e924a3e [C][Client] Update free function when a map is deleted (#8122) 2020-12-09 22:34:37 +08:00
Peter Leibiger
2cdbfd63eb [dart][dart-dio] Enum fixes specific to Dart DIO (#8114)
* [dart-dio] Fix wrong escaped serializer names

* [dart-dio] Prevent enum name collisions in inlined enums

Prefix the private built_value instances with the enum class name. Prevents clashes when multiple inline enums contain the same value - for example `EnumTest`.  No breaking changes here as all the changed fields/references are private and automatically re-generated with built_value.
2020-12-09 21:12:03 +08:00
William Cheng
2e70405084 update swift samples, use swiftlint 0.41.0 (#8138) 2020-12-09 18:19:27 +08:00
Alexandre
933a5dc2c6 [Swift] Add default values to model initializers (#8118) 2020-12-09 16:54:12 +08:00
Esteban Gehring
af0adf28cd chore: change name 2020-12-09 09:23:12 +01:00
Jean-François Côté
476dba42d4 Use import play.libs.Files.TemporaryFile instead of import play.api.libs.Files.TemporaryFile because it doesn't work at runtime. (#8130) 2020-12-09 11:31:14 +08:00
William Cheng
7bb72d08b4 add twitter to the user list (#8135) 2020-12-09 11:26:30 +08:00
Peter Leibiger
144e08b4fc [dart] Use raw strings for json/header parameter names (#8131)
This should fix all problems related to unescaped characters in strings that are assumed to be raw - e.g. `json[r'$special[property.name]']`
2020-12-09 11:12:48 +08:00
Josh Burton
e346593766 [dart-dio] fixes Enum classes with integer values (#8129)
* [dart-dio] Enum classes with int values now generate correct BuiltValueEnumConst annotation

* [dart-dio] Address PR comments
2020-12-09 11:09:57 +08:00
Josh Burton
7fb5e2538b [dart-dio] Fixes errors when primitive return types are attempted to … (#7411)
* [dart-dio] Fixes errors when primitive return types are attempted to be deserialized as json

* Updates samples

* Removes old files
2020-12-09 11:07:29 +08:00
William Cheng
61777b4a7c Revise wordings for options (#8127)
* revise wordings for options

* update
2020-12-09 10:42:54 +08:00
William Cheng
681d23d2d3 use local deno install sh (#8126) 2020-12-09 10:28:05 +08:00
Francesco Montorsi
bb6785ad70 [cpp-restbed-server] Allow to implement validation of input data for enumerations (#7717)
* Allow to implement validation of input data for enumerations

* Regen petstore sample
2020-12-09 00:34:35 +08:00
William Cheng
0b6d70d351 add default cache (#8120) 2020-12-08 18:54:34 +08:00
Sampo Kivistö
d1ea6ac839 [Csharp] Bugfix: Updated all C# templates ToJson method not to conflict reference withmodel properties (#8087)
* Updated all C# templates ToJson method not to conflict reference with model properties.

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-08 17:12:40 +08:00
Cody Mikol
f9d6c6fb21 CHORE[DEPENDENCIES]: bump swagger-parser => 2.0.22 (#7597)
this fixes a bug where the parser would return
null when missing parameters rather than reporting
some useful error.

Fixes N/A
2020-12-08 15:18:07 +08:00
alfabetacain
9e0badb3d7 added support for cookie parameters to jaxrs-spec generator (#8117) 2020-12-08 14:55:33 +08:00
Peter Leibiger
7fae4ab411 [dart] type improvements (#8111)
* [dart] Configure and use import mapping

This prevents models from being generated which would clash with exisiting dart types, e.g. List.

* [dart] Fix decimal format not supported

* [dart-dio] Remove redundant modelToIgnore & ignore dart:core import

* modelToIgnore is now handled via importMappings the same way other generators do this
* choose not to import dart:core as this is available by default

* [dart-dio] EnumClass is a reserved word in built_value

* Review changes

* Fix regenerate docs
2020-12-08 12:00:12 +08:00
fbl100
99d83712a8 Fixes issue #8014, _check_type flag not being honored. (#8053)
* Fixes issue 8014, _check_type flag not being honored.

Updated model_utils.mustache to pass the check_type flag into attempt_convert_item(). Failure to do so
results in type validation errors occurring when the user has specifically requested that they be disabled.

* regenerated samples

Co-authored-by: Frank Levine <frank.levine@blacklynx.tech>
2020-12-07 12:18:16 -08:00
Ülgen Sarıkavak
e00ac502f1 [python] Update python versions (#8042)
* Remove redundant encoding definitions

UTF-8 is already the default encoding in Python 3.

* Remove Python3.4 related requirements

* Remove dead Python version 3.5

* Add Python 3.9 to CI and test configs

* Update petstore example
2020-12-07 12:07:35 -08:00
itaru2622
35d616c9af Fix bug [python][client] generated python client code cannot POST object in multipart/form-data (#8075)
* encode object in json and add content-type:application/json for multipart/form-data

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

* update samples by ./bin/generate-samples.sh

* non-ascii chars supported in encoding object to json, and add "content-type:application/json; charset=utf-8"

* update samples again, by ./bin/generate-samples.sh

* update comment(docstring) in parameters_to_multipart according to the discussion in PR review.

* fix default value in parameters_to_multipart function as described in PR review comment.

* update samples again, by ./bin/generate-samples.sh
2020-12-07 09:50:09 -08:00
Peter Leibiger
751ffad8db [dart] Cleanup and OAS3 support (#8085)
* [dart] Cleanup and regnerate old/wrong tests and docs

* docs path seems to be doc now in all dart generators
* generated tests are very old and use wrong classes

* [dart-dio] Improve formatting

* [dart][dart-dio] Restructure tests to same layout

* remove duplicate/old openapi sample for which there is no generation config
* generate to `petstore_client_lib` for both generators
* run generated tests as integration tests for dart2 even if empty - this makes it easier to find compile errors

* [dart] Improve gitignore handling for Dart generators

* globally ignore all dart related files that should not be commited
* remove old ignores that are no longer valid

* [dart][dart-dio] Add OAS3 generation and integration tests

Dart2 doesn't compile, needs fixes.

* [dart] Do not attempt to deserialize binary content from JSON fields

Not sure if that case is ever relevant but for now there doesn't seem to be a better option.

* [dart] Fix integration tests for OAS3 petstore

Some POST operations now return 200 with content.

* [dart] Generate Petstore Fake API but don't add to integration tests yet

Explicitly not adding the new integration tests to the master POM. They do not work but having them allows for quickly iterating on open issues without breaking existing basic OAS2/OAS3 petstore examples. Instead they should be run manually until everything is fixed.
2020-12-07 21:38:39 +08:00
William Cheng
ed72843668 better operationId in elm client generator (#8109) 2020-12-07 18:29:38 +08:00
BrMtssk
e732804a68 [BUG][typescript-axios] Sets 'isCollectionFormatMulti' flag to true on multiple file uploads (#8105)
* [typescript-axios] Sets 'isCollectionFormatMulti' to true on file uploads.

Fixes #8104

* Safely checks if dateFormat is "binary" #8105

Co-authored-by: Bruno Matissek <bruno.matissek@gmail.com>
2020-12-07 09:27:33 +01:00
sahan
a3aa19927e feat(config): pull the basePath from config is exists (#8078)
* feat(config): pull the basePath from config if the basePath doesn't exist

* chore: update samples

* chore: use the basePath from the base class

* chore: update all the samples
2020-12-07 09:25:02 +01:00
Toby Murray
cbe1fd9728 Bump Gradle in generated Java projects to 6.7.1 (#8079)
* Bump Gradle in Java projects from 6.0.1 to 6.7.1

Regular maintenance, 6.0.1 was released November 18th, 2019 and the latest release (November 16th, 2020) is 6.7.1. This updates all the wrapper templatesto the latest version.

* Updated generated Java samples

Generated via `./bin/generate-samples.sh bin/configs/java-*`

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-07 10:44:23 +08:00
Javier Velilla
c0c2f2b804 [Eiffel] various enhancements (#8076)
* Updated Eiffel code generator.
	Added missing language reserved words.

Updated mustache templates to use the latest Eiffel rules to avoid obsolte
feature calls and Cat-Calls.
Updated Eiffel configuration files (ecf's)
Updated comments styles.
Updated Travis CI file to use the latest Eiffel compiler.
Updated EIffel sample to use https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml

* Added missing mapping decimal to REAL_64
Added Eiffel Kernel classes to importMapping to avoid generate models for
them.
Fixed issue with Eiffel feature name generation, updated toOperationId(String) method.
Simplified toInstantiationType method implementaetion.
Improved model.mustache to generate Eiffel models.

* Updated Eiffel sample.

* Removed unneeded tabs.

* Added AnyType mapping to ANY
Removed unneeded tab
Updated model name, remane models that starts with _.

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-07 10:07:03 +08:00
Hui Yu
3195338c47 [C][Client] Fix memory leak when free a map (#8107) 2020-12-07 08:59:03 +08:00
kannkyo
43fa47a51d Support mediaType (#8100) 2020-12-07 08:58:13 +08:00
sullis
b54dade079 mockito 3.6.28 (#8106) 2020-12-07 08:51:31 +08:00
Sergey
13f1c610d9 [python] Re-merge Subclass Python exceptions (#7321) (#8095)
* Subclass Python exceptions (#7321)

* Subclass Python exceptions:
- UnauthorizedException (401)
- ForbiddenException (403)
- NotFoundException (404)
- ServiceException [500 - 599]

Fixes #2151

* add generated sample code

* use Python 2 flavor inheritance

* regenerate samples

* update samples

Co-authored-by: Ryan Rishi <ryan@ryanrishi.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-05 12:02:00 -08:00
Ajith Kumar
3de537062d [Java][Spring] Fixes incorrect request body for map type in reactive spring (#8046)
* [java][spring] updated template to support proper reactive map type

* [java][spring] supporting unit test for spring boot reactive request map issue

* [java][spring] updated samples

* [java][spring] refactoring the issue test spec
2020-12-05 18:32:57 +08:00
Julien Feltesse
adcf54bc09 [ruby] document the *_with_http_info methods (#8094) 2020-12-05 18:27:49 +08:00
fuxs
38dbcdd752 [Go] Fixes missing return statement (#8072) (#8090) 2020-12-05 18:24:22 +08:00
Hui Yu
bac913f384 [C][Client] Fix memory leak when the type of query parameter in request url is integer or boolean (#8096) 2020-12-05 18:23:56 +08:00
kannkyo
5e4d0978dc Support body params for jmeter (#8101) 2020-12-05 18:23:22 +08:00
stephanpelikan
a4f1d1b5b1 Fix for 'Reactive paramter ServerWebExchange's properties appear in Swagger-UI' (#8031) (#8032)
* [Spring] Add @ApiIgnore to parameter ServerWebExchange of reactive style (#8031)

* [Spring] Apply contribution guidelines (#8031)
2020-12-04 15:09:06 +08:00
nitoqq
25c7ccf30c JS Client: Allow dot in path parameter name (#6116)
* JS Client: Allow dot in path parameter name

* JS Client: Allow dot in path parameter name

* Delete ApiClient.js

* Delete ApiClient.js

Co-authored-by: Nikolai Konovalov <konovalov.nikolai@gmail.com>
2020-12-04 12:27:44 +08:00
William Cheng
64c57e3f52 Add a script to detect changes in test files (#8020)
* add script to detect changes in test files

* remove build failure test
2020-12-04 12:22:35 +08:00
William Cheng
bcf4f8ade6 [C#] Fix oneOf derserialization with additional properties (#8057)
* fix oneOf derserializaoneOf deserialization with additonal prop

* fix tests due to better handlding of additional prop
2020-12-04 10:50:26 +08:00
William Cheng
b0ecaab8fb Add a link to massive art blog (#8082)
Add a link to massive art blog
2020-12-03 16:35:02 +08:00
Robert Pyke
7644f3ee83 [R] Bug - Invalid code generated for POST with no request object (#8067)
* Default body to NULL

* update samples

* Update to set body to NULL only when no hasBodyParam

* Revert any whitespace changes.

* Makes defaulting body conditional on hasFormParams also not being set

Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: Robert Pyke <robertpyke@fb.com>
2020-12-03 16:21:08 +08:00
William Cheng
ebac0a8ed4 Add a link to saki-engineering blog post (#8081) 2020-12-03 15:06:20 +08:00
Peter Leibiger
033d985cf7 [Dart-dio] Add basic integration testing and fix compile errors (#8025)
* [dart-dio] Add basic integration test POM

This basically just fetches dependencies, runs the built_value generator and empty test cases. Even running empty test cases is more than is currently possible and at least finds compile errors.

There are compile errors atm which need to be fixed.

* [dart-dio] Fix missing BuiltSet import in models that use enums

* [dart-dio] Fix compile error when the return type is a Map

* the compile error was `serializerForType(Map<String, int>)` in `StoreApi` which needs to be  `serializerForType(Map)`
* use final instead of var in response handling

* [dart-dio] Generate docs after changes

* [dart-dio] Add integration test to CI execution list
2020-12-02 21:35:07 +08:00
William Cheng
82c5021df2 Revert "Bugfix swift5 code generation 2966 (#7301)" and provide a better (#8066)
fix for the stackoverflow issue
2020-12-02 21:20:44 +08:00
Thomas Hervé
634c4c09e4 Fix generation of map model examples (#8063)
When generation examples of objects with additional properties, we use
the map syntax inside a model instantiation, which is incorrect. This
fixes it by checking for model at the right place.
2020-12-01 19:04:23 -08:00
Ghufran Zahidi
64ade2ce8f [powershell] Implemented the psdata property for module manifest file (#8048)
* Implemented the psdata property for module manifest file (Tags, LicenseUri, ProjectUri, IconUri, ReleaseNotes)

* fix string.format

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-12-01 16:52:12 +08:00
William Cheng
e040a5fdde Fix port when the URL doesn't have port specified (#8049)
* fix port missingin oas 3 spec

* update samples
2020-12-01 15:24:28 +08:00
Dalibor Karlović
adcf9ffa20 feature(PHP): include the current value with enum failure (#7993)
When the value is not in the enum, the exception will now
include the actual value, helping spec designers.
2020-11-30 21:49:52 +08:00
Thomas Hervé
a8fbcb0db2 Properly generate email examples (#8035)
Those are not primitive types, but not model either, they need to be
handled explicitely.
2020-11-30 21:48:51 +08:00
sunn
16e9011d5b Add handling of x-www-form-urlencoded and handling float without decimal if model is declared with float/double (#8043) 2020-11-30 21:47:55 +08:00
basyskom-dege
cb1a620628 [C++][Qt5] added Authentication Support (#8004)
* first commit of api Key feature.

* added multi key and URL query key support

* fixed error in mustache files, updated samples and tests

* added Basic Auth with Base64 encoding.

* updated Readme, added bearer token

* added check that authentication credentials are set. fixed typo in README
2020-11-28 15:02:09 +08:00
Ülgen Sarıkavak
045d05fa72 Fix pyhton typo (#8041) 2020-11-28 15:00:23 +08:00
William Cheng
2801c0cb88 [Java][Play] Fix compilation issues when using the supportAsync option (#7864)
* fix async in java play generator

* add async operation option

* Remove the return null and replace with a return at the right place.

Co-authored-by: Jean-François Côté <jcote@stingray.com>
2020-11-27 23:30:46 +08:00
Thomas Hervé
3f75691da2 Fix list examples in Python (for real) (#8034)
The patch in #7967 forgot the prefix, this fixes it, and change the
sampels so that we can see the effect this time.
2020-11-26 14:28:27 -08:00
William Cheng
9334909bcd update samples 2020-11-26 18:44:18 +08:00
Florian Kamella
c950384a5d [JAXRS-CXF] Generate missing jackson annotations in inner enum (#7879)
* [JAXRS-CXF] Introduce petstore sample for jaxrs-cxf-client with additional property jackson (preparational commit)

generated using: ./bin/generate-samples.sh ./bin/configs/other/jaxrs-cxf-client-jackson.yaml

* [JAXRS-CXF] Generate missing jackson annotations in inner enum

fix for generators jaxrs-cxf and jaxrs-cxf-client
2020-11-26 18:26:15 +08:00
Thomas Hervé
616b44f3b1 Improve generated Java examples (#8012)
* Add basic types imports to generated examples

This adds an extension to include basic types imports to generated Java
examples.

* Make some fixes to example generation

* Generate OffsetDatetime correctly

* Create a useful sample for enums, regenerate samples

* Fix BigDecimal as well
2020-11-26 18:14:26 +08:00
Thomas Hervé
157ad1ce73 Fix list examples in python (#7967)
* Fix list examples in python

When a model has an example in an array, it wrongly wraps it again in a
list instead of returning the list examples. This fixes it.

* Add comment
2020-11-26 18:01:34 +08:00
David Yee
cf185d559b Expose JsonSerializerSettings in ApiClient (#7582)
* Expose JsonSerializerSettings in ApiClient

* Update generated petstore sample

* Add XML comments for SerializerSettings and match new OverrideSpecifiedNames default

* Add GetSerializerSettingsTest
2020-11-26 13:06:53 +08:00
Hui Yu
4dc8d2a351 [C][Client] Support progress function of libcurl (#7974) 2020-11-26 00:00:28 +08:00
Julien Feltesse
2b6b7746f3 make the generated ruby oneOf specs pass (#8019) 2020-11-25 23:47:22 +08:00
bgong-mdsol
ca6c63f7e5 fix java incompatible types error for number (#8018) 2020-11-25 17:54:49 +08:00
Troy P
8cfc9b015a [JS] (#7913) Adding support for multi file upload. Also adding the option for individual CodeGens to specify a collectionFormat (#7914)
* updated samples as well
2020-11-25 16:00:08 +08:00
Vithursa
596d9a1d1d [jaxrs-cxf-cdi] Fix issue when generating code for header params when there are defaultValues defined (#7872)
* Update headerParams if there are defaultValue

* remove new line

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-11-25 10:04:53 +08:00
Adam Dobrawy
be07bd13af Allows install typescript client via npm from Git (#7878)
* Allows install typescript client via npm from Git

'prepublishOnly' is run before the package is published. 'prepack' is run before the package is published and after installation local installation eg. via Git.

* Update examples for Typescript
2020-11-24 21:05:07 +01:00
Gilbert Gilb's
9c0850f2d7 [Dart2] Fix compile errors for required enums without default value. (#7877)
Also fix display of minimum/maximum comment.
2020-11-25 00:20:31 +08:00
Nico Schäfer
d64586c223 Fix keyParamName not used for query API token (#7906) 2020-11-24 22:33:53 +08:00
David Ruppelt
4f0e75b32d remove default ContentType for java webclient (#7945) 2020-11-24 22:28:23 +08:00
Christophe Bornet
2e3cfe7695 [kotlin-spring] Fix required requestBoby of kotlin spring (#7985) 2020-11-24 22:27:47 +08:00
Julien Feltesse
522faf835a [ruby] fix oneOf handling (#5706)
* [ruby] fix oneOf handling

* use previous ruby configs due to issue #4690

* check for oneOf model in base_object

* validate the attributes in partial_oneof_module
2020-11-23 22:43:34 +08:00
NickUfer
6f6822a1b7 [php][bug] Fixes exceptions with API's with too high date-time nanosecond precision (#7943)
* [php] Fixes problems with API's with too high date-time nanosecond precision

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-11-23 22:30:57 +08:00
William Cheng
33f4827a06 Add isRange in CodegenResponse (#7854)
* add isRange

* undo changes to spec
2020-11-23 17:16:44 +08:00
William Cheng
4984f9c3d5 Correct allOf with only one child schema (no discriminator) (#7855)
* Correct allOf with only one child schema (no discriminator

* fix tests
2020-11-23 17:16:36 +08:00
Thomas Hervé
14ff8e0ffd Remove links to basic types in java API docs (#7989)
* Remove links to basic types in java API docs

This removes (most) wrong links to basic types in Java API docs.

* Regenerate some more samples
2020-11-23 16:24:31 +08:00
Troy P
70bc472b86 [JS] (#7910) Fixing undefined error caused by no this instances (#7911) 2020-11-23 16:17:09 +08:00
Thomas Hervé
1c1e4f4476 Fixes to go API documentation generation (#7963)
* More fixes to go doc generation

* Regenerate samples

* Fix indent

* Remove additonal bracket on time objects
2020-11-23 16:08:55 +08:00
Noor Dawod
91e64f47fc [DART2] A couple of bug fixes (#7969)
* Fixed a couple of problems with current implementation.

1) When encoding non-String header values, the client will forwar to parameterToString() for encoding.
2) fromJson() now accepts a dynamic value since the type transformer accepts a dynamic value.

* Updated Pet Store files.

* Proper spacing between blocks.

* Adjust spacing.

* Make fromJson() as a static function, thus not instantiating a new object if JSON is null.

* Adjust doc for fromJson() function.
2020-11-23 16:07:38 +08:00
William Cheng
08c8296e33 test openapi3 java native in drone.ci (#8001) 2020-11-23 16:01:34 +08:00
William Cheng
aed8086d0e fix string comparision in go generator (#7998) 2020-11-22 20:55:21 +08:00
William Cheng
67271b72f2 Add contact about security vulnerabilities (#7997) 2020-11-22 15:53:27 +08:00
William Cheng
2578ef5e63 Prepare snapshot (v5.0.0) (#7986)
* Revert "prepare 5.0.0-beta3 release"

This reverts commit 3ebe774df3.

* revert to snapshot

* update samples
2020-11-20 19:19:59 +08:00
William Cheng
2715f1371a Prepare 5.0.0 beta3 (#7984)
* prepare 5.0.0-beta3 release

* update samples

* remove beta3 from readme
2020-11-20 15:18:58 +08:00
William Cheng
dd26e406b5 Fix duplicated mappedModels (#7924)
* fix duplicated mapped models

* replace discriminatorExplicitMappingVerbose with legacyDiscriminatorBehavior in comments

* use mappingName for comparison

* improve template

* fix tests

* update comments

* update ts samples
2020-11-20 11:57:48 +08:00
William Cheng
cf8ea9120a fix additional properties without variables (#7978) 2020-11-20 11:54:39 +08:00
William Cheng
c02fc812fe add warning about unsupported libraries in python client generator (#7981) 2020-11-20 11:54:16 +08:00
William Cheng
5e02a5bd45 Set generateAliasAsModel to false in tests (#7979)
* set generateAliasAsModel false in tests

* add missing import
2020-11-20 10:56:05 +08:00
William Cheng
b5ce7cec8b comment out angular v6, v7 tests 2020-11-18 16:13:09 +08:00
William Cheng
78611b3e38 update samples 2020-11-18 14:46:36 +08:00
William Cheng
3bf8ca7484 [python] Renames python generators (#7965)
* python->python-legacy, python-experimental->python

* test with openjdk8

* test with openjdk11

* comment out rm

* move kotlin tests to circleci

* move kotlin tests

* move tests to circleci

* fix circleci

* rearrange test

* move tests

* use wrapper

Co-authored-by: Justin Black <justin.a.black@gmail.com>
2020-11-18 14:34:00 +08:00
Justin Black
c08f14500e Revert "Do not use cached properties for additionalProperties (#7955)" (#7971)
This reverts commit 057647cf1e.
2020-11-17 21:08:55 -08:00
Justin Black
057647cf1e Do not use cached properties for additionalProperties (#7955)
* Fixes additionalProperties, do not use cached properties for additonalProperties

* Regnerates samples
2020-11-16 11:26:54 -08:00
Alexis Cote
36aba267a0 [typescript-fetch] Allow to generate client without runtime checks (#7894)
* Add CLI options to remove runtime checks (serialization/deserialization).

* Update templates to support the new parameter

- Generates all the models in a same file to avoid import complexity
- Extract interfaces creator templates to reuse them

* Fix formatting and generate client examples

* Add documentation
2020-11-16 14:17:29 +01:00
Alexander Rashed
54d6257865 Fix parameter uniqueness for form- and body-params (#7577)
If a form-parameter had the same name as another (header-, query-,
path-, or cookie-)parameter, a conflict could be caused (for example
in the typescript generator). This fix executes the same uniqueness-
check and renaming for form- and body-parameters as it is done for
all other parameters.

@see issue #7575

Co-authored-by: Alexander Rashed <alexander.rashed@ntsretail.com>
2020-11-16 21:16:53 +08:00
William Cheng
aca6927ce0 add lvm_versicherungen logo (#7946) 2020-11-16 15:35:12 +08:00
patst
023e6dd9ed typescript-angular: Angular 11 support (#7937)
* #7935 typescript-angular: support angular 11

* regenerate angular 11 sample project

* Update ngVersion to 11.0.0 in typescript-angular.md
2020-11-14 08:23:13 +01:00
Kai Brandes
88dc21959d Add "LVM Versicherungen" to list of companies (#7931) 2020-11-13 22:33:08 +08:00
William Cheng
a3a0af7c84 [C#][netcore] Add test for AdditionalProperties in both child and parent (#7921)
* add test for ap in both child and parent

* add cat test to net47
2020-11-13 21:13:16 +08:00
Esteban Gehring
e725c4e56f update typescript-fetch samples (#7936) 2020-11-13 13:42:55 +01:00
berlysia
920eafc9c1 [typescript-fetch] add samples of nullable enum (#7754)
* [typescript-fetch] add sample

* [typescript-fetch] add sample for nullable enums
2020-11-13 13:17:35 +01:00
William Cheng
405aa24737 fix shippable issue (#7932) 2020-11-13 19:48:55 +08:00
Thomas Hervé
777031f24f Fix a few issues with go examples generation (#7873)
* Fix a few issues with go examples generation

This fixes a bunch of issues seen when generating go examples, namely
 - Numbers aren't casted to the right type
 - The time import is missing
 - Enums are treated as regular models

* Rebuild more samples

* Use examples properly

* Handle multiple instances in the same doc

* Fix wrong array closure

* Handle model arrays

* Fix file and enum namespace

* Regenerate samples

* Handle maps of complex types

* Handle oneOf

* Fix padding

* Fix enum doc

* Removes links to basic types in arrays

* Remove links to basic types in maps

* Fix enum links

* Minor indent fix

* Handle review comments
2020-11-12 23:36:40 +08:00
Daniel Varnai
3b84e8bb55 Fix missing parenthesis (#7923) 2020-11-12 11:13:50 +01:00
Jeff Brower
ec13288c02 Fix NPE in CodegenIgnoreProcessor.java (fixes #3356) (#7846)
Fixes NullPointerException when using an override ignore file with no parent.
2020-11-11 10:22:51 -05:00
Justin Black
13673962cb Adds tests case showing not sending optional params (#7918) 2020-11-10 08:52:43 -08:00
William Cheng
eab26d493b Better decimal support in Scala generators (#7876)
* fix decimal mapping in scala generators

* add mapping for decimal, number in scala generators

* update doc

* use scala.math.BigDecimal
2020-11-10 11:29:50 +08:00
William Cheng
f8766d591c [C#][Nancyfx] fix incorrect import (#7907)
* fix incorrect import

* remove importMapping
2020-11-10 09:33:34 +08:00
William Cheng
b1b64cb356 throw exception for invalid framework (#7901) 2020-11-10 09:33:07 +08:00
Rocky Warren
81e0e8dfa8 [typescript-axios]: Check configuration is defined in api.ts so it compiles with strict flag (#7892)
* Check configuration is defined

* Update samples
2020-11-09 20:56:08 +01:00
Nicholas Muesch
eceac6a63c Skip validation if input_value is None (#7845) 2020-11-08 12:27:58 -08:00
William Cheng
eacf61de7e fix decimal mapping (#7875) 2020-11-08 11:46:33 +08:00
Justin Black
08fb59009a Removes secondaryParam and hasMore (#7882)
* Removes secondaryParam and hasMore

* Fixes tests

* Only uses bodyParam in groovy template
2020-11-07 11:04:12 +08:00
Ghufran Zahidi
05515040d5 [csharp-netcore]Fixed the null serialization issue for dotnet47 (#7884)
* Fixed the null serialization issue for dotnet47

* c# codeing style

* Updated the sample for csharp netcore

* corrected the typos
2020-11-06 16:15:38 +08:00
Justin Black
bc76d8e58d Adds vars and requiredVars to Schema classes (#7893)
* Adds vars to all schema classes, adds partial test

* Adds tests and addVarsRequiredVarsAdditionaProps

* Adds CodegenProperty test

* Adds requiredVars

* Adds vars and requiredVars cloning for CodegenProperty
2020-11-05 19:22:50 -08:00
William Cheng
b5473d2fda [c#][netcore] Skip readonly properties in serialization (#7883)
* skip readonly in serialization (c# netcore)

* minor wording change
2020-11-06 10:15:11 +08:00
debugman
01d0b5d478 added serialize option in to_dict function in python generated model (#7555)
* added to_json_dict in python generated model

* update to_dict

* updated to_dict

Co-authored-by: sunkaicheng <sunkaicheng@bigo.sg>
2020-11-05 09:42:35 -08:00
Tomasz Prus
b3bc926b1d [python] check output content-type only if preload_content is set (#7847) 2020-11-04 08:41:00 -08:00
William Cheng
739249917c fix null json payload in net47 (#7870) 2020-11-04 17:19:05 +08:00
Noor Dawod
aff1af7be5 [Dart2] Fix a bug when asking to upload a MultipartFile as body. (#7736)
* Fix a bug when asking to upload a MultipartFile as body.

* Make finalizing MultipartFileRequest simpler.

* Restrict creating a MultipartFileRequest when not part of a multipart-form.

* Simplified the upload to use a StreamedRequest.

* Wrap all requests with try-catch.
2020-11-04 09:35:42 +08:00
Florian Kamella
2f30960349 [JAXRS-CXF] Improve handling of additional properties in JavaCXFClientCodegen (#7866) 2020-11-04 09:32:57 +08:00
Pedro Fonseca
e3121af4b4 [typescript-axios] serialize complex type in multipart/form-data as JSON (#7658) (#7816)
Complex types need to be serialized as JSON to avoid FormData.append() from converting them into strings through .toString().
2020-11-03 17:28:14 +01:00
William Cheng
b6091571aa Add presentation at FEConf 2020 (#7863) 2020-11-03 11:10:52 +08:00
Jean-François Côté
998e0fdaa2 [Play Framework] Update Play Framework Generator to latest version (#7860)
* First iteration to support new mechanism that needs to have the handle of the result.

* Most of the samples now build except "async". Also, everything is messed up.. need to understand the mustache way to handle this.

* New version to support play 2.8

* Fix conflict

* Fix error when multiple file in forms
2020-11-03 10:48:29 +08:00
Matthew Eppelsheimer
ebf2f2e30f Fix use of eslint-config-airbnb-base (#7844)
Closes #7843
2020-11-03 10:36:18 +08:00
Ghufran Zahidi
d179574b4e Fixed the HttpSigning issue for query string (#7859) 2020-11-02 21:32:37 +08:00
William Cheng
9377dbca56 Add "decimal" support (#7808)
* rename BigDecimal to decimal

* add isDecimal

* fix tests

* minor fixes

* fix mapping, update doc

* update test spec

* update c# samples
2020-11-02 21:31:32 +08:00
William Cheng
ca6fcaf92a beter code format for protobuf java files (#7857) 2020-11-02 19:42:52 +08:00
guidoussin
4f2f80766e Fix support for AllOf in protobuf-schema (#7813)
Co-authored-by: Guillaume Doussin <guillaume.doussin@amadeus.com>
2020-11-02 18:28:52 +08:00
Christophe Bornet
ca3fcd882e [Kotlin] Fix Spring Kotlin generation of array/map models (#7829)
* Fix Spring Kotlin generation of array/map models

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-10-31 17:38:37 +08:00
Thibault Duperron
4f1934c3c7 [Spring] Use default jackson-databind (#7744)
* [Spring] Use default jackson-databind

fix #7743

* Samples
2020-10-31 16:52:18 +08:00
Tomohiro Suwa
46b36c2e65 [Ruby][faraday] fix download_file (#7842)
* Fix download_file

* Generate samples with f1df6acdee

* fixup! Fix download_file

* Generate samples with 3e3ea88b0d
2020-10-31 16:20:31 +08:00
William Cheng
d5a7102785 [Protobuf] tests protobuf-schema generator in CI (#7841)
* test protobuf schema

* remove sudo

* use different image

* proto files

* test with go

* test with go

* test with go

* test with go

* break the build

* Revert "break the build"

This reverts commit 81c10e7d96.

* remove comment

* move config

* remove old protobuf-schema.yaml
2020-10-31 14:43:21 +08:00
William Cheng
96efc76ed5 update samples 2020-10-30 11:37:33 +08:00
Hui Yu
8f06876a2a [C][Client]Fix coredump in multi-thread environment (#7835) 2020-10-30 10:57:14 +08:00
William Cheng
70323adf9f [C#] support .NET framework 4.7 (#7833)
* add net47 support to the csharp generator

* update doc, fix appveyor
2020-10-29 22:41:08 +08:00
William Cheng
d5212ac834 add anytype mapping to object in dart (#7822) 2020-10-29 10:59:31 +08:00
William Cheng
a8bd859397 use System.Environment.OSVersion in .net standard (#7831) 2020-10-29 10:54:09 +08:00
William Cheng
0e994eabf7 use WriteRawValue instead of WriteRaw (#7830) 2020-10-29 10:53:50 +08:00
Alexander Presber
ab93cec952 Update users.yml to include Giant Monkey GmbH (#7823)
* Update users.yml

We are happily using this, too!

* add our logo, too

* sort in our company alphabetically

Co-authored-by: Alexander Presber <alexander@giantmonkey.de>
2020-10-28 22:01:58 +08:00
Dalibor Karlović
b43103a029 Tweaks for PHP client Markdown files suggested by markdownlint (#7779) 2020-10-28 14:52:21 +08:00
William Cheng
913ec2019e Add link to React Native Client article (#7826) 2020-10-28 11:47:06 +08:00
William Cheng
87b4f45d40 add adesso logo (#7825) 2020-10-28 11:46:32 +08:00
Steve B
ea2cdd23c2 [python] add socket_options to configuration for the rest client (#7795)
* [python] add socket_options to configuration for the rest client

* (python-experimental) add socket_options to configuration for the rest client

This mirrors work done on the python generator

* (python-experimental) add test to cover socket_options is passed on from configuration

Co-authored-by: steve brazier <steve.brazier@trioptima.com>
2020-10-27 18:22:28 -07:00
Sascha Grebe
44f5f2bdd8 Added adesso as users (#7817)
adesso is using openapi tools as well.
2020-10-27 22:15:17 +08:00
timo-a
d90fd10a75 Update CONTRIBUTING.md with typo corrections - no semantic changes (#7811)
* Update CONTRIBUTING.md

typos

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-10-27 22:14:08 +08:00
William Cheng
44ec0caba4 use originl value in comments (#7803) 2020-10-27 18:14:46 +08:00
William Cheng
042fc81f31 add anyOf support (#7801) 2020-10-27 17:02:05 +08:00
Julien Herr
5d27799bad [typescript-axios] Fix multipart with file array (#7814)
* Force isCollectionFormatMulti in case of binary/file

* Manage multipartFormData in isCollectionFormatMulti

* Update petstore

Co-authored-by: Julien Herr <julien@nabu.io>
2020-10-27 08:58:08 +01:00
Francesco Montorsi
4860eb65e1 [cpp-restbed-server] make the restbed SERVER generator more extensible (#7679)
* Simple fix to allow users to override the Api class and set handlers

* fix definition order

* Regen petstore example files
2020-10-27 15:35:10 +08:00
William Cheng
3d6bd48b67 [JAX-RS] replace isListContainer with isArray (#7806)
* replace isListContainer with isArray

* update serviceFormParams.mustache
2020-10-26 12:38:01 +08:00
Dénes Harmath
1b67171d39 [javascript-flowtyped] Fix Flow error (#7382) (#7786)
* [javascript-flowtyped] Fix Flow error (#7382)

Fix deletion of search field

* [javascript-flowtyped] Regenerate sampe (#7382)
2020-10-26 10:28:33 +08:00
William Cheng
fe38a50365 [Ruby][faraday] fix response streaming (#7734)
* test file return

* fix stream response

* use options

* use local var

* fix nil tempfile

* fix tempfile

* fix tempfile

* use stream

* check content

* open temp file

* test ruby file download

* fix stream data

* test faraday

* catch connection error

* catch Faraday::ConnectionFailed

* catch all error

* use sream

* refactor

* fi download file in faraday

* local fix

* fi streaming download

* undo changess to spec, test

* undo changes to spec
2020-10-26 10:07:45 +08:00
Jon Schoning
37743c059b [haskell-http-client] have applyOptionalParemeter (-&-) append values in headers or querystrings instead of replacing values (#7805) 2020-10-25 19:15:43 -05:00
Maksym Melnychok
b70edd7f1b [python] Add option to return None instead of raising exception when accessing unset attribute (#7784)
* add option to return None instead of raising exception when accessing unset attribute

* update python samples

* reimplement getattr using getitem or get depending on attrNoneIfUnset

* move getattr and setattr to respective templates

* update docstrings, def get/setattr methods to have docstrings in them, use __dict__ to avoid recursion issues

* revert required_properties change

* add manual tests for .get method
2020-10-25 09:13:22 -07:00
William Cheng
07c23f4d1a comment out tests causing failure 2020-10-25 18:54:12 +08:00
itaru2622
3c62cc4867 Fix multi-part binary form parameters for jaxrs-jersey templates (#7363)
* Fix [jaxrs-jersey][java][jersey] multipart/form-data file array issue on generating jaxrs-jersey.

This commit aims to fix https://github.com/OpenAPITools/openapi-generator/issues/7330 with described solution 'choice C'.

* add test code [jaxrs-jersey][java][jersey] for multipart/form-data file on generating

* update test code [jaxrs-jersey][java][jersey] for multipart/form-data file on generating

followed latest master branch of OpenAPITools/openapi-generator

* update samples/* by executing ./bin/generate-samples.sh

* update mustaches for JavaJaxxRS/libraries/jersey1/* and samples/* to resolve failure of CI test on PR.
2020-10-25 18:05:43 +08:00
Aidan Hobson Sayers
c0e36b3ff6 Add impls for Error trait for Rust reqwest (#7462)
* Add impls for Error trait for Rust reqwest

* Update Rust samples
2020-10-25 18:00:50 +08:00
Rainer
e11a427cf5 changed request method from protected to public (#7603)
* changed request method from protected to public

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-10-25 17:54:21 +08:00
Jim Schubert
f30d6c8399 Update check-supported-versions.yaml
Run Maven integration only on Java 8
2020-10-24 11:01:36 -04:00
Dean Eastwood
3be89e4c00 Fixes #7791 (#7792) 2020-10-23 19:51:13 +08:00
Andreas Metsälä
490068ad90 [typescript-fetch] serialize complex type in multipart/form-data as JSON (#7658) (#7677)
Complex types need to be serialized as JSON to avoid FormData.append()
from converting them into strings through .toString(). The generated
ToJSON mapper is used in case the value name has underscores or other
unusual characters.

Signed-off-by: Andreas Metsälä <andreas.metsala@gmail.com>
2020-10-23 09:01:21 +02:00
BenICE
9af73d0a0c [typescript-rxjs] Added support for servers (#7771)
* adding multiple servers support to typescript-rxjs

* regenerated typescript-rxjs samples

Co-authored-by: Schwartz, Benjamin <benjamin.schwartz@cgi.com>
2020-10-22 13:09:03 +02:00
Jim Schubert
a5aeb5fdec [core] Remove java specific imports from DefaultCodegen (#7763) 2020-10-22 17:43:17 +08:00
William Cheng
50f3706c5c Add gitignore to C# 2.0, Nancyfx generators (#7776)
* add gitignore to c# 2.0, nancyfx generators

* comment out csharp netstandard
2020-10-22 15:43:32 +08:00
cgensoul
aa28775295 Fixes #7757. Replace '.' characters by '_' in enum type names since OCaml doesn't allow to use '.' in any kind of identifiers. (#7767) 2020-10-22 15:35:00 +08:00
bullett445
8c084e2dc0 [php] Implement JsonSerializable in php Model class (#7768)
* Update model_generic.mustache

Implemented the JsonSerializable interface which allows to use json_encode() on the model object.
2020-10-22 10:34:15 +03:00
Jakesterwars
7e7bfc74de [cwiki] Path parameter generation fix for split rows (#6894)
* fix: path parameter issues

* chore: run generate samples once again

Co-authored-by: Jacob Keith <jkeith@aegistg.com>
2020-10-22 11:25:25 +08:00
William Cheng
e09d1bee43 [Java][webclient] fix missing dependencies in build.gradle (#7777)
* fix build.gradle in java webclient

* update junit version in samples
2020-10-21 21:29:53 +08:00
William Cheng
ee3dd70636 chagne codegen type to schema (#7775) 2020-10-21 18:56:56 +08:00
Dalibor Karlović
240c046f35 Small tweaks for php generator, PHPStan level 3 (#7616) 2020-10-21 10:38:10 +03:00
William Cheng
ec74b06d2c [Ruby] Replace DateTime with Time (#7656)
* replace DateTime with Time

* add require time

* update doc
2020-10-21 14:13:59 +08:00
William Cheng
b059b786a5 update c# gitignore (#7774) 2020-10-21 13:41:41 +08:00
Justin Black
28e92f9e32 Adds additionalProperties to core schema classes (#7761)
* Implements additionalProperties in CodegenParameter

* Implements additionalProperties in CodegenProperty

* Adds additionalProperties to CodegenModel

* Adds additionalProperties to CodegenResponse

* Adds additionalProperties examples for CodegenModel and CodegenProperty

* Adds test cases for CodegenParameter and CodegenResponse

* Adds testAdditionalPropertiesPresentInModelProperties

* Adds testAdditionalPropertiesPresentInResponses

* Adds underscore name for additionalProperties property, needed for CppTizenClientCodegen

* Changes prop name back to empty string, fixes CppTizenClientCodegen
2020-10-20 12:19:13 -07:00
William Cheng
19249e597c [C#][netcore] Add custom converters for oneOf models (#7766)
* add custom converter for oneof models

* remove custom logic when deserializing oneof response
2020-10-20 23:10:31 +08:00
William Cheng
072b309100 [C#][netcore] Add nullable support to oneOf models (#7750)
* add nullable support to C# oneOf models

* fix null reference exception
2020-10-20 14:50:03 +08:00
Ghufran Zahidi
12acf2eb72 [C#][netcore]Fixed the HTTPSigning to calculate the body diegest without CamelCase (#7755)
* Fixed the HTTPSigning to calculate the body diegest without CamelCase

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-10-20 14:26:38 +08:00
Thibault Duperron
b1ea1ece87 [Ocaml] Fix missing space on models (#7742)
fix #7738
2020-10-20 13:32:12 +08:00
Jim Schubert
b28c3ee14a [maven] Run integration on master checks (#7762)
This adds the Maven integration tests to the Check Supported Java
Versions job which runs on master.

Maven on Windows was previously broken with templateDirectory. This was
fixed previously in a pull request, but the Maven plugin integration
testing did not work in our other CI vendors. This was tested and
verified in a private repo. The difference is likely due to vCPUs
available in GitHub Workflows differing from other free CI we use
elsewhere.
2020-10-19 22:23:36 -04:00
agilob
7318ff72d7 [Java][JVM] Move java specific import mappers to JVM specific code gen (#7569)
* Move java specific import mappers to java specific code gen

* Use JVM specific import mappers in kotlin, scala, groovy

* Update generators docs

* Add autogenerated files
2020-10-19 22:15:44 -04:00
William Cheng
d6c71ff0fb [java][jersey2] add proxy support (#7752)
* add client config getter and setter

* update gradle, sbt config

* update client config

* update samples

* add code sample to set proxy
2020-10-20 10:11:01 +08:00
William Cheng
c1f2b1cad9 [c#][netcore] add proxy support (#7741)
* add proxy support to c# netcore client

* add test, update doc
2020-10-20 10:05:37 +08:00
Go Shibata
5bac98cd99 [kotlin][jvm-retrofit2] Update templates (#7592)
* Fix indent of return tag

* Trim trailing whitespace

* Update samples

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-10-19 21:55:49 -04:00
Alex Facciorusso
1dec9ebfb8 [kotlin][jvm-retrofit2] Better code for OkHttp client passed to Retrofit builder (#7556)
* Better code for building Retrofit

By removing the nullable `usedClient` passed to Retrofit, the code is compatible with newer Retrofit versions which don't allow null as client.

* Updated Kotlin retrofit2 samples ApiClient
2020-10-19 21:48:14 -04:00
William Cheng
b733312707 update doc to include proxy instruction (#7749) 2020-10-19 22:14:34 +08:00
William Cheng
e8ba2901df auto load system web and net (#7748) 2020-10-19 13:55:43 +08:00
Justin Black
3d337db207 Unifies naming for isArray in Schema class properties (#7691)
* Updates key java files

* Adds all lingering isArray fixes

* Adds two files

* Reverts two cs files

* Fixes lingering isListContainer + isArrayModel references

* Some ensure up to date updates
2020-10-18 21:58:59 -07:00
Justin Black
2ee0913d4a Changes lingering isMapContainer to isMap (#7747)
* Changes lingering isMapContainer to isMap

* Adds ensure up to date updates
2020-10-18 20:07:33 -07:00
Cody Mikol
fed9d0637a CHORE[CORE]: replace deprecated methods (#7600)
replace setConfig and setOpenApi with the
non-deprecated config / openAPI methods

Co-authored-by: Peter Somogyvari <petermetz@users.noreply.github.com>
2020-10-18 21:56:43 -04:00
William Cheng
30fad9defa [PS] Add proxy support (#7739)
* add proxy support to powershell

* update api_client

* add proxy tests

* fix check

* add more check

* update samples

* fix proxy setting

* update docstring
2020-10-19 09:30:23 +08:00
Jim Schubert
ee1cbf6f4b [bug][maven] Fix custom windows classpaths in maven plugin (#7587)
* [maven] Fallback to templates using classpath rather than OS-specific paths

Previous checks would cause logic in Windows to return early, for
built-in templates only. This reorganizes and simplifies the ordering
behavior.

* Match classpath check in WorkflowSettings with that in TemplateManager

* [maven] Much needed unit/integration tests

This follows similar approach used in PMD and other plugins managed by
maven.

Unit tests simply verify we can load configuration as expected into the
Mojo.

Integration tests execute actual sample projects bound to the current
build's Maven plugin. This uses maven-invoker-plugin, which also allows
for specifying the maven options in invoker.properties to execute the test.
It also provides a verification framework using groovy files with the
required naming convention of "verify.groovy". This allows us to quickly
and easily check that certain files are outputted by generation, and we
may also spotcheck file contents.

templateResourcePath option is skipped on windows. I've tested back to
version 3.3.3 and this doesn't seem to have worked consistently with how
the property works on non-Windows.

* Set groovy 3.0.5 for test harness

* Print stacktrace on Maven error in Travis

* [maven] Set groovy version in tests to supported in Java 11+

* Puts maven integration tests in separate profile called 'integration'
2020-10-18 12:05:56 -04:00
Ben Sorohan
34d2e25899 [Typescript][Angular] Fix generated README when using apiModulePrefix (#7725) 2020-10-16 17:15:47 +02:00
William Cheng
c387d58d26 remove outdated scala files (#7723) 2020-10-16 22:50:34 +08:00
Ben Sorohan
cc5e0fee2d [FEAT][TYPESCRIPT-ANGULAR] Add configurationPrefix option to allow generating unique configuration token (#7731)
Closes #4101
2020-10-16 15:02:44 +02:00
Jim Schubert
41851b45e1 [bug] Fix FILES sort and path provider issue (#7729)
The FILES metadata is supplementary, but was logging a warning while
generating Ada client that FILES couldn't be written. An exception was
being thrown because Path was being reported as two different "types of
Path". One would be reported as mac file, while the other was reported
as a unix file. The fix here is to disconnect path details from the
underlying file system provider by creating a new Path based on the
file's absolute path. This change also fixes sorting so it works
alphabetically in ascending order.
2020-10-16 00:34:34 -04:00
William Cheng
e1e38c8783 better csharp tests (#7727) 2020-10-16 10:24:11 +08:00
Hippolyte HENRY
8afb067ec9 [go] Improve examples generation (#7576)
* fix go examples

* use constructor with required args
2020-10-16 00:04:30 +08:00
Michał Zubkowicz
e58b1f6abb Fixes #7635: typescript-inversify generator wrongly handles array type parameters (#7636) 2020-10-15 17:10:10 +02:00
Ioannis Ioannou
0ad39cc533 [Java] Fix import mapping for arrays with reference items of type string (#7182)
* fixed import mapping for arrays with component of type string

* changed test title

* generated samples

* Revert "generated samples"

This reverts commit b86a6fcdee.
2020-10-15 22:08:55 +08:00
bgong-mdsol
edf153eede [Java][Native] Support oneOf/anyOf schemas (#7263)
* Java-native add models of oneOf/anyOf

* Java-native refresh samples

* Java-native add a sample project for openapi3
2020-10-15 17:29:51 +08:00
William Cheng
f76d72edf1 [BUG][Ada] Incorrect client Ada code generated (#7719)
* Fix #7594: [BUG][Ada] Incorrect client Ada code generated

- Fix the identification of path parameters
- Fix the model and client to support FreeFormObject

* update doc

* fix errors, update samples

Co-authored-by: Stephane Carrez <Stephane.Carrez@gmail.com>
2020-10-15 17:26:07 +08:00
William Cheng
53eb67166b add cake, sbt integration (#7713) 2020-10-14 16:51:27 +08:00
William Cheng
b888423fd8 Use 3.0 spec in documentations, update docs (#7710)
* update npm set version, use 3_0 spec

* use 3_0 spec in website
2020-10-14 10:13:17 +08:00
William Cheng
6046c3da94 remove github.com/antihax/optional from go.sum (#7692) 2020-10-14 10:11:05 +08:00
William Cheng
b768e42704 Update junit to newer version (4.13.1) (#7690)
* update junit to newer version

* update junit to newer version
2020-10-14 10:10:32 +08:00
Noor Dawod
3c869d5b12 [Fix/Dart2] Resolve an exception with status 204 and no body. (#7647)
* Resolve an exception situation when a remote server returns 204 with no body.

* Only return a value when needed.

* Use HttpStatus codes instead of magic numbers.

* Drop checking for a body as it will consume too much memory.

* Cosmetic changes.
2020-10-13 23:30:49 +08:00
Dmitry Grachikov
177e536bdf [typescript-angular] pass array as a single JSON string to url query when queryParamObjectFormat=json (fix #7620) (#7649) 2020-10-13 08:32:26 +02:00
William Cheng
305d30102b Add back HttpSigningConfiguration.cs 2020-10-13 13:30:51 +08:00
William Cheng
45e6accf99 remove HTTPSigningConfiguration.cs 2020-10-13 13:28:55 +08:00
William Cheng
94c5a80551 add AnyType support to Swift generators (#7644) 2020-10-13 10:58:34 +08:00
William Cheng
a5083398de fix warning, remove trailing spaces (#7659) 2020-10-13 10:32:43 +08:00
Justin Black
0cfe02348b Unifies naming for isMap in Schema class properties (#7640)
* Updates isMapModel + isMapContainer -> isMap

* Removes git conflict characters
2020-10-12 09:12:37 -07:00
William Cheng
f8a71cab5c convert fromjson to static method (#7650) 2020-10-12 15:25:37 +08:00
William Cheng
bd329c13fb update website (#7655) 2020-10-12 15:21:34 +08:00
Justin Black
8fd9991ec2 Adds isDateTime to CodegenModel (#7657)
This reverts commit 2ec96f7f90.
2020-10-12 00:08:08 -07:00
Justin Black
2ec96f7f90 Revert "Adds isDateTime to CodegenModel"
This reverts commit 0a51c81f2e.
2020-10-11 21:14:35 -07:00
Justin Black
0a51c81f2e Adds isDateTime to CodegenModel 2020-10-11 21:12:16 -07:00
William Cheng
874b4a6472 [Ruby] fix DateTime default value (#7648)
* fix ruby default datetime value

* update samples for testing

* use datetime parse

* use Date.parse

* revert changes to spec
2020-10-12 11:49:03 +08:00
Justin Black
ee2a7352a1 Adds isDate to CodegenModel, adds test, adds isDate getter and setter to IJsonSchemaValidationProperties (#7652) 2020-10-11 11:06:47 -07:00
William Cheng
b208a311db [C#][netcore] Rename HTTPSigningConfiguration.cs to HttpSigningConfiguration.cs (#7630)
* rename HTTPSigningConfiguration.cs to HttpSigningConfiguration.cs

* update samples

* minor change
2020-10-11 12:25:38 +08:00
William Cheng
b0fa00b860 Fix typos in templating.md (#7646) 2020-10-11 11:12:35 +08:00
agilob
25d10bb6cc [dart] Move dart-dio to sit with other dart configs (#7593)
* Move dart-dio to other dart configs

* Run ./bin/generate-samples.sh
2020-10-10 18:22:52 +08:00
William Cheng
4acc8eab45 [C#][netcore] Add discriminator support to oneOf lookup (#7626)
* add discriminator support to oneOf lookup

* fix type check, removed unused code

* fix type check

* add options

* setLegacyDiscriminatorBehavior

* fix typo

* replace break with return

* use packageName
2020-10-10 18:20:30 +08:00
William Cheng
931c4e361f update samples 2020-10-10 17:10:32 +08:00
Michael Ramstein
242f648379 [Elixir] Fixes Typespec for multiple return definitions (#7604)
* Respects multiple responses during typespec generation

* Generate Samples
2020-10-10 11:18:04 +08:00
Vlastimil Šenfeld
53fb864c66 fix comment typo (#7605) 2020-10-10 11:12:55 +08:00
Noor Dawod
2984497731 Upgrade Dart2 template to advertised best-practices, plenty of additions too. (#7585)
* Updated Dart2 template.

* Generated Petstore client code for Dart2.

* Use double-quotes instead of single-quotes, to be consistent with output of Dart generator.

* Updated Petstore samples.

* Wrap few more places with triple curly parentheses.

* Generated Petstore files.

* Revert to using single quotes, fix Java generator too.

* Generated Petstore files.

* Lower case the content type value.

* Only lower-case content type when checking its value.

* Generated files from running "./bin/utils/ensure-up-to-date".

* Remove outdated comments for Dart1.

* Regenerate Petstore samples for Dart.

* Added a new option "pubLibrary".

* Added support for (de)serializing a DateTime into an epoch value.

* Make client variable a getter/setter, adjust docs.

* Fixed a small error in class template.

* Fix Dart documentation in API classes.

* Simplify test in HTTP Basic auth, remove unused lint rule.
2020-10-10 11:08:58 +08:00
Ghufran Zahidi
c6ab073a29 Fixed the empty string issue when server returns null (#7633) 2020-10-10 10:15:58 +08:00
Phillip Verheyden
214d81553f Fix typos in Javascript test clients (#7642)
Looks like this did not get propagated to these other JS clients from the original at 90859575eb
2020-10-10 10:15:14 +08:00
Phillip Verheyden
86fd8b1aa4 Add AnyType mapping of Object to Javascript codegen (#7643)
Resolves problems related to '....Module not found: Error: Can't resolve './AnyType' in...' errors when attempting to use generated Javascript code
2020-10-10 10:09:23 +08:00
Maksym Melnychok
8416fff568 [python-experimental] implement in operator for model classes (#7637)
* implement  operator for model classes

* refresh samples
2020-10-09 10:38:15 -07:00
Michael Ramstein
690be29f4b [Elixir] Fixes optional body mapping (#7606)
* Fixes optional body issue

* Generate Samples
2020-10-09 17:21:35 +08:00
William Cheng
fe31b9e2ce java jersey2: remove trailing whitespaces (#7632) 2020-10-09 17:11:23 +08:00
Lukáš Vasek
157c01d031 Fix scopes generation for multiple oauth flows (#7615)
* Fixed generation of oauth2 scopes for multiple oauth2 flows

* Fixed locale in string format

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-10-08 23:15:58 -04:00
William Cheng
44f713fc34 update tests with newer syntax (#7624) 2020-10-09 10:36:39 +08:00
Justin Black
d5002f4beb Adds missing items property to Java classes which store Schema info (#7621)
* Adds items getter and setter in IJsonSchemaValidationProperties

* Adds isModel interface

* Reverts file

* Fixes issue_7613.yaml schema for /array_with_validations_in_items/{items} response body

* Adds isModel to CodegenModel hash and print and comparison

* Updates CodegenResponse hash and comparison and print
2020-10-08 08:45:20 -07:00
William Cheng
3d36d491df replace tab with spaces (#7625) 2020-10-08 23:00:36 +08:00
William Cheng
001533fa63 fix warnings in HTTPSigningConfiguration (#7628) 2020-10-08 22:58:59 +08:00
William Cheng
a1c8e248e7 [C#][netcore] Add oneOf support to C# .NET Core client (#7607)
* add oneOf support to c# netcore

* add oneof support to c# netcore client

* update samples

* remove unused file

* add oneof support to response in api client

* add oneof support to serialize

* update samples

* fix actual instance, add more tests

* fix oneof handling in api client

* update tests
2020-10-08 15:46:36 +08:00
Rocky Warren
8d0053fa9f [typescript-axios]: Only call JSON.stringify on JSON request bodies (#7580)
* [typescript-axios]: Only serialize JSON request bodies

* Remove Regex and instead add a method in Configuration class

* Update samples
2020-10-08 08:15:42 +02:00
Justin Black
bbf9c30c7a Runs ensure up to date (#7622) 2020-10-07 19:21:06 -07:00
Justin Black
1c3d6e5e6f Revert "Adds ensure-up-to-date changes'"
This reverts commit 5fce12321e.
2020-10-07 19:09:38 -07:00
Justin Black
5fce12321e Adds ensure-up-to-date changes' 2020-10-07 19:03:39 -07:00
William Cheng
d8ba49b267 default OverrideSpecifiedNames to false (#7583) 2020-10-07 15:54:00 +08:00
Dalibor Karlović
b1da09625d [PHP] Small tweaks for php generator, PHPStan level 1 (#7528)
* Small tweaks for php generator, PHPStan level 1

Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
2020-10-07 09:21:24 +03:00
Tomohiro Suwa
08a1bdcb57 [Ruby] Feature/ruby client build from hash nullable array (#7609)
* Ruby Client: nullable build_from_hash for array type

* Genearte samples with 8217ecaeb
2020-10-07 02:14:56 +09:00
Hippolyte HENRY
cad0161f7e [ruby] fix default value for referenced schemas and enums (#7611)
* [ruby] fix default value for referenced schemas and enums

* generate samples
2020-10-07 01:27:41 +09:00
Guillaume GILL
9236d5699d Expose batch subcommand (#7608)
Co-authored-by: Guillaume GILL <g.gill@oceasoft.com>
2020-10-05 20:11:30 -04:00
Matthew Dowdell
8c11c8f582 [Rust Server] Fix server example on non-Linux (#7399)
* [Rust Server] Fix server example on non-Linux

The server example is broken because it tries to import `use openssl::ssl::SslAcceptorBuilder;` unconditionally when it won't be present on MacOS, Windows or iOS and then conditionally provides `create` causing compile errors on the aforementioned platforms.

To fix, we simply move the condition from the function to the import and all is happy again :)

* Update Samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-10-05 21:54:50 +01:00
agilob
ae95c2b19b Generate docs on 4 threads (#7586) 2020-10-05 23:31:51 +08:00
Jim Schubert
c0553ddc37 [bug][kotlin] Better escaping of var names (#7598) 2020-10-05 21:03:01 +08:00
henryh-force
e9c6d65f2d Updated keywords to be aligned with website https://developer.salesfo… (#7522)
* Updated keywords to be aligned with website https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_reserved_words.htm

* [samples] Regenerate

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-10-05 21:00:23 +08:00
William Cheng
8c17a01bda add anytype support to c# generators (#7599) 2020-10-05 20:58:51 +08:00
agilob
0e1d131076 Remove redundant browserClient (#7595) 2020-10-05 13:39:38 +08:00
agilob
61b543f03d [Dart] Removal of deprecated Dart generators and generated code (#7568)
* Remove old dart generated code

* Remove uses of SUPPORT_DART2

* Remove dart1 only flag BROWSER_CLIENT

* Remove supportDart2 and browserClient from docs

* Revert removal of credits of dart(1)

* Update getHelp in dartcodegen
2020-10-04 16:21:08 +08:00
William Cheng
4bde3a12d1 [C#][netcore] Add IsRequired to the model properties (#7590)
* add IsRequired to c# model properties

* add deserialization tests for pet

* revise test
2020-10-04 16:19:30 +08:00
Kuzma
4e5ecf271a [Python] correct return types if multiple responses are defined (#7427)
* update python mustache templates

* bug fix

* rm response_type

* generated samples

* resolve conflict

* samples

* set None if a type is empty

* regenerated samples
2020-10-03 08:37:08 -07:00
Sanjin Celeski
48762b5d4e Add TribalScale to the user list (#7579)
Co-authored-by: Sanjin Celeski <celeski.sanjin@gmail.com>
2020-10-02 15:49:29 -04:00
William Cheng
3560cd252b Add link to a blog post on generating Angular client (#7578)
Add link to a blog post on generating Angular client
2020-10-02 20:10:50 +08:00
William Cheng
a287c51b97 update default faraday versions (#7538) 2020-10-02 18:46:49 +08:00
Alexander Smaga
bb4e0c0058 [php][bug] Fix offsetGet in model generic to return offset rather than bool|null (#7571) 2020-10-01 22:15:05 -04:00
Jim Schubert
6ade544904 [ci] Clarify wording in ensure script output (#7512) 2020-10-01 22:06:35 -04:00
Jim Schubert
150e24dc55 [maven] environmentVariables -> globalProperties (#7559) 2020-10-01 21:33:17 -04:00
david1601
206f3f7238 [Java][Spring] Add Spring pagination with vendor extension x-spring-paginated (#5022)
Co-authored-by: Mathias Hinterndorfer <mathias.hinterndorfer@joyn-it.at>
Co-authored-by: Mathias Hinterndorfer <mathias.hinterndorfer@gmail.com>
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-10-01 21:32:22 -04:00
agilob
4fe76fcb01 [core] Make loggers static final where possible (#7562) 2020-10-01 21:28:39 -04:00
Lukáš Vasek
e1fd221898 [core] Enable multiple oauth2 flows (#7570) 2020-10-01 21:26:37 -04:00
William Cheng
626481bb07 Add tests for serialization of special property names (#7544)
* add test for serialization of special propery name

* comment out os dependent test
2020-10-01 20:38:01 +08:00
William Cheng
b7f5265ae5 remove apache license in jaxrs, update samples (#7553) 2020-10-01 15:03:59 +08:00
William Cheng
494c02e60f [core] Skip 443 for port mustache tag (#7531) 2020-09-30 22:30:43 -04:00
Jim Schubert
d854c89272 [docs] Add clarity around configuration options (#7547) 2020-09-30 20:56:28 -04:00
William Cheng
d6783c2f57 add plaid.co.jp logo (#7554) 2020-09-30 17:17:27 +08:00
Masahiro Yamauchi
130109748c Add PLAID, Inc. to the user list (#7552) 2020-09-30 16:58:41 +08:00
William Cheng
4bf81a0263 update microprofile default license info file (#7550) 2020-09-30 16:46:24 +08:00
William Cheng
e852d42693 Add SmartHR to the user list (#7551) 2020-09-30 16:00:16 +08:00
Slavek Kabrda
336521b464 [Python-experimental] Don't mandate passing in required value as argument (#7424)
* [Python-experimental] Don't mandate passing in required value as argument

* Remove usage of have_value

* Address additional review comments

* Fix tests according to the code change

* Does not set None as value initial value, removes hasRequired tag usage, updates docstring

Co-authored-by: Justin Black <justin.a.black@gmail.com>
2020-09-29 10:56:52 -07:00
Jeff Shantz
b8de51f2fd Update RetryConfiguration.mustache (#7495)
* Update RetryConfiguration.mustache

Use Policy<> instead of RetryPolicy<> to allow for use of wrapped policies.

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-09-29 22:42:58 +08:00
Cody Mikol
6db283c03b [FIX][CLI] handle null result messages (#7472)
swagger-parser has the potential to return null
for messages which will throw NPE on
initialization of the  validationMessages hashset.
rather that allow this to happen we will assume
that a null message collection represents an empty
collection and continue.

Fixes #7453
2020-09-29 20:52:14 +08:00
William Cheng
f7570df5c3 [Aspnetcore] use the term openapi (#7540)
* use openapi in aspnetcore

* move back to other

* add back file
2020-09-29 20:46:12 +08:00
Jakub Surdej
2d30714d5e Allow auth.accessToken to be either function or string (#7484) 2020-09-29 10:56:38 +02:00
lchwe
3f18d0fd10 Dart - Fix default value of enum variables (#7496)
Co-authored-by: Lucas Chwe <lucas.chwe@gmail.com>
2020-09-29 00:27:38 +08:00
Bodo Graumann
54dd18535a [typescript] Fix generation of enum models (#7529)
This fixes #665 for the consolidated typescript generator.
Original fix for typescript-node was in PR #2266, merged as
8417c5bed0 in version 4.1.0.
2020-09-28 16:28:08 +02:00
William Cheng
d7dfcc20c0 Add server URL without variables to the test spec (#7517)
* add server url without variables to the test spec

* fix php tests

* fix tests

* fix assertion
2020-09-28 22:06:42 +08:00
Francesco Marini
785cbbbb63 [Swift5][URLSession] Fix handling of customHeaders between retries (#7527)
* fix: correct handling of customHeaders

Problem: custom headers could be overwritten between 
request retries following, e.g. a token refresh ( for example,
while implementing @4brunu refresh code :
https://github.com/OpenAPITools/openapi-generator/issues/5462#issuecomment-592417371 ).
A simple reordering of the modifiedRequest headers construction
solves the problem.

* fix: correct PetStore samples implementation [PR#7527]

Co-authored-by: Franz Marini <f.marini@opengate.biz>
2020-09-28 21:46:47 +08:00
William Cheng
8b39335859 fix php test using getter (#7525) 2020-09-28 16:09:09 +08:00
20691 changed files with 1073433 additions and 337436 deletions

120
.circleci/config.yml Normal file
View File

@@ -0,0 +1,120 @@
version: 2
jobs:
build:
# docker:
# #- image: openapitools/openapi-generator
# - image: swaggerapi/petstore
# environment:
# SWAGGER_HOST=http://petstore.swagger.io
# SWAGGER_BASE_PATH=/v2
machine:
image: circleci/classic:latest
working_directory: ~/OpenAPITools/openapi-generator
parallelism: 4
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
# Restore the dependency cache
- restore_cache:
keys:
# Default branch if not
- source-v2-{{ .Branch }}-{{ .Revision }}
- source-v2-{{ .Branch }}-
- source-v2-
# Machine Setup
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# The following `checkout` command checks out your code to your working directory. In 1.0 we did this implicitly. In 2.0 you can choose where in the course of a job your code should be checked out.
- checkout
# Prepare for artifact and test results collection equivalent to how it was done on 1.0.
# In many cases you can simplify this from what is generated here.
# '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 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
# Dependencies
# Install latest stable node for angular 6
- run:
name: Install node@stable (for angular 6)
command: |
set +e
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
export NVM_DIR="/opt/circleci/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
#nvm install stable
# install v16 instead of the latest stable version
nvm install 16
nvm alias default 16
# Each step uses the same `$BASH_ENV`, so need to modify it
echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
echo "[ -s \"$NVM_DIR/nvm.sh\" ] && . \"$NVM_DIR/nvm.sh\"" >> $BASH_ENV
- run: node --version
# - 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
- run: docker run --name petstore.swagger -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- run: docker ps -a
- run: sleep 30
- run: cat /etc/hosts
# Test
- run: mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run: ./CI/circle_parallel.sh
# Save dependency cache
- save_cache:
key: source-v2-{{ .Branch }}-{{ .Revision }}
paths:
# This is a broad list of cache paths to include many possible development environments
# You can probably delete some of these entries
- vendor/bundle
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle
- ~/.cache/bower
- ".git"
- ~/.stack
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
- ~/R
# save "default" cache using the key "source-v2-"
- save_cache:
key: source-v2-
paths:
# This is a broad list of cache paths to include many possible development environments
# You can probably delete some of these entries
- vendor/bundle
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle
- ~/.cache/bower
- ".git"
- ~/.stack
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
- ~/R
# Teardown
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# Save test results
- store_test_results:
path: /tmp/circleci-test-results
# Save artifacts
- store_artifacts:
path: /tmp/circleci-artifacts
- store_artifacts:
path: /tmp/circleci-test-results

1
.gitattributes vendored
View File

@@ -1 +1,2 @@
**/*.mustache linguist-vendored=true
* text=auto eol=lf

View File

@@ -1811,7 +1811,7 @@ function readBlockScalar(state, nodeIndent) {
}
}
// Break this `while` cycle and go to the funciton's epilogue.
// Break this `while` cycle and go to the function's epilogue.
break;
}
@@ -2862,7 +2862,7 @@ module.exports = new Schema({
//
// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
// So, this schema is not such strict as defined in the YAML specification.
// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc.
// It allows numbers in binary notation, use `Null` and `NULL` as `null`, etc.
'use strict';
@@ -3222,7 +3222,7 @@ function representYamlFloat(object, style) {
res = object.toString(10);
// JS stringifier can build scientific format without dots: 5e-100,
// while YAML requres dot: 5.e-100. Fix it with simple hack
// while YAML requires dot: 5.e-100. Fix it with simple hack
return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res;
}
@@ -3424,7 +3424,7 @@ var esprima;
// Browserified version does not have esprima
//
// 1. For node.js just require module as deps
// 2. For browser try to require mudule via external AMD system.
// 2. For browser try to require module via external AMD system.
// If not found - try to fallback to window.esprima. If not
// found too - then fail to parse.
//
@@ -3881,7 +3881,7 @@ function constructYamlTimestamp(data) {
if (match[9]) {
tz_hour = +(match[10]);
tz_minute = +(match[11] || 0);
delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
delta = (tz_hour * 60 + tz_minute) * 60000; // delta in milliseconds
if (match[9] === '-') delta = -delta;
}

View File

@@ -807,7 +807,7 @@
]
},
{
"input": "php-ze-ph-petstore-server.sh",
"input": "php-mezzio-ph-petstore-server.sh",
"matches": [
"Server: PHP"
]
@@ -1244,6 +1244,30 @@
"Client: TypeScript"
]
},
{
"input": "typescript-nestjs-v6-petstore-not-provided-in-root-with-npm.sh",
"matches": [
"Client: TypeScript"
]
},
{
"input": "typescript-nestjs-v6-petstore-not-provided-in-root.sh",
"matches": [
"Client: TypeScript"
]
},
{
"input": "typescript-nestjs-v6-petstore-provided-in-root-with-npm.sh",
"matches": [
"Client: TypeScript"
]
},
{
"input": "typescript-nestjs-v6-petstore-provided-in-root.sh",
"matches": [
"Client: TypeScript"
]
},
{
"input": "typescript-node-petstore-with-npm.sh",
"matches": [

2
.github/CODEOWNERS vendored
View File

@@ -18,7 +18,7 @@ scripts/**/* @jimschubert
website/**/* @jimschubert
bin/ci/**/* @jimschubert
## Bulid related
## Build related
CI/**/* @OpenAPITools/build
.mvn/**/* @OpenAPITools/build
bin/utils/**/* @OpenAPITools/build

View File

@@ -5,7 +5,16 @@
- [ ] Read the [contribution guidelines](https://github.com/openapitools/openapi-generator/blob/master/CONTRIBUTING.md).
- [ ] Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community.
- [ ] If contributing template-only or documentation-only changes which will change sample output, [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) beforehand.
- [ ] Run the shell script `./bin/generate-samples.sh`to update all Petstore samples related to your fix. This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit as it would merge with master. These must match the expectations made by your contribution. You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`. For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master`
- [ ] Copy the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) to review the pull request if your PR is targeting a particular programming language.
- [ ] Run the following to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
```
./mvnw clean package
./bin/generate-samples.sh
./bin/utils/export_docs_generators.sh
```
Commit all changed files.
This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit as it would merge with master.
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`.
For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (5.3.0), `6.0.x`
- [ ] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.

19
.github/actions/run-samples/action.yaml vendored Normal file
View File

@@ -0,0 +1,19 @@
name: 'Run samples'
description: 'Runs sample integration test profile with Maven'
inputs:
name:
description: 'The Maven profile name'
required: true
goal:
description: 'Maven goal'
required: false
default: 'verify'
args:
description: 'Additional maven arguments'
required: false
default: ''
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

6
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"

View File

@@ -6,7 +6,7 @@ on:
jobs:
build:
name: Build on JDK ${{ matrix.java }} and ${{ matrix.os }}
name: 'Build: JDK ${{ matrix.java }} (${{ matrix.os }})'
runs-on: ${{ matrix.os }}
strategy:
matrix:
@@ -24,18 +24,19 @@ jobs:
uses: actions/checkout@v2
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: ${{ matrix.java }}
- uses: actions/cache@v1
- uses: actions/cache@v2.1.6
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('pom.xml', 'modules/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/cache@v2
- uses: actions/cache@v2.1.6
with:
path: |
~/.gradle/caches
@@ -48,19 +49,26 @@ jobs:
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: Test gradle
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
- name: Upload Maven build artifact
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v2.2.4
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: Verifies integrity of the commit on ${{ matrix.os }}
name: Verify outputs on ${{ matrix.os }}
needs: build
runs-on: ${{ matrix.os }}
strategy:
@@ -73,7 +81,7 @@ jobs:
- name: Check out code
uses: actions/checkout@v2
- name: Download build artifact
uses: actions/download-artifact@v1
uses: actions/download-artifact@v2.0.10
with:
name: artifact
- name: Run Ensures Script
@@ -82,6 +90,6 @@ jobs:
git config --global core.fileMode false
git config --global core.safecrlf false
git config --global core.autocrlf true
mkdir -p modules/openapi-generator-cli/target/
mv artifact/openapi-generator-cli.jar modules/openapi-generator-cli/target/
./bin/utils/ensure-up-to-date ${{ matrix.flags }}
mvn clean package -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
# test with java (jersey2) client generation only as ensure-uptodate script is run in another job instead
./bin/generate-samples.sh ./bin/configs/java-jersey2-8.yaml

View File

@@ -1,75 +0,0 @@
name: Docker Tag latest-release
# Run every couple of days
on:
schedule:
- cron: "30 12 */2 * *"
jobs:
# This pulls all containers for the last known release tag, and tags as latest-release or x-latest-release for shared repo
tagLatestRelease:
runs-on: ubuntu-latest
steps:
# Pull the code so we have git metadata
- name: Checkout code
uses: actions/checkout@v2
# This action will "unshallow" so we have all tag info
- name: Get latest tag
id: tagger
uses: jimschubert/query-tag-action@v1
with:
include: 'v*'
exclude: '*-rc*'
commit-ish: 'HEAD~'
- name: DockerHub Login
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
# Tags openapitools/openapi-generator-cli
- name: "Tag openapi-generator-cli:x"
id: tag-openapi-generator-cli
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator-cli:${{steps.tagger.outputs.tag}}
docker tag openapitools/openapi-generator-cli:${{steps.tagger.outputs.tag}} openapitools/openapi-generator-cli:latest-release
docker push openapitools/openapi-generator-cli:latest-release
# Tags openapitools/openapi-generator-online
- name: "Tag openapi-generator-online:x"
id: tag-openapi-generator-online
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator-online:${{steps.tagger.outputs.tag}}
docker tag openapitools/openapi-generator-online:${{steps.tagger.outputs.tag}} openapitools/openapi-generator-online:latest-release
docker push openapitools/openapi-generator-online:latest-release
# Tags openapitools/openapi-generator's CLI image (this repo holds CLI + Online via tag prefix)
- name: "Tag openapi-generator:cli-x"
id: tag-cli
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator:cli-${{steps.tagger.outputs.tag}}
docker tag openapitools/openapi-generator:cli-${{steps.tagger.outputs.tag}} openapitools/openapi-generator:cli-latest-release
docker push openapitools/openapi-generator:cli-latest-release
# Tags openapitools/openapi-generator's ONLINE image (this repo holds CLI + Online via tag prefix)
- name: "Tag openapi-generator:online-x"
id: tag-online
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator:online-${{steps.tagger.outputs.tag}}
docker tag openapitools/openapi-generator:online-${{steps.tagger.outputs.tag}} openapitools/openapi-generator:online-latest-release
docker push openapitools/openapi-generator:online-latest-release
# Clean up docker credentials/configs/etc.
- name: Cleanup
if: always()
run: |
rm -f ${HOME}/.docker/config.json

57
.github/workflows/gradle-test.yaml vendored Normal file
View File

@@ -0,0 +1,57 @@
name: Gradle tests (Java samples)
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
- "java*"
paths:
- 'samples/client/petstore/java/**'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
paths:
- 'samples/openapi3/client/petstore/java/**'
env:
GRADLE_VERSION: 7.2
jobs:
build:
name: Gradle tests
runs-on: ubuntu-latest
container: gradle:jdk8
strategy:
fail-fast: true
matrix:
sample:
- samples/client/petstore/java/jersey2-java8-localdatetime
- samples/client/petstore/java/jersey2-java8
- samples/openapi3/client/extensions/x-auth-id-alias/java/jersey2-java8
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters
- samples/openapi3/client/petstore/java/jersey2-java8
- samples/client/petstore/java/okhttp-gson
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: 8
# Cache Gradle Dependencies
- name: Setup Gradle Dependencies Cache
uses: actions/cache@v2
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
# Cache Gradle Wrapper
- name: Setup Gradle Wrapper Cache
uses: actions/cache@v2
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: /bin/sh gradlew build -x test

View File

@@ -0,0 +1,19 @@
name: OpenAPI Generator Test Report
on:
workflow_run:
workflows: ['OpenAPI Generator']
types:
- completed
# separate workflow required due to https://github.com/dorny/test-reporter#recommended-setup-for-public-repositories
jobs:
report:
runs-on: ubuntu-latest
steps:
- uses: dorny/test-reporter@v1
with:
artifact: surefire-test-results
name: JUnit Test results
path: '**/surefire-reports/TEST-*.xml'
reporter: java-junit

214
.github/workflows/openapi-generator.yaml vendored Normal file
View File

@@ -0,0 +1,214 @@
name: OpenAPI Generator
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v1
with:
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
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: Run maven
run: mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run: ls -la modules/openapi-generator-cli/target
- name: Upload openapi-generator-cli.jar artifact
uses: actions/upload-artifact@v2.2.4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
retention-days: 1
test:
name: Unit tests
runs-on: ubuntu-latest
needs:
- build
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v1
with:
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
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: mvn --no-snapshot-updates --batch-mode --quiet --fail-at-end test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v2.2.4
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'
documentation:
name: Docs up-to-date
runs-on: ubuntu-latest
needs:
- build
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v1
with:
java-version: 8
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v2.0.10
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
- name: Generate docs
run: |
bash bin/meta-codegen.sh
bash bin/utils/export_docs_generators.sh
bash bin/utils/copy-to-website.sh
bash bin/utils/export_generators_readme.sh
- name: Verify git status
run: |
if [[ "$(git status --porcelain)" != "" ]]; then
echo "UNCOMMITTED CHANGES ERROR"
echo "There are uncommitted changes in working tree after execution of 'bin/ensure-up-to-date'"
echo "Perform git diff"
git --no-pager diff
echo "Perform git status"
git status
echo -e "\nThis script runs in pull requests against the anticipated merge commit (as if the PR was merged now)."
echo "When you see unexpected files here, it likely means that there are newer commits in master that you need to "
echo -e "rebase or merge into your branch.\n"
echo "Please run 'bin/utils/ensure-up-to-date' locally and commit changes (UNCOMMITTED CHANGES ERROR)"
exit 1
fi
samples:
name: Samples up-to-date
needs:
- build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v1
with:
java-version: 8
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v2.0.10
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
- name: Generate samples
run: bash bin/generate-samples.sh
- name: Verify git status
run: |
if [[ "$(git status --porcelain)" != "" ]]; then
echo "UNCOMMITTED CHANGES ERROR"
echo "There are uncommitted changes in working tree after execution of 'bin/generate-samples.sh'"
echo "Perform git diff"
git --no-pager diff
echo "Perform git status"
git status
echo -e "\nThis script runs in pull requests against the anticipated merge commit (as if the PR was merged now)."
echo "When you see unexpected files here, it likely means that there are newer commits in master that you need to "
echo -e "rebase or merge into your branch.\n"
echo "Please run 'bin/generate-samples.sh' locally and commit changes (UNCOMMITTED CHANGES ERROR)"
exit 1
fi
test-maven-plugin:
name: Maven plugin tests
runs-on: ubuntu-latest
needs:
- build
steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
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 }}-test-maven-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-maven-plugin-
- name: Run tests
run: |
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
test-gradle-plugin:
name: Gradle plugin tests
runs-on: ubuntu-latest
needs:
- build
steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
env:
cache-name: cache-maven-repository
with:
path: |
~/.m2/repository
~/.gradle
!~/.gradle/caches/modules-2/modules-2.lock
!~/.gradle/caches/*/plugin-resolution/
!~/.m2/repository/org/openapitools/
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-test-gradle-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-gradle-plugin-
- name: Run tests
run: |
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildGoSdk)
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew openApiGenerate)

80
.github/workflows/samples-dart.yaml vendored Normal file
View File

@@ -0,0 +1,80 @@
name: Samples Dart
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
paths:
- 'samples/openapi3/client/petstore/dart*/**'
jobs:
tests-dart-2-10:
name: Tests Dart 2.10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
env:
cache-name: maven-repository
with:
path: |
~/.m2/repository
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Cache test dependencies
uses: actions/cache@v2.1.6
env:
cache-name: pub-cache
with:
path: $PUB_CACHE
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('samples/**/pubspec.yaml') }}
- uses: dart-lang/setup-dart@v1
with:
sdk: 2.10.5
- name: Run tests
uses: ./.github/actions/run-samples
with:
name: samples.dart-2.10
tests-dart-2-13:
name: Tests Dart 2.13
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
env:
cache-name: maven-repository
with:
path: |
~/.m2/repository
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Cache test dependencies
uses: actions/cache@v2.1.6
env:
cache-name: pub-cache
with:
path: $PUB_CACHE
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('samples/**/pubspec.yaml') }}
- uses: dart-lang/setup-dart@v1
with:
sdk: 2.13.0
- name: Run tests
uses: ./.github/actions/run-samples
with:
name: samples.dart-2.13

66
.github/workflows/samples-kotlin.yaml vendored Normal file
View File

@@ -0,0 +1,66 @@
name: Samples Kotlin
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
paths:
- 'samples/client/petstore/kotlin*/**'
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build Kotlin
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/kotlin
- samples/client/petstore/kotlin-gson
- samples/client/petstore/kotlin-jackson
# needs Android configured
#- samples/client/petstore/kotlin-json-request-string
- samples/client/petstore/kotlin-jvm-okhttp4-coroutines
- samples/client/petstore/kotlin-moshi-codegen
# need some special setup
#- samples/client/petstore/kotlin-multiplatform
- samples/client/petstore/kotlin-nonpublic
- samples/client/petstore/kotlin-nullable
- samples/client/petstore/kotlin-okhttp3
- samples/client/petstore/kotlin-retrofit2
- samples/client/petstore/kotlin-retrofit2-kotlinx_serialization
- samples/client/petstore/kotlin-retrofit2-rx3
- samples/client/petstore/kotlin-string
- samples/client/petstore/kotlin-threetenbp
- samples/client/petstore/kotlin-uppercase-enum
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.6
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -10,12 +10,13 @@ jobs:
build:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'OpenAPITools' }}
steps:
- uses: actions/checkout@v1
- name: Set up JDK 11
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: 11
- name: Compile with Maven
run: mvn -B -q clean install jacoco:report

46
.gitignore vendored
View File

@@ -31,6 +31,7 @@ packages/
.vscode/
**/.vs
.factorypath
.metals/*
.settings
@@ -61,14 +62,17 @@ samples/server-generator/node/output/node_modules
samples/server/petstore/nodejs/node_modules
samples/server/petstore/nodejs-server/node_modules
# qt5 cpp
*.pro.user
samples/client/petstore/qt5cpp/PetStore/moc_*
samples/client/petstore/qt5cpp/PetStore/*.o
samples/client/petstore/qt5cpp/build-*
samples/client/petstore/qt5cpp/PetStore/PetStore
samples/client/petstore/qt5cpp/PetStore/Makefile
samples/client/petstore/qt5cpp/PetStore/PetStore.pro.user
# qt cpp
samples/client/build
samples/client/petstore/build
samples/client/petstore/cpp-qt/PetStore/moc_*
samples/client/petstore/cpp-qt/PetStore/*.o
samples/client/petstore/cpp-qt/build-*
samples/client/petstore/cpp-qt/build-*
samples/client/petstore/cpp-qt/PetStore/PetStore
samples/client/petstore/cpp-qt/PetStore/Makefile
samples/client/petstore/cpp-qt/PetStore/PetStore.pro.user
samples/client/petstore/cpp-qt/CMakeLists.txt.user
# cpprestsdk
samples/client/petstore/cpp-restsdk/CMakeCache.txt
@@ -175,13 +179,15 @@ samples/client/petstore/python-tornado/.venv/
# PHP
samples/client/petstore/php/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
samples/openapi3/server/petstore/php-ze-ph/composer.lock
samples/server/petstore/php-laravel/lib/composer.lock
samples/server/petstore/php-lumen/lib/composer.lock
samples/server/petstore/php-slim4/composer.lock
samples/server/petstore/php-symfony/SymfonyBundle-php/composer.lock
samples/server/petstore/php-ze-ph/composer.lock
samples/server/petstore/php-mezzio-ph/composer.lock
samples/server/petstore/php-mezzio-ph-modern/composer.lock
# ts
samples/client/petstore/typescript-angular2/npm/npm-debug.log
@@ -212,6 +218,9 @@ cabal.project.local
samples/client/petstore/haskell-http-client/docs/haddock-bundle.min.js
samples/client/petstore/haskell-http-client/docs/meta.json
samples/client/petstore/haskell-http-client/docs/quick-jump.css
samples/client/petstore/haskell-http-client/stack.yaml.lock
samples/server/petstore/haskell-servant/stack.yaml.lock
samples/server/petstore/haskell-yesod/stack.yaml.lock
# R
.Rproj.user
@@ -234,11 +243,15 @@ samples/client/petstore/erlang-proper/rebar.lock
samples/server/petstore/erlang-server/_build/
samples/server/petstore/erlang-server/rebar.lock
# dart
samples/client/petstore/dart/petstore/packages
samples/client/petstore/dart/flutter_petstore/test/packages
samples/client/petstore/dart/petstore/test/packages
**/.dart_tool
# Dart
**/dart*/**/.dart_tool
**/dart*/**/.packages
**/dart*/**/pubspec.lock
# Dart dio
**/dart*/**/*.g.dart
# Dart jaguar
**/dart*/**/*.jser.dart
**/dart*/**/*.jretro.dart
# JS
samples/client/petstore/javascript-es6/package-lock.json
@@ -254,3 +267,6 @@ samples/client/petstore/c/*.so
# Ruby
samples/openapi3/client/petstore/ruby/Gemfile.lock
samples/openapi3/client/petstore/ruby-faraday/Gemfile.lock
# Crystal
samples/client/petstore/crystal/lib

117
.mvn/wrapper/MavenWrapperDownloader.java vendored Normal file
View File

@@ -0,0 +1,117 @@
/*
* 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

@@ -1 +1,2 @@
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.3/apache-maven-3.3.3-bin.zip
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

View File

@@ -21,28 +21,11 @@ cache:
- $HOME/samples/client/petstore/php/OpenAPIToolsClient-php/vendor
- $HOME/samples/client/petstore/ruby/vendor/bundle
- $HOME/samples/client/petstore/python/.venv/
- $HOME/samples/openapi3/client/petstore/typescript/tests/default/node_modules
- $HOME/samples/openapi3/client/petstore/typescript/tests/jquery/node_modules
- $HOME/samples/openapi3/client/petstore/typescript/tests/object_params/node_modules
- $HOME/samples/openapi3/client/petstore/typescript/tests/inversify/node_modules
- $HOME/samples/client/petstore/typescript-node/npm/node_modules
- $HOME/samples/client/petstore/typescript-node/npm/typings/
- $HOME/samples/client/petstore/typescript-fetch/tests/default/node_modules
- $HOME/samples/client/petstore/typescript-fetch/tests/default/typings
- $HOME/samples/client/petstore/typescript-fetch/builds/default/node_modules
- $HOME/samples/client/petstore/typescript-fetch/builds/default/typings
- $HOME/samples/client/petstore/typescript-fetch/builds/es6-target/node_modules
- $HOME/samples/client/petstore/typescript-fetch/builds/es6-target/typings
- $HOME/samples/client/petstore/typescript-fetch/builds/with-npm-version/node_modules
- $HOME/samples/client/petstore/typescript-fetch/npm/with-npm-version/typings
- $HOME/samples/client/petstore/typescript-angular/node_modules
- $HOME/samples/client/petstore/typescript-angular/typings
- $HOME/samples/server/petstore/rust-server/target
- $HOME/perl5
- $HOME/.cargo
- $HOME/.pub-cache
- $HOME/samples/server/petstore/cpp-pistache/pistache
- $HOME/.npm
- $HOME/.rvm/gems/ruby-2.4.1
- $HOME/website/node_modules/
- $HOME/.cache/deno
@@ -62,21 +45,34 @@ addons:
- petstore.swagger.io
before_install:
- sudo rm -rf /var/lib/apt/lists/*
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) edge"
- sudo apt-get update
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- mkdir -vp ~/.docker/cli-plugins/
- curl --silent -L "https://github.com/docker/buildx/releases/download/v0.3.0/buildx-v0.3.0.linux-amd64" > ~/.docker/cli-plugins/docker-buildx
- chmod a+x ~/.docker/cli-plugins/docker-buildx
# to run petstore server locally via docker
- echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin || true
- docker pull swaggerapi/petstore
- docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- docker ps -a
# comment out crystal installation as the tests will run on circleci or github action instead
# install crystal
#- echo 'deb http://download.opensuse.org/repositories/devel:/languages:/crystal/xUbuntu_16.04/ /' | sudo tee /etc/apt/sources.list.d/devel:languages:crystal.list
#- curl -fsSL https://download.opensuse.org/repositories/devel:languages:crystal/xUbuntu_16.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/devel_languages_crystal.gpg > /dev/null
#- sudo apt update
#- sudo apt install crystal
#- crystal --version
- curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 1.22.0
- export PATH="$HOME/.yarn/bin:$PATH"
# install rust
- curl https://sh.rustup.rs -sSf | sh -s -- -y -v
# required when sudo: required for the Ruby petstore tests
- gem install bundler
- npm install -g typescript
- npm install -g npm
- npm config set registry http://registry.npmjs.org/
# set python 3.6.3 as default
- source ~/virtualenv/python3.6/bin/activate
# to run petstore server locally via docker
- docker pull swaggerapi/petstore
- docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- docker ps -a
# -- skip bash test to shorten build time
# Add bats test framework and cURL for Bash script integration tests
#- sudo add-apt-repository ppa:duggan/bats --yes
@@ -109,7 +105,7 @@ before_install:
# -- skip perl test to shorten build time
# perl dep
#- cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
#- cpanm --quiet --no-interactive Test::Exception Test::More Log::Any LWP::UserAgent URI::Query Module::Runtime DateTime Module::Find Moose::Role JSON || echo "Igorned failure from cpanm"
#- cpanm --quiet --no-interactive Test::Exception Test::More Log::Any LWP::UserAgent URI::Query Module::Runtime DateTime Module::Find Moose::Role JSON || echo "Ignored failure from cpanm"
# -- skip perl test end
# show host table to confirm petstore.swagger.io is mapped to localhost
- cat /etc/hosts
@@ -122,7 +118,7 @@ before_install:
fi;
- pushd .; cd website; yarn install; popd
# install Deno
- curl -fsSL https://deno.land/x/install/install.sh | sh -s v1.1.2
- sh -s v1.6.2 < ./CI/deno_install.sh
- export PATH="$HOME/.deno/bin:$PATH"
install:
@@ -140,6 +136,12 @@ install:
script:
# fail fast
- set -e
# show docker buildx version
- docker buildx version
# fail if the template files contains tabs
- /bin/bash ./bin/utils/detect_tab_in_templates.sh
# fail if the test files have changes
- bin/utils/detect_test_file_changes.rb bin/utils/test_file_list.yaml
# fail if templates/generators contain carriage return '\r'
- /bin/bash ./bin/utils/detect_carriage_return.sh
# fail if generators contain merge conflicts
@@ -148,8 +150,8 @@ script:
- /bin/bash ./bin/utils/detect_tab_in_java_class.sh
# 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 --no-snapshot-updates --quiet --batch-mode --show-version clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --no-snapshot-updates --quiet --batch-mode --show-version verify -Psamples -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- 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
after_success:
# push to maven repo
- if [ $SONATYPE_USERNAME ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
@@ -186,12 +188,14 @@ after_success:
echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin;
export cli_version=$(\mvn -o org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\[');
export build_date=$(date -u +"%Y-%m-%dT%H:%M:%SZ");
docker build --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-online --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_GENERATOR_IMAGE_NAME ./modules/openapi-generator-online;
docker buildx create --use;
if [ ! -z "$TRAVIS_TAG" ]; then
docker tag $DOCKER_GENERATOR_IMAGE_NAME:latest $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG;
docker buildx build --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-online --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_GENERATOR_IMAGE_NAME:latest -t $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG -t $DOCKER_GENERATOR_IMAGE_NAME ./modules/openapi-generator-online;
echo "Built and tagged $DOCKER_GENERATOR_IMAGE_NAME";
fi;
if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then
docker push $DOCKER_GENERATOR_IMAGE_NAME && echo "Pushed to $DOCKER_GENERATOR_IMAGE_NAME";
if [ -z "$TRAVIS_TAG" ] && [ "$TRAVIS_BRANCH" = "master" ] && [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
docker buildx build --push --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-online --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_GENERATOR_IMAGE_NAME ./modules/openapi-generator-online;
echo "Pushed to $DOCKER_GENERATOR_IMAGE_NAME for master";
fi;
fi;
## docker: build cli image and push to Docker Hub
@@ -200,12 +204,14 @@ after_success:
cp docker-entrypoint.sh ./modules/openapi-generator-cli;
export cli_version=$(\mvn -o org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\[');
export build_date=$(date -u +"%Y-%m-%dT%H:%M:%SZ");
docker build --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/openapi-generator-cli;
docker buildx create --use;
docker buildx build --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/openapi-generator-cli;
if [ ! -z "$TRAVIS_TAG" ]; then
docker tag $DOCKER_CODEGEN_CLI_IMAGE_NAME:latest $DOCKER_CODEGEN_CLI_IMAGE_NAME:$TRAVIS_TAG;
docker buildx build --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_CODEGEN_CLI_IMAGE_NAME:latest -t $DOCKER_CODEGEN_CLI_IMAGE_NAME:$TRAVIS_TAG -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/openapi-generator-cli;
echo "Built and tagged $DOCKER_GENERATOR_IMAGE_NAME";
fi;
if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then
docker push $DOCKER_CODEGEN_CLI_IMAGE_NAME;
if [ -z "$TRAVIS_TAG" ] && [ "$TRAVIS_BRANCH" = "master" ] && [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
docker buildx build --push --platform linux/amd64,linux/arm64 --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/openapi-generator-cli;
echo "Pushed to $DOCKER_CODEGEN_CLI_IMAGE_NAME";
fi;
fi;

View File

@@ -1,6 +1,52 @@
kind: pipeline
name: default
type: docker
name: java11-test
steps:
# test Java 11 HTTP client
- name: java11-test
image: openjdk:11.0
commands:
- ./mvnw --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- ./mvnw --quiet verify -Psamples.droneio -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# test java native client
- ./mvnw clean test -f samples/client/petstore/java/native/pom.xml
- ./mvnw clean test -f samples/client/petstore/java/native-async/pom.xml
- ./mvnw clean test -f samples/openapi3/client/petstore/java/native/pom.xml
# test all generators with fake petstore spec (2.0, 3.0)
- /bin/bash bin/utils/test-fake-petstore-for-all.sh
# generate test scripts
- /bin/bash bin/tests/run-all-test
---
kind: pipeline
type: docker
name: nim-client-test
steps:
# test nim client
- name: nim-client-test
image: nimlang/nim
commands:
- (cd samples/client/petstore/nim/ && nim c sample_client.nim)
---
kind: pipeline
type: docker
name: protobuf-schema-test
steps:
# test protobuf schema generator
- name: protobuf-schema-test
image: nanoservice/protobuf-go
commands:
- protoc --version
- mkdir /var/tmp/go/
- cd samples/config/petstore/protobuf-schema
- protoc --go_out=/var/tmp/go/ services/*
- protoc --go_out=/var/tmp/go/ models/*
---
kind: pipeline
type: docker
name: aspnetcore-test
steps:
# test aspnetcore 3.x
- name: aspnetcore-test
@@ -8,6 +54,12 @@ steps:
commands:
- (cd samples/server/petstore/aspnetcore-3.1/ && /bin/sh build.sh)
- (cd samples/server/petstore/aspnetcore-3.0/ && /bin/sh build.sh)
---
kind: pipeline
type: docker
name: ocaml-test
steps:
# test ocaml petstore client
- name: ocaml-test
image: ocaml/opam2:4.07
@@ -19,25 +71,28 @@ steps:
- eval $(opam env)
- sudo chmod -R 777 .
- dune build --build-dir=./_build
---
kind: pipeline
type: docker
name: haskell-client-test
steps:
# test haskell client
- name: haskell-client-test
image: haskell:8.6.5
image: haskell:8.10.4
commands:
- (cd samples/client/petstore/haskell-http-client/ && stack --install-ghc --no-haddock-deps haddock --fast && stack test --fast)
# test Java 11 HTTP client
- name: java11-test
image: openjdk:11.0
- (cd samples/client/petstore/haskell-http-client/ && stack --allow-different-user --install-ghc --no-haddock-deps haddock --fast && stack --allow-different-user test --fast)
---
kind: pipeline
type: docker
name: erlang
steps:
# test erlang client and server
- name: erlang
image: erlang:alpine
commands:
- ./mvnw -quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- ./mvnw --quiet verify -Psamples.droneio -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# test java native client
- ./mvnw clean test -f samples/client/petstore/java/native/pom.xml
- ./mvnw clean test -f samples/client/petstore/java/native-async/pom.xml
# test all generators with fake petstore spec (2.0, 3.0)
- /bin/bash bin/utils/test-fake-petstore-for-all.sh
# generate test scripts
- /bin/bash bin/tests/run-all-test
# generate all petstore samples (client, servers, doc)
- /bin/bash bin/generate-samples.sh
# generate all petstore samples (openapi3)
- /bin/bash bin/generate-samples.sh bin/configs/other/*.yaml
- (cd samples/client/petstore/erlang-client && rebar3 compile)
- (cd samples/client/petstore/erlang-proper && rebar3 compile)
# comment out as the tests pass locally but not in the CI
#- (cd samples/server/petstore/erlang-server && rebar3 compile)

View File

@@ -1,51 +0,0 @@
---
format_version: '8'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: other
trigger_map:
- push_branch: "*"
workflow: primary
- pull_request_source_branch: "*"
workflow: primary
workflows:
primary:
steps:
- git-clone@4.0.17: {}
- brew-install@0.10.2:
inputs:
- packages: maven
- script@1.1.6:
title: Install Cocoapods
inputs:
- content: |
#!/usr/bin/env bash
sudo gem install cocoapods
- script@1.1.6:
inputs:
- content: |
#!/usr/bin/env bash
set -e
mvn --no-snapshot-updates package -Dorg.slf4j.simpleLogger.defaultLogLevel=error
title: Build openapi-generator
- script@1.1.6:
title: Update Swift samples
inputs:
- content: |
#!/usr/bin/env bash
set -e
bin/generate-samples.sh ./bin/configs/other/swift5-*
- script@1.1.6:
title: Run Swift5 tests
inputs:
- content: |
#!/usr/bin/env bash
set -e
./samples/client/test/swift5/swift5_test_all.sh

View File

@@ -7,6 +7,8 @@ NODE_INDEX=${CIRCLE_NODE_INDEX:-0}
set -e
export NODE_ENV=test
function cleanup {
# Show logs of 'petstore.swagger' container to troubleshoot Unit Test failures, if any.
docker logs petstore.swagger # container name specified in circle.yml
@@ -20,40 +22,41 @@ if [ "$NODE_INDEX" = "1" ]; then
mvn --no-snapshot-updates --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
echo "show ivy2 cache"
ls -l /home/circleci/.ivy2/cache
elif [ "$NODE_INDEX" = "2" ]; then
# run ensure-up-to-date sample script on SNAPSHOT version only
project_version=`mvn org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout`
if [[ $project_version == *"-SNAPSHOT" ]]; then
echo "Running node $NODE_INDEX to test ensure-up-to-date"
java -version
# clear any changes to the samples
git checkout -- .
# look for outdated samples
./bin/utils/ensure-up-to-date
fi
echo "Running node $NODE_INDEX to test haskell"
# install haskell
curl -sSL https://get.haskellstack.org/ | sh
stack upgrade
stack --version
# install r
#curl -sSLk https://get.haskellstack.org/ | sh
#stack upgrade
#stack --version
# prepare r
sudo sh -c 'echo "deb http://cran.rstudio.com/bin/linux/ubuntu trusty/" >> /etc/apt/sources.list'
gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
gpg -a --export E084DAB9 | sudo apt-key add -
sudo apt-get update
sudo apt-get -y install r-base
R --version
# install curl
sudo apt-get -y build-dep libcurl4-gnutls-dev
sudo apt-get -y install libcurl4-gnutls-dev
# run integration tests
mvn --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 ..."
#wget https://www.python.org/ftp/python/3.8.9/Python-3.8.9.tgz
#tar -xf Python-3.8.9.tgz
#cd Python-3.8.9
#./configure --enable-optimizations
#sudo make altinstall
pyenv install --list
pyenv install 3.6.3
pyenv global 3.6.3
python3 --version
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node3 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
else
echo "Running node $NODE_INDEX to test 'samples.circleci.others' defined in pom.xml ..."
#sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
@@ -66,15 +69,6 @@ else
export PATH="/usr/local/go1.14/go/bin:$PATH"
go version
# install dart2
sudo apt-get update
sudo apt-get install apt-transport-https
sudo sh -c 'wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -'
sudo sh -c 'wget -qO- https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list'
sudo apt-get update
sudo apt-get install dart
export PATH="$PATH:/usr/lib/dart/bin"
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
fi

52
CI/deno_install.sh Normal file
View File

@@ -0,0 +1,52 @@
#!/bin/sh
# Copyright 2019 the Deno authors. All rights reserved. MIT license.
# TODO(everyone): Keep this script simple and easily auditable.
set -e
if ! command -v unzip >/dev/null; then
echo "Error: unzip is required to install Deno (see: https://github.com/denoland/deno_install#unzip-is-required)." 1>&2
exit 1
fi
if [ "$OS" = "Windows_NT" ]; then
target="x86_64-pc-windows-msvc"
else
case $(uname -s) in
Darwin) target="x86_64-apple-darwin" ;;
*) target="x86_64-unknown-linux-gnu" ;;
esac
fi
if [ $# -eq 0 ]; then
deno_uri="https://github.com/denoland/deno/releases/latest/download/deno-${target}.zip"
else
deno_uri="https://github.com/denoland/deno/releases/download/${1}/deno-${target}.zip"
fi
deno_install="${DENO_INSTALL:-$HOME/.deno}"
bin_dir="$deno_install/bin"
exe="$bin_dir/deno"
if [ ! -d "$bin_dir" ]; then
mkdir -p "$bin_dir"
fi
curl --fail --location --progress-bar --output "$exe.zip" "$deno_uri"
unzip -d "$bin_dir" -o "$exe.zip"
chmod +x "$exe"
rm "$exe.zip"
echo "Deno was installed successfully to $exe"
if command -v deno >/dev/null; then
echo "Run 'deno --help' to get started"
else
case $SHELL in
/bin/zsh) shell_profile=".zshrc" ;;
*) shell_profile=".bash_profile" ;;
esac
echo "Manually add the directory to your \$HOME/$shell_profile (or similar)"
echo " export DENO_INSTALL=\"$deno_install\""
echo " export PATH=\"\$DENO_INSTALL/bin:\$PATH\""
echo "Run '$exe --help' to get started"
fi

View File

@@ -48,7 +48,9 @@ Code change should conform to the programming style guide of the respective lang
- C#: https://msdn.microsoft.com/en-us/library/vstudio/ff926074.aspx
- C++: https://google.github.io/styleguide/cppguide.html
- C++ (Tizen): https://wiki.tizen.org/Native_Platform_Coding_Idiom_and_Style_Guide#C.2B.2B_Coding_Style
- C++ (Unreal Engine 4): https://docs.unrealengine.com/en-US/ProductionPipelines/DevelopmentSetup/CodingStandard/index.html
- Clojure: https://github.com/bbatsov/clojure-style-guide
- Crystal: https://crystal-lang.org/reference/conventions/coding_style.html
- Dart: https://www.dartlang.org/guides/language/effective-dart/style
- Elixir: https://github.com/christopheradams/elixir_style_guide
- Eiffel: https://www.eiffel.org/doc/eiffel/Coding%20Standards
@@ -86,14 +88,10 @@ To add test cases (optional) covering the change in the code generator, please r
To test the templates, please perform the following:
- Update the Petstore sample by running the shell scripts under the `bin` folder. For example, run `./bin/generate-samples.sh .
/bin/configs/python*` to update the Python-related samples under [`samples`](https://github.com/openapitools/openapi-generator/tree/master/samples). For Windows, please install [GIT bash](https://gitforwindows.org/). (If you find that there are new files g
enerated or unexpected changes as a result of the update, that's not unusual as the test cases are added to the OpenAPI spec fro
m time to time. If you've questions or concerns, please open a ticket to start a discussion)
- During development it can be helpful to quickly regenerate the samples without recompiling all of openapi-generator, e.g. when you have only updated the mustache templates. This can be done by passing the `-t` parameter: `-t modules/openapi-generator/src/main/resources/python`.
- Update the Petstore sample by running the shell scripts under the `bin` folder. For example, run `./bin/generate-samples.sh ./bin/configs/python*` to update the Python-related samples under [`samples`](https://github.com/openapitools/openapi-generator/tree/master/samples). For Windows, please install [GIT bash](https://gitforwindows.org/). (If you find that there are new files generated or unexpected changes as a result of the update, that's not unusual as the test cases are added to the OpenAPI spec from time to time. If you've questions or concerns, please open a ticket to start a discussion)
- During development, it can be helpful to quickly regenerate the samples without recompiling all of openapi-generator, e.g. when you have only updated the mustache templates. This can be done by passing the `-t` parameter: `-t modules/openapi-generator/src/main/resources/python`.
- Run the tests in the sample folder using maven `mvn integration-test -f /path/to/pom.xml`, e.g. `mvn integration-test -f samples/client/petstore/python/pom.xml`. (some languages may not contain unit testing for Petstore and we're looking for contribution from the community to implement those tests)
- Finally, git commit the updated samples files: `git commit -a`
(`git add -A` if added files with new test cases)
- Finally, git commit the updated samples files: `git commit -a` (`git add -A` if added files with new test cases)
- For new test cases, please add to the [Fake Petstore spec](https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml)
To start the CI tests, you can:

177
README.md
View File

@@ -3,21 +3,27 @@
<div align="center">
[![Stable releaases in Maven Central](https://img.shields.io/maven-metadata/v/https/repo1.maven.org/maven2/org/openapitools/openapi-generator/maven-metadata.xml.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22) [![Apache 2.0 License](https://img.shields.io/badge/License-Apache%202.0-orange)](./LICENSE) ![Open Collective backers](https://img.shields.io/opencollective/backers/openapi_generator?color=orange&label=OpenCollective%20Backers) [![Join the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/enQtNzAyNDMyOTU0OTE1LTY5ZDBiNDI5NzI5ZjQ1Y2E5OWVjMjZkYzY1ZGM2MWQ4YWFjMzcyNDY5MGI4NjQxNDBiMTlmZTc5NjY2ZTQ5MGM) [![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)
[![Stable releaases in Maven Central](https://img.shields.io/maven-metadata/v/https/repo1.maven.org/maven2/org/openapitools/openapi-generator/maven-metadata.xml.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22) [![Apache 2.0 License](https://img.shields.io/badge/License-Apache%202.0-orange)](./LICENSE) [![Open Collective backers](https://img.shields.io/opencollective/backers/openapi_generator?color=orange&label=OpenCollective%20Backers)](https://opencollective.com/openapi_generator) [![Join the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/enQtNzAyNDMyOTU0OTE1LTY5ZDBiNDI5NzI5ZjQ1Y2E5OWVjMjZkYzY1ZGM2MWQ4YWFjMzcyNDY5MGI4NjQxNDBiMTlmZTc5NjY2ZTQ5MGM) [![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)
</div>
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`5.0.0`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`5.3.0`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Run Status](https://api.shippable.com/projects/5af6bf74e790f4070084a115/badge?branch=master)](https://app.shippable.com/github/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-wh2wu)
[![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)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/master)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/master?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/openapitools/openapi-generator/Check%20Supported%20Java%20Versions/master?label=Check%20Supported%20Java%20Versions&logo=github&logoColor=green)](https://github.com/OpenAPITools/openapi-generator/actions?query=workflow%3A%22Check+Supported+Java+Versions%22)
[6.0.x](https://github.com/OpenAPITools/openapi-generator/tree/6.0.x) (`6.0.x`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/6.0.x.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/6.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=6.0.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/6.0.x)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/6.0.x?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
</div>
<div align="center">
@@ -30,7 +36,7 @@
:notebook_with_decorative_cover: The eBook [A Beginner's Guide to Code Generation for REST APIs](https://gum.co/openapi_generator_ebook) is a good starting point for beginners :notebook_with_decorative_cover:
:warning: If the OpenAPI spec, templates or any input (e.g. options, environment variables) is obtained from an untrusted source or environment, please make sure you've reviewed these inputs before using OpenAPI Generator to generate the API client, server stub or documentation to avoid potential security issues (e.g. [code injection](https://en.wikipedia.org/wiki/Code_injection)) :warning:
:warning: If the OpenAPI spec, templates or any input (e.g. options, environment variables) is obtained from an untrusted source or environment, please make sure you've reviewed these inputs before using OpenAPI Generator to generate the API client, server stub or documentation to avoid potential security issues (e.g. [code injection](https://en.wikipedia.org/wiki/Code_injection)). For security vulnerabilities, please contact [team@openapitools.org](mailto:team@openapitools.org). :warning:
:bangbang: Both "OpenAPI Tools" (https://OpenAPITools.org - the parent organization of OpenAPI Generator) and "OpenAPI Generator" are not affiliated with OpenAPI Initiative (OAI) :bangbang:
@@ -47,6 +53,8 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[<img src="https://openapi-generator.tech/img/companies/docspring.png" width="128" height="128">](https://docspring.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/datadog.png" width="128" height="128">](https://datadoghq.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/thales.jpg" width="128" height="128">](https://cpl.thalesgroup.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/apideck.jpg" width="128" height="128">](https://www.apideck.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/pexa.png" width="128" height="128">](https://www.pexa.com.au/?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
@@ -60,11 +68,11 @@ OpenAPI Generator allows generation of API client libraries (SDK generation), se
| | Languages/Frameworks |
| -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.0, .NET Core 2.0), **C++** (cpp-restsdk, Qt5, Tizen), **Clojure**, **Dart (1.x, 2.x)**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (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), **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** (rust, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (2.x - 8.x), Aurelia, Axios, Fetch, Inversify, jQuery, Node, Rxjs) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin), **Haskell** (Servant), **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/)), **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, Slim, Silex, [Symfony](https://symfony.com/), [Zend Expressive](https://github.com/zendframework/zend-expressive)), **Python** (Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (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** |
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.0, .NET Core 2.0, .NET 5.0. Libraries: RestSharp, 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, 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), **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 - 11.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx), **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/)), **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), **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**, **MySQL Schema**, **Protocol Buffer** |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Protocol Buffer**, **WSDL** |
## Table of contents
@@ -102,11 +110,10 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 5.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.0.0-SNAPSHOT/) | TBD | Major release with breaking changes (no fallback) |
| 5.0.0-beta3 (upcoming beta release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.0.0-SNAPSHOT/) | 01.11.2020 | Major beta release with breaking changes (no fallback) |
| [5.0.0-beta2](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.0.0-beta2) (latest beta release) | 04.09.2020 | Major beta release with breaking changes (no fallback) |
| [5.0.0-beta](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.0.0-beta) (latest beta release) | 30.06.2020 | Major beta release with breaking changes (no fallback) |
| [4.3.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.3.1) (latest stable release) | 06.05.2020 | Patch release (enhancements, bug fixes, etc) |
| 6.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.0.0-SNAPSHOT/) | Nov/Dec 2021 | Minor release with breaking changes (no fallback) |
| 5.3.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.3.0-SNAPSHOT/) | Sep/Oct 2021 | Minor release with breaking changes (with fallback) |
| [5.2.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.2.1) (latest stable release) | 016.08.2021 | Patch release (enhancements, bug fixes, etc) |
| [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
@@ -162,16 +169,16 @@ See the different versions of the [openapi-generator-cli](https://mvnrepository.
<!-- 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):
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.0.0-beta2/openapi-generator-cli-5.0.0-beta2.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.2.1/openapi-generator-cli-5.2.1.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.0.0-beta2/openapi-generator-cli-5.0.0-beta2.jar -O openapi-generator-cli.jar
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.2.1/openapi-generator-cli-5.2.1.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/5.0.0-beta2/openapi-generator-cli-5.0.0-beta2.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.2.1/openapi-generator-cli-5.2.1.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -255,7 +262,7 @@ To install, run `brew install openapi-generator`
Here is an example usage to generate a Ruby client:
```sh
openapi-generator generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g ruby -o /tmp/test/
openapi-generator generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g ruby -o /tmp/test/
```
To reinstall with the latest master, run `brew uninstall openapi-generator && brew install --HEAD openapi-generator`
@@ -263,7 +270,7 @@ 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 cask install adoptopenjdk12
brew install --cask adoptopenjdk12
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home/
```
@@ -290,7 +297,7 @@ Example:
```sh
docker run --rm -v "${PWD}:/local" openapitools/openapi-generator-cli generate \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g go \
-o /local/out/go
```
@@ -315,12 +322,12 @@ GEN_IP=$(docker inspect --format '{{.NetworkSettings.IPAddress}}' $CID)
# Execute an HTTP request to generate a Ruby client
> curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{"openAPIUrl": "https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml"}' \
-d '{"openAPIUrl": "https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml"}' \
'http://localhost:8888/api/gen/clients/ruby'
{"code":"c2d483.3.4672-40e9-91df-b9ffd18d22b8","link":"http://localhost:8888/api/gen/download/c2d483.3.4672-40e9-91df-b9ffd18d22b8"}
# Download the generated zip file
# Download the generated zip file
> wget http://localhost:8888/api/gen/download/c2d483.3.4672-40e9-91df-b9ffd18d22b8
# Unzip the file
@@ -351,7 +358,7 @@ Once built, `run-in-docker.sh` will act as an executable for openapi-generator-c
./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/2_0/petstore.yaml \
./run-in-docker.sh generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g go -o /gen/out/go-petstore --package-name=petstore # generates go client, outputs locally to ./out/go-petstore
```
@@ -389,14 +396,14 @@ Install it globally to get the CLI available on the command line:
```sh
npm install @openapitools/openapi-generator-cli -g
openapi-generator version
openapi-generator-cli version
```
<!-- RELEASE_VERSION -->
Or install a particular OpenAPI Generator version (e.g. v5.0.0-beta2):
To use a specific version of "openapi-generator-cli"
```sh
npm install @openapitools/openapi-generator-cli@cli-5.0.0-beta2 -g
openapi-generator-cli version-manager set 5.2.1
```
Or install it as dev-dependency:
@@ -407,20 +414,20 @@ npm install @openapitools/openapi-generator-cli -D
<!-- /RELEASE_VERSION -->
## [2 - Getting Started](#table-of-contents)
To generate a PHP client for [petstore.yaml](https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml), please run the following
To generate a PHP client for [petstore.yaml](https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml), please run the following
```sh
git clone https://github.com/openapitools/openapi-generator
cd openapi-generator
mvn 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/2_0/petstore.yaml \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g php \
-o /var/tmp/php_api_client
```
(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/2_0/petstore.yaml -g php -o c:\temp\php_api_client`)
(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/5.0.0-beta2/openapi-generator-cli-5.0.0-beta2.jar)
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.2.1/openapi-generator-cli-5.2.1.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`
@@ -430,20 +437,22 @@ To get a list of PHP specified options (which can be passed to the generator wit
## [3 - Usage](#table-of-contents)
### To generate a sample client library
You can build a client against the [Petstore API](https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml) as follows:
You can build a client against the [Petstore API](https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml) as follows:
```sh
./bin/java-petstore-okhttp-gson.sh
./bin/generate-samples.sh ./bin/configs/java-okhttp-gson.yaml
```
(On Windows, run `.\bin\windows\java-petstore-okhttp-gson.bat` instead)
(On Windows, please install [GIT Bash for Windows](https://gitforwindows.org/) to run the command above)
This script uses the default library, which is `okhttp-gson`. It will run the generator with this command:
```sh
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/2_0/petstore.yaml \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g java \
-t modules/openapi-generator/src/main/resources/Java \
--additional-properties artifactId=petstore-okhttp-gson,hideGenerationTimestamp:true \
-o samples/client/petstore/java/okhttp-gson
```
@@ -509,13 +518,7 @@ cd samples/client/petstore/java/okhttp-gson
mvn package
```
Other languages have petstore samples, too:
- [Swift5](https://github.com/OpenAPITools/openapi-generator/tree/master/samples/client/petstore/swift5)
- [Ruby](https://github.com/OpenAPITools/openapi-generator/tree/master/samples/client/petstore/ruby)
- [Kotlin](https://github.com/OpenAPITools/openapi-generator/tree/master/samples/client/petstore/kotlin)
... and more.
Other generators have [samples](https://github.com/OpenAPITools/openapi-generator/tree/master/samples) too.
### [3.1 - Customization](#table-of-contents)
@@ -549,7 +552,7 @@ When code is generated from this project, it shall be considered **AS IS** and o
### [3.5 - IDE Integration](#table-of-contents)
Here is a list of community-conitributed IDE plug-ins that integrate with OpenAPI Generator:
Here is a list of community-contributed IDE plug-ins that integrate with OpenAPI Generator:
- Eclipse: [Codewind OpenAPI Tools for Eclipse](https://www.eclipse.org/codewind/open-api-tools-for-eclipse.html) by [IBM](https://www.ibm.com)
- IntelliJ IDEA: [OpenAPI Generator](https://plugins.jetbrains.com/plugin/8433-openapi-generator) by [Jim Schubert](https://jimschubert.us/#/)
@@ -562,10 +565,13 @@ Here is a list of community-conitributed IDE plug-ins that integrate with OpenAP
## [4 - Companies/Projects using OpenAPI Generator](#table-of-contents)
Here are some companies/projects (alphabetical order) using OpenAPI Generator in production. To add your company/project to the list, please visit [README.md](README.md) and click on the icon to edit the page.
- [Aalborg University](https://www.aau.dk)
- [Adaptant Solutions AG](https://www.adaptant.io/)
- [adesso SE](https://www.adesso.de/)
- [Agoda](https://www.agoda.com/)
- [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/)
@@ -586,6 +592,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Cupix](https://www.cupix.com/)
- [Datadog](https://www.datadoghq.com)
- [DB Systel](https://www.dbsystel.de)
- [Devsupply](https://www.devsupply.com/)
- [DocSpring](https://docspring.com/)
- [dwango](https://dwango.co.jp/)
- [Edge Impulse](https://www.edgeimpulse.com/)
@@ -601,9 +608,12 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [GetYourGuide](https://www.getyourguide.com/)
- [GMO Pepabo](https://pepabo.com/en/)
- [GoDaddy](https://godaddy.com)
- [Gumtree](https://gumtree.com)
- [Here](https://developer.here.com/)
- [IBM](https://www.ibm.com/)
- [Instana](https://www.instana.com)
- [Interxion](https://www.interxion.com)
- [Inquisico](https://inquisico.com)
- [JustStar](https://www.juststarinfo.com)
- [k6.io](https://k6.io/)
- [Klarna](https://www.klarna.com/)
@@ -611,18 +621,24 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Kubernetes](https://kubernetes.io)
- [Linode](https://www.linode.com/)
- [Logicdrop](https://www.logicdrop.com)
- [Lumeris](https://www.lumeris.com)
- [LVM Versicherungen](https://www.lvm.de)
- [MailSlurp](https://www.mailslurp.com)
- [Médiavision](https://www.mediavision.fr/)
- [Metaswitch](https://www.metaswitch.com/)
- [MoonVision](https://www.moonvision.io/)
- [Myworkout](https://myworkout.com)
- [NamSor](https://www.namsor.com/)
- [Neverfail](https://www.neverfail.com/)
- [NeuerEnergy](https://neuerenergy.com)
- [Nokia](https://www.nokia.com/)
- [Options Clearing Corporation (OCC)](https://www.theocc.com/)
- [Openet](https://www.openet.com/)
- [openVALIDATION](https://openvalidation.io/)
- [Oracle](https://www.oracle.com/)
- [Paxos](https://www.paxos.com)
- [Plaid](https://plaid.com)
- [PLAID, Inc.](https://plaid.co.jp/)
- [Ponicode](https://ponicode.dev/)
- [Pricefx](https://www.pricefx.com/)
- [Prometheus/Alertmanager](https://github.com/prometheus/alertmanager)
@@ -634,21 +650,27 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [RepreZen API Studio](https://www.reprezen.com/swagger-openapi-code-generation-api-first-microservices-enterprise-development)
- [REST United](https://restunited.com)
- [Robotinfra](https://www.robotinfra.com)
- [SmartHR](https://smarthr.co.jp/)
- [Sony Interactive Entertainment](https://www.sie.com/en/index.html)
- [Splitit](https://www.splitit.com/)
- [Stingray](http://www.stingray.com)
- [Suva](https://www.suva.ch/)
- [Telstra](https://dev.telstra.com)
- [The University of Aizu](https://www.u-aizu.ac.jp/en/)
- [TravelTime platform](https://www.traveltimeplatform.com/)
- [TribalScale](https://www.tribalscale.com)
- [TUI InfoTec GmbH](http://www.tui-infotec.com/)
- [Twitter](https://twitter.com)
- [unblu inc.](https://www.unblu.com/)
- [Veamly](https://www.veamly.com/)
- [VMWare](https://www.vmware.com/)
- [wbt-solutions](https://www.wbt-solutions.de/)
- [Woleet](https://www.woleet.io/)
- [WSO2](https://wso2.com/)
- [Vouchery.io](https://vouchery.io)
- [Xero](https://www.xero.com/)
- [Yahoo Japan](https://www.yahoo.co.jp/)
- [viadee](https://www.viadee.de/)
- [Vonage](https://vonage.com)
- [YITU Technology](https://www.yitutech.com/)
- [Yelp](https://www.yelp.com/)
@@ -675,7 +697,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2019/01/03 - [Calling a Swagger service from Apex using openapi-generator](https://lekkimworld.com/2019/01/03/calling-a-swagger-service-from-apex-using-openapi-generator/) by [Mikkel Flindt Heisterberg](https://lekkimworld.com)
- 2019/01/13 - [OpenAPI GeneratorでRESTful APIの定義書から色々自動生成する](https://ky-yk-d.hatenablog.com/entry/2019/01/13/234108) by [@ky_yk_d](https://twitter.com/ky_yk_d)
- 2019/01/20 - [Contract-First API Development with OpenAPI Generator and Connexion](https://medium.com/commencis/contract-first-api-development-with-openapi-generator-and-connexion-b21bbf2f9244) by [Anil Can Aydin](https://github.com/anlcnydn)
- 2019/01/30 - [Rapid Application Development With API First Approach Using Open-API Generator](https://dzone.com/articles/rapid-api-development-using-open-api-generator) by [Milan Sonkar](https://dzone.com/users/828329/milan_sonkar.html)
- 2019/01/30 - [Rapid Application Development With API First Approach Using Open-API Generator](https://dzone.com/articles/rapid-api-development-using-open-api-generator) by [Milan Sonkar](https://dzone.com/users/828329/milan_sonkar.html)
- 2019/02/02 - [平静を保ち、コードを生成せよ 〜 OpenAPI Generator誕生の背景と軌跡 〜](https://speakerdeck.com/akihito_nakano/gunmaweb34) by [中野暁人](https://github.com/ackintosh) at [Gunma.web #34 スキーマ駆動開発](https://gunmaweb.connpass.com/event/113974/)
- 2019/02/20 - [An adventure in OpenAPI V3 code generation](https://mux.com/blog/an-adventure-in-openapi-v3-api-code-generation/) by [Phil Cluff](https://mux.com/blog/author/philc/)
- 2019/02/26 - [Building API Services: A Beginners Guide](https://medium.com/google-cloud/building-api-services-a-beginners-guide-7274ae4c547f) by [Ratros Y.](https://medium.com/@ratrosy) in [Google Cloud Platofrm Blog](https://medium.com/google-cloud)
@@ -764,6 +786,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2020-05-22 - [TypeScript REST API Client](https://dev.to/unhurried/typescript-rest-api-client-4in3) by ["unhurried"](https://dev.to/unhurried)
- 2020-05-28 - [【使用 lotify + Swagger 建置可共用的 LINE Notify bot】 - #NiJia @ Chatbot Developer Taiwan 第 #19 小聚](https://www.youtube.com/watch?v=agYVz6dzh1I) by [Chatbot Developer Taiwan](https://www.youtube.com/channel/UCxeYUyZNnHmpX23YNF-ewvw)
- 2020-05-28 - [Building APIs with Laravel using OpenAPI](https://www.youtube.com/watch?v=xexLvQqAhiA) by [Chris Tankersley](https://github.com/dragonmantank) at [Laracon EU](https://laracon.eu/)
- 2020-06-12 - [Interoperability by construction: code generation for Arrowhead Clients](https://ieeexplore.ieee.org/document/9274746) by Michele Albano, Brian Nielsen at [2020 IEEE Conference on Industrial Cyberphysical Systems (ICPS)](https://ieeexplore.ieee.org/xpl/conhome/9274544/proceeding)
- 2020-06-23 - [新規サーバーアプリケーションにTypeScriptを採用してみた](https://www.cam-inc.co.jp/news/20200623) at [CAM Tech Blog](https://www.cam-inc.co.jp/news/tech-blog/)
- 2020-06-29 - [Artifact Abstract: Deployment of APIs on Android Mobile Devices and Microcontrollers](https://ieeexplore.ieee.org/document/9127353) by [Sergio Laso ; Marino Linaje ; Jose Garcia-Alonso ; Juan M. Murillo ; Javier Berrocal](https://ieeexplore.ieee.org/document/9127353/authors#authors) at [2020 IEEE International Conference on Pervasive Computing and Communications (PerCom)](https://ieeexplore.ieee.org/xpl/conhome/9125449/proceeding)
- 2020-07-07 - [5 Best API Documentation Tools](https://blog.dreamfactory.com/5-best-api-documentation-tools/) by Susanna Bouse at [DreamFactory Blog](https://blog.dreamfactory.com/)
@@ -778,6 +801,37 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2020-09-10 - [Introduction to OpenAPI with Instana](https://www.instana.com/blog/introduction-to-openapi-with-instana/) by [Cedric Ziel](https://www.instana.com/blog/author/cedricziel/) at [Instana Blog](https://www.instana.com/blog/)
- 2020-09-17 - [Generate PowerShellSDK using openapi-generator](https://medium.com/@ghufz.learn/generate-powershellsdk-using-openapi-generator-33b700891e33) by [Ghufran Zahidi](https://medium.com/@ghufz.learn)
- 2020-09-24 - [How to automate API code generation (OpenAPI/Swagger) and boost productivity - Tutorial with React Native featuring TypeScript](https://medium.com/@sceleski/how-to-automate-api-code-generation-openapi-swagger-and-boost-productivity-1176a0056d8a) by [Sanjin Celeski](https://medium.com/@sceleski)
- 2020-09-25 - [Generate OpenAPI Angular Client](https://medium.com/@pguso/generate-openapi-angular-client-8c9288e8bbd4) by [Patric](https://medium.com/@pguso)
- 2020-10-24 - [Working with Microsoft Identity - React Native Client](https://www.josephguadagno.net/2020/10/24/working-with-microsoft-identity-react-native-client) by [Joseph Guadagno](https://www.josephguadagno.net/)
- 2020-10-31 - [[B2] OpenAPI Specification으로 타입-세이프하게 API 개발하기: 희망편 VS 절망편](https://www.youtube.com/watch?v=J4JHLESAiFk) by 최태건 at [FEConf 2020](https://2020.feconf.kr/)
- 2020-11-05 - [Automated REST-Api Code Generation: Wie IT-Systeme miteinander sprechen](https://www.massiveart.com/blog/automated-rest-api-code-generation-wie-it-systeme-miteinander-sprechen) by Stefan Rottensteiner at [MASSIVE ART Blog](https://www.massiveart.com/blog)
- 2020-12-01 - [OpenAPI GeneratorでGoのAPIサーバー/クライアントコードを自動生成する](https://qiita.com/saki-engineering/items/b20d8b6074c4da9664a5) by [@saki-engineering](https://qiita.com/saki-engineering)
- 2020-12-04 - [Scaling the Test Coverage of OpenAPI Generator for 30+ Programming Languages](https://www.youtube.com/watch?v=7Lke9dHRqT0) by [William Cheng](https://github.com/wing328) at [Open Source Summit Japan + Automotive Linux Summit 2020](https://events.linuxfoundation.org/archive/2020/open-source-summit-japan/) ([Slides](https://speakerdeck.com/wing328/scaling-the-test-coverage-of-openapi-generator-for-30-plus-programming-languages))
- 2020-12-09 - [プロジェクトにOpenAPI Generatorで自動生成された型付きAPI Clientを導入した話](https://qiita.com/yoshifujiT/items/905c18700ede23f40840) by [@yoshifujiT](https://github.com/yoshifujiT)
- 2020-12-15 - [Next.js + NestJS + GraphQLで変化に追従するフロントエンドへ 〜 ショッピングクーポンの事例紹介](https://techblog.yahoo.co.jp/entry/2020121530052952/) by [小倉 陸](https://github.com/ogugu9) at [Yahoo! JAPAN Tech Blog](https://techblog.yahoo.co.jp/)
- 2021-01-08 - [Hello, New API Part 1](https://www.nginx.com/blog/hello-new-api-part-1/) by [Jeremy Schulman](https://www.nginx.com/people/jeremy-schulman/) at [Major League Baseball](https://www.mlb.com)
- 2021-01-18 - [「アプリ開発あるある」を疑うことから始まった、API Clientコードの自動生成【デブスト2020】](https://codezine.jp/article/detail/13406?p=2) by [CodeZine編集部](https://codezine.jp/author/1)
- 2021-02-05 - [REST-API-Roundtrip with SpringDoc and OpenAPI Generator](https://blog.viadee.de/en/rest-api-roundtrip) by [Benjamin Klatt](https://twitter.com/benklatt) at [viadee](https://www.viadee.de/en/)
- 2021-02-17 - [REST-API-Roundtrip with SpringDoc and OpenAPI Generator](https://medium.com/nerd-for-tech/rest-api-roundtrip-with-springdoc-and-openapi-generator-30bd27ccf698) by [cloud @viadee](https://cloud-viadee.medium.com/)
- 2021-03-08 - [OpenAPI Generator 工具的躺坑尝试](https://blog.csdn.net/u013019701/article/details/114531975) by [独家雨天](https://blog.csdn.net/u013019701) at [CSDN官方博客](https://blog.csdn.net/)
- 2021-03-16 - [如何基于 Swagger 使用 OpenAPI Generator 生成 JMeter 脚本?](https://cloud.tencent.com/developer/article/1802704) by [高楼Zee](https://cloud.tencent.com/developer/user/5836255) at [腾讯云专栏](https://cloud.tencent.com/developer/column)
- 2021-03-24 - [openapi-generator-cli による TypeScript 型定義](https://zenn.dev/takepepe/articles/openapi-generator-cli-ts) by [Takefumi Yoshii](https://zenn.dev/takepepe)
- 2021-03-28 - [Trying out NestJS part 4: Generate Typescript clients from OpenAPI documents](https://dev.to/arnaudcortisse/trying-out-nestjs-part-4-generate-typescript-clients-from-openapi-documents-28mk) by [Arnaud Cortisse](https://dev.to/arnaudcortisse)
- 2021-03-31 - [Open API Server Implementation Using OpenAPI Generator](https://www.baeldung.com/java-openapi-generator-server) at [Baeldung](https://www.baeldung.com/)
- 2021-03-31 - [使用OpenAPI Generator實現Open API Server](https://www.1ju.org/article/java-openapi-generator-server) at [億聚網](https://www.1ju.org/)
- 2021-04-19 - [Introducing Twilios OpenAPI Specification Beta](https://www.twilio.com/blog/introducing-twilio-open-api-specification-beta) by [GARETH PAUL JONES](https://www.twilio.com/blog/author/gpj) at [Twilio Blog](https://www.twilio.com/blog)
- 2021-04-22 - [Leveraging OpenApi strengths in a Micro-Service environment](https://medium.com/unibuddy-technology-blog/leveraging-openapi-strengths-in-a-micro-service-environment-3d7f9e7c26ff) by Nicolas Jellab at [Unibuddy Technology Blog](https://medium.com/unibuddy-technology-blog)
- 2021-04-27 - [From zero to publishing PowerShell API clients in PowerShell Gallery within minutes](https://speakerdeck.com/wing328/from-zero-to-publishing-powershell-api-clients-in-powershell-gallery-within-minutes) by [William Cheng](https://github.com/wing328) at [PowerShell + DevOps Global Summit 2021](https://events.devopscollective.org/event/powershell-devops-global-summit-2021/)
- 2021-05-31 - [FlutterでOpen Api Generator(Swagger)を使う](https://aakira.app/blog/2021/05/flutter-open-api/) by [AAkira](https://twitter.com/_a_akira)
- 2021-06-22 - [Rest API Documentation and Client Generation With OpenAPI](https://dzone.com/articles/rest-api-documentation-and-client-generation-with) by [Prasanth Gullapalli](https://dzone.com/users/1011797/prasanthnath.g@gmail.com.html)
- 2021-07-16 - [銀行事業のサーバーサイド開発について / LINE 京都開発室 エンジニア採用説明会](https://www.youtube.com/watch?v=YrrKQHxLPpQ) by 野田誠人, Robert Mitchell
- 2021-07-29 - [How To Rewrite a Huge Codebase](https://dzone.com/articles/how-to-rewrite-a-huge-code-base) by [Curtis Poe](https://dzone.com/users/4565446/publiusovidius.html)
- 2021-08-21 - [Generating Client APIs using Swagger Part 1](https://medium.com/@flowsquad/generating-client-apis-using-swagger-part-1-2d46f13f5e92) by [FlowSquad.io](https://medium.com/@flowsquad)
- 2021-09-11 - [Invoking AWS ParallelCluster API](https://docs.aws.amazon.com/parallelcluster/latest/ug/api-reference-v3.html) at [AWS ParallelCluster API official documentation](https://docs.aws.amazon.com/parallelcluster/latest/ug/api-reference-v3.html)
- 2021-09-20 - [OpenAPI Generator - The Babel Fish of the API World](https://www.youtube.com/watch?v=s2zMtwd5klg) by [Cliffano Subagio (Principal Engineer at Shine Solutions)](https://github.com/cliffano) at [Apidays LIVE Australia 2021](https://www.apidays.global/australia2021/)
- 2021-10-02 - [How to Write Fewer Lines of Code with the OpenAPI Generator](https://hackernoon.com/how-to-write-fewer-lines-of-code-with-the-openapi-generator) by [Mikhail Alfa](https://hackernoon.com/u/alphamikle)
- 2021-10-12 - [OpenAPI Generator : 4000 étoiles sur GitHub et des spaghettis](https://www.youtube.com/watch?v=9hEsNBSqTFk) by [Jérémie Bresson](https://github.com/jmini) at [Devoxx FR 2021](https://cfp.devoxx.fr/2021/speaker/jeremie_bresson)
- 2021-10-17 - [Generate a TypeScript HTTP Client From An OpenAPI Spec In DotNET 5](https://richardwillis.info/blog/generate-a-type-script-http-client-from-an-open-api-spec-in-dot-net-5) by [Richard Willis](https://github.com/badsyntax)
## [6 - About Us](#table-of-contents)
@@ -807,16 +861,19 @@ Here is a list of template creators:
* Bash: @bkryza
* C: @PowerOfCreation @zhemant [:heart:](https://www.patreon.com/zhemant)
* C++ REST: @Danielku15
* C++ Tiny: @AndersSpringborg @kaareHH @michelealbano @mkakbas
* C++ UE4: @Kahncode
* C# (.NET 2.0): @who
* C# (.NET Standard 1.3 ): @Gronsak
* C# (.NET 4.5 refactored): @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* C# (HttpClient): @Blackclaws
* Clojure: @xhh
* Crystal: @wing328
* Dart: @yissachar
* Dart (refactor): @joernahrens
* Dart 2: @swipesight
* Dart (Jaguar): @jaumard
* Dart (Dio): @athornz
* Dart (Dio): @josh-burton
* Elixir: @niku
* Elm: @eriktim
* Eiffel: @jvelilla
@@ -838,6 +895,7 @@ Here is a list of template creators:
* Java (Google APIs Client Library): @charlescapps
* Java (Rest-assured): @viclovsky
* Java (Java 11 Native HTTP client): @bbdouglas
* Java (Apache HttpClient): @harrywhite4
* Javascript/NodeJS: @jfiala
* Javascript (Apollo DataSource): @erithmetic
* Javascript (Closure-annotated Angular) @achew22
@@ -850,9 +908,10 @@ Here is a list of template creators:
* OCaml: @cgensoul
* Perl: @wing328 [:heart:](https://www.patreon.com/wing328)
* PHP (Guzzle): @baartosz
* PHP (with Data Transfer): @Articus
* PowerShell: @beatcracker
* PowerShell (refactored in 5.0.0): @wing328
* Python-experimental: @spacether
* Python: @spacether
* R: @ramnov
* Ruby (Faraday): @meganemura @dkliban
* Rust: @farcaller
@@ -870,10 +929,11 @@ Here is a list of template creators:
* TypeScript (Angular7): @topce
* TypeScript (Axios): @nicokoenig
* TypeScript (Fetch): @leonyu
* TypeScript (Inversify): @gualtierim
* TypeScript (jQuery): @bherila
* TypeScript (Nestjs): @vfrank66
* TypeScript (Node): @mhardorf
* TypeScript (Rxjs): @denyo
* TypeScript (Inversify): @gualtierim
* TypeScript (redux-query): @petejohansonxo
* Server Stubs
* Ada: @stcarrez
@@ -887,9 +947,11 @@ Here is a list of template creators:
* Erlang Server: @galaxie
* F# (Giraffe) Server: @nmfisher
* Go Server: @guohuang
* Go (Echo) Server: @ph4r5h4d
* Go (Gin) Server: @kemokemo
* GraphQL Express Server: @renepardon
* Haskell Servant: @algas
* Haskell Yesod: @yotsuya
* Java MSF4J: @sanjeewa-malalgoda
* Java Spring Boot: @diyfr
* Java Undertow: @stevehu
@@ -906,9 +968,11 @@ Here is a list of template creators:
* NodeJS Express: @YishTish
* PHP Laravel: @renepardon
* PHP Lumen: @abcsun
* PHP Mezzio (with Path Handler): @Articus
* PHP Slim: @jfastnacht
* PHP Slim4: @ybelenko
* PHP Symfony: @ksm2
* PHP Zend Expressive (with Path Handler): @Articus
* Python FastAPI: @krjakbrjak
* Python AIOHTTP: @Jyhess
* Ruby on Rails 5: @zlx
* Rust (rust-server): @metaswitch
@@ -927,8 +991,10 @@ Here is a list of template creators:
* Schema
* Avro: @sgadouar
* GraphQL: @wing328 [:heart:](https://www.patreon.com/wing328)
* Ktorm: @Luiz-Monad
* MySQL: @ybelenko
* Protocol Buffer: @wing328
* WSDL @adessoDpd
:heart: = Link to support the contributor directly
@@ -961,7 +1027,7 @@ If you want to join the committee, please kindly apply by sending an email to te
#### Members of Technical Committee
| Languages | Member (join date) |
| Languages/Generators | Member (join date) |
| :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ActionScript | |
| Ada | @stcarrez (2018/02) @michelealbano (2018/02) |
@@ -970,19 +1036,20 @@ 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) |
| C# | @mandrean (2017/08) @frankyjuang (2019/09) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) |
| Clojure | |
| Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) @athornz (2019/12) @amondnet (2019/12) |
| Dart | @jaumard (2018/09) @josh-burton (2019/12) @amondnet (2019/12) @sbu-WBT (2020/12) @kuhnroyal (2020/12) @agilob (2020/12) @ahmednfwela (2021/08) |
| Eiffel | @jvelilla (2017/09) |
| Elixir | @mrmstn (2018/12) |
| 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) @bkabrda (2019/07) |
| Go | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/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) @bkabrda (2020/01) |
| 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) @nmuesch (2021/01) |
| JMeter | @kannkyo (2021/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) |
| Lua | @daurnimator (2017/08) |
| Nim | |
@@ -1020,7 +1087,7 @@ OpenAPI Generator is a fork of [Swagger Codegen](https://github.com/swagger-api/
- [Daniel](https://github.com/Danielku15)
- [Emiliano Bonassi](https://github.com/emilianobonassi)
- [Erik Timmers](https://github.com/eriktim)
- [Esteban Marin](https://github.com/macjohnny)
- [Esteban Gehring](https://github.com/macjohnny)
- [Gustavo Paz](https://github.com/gustavoapaz)
- [Javier Velilla](https://github.com/jvelilla)
- [Jean-François Côté](https://github.com/JFCote)
@@ -1063,7 +1130,7 @@ OpenAPI Generator is a fork of [Swagger Codegen](https://github.com/swagger-api/
## [7 - License](#table-of-contents)
-------
Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech)
Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech)
Copyright 2018 SmartBear Software
Licensed under the Apache License, Version 2.0 (the "License");

View File

@@ -29,15 +29,34 @@ install:
- cmd: java -version
- cmd: gradle -v
- cmd: dir/w
- git clone https://github.com/wing328/swagger-samples
- git clone https://github.com/wing328/swagger-samples --depth 1
- ps: Start-Process -FilePath 'C:\maven\apache-maven-3.2.5\bin\mvn' -ArgumentList 'jetty:run' -WorkingDirectory "$env:appveyor_build_folder\swagger-samples\java\java-jersey-jaxrs-ci"
- ps: Start-Sleep -s 15
- ps: $PSVersionTable.PSVersion
- ps: Install-Module Pester -Force -Scope CurrentUser
- 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 (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 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"
@@ -45,16 +64,26 @@ build_script:
- 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"
#- 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
test_script:
# test c# API client (multiple frameworks)
- dotnet test samples\client\petstore\csharp-netcore\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
# 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
# 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
# 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
# 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)
@@ -66,7 +95,7 @@ test_script:
# generate all petstore clients (openapi3)
# - .\bin\openapi3\windows\run-all-petstore.cmd
# test ps pestore
# test ps petstore
- ps: |
$ErrorActionPreference = "Stop"
cd samples\client\petstore\powershell\

View File

@@ -0,0 +1,7 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnetcore/2.1
additionalProperties:
packageGuid: '{3C799344-F285-4669-8FD5-7ED9B795D5C5}'
aspnetCoreVersion: "2.2"

View File

@@ -0,0 +1,9 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-3.1
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnetcore/3.0
additionalProperties:
packageGuid: '{3C799344-F285-4669-8FD5-7ED9B795D5C5}'
# comment out below as 3.1 the default
#aspnetCoreVersion: "3.1"
userSecretsGuid: "76e9e993-9159-441c-9c5b-fe95e7f4f020"

View File

@@ -0,0 +1,7 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-5.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnetcore/3.0
additionalProperties:
packageGuid: '{3C799344-F285-4669-8FD5-7ED9B795D5C5}'
aspnetCoreVersion: "5.0"

View File

@@ -0,0 +1,7 @@
generatorName: cpp-qt-client
outputDir: samples/client/petstore/cpp-qt
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-qt-client
additionalProperties:
cppNamespace: test_namespace
modelNamePrefix: PFX

View File

@@ -0,0 +1,4 @@
generatorName: cpp-qt-qhttpengine-server
outputDir: samples/server/petstore/cpp-qt-qhttpengine-server
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-qt-qhttpengine-server

View File

@@ -1,4 +0,0 @@
generatorName: cpp-qt5-qhttpengine-server
outputDir: samples/server/petstore/cpp-qt5-qhttpengine-server
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-qt5-qhttpengine-server

View File

@@ -0,0 +1,7 @@
generatorName: cpp-tiny
outputDir: samples/client/petstore/cpp-tiny
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-tiny
additionalProperties:
hideGenerationTimestamp: "true"
controller: "esp32"

9
bin/configs/crystal.yaml Normal file
View File

@@ -0,0 +1,9 @@
generatorName: crystal
outputDir: samples/client/petstore/crystal
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/crystal
additionalProperties:
shardVersion: 1.0.0
moduleName: Petstore
shardName: petstore
strictSpecBehavior: false

View File

@@ -1,5 +1,6 @@
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,12 @@
# for .net standard httpclient
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-httpclient
inputSpec: modules/openapi-generator/src/test/resources/3_0/java/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

@@ -0,0 +1,11 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-net47
inputSpec: modules/openapi-generator/src/test/resources/3_0/java/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

@@ -0,0 +1,11 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-net5.0
inputSpec: modules/openapi-generator/src/test/resources/3_0/java/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: net5.0

View File

@@ -7,3 +7,4 @@ additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true

View File

@@ -0,0 +1,8 @@
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;netcoreapp3.0
useCompareNetObjects: "true"

View File

@@ -0,0 +1,12 @@
# for .net standard
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient-ConditionalSerialization
inputSpec: modules/openapi-generator/src/test/resources/3_0/java/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

@@ -0,0 +1,11 @@
generatorName: dart-dio-next
outputDir: samples/openapi3/client/petstore/dart-dio-next/dio_http_petstore_client_lib_fake
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/dart/libraries/dio
typeMappings:
Client: "ModelClient"
File: "ModelFile"
EnumClass: "ModelEnumClass"
additionalProperties:
hideGenerationTimestamp: "true"
dioLibrary: "dio_http"

View File

@@ -0,0 +1,10 @@
generatorName: dart-dio-next
outputDir: samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/dart/libraries/dio
typeMappings:
Client: "ModelClient"
File: "ModelFile"
EnumClass: "ModelEnumClass"
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,10 @@
generatorName: dart-dio
outputDir: samples/openapi3/client/petstore/dart-dio/petstore_client_lib_fake
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/dart-dio
typeMappings:
Client: "ModelClient"
File: "ModelFile"
EnumClass: "ModelEnumClass"
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,6 @@
generatorName: dart-dio
outputDir: samples/openapi3/client/petstore/dart-dio/petstore_client_lib
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart-dio
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -1,7 +0,0 @@
generatorName: dart-jaguar
outputDir: samples/client/petstore/dart-jaguar/flutter_petstore/openapi
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart-jaguar
additionalProperties:
pubName: openapi
hideGenerationTimestamp: "true"

View File

@@ -1,8 +0,0 @@
generatorName: dart-jaguar
outputDir: samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-proto.yaml
templateDir: modules/openapi-generator/src/main/resources/dart-jaguar
additionalProperties:
serialization: proto
pubName: openapi
hideGenerationTimestamp: "true"

View File

@@ -1,7 +0,0 @@
generatorName: dart-jaguar
outputDir: samples/client/petstore/dart-jaguar/openapi
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart-jaguar
additionalProperties:
hideGenerationTimestamp: "true"
pubName: openapi

View File

@@ -1,8 +0,0 @@
generatorName: dart-jaguar
outputDir: samples/client/petstore/dart-jaguar/openapi_proto
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-proto.yaml
templateDir: modules/openapi-generator/src/main/resources/dart-jaguar
additionalProperties:
serialization: proto
pubName: openapi
hideGenerationTimestamp: "true"

View File

@@ -1,8 +0,0 @@
generatorName: dart
outputDir: samples/client/petstore/dart/openapi-browser-client
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart
additionalProperties:
supportDart2: "false"
hideGenerationTimestamp: "true"
browserClient: "true"

View File

@@ -1,8 +0,0 @@
generatorName: dart
outputDir: samples/client/petstore/dart/flutter_petstore/openapi
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart
additionalProperties:
supportDart2: "false"
hideGenerationTimestamp: "true"
browserClient: "false"

View File

@@ -1,8 +0,0 @@
generatorName: dart
outputDir: samples/client/petstore/dart/openapi
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart
additionalProperties:
supportDart2: "false"
hideGenerationTimestamp: "true"
browserClient: "false"

View File

@@ -0,0 +1,9 @@
generatorName: dart
outputDir: samples/openapi3/client/petstore/dart2/petstore_client_lib_fake
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/dart2
typeMappings:
Client: "ModelClient"
File: "ModelFile"
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,6 @@
generatorName: dart
outputDir: samples/openapi3/client/petstore/dart2/petstore_client_lib
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart2
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -1,6 +0,0 @@
generatorName: dart
outputDir: samples/client/petstore/dart2/petstore_client_lib
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart2
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -1,6 +1,6 @@
generatorName: elixir
outputDir: samples/client/petstore/elixir
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/elixir
additionalProperties:
invokerPackage: OpenapiPetstore

View File

@@ -0,0 +1,6 @@
generatorName: go-echo-server
outputDir: samples/server/petstore/go-echo-server
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/go-echo-server
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,9 @@
generatorName: go-server
outputDir: samples/server/petstore/go-chi-server
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/go-server
additionalProperties:
hideGenerationTimestamp: "true"
packageName: petstoreserver
addResponseHeaders: true
router: "chi"

View File

@@ -5,3 +5,4 @@ templateDir: modules/openapi-generator/src/main/resources/go-server
additionalProperties:
hideGenerationTimestamp: "true"
packageName: petstoreserver
addResponseHeaders: true

View File

@@ -0,0 +1,9 @@
generatorName: go-server
outputDir: samples/server/petstore/go-server-required
inputSpec: modules/openapi-generator/src/test/resources/3_0/server-required.yaml
templateDir: modules/openapi-generator/src/main/resources/go-server
additionalProperties:
hideGenerationTimestamp: "true"
packageName: petstoreserver
addResponseHeaders: true
router: "chi"

View File

@@ -2,3 +2,5 @@ generatorName: haskell-http-client
outputDir: samples/client/petstore/haskell-http-client
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/haskell-http-client
additionalProperties:
queryExtraUnreserved: ''

View File

@@ -0,0 +1,6 @@
generatorName: haskell-yesod
outputDir: samples/server/petstore/haskell-yesod
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/haskell-yesod
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,8 @@
generatorName: java
outputDir: samples/client/petstore/java/apache-httpclient
library: apache-httpclient
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-apache-httpclient
hideGenerationTimestamp: true

View File

@@ -1,7 +1,7 @@
generatorName: java
outputDir: samples/client/petstore/java/feign
library: feign
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
booleanGetterPrefix: is

View File

@@ -2,6 +2,7 @@ generatorName: java
outputDir: samples/client/petstore/java/jersey2-java8
library: jersey2
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-jersey2-java8
hideGenerationTimestamp: true

View File

@@ -10,3 +10,4 @@ additionalProperties:
dateLibrary: java8
useOneOfDiscriminatorLookup: true
disallowAdditionalPropertiesIfNotPresent: false
gradleProperties: "\n# JVM arguments\norg.gradle.jvmargs=-Xmx2024m -XX:MaxPermSize=512m\n# set timeout\norg.gradle.daemon.idletimeout=3600000\n# show all warnings\norg.gradle.warning.mode=all"

View File

@@ -2,6 +2,7 @@ generatorName: java
outputDir: samples/openapi3/client/extensions/x-auth-id-alias/java/jersey2-java8
library: jersey2
inputSpec: modules/openapi-generator/src/test/resources/3_0/extensions/x-auth-id-alias.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: openapi3-extensions-x-auth-id-alias-jersey2-java8
hideGenerationTimestamp: true

View File

@@ -0,0 +1,11 @@
generatorName: java
outputDir: samples/client/petstore/java/jersey2-java8-localdatetime
library: jersey2
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-jersey2-java8-localdatetime
hideGenerationTimestamp: "true"
dateLibrary: java8-localdatetime
java8: true
delegatePattern: true

View File

@@ -0,0 +1,9 @@
generatorName: java-micronaut-client
outputDir: samples/client/petstore/java-micronaut-client/
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
additionalProperties:
artifactId: petstore-micronaut
hideGenerationTimestamp: "true"
configureAuth: "false"
build: "all"
test: "spock"

View File

@@ -2,5 +2,6 @@ generatorName: java
outputDir: samples/client/petstore/java/microprofile-rest-client
library: microprofile
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: microprofile-rest-client

View File

@@ -0,0 +1,9 @@
generatorName: java
outputDir: samples/client/petstore/java/okhttp-gson-dynamicOperations
library: okhttp-gson
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-okhttp-gson-dynamicoperations
hideGenerationTimestamp: "true"
dynamicOperations: "true"

View File

@@ -0,0 +1,9 @@
generatorName: java
outputDir: samples/client/others/java/okhttp-gson-streaming
library: okhttp-gson
inputSpec: modules/openapi-generator/src/test/resources/3_0/streaming.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-okhttp-gson
hideGenerationTimestamp: "true"
supportStreaming: true

View File

@@ -2,6 +2,7 @@ generatorName: java
outputDir: samples/client/petstore/java/resteasy
library: resteasy
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-resteasy
hideGenerationTimestamp: "true"

View File

@@ -2,7 +2,9 @@ generatorName: java
outputDir: samples/client/petstore/java/resttemplate-withXml
library: resttemplate
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
java8: true
withXml: "true"
artifactId: petstore-resttemplate-withxml
hideGenerationTimestamp: "true"

View File

@@ -2,6 +2,8 @@ generatorName: java
outputDir: samples/client/petstore/java/resttemplate
library: resttemplate
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-resttemplate
hideGenerationTimestamp: "true"
java8: true

View File

@@ -2,6 +2,7 @@ generatorName: java
outputDir: samples/client/petstore/java/retrofit2-play26
library: retrofit2
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
usePlayWS: "true"
enableBuilderSupport: "true"

View File

@@ -0,0 +1,8 @@
generatorName: java
outputDir: samples/client/petstore/java/webclient-nulable-arrays
library: webclient
inputSpec: modules/openapi-generator/src/test/resources/3_0/schema-with-nullable-arrays.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-webclient-nullable-arrays
hideGenerationTimestamp: "true"

View File

@@ -1,7 +1,8 @@
generatorName: java
outputDir: samples/client/petstore/java/webclient
library: webclient
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-webclient
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,7 @@
generatorName: jaxrs-cxf-cdi
outputDir: samples/server/petstore/jaxrs-cxf-cdi-default-value
inputSpec: modules/openapi-generator/src/test/resources/3_0/issue_8535.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi
additionalProperties:
hideGenerationTimestamp: "true"
artifactId: jaxrs-cxf-cdi-default-value

View File

@@ -0,0 +1,7 @@
generatorName: jaxrs-resteasy
outputDir: samples/server/petstore/jaxrs-resteasy/default-value
inputSpec: modules/openapi-generator/src/test/resources/3_0/issue_8535.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy
additionalProperties:
hideGenerationTimestamp: "true"
artifactId: jaxrs-resteasy-default-value

View File

@@ -0,0 +1,8 @@
generatorName: jaxrs-resteasy
outputDir: samples/server/petstore/jaxrs-resteasy/java8
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy
additionalProperties:
artifactId: jaxrs-resteasy-java8-server
hideGenerationTimestamp: "true"
dateLibrary: java8

View File

@@ -1,6 +1,7 @@
generatorName: jaxrs-spec
outputDir: samples/server/petstore/jaxrs-spec-interface
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS/spec
additionalProperties:
artifactId: jaxrs-spec-interface-petstore-server
interfaceOnly: "true"

View File

@@ -1,6 +1,7 @@
generatorName: jaxrs-spec
outputDir: samples/server/petstore/jaxrs-spec
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS/spec
additionalProperties:
artifactId: jaxrs-spec-petstore-server
serializableModel: "true"

View File

@@ -0,0 +1,8 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-enum-default-value
inputSpec: modules/openapi-generator/src/test/resources/3_0/kotlin/issue10591-enum-defaultValue.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-enum-default-value
serializableModel: "true"
dateLibrary: java8

View File

@@ -5,3 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
requestDateConverter: toString
artifactId: kotlin-petstore-json-request-string
parcelizeModels: true
supportAndroidApiLevel25AndBelow: true

View File

@@ -0,0 +1,10 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-retrofit2-kotlinx_serialization
library: jvm-retrofit2
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
serializationLibrary: kotlinx_serialization
artifactId: kotlin-petstore-retrofit2-kotlinx_serialization
enumPropertyNaming: UPPERCASE
serializableModel: "true"

View File

@@ -0,0 +1,9 @@
generatorName: kotlin-spring
outputDir: samples/server/petstore/kotlin-springboot-delegate
library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-spring
additionalProperties:
delegatePattern: "true"
swaggerAnnotations: "true"
beanValidations: "true"

View File

@@ -1,10 +1,10 @@
generatorName: kotlin-spring
outputDir: samples/server/petstore/kotlin-springboot-reactive
library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-spring
additionalProperties:
serviceImplementation: "true"
library: spring-boot
reactive: "true"
swaggerAnnotations: "true"
beanValidations: "true"

View File

@@ -1,10 +1,10 @@
generatorName: kotlin-spring
outputDir: samples/server/petstore/kotlin-springboot
library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-spring
additionalProperties:
serviceImplementation: "true"
library: spring-boot
serializableModel: "true"
swaggerAnnotations: "true"
beanValidations: "true"

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