Compare commits

...

934 Commits

Author SHA1 Message Date
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
15503 changed files with 672002 additions and 265090 deletions

118
.circleci/config.yml Normal file
View File

@@ -0,0 +1,118 @@
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: 3
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
nvm alias default stable
# 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

@@ -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": [

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.1.x`, `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

@@ -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
@@ -49,7 +50,7 @@ jobs:
run: mvn -nsu -B --quiet -Djacoco.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress clean install --file pom.xml ${{ matrix.flags }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v2.2.4
if: matrix.java == '8' && matrix.os == 'ubuntu-latest'
with:
name: artifact
@@ -80,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
@@ -89,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

@@ -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@v1
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

22
.gitignore vendored
View File

@@ -31,6 +31,7 @@ packages/
.vscode/
**/.vs
.factorypath
.metals/*
.settings
@@ -176,12 +177,11 @@ samples/client/petstore/python-tornado/.venv/
# PHP
samples/client/petstore/php/OpenAPIClient-php/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
# ts
samples/client/petstore/typescript-angular2/npm/npm-debug.log
@@ -212,6 +212,7 @@ 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/server/petstore/haskell-servant/stack.yaml.lock
# R
.Rproj.user
@@ -234,11 +235,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 +259,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.6.3/apache-maven-3.6.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

@@ -62,21 +62,38 @@ 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
# 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
- nvm install 12.20.0
- nvm use 12.20.0
- 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
@@ -122,7 +139,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 +157,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
@@ -186,12 +209,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 +225,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,7 +1,25 @@
kind: pipeline
name: default
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
# test nim client
- name: nim-client-test
image: nimlang/nim
commands:
- (cd samples/client/petstore/nim/ && nim c sample_client.nim)
# test protobuf schema generator
- name: protobuf-schema-test
image: nanoservice/protobuf-go
@@ -32,21 +50,12 @@ steps:
- name: haskell-client-test
image: haskell:8.6.5
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)
# 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

@@ -24,30 +24,19 @@ if [ "$NODE_INDEX" = "1" ]; then
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
# 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
@@ -66,15 +55,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,12 +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 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`.
- 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:

122
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.2.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,7 @@ 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)
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS and Checkly for sponsoring the API monitoring
@@ -60,11 +67,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**, **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** (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), **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** (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 +109,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.2.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.2.0-SNAPSHOT/) | Jun/Jul 2021 | Minor release with breaking changes (with fallback) |
| [5.1.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.1.1) (latest stable release) | 07.05.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 +168,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.1.1/openapi-generator-cli-5.1.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.1.1/openapi-generator-cli-5.1.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.1.1/openapi-generator-cli-5.1.1.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -263,7 +269,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/
```
@@ -396,7 +402,7 @@ openapi-generator-cli version
To use a specific version of "openapi-generator-cli"
```sh
openapi-generator-cli version-manager set 4.3.1
openapi-generator-cli version-manager set 5.1.1
```
Or install it as dev-dependency:
@@ -420,7 +426,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
(if you're on Windows, replace the last command with `java -jar modules\openapi-generator-cli\target\openapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g php -o c:\temp\php_api_client`)
<!-- RELEASE_VERSION -->
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/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.1.1/openapi-generator-cli-5.1.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`
@@ -433,10 +439,10 @@ To get a list of PHP specified options (which can be passed to the generator wit
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:
@@ -444,6 +450,8 @@ This script uses the default library, which is `okhttp-gson`. It will run the ge
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 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 +517,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 +551,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,6 +564,7 @@ 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/)
@@ -602,6 +605,7 @@ 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)
@@ -612,6 +616,8 @@ 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/)
@@ -624,6 +630,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [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/)
@@ -642,17 +649,21 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [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/)
@@ -768,6 +779,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/)
@@ -785,6 +797,26 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 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)
## [6 - About Us](#table-of-contents)
@@ -814,16 +846,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
@@ -859,7 +894,7 @@ Here is a list of template creators:
* PHP (Guzzle): @baartosz
* PowerShell: @beatcracker
* PowerShell (refactored in 5.0.0): @wing328
* Python-experimental: @spacether
* Python: @spacether
* R: @ramnov
* Ruby (Faraday): @meganemura @dkliban
* Rust: @farcaller
@@ -877,10 +912,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
@@ -894,6 +930,7 @@ 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
@@ -914,8 +951,10 @@ Here is a list of template creators:
* PHP Laravel: @renepardon
* PHP Lumen: @abcsun
* 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
@@ -934,8 +973,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
@@ -968,7 +1009,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) |
@@ -977,19 +1018,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 | @swipesight (2018/09) @jaumard (2018/09) @josh-burton (2019/12) @amondnet (2019/12) @sbu-WBT (2020/12) @kuhnroyal (2020/12) @agilob (2020/12) |
| 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 | |
@@ -1027,7 +1069,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)

View File

@@ -29,17 +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"
@@ -54,11 +71,19 @@ build_script:
# 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)

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

@@ -4,5 +4,6 @@ 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}'
aspnetCoreVersion: "3.1"
# 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

@@ -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-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

@@ -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,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,6 +0,0 @@
generatorName: dart-dio
outputDir: samples/client/petstore/dart-dio
inputSpec: modules/openapi-generator/src/test/resources/2_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

@@ -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

@@ -0,0 +1,10 @@
generatorName: dart
outputDir: samples/openapi3/client/petstore/dart2/petstore_json_serializable_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"
serializationLibrary: json_serializable

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,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
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,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

@@ -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
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-spring
additionalProperties:
library: spring-boot
delegatePattern: "true"
swaggerAnnotations: "true"
beanValidations: "true"

View File

@@ -0,0 +1,7 @@
generatorName: ktorm-schema
outputDir: samples/schema/petstore/ktorm
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/ktorm-schema
additionalProperties:
hideGenerationTimestamp: true
importModelPackageName: org.openapitools.client.models

View File

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

View File

@@ -1,6 +0,0 @@
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}'

View File

@@ -1,7 +0,0 @@
generatorName: cpp-qt5-client
outputDir: samples/client/petstore/cpp-qt5
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-qt5-client
additionalProperties:
cppNamespace: test_namespace
modelNamePrefix: PFX

View File

@@ -0,0 +1,7 @@
generatorName: jaxrs-cxf-client
outputDir: samples/client/petstore/jaxrs-cxf-client-jackson
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS/cxf
additionalProperties:
artifactId: jaxrs-cxf-jackson-petstore-client
jackson: "true"

View File

@@ -0,0 +1,11 @@
generatorName: kotlin
outputDir: samples/openapi3/client/petstore/kotlin-jvm-retrofit2-rx2-kotlinx_serialization
library: jvm-retrofit2
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
serializationLibrary: kotlinx_serialization
useRxJava2: "true"
artifactId: kotlin-petstore-rx2-kotlinx_serialization-client
serializableModel: "true"
dateLibrary: java8

View File

@@ -1,10 +0,0 @@
generatorName: swift5
outputDir: samples/client/petstore/swift5/default
inputSpec: modules/openapi-generator/src/test/resources/2_0/swift/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/swift5
generateAliasAsModel: true
additionalProperties:
podAuthors: ""
podSummary: PetstoreClient
projectName: PetstoreClient
podHomepage: https://github.com/openapitools/openapi-generator

View File

@@ -0,0 +1,6 @@
generatorName: php-mezzio-ph
outputDir: samples/server/petstore/php-mezzio-ph-modern
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/php-mezzio-ph-modern
additionalProperties:
modern: "true"

View File

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

View File

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

View File

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

View File

@@ -10,3 +10,7 @@ additionalProperties:
powershellGalleryUrl: https://www.powershellgallery.com/packages/PSPetstore
apiNamePrefix: PS
powershellVersion: "5.0"
licenseUri: https://www.apache.org/licenses/LICENSE-2.0.txt
projectUri: https://github.com/OpenAPITools/openapi-generator
releaseNotes: 'This is a sample project'
tags: 'PetStore,powershell,sdk'

View File

@@ -1,7 +1,7 @@
generatorName: python
generatorName: python-legacy
outputDir: samples/client/petstore/python-asyncio
library: asyncio
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python
templateDir: modules/openapi-generator/src/main/resources/python-legacy
additionalProperties:
packageName: petstore_api

View File

@@ -1,6 +0,0 @@
generatorName: python-experimental
outputDir: samples/openapi3/client/extensions/x-auth-id-alias/python-experimental/
inputSpec: modules/openapi-generator/src/test/resources/3_0/extensions/x-auth-id-alias.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: x_auth_id_alias

View File

@@ -1,6 +0,0 @@
generatorName: python-experimental
outputDir: samples/openapi3/client/features/dynamic-servers/python-experimental/
inputSpec: modules/openapi-generator/src/test/resources/3_0/features/dynamic-servers.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: dynamic_servers

View File

@@ -1,7 +0,0 @@
generatorName: python-experimental
outputDir: samples/client/petstore/python-experimental
inputSpec: modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
disallowAdditionalPropertiesIfNotPresent: "true"
packageName: petstore_api

View File

@@ -1,7 +0,0 @@
generatorName: python-experimental
outputDir: samples/openapi3/client/petstore/python-experimental
inputSpec: modules/openapi-generator/src/test/resources/3_0/python-experimental/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: petstore_api
recursionLimit: "1234"

View File

@@ -0,0 +1,6 @@
generatorName: python
outputDir: samples/openapi3/client/extensions/x-auth-id-alias/python/
inputSpec: modules/openapi-generator/src/test/resources/3_0/extensions/x-auth-id-alias.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: x_auth_id_alias

View File

@@ -0,0 +1,6 @@
generatorName: python-fastapi
outputDir: samples/server/petstore/python-fastapi
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/python-fastapi
additionalProperties:
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,6 @@
generatorName: python
outputDir: samples/openapi3/client/features/dynamic-servers/python/
inputSpec: modules/openapi-generator/src/test/resources/3_0/features/dynamic-servers.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: dynamic_servers

View File

@@ -0,0 +1,6 @@
generatorName: python-legacy
outputDir: samples/client/petstore/python-legacy
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python-legacy
additionalProperties:
packageName: petstore_api

View File

@@ -0,0 +1,6 @@
generatorName: python-legacy
outputDir: samples/openapi3/client/petstore/python-legacy
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python-legacy
additionalProperties:
packageName: petstore_api

View File

@@ -1,6 +1,10 @@
# this file exists because in this file we omit setting disallowAdditionalPropertiesIfNotPresent
# which makes it default to false
# that false setting is needed for composed schemas to work
# Composed schemas are schemas that contain the allOf/oneOf/anyOf keywords. v2 specs only support the allOf keyword.
generatorName: python
outputDir: samples/client/petstore/python
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
inputSpec: modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: petstore_api

View File

@@ -0,0 +1,7 @@
generatorName: python
outputDir: samples/client/petstore/python_disallowAdditionalPropertiesIfNotPresent
inputSpec: modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
disallowAdditionalPropertiesIfNotPresent: "true"
packageName: petstore_api

View File

@@ -1,7 +1,7 @@
generatorName: python
generatorName: python-legacy
outputDir: samples/client/petstore/python-tornado
library: tornado
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/python
templateDir: modules/openapi-generator/src/main/resources/python-legacy
additionalProperties:
packageName: petstore_api

View File

@@ -1,6 +1,7 @@
generatorName: python
outputDir: samples/openapi3/client/petstore/python
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/python/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/python
additionalProperties:
packageName: petstore_api
recursionLimit: "1234"

View File

@@ -0,0 +1,8 @@
generatorName: ruby
outputDir: samples/openapi3/client/extensions/x-auth-id-alias/ruby-client
inputSpec: modules/openapi-generator/src/test/resources/3_0/extensions/x-auth-id-alias.yaml
templateDir: modules/openapi-generator/src/main/resources/ruby-client
additionalProperties:
gemName: x_auth_id_alias
gemVersion: 1.0.0
moduleName: XAuthIDAlias

View File

@@ -6,3 +6,4 @@ generateAliasAsModel: true
additionalProperties:
hideGenerationTimestamp: "true"
packageName: petstore-with-fake-endpoints-models-for-testing
publishRustRegistry: crates-io

View File

@@ -0,0 +1,8 @@
generatorName: rust-server
outputDir: samples/server/petstore/rust-server/output/ping-bearer-auth
inputSpec: modules/openapi-generator/src/test/resources/3_0/rust-server/ping-bearer-auth.yaml
templateDir: modules/openapi-generator/src/main/resources/rust-server
generateAliasAsModel: true
additionalProperties:
hideGenerationTimestamp: "true"
packageName: ping-bearer-auth

View File

@@ -0,0 +1,9 @@
# This is for generating scala legacy client
generatorName: scala-httpclient-deprecated
outputDir: samples/client/petstore/scala-httpclient-deprecated
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/scala-httpclient
additionalProperties:
apiPackage: org.openapitools.example.api
invokerPackage: org.openapitools.example.invoker
artifactId: scala-legacy-petstore

View File

@@ -0,0 +1,7 @@
generatorName: spring
outputDir: samples/server/petstore/spring-mvc-default-value
inputSpec: modules/openapi-generator/src/test/resources/3_0/issue_8535.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
hideGenerationTimestamp: "true"
artifactId: spring-mvc-default-value

View File

@@ -10,3 +10,4 @@ additionalProperties:
hideGenerationTimestamp: "true"
serverPort: "8002"
additionalModelTypeAnnotations: '@com.fasterxml.jackson.annotation.JsonFilter(value = "filter-name");@com.fasterxml.jackson.annotation.JsonIgnoreProperties(value = "id")'
additionalEnumTypeAnnotations: '@com.fasterxml.jackson.annotation.JsonFormat'

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