Compare commits

...

354 Commits

Author SHA1 Message Date
sbu
526f1b48f8 Dart oneof for models (#7493)
* Type check for setting, some docs, toString and toJson

* Check for required fields in fromJson

* OneOf deserialization

* Individual check for required fields to avoid `if (false)`

* Add nullable check for required fields
2020-10-12 18:18:06 +08:00
William Cheng
eaa01e15f1 dart oneof support: draft 2020-09-22 09:15:20 +08:00
William Cheng
f8c20c22e1 remove old csharp files under integration tests folder (#7466) 2020-09-22 07:42:41 +08:00
Peter Somogyvari
27680214fd feat(typescript-axios): injectable FormData (#7455)
Signed-off-by: Peter Somogyvari <peter.metz@unarin.com>
2020-09-21 09:07:10 +02:00
William Cheng
7fa02ee5f0 use typeMapping instead of postProcessParameter (#7457) 2020-09-21 15:05:43 +08:00
Aidan Hobson Sayers
be151fca64 Fix Rust codegen for AnyType (#7461) 2020-09-21 13:36:43 +08:00
William Cheng
985c4b36a7 [Ruby] fix port in the Ruby client (#7464)
* fix port in ruby client

* use serverPort instead

* update samples, skip if port is 80
2020-09-21 13:23:45 +08:00
Jim Schubert
a29d9a9ff4 [samples] Regenerate 2020-09-20 23:27:48 -04:00
Sebastien Rosset
4f27939879 [core] Add model cache to speed up code generation (#7250) 2020-09-20 22:15:32 -04:00
William Cheng
8cd503f194 Add a link to a post about angular reactiveforms (#7463) 2020-09-21 10:04:39 +08:00
Philipp Paris
c7d5275b62 [java] jaxrs (all) add usetags option (#6130)
* Adds "useTags" option to all jaxrs code generators (AbstractJAXRSServerCodegen):
  - jaxrs-jersey
  - jaxrs-spec
  - jaxrs-cxf-cdi
  - jaxrs-resteasy
  - jaxrs-cxf
  - jaxrs-cxf-extended
  - java-msf4j
  - jaxrs-resteasy-eap
* jaxrs-spec
  - Changed handling of root paths: e.g "/:", "/{id}:" to simplify code and create a more consistent behaviour
    -- old: use tag for classname
    -- new: use tag only if useTags is enabled, use "DefaultApi" if not
* @path class level annotation
  - for all generators above and the microprofile generator (uses same jaxrs postprocessing)
  - extended the "commonPath" to contain more than only the root path if possible
  - e.g. "/group1/subgroup1/op1" -> "/group1/subgroup1" is moved to class level annotation
2020-09-20 21:18:07 -04:00
Jim Schubert
3ca6bc2518 [sonar] Java 11, use -nsu, exclude maven/online projects (#7459) 2020-09-20 16:02:29 -04:00
spacether
35d42728d9 Adds free form model generation in python-experimental (#7373)
* Adds free form model generation in python-experimental

* Adds hasValidation property to codegenModel

* Adds separate variable val

* Samples regenerated

* Updates test_some_object.py

* Adds two more boolean conditions

* Runs ensure up to date

* Updates tests to check that models are or are not generated

* Removes unused import

* Updates model names in java test

* Removes unneeded test

* Cleans up tests
2020-09-20 10:55:54 -07:00
William Cheng
77f24a4234 [C#][netcore] replace tabs with 4-space (#7456)
* replace tab with 4-space

* add space after if
2020-09-21 00:08:31 +08:00
Yuriy Belenko
5675d5fe61 Fix bug when variables key doesn't exist (#7429) 2020-09-20 20:49:00 +08:00
Francesco Guardiani
80bef2f79a Update Vert.x Web template to Vert.x 4 (#7364)
* Update Vert.x Web template to Vert.x 4

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Bad pom

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Bad pom 2

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Stick to Java 8

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Latest vert.x 4

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-09-19 15:43:08 +08:00
William Cheng
ea559b5e20 [C#][NetCore] add multi-server support (#7433)
* multi server support in C# netcore clients

* switch to IReadOnlyDictionary

* minor fixes, add tests
2020-09-19 15:07:12 +08:00
Ghufz
92f7a306a1 [csharp-netcore]Http signing for csharp-netcore sdk (#7437)
* HTTPSigning implementation for CSharpSDK

* Updated the sample for HTTPSigning

* Updated the sample2 for HTTPSigning

* update samples

* HTTPSigning_For_Async

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-09-19 12:09:35 +08:00
dtiller
3f7a3f2b59 [TYPO] [WEBCLIENT] Issue 7425: Fixed comments that referred to RestTemplate. (#7445)
* Issue 7425: Fixed comments that referred to RestTemplate.

* Ran genreate-samples.sh

* Re-ran generate-samples.sh against all configs.

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-09-19 12:07:35 +08:00
Jim Schubert
29ed2342e5 Update sonar.yml
Add a 'sonar' branch to sonar scanning
2020-09-18 21:35:38 -04:00
William Cheng
874daad7e7 delete oudated objc files (#7449) 2020-09-18 18:27:33 +08:00
William Cheng
ef42977097 remove old test, regenerate js clients (#7448) 2020-09-18 14:14:23 +08:00
Adam Gray
7424489607 Fix scala-sttp enum generation (#7432)
* #7431 fix sttp enum generation

* avoid unnecessary sample changes
2020-09-18 10:59:45 +08:00
William Cheng
9754748321 [Perl] clean up old files and regenerate Perl petstore clients (#7439)
* clean up old files and regenrate perl petstore

* update samples
2020-09-18 10:30:32 +08:00
William Cheng
bfe4a7ff87 rename ts axios test (#7442) 2020-09-18 10:23:52 +08:00
Mahir Kothary
ca5d384081 [bug][typescript] Fix node client generator import file paths (#7410) 2020-09-17 21:46:39 -04:00
William Cheng
620f8db3d6 Add a link to PS blog post (#7444) 2020-09-17 18:56:59 +08:00
Fabio Mazzone
6a4aed91ca [javascript][client] Add gitignore to template (#7438)
* [javascript][client] add gitignore template file

* [javascript][client] update samples
2020-09-17 17:18:27 +08:00
dtiller
6909c888d2 [cli] Batch: support multiple/nested !include directive (#7354)
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-09-16 22:45:26 -04:00
Ella
bb00d88283 [kotlin] Fix optional header params in openhttp client (#7341)
This commit adjusts the kotlin openhttp api template to ignore null headers when building the request rather than convert them to "null" string
2020-09-16 22:09:38 -04:00
Nicholas Muesch
32c591d9a7 Support multiple api keys in python example documentation (#7417)
* Support multiple api keys in config option

* Regenerate samples

* Update rest of examples
2020-09-15 13:40:48 -07:00
Slavek Kabrda
be40dbe540 [Go][client] Re-add deleted model template files (#7423)
* [Go][client] Re-add deleted model template files

* Regenerate samples
2020-09-15 22:25:45 +08:00
William Cheng
c04d9cd59a rename debugging variables (#7422) 2020-09-15 21:25:52 +08:00
William Cheng
c44865279a replace spaces with tabs (#7421) 2020-09-15 18:13:07 +08:00
William Cheng
0b6229607f Add a link to Instana Blog (#7420) 2020-09-15 17:07:10 +08:00
Hippolyte HENRY
8dd3e561fa Use canonical path for template dir (#7388) 2020-09-14 12:22:14 -04:00
Gmtstephane
4e05912ae7 [GO][SERVER] Implement response code (#7397)
* Feature(template) add response with status code generation

* Generate Samples

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-09-14 23:14:53 +08:00
spacether
8556cb8d71 Adds fix for issue 7372 (#7383) 2020-09-14 17:18:43 +08:00
typhoon2k
0173acd1d3 Fix package declaration (https://github.com/OpenAPITools/openapi-generator/issues/7122). (#7395) 2020-09-14 16:59:49 +08:00
Jim Schubert
bf0bd29ef1 [core][feature] User custom added templates (#7366) 2020-09-12 18:09:59 -04:00
Jason Lee
1a709a731b [Java] add cli option to ignore anyOf in enum (#4498)
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-09-12 18:09:39 -04:00
William Cheng
8fad36c898 [Go] minor format change, deprecate "withGoCodegenComment" option (#7375)
* use tab in comment, remove withGoCodegenComment

* deprecated option
2020-09-12 22:05:10 +08:00
Falanwe
634e3eb838 [cpp-ue4] add support for Content-Type containing charset (#7379) 2020-09-12 22:04:45 +08:00
Jean-François Côté
09200eb04e Update the for play 2.7 (#7398)
* Fix the new package that deal with Configuration (the old one is depecrated)

* First version to support Play Framework 2.7

* Fix small problems that prevent compilation of each samples. Now everything is compiling perfectly
2020-09-12 22:01:56 +08:00
Jim Schubert
684b77166b [docs] Add notes on Windows classpath modification (#7404) 2020-09-11 21:42:18 -04:00
William Cheng
0a2ef5a725 [C#][netcore] better support for additional properties in the payload (#7396)
* add OpenAPIAdditionalPropertiesConverter

* fix buges

* fix writeJson

* better code comment

* move converter to model

* use JsonExtensionData

* update hashcode, equal, tostring and more

* update samples
2020-09-12 01:39:19 +08:00
Ghufz
00e20ffb2c Fix the ECDSA signature issue for PowerShellSDK (#7386)
* Fix the ECDSA signature issue for PowerShellSDK

* updated the sample for ECDSA HTTPSigning

* fix the sample doc
2020-09-11 12:35:44 +08:00
Jean-François Côté
df441fe2ee Fix the new package that deal with Configuration (the old one is depecrated) (#7391) 2020-09-11 12:11:37 +08:00
William Cheng
f396da4c7e update vonage logo (#7387) 2020-09-10 18:53:45 +08:00
Jim Schubert
1eb8c2991d [gradle][plugin] Fix tests (#7384)
Tests running under Gradle 5.6.4 were breaking due to a change in
informational output. It's not clear when this was introduced, but it
looks like the upgrade to Gradle 5.6.4 may have stopped running tests
during builds.
2020-09-09 23:42:33 -04:00
Andrey Mochalov
4d8ac0e055 [typescript] Fix incorrect enum literal case (#7378)
* Fix incorrect enum values for typescript clients

* Fix incorrect enum values for typescript clients

* Fix incorrect enum values for typescript clients
2020-09-09 15:58:45 +02:00
JR Andreassen
37de486c43 Rust reqwest/api_mustache Missing api Vec in parameter (#7049)
* Rust reqwest/api_mustache Missing api Vec in parameter

Not using #isListContainer in parameters

* incorrect value for supportAsync

supportAsync set to "false" should be false

* Sample updates for CI

* Fixed Double Vec

Only check for special case...  "dataType" case includes Vec

* update samples

* remove old files

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-09-09 21:56:31 +08:00
Michael Wirth
7b6cc2032a [kotlin] Fix imports of generated class (#7314) 2020-09-08 20:56:48 -04:00
sbu
e7f83595e5 Properly decode $ref (#7191)
* Properly decode $ref
fixes #5720

* Specify decoding encoding

* Nicer syntax

* UTF-8 typo

* Unescape special characters

* Change order of unescaping to prevent escaped sequences by accident

* Comment for special decoding

Co-authored-by: Jim Schubert <james.schubert@gmail.com>

* Add unit test for simple ref decoding

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-09-08 23:12:56 +08:00
William Cheng
67ba67ef96 fix typo, update caption 2020-09-08 18:25:16 +08:00
Ramanth Addala
c39aef2a79 feat(r): retry configuration for status codes (#5925)
* feat(r): retry configuration for status codes

* fix(r) : fixing review comments
2020-09-08 14:34:32 +08:00
Gichan Im
f9514705a1 [json][codegen] Add option: outputFileName (#7348) 2020-09-07 15:29:47 +08:00
Ghufz
7ac7974ef5 RSACng class is not supported on linux replacing it by RSA (#7349)
* RSACng class is not supported on linux replacing it by RSA

* update PS samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-09-07 15:24:36 +08:00
Pete Kruskall
089e1f7271 Adds cookie auth support to ApiKeyAuth in dart2 templates (#7346)
* Adds cookie auth support to dart2 templates

* Updating pet store sample templates
2020-09-06 22:54:46 +08:00
Jim Schubert
9a6e3fa74a [js][flowtype] Bump lodash from 4.17.15 to 4.17.19 (#7359)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19)
2020-09-06 22:53:52 +08:00
Markus Wandersee
06434fcfce Bugfix swift5 code generation 2966 (#7301)
* Bugfix StackOverflow Crash in Swift5 Code Generation (#2966)

* Bugfix StackOverflow Crash in Swift5 Code Generation (#2966)

* Bugfix StackOverflow Crash in Swift5 Code Generation (#2966)
2020-09-06 22:05:16 +08:00
spacether
681e821b71 Syncs validation properties for arraymodels (#7357)
* Syncs validation properties for arraymodels

* Adds arrayModelHasValidation test
2020-09-05 18:02:00 -07:00
Ryan Rishi
2d5b2726d0 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
2020-09-05 10:22:04 -07:00
spacether
b38968456a Adds fix for issue7262 and a test of it (#7328)
* Adds fix for issue7262 and a test of it

* Updates inline schema to not include properties

* Adds null check of discriminator

* Updates issue sample file
2020-09-05 08:51:51 -07:00
William Cheng
dd42e0e428 add spacether to pom developer section (#7355) 2020-09-05 23:48:47 +08:00
Hui Yu
0e2e031ece [C][Client][Clang Static Analyzer] Fix uninitialized argument value for valueHeader_ and valueForm_ (#7332) 2020-09-04 21:37:31 +08:00
Robin Eggenkamp
5e512e8aa4 Remove duplicate jackson-datatype-jsr310 dependency (#7338) 2020-09-04 21:35:13 +08:00
Falanwe
662c77a283 [cpp-ue4] add support for empty response (#7333) 2020-09-04 21:32:29 +08:00
William Cheng
2fd23f505e Prepare 5.0.0-SNAPSHOT (#7347)
* Revert "Prepare 5.0.0-beta2 release (#7345)"

This reverts commit 212b4f7847.

* update readme
2020-09-04 15:31:54 +08:00
William Cheng
212b4f7847 Prepare 5.0.0-beta2 release (#7345)
* update version

* update doc

* update samples
2020-09-04 13:03:45 +08:00
William Cheng
14d41310b9 [Go] replace go generator with go-experimental generator (#7337)
* replace go with go-experimental

* update samples

* extends with abstract go class

* rearrange

* remove deprecated

* minor fix

* remove go deprecated samples

* update pom, clean up samples

* mark generator as deprecated
2020-09-04 09:56:42 +08:00
William Cheng
1f50207bda [doc] Update new-generator steps (new.sh) (#7336)
* [doc] Update new-generator steps (new.sh) (#7334)

* remove CommonMarkDocumentationCodegen

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-09-03 22:04:43 +08:00
William Cheng
e0ec332e38 Revert "[doc] Update new-generator steps (new.sh) (#7334)" (#7335)
This reverts commit 151752aa9d.
2020-09-03 14:21:26 +08:00
Jim Schubert
151752aa9d [doc] Update new-generator steps (new.sh) (#7334) 2020-09-02 22:14:52 -04:00
Jim Schubert
a6d30cac9d [core] Templating: limit compilation to supported extensions and constrain target paths (#6598) 2020-09-02 15:52:35 -04:00
Hippolyte HENRY
91ea6a17d9 [Java] Unalias type when generating default value for model property (#5017)
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-09-02 07:52:38 -04:00
William Cheng
966b87e66c add aws v4 signature support to go-experimental (#7326) 2020-09-02 15:28:22 +08:00
William Cheng
d50d31cd5e add structPrefix support to go-experimental (#7327) 2020-09-01 20:51:37 +08:00
William Cheng
20eb4d0b91 Add a link to SmartHR Tech Blog (#7324) 2020-09-01 11:01:23 +08:00
Jim Schubert
26bb348354 Revert "Correct allOf with only one child schema (no discriminator)" (#7323)
This reverts commit 972120c35a.
2020-08-31 22:46:57 -04:00
William Cheng
972120c35a Correct allOf with only one child schema (no discriminator) (#6901) 2020-08-31 21:47:18 -04:00
Arvind Thirunarayanan
ab5b0fa8d4 [Go]: Interface definitions for api functions (#5914)
Introduces a new "generateInterfaces" option, allowing for better testability of generated clients
2020-08-31 21:43:40 -04:00
William Cheng
9fd66fbbcb Update bug_report.md (#7320) 2020-08-31 21:09:13 -04:00
William Cheng
19c5ed783a update samples 2020-08-31 23:17:55 +08:00
Oleh Kurpiak
14a500c6fe [Java][Client] Use java8 OffsetDateTime for clients (#7190)
* use java8 OffsetDateTime for clients

* use java8 OffsetDateTime for clients

* fix javadoc

* add javadoc to JavaTimeFormatter.mustache

* add javadoc to JavaTimeFormatter.mustache

* add javadoc to JavaTimeFormatter.mustache
2020-08-31 22:31:28 +08:00
Patouche
b9662dc25d [java] Intro openApiNullable property to enable/disable OpenAPI Jackson Nullable library (#6154)
* Add option to prevent usage of jackson-nullable (#2901)

Add a option for all java client and server to prevent
usage of third party library (jackson-databind-nullable)
which may be forbidden in some company

Add samples for Vertx, Spring MVC, Spring Cloud, Feign and Play

Upgrade dependencies for org.openapitools:jackson-databind-nullable

* Samples - Remove dependency org.openapitools:jackson-databind-nullable (#2901)

* Fix generation of gradle file for vertx (#2901)

* Regenerate samples (#2901)

* Fix documentation and up to date (#2901)

* Fix forgotten regeneration of vertx after dependency integration (#2901)

* Regenerate template after rebase (#2901)

* Use yaml config files introduce in #6509 to manage samples (#2901)

* Regenerate template using the config (#2901)

* Fix bad version during testing generated samples (#2901)

* Regenerate template after fix bad version (#2901)

* Fix merge, allow for set importing on codegen model

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-08-31 21:25:18 +08:00
William Cheng
7032c401ea [Spring Boot] update dependencies, mark java8 option as deprecated (#7306)
* update springboot dependencies

* update doc

* update samples
2020-08-31 13:53:50 +08:00
Gmtstephane
15de43f7e4 Remove dot in golang type (#7307) 2020-08-31 13:50:20 +08:00
Jim Schubert
8eea149e14 [doc] Document usage of post-process file feature (#7315) 2020-08-31 13:44:44 +08:00
QP Hou
30074833cd fix http bear auth documentation for go clinets (#7312) 2020-08-31 13:43:34 +08:00
Jiri Kuncar
d5a680e85f [Extensions][Go][Java] Test x-auth-id-alias (#6642)
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-08-30 21:46:55 -04:00
Yuriy Belenko
da9f2f7c9b [php-slim4] Move config to a separate file (#6971)
* Move config into separated file

* Restrict access from web to config folder

* Exclude config folder from code base

* Update documentation

* Refresh samples

* Fix misplaced pathes
2020-08-29 00:27:03 +08:00
Hui Yu
2c65605289 [C][Client][Clang Static Analyzer] Remove the useless free operation for (#7309)
buffContent
2020-08-29 00:17:55 +08:00
Richard Kolkovich
f681016ffd Fix typescript-node generation when only models are generated (#7127)
* add model/index.ts

- move export of all models to model/index.ts
- move RequestFile definition to model/index.ts

This fixes #7126

* update samples

* Back out models/index.ts

Make this backwards-compatible:

- move `RequestFile` definition to `model/models.ts`
- remove `model/index.ts`
- re-export `RequestFile` from `api/apis.ts`
- make generation of `ObjectSerializer` conditional

* for some reason, Symfony isn't up to date

* reverts changes to php-symfony sample

* moves comment to mustache comment rather than TS comment

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

* removes stale files from samples (no longer generated)

* updates samples

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2020-08-28 17:19:53 +02:00
William Cheng
1f95199f82 update spring config to use java8 (#7308) 2020-08-28 19:17:20 +08:00
Hui Yu
08fe44c764 [C][Client][Clang Static Analyzer] Fix uninitialized argument value (#7305) 2020-08-28 09:44:55 +08:00
William Cheng
26c17c5774 [Java] remove deprecated jackson classes (#7304)
* [java/resttemplate] Generate valid code if no Authentication implementations present

Take the logic used to decide which instances to add to the authentications map and re-use to not import classes or offer non-functional util methods

* parameterize formParams

fixes #5782

* replace use of ISO8601DateFormat and ISO8601Utils with StdDateFormat

fixes #5779

* add constructor to intialise calendar

* Revert "[java/resttemplate] Generate valid code if no Authentication implementations present"

This reverts commit 6e450907ba.

* Revert "parameterize formParams"

This reverts commit 7a26ce5dd2.

* also override single arg parse method to avoid throwing exception

* also override single arg parse method to avoid throwing exception

* update samples

* update samples

* fix jersey1 tests

* fix jersey2 test

* update resteasy dependencies

* fix java jersey2 oas3 tests

* use java8 in springboot-beanvalidation

Co-authored-by: Jon Freedman <jon.freedman@zoho.com>
2020-08-27 23:13:56 +08:00
spacether
892836f772 Adds generator unaliasSchema method, uses it to refactor python-experimental (#7274)
* Adds generator specific unaliasSchema method

* Adds unaliasSchema and hasValidation methods in python-experimental generator

* Removes primitive models with no validations, docs, tests, and models

* Uses unaliasSchema in getSchemaType and adds todos

* Deletes handleMethodResponse and fromResponse

* Simplifies fromRequestBody

* Removes unneeded handleMethodResponse

* Updates javadoc

* Updates fromModel

* Adds python-exp java test defaultSettingInPrimitiveModelWithValidations, removes model NumberWithValidationsAndDefault form v3 sample spec

* Deletes getSimpleTypeDeclaration

* Removes straggler file

* Deletes hasValidation and modelWillBeMade

* Uses super in fromFormProperty

* Regenerates samples for python-experimental

* Updates postProcessAllModels
2020-08-27 08:07:33 -07:00
William Cheng
b4edfe477a [Rust][reqwest] prefix local variables with "local_var" (#7299)
* use local_var prefix in rust variables

* minor fixes
2020-08-27 11:43:35 +08:00
William Cheng
8c1f6fcdc1 [Java][jersey2]Support enum discriminator value in child objects (#7267)
* support enum discriminator value in child (java jersey2)

* update samples

* add tests, use public
2020-08-27 11:42:48 +08:00
Hui Yu
f11b2e6772 [C][Client][Clang Static Analyzer] Fix memory leak before function returnning (#7302) 2020-08-27 09:38:22 +08:00
William Cheng
11a674f248 add extension for hashable in swift5 (#7300) 2020-08-26 19:29:29 +08:00
Bruno Coelho
98582d5780 [kotlin][client] fix warning Extension is shadowed by a member (#7286) 2020-08-26 11:21:40 +08:00
William Cheng
6913b0520c Add wbt-solutions logo (#7298)
* add wbt solutions logo, rearrange logo

* reduce logo size
2020-08-26 10:38:31 +08:00
William Cheng
e6d3201623 [c-sharp] Fix default values with discriminator (#7296)
* [c-sharp] Fix #6225 default values with discriminator

* [c-sharp] Fix #6225 default values with discriminator

* update samples

Co-authored-by: Tom E <1036527+thommy101@users.noreply.github.com>
2020-08-26 09:36:11 +08:00
William Cheng
bc4994e82c Add x-is-json to csharp generators (#7293)
* add x-is-json to csharp generators

* add docstring
2020-08-26 09:34:42 +08:00
itoz
2e243abf25 Add raksul (#7295)
Co-authored-by: itokazu masafumi <m.itokazu@raksul.com>
2020-08-25 20:44:48 +08:00
sbu
546bc37935 Add wbt-solutions as using company (#7292) 2020-08-25 17:21:44 +08:00
Hui Yu
1852f61f3a [C][Client][Clang Static Analyzer] Fix memory leak in apiClient_invoke (#7285) 2020-08-25 11:16:19 +08:00
Niels Pardon
d868fd6dc8 [Java][clients] remove java.lang prefix from Object (#6806) 2020-08-24 22:06:19 -04:00
Jim Schubert
a97feaf533 [core] Add x-is-free-form vendor extension (#6849)
This adds an x-is-free-form vendor extension to allow users to skip our
"free-form" logic which would previously prevent object schemas with no
properties to be considered "free-form". The previous behavior was due
in part to Swagger Parser not exposing `additionalProperties: false` to
us (which should be similar behavior to this extension).

A free-form object is considered a dynamic object with any number of
properties/types. DefaultGenerator does not allow for generation of
models considered free-form. However, a base type with no properties and
no additional properties is allowed by OpenAPI Specification and is
meaningful in many languages (e.g. "marker interfaces" or abstract
closed types).
2020-08-24 19:00:47 -04:00
Kim T
54a6c791f7 [NodeJS] Auto populate config using schema servers.url (#6980)
* [NodeJS] nodejs-express-server fix /api-docs path

* Auto populate config using schema servers.url

* [NodeJS] Auto populate config port 3000
2020-08-24 22:42:10 +08:00
Oleh Kurpiak
1dc65f0033 Remove warning when type importer manually (#7264) 2020-08-24 08:20:51 -04:00
Oleh Kurpiak
8bd2dd4c9d [Java] [Spring] Spring new mapping annotations (#7189)
* Spring new mapping annotations

* update other spring mvc templates
2020-08-24 17:03:21 +08:00
4d-shibasawa
19140dc00d typescript: added conditional for Subscriber importing (#7266) 2020-08-24 10:14:36 +02:00
taqm
3e734a0b54 [docs] Fix go-gin-server additional property docs. (#7188)
* [docs] Fix go-gin-server additional property docs.

* add cli option for serverPort, apiPath

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-24 14:19:23 +08:00
Mohamed EL HABIB
c893b92775 [BUG][MARKDOWN] Extra (back)slashes added to links from Api to Model #6095 (#6834)
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-08-24 00:13:17 -04:00
William Cheng
029fd669e5 Add a link to Think IT(シンクイット)blog post (#7279)
Add a link to Think IT(シンクイット)blog post
2020-08-24 11:41:21 +08:00
Don Bowman
5e79aaaf0a fix: update base image to maven supported (#7001)
* Updates docker images for CLI and Online to JDK 11 and Maven 3.6.3 builders
* Uses openjdk:11.0.8-jre-slim-buster rather than alpine as new image publishes CVEs
2020-08-23 23:40:32 -04:00
Alex-e
c1de6c2651 [scala][play] Update apiTrait.scala.mustache (#6891)
https://github.com/OpenAPITools/openapi-generator/issues/6889
2020-08-23 23:24:19 -04:00
Jim Schubert
f70d48ea73 [java] Appropriate instantiation of model with dynamic properties (#6052) 2020-08-23 17:41:49 -04:00
Jim Schubert
0747694636 [docs] Update README badges (#7276)
* Add Apache 2.0 and OpenCollective badges
* Update bitrise and github workflow badges to use shields and better match other badges
2020-08-23 15:01:58 -04:00
ParakhMittal
7bb8a8d9ff Update apiInvoker.mustache and sample file for akka-scala client for issue #7258 fix (#7259)
* Update apiInvoker.mustache

In scala-akka-client code that is getting generated, addAuthentication method is called after setting headers using header parameter in the below mentioned line
addAuthentication(request.credentials)(
      httpRequest.withHeaders(headers(request.headerParams))
    )

However, in addAuthentication method, we are using withHeaders method that overwrites the headers set using header parameters. So, I am proposing to
change the addAuthentication method be replacing withHeaders() method to addHeader() to add authentication header to the list of already existing headers.

* Update ApiInvoker.scala

Added changes to sample for the client generator code change
2020-08-23 21:42:16 +08:00
sbu
fff5bfe8cb [Dart] Get all enum values in a list (#7166)
* Provide getter `values` for all enum values

* Add values getter also to inline enum

* Generate samples

Co-authored-by: SimonIT <simonit.orig@gmail.com>
2020-08-23 21:37:52 +08:00
Jim Schubert
f371f7ff07 Update .gitattributes
Revert changes which attempted to resolve windows ensure script functionality
2020-08-23 00:28:41 -04:00
Jim Schubert
2e61a37833 [ci] Set ubuntu workflow verification to autoclrf=true, safeclrf=false 2020-08-22 23:14:05 -04:00
Jim Schubert
027f752613 Update check-supported-versions.yaml
Disable "Verifies integrity of the commit on windows-latest" job in Check Support Versions workflow
2020-08-22 22:29:18 -04:00
Jim Schubert
0e9c6dd9a8 [ci] Update gitattributes and allow skipping docs generation for Windows CI workflows (#7273) 2020-08-22 22:14:04 -04:00
Jim Schubert
da84d8e3bf [core][bug] FILES is now path relative with no prefixes (#7271)
* FILES is now path relative with no prefixes

some Java implementations don't honor .relativize documentation fully.
When outDir is /a/b and the input is /a/b/c/d, the result should be c/d.
Some implementations make the output ./c/d which seems to mix the logic
as documented for symlinks. So we need to trim any / or ./ from the start,
as nobody should be generating into system root and our expectation is no ./

This resolves regeneration issues for those on such Java
implementations, although we've not been able to track down the exact
vendor or configurations which might lead to these differences.

* Ensure windows outputs FILES paths in same format

* Normalize FILES paths to remove relativization mid-path
2020-08-22 15:49:00 -04:00
Jim Schubert
a78a72b3d7 Update check-supported-versions.yaml
Stage openapi-generator-cli.jar only from ubuntu
2020-08-22 11:15:05 -04:00
Jim Schubert
301cd4093d Update check-supported-versions.yaml (#7268) 2020-08-21 22:33:49 -04:00
TIm Clark
cbdedff0ad [Java][jersey2] Add jersey injection dependencies (#7240)
* Adds the jersey injection dependency to gradle and sbt to match
the maven dependency.
* Update jersey version in sbt
2020-08-21 16:51:11 +08:00
Hui Yu
e8e6229d1b [C][Clang Static Analyzer] Remove the useless variable when assembling URL (#7255) 2020-08-21 16:22:19 +08:00
sbu
f0fd2cbb22 Date format dart (#6389)
* Correct date format of date formatted strings

* Update petstore

* Regenerate samples on linux

* Remove final for letting the user configure custom date formats

Co-authored-by: SimonIT <simonit.orig@gmail.com>
2020-08-21 10:23:44 +08:00
William Cheng
06ab5b5c0f minor enhancement to java client generator (#7253) 2020-08-21 00:35:26 +08:00
Frank Essenberger
d3017ffba8 typescript: Fix Union Types Import Issue (#6789)
* First approach for discussion

* typo

* add addiotional method

* polish a bit

* remove call of super method

* fix javadoc error

* com.google.common.collect.

* merge master regenerate samples

* sort imports alphabetically

* sort imports alphabetically with right key

* typo

* add type previous imports are still there.

* add type previous imports are still there.

* remove new test to see if they are the problem.

* merge master add tests back in

* align changes which should not lead to failing test but you never know.

* remove formatting changes

* dummy change

* revert spaces

* revert spaces

* revert functional changes

* comment out test

* remove model

* remove interface method

* remove test class completely

* put test class back - test body commented out

* rename test methods

* put back logic and tests

* remove generated APIs

* remark amakhrov

* check in one generated file to test

* adjust call super

* add comment use set.
2020-08-20 15:15:09 +02:00
Troy P
71321bd049 Modifying the es5 and es6 templates for javascript to handle default values (#6649)
for required fields better. This change ensures the required field isn't
overridden with undefined when the object is constructed - especially through
a chain of constructFromObject calls..
2020-08-20 15:24:11 +08:00
spacether
866df36c94 [python-exp] simplify examples (#7157)
* Adds example setting code in python-experimental with one fn setting example values

Fixes sample indentations

Handles composed schema models, object model and arraymodels

Adds brackets in arraymodel input

Sets modelName with map schemas

Removes included_schemas arguments, dicriminator examples do not include property examples

Refactors modelName into toExampleValueRecursive argument

Fixes bug where example models contained themselves

Stops using model ExampleGenerator examples because they are inconsistent with the ones in python-experimental

Uses example values if they exist

Removes single quotes from enum examples

Fixes password example

Adds commented our regex handling, commented out because it breaks

Handles AnyType schema examples

Adds x_example values for simple string properties, uses toExampleValue for all example generation

Adds examples for simple string parameters

Updates comments in toExampleValueBase

Fixes the double nested bug for AdditionalPropertiesWithArrayOfEnums

Fixes bug where NumberWithValidations had double nesting

Updates simple string examples in arrays

Fixes array string examples

Fixes example for string endpoint body example

Adds exampleFromStringOrArraySchema

Adds regex examples, pegs slf4j-version to v1.7.29 for rgxgen

Adds comment about regex seed

Updates pattern matcher to not handle ^ and $

Updates used sample values

Adds ensureQuotes

Adds ensureQuotes

Fixes double quote bug

Updates mustache file

Adds ensureQuotes to key handling

Adds modelNameToSchema map, reduces run time by using it

Fixes java tests

Regenerates python-experimental samples

Fixes python test

* Rebased on master

* Adds getModelNameToSchemaCache

* Updates toDefaultValue to not mutate schemas

* Has all dates and datetimes default and example setting use the same helper function

* Samples regenerated

* indentation tweak, removes txt from sample file
2020-08-19 21:27:31 -07:00
Aljaž Pavišič
c19350b179 Support for KumuluzEE microprofile runtime (#5944)
* Added library and edited generator to support server stub generation with Kumuluzee framework.

* Trimmed and tweaked pom.xml template and removed unnecessary template files from generator and library.

* minor edits

* Added new library to Java client codegen (microprofile-kumuluzee). A
functional KumuluzEE REST client can now be generated.

* Edited README for microprofile-kumuluzee

* Edited docs to include new KumuluzEE library options.

* Updated kee-rest-client client POM dependency version to latest

* fixed pom, edited REAMDE

* Trimmed redundant dependencies from KEE client pom

* Removed unnecessary DefaultGenerator edit, modified config template accordingly.

* Made mp framework an additional property for microprofile instead of being another library option, removed now redundant library files.

* Updated documentation with microprofile framework

* Fixed errors caused by removed functions and variables

* update doc

Co-authored-by: Chuckledog <aljaz.pavsic@gmail.com>
Co-authored-by: Jan Meznaric <jmezna@gmail.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-20 10:25:05 +08:00
William Cheng
81d0f72bd5 [C#][netcore] minor improvements and bug fixes (#7244)
* update spec

* fix datetime default value

* fix the issues when the class name is not in pascal case

* Update modules/openapi-generator/src/main/resources/csharp-netcore/modelGeneric.mustache

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>

* update samples

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>
2020-08-19 22:26:47 +08:00
William Cheng
cf0385676b Deprecate Flash (ActionScript) client generator (#7231)
* deprecate flash client generator

* update doc

* add doc

* remove left-over doc

* add back flash-deprecated.md

* remove flash.md
2020-08-19 13:53:00 +03:00
Ramanth Addala
ed1e30e75e feat(csharp): adding retry configuration (#5929)
* feat(csharp): adding retry configuration

* fix(csharp-retry) : adding retry policy through configuration

* fix(csharp): moving RetryConfiguration out of Configuration class

* fix(csharp): minor changes

* fix(csharp): fixing tabs

* fix(csharp): reverting FILES

* fix(csharp) :reverting some file changes

* fix(csharp): reverting changes

* update samples

* fix(csharp-retry) : fixing merge conflicts and build failure

* fix(chsarp-retry) : FILES changes

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-19 18:18:09 +08:00
William Cheng
98c606c32d Revert "[codegen][Python] Add model cache to speed up code generation (#7220)" (#7245)
This reverts commit bee03685f0.
2020-08-19 14:47:22 +08:00
Sebastien Rosset
bee03685f0 [codegen][Python] Add model cache to speed up code generation (#7220)
* Add modelName to schema cache.

* Add modelName to schema cache.

* add cache optimizations

* add cache optimizations

* remove unused variable
2020-08-18 11:40:49 -07:00
Tatsuro Shibamura
1ff16d0db7 [csharp-netcore] Adding ConfigureAwait(false) using async methods call (#7234) 2020-08-18 13:38:37 +08:00
William Cheng
86240f476b better wordings for CLASS_MODIFIER (#7233) 2020-08-18 12:52:25 +08:00
alanngloux
5bb27c22ec [Typescript-redux-query] Fix issue on api template when we have non empty header (#7179)
* Update apis.mustache

* add import

add httpheaders import

* add model httpHeader and remove useless import

* regeneration of sample

* regenerate sample

Co-authored-by: Alann GLOUX <agloux@efront.com>
2020-08-17 11:16:10 +02:00
Sshnyari
528c2f6bd4 [typescript-redux-query] fixed array requests (#7198)
* fixed typescript-redux-query array requests

* switched to a second solution

* regerating typescipt-redux-query samples
2020-08-17 11:14:51 +02:00
William Cheng
b7b009082a Update csharp-netcore dependencies to the latest stable version (#7194)
* update csharp-netcore dependencies

* update test sdk version

* set tests.sdk version to 15.9.2

* rearrange test

* vs 2019 image

* rollback to v4.61.0

* update Microsoft.NET.Test.Sdk version

* Revert "update Microsoft.NET.Test.Sdk version"

This reverts commit 7a86bfc415.

* rollback Microsoft.NET.Test.Sdk
2020-08-17 14:51:31 +08:00
Anthony Rouneau
e26a4222c7 C-Libcurl client: fix enum model generation (#5604)
The "..._parseFromJSON" template was buggy because the name of the _e type used was not the same than the generated.
See the first argument of "..._convertToJSON" to see that the _e type used there was not the same
2020-08-17 09:51:03 +08:00
Yuriy Belenko
9a03850828 [php] Exclude composer.lock in root gitignore (#7224)
* Add samples composer.lock to root .gitignore

composer.lock may produce CI errors when you need to test build against
different PHP versions. However users most likely want to commit this
file, so I think it's better to exclude it only in root .gitignore.

* Commit composer.lock in default PHP templates

* Refresh samples
2020-08-17 00:13:50 +08:00
William Cheng
31d5652c3d [C++][Cpprest] update cmakelist to fix issue on Linux (#7223)
* fix cmake in linux with cpprestsdk_DIR

* update sample
2020-08-16 22:12:21 +08:00
maschoene
f0e2e372db avoid 'servers not defined in the spec' warn-spam on maven console (#6837) (#6838) 2020-08-16 13:47:30 +08:00
Jean-François Côté
14c14bf9a2 [Play Framework] Update minor version + scala version + swagger-ui version (#7200)
* Update play framework minor version + scala + swagger-ui + Remove bugs in the url of swagger-ui.

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-15 17:25:30 +08:00
Brendan Burns
554747d59c Fix a missing return in the C client sslConfig_create function. (#7217) 2020-08-15 10:35:16 +08:00
ryutah
b3b4526bf7 [go-server] Modified go-server templates to allow services to receive http request's context. (#7214)
* adds context arguments to go-server templates (#6657)

* updates go-api-server samples (#6657)
2020-08-15 00:11:44 +08:00
William Cheng
2b0c5819c0 [C#][netcore] auto-generate appveyor.yml (#7212)
* auto-generate appveyor.yml

* Update modules/openapi-generator/src/main/resources/csharp-netcore/appveyor.mustache

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>

* Update modules/openapi-generator/src/main/resources/csharp-netcore/appveyor.mustache

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>

* Update modules/openapi-generator/src/main/resources/csharp-netcore/appveyor.mustache

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>

* Update modules/openapi-generator/src/main/resources/csharp-netcore/appveyor.mustache

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>

* update samples

Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>
2020-08-14 18:55:01 +08:00
William Cheng
208106d179 remove supportsUWP from template (#7211) 2020-08-14 13:30:53 +08:00
William Cheng
85e1fa1b68 remove packages.config.mustache (#7202) 2020-08-14 12:45:39 +08:00
Tatsuro Shibamura
b6f1f0172e [C#][csharp-netcore] Improvement to standard code format (#7206)
* [csharp-netcore] Improvement to standard code format

* Generate sample clients
2020-08-14 12:26:09 +08:00
William Cheng
dc90adb539 better sync support (#7203) 2020-08-14 11:40:07 +08:00
William Cheng
ae6abfc5f3 better code format (#7197) 2020-08-13 23:45:51 +08:00
Oleh Kurpiak
c9939a2754 [REQ][Java] Additional annotations with String params (#7117)
* Additional annotations with String params

* Additional annotations with String params. Missed sample update

* Additional annotations with String params. Use Jackson annotations

* insert unescaped content

* fix imports

* fix imports
2020-08-12 16:31:03 +08:00
Jon Freedman
9ba34b2805 [Java] parameterize formParams (#5784)
* parameterize formParams

fixes #5782

* sync generated code

* update to latest version of spring, replace MultiValueMap#put with #addAll, remove unused imports

* restore java.util.HashMap import

* update spring version in pom/gradle templates

* re-generate resttemplate samples

* fix test

* fix test

* parameterize an additional usage of LinkedMultiValueMap

* re-generate resttemplate samples

* re-generate webclient samples

* manually edit FILES to replace \ with /
2020-08-12 15:55:53 +08:00
beytun
a1484dac77 [Java] Update templates not to add @Pattern on byte array property (#7153)
* Update Java templates to skip generating @Pattern on byte array properties

* Revert separator changes

* Revert separator changes
2020-08-12 14:29:50 +08:00
TIm Clark
6653cedcc7 [python-experimental] Fix model tests (#7139)
* [python-experimental] Fix model tests

* Fixes model tests to template off the classname instead of
the model's description.
* Uses python-experimental templates when generating
python-experimental samples

* Fix sample file manifest

* Restore remaining tests
2020-08-11 18:38:58 -07:00
TIm Clark
f609120236 [WIP][python-exp] Force camelization of imports (#7186)
* [python-exp] Force camelization of imports

* Add unit test
2020-08-11 14:11:07 -07:00
stgraham2000
b48112d941 Fixes #6942: Added ability to prepend a basePath to typescript-redux-query generators (#6943)
* Added a Configuration object in the Runtime that can be used to update a base path.

Added a new Configuration object that has attributes that can be used to alter the behaviour of the query config generators.  In particular, added a basePath field which can be used to prepend to the urls in the query configs.  The old behaviour only used relative paths for the urls which means cross domain support was not possible.

* Ran script to update the samples after making the template change

Co-authored-by: Steve Graham <stgraham2000@gmail.com>
2020-08-11 11:52:45 +02:00
Masaki Ikeda
13c94eeea0 [Typescript] Import path is invalid in windows. (#7175)
Use `/` instead of `File.Separator`. `File.Separator` is `/` in Windows.
2020-08-11 11:39:43 +02:00
Oleh Kurpiak
c89a5c416d Fix JaxRS Spec generator additional model types (#7180) 2020-08-11 10:28:38 +08:00
Christian Gibson
d37216a411 [python{,-experimental}] Obey floating point timeouts provided to RESTClientObject.request(...) (#7154)
* [fix] support floating point timeout durations

* [lint] generate samples, rebuild project
2020-08-10 13:11:29 -07:00
William Cheng
1ee57ea853 [C#] Switch the spec to OAS v3 from v2 (#7176)
* switch to 3.0 spec in c# clients

* remove samples/openapi3/client/petstore/csharp

* remove samples/openapi3/client/petstore/csharp-netcore/OpenAPIClient

* remove samples/openapi3/client/petstore/csharp-netcore/OpenAPIClientCore/

* update samples
2020-08-10 20:48:13 +08:00
Troy P
780b55a518 [Javascript] Fixing the handling of non primitive types in paramToString (#7171) (#7172) 2020-08-10 16:58:55 +08:00
Shinya Sugmoto
256d498d0e [typescript-node] Fix invalid type when using node@10 and ES5 (#7133)
* replace ClientResponse with IncommingMessage in
mustache

* updated samples

* updated integrationtests
2020-08-10 09:37:13 +02:00
William Cheng
69a410550a Minor fix to github workflow badge 2020-08-10 12:10:31 +08:00
HenningWaack
e4c858cd25 [gradle] Enabling up-to-date checks and gradle caching for openapigenerator tasks (#6716) 2020-08-09 21:40:19 -04:00
Sai Giridhar P
6f0bef61ba feat(csharp-netcore): Adding response headers to the ApiException (#7169) 2020-08-10 00:10:57 +08:00
Jim Schubert
5bbcf30c9c [ci] Verify supported JDK versions on master push (#7085) 2020-08-09 18:19:13 +08:00
Vincent Leon
930c622d11 Issue #6830: Java server - Add getter to ApiException templates (#7150) 2020-08-09 18:17:51 +08:00
William Cheng
f1989cc70f update kotlin samples 2020-08-09 09:49:53 +08:00
tgerth
d78e91517e [Kotlin] Make ApiClient in jvm-retrofit2 be able to use own OkHttpClient (#6999)
* added okHttpClient as parameter to the constructor, adapted createService

* updated sample
2020-08-08 20:59:41 +08:00
Kasper Kondzielski
2a17625e1f Sttp - wrap query params (#6884)
* Wrap query params with additional curly braces

* Sttp - remove unused file
2020-08-08 20:58:43 +08:00
William Cheng
03a0dc7713 Add a link to https://medium.com/@everisBrasil blog post (#7160)
Add a link to https://medium.com/@everisBrasil blog post
2020-08-07 17:13:14 +08:00
William Cheng
5abf8b8378 [C#][netcore] fix regular expression when it contains double quotes (#7147)
* escape special characters in regular expression in csharp netcore client

* escape double quote
2020-08-07 09:51:56 +08:00
William Cheng
4811785c43 remove duplicated cancellationToken in comment (#7148) 2020-08-07 09:51:41 +08:00
William Cheng
57ee092abd update samples 2020-08-06 18:55:21 +08:00
devhl-labs
159936d85a [csharp-netcore] renamed async methods to end with async (#7062)
* renamed async methods to end with async

* update samples

* updated samples

* updated test to use new name

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-06 18:49:53 +08:00
William Cheng
227fb50b2b Merge branch 'master' of https://github.com/openapitools/openapi-generator 2020-08-06 17:40:31 +08:00
William Cheng
5ad2c8315e update samples 2020-08-06 17:33:32 +08:00
William Cheng
5a68bcf532 update image to vs 2019 (#7143) 2020-08-06 17:18:37 +08:00
debugman
742b8bd650 added int32 support for go-server (#7123) 2020-08-06 17:17:07 +08:00
William Cheng
4a7c4ac81d add helper methods to anyOf in java models (#7130) 2020-08-06 15:12:44 +08:00
William Cheng
201ac77d0c [Go] minor improvements (#7134)
* fix boolean option, add eum prefix option

* update code format

* optimize code
2020-08-06 15:11:20 +08:00
William Cheng
be02a33c72 better error handling when publishing module (#7131) 2020-08-06 14:05:43 +08:00
Erik Müller
f752f29af2 [typescript-axios] add promise to bearer and oauth tokens (#7132) 2020-08-05 14:23:06 +02:00
William Cheng
f5775f483a update doc 2020-08-05 16:43:11 +08:00
Mike Raineri
51c45eb28b [REQ] Added enumClassPrefix option to Go server generation (#7008)
* Added enumClassPrefix option to Go server generation

* Using literal 'true' instead of string
2020-08-05 16:33:58 +08:00
William Cheng
c1b8c294aa [Java][jersey2] Add helper methods for oneOf Java classes (#7115)
* add helper methods for oneOf java class

* better test comment
2020-08-05 10:27:38 +08:00
William Cheng
aa698633b3 [Kotlin][Retrofit2] fix missing import for file (#7121)
* fix missing import for file

* test in shippable

* test retrofit2 fx3 kotlin sample

* add pom.xml
2020-08-05 10:24:31 +08:00
Troy P
9f1d012d14 adding handling for epoch dates in javascript ApiClient mustache file (#6497) (#6504) 2020-08-04 23:55:38 +08:00
William Cheng
c1b53df345 update doc 2020-08-04 18:25:25 +08:00
William Cheng
cbcb7ff848 comment out cpanm in travis 2020-08-04 18:07:41 +08:00
tgerth
66cd0f6511 [Kotlin] Rxjava3 support (#6998)
* added rx3 support

* fix rx3 support

* generated samples

* updated samples

* update samples

* changed rxjava3 adapter to the one from squareup

* changed dependency of RxJava3CallAdapterFactory

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-04 16:58:27 +08:00
Dmitry Mavrichev
0cb4c43c42 [BUG][JAVA] Fix error handling in okhttp-gson async api client (#7089)
* Fix error handling in okhttp-gson async api client

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-04 11:44:18 +08:00
Nathan Mische
b8e87bb6fc Update to reset httpRepsonse.Body (#6948)
* Update to reset httpRepsonse.Body such that is available to client consumers via the returned httpResponse variable.

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-04 10:34:41 +08:00
Yuriy Belenko
ba8a50137a [php-lumen] Set required PHP version to ^7.2.5 (#6949)
* Set required PHP version to ^7.2.5

* Write .gitignore into srcBasePath

* Update dependencies

* Copy latest Lumen sources to templates

* Add Lumen license template

* Use Lumen license in templates

* Fix typo in readme

* Add Init App Config readme section

* Add composer.lock to root gitignore

* Add Travis-CI task

* Set OAS 3.0 input spec file for samples

* Refresh samples
2020-08-04 10:33:10 +08:00
Jim Schubert
ca3fa4b9cb [contrib][docs] Assert importance of title/description/repro steps (#7103) 2020-08-04 09:59:08 +08:00
mikesaurus
34f0d02f38 ISSUE-4222: Prevent conflicts with accept(s) local variables in generated Java RestTemplate ApiClient (#7101)
* ISSUE-4222: Change accept(s) to localVarAccept(s) in Java/resttemplate/api.mustache

* ISSUE-4222: Regenerate samples
2020-08-04 09:52:16 +08:00
Jim Schubert
7a846a193a [bug][core] Copy all attributes (not properties) on composed schemas when flattening models (#7106) 2020-08-03 21:16:47 -04:00
Yuriy Belenko
6a08ec59c0 [core] Add type and format properties to model of inline response (#6153) 2020-08-03 18:37:37 -04:00
William Cheng
1be98b4920 [PowerShell] better publishing workflow (#7114)
* better publishing workflow in ps

* use package name in appveyor
2020-08-03 22:56:47 +08:00
Sshnyari
1ffe2a780a [aspnetcore] Typo issues in docs and generated code (#7094)
* fixed a typo issue in aspnetcore generator #4829

* solved an issue with integration tests using WebApplicationFactory

* updated aspnetcore samples impacted by the change
2020-08-03 21:26:40 +08:00
William Cheng
a9576a1e2b fix http signaure auth in build.sbt (#7110) 2020-08-03 10:10:47 +08:00
ngp-star
93159de77d fix for the issue facing spec invlolving arrayschema structure with ref (#6310)
fix for the issue facing spec invlolving arrayschema structure with ref
2020-08-03 00:16:25 +08:00
devhl-labs
761364eec9 [csharp-netcore] added cancellation tokens to async calls (#7077)
* added cancellation tokens to async calls

* changed variable name for consistency

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-08-02 17:53:53 +08:00
William Cheng
43471bacbc [PS] Allow CI to publish the module (#7091)
* better code format in powershell code

* add code to publish ps module
2020-08-02 16:57:40 +08:00
sbu
647d253ac8 [Dart] Treat float as double (#6924)
* [Dart] Treat float as double

* [Dart] Treat float as double in mustache with isNumber
2020-08-02 16:46:50 +08:00
TIm Clark
800d9453a4 [Java][jersey2]Fix gradle HttpSignatureAuth dependencies (#7096)
* Corrects tag for including HttpSignatureAuth in gradle builds
* Updates version of org.tomitribe:tomitribe-http-signatures in
gradle template to match version from maven template
* Updates samples
2020-08-02 16:18:44 +08:00
William Cheng
44726ef471 move maven,gradle tests to shipppable ci (#7108) 2020-08-02 13:32:28 +08:00
Tetiana Servirog
828bdebdac [MARKDOWN] Fix issue 6089 with property and parameter names (#6105)
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-08-01 17:21:18 -04:00
Valentin Valchev
5b22d08d41 [BUG] Multi-Part content type in response ignores properties of composed schema (allOf/oneOf) (#6073) 2020-08-01 08:51:02 -04:00
Jim Schubert
62e5950799 [online] Fix for version conflicts with springfox/boot (#7102) 2020-08-01 06:35:55 -04:00
William Cheng
d143f8db5c skip some installations to shorten build time 2020-08-01 10:45:25 +08:00
William Cheng
a7ccc4addd [Go][Exp] better code format (#7088)
* go-exp-format

* replace spaces with tabs
2020-08-01 10:12:28 +08:00
William Cheng
f49ab2a7ed Fix Shippable CI (#7097)
* disable elixir tests due to shippable ci issue

* comment out kotlin test
2020-08-01 09:30:36 +08:00
Daniel Ludwig
b838e1885f typescript-node: clean up require and import (#6947)
* Fix for issue 4656 typescript-node generate invalid require statement instead of import statement

* Fixed broken link under testing templates

* Result of run generate-samples.sh / typescript-node*

* import stmt depending on flag supportsES6

* Update petstore sample for typescript-node

* import ... from stmt for http/request module

* update samples

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-31 17:58:43 +08:00
William Cheng
0f3edb13f5 commented out perl, bash tests to reduce build time 2020-07-31 15:29:02 +08:00
William Cheng
c93fcd7514 Add a link to conference paper (#7086) 2020-07-31 11:19:51 +08:00
William Cheng
b2293cc363 Add a link to the blog post at qiita (#7084) 2020-07-31 10:42:44 +08:00
William Cheng
e12009907e migrate typescript.sh to new config format (#7078) 2020-07-30 22:55:52 +08:00
William Cheng
6621f46d70 update protobuf samples 2020-07-30 11:30:29 +08:00
k0ral
0494d27f73 [Protobuf] Generate enum fields (#7073) 2020-07-30 11:22:32 +08:00
sbu
472ff9c657 Fix 2d list generation for dart (#6913) 2020-07-30 10:19:43 +08:00
William Cheng
720f864b64 surpress warnings in plantuml generator (#7071) 2020-07-29 19:01:26 +08:00
William Cheng
8a3994e000 update doc 2020-07-29 16:56:08 +08:00
William Cheng
4e59122264 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2020-07-29 15:44:53 +08:00
William Cheng
f64a4d1a4f update samples 2020-07-29 15:44:28 +08:00
William Cheng
789b158cd4 Add "Allow edits from maintainers" tips to the doc (#7068)
Add "Allow edits from maintainers" tips to the doc
2020-07-29 15:41:19 +08:00
Marcus Berndt
0c173fb519 typescript-axios: add Set as language primitive (#6931)
* fix(typescript-axios): add Set as language primitive

* fix(typemapping): added lowercased set as primitive type

* fix(samples): regenerated ts samples and added Set as language primitive to ts docs
2020-07-29 15:35:30 +08:00
William Cheng
fdc0b5b0e2 [PHP] Fix sending array of files with multipart/form-data in PHP template (#7067)
* Fix sending array of files with multipart/form-data in PHP template

* update php samples

Co-authored-by: Aleh Tanasiuk <atanasiuk@hubspot.com>
2020-07-29 15:07:51 +08:00
William Cheng
adc3fef247 improve travis in R client (#7063) 2020-07-29 09:56:11 +08:00
Justin Black
798ad2f87d [python-experimental] simplifies json serialization (#7061)
* Requires python >= 3.5, adds type hints to call_api method

* Adds type hints to files_parameters and __call_api

* Adds and uses a new json encoded to prepare data before it is sent

* Removes nose name from gitlab testing invocations

* Also updates travis to py>=3.5

* Collapses encoder back into sanitize_for_serialization
2020-07-28 08:16:19 -07:00
Calvin Young
fa75469828 Export models package when using withSeparateModelsAndApi flag (#6873)
* Export models package when using withSeparateModelsAndApi flag

* Update typescript-axios samples

* Revert "Update typescript-axios samples"

This reverts commit ac0db6ba940bb78d37b41a5655918cbef9bc2f26.

* Update typescript-axios samples

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-28 16:54:52 +08:00
Dragos CIULICA
86eb1b9112 Bugfix/5.0.0 beta/6853 fixed reactor conditions in template (#6993)
* fixed flux<part> generation

* updated petstore samples

* fixed flux<part> generation

* updated petstore samples

* update samples

Co-authored-by: Dragos CIULICA <atlassian-masernet@bit-factor.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-28 16:02:08 +08:00
Benjamin Seiller
1cb34be8fe [Java][okhttp-gson] prevent UnsupportedOperationException by removal from ImmutableList on setDebugging(false) (#7024)
* fix https://github.com/OpenAPITools/openapi-generator/issues/6934

* fix https://github.com/OpenAPITools/openapi-generator/issues/6934

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-28 10:22:46 +08:00
William Cheng
321ad3c820 fix string comparison in cpp ue4 generator (#7029) 2020-07-28 10:15:46 +08:00
Justin Black
ee0686e13f Python-exp clean up model classnames (#7054)
* Adds lazy_import, removes python-exp java class renaming code, partial removal of getPythonClassName call sites

Fixes PythonClientExperimentalTest.java

Python-exp smaples regeneration

Revers makefile

Reverst pom.xml

Fixes model imports in models.__init__

Updates docstring, omits lazy import in additional properties if we dont need it

Improves additional_properties_type assignment if None

Removes getPythonClassName

Fixes python-exp tests

* Removes unused makefiles
2020-07-27 18:35:41 -07:00
William Cheng
2743242ef4 fix string comparison in fsharp test (#7052) 2020-07-27 22:56:42 +08:00
Moshe Elisha
39c4a123b3 #6715 - Use Resource interface instead of AbstractResource when useAbstractionForFiles=true. (#7051) 2020-07-27 22:54:00 +08:00
William Cheng
312082c168 Add a link to Laracon EU presentation (#7055)
* Add a link to Laracon EU presentation

* add url
2020-07-27 13:53:46 +08:00
William Cheng
08612d8e52 fix string comparison in java pkmst generator (#7050) 2020-07-26 23:14:28 +08:00
k0ral
8d63f75966 [Protobuf] Make it possible to override field index using x-protobuf-index (#7002) 2020-07-26 17:25:35 +08:00
Andrew Kehrig
9bfd9545cc Add empty checks using hasAuthMethods (#6983)
* Add empty checks using hasAuthMethods

* Add regenerated sample for kotlin multiplatform
2020-07-26 17:10:06 +08:00
QP Hou
dba14f5ac6 [Go] support problem details HTTP API (#6793)
Based on https://tools.ietf.org/html/draft-ietf-appsawg-http-problem-00, the content-type would be `application/problem+json`
2020-07-26 15:36:19 +08:00
TIm Clark
9592754e57 [Java][jersey2] Test HttpSignature verification (#7047)
* [Java][jersey2] Test HttpSignature verification

Tests that `HttpSignatureAuth` headers can be verified after
signing.

* Fix formatting
2020-07-26 15:24:59 +08:00
patst
468d80be4b typescript-angular: Angular 10 support (#7037)
* 7036- angular 10 support

* update example files

* fix jersey exmaple file bc of circle ci fail

* add ./ to FILES manually to pass tests
2020-07-24 14:30:58 +02:00
William Cheng
a00521f260 add justin to core team in public page (#7043) 2020-07-24 18:46:48 +08:00
William Cheng
04c41d47a2 [Java][jersey2] fix query parameters in applyToParams (#7028)
* fix query parameters in applyToParams

* update samples
2020-07-24 18:44:15 +08:00
Matthew Davis
9139f91b48 add missing space for flask basic auth header (#7031)
Co-authored-by: Matthew Davis <Matthew.Davis.2@team.telstra.com>
2020-07-24 16:44:50 +08:00
William Cheng
5f8e28a39d Fix string comparison in Python generator's abstract class (#7030)
* fix string comparison in PythonAbstractConnexionServerCodegen.java

* rename abstract class

* put public first
2020-07-24 16:43:39 +08:00
Ravisankar-Challa
276a983fe8 Add property additionalModelTypeAnnotations on the top of pojo class (#6037) 2020-07-24 12:08:30 +08:00
William Cheng
1897f6f96c update samples 2020-07-24 12:07:23 +08:00
Alexandre
83f64dbc15 [Swift5] Fix Datetime default value (#7003)
* [Swift5] Fix Datetime default value

If a default value is provided by the API spec for a date-time attribute,
this commit fixes the generation code to build a correct Swift `Date` object.

* update samples with swiftlint

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-24 11:56:18 +08:00
William Cheng
8e150ab94e fix string comparison (#7027) 2020-07-23 23:01:57 +08:00
Slavek Kabrda
03e8aee8ea [java][jersey2-client] Disable coercion of scalars (#6811)
* [java][jersey2-client] Disable coercion of scalars

* Respect the coercion objectmapper setting in deserializers

* Update jackson in maven plugin to get version that has ALLOW_COERCION_OF_SCALARS
2020-07-23 16:33:15 +08:00
Slavek Kabrda
3199ddc615 Add 'x-generate-alias-as-model' extension to allow enabling generating alias as model per-schema (#6937) 2020-07-23 16:26:18 +08:00
William Cheng
d1fe2e17f1 update samples 2020-07-23 15:01:22 +08:00
Michał Zubkowicz
1bfd86a350 typescript-inversify: client compile error, type casting warning and apostrophes (#6970) 2020-07-23 08:09:27 +02:00
agilob
90d8c32906 [Dart] Fix enum generation (#6729)
* [Dart] Fix enum generation

* Update generated Order file

* Re-add constructor

* Generate dart2 files

* Dart - nicer enum formatting

* Dart - generate enum name as className+enumName

* Dart - dont initialize vars to null by default

Fixes #3633

* Dart - Generate inlined enums and deserialize them

* Merge branch 'master' of github.com:agilob/openapi-generator into 6727

* Dart - Fix using default value

* Fix typo

* Regenerate add dart files

* dart Revert override for dart dio and jaguar

* Fix dart model tests

* Fix dart1 generated template

* Use {{{datatypeWithEnum}}}

* Dart - throw when enum not known

* Fix generating enum with datatype from list
2020-07-23 11:26:25 +08:00
William Cheng
d6549f78b4 Add a link to the dev.to article (#7026) 2020-07-23 11:20:37 +08:00
William Cheng
9899315aab [Java][jersey2] Fix serializeToString (#6956)
* fix empty get body in serializeToString, add tests

* add new file

* fix serialize to better handle null string

* update test comments
2020-07-23 10:39:04 +08:00
William Cheng
6e21ca5930 Add a link to datadog blog (#7025) 2020-07-23 10:32:52 +08:00
Slavek Kabrda
763b8fbe3e [go-experimental] Fix generating array aliases as models (#6939)
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-23 00:27:02 +08:00
William Cheng
e9c231b50a rollback feign version to 10.11 (#7012) 2020-07-22 21:21:11 +08:00
agilob
df2c927dcb [Dart] Annotate required named parameters in model (#6798) 2020-07-22 17:14:36 +08:00
mvistein
454ceb45fa Enabling forward declarations also for cpp-restsdk generator (#6996) 2020-07-22 17:06:14 +08:00
agilob
a59e506c9e [dart] fix toJson does not handle complex type (#6730)
Co-authored-by: arndt <17650715+dont1like1this@users.noreply.github.com>
2020-07-22 16:52:54 +08:00
Dheeraj Nalluri
3784f459e9 [typescript-angular] Unify authorization lookup (#6953)
* [typescript-angular] Unify authorization lookup

* [typescript-angular] Update samples.

* [typescript-angular] Fix typo.

* [typescript-angular] Revert changes to some of the sample files.

* [typescript-angular] Fixed compile error.

* [typescript-angular] Use arrow functions to avoid "this" issues

* Document usage of credentials map.
2020-07-22 10:29:28 +02:00
William Cheng
5e2306446f add occ to the user list (#7011) 2020-07-22 15:55:25 +08:00
Patrice De Saint Steban
b1dcf65c5b [Avro] Default value for no required fields to null (#7006)
* Default value for the non required fields to null

When a field is not required, the avro schema has no default value.
Has described in an [avro issues](https://issues.apache.org/jira/browse/AVRO-1803), the property default: null must be set.

If we don't do this in the avro file, when we generate java code from generated avro schema, the builder fail if the data isn't set in the avro data class.

* Update generated avro sample
2020-07-22 13:13:59 +08:00
William Cheng
2ab35e0386 add JsonTypeName (#6995) 2020-07-21 14:21:10 +08:00
William Cheng
6053f7b17b add ~/.sbt to circleci cache (#7000) 2020-07-21 14:01:52 +08:00
William Cheng
3305ac962a add nokia as the user (#7005) 2020-07-21 13:09:49 +08:00
Moshe Elisha
0a394bc883 [Java][RestTemplate] Use abstraction for files (#6912)
* Fix dir path in PR request template

* Add "useAbstractionForFiles" config option for Java/RestTemplate to allow flexible options in generated client when a file is needed (#6715)

* Add "useAbstractionForFiles" config option for Java/RestTemplate to allow flexible options in generated client when a file is needed (#6715)

* Add "useAbstractionForFiles" config option for Java/RestTemplate to allow flexible options in generated client when a file is needed (#6715)

* #6715 - Add "useAbstractionForFiles" config option for Java/RestTemplate to allow flexible options in generated client when a file is needed.
2020-07-20 22:54:14 +08:00
daiscog
95bd845f79 Typescript-angular generator: Mark deprecated operations with @deprecated JSDoc tag (#6973) 2020-07-20 16:12:42 +02:00
Kim T
383b1e9db8 [NodeJS] nodejs-express-server fix /api-docs path (#6977) 2020-07-20 18:57:50 +08:00
William Cheng
1cfa8141a8 fix config path in pull request template 2020-07-20 15:48:28 +08:00
Justin Black
0e0f8eb74c [python-experimental] Removes python2 (#6991)
* Removes future from python-exp v3 sample

* Removes future from python-exp v2 sample

* Deletes future from remaining python-exp files

* Removes six from python-exp templates

* Removes six from python-exp samples

* Removes mock from python-exp

* Python-exp switched to py3

* Removes python 2.7 for python-exp ci testing

* Requires python>=3.3 for python-exp

* Reverts unnecessary changes to two templates
2020-07-19 09:45:56 -07:00
Justin Black
ed84280108 Python-exp remove codegemodel mutation, allow mixed OneOf types (#6797)
* Stops converting primitive models into object models, adds ComposedSchemas with mixed type

* Samples update for python-exp
2020-07-18 10:13:22 -07:00
William Cheng
44d3f717f8 update java samples 2020-07-18 22:02:16 +08:00
Sebastien Rosset
968f32b55e [Java][Jersey2] Add JsonTypeName annotation (#6551)
* Mustache template should use invokerPackage tag to generate import

* add JsonSubTypes annotation to handle scenario when OAS name has special characters

* add JsonSubTypes annotation to handle scenario when OAS name has special characters. Add unit test

* run sample scripts

* fix unit test

* run sample scripts

* add minimal openapi document to show issue with special characters and discriminators

* Add 'isClassnameSanitized' tag

* Add 'isClassnameSanitized' tag

* Add 'isClassnameSanitized' tag

* Add 'isClassnameSanitized' tag

* Add 'isClassnameSanitized' tag

* Add 'isClassnameSanitized' tag

* Add unit tests for unmarshaling of discriminators with special characters

* Add unit tests for unmarshaling of discriminators with special characters

* use JsonTypeName

Co-authored-by: Vikrant Balyan (vvb) <vvb@cisco.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-18 21:56:41 +08:00
William Cheng
8a774f636b add coinapi logo (#6984) 2020-07-18 18:04:03 +08:00
William Cheng
dd6e8ccc3d replace ~ with $user.home (#6985) 2020-07-18 17:07:03 +08:00
William Cheng
0707b4bb20 [Scala] setup Ivy cache directory (#6978)
* use ivy2 cache

* use ~/.ivy2 cache dir

* add pom.xml to openapi-generator-ignore

* update scala-akka sample

* use ~ for home directory
2020-07-18 15:48:47 +08:00
William Cheng
49f088ec8e [CircleCI] rebalance tests (#6981)
* rearrange tests

* move java tests to others
2020-07-18 15:47:46 +08:00
Artur Pietrzyk
da50523f3b Update README.md (#6974) 2020-07-18 14:00:30 +08:00
William Cheng
d2161c8ad1 update c# samples 2020-07-18 11:18:21 +08:00
mh03r932
ffdd7000a4 fix: make accept header consistent with sync vers. (#6922)
* fix: make accept header of async apis consistent with sync version

* make sync and async version use same logic
* generate samples for csharp-netcore using generate-samples.sh

* fix: make accept header of async apis consistent with sync version

* change tabs to spaces to match existing code
2020-07-17 18:08:51 +08:00
bgong-mdsol
8cd52033e4 [Java][Native] added WithHttpInfo method for async-native (#6903)
* [java-asyncNative] add withHttpInfo

* update api template for async-native
2020-07-17 15:30:02 +08:00
Tomohiro Suwa
9318833fa5 [Ruby] ruby client build from hash nullable (#6945)
* Ruby Client: nullable for build_from_hash

* Generate sameples with a8eed9ce38
2020-07-17 00:39:21 +09:00
Bodo Graumann
7cb8766a5c [Typescript] Fix array model of alias to array (#6888)
* Add failing test

* Add model unaliasing

* Regenerate samples

Not really related to this bug fix, but probably necessary for ci
checks.
2020-07-16 16:31:41 +02:00
翠 / green
fce74884f8 [typescript-axios] switched to new URL API (#6960)
* [typescript-axios] switched to new URL API

* [typescript-axios] fix tests
2020-07-16 15:35:41 +02:00
William Cheng
a348f5a170 [Go] fix unmarshal for models with parents (#6946)
* set disallowAdditionalPropertiesIfNotPresent to false in go exp oas3

* fix unmarshal in go

* remove fields from embedded structs

* fix typo
2020-07-16 14:52:30 +08:00
William Cheng
02a8207b91 skip test for enum model, update readme (#6936) 2020-07-15 19:00:14 +08:00
William Cheng
cef1bec466 fix null payload in java jersey2 (#6933) 2020-07-15 00:50:37 +08:00
Sebastien Rosset
38368c9bda [Java][jersey2] Fix format of Date header in HTTP signature (#6925)
* Use RFC 1123 date format for Date header in HTTP signature

* Use RFC 1123 date format for Date header in HTTP signature
2020-07-15 00:19:55 +08:00
William Cheng
9d76ca291e add nullable body support to powershell (#6930) 2020-07-15 00:19:13 +08:00
Sebastien Rosset
b86a51ae17 fix typo (#6928) 2020-07-14 14:03:04 +08:00
William Cheng
5980c420e3 minor fix to sample code (java jersey2) (#6921) 2020-07-14 12:36:05 +08:00
Justin Black
dad931a25a Python exp sample component renaming + additions (#6917)
* Stops converting primitive models into object models, adds ComposedSchemas with mixed type

* Reverts java and mustache changes

* Reverts mroe files

* Samples regen

* Fixes remaining tests
2020-07-13 10:22:03 -07:00
William Cheng
29183e0280 [PowerShell] support default value in models (#6920)
* support default value in ps

* revert changes to the spec
2020-07-13 13:41:10 +08:00
William Cheng
1044c30293 add cake addin (#6918) 2020-07-13 10:19:06 +08:00
William Cheng
a7446983e8 Add a link to Go article in Qiita Blog (#6919) 2020-07-13 10:18:43 +08:00
William Cheng
53950f8aff Add a link to DreamFactory blog (#6910) 2020-07-11 23:09:52 +08:00
William Cheng
6a49c4ec02 add option disallowAdditionalPropertiesIfNotPresent to ps generator (#6909) 2020-07-11 22:41:24 +08:00
William Cheng
57bf9e85a1 [Go][Experimental] Add the option disallowAdditionalPropertiesIfNotPresent (#6908)
* add disallowAdditionalPropertiesIfNotPresent to go exp generator

* update cache key

* fix spring.xml with 5.0.0-SNAPSHOT
2020-07-11 16:53:28 +08:00
William Cheng
47b4e16420 Remove JDK7 tests in CircleCI (#6890)
* remove jdk7 tests in circleci

* test microprofile-rest-client in jdk8
2020-07-09 17:46:52 +08:00
William Cheng
850c958d83 add splitit as the user (#6887) 2020-07-08 16:45:47 +08:00
William Cheng
ffac26face replace x-additional-properties with isAdditionalPropertiesTrue (#6886) 2020-07-08 16:45:30 +08:00
jekkel
0be0a06d84 [Java][Client][vert.x] Support per-call authentication and JsonNullable in client request bodies, fix path parameter encoding (#5732)
* Support per-call authentication and JsonNullable in client request bodies

Extensions
----------
Since vertx is an asynchronous/reactive toolkit usage of mutable fields
of `ApiClient` to store authentication prohibits delegation of
authentication from incoming call without recreating the client
everytime (which is prohibitively expensive due to instantiation of objectmapper).
This commit adds a per call authentication override which takes precedence
over the mutable fields so a single client can be safely reused. To ease
usage a simple builder-style auxiliary `AuthInfo` object is provided
providing methods for each specified authentication.

A new configuration option for `ApiClient` has been added: `timeout`. It gets
applied as timeout for the vertx http request.

Fixes
-----
Request bodies have been wrongly serialized using vert.x built-in
objectmapper instead of the embedded instance thus usage of beans with
`JsonNullable` wrapped fields in request bodies led to bad requests.

* update vertx samples

* Client Java Vertx: Add url encode for path parameters.

* update vertx samples
2020-07-08 16:30:31 +08:00
William Cheng
ce177a7fb6 Add isAdditionalPropertiesTrue (#6880)
* move postProcessModel to the end

* add isAdditionalPropertiesTrue

* remove supportsAdditionalPropertiesWithComposedSchema from go exp

* remove x-additional-properties

* update comment
2020-07-08 11:30:16 +08:00
Harald Fernengel
566b2b7647 Revert "[typescript-fetch] Support deepObject query params (#6075)" (#6860)
This reverts commit 354f195ec0.

It became superfluous due to some other changes in runtime and changing
of the queryParameters in d9a6f4d
2020-07-07 13:44:25 +02:00
Sebastian Appl
b3bc69c8f1 [typescript] Add default values for typescript types (#6871)
* Typescript:
* Added default values for DateTimeSchema, DateSchema and BooleanSchema.
* Added simple tests for default value parsing

* Fixed date tests for default value parsing
2020-07-07 13:41:57 +02:00
William Cheng
3e69d73ec9 Update JS dependencies (#6867)
* update JS dependencies

* test js in circleci

* remove js test in travis

* remove node version
2020-07-07 12:26:35 +08:00
Jim Schubert
c072291c28 Remove jimschubert from C# technical committee (#6865)
I've not used C# since shortly after my initial contributions to the C#
and asp.net generators, and have not followed the .NET Community closely
for a few years now. As I'm focused on other initiatives I am
removing myself from the C# technical committee so that others may
maintain the generator(s) according to the C# community needs.
2020-07-06 13:36:32 +08:00
Yuriy Belenko
f11b0f886e Add Mock Server client modification feature (#6747) 2020-07-05 16:58:43 -04:00
William Cheng
47b7a0d243 Update documentation with global propperty (#6863)
* update documentation with global propperty

* remove java opts

* remove KotlinNewServerCodegen

* update contributing.md
2020-07-05 18:20:26 +08:00
Jon Schoning
8c5c0597ae [haskell-http-client] avoid depending on ParseTime,FormatTime (#6861)
* [haskell-http-client] avoid depending on ParseTime,FormatTime

* [haskell-http-client] update haddocks
2020-07-04 19:52:52 -05:00
Jim Schubert
6c1aecb151 Update docker-tag-latest-release.yml
Include openapi-generator-cli, run each tag update "always"
2020-07-04 09:29:25 -04:00
William Cheng
61789475ea update python samples 2020-07-03 18:51:31 +08:00
Matthew Davis
f15acbc700 clarify direction of py client side validation flag (#6850)
* clarify direction of py client side validation flag

* change pet store py cli validation disable example

Co-authored-by: Matthew Davis <Matthew.Davis.2@team.telstra.com>
Co-authored-by: EC2 Default User <ec2-user@ip-172-31-37-8.ec2.internal>
2020-07-03 18:39:53 +08:00
Matthew Davis
c4cb8e46c5 fix erronous cmd arg example for docker in readme (#6846)
Co-authored-by: Matthew Davis <Matthew.Davis.2@team.telstra.com>
2020-07-03 18:28:38 +08:00
Jorge Rodríguez Martín
068ad02bc8 [BUG] [JAVA] Fix multiple files upload (#4803) (#6808)
* gh-4803: Fix bug java client multiple files upload

* gh-4803: Fix bug java client multiple files upload

* gh-4803: Fix bug java client multiple files upload

* gh-4803: Fix bug java client multiple files upload

* gh-4803: Fix bug java client multiple files upload
2020-07-03 00:23:17 +08:00
Bruno Coelho
f0157b8c0f [kotlin][client] fix retrofit dependencies (#6836) 2020-07-03 00:03:17 +08:00
William Cheng
aed5be9b9c [PowerShell] add more fields to be customized (#6835)
* more fields to be customized

* set powershell version

* fix psData
2020-07-02 23:50:50 +08:00
grzegorz-moto
23f57a7290 [Java][WebClient]remove the dead code from java ApiClient.mustache (#6556)
* remove the dead code

Remove the dead code from ApiClient
The code is not used and it contains vulnerability of Log Forgery when it writes unvalidated http header to the log. An attacker could take advantage of this behaviour to forge log entries or inject malicious content into the log.

* update Petstore samples

* whitespace
2020-07-02 18:34:28 +08:00
Ian Lord
eaa3c730fa [PHP] Better handling of invalid data (array) (#6760)
* Update ObjectSerializer.mustache

If the $data is a wrongly formatted Json or if data is not an array, php gives error:

Invalid argument supplied for foreach() at line 257 (Now line is 262)

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-02 18:33:22 +08:00
tgerth
38ab7383f2 Make ApiClient in retrofit2 be able to use own OkHttpClient (#6699)
* set adapterBuilder.client() only if okBuilder was used in retrofit2

* updated the samples

* added field okHttpClient and updated samples

* bug fixed, added exception if okBuilder is null

* added semicolon

* added space, changed Exception to RuntimeException and changed its message

* updated the samples
2020-07-02 15:37:57 +08:00
William Cheng
c6cb7ebe2a mark python2 support in flask as deprecated (#6653) 2020-07-02 15:16:53 +08:00
William Cheng
520f87abae update samples 2020-07-02 12:00:27 +08:00
Hippolyte HENRY
63c1b1350d [Java][jersey2] Add a getter for the User-Agent header value (#6831)
* [Java][jersey2] Add a getter for the User-Agent header value

* generate samples
2020-07-02 11:45:30 +08:00
Alessio Zurru
1fe7d703d7 Provides a default nil value for optional init parameters (#6827)
The following change can be helpful to create Swift model objects more simply, in particular when they have many parameters.
In addition, projects switching from swagger-codegen to OpenAPI will not encounter compilation errors and will not need to refactor old code
2020-07-02 00:13:08 +08:00
William Cheng
fa97333a5c [Java] Deprecate feignVersion option (#6824)
* deprecate feign option

* update doc

* udpate samples
2020-07-02 00:12:32 +08:00
Marcel Ramos
8e95298653 [R] Enum R6Class Support, closes #3367 (#5728)
* wip: fix documentation tags

* update model.mustache

* update template for documentation

* update mustache templates

* update mustache templates

* run ./bin/r-petstore and update R pkg docs

* use loadNamespace instead of package:pkgName string

* update R package code

* wip: enum

* update enum function

* use httr::content to unwrap response

* update enum table and functions

* include simplifyVector and auto_unbox arguments

* remove mapping and return strings

* use triple stash values and update enum class methods

* remove extra comma

* minor: formatting

* update and run ./bin/r-petstore.sh

* move helper for template

- export tag does not coincide with original model function
- move helper down so it does

* update tests based on generator

* Revert "update tests based on generator"

This reverts commit b6314c8927.

* Update tests with engine

- preserve test_petstore.R

* restore apiResponse

* restore simplifyVector to TRUE value

* update api.mustache templates

* fix and add tests to package

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-01 15:48:09 +08:00
Benoît Courtine
fa72c63b62 [Rust][Client] Unify sync/async client structure (#6753)
* Unify sync/async client structure (configuration as first param instead of a struct).

* Fix: Hyper client requires the client.rs file.

Co-authored-by: Henning Holm <git@henningholm.de>

* Add API method comments (description and/or notes when available).

Co-authored-by: Henning Holm <git@henningholm.de>
2020-07-01 15:24:20 +08:00
Yuriy Belenko
6224f5e397 [php-ze-ph] Set required PHP version to ^7.2 (#6763)
* Bump required PHP version to ^7.2

* Update required PHP version in readme

* Change samples input spec to OAS 3.0

* Refresh samples
2020-07-01 15:11:34 +08:00
Jochen Schalanda
d9957ad0a9 [Java][client][native][Gradle] Add missing jackson-databind-nullable (#6802)
* Add missing jackson-databind-nullable to java-native Gradle build

Closes #6801

* Regenerate java-native samples

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-07-01 15:08:28 +08:00
Kasper Kondzielski
323cd38b5c Improve sttpOpenApiClient generator (#6684)
Co-authored-by: eugeniyk <keatrance@gmail.com>
2020-06-30 21:14:34 -04:00
Jim Schubert
dae329d8e1 Update docker-tag-latest-release.yml
Chance cron schedule to every other day
2020-06-30 19:01:40 -04:00
Chris Tankersley
d433c2d42f [php-laravel] Upgrade php-laravel to 7.x (#6346)
* Update laravel from 5.6 to 7.0

* Updated petstore example, removed missing files

* Updated PHP version to match composer.json

* Add samples generation config with OAS3 input spec

* Fixed gitignore compile errors, updated to newest petstore example

* Add composer.lock to .gitignore

* Fix generator gitignore location

* Add integration tests

* Refresh samples

Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
2020-06-30 12:22:32 +03:00
William Cheng
978b455f11 Add links to tech blog, youtube video (#6817)
Add links to tech blog, youtube video
2020-06-30 17:15:57 +08:00
William Cheng
f05aa8e80d Prepare 5.0.0-SNAPSHOT (#6812)
* Revert "Prepare 5.0.0-beta release (#6803)"

This reverts commit a77fd443ad.

* prepare 5.0.0 snapshot

* update non-java-invalid-spec.xml
2020-06-30 01:19:46 +08:00
William Cheng
cf0920110c add 5.0.0-beta2 release date 2020-06-30 01:09:23 +08:00
William Cheng
e7672f32bf update readme with 5.0.0-beta 2020-06-30 00:39:54 +08:00
8456 changed files with 236854 additions and 238446 deletions

View File

@@ -11,10 +11,10 @@ assignees: ''
- [ ] Have you provided a full/minimal spec to reproduce the issue?
- [ ] Have you validated the input using an OpenAPI validator ([example](https://apidevtools.org/swagger-parser/online/))?
- [ ] What's the version of OpenAPI Generator used?
- [ ] Have you search for related issues/PRs?
- [ ] Have you [tested with the latest master](https://github.com/OpenAPITools/openapi-generator/wiki/FAQ#how-to-test-with-the-latest-master-of-openapi-generator) to confirm the issue still exists?
- [ ] Have you searched for related issues/PRs?
- [ ] What's the actual output vs expected output?
- [ ] [Optional] Bounty to sponsor the fix ([example](https://www.bountysource.com/issues/66123212-javascript-client-produces-a-wrong-object-for-a-string-enum-type-that-is-used-with-ref))
- [ ] [Optional] Sponsorship to speed up the bug fix or feature request ([example](https://github.com/OpenAPITools/openapi-generator/issues/6178))
<!--
Please follow the issue template below for bug reports.
@@ -45,9 +45,13 @@ please create a Gist (https://gist.github.com) or upload it somewhere else and
link it here.
-->
##### Command line used for generation
##### Generation Details
<!-- including the language, libraries and various options -->
<!--
Prefer CLI steps, including the language, libraries and various options.
Providing config-based settings allows for simpler testing across CLI and plugins.
For examples, see https://github.com/OpenAPITools/openapi-generator/tree/master/bin/configs
-->
##### Steps to reproduce

View File

@@ -2,9 +2,10 @@
<!-- Please check the completed items below -->
### PR checklist
- [ ] 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/config/java*`. For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
- [ ] 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.

View File

@@ -0,0 +1,87 @@
name: Check Supported Java Versions
on:
push:
branches:
- master
jobs:
build:
name: Build on JDK ${{ matrix.java }} and ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
java: [8, 11]
os: [ubuntu-latest]
include:
- java: 8
os: windows-latest
- java: 13
os: ubuntu-latest
# Need to update to Gradle version with v13 support in modules/openapi-generator-gradle-plugin/pom.xml
flags: -am -pl modules/openapi-generator-cli
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- uses: actions/cache@v1
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('pom.xml', 'modules/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('modules/openapi-generator-gradle-plugin/pom.xml') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Build with Maven
shell: bash
run: mvn -nsu -B --quiet -Djacoco.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress clean install --file pom.xml ${{ matrix.flags }}
- name: Test gradle
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
- name: Upload Maven build artifact
uses: actions/upload-artifact@v1
if: matrix.java == '8' && matrix.os == 'ubuntu-latest'
with:
name: artifact
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
verify:
name: Verifies integrity of the commit on ${{ matrix.os }}
needs: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
# include:
# - os: windows-latest
# flags: --skip-docs
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Download build artifact
uses: actions/download-artifact@v1
with:
name: artifact
- name: Run Ensures Script
shell: bash
run: |
git config --global core.fileMode false
git config --global core.safecrlf false
git config --global core.autocrlf true
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 }}

View File

@@ -3,7 +3,7 @@ name: Docker Tag latest-release
# Run every couple of days
on:
schedule:
- cron: "* * */2 * *"
- cron: "30 12 */2 * *"
jobs:
# This pulls all containers for the last known release tag, and tags as latest-release or x-latest-release for shared repo
@@ -28,9 +28,20 @@ jobs:
- name: DockerHub Login
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
# Tags openapitools/openapi-generator-online, which is an automated build
# Tags openapitools/openapi-generator-cli
- name: "Tag openapi-generator-cli:x"
id: tag-openapi-generator-cli
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator-cli:${{steps.tagger.outputs.tag}}
docker tag openapitools/openapi-generator-cli:${{steps.tagger.outputs.tag}} openapitools/openapi-generator-cli:latest-release
docker push openapitools/openapi-generator-cli:latest-release
# Tags openapitools/openapi-generator-online
- name: "Tag openapi-generator-online:x"
id: tag-openapi-generator-online
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator-online:${{steps.tagger.outputs.tag}}
@@ -40,6 +51,7 @@ jobs:
# Tags openapitools/openapi-generator's CLI image (this repo holds CLI + Online via tag prefix)
- name: "Tag openapi-generator:cli-x"
id: tag-cli
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator:cli-${{steps.tagger.outputs.tag}}
@@ -49,6 +61,7 @@ jobs:
# Tags openapitools/openapi-generator's ONLINE image (this repo holds CLI + Online via tag prefix)
- name: "Tag openapi-generator:online-x"
id: tag-online
if: always()
run: |
echo 'Tagging as latest-release: ${{steps.tagger.outputs.tag}}'
docker pull openapitools/openapi-generator:online-${{steps.tagger.outputs.tag}}

View File

@@ -4,6 +4,7 @@ on:
branches:
- master
- '[4-9]+.[0-9]+.x'
- sonar
jobs:
build:
@@ -12,13 +13,13 @@ jobs:
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 1.8
java-version: 11
- name: Compile with Maven
run: mvn clean package jacoco:report
run: mvn -B -q clean install jacoco:report
- name: Jacoco Aggregate
run: mvn jacoco:report-aggregate
- name: Publish to Sonar
run: mvn -B -q sonar:sonar -Dsonar.projectKey=OpenAPITools_openapi-generator -Dsonar.organization=openapitools -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.branch.name=${GITHUB_REF##*/}
run: mvn -B -q -nsu sonar:sonar -Dsonar.projectKey=OpenAPITools_openapi-generator -Dsonar.organization=openapitools -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.branch.name=${GITHUB_REF##*/}

14
.gitignore vendored
View File

@@ -173,10 +173,21 @@ samples/client/petstore/python-asyncio/.venv/
samples/client/petstore/python-asyncio/.pytest_cache/
samples/client/petstore/python-tornado/.venv/
# PHP
samples/client/petstore/php/OpenAPIClient-php/composer.lock
samples/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
# ts
samples/client/petstore/typescript-angular2/npm/npm-debug.log
samples/client/petstore/typescript-node/npm/npm-debug.log
samples/client/petstore/typescript-angular/tsd-debug.log
samples/client/petstore/typescript-axios/tests/**/dist/
samples/client/petstore/typescript-fetch/tests/**/dist/
# aspnetcore
@@ -230,7 +241,8 @@ samples/client/petstore/dart/petstore/test/packages
**/.dart_tool
# JS
samples/client/petstore/javascript/package-lock.json
samples/client/petstore/javascript-es6/package-lock.json
samples/client/petstore/javascript-promise-es6/package-lock.json
# elm
samples/client/petstore/elm/index.html

View File

@@ -3,10 +3,7 @@
##
## You can build _just_ this part with:
## docker --target builder -t container-name:builder -f .hub.cli.dockerfile .
FROM jimschubert/8-jdk-alpine-mvn:1.0 as builder
RUN set -x && \
apk add --no-cache bash
FROM maven:3.6.3-jdk-11-openj9 as builder
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
@@ -18,11 +15,10 @@ RUN mvn -am -pl "modules/openapi-generator-cli" package
## The final (release) image
## The resulting container here only needs the target jar
## and ca-certificates (to be able to query HTTPS hosted specs)
FROM openjdk:8-jre-alpine
FROM openjdk:11.0.8-jre-slim-buster
ENV GEN_DIR /opt/openapi-generator
RUN apk --no-cache add ca-certificates bash
RUN mkdir -p ${GEN_DIR}/modules/openapi-generator-cli/target
WORKDIR ${GEN_DIR}/modules/openapi-generator-cli/target

View File

@@ -3,10 +3,7 @@
##
## You can build _just_ this part with:
## docker --target builder -t container-name:builder -f .hub.online.dockerfile .
FROM jimschubert/8-jdk-alpine-mvn:1.0 as builder
RUN set -x && \
apk add --no-cache bash
FROM maven:3.6.3-jdk-11-openj9 as builder
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
@@ -17,7 +14,7 @@ RUN mvn -am -pl "modules/openapi-generator-online" package
## The final (release) image
## The resulting container here only needs the target jar
FROM openjdk:8-jre-alpine
FROM openjdk:11.0.8-jre-slim-buster
ENV GEN_DIR /opt/openapi-generator
ENV TARGET_DIR /generator

View File

@@ -77,11 +77,13 @@ before_install:
- 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
- sudo apt-get update -qq
- sudo apt-get install -qq bats
- sudo apt-get install -qq curl
#- sudo add-apt-repository ppa:duggan/bats --yes
#- sudo apt-get update -qq
#- sudo apt-get install -qq bats
#- sudo apt-get install -qq curl
# -- skip bash test end
# install dart
#- sudo apt-get update
#- sudo apt-get install apt-transport-https
@@ -93,9 +95,6 @@ before_install:
- phpenv versions
- phpenv global 7.2.15
- php -v
# install perl module
#- cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
#- cpanm Test::Exception Test::More Log::Any LWP::UserAgent JSON URI:Query Module::Runtime DateTime Module::Find Moose::Role
# comment out below as installation failed in travis
# Add rebar3 build tool and recent Erlang/OTP for Erlang petstore server tests.
# - Travis CI does not support rebar3 [yet](https://github.com/travis-ci/travis-ci/issues/6506#issuecomment-275189490).
@@ -107,9 +106,11 @@ before_install:
# install Qt5
- sudo apt install -y --no-install-recommends qt5-default
- cmake --version
# -- skip perl test to shorten build time
# perl dep
- cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
- cpanm --quiet --no-interactive Test::Exception Test::More Log::Any LWP::UserAgent URI::Query Module::Runtime DateTime Module::Find Moose::Role JSON || echo "Igorned failure from cpanm"
#- cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
#- cpanm --quiet --no-interactive Test::Exception Test::More Log::Any LWP::UserAgent URI::Query Module::Runtime DateTime Module::Find Moose::Role JSON || echo "Igorned failure from cpanm"
# -- skip perl test end
# show host table to confirm petstore.swagger.io is mapped to localhost
- cat /etc/hosts
# show java version
@@ -149,14 +150,6 @@ script:
# WARN: Travis will timeout after 10 minutes of no stdout/stderr activity, which is problematic with mvn --quiet.
- mvn --no-snapshot-updates --quiet --batch-mode --show-version clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --no-snapshot-updates --quiet --batch-mode --show-version verify -Psamples -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# test maven plugin
- 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
- (cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildGoSdk)
- (cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew openApiGenerate)
after_success:
# push to maven repo
- if [ $SONATYPE_USERNAME ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then

View File

@@ -17,15 +17,11 @@ trap cleanup EXIT
if [ "$NODE_INDEX" = "1" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci' defined in pom.xml ..."
java -version
# Install golang version 1.14
go version
sudo mkdir /usr/local/go1.14
wget -c https://dl.google.com/go/go1.14.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local/go1.14
export PATH="/usr/local/go1.14/go/bin:$PATH"
go version
mvn --no-snapshot-updates --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet javadoc:javadoc -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
echo "show ivy2 cache"
ls -l /home/circleci/.ivy2/cache
elif [ "$NODE_INDEX" = "2" ]; then
# run ensure-up-to-date sample script on SNAPSHOT version only
@@ -40,7 +36,6 @@ elif [ "$NODE_INDEX" = "2" ]; then
# look for outdated samples
./bin/utils/ensure-up-to-date
fi
#elif [ "$NODE_INDEX" = "3" ]; then
echo "Running node $NODE_INDEX to test haskell"
# install haskell
curl -sSL https://get.haskellstack.org/ | sh
@@ -60,10 +55,17 @@ elif [ "$NODE_INDEX" = "2" ]; then
# run integration tests
mvn --no-snapshot-updates --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
else
echo "Running node $NODE_INDEX to test 'samples.circleci.jdk7' defined in pom.xml ..."
sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
echo "Running node $NODE_INDEX to test 'samples.circleci.others' defined in pom.xml ..."
#sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
java -version
# Install golang version 1.14
go version
sudo mkdir /usr/local/go1.14
wget -c https://dl.google.com/go/go1.14.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local/go1.14
export PATH="/usr/local/go1.14/go/bin:$PATH"
go version
# install dart2
sudo apt-get update
sudo apt-get install apt-transport-https
@@ -73,7 +75,8 @@ else
sudo apt-get install dart
export PATH="$PATH:/usr/lib/dart/bin"
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.jdk7 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
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

View File

@@ -4,7 +4,7 @@
- If you're not using the latest master to generate API clients or server stubs, please give it another try by pulling the latest master as the issue may have already been addressed. Ref: [Getting Started](https://github.com/openapitools/openapi-generator#getting-started)
- Search the [open issue](https://github.com/openapitools/openapi-generator/issues) and [closed issue](https://github.com/openapitools/openapi-generator/issues?q=is%3Aissue+is%3Aclosed) to ensure no one else has reported something similar before.
- File an [issue ticket](https://github.com/openapitools/openapi-generator/issues/new) by providing all the required information.
- File an [issue ticket](https://github.com/openapitools/openapi-generator/issues/new) by providing all the required information. Failure to provide enough detail may result in slow response from the community.
- Test with the latest master by building the JAR locally to see if the issue has already been addressed.
- You can also make a suggestion or ask a question by opening an "issue".
@@ -85,12 +85,16 @@ For [Vendor Extensions](https://github.com/OAI/OpenAPI-Specification/blob/master
To add test cases (optional) covering the change in the code generator, please refer to [modules/openapi-generator/src/test/java/org/openapitools/codegen](https://github.com/openapitools/openapi-generator/tree/master/modules/openapi-generator/src/test/java/org/openapitools/codegen)
To test the templates, please perform the following:
- Update the Petstore sample by running the shell scripts under `bin` and `bin/openapi3` folder. For example, run `./bin/python-petstore.sh` and `./bin/openapi3/python-petstore.sh` to update the Python PetStore API client under [`samples/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/client/petstore/python) and [`samples/openapi3/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/openapi3/client/petstore/python). For Windows, the batch files can be found under `bin\windows` folder. (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: `./bin/python-petstore.sh -t modules/openapi-generator/src/main/resources/python`.
- Run the tests in the sample folder using maven `mvn integration-test -rf :<artifactId>`, e.g. open a shell in `samples/client/petstore/python`, run `mvn integration-test -rf :PythonPetstoreClientTests`. The artifactId of the project can be found in the pom.xml file. (some languages may not contain unit testing for Petstore and we're looking for contribution from the community to implement those tests)
- Update the Petstore sample by running the shell scripts under the `bin` folder. For example, run `./bin/generate-samples.sh .
/bin/configs/python*` to update the Python-related samples under [`samples`](https://github.com/openapitools/openapi-generator/tree/master/samples). For Windows, please install [GIT bash](https://gitforwindows.org/). (If you find that there are new files g
enerated or unexpected changes as a result of the update, that's not unusual as the test cases are added to the OpenAPI spec fro
m time to time. If you've questions or concerns, please open a ticket to start a discussion)
- During development it can be helpful to quickly regenerate the samples without recompiling all of openapi-generator, e.g. when you have only updated the mustache templates. This can be done by passing the `-t` parameter: `-t modules/openapi-generator/src/main/resources/python`.
- 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)
- 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/2_0/petstore-with-fake-endpoints-models-for-testing.yaml)
- 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:
- Run `mvn verify -Psamples`, assuming you have all the required tools installed to run tests for different languages.
@@ -105,7 +109,8 @@ See [OpenAPI Tools wiki](https://github.com/OpenAPITools/openapi-generator/wiki/
- Add test case(s) to cover the change
- Document the fix in the code to make the code more readable
- Make sure test cases passed after the change (one way is to leverage https://travis-ci.org/ to run the CI tests)
- File a PR with meaningful title, description and commit messages.
- File a PR with meaningful title, description and commit messages
- Make sure the option "Allow edits from maintainers" in the PR is selected so that the maintainers can update your PRs with minor fixes, if needed.
- Recommended git settings
- `git config core.autocrlf input` to tell Git convert CRLF to LF on commit but not the other way around
- To close an issue (e.g. issue 1542) automatically after a PR is merged, use keywords "fix", "close", "resolve" in the PR description, e.g. `fix #1542`. (Ref: [closing issues using keywords](https://help.github.com/articles/closing-issues-using-keywords/))

View File

@@ -1,7 +1,4 @@
FROM jimschubert/8-jdk-alpine-mvn:1.0
RUN set -x && \
apk add --no-cache bash
FROM maven:3.6.3-jdk-11-openj9
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
@@ -29,6 +26,6 @@ RUN mvn -am -pl "modules/openapi-generator-cli" package
COPY docker-entrypoint.sh /usr/local/bin/
RUN ln -s /usr/local/bin/docker-entrypoint.sh /usr/local/bin/openapi-generator
ENTRYPOINT ["docker-entrypoint.sh"]
ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
CMD ["help"]

View File

@@ -1,21 +1,22 @@
<h1 align="center">OpenAPI Generator</h1>
<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)
[![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)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/master)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[![iOS Build Status](https://app.bitrise.io/app/4a2b10a819d12b67/status.svg?token=859FMDR8QHwabCzwvZK6vQ&branch=master)](https://app.bitrise.io/app/4a2b10a819d12b67)
[![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)
</div>
<div align="center">
[![Jion 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)
[![Stable releaases in the Maven store](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)
[![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)
[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)
[![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)
[![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)
</div>
@@ -77,7 +78,7 @@ OpenAPI Generator allows generation of API client libraries (SDK generation), se
- [1.4 - Build Projects](#14---build-projects)
- [1.5 - Homebrew](#15---homebrew)
- [1.6 - Docker](#16---docker)
- [1.7 - NPM](#17---npm)
- [1.7 - NPM](#17---npm)
- [2 - Getting Started](#2---getting-started)
- [3 - Usage](#3---usage)
- [3.1 - Customization](#31---customization)
@@ -101,7 +102,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/) | 25.06.2020 | Major release with breaking changes (no fallback) |
| 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) |
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0
@@ -158,16 +162,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/4.3.1/openapi-generator-cli-4.3.1.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.0.0-beta2/openapi-generator-cli-5.0.0-beta2.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar
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
```
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/4.3.1/openapi-generator-cli-4.3.1.jar
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
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -348,7 +352,7 @@ Once built, `run-in-docker.sh` will act as an executable for openapi-generator-c
./run-in-docker.sh list # Executes 'list' command for openapi-generator-cli
./run-in-docker.sh /gen/bin/go-petstore.sh # Builds the Go client
./run-in-docker.sh generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml \
-g go -o /gen/out/go-petstore -DpackageName=petstore # generates go client, outputs locally to ./out/go-petstore
-g go -o /gen/out/go-petstore --package-name=petstore # generates go client, outputs locally to ./out/go-petstore
```
##### Troubleshooting
@@ -389,10 +393,10 @@ openapi-generator version
```
<!-- RELEASE_VERSION -->
Or install a particular OpenAPI Generator version (e.g. v4.3.1):
Or install a particular OpenAPI Generator version (e.g. v5.0.0-beta2):
```sh
npm install @openapitools/openapi-generator-cli@cli-4.3.1 -g
npm install @openapitools/openapi-generator-cli@cli-5.0.0-beta2 -g
```
Or install it as dev-dependency:
@@ -416,7 +420,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/2_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/4.3.1/openapi-generator-cli-4.3.1.jar)
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)
<!-- /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`
@@ -455,29 +459,28 @@ NAME
SYNOPSIS
openapi-generator-cli generate
[(-a <authorization> | --auth <authorization>)]
[--api-name-suffix <api name suffix>]
[--api-package <api package>] [--artifact-id <artifact id>]
[--artifact-version <artifact version>]
[(-c <configuration file> | --config <configuration file>)]
[-D <system properties>...]
[--api-name-suffix <api name suffix>] [--api-package <api package>]
[--artifact-id <artifact id>] [--artifact-version <artifact version>]
[(-c <configuration file> | --config <configuration file>)] [--dry-run]
[(-e <templating engine> | --engine <templating engine>)]
[--enable-post-process-file]
[(-g <generator name> | --generator-name <generator name>)]
[--generate-alias-as-model] [--git-repo-id <git repo id>]
[--git-user-id <git user id>] [--group-id <group id>]
[--generate-alias-as-model] [--git-host <git host>]
[--git-repo-id <git repo id>] [--git-user-id <git user id>]
[--global-property <global properties>...] [--group-id <group id>]
[--http-user-agent <http user agent>]
(-i <spec file> | --input-spec <spec file>)
[(-i <spec file> | --input-spec <spec file>)]
[--ignore-file-override <ignore file override location>]
[--import-mappings <import mappings>...]
[--instantiation-types <instantiation types>...]
[--invoker-package <invoker package>]
[--language-specific-primitives <language specific primitives>...]
[--library <library>] [--log-to-stderr] [--minimal-update]
[--legacy-discriminator-behavior] [--library <library>]
[--log-to-stderr] [--minimal-update]
[--model-name-prefix <model name prefix>]
[--model-name-suffix <model name suffix>]
[--model-package <model package>]
[(-o <output directory> | --output <output directory>)]
[(-p <additional properties> | --additional-properties <additional properties>)...]
[(-o <output directory> | --output <output directory>)] [(-p <additional properties> | --additional-properties <additional properties>)...]
[--package-name <package name>] [--release-note <release note>]
[--remove-operation-id-prefix]
[--reserved-words-mappings <reserved word mappings>...]
@@ -507,13 +510,12 @@ mvn package
```
Other languages have petstore samples, too:
```sh
./bin/android-petstore-all.sh
./bin/java-petstore-all.sh
./bin/objc-petstore.sh
```
... and others. [Here is a list of all scripts.](https://github.com/OpenAPITools/openapi-generator/wiki/Samples-folder#scripts)
- [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.
### [3.1 - Customization](#table-of-contents)
@@ -578,6 +580,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Camptocamp](https://www.camptocamp.com/en)
- [Cisco](https://www.cisco.com/)
- [codecentric AG](https://www.codecentric.de/)
- [CoinAPI](https://www.coinapi.io/)
- [Commencis](https://www.commencis.com/)
- [Crossover Health](https://crossoverhealth.com/)
- [Cupix](https://www.cupix.com/)
@@ -614,6 +617,8 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [MoonVision](https://www.moonvision.io/)
- [Myworkout](https://myworkout.com)
- [NamSor](https://www.namsor.com/)
- [Nokia](https://www.nokia.com/)
- [Options Clearing Corporation (OCC)](https://www.theocc.com/)
- [Openet](https://www.openet.com/)
- [openVALIDATION](https://openvalidation.io/)
- [Oracle](https://www.oracle.com/)
@@ -623,12 +628,14 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Prometheus/Alertmanager](https://github.com/prometheus/alertmanager)
- [QEDIT](https://qed-it.com)
- [Qulix Systems](https://www.qulix.com)
- [Raksul](https://corp.raksul.com)
- [Raiffeisen Schweiz Genossenschaft](https://www.raiffeisen.ch)
- [RedHat](https://www.redhat.com)
- [RepreZen API Studio](https://www.reprezen.com/swagger-openapi-code-generation-api-first-microservices-enterprise-development)
- [REST United](https://restunited.com)
- [Robotinfra](https://www.robotinfra.com)
- [Sony Interactive Entertainment](https://www.sie.com/en/index.html)
- [Splitit](https://www.splitit.com/)
- [Stingray](http://www.stingray.com)
- [Suva](https://www.suva.ch/)
- [Telstra](https://dev.telstra.com)
@@ -636,6 +643,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [TUI InfoTec GmbH](http://www.tui-infotec.com/)
- [unblu inc.](https://www.unblu.com/)
- [Veamly](https://www.veamly.com/)
- [wbt-solutions](https://www.wbt-solutions.de/)
- [Woleet](https://www.woleet.io/)
- [WSO2](https://wso2.com/)
- [Vouchery.io](https://vouchery.io)
@@ -754,6 +762,21 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2020-05-18 - [Spring Boot REST with OpenAPI 3](https://dev.to/alfonzjanfrithz/spring-boot-rest-with-openapi-3-59jm) by [Alfonz Jan Frithz](https://dev.to/alfonzjanfrithz)
- 2020-05-19 - [Dead Simple APIs with Open API](https://www.youtube.com/watch?v=sIaXmR6xRAw) by [Chris Tankersley](https://github.com/dragonmantank) at [Nexmo](https://developer.nexmo.com/)
- 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-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/)
- 2020-07-12 - [Open API 3.0の定義からgolangのサーバコードのスケルトンを作成する](https://qiita.com/professor/items/4cbd04ec084d13057bc2) by [@professor (Qiita Blog)](https://qiita.com/professor)
- 2020-07-20 - [Datadog API client libraries now available for Java and Go](https://www.datadoghq.com/blog/java-go-libraries/) by Jordan Obey at [Datadog Blog](https://www.datadoghq.com/blog)
- 2020-07-23 - [Generate Client SDK for .NET Core using Open Api](https://dev.to/no0law1/generate-client-sdk-for-net-core-using-open-api-2dgh) by [Nuno Reis](https://dev.to/no0law1)
- 2020-07-26 - [Dartのhttp_interceptorライブラリを使うと配列のクエリパラメータが消えてしまう件の応急処置](https://qiita.com/gyamoto/items/eeeff81b6770487319ed) by [@gyamoto](https://qiita.com/gyamoto)
- 2020-08-01 - [Generate Angular ReactiveForms from Swagger/OpenAPI](https://dev.to/martinmcwhorter/generate-angular-reactiveforms-from-swagger-openapi-35h9) by [Martin McWhorter](https://dev.to/martinmcwhorter)
- 2020-08-03 - [Criando Bibliotecas para APIs RESTful com OpenAPI, Swagger Editor e OpenAPI Generator](https://medium.com/@everisBrasil/criando-bibliotecas-para-apis-restful-com-openapi-swagger-editor-e-openapi-generator-75349a6420fd) by [everis Brasil (an NTT DATA Company)](https://medium.com/@everisBrasil)
- 2020-08-19 - [マイクロサービスを連携してみよう](https://thinkit.co.jp/article/17704) by [岡井 裕矢(おかい ゆうや)](https://thinkit.co.jp/author/17588), [泉 勝(いずみ まさる)](https://thinkit.co.jp/author/17705) at [Think ITシンクイット](https://thinkit.co.jp/)
- 2020-08-25 - [OpenAPI Generator と TypeScript で型安全にフロントエンド開発をしている話](https://tech.smarthr.jp/entry/2020/08/25/135631) at [SmartHR Tech Blog](https://tech.smarthr.jp/)
- 2020-09-10 - [Introduction to OpenAPI with Instana](https://www.instana.com/blog/introduction-to-openapi-with-instana/) by [Cedric Ziel](https://www.instana.com/blog/author/cedricziel/) at [Instana Blog](https://www.instana.com/blog/)
- 2020-09-17 - [Generate PowerShellSDK using openapi-generator](https://medium.com/@ghufz.learn/generate-powershellsdk-using-openapi-generator-33b700891e33) by [Ghufran Zahidi](https://medium.com/@ghufz.learn)
## [6 - About Us](#table-of-contents)
@@ -946,7 +969,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| Bash | @frol (2017/07) @bkryza (2017/08) @kenjones-cisco (2017/09) |
| C | @zhemant (2018/11) @ityuhui (2019/12) @michelealbano (2020/03) |
| C++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) @muttleyxd (2019/08) |
| C# | @mandrean (2017/08), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert) @frankyjuang (2019/09) @shibayan (2020/02) |
| C# | @mandrean (2017/08) @frankyjuang (2019/09) @shibayan (2020/02) |
| Clojure | |
| Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) @athornz (2019/12) @amondnet (2019/12) |
| Eiffel | @jvelilla (2017/09) |

View File

@@ -1,5 +1,5 @@
version: '{branch}-{build}'
image: Visual Studio 2017
image: Visual Studio 2019
hosts:
petstore.swagger.io: 127.0.0.1
install:
@@ -15,14 +15,14 @@ install:
# install gradle
- ps: |
Add-Type -AssemblyName System.IO.Compression.FileSystem
if (!(Test-Path -Path "C:\gradle" )) {
if (!(Test-Path -Path "C:\gradle\gradle-5.6.4" )) {
(new-object System.Net.WebClient).DownloadFile(
'https://services.gradle.org/distributions/gradle-5.3.1-bin.zip',
'https://services.gradle.org/distributions/gradle-5.6.4-bin.zip',
'C:\gradle-bin.zip'
)
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:\gradle-bin.zip", "C:\gradle")
}
- cmd: SET PATH=C:\maven\apache-maven-3.2.5\bin;C:\gradle\gradle-5.3.1\bin;%JAVA_HOME%\bin;%PATH%
- cmd: SET PATH=C:\maven\apache-maven-3.2.5\bin;C:\gradle\gradle-5.6.4\bin;%JAVA_HOME%\bin;%PATH%
- cmd: SET MAVEN_OPTS=-Xmx4g
- cmd: SET JAVA_OPTS=-Xmx4g
- cmd: SET M2_HOME=C:\maven\apache-maven-3.2.5
@@ -53,8 +53,8 @@ build_script:
- gradle -b modules\openapi-generator-gradle-plugin\samples\local-spec\build.gradle buildGoSdk --stacktrace
test_script:
# test c# API client (netcore)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- 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
- 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

@@ -1,5 +1,5 @@
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient
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
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'

View File

@@ -1,7 +1,8 @@
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClient
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/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: "true"
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false

View File

@@ -1,6 +1,6 @@
generatorName: csharp-netcore
outputDir: samples/client/petstore/csharp-netcore/OpenAPIClientCore
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/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}'

View File

@@ -1,6 +1,6 @@
generatorName: dart
outputDir: samples/client/petstore/dart2/petstore_client_lib
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/dart/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/dart2
additionalProperties:
hideGenerationTimestamp: "true"

View File

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

View File

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

View File

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

View File

@@ -4,3 +4,4 @@ inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-e
templateDir: modules/openapi-generator/src/main/resources/go
additionalProperties:
packageName: petstore
generateInterfaces: true

View File

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

View File

@@ -1,7 +1,9 @@
generatorName: go
outputDir: samples/openapi3/client/petstore/go/go-petstore
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/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/go
additionalProperties:
enumClassPrefix: "true"
packageName: petstore
disallowAdditionalPropertiesIfNotPresent: false
generateInterfaces: true

View File

@@ -0,0 +1,11 @@
generatorName: java
outputDir: samples/client/petstore/java/feign-no-nullable
library: feign
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:
booleanGetterPrefix: is
artifactId: petstore-feign-no-nullable
hideGenerationTimestamp: "true"
additionalModelTypeAnnotations: '@javax.annotation.concurrent.Immutable'
openApiNullable: "false"

View File

@@ -0,0 +1,9 @@
generatorName: java
outputDir: samples/client/petstore/java/feign
library: feign
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
booleanGetterPrefix: is
artifactId: petstore-feign
hideGenerationTimestamp: "true"

View File

@@ -1,9 +0,0 @@
generatorName: java
outputDir: samples/client/petstore/java/feign10x
library: feign
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:
booleanGetterPrefix: is
artifactId: petstore-feign-10x
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,7 @@
generatorName: java
outputDir: samples/openapi3/client/extensions/x-auth-id-alias/java/jersey2-java8
library: jersey2
inputSpec: modules/openapi-generator/src/test/resources/3_0/extensions/x-auth-id-alias.yaml
additionalProperties:
artifactId: openapi3-extensions-x-auth-id-alias-jersey2-java8
hideGenerationTimestamp: true

View File

@@ -0,0 +1,15 @@
generatorName: java
outputDir: samples/openapi3/client/petstore/java/jersey2-java8-special-characters
library: jersey2
inputSpec: modules/openapi-generator/src/test/resources/3_0/schema-with-special-characters.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-openapi3-jersey2-java8-special-characters
hideGenerationTimestamp: true
serverPort: "8082"
dateLibrary: java8
useOneOfDiscriminatorLookup: true
disallowAdditionalPropertiesIfNotPresent: false
systemProperties:
skipValidateSpec: "false"

View File

@@ -0,0 +1,7 @@
generatorName: java-play-framework
outputDir: samples/server/petstore/java-play-framework-no-nullable
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaPlayFramework
additionalProperties:
hideGenerationTimestamp: "true"
openApiNullable: "false"

View File

@@ -0,0 +1,9 @@
generatorName: java
outputDir: samples/client/petstore/java/vertx-no-nullable
library: vertx
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-vertx-no-nullable
hideGenerationTimestamp: "true"
openApiNullable: "false"

View File

@@ -0,0 +1,8 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-retrofit2-rx3
library: jvm-retrofit2
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-petstore-retrofit2-rx3
useRxJava3: "true"

View File

@@ -1,7 +0,0 @@
generatorName: flash
outputDir: samples/client/petstore/flash
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/flash
additionalProperties:
invokerPackage: org.openapitools
packageName: org.openapitools

View File

@@ -1,7 +0,0 @@
generatorName: java-vertx-web
outputDir: samples/server/petstore/java-vertx-web/rx
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaVertXWebServer
additionalProperties:
hideGenerationTimestamp: "true"
artifactId: java-vertx-web-rx-server

View File

@@ -0,0 +1,7 @@
generatorName: java-vertx-web
outputDir: samples/server/petstore/java-vertx-web
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaVertXWebServer
additionalProperties:
hideGenerationTimestamp: "true"
artifactId: java-vertx-web-server

View File

@@ -0,0 +1,4 @@
generatorName: php-laravel
outputDir: samples/server/petstore/php-laravel
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/php-laravel

View File

@@ -1,4 +1,4 @@
generatorName: php-lumen
outputDir: samples/server/petstore/php-lumen
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/php-lumen

View File

@@ -1,4 +1,4 @@
generatorName: php-ze-ph
outputDir: samples/server/petstore/php-ze-ph
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.yaml
templateDir: modules/openapi-generator/src/main/resources/php-ze-ph

View File

@@ -9,3 +9,4 @@ additionalProperties:
packageName: PSPetstore
powershellGalleryUrl: https://www.powershellgallery.com/packages/PSPetstore
apiNamePrefix: PS
powershellVersion: "5.0"

View File

@@ -1,6 +0,0 @@
generatorName: python-flask
outputDir: samples/server/petstore/python-flask-python2
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/python-flask
additionalProperties:
supportPython2: true

View File

@@ -4,5 +4,5 @@ library: reqwest
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/rust
additionalProperties:
supportAsync: "false"
supportAsync: false
packageName: petstore-reqwest

View File

@@ -0,0 +1,11 @@
generatorName: spring
outputDir: samples/server/petstore/springboot-beanvalidation-no-nullable
library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
java8: "false"
useBeanValidation: true
artifactId: spring-boot-beanvalidation-no-nullable
hideGenerationTimestamp: "true"
openApiNullable: "false"

View File

@@ -4,7 +4,7 @@ library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
java8: "false"
java8: true
useBeanValidation: true
artifactId: spring-boot-beanvalidation
hideGenerationTimestamp: "true"

View File

@@ -5,5 +5,5 @@ templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
artifactId: springboot-delegate
hideGenerationTimestamp: "true"
java8: "false"
java8: true
delegatePattern: "true"

View File

@@ -0,0 +1,10 @@
generatorName: spring
outputDir: samples/client/petstore/spring-cloud-no-nullable
library: spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring/libraries/spring-cloud
additionalProperties:
artifactId: petstore-spring-cloud-no-nullable
responseWrapper: HystrixCommand
hideGenerationTimestamp: "true"
openApiNullable: "false"

View File

@@ -0,0 +1,10 @@
generatorName: spring
outputDir: samples/server/petstore/spring-mvc-no-nullable
library: spring-mvc
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
artifactId: spring-mvc-server-no-nullable
openApiNullable: "false"
serverPort: "8002"
hideGenerationTimestamp: "true"

View File

@@ -4,8 +4,9 @@ library: spring-mvc
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
java8: "false"
java8: true
booleanGetterPrefix: get
artifactId: spring-mvc-server
hideGenerationTimestamp: "true"
serverPort: "8002"
additionalModelTypeAnnotations: '@com.fasterxml.jackson.annotation.JsonFilter(value = "filter-name");@com.fasterxml.jackson.annotation.JsonIgnoreProperties(value = "id")'

View File

@@ -0,0 +1,9 @@
generatorName: typescript-angular
outputDir: samples/client/petstore/typescript-angular-v10-provided-in-root/builds/with-npm
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
additionalProperties:
ngVersion: 10.0.0
npmVersion: 1.0.0
npmName: '@openapitools/typescript-angular-petstore'
npmRepository: https://skimdb.npmjs.com/registry
snapshot: false

View File

@@ -0,0 +1,5 @@
generatorName: typescript-angular
outputDir: samples/client/petstore/typescript-angular-v10-provided-in-root/builds/default
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
additionalProperties:
ngVersion: 10.0.0

View File

@@ -0,0 +1,9 @@
generatorName: typescript-angular
outputDir: samples/client/petstore/typescript-angular-v9-provided-in-root/builds/with-npm
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
additionalProperties:
ngVersion: 9.0.0
npmVersion: 1.0.0
npmName: '@openapitools/typescript-angular-petstore'
npmRepository: https://skimdb.npmjs.com/registry
snapshot: false

View File

@@ -0,0 +1,5 @@
generatorName: typescript-angular
outputDir: samples/client/petstore/typescript-angular-v9-provided-in-root/builds/default
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
additionalProperties:
ngVersion: 9.0.0

View File

@@ -0,0 +1,6 @@
generatorName: typescript
outputDir: samples/openapi3/client/petstore/typescript/builds/deno
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
additionalProperties:
platform: deno
npmName: ts-petstore-client

View File

@@ -0,0 +1,7 @@
generatorName: typescript
outputDir: samples/openapi3/client/petstore/typescript/builds/inversify
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
additionalProperties:
platform: node
npmName: ts-petstore-client
useInversify: true

View File

@@ -0,0 +1,6 @@
generatorName: typescript
outputDir: samples/openapi3/client/petstore/typescript/builds/jquery
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
additionalProperties:
framework: jquery
npmName: ts-petstore-client

View File

@@ -0,0 +1,7 @@
generatorName: typescript
outputDir: samples/openapi3/client/petstore/typescript/builds/object_params
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
additionalProperties:
platform: node
npmName: ts-petstore-client
useObjectParameters: true

View File

@@ -0,0 +1,6 @@
generatorName: typescript
outputDir: samples/openapi3/client/petstore/typescript/builds/default
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
additionalProperties:
platform: node
npmName: ts-petstore-client

View File

@@ -1,51 +0,0 @@
#!/bin/sh
SCRIPT="$0"
echo "# START SCRIPT: $SCRIPT"
while [ -h "$SCRIPT" ] ; do
ls=`ls -ld "$SCRIPT"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
SCRIPT="$link"
else
SCRIPT=`dirname "$SCRIPT"`/"$link"
fi
done
if [ ! -d "${APP_DIR}" ]; then
APP_DIR=`dirname "$SCRIPT"`/..
APP_DIR=`cd "${APP_DIR}"; pwd`
fi
executable="./modules/openapi-generator-cli/target/openapi-generator-cli.jar"
common_args="generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g typescript"
samples="samples/openapi3/client/petstore/typescript/builds"
if [ ! -f "$executable" ]
then
mvn -B clean package
fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
printf "\033[32m## Creating default (fetch) client!\033[0m\n"
args="-o $samples/default --additional-properties=platform=node,npmName=ts-petstore-client $@"
java $JAVA_OPTS -jar $executable $common_args $args
printf "\033[32m## Creating jquery client!\033[0m\n"
args="-o $samples/jquery --additional-properties=framework=jquery,npmName=ts-petstore-client $@"
java $JAVA_OPTS -jar $executable $common_args $args
printf "\033[32m## Creating fetch object client!\033[0m\n"
args="-o $samples/object_params --additional-properties=platform=node,npmName=ts-petstore-client,useObjectParameters=true $@"
java $JAVA_OPTS -jar $executable $common_args $args
printf "\033[32m## Creating fetch client with InversifyJS support!\033[0m\n"
args="-o $samples/inversify --additional-properties=platform=node,npmName=ts-petstore-client,useInversify=true $@"
java $JAVA_OPTS -jar $executable $common_args $args
printf "\033[32m## Creating Deno (fetch) client!\033[0m\n"
args="-o $samples/deno --additional-properties=platform=deno $@"
java $JAVA_OPTS -jar $executable $common_args $args

View File

@@ -19,6 +19,13 @@ if [ $status -ne 0 ]; then
exit $status
fi
if [[ "--skip-docs" == "${1}" ]]; then
# We export here rather than modify our iterable so that:
# - the scripts can show they ran and echo meaningfully
# - the scripts can do cleanup (if necessary) when skipped
export SKIP_EXPORT_DOCS=true
fi
# Some special case generators may expect to be run as a stanalone process (e.g. modifying classpath)
# Docs should always be run, regardless of batch or operation.
declare -a always_iterate=(

View File

@@ -5,6 +5,11 @@ echo "# START SCRIPT: ${SCRIPT}"
executable="./modules/openapi-generator-cli/target/openapi-generator-cli.jar"
if [[ "true" == "${SKIP_EXPORT_DOCS}" ]]; then
echo "Skipping doc exports. Note that docs generated by Windows may break paths as they have not yet been normalized to OS-specific paths."
exit 0
fi
for GENERATOR in $(java -jar ${executable} list --short --include all | sed -e 's/,/\'$'\n''/g')
do
./bin/utils/export_generator.sh ${GENERATOR}

View File

@@ -22,9 +22,9 @@ jobs:
- restore_cache:
keys:
# Default branch if not
- source-v1-{{ .Branch }}-{{ .Revision }}
- source-v1-{{ .Branch }}-
- source-v1-
- 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.
@@ -70,7 +70,7 @@ jobs:
- run: ./CI/circle_parallel.sh
# Save dependency cache
- save_cache:
key: source-v1-{{ .Branch }}-{{ .Revision }}
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
@@ -78,6 +78,7 @@ jobs:
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle

View File

@@ -45,7 +45,7 @@ Once built, `run-in-docker.sh` will act as an executable for openapi-generator-c
./run-in-docker.sh list # Executes 'list' command for openapi-generator-cli
./run-in-docker.sh /gen/bin/generate-samples.sh /gen/bin/configs/go-petstore.yaml # Builds the Go client
./run-in-docker.sh generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml \
-g go -o /gen/out/go-petstore -DpackageName=petstore # generates go client, outputs locally to ./out/go-petstore
-g go -o /gen/out/go-petstore --packageName=petstore # generates go client, outputs locally to ./out/go-petstore
```
### Docker in Vagrant

View File

@@ -8,7 +8,7 @@ sidebar_label: Guidelines
- If you're not using the latest master to generate API clients or server stubs, please give it another try by pulling the latest master as the issue may have already been addressed. Ref: [Getting Started](https://github.com/openapitools/openapi-generator#getting-started)
- Search the [open issue](https://github.com/openapitools/openapi-generator/issues) and [closed issue](https://github.com/openapitools/openapi-generator/issues?q=is%3Aissue+is%3Aclosed) to ensure no one else has reported something similar before.
- File an [issue ticket](https://github.com/openapitools/openapi-generator/issues/new) by providing all the required information.
- File an [issue ticket](https://github.com/openapitools/openapi-generator/issues/new) by providing all the required information. Failure to provide enough detail may result in slow response from the community.
- Test with the latest master by building the JAR locally to see if the issue has already been addressed.
- You can also make a suggestion or ask a question by opening an "issue".
@@ -89,12 +89,16 @@ For [Vendor Extensions](https://github.com/OAI/OpenAPI-Specification/blob/master
To add test cases (optional) covering the change in the code generator, please refer to [modules/openapi-generator/src/test/java/org/openapitools/codegen](https://github.com/openapitools/openapi-generator/tree/master/modules/openapi-generator/src/test/java/org/openapitools/codegen)
To test the templates, please perform the following:
- Update the Petstore sample by running the shell scripts under `bin` and `bin/openapi3` folder. For example, run `./bin/python-petstore.sh` and `./bin/openapi3/python-petstore.sh` to update the Python PetStore API client under [`samples/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/client/petstore/python) and [`samples/openapi3/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/openapi3/client/petstore/python). For Windows, the batch files can be found under `bin\windows` folder. (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: `./bin/python-petstore.sh -t modules/openapi-generator/src/main/resources/python`.
- Run the tests in the sample folder using maven `mvn integration-test -rf :<artifactId>`, e.g. open a shell in `samples/client/petstore/python`, run `mvn integration-test -rf :PythonPetstoreClientTests`. The artifactId of the project can be found in the pom.xml file. (some languages may not contain unit testing for Petstore and we're looking for contribution from the community to implement those tests)
- Update the Petstore sample by running the shell scripts under the `bin` folder. For example, run `./bin/generate-samples.sh .
/bin/configs/python*` to update the Python-related samples under [`samples`](https://github.com/openapitools/openapi-generator/tree/master/samples). For Windows, please install [GIT bash](https://gitforwindows.org/). (If you find that there are new files g
enerated or unexpected changes as a result of the update, that's not unusual as the test cases are added to the OpenAPI spec fro
m time to time. If you've questions or concerns, please open a ticket to start a discussion)
- During development it can be helpful to quickly regenerate the samples without recompiling all of openapi-generator, e.g. when you have only updated the mustache templates. This can be done by passing the `-t` parameter: `-t modules/openapi-generator/src/main/resources/python`.
- 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)
- 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/2_0/petstore-with-fake-endpoints-models-for-testing.yaml)
- 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:
- Run `mvn verify -Psamples`, assuming you have all the required tools installed to run tests for different languages.
@@ -109,7 +113,8 @@ See [OpenAPI Tools wiki](https://github.com/OpenAPITools/openapi-generator/wiki/
- Add test case(s) to cover the change
- Document the fix in the code to make the code more readable
- Make sure test cases passed after the change (one way is to leverage https://travis-ci.org/ to run the CI tests)
- File a PR with meaningful title, description and commit messages.
- File a PR with meaningful title, description and commit messages
- Make sure the option "Allow edits from maintainers" in the PR is selected so that the maintainers can update your PRs with minor fixes, if needed.
- Recommended git settings
- `git config core.autocrlf input` to tell Git convert CRLF to LF on commit but not the other way around
- To close an issue (e.g. issue 1542) automatically after a PR is merged, use keywords "fix", "close", "resolve" in the PR description, e.g. `fix #1542`. (Ref: [closing issues using keywords](https://help.github.com/articles/closing-issues-using-keywords/))

View File

@@ -3,6 +3,77 @@ id: customization
title: Customization
---
## User-defined Templates
The most common scenario for user customization is to override the built-in templates with small modifications. That scenario's documentation is in our [templating](./templating.md) page, and differs from user-defined templates.
Prior to release 5.0.0, whenever a user wanted to include templates which weren't built-in or weren't known to the generator at compile time, they'd need to follow the more involved approach of creating a custom generator as documented later in this document. Beginning in 5.0.0, a user may now provide additional supporting files and extensions to built-in templates via configuration. This feature requires using the external configuration file feature.
Consider that you might want to add some static documentation such as `AUTHORS.md` and a custom tooling script. Rather than a single file for API definitions you also want an implementation file and a separate interface file for each.
You might have an external configuration file named `config.yaml` which defines additional properties like this for a `kotlin` client generator:
```yaml
additionalProperties:
artifactId: kotlin-petstore-client
serializableModel: "true"
dateLibrary: java8
```
You would generate via CLI with the command:
```shell script
openapi-generator generate -g kotlin -i spec.yaml -o outdir -c config.yaml
```
To support the above scenario with custom templates, ensure that you're pointing to your custom template directory and add a `files` node with template file definitions to your config:
```
templateDir: my_custom_templates
additionalProperties:
artifactId: kotlin-petstore-client
serializableModel: "true"
dateLibrary: java8
files:
AUTHORS.md: {}
api_interfaces.mustache:
templateType: API
destinationFilename: Interface.kt
api.mustache:
templateType: API
destinationFilename: Impl.kt
other/check.mustache:
folder: scripts
destinationFilename: check.sh
templateType: SupportingFiles
```
The keys under the `files` node are your template filenames. These honor the same resolution order as all other templates.
The above configuration will do the following:
* Copy `my_custom_templates/AUTHORS.md` to the generated output directory without processing via the template engine (due to template file extension). The empty object definition following `AUTHORS.md` allows the tool to infer the target output filename in the root of the output directory.
* Compile a user-provided `my_custom_templates/api_interfaces.mustache` following our usual API template compilation logic. That is, one file will be created per API; APIs are generated defined according to tags in your spec documentation. The destination filename of `Interface.kt` will act as a suffix for the filename. So, a tag of `Equipment` will output a corresponding `EquipmentInterface.kt`.
* Because `api.mustache` is the same mustache filename as used in your target generator (`kotlin` in this example), we support the following:
- The destination filename provides a suffix for the generated output. APIs generate per tag in your specification. So, a tag of `Equipment` will output a corresponding `EquipmentImpl.kt`. This option will be used whether `api.mustache` targets a user customized template or a built-in template.
- The built-in template will be used if you haven't provided an customized template. The kotlin generator defines the suffix as simply `.kt`, so this scenario would modify only the generated file suffixes according to the previous bullet point.
- Your `api.mustache` will be used if it exists in your custom template directory. For generators with library options, such as `jvm-okhttp3` in the kotlin generator, your file must exist in the same relative location as the embedded template. For kotlin using the `jvm-okhttp3` library option, this file would need to be located at `my_custom_templates/libraries/jvm-okhttp/api.mustache`. See [templating](./templating.md) for more details.
* Compile `my_custom_templates/other/check.mustache` with the supporting files bundle, and output to `scripts/check.sh` in your output directory. Note that we don't currently support setting file flags on output, so scripts such as these will either have to be sourced rather than executed, or have file flags set separately after generation (external to our tooling).
The `templateType` option will default to `SupportingFiles`, so the option for `other/check.mustache` is redundant and provided to demonstrate the full template file configuration options. The available template types are:
* API
* APIDocs
* APITests
* Model
* ModelDocs
* ModelTests
* SupportingFiles
Excluding `SupportingFiles`, each of the above options may result in multiple files. API related types create a file per API. Model related types create a file for each model.
Note that user-defined templates will merge with built-in template definitions. If a supporting file with the sample template file path exists, it will be replaced with the user-defined template, otherwise the user-defined template will be added to the list of template files to compile. If the generator's built-in template is `model_docs.mustache` and you define `model-docs.mustache`, this will result in duplicated model docs (if `destinationFilename` differs) or undefined behavior as whichever template compiles last will overwrite the previous model docs (if `destinationFilename` matches the extension or suffix in the generator's code).
## Custom Generator (and Template)
<a id="creating-a-new-template"></a> If none of the built-in generators suit your needs and you need to do more than just modify the mustache templates to tweak generated code, you can create a brand new generator and its associated templates. OpenAPI Generator can help with this, using the `meta` command:
@@ -20,7 +91,12 @@ These names can be anything you like. If you are building a client for the white
### Use your new generator with the CLI
To compile your library, enter the `out/generators/my-codegen` directory, run `mvn package` and execute the generator:
To compile your library, enter the `out/generators/my-codegen` directory, run `mvn package`.
**NOTE** Running your custom generator requires adding it to the classpath. This differs on [Windows](https://docs.oracle.com/javase/8/docs/technotes/tools/windows/classpath.html) slightly from [unix](https://docs.oracle.com/javase/8/docs/technotes/tools/unix/classpath.html).
If you are running a Windows Subsystem for Linux or a shell such as gitbash, and have issues with the unix variant, try the Windows syntax below.
Now, execute the generator:
```sh
java -cp out/generators/my-codegen/target/my-codegen-openapi-generator-1.0.0.jar:modules/openapi-generator-cli/target/openapi-generator-cli.jar org.openapitools.codegen.OpenAPIGenerator
@@ -28,7 +104,7 @@ java -cp out/generators/my-codegen/target/my-codegen-openapi-generator-1.0.0.jar
For Windows users, you will need to use `;` instead of `:` in the classpath, e.g.
```
java -cp out/generators/my-codegen/target/my-codegen-openapi-generator-1.0.0.jar;modules/openapi-generator-cli/target/openapi-generator-cli.jar org.openapitools.codegen.OpenAPIGenerator
java -cp "out/generators/my-codegen/target/my-codegen-openapi-generator-1.0.0.jar;modules/openapi-generator-cli/target/openapi-generator-cli.jar" org.openapitools.codegen.OpenAPIGenerator
```
Note the `my-codegen` is an option for `-g` now, and you can use the usual arguments for generating your code:
@@ -42,7 +118,7 @@ java -cp out/codegens/customCodegen/target/my-codegen-openapi-generator-1.0.0.ja
For Windows users:
```
java -cp out/codegens/customCodegen/target/my-codegen-openapi-generator-1.0.0.jar;modules/openapi-generator-cli/target/openapi-generator-cli.jar \
java -cp "out/codegens/customCodegen/target/my-codegen-openapi-generator-1.0.0.jar;modules/openapi-generator-cli/target/openapi-generator-cli.jar" \
org.openapitools.codegen.OpenAPIGenerator generate -g my-codegen \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml \
-o ./out/myClient
@@ -93,49 +169,49 @@ If you publish your artifact to a distant maven repository, do not forget to add
You may not want to generate *all* models in your project. Likewise, you may want just one or two apis to be written. If that's the case, you can use system properties or [global properties](./global-properties.md) to control the output.
The default is generate *everything* supported by the specific library. Once you enable a feature, it will restrict the contents generated:
The default is generate *everything* supported by the specific library. Once you enable a feature, it will restrict the contents generated:
```sh
# generate only models
java -Dmodels {opts}
--global-property models
# generate only apis
java -Dapis {opts}
--global-property apis
# generate only supporting files
java -DsupportingFiles
--global-property supportingFiles
# generate models and supporting files
java -Dmodels -DsupportingFiles
--global-property models,supportingFiles
```
To control the specific files being generated, you can pass a CSV list of what you want:
```sh
# generate the User and Pet models only
-Dmodels=User,Pet
--global-property models="User,Pet"
# generate the User model and the supportingFile `StringUtil.java`:
-Dmodels=User -DsupportingFiles=StringUtil.java
--global-property models=User,supportingFiles=StringUtil.java
```
To control generation of docs and tests for api and models, pass false to the option. For api, these options are `-DapiTests=false` and `-DapiDocs=false`. For models, `-DmodelTests=false` and `-DmodelDocs=false`.
These options default to true and don't limit the generation of the feature options listed above (like `-Dapi`):
To control generation of docs and tests for api and models, pass false to the option. For api, these options are `--global-property apiTests=false,apiDocs=false`. For models, `--global-property modelTests=false,modelDocs=false`.
These options default to true and don't limit the generation of the feature options listed above (like `--global-property api`):
```sh
# generate only models (with tests and documentation)
java -Dmodels {opts}
--global-property models
# generate only models (with tests but no documentation)
java -Dmodels -DmodelDocs=false {opts}
--global-property models,modelDocs=false
# generate only User and Pet models (no tests and no documentation)
java -Dmodels=User,Pet -DmodelTests=false {opts}
--global-property models="User,Pet",modelTests=false
# generate only apis (without tests)
java -Dapis -DapiTests=false {opts}
--global-property apis,apiTests=false
# generate only apis (modelTests option is ignored)
java -Dapis -DmodelTests=false {opts}
--global-property apis,modelTests=false
```
When using selective generation, _only_ the templates needed for the specific generation will be used.
@@ -143,13 +219,7 @@ When using selective generation, _only_ the templates needed for the specific ge
To skip models defined as the form parameters in "requestBody", please use `skipFormModel` (default to false) (this option is introduced at v3.2.2)
```sh
java -DskipFormModel=true <path to jar> generate …
```
or
```sh
java <path to jar> generate --global-property skipFormModel=true
--global-property skipFormModel=true
```
This option will be helpful to skip model generation due to the form parameter, which is defined differently in OAS3 as there's no form parameter in OAS3

View File

@@ -13,48 +13,117 @@ For example, if you generate the aspnetcore generator passing `--minimal-update
```bash
export JAVA_OPTS="-Dlog.level=off"
./bin/aspnetcore-petstore-server.sh --minimal-update --dry-run
./bin/generate-samples.sh ./bin/configs/lua.yaml -- --minimal-update --dry-run
```
You'll see the output similar to the following:
```
# START SCRIPT: ./bin/aspnetcore-petstore-server.sh
```bash
$ ./bin/generate-samples.sh ./bin/configs/lua.yaml -- --minimal-update --dry-run
# START SCRIPT: ./bin/generate-samples.sh
This script generates all configs under bin/configs by default.
You may generate a targeted script or set of scripts using glob patterns.
For example:
./bin/generate-samples.sh bin/configs/java-*
You may generate a single config with additional options if you use -- to
separate the single config file from the generator arguments.
For example:
./bin/generate-samples.sh bin/configs/java-vertx.yaml -- --global-property debugModels=true
[main] INFO o.o.codegen.DefaultGenerator - Generating with dryRun=true
[main] INFO o.o.codegen.DefaultGenerator - OpenAPI Generator: lua (client)
[main] INFO o.o.codegen.DefaultGenerator - Generator 'lua' is considered beta.
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] INFO o.o.codegen.DefaultGenerator - Model inline_object (marked as unused due to form parameters) is generated due to the system property skipFormModel=false (default)
[main] INFO o.o.codegen.DefaultGenerator - Model inline_object_1 (marked as unused due to form parameters) is generated due to the system property skipFormModel=false (default)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/json)
[main] WARN o.o.codegen.DefaultCodegen - Multiple MediaTypes found, using only the first one
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/json)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] WARN o.o.codegen.utils.ModelUtils - Multiple schemas found in the OAS 'content' section, returning only the first one (application/xml)
[main] ERROR o.o.codegen.DefaultGenerator -
Dry Run Results:
s /path/to/aspnetcore/.openapi-generator-ignore
n /path/to/aspnetcore/.openapi-generator/VERSION
n /path/to/aspnetcore/Org.OpenAPITools.sln
n /path/to/aspnetcore/README.md
n /path/to/aspnetcore/build.bat
n /path/to/aspnetcore/build.sh
w /path/to/aspnetcore/src/Org.OpenAPITools/.gitignore
n /path/to/aspnetcore/src/Org.OpenAPITools/Attributes/ValidateModelStateAttribute.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Authentication/ApiAuthentication.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Controllers/PetApi.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Controllers/StoreApi.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Controllers/UserApi.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Converters/CustomEnumConverter.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Dockerfile
n /path/to/aspnetcore/src/Org.OpenAPITools/Filters/BasePathFilter.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Filters/GeneratePathParamsValidationFilter.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Models/ApiResponse.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Models/Category.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Models/Order.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Models/Pet.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Models/Tag.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Models/User.cs
n /path/to/aspnetcore/src/Org.OpenAPITools/Org.OpenAPITools.csproj
n /path/to/aspnetcore/src/Org.OpenAPITools/Program.cs
w /path/to/aspnetcore/src/Org.OpenAPITools/Properties/launchSettings.json
n /path/to/aspnetcore/src/Org.OpenAPITools/Startup.cs
w /path/to/aspnetcore/src/Org.OpenAPITools/appsettings.json
w /path/to/aspnetcore/src/Org.OpenAPITools/wwwroot/README.md
w /path/to/aspnetcore/src/Org.OpenAPITools/wwwroot/index.html
n /path/to/aspnetcore/src/Org.OpenAPITools/wwwroot/openapi-original.json
w /path/to/aspnetcore/src/Org.OpenAPITools/wwwroot/web.config
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/.openapi-generator-ignore
n /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/.openapi-generator/VERSION
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/api_response_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/category_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/inline_object_1_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/inline_object_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/order_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/pet_api_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/pet_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/store_api_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/tag_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/user_api_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/user_spec.lua
States:
- w Write
- n Write if New/Updated
- i Ignored
- s Skipped Overwrite
- k Skipped by user option(s)
- e Error evaluating file write state
[main] ERROR o.o.codegen.DefaultGenerator -
Dry Run Results:
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/.openapi-generator-ignore
n /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/.openapi-generator/VERSION
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/api_response_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/category_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/inline_object_1_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/inline_object_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/order_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/pet_api_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/pet_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/store_api_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/tag_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/user_api_spec.lua
k /Users/williamcheng/Code/openapi-generator/samples/client/petstore/lua/spec/user_spec.lua
States:
@@ -78,13 +147,13 @@ If you find an operation that you feel should result in a different state, pleas
Sometimes, you may have issues with variables in your templates. As discussed in the [templating](./templating.md) docs, we offer a variety of system properties for inspecting the models bound to templates.
<dl>
<dt><code>-DdebugOpenAPI</code></dt>
<dt><code>--global-property debugOpenAPI</code></dt>
<dd>Prints out the JSON model of the OpenAPI Document, as seen by OpenAPI Generator</dd>
<dt><code>-DdebugModels</code></dt>
<dt><code>--global-property debugModels</code></dt>
<dd>Prints out the JSON model passed to model templates</dd>
<dt><code>-DdebugOperations</code></dt>
<dt><code>--global-property debugOperations</code></dt>
<dd>Prints out the JSON model passed to operation (api) templates</dd>
<dt><code>-DdebugSupportingFiles</code></dt>
<dt><code>--global-property debugSupportingFiles</code></dt>
<dd>Prints out the JSON model passed to supporting files</dd>
</dl>
@@ -94,14 +163,13 @@ One or more of these properties can be passed alongside other command line optio
openapi-generator generate -g go \
-o out \
-i petstore-minimal.yaml \
-DdebugModels \
-DdebugOperations
--global-property debugModels,debugOperations
```
Or you can add these to your `JAVA_OPTS` environment variable (this applies to every invocation of the tool):
```bash
export JAVA_OPTS="${JAVA_OPTS} -DdebugModels -DdebugOperations"
export JAVA_OPTS="${JAVA_OPTS} --global-property debugModels,debugOperations"
```
> NOTE: Globally available system options like these will apply to all invocations of the generator (CLI and plugins)

View File

@@ -41,7 +41,7 @@ mvn clean package
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate \
-i https://raw.githubusercontent.com/OpenAPITools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.json \
-l java --library=okhttp-gson \
-D hideGenerationTimestamp=true \
--additional-properties hideGenerationTimestamp=true \
-o /var/tmp/java/okhttp-gson/
```

View File

@@ -0,0 +1,70 @@
---
id: file-post-processing
title: File post-processing
---
Each tool (CLI and plugins) supports enabling file post-processing at a high-level. Enabling this option allows for generators which support post-processing to call some external process for each generated file, passing the file path to that tool. The external tool must be defined in an environment variable supported by the generator.
Note that:
* this option is `--enable-post-process-file` in the CLI and `enablePostProcessFile` in plugins
* we require _both_ specifying the environment variable _and_ enabling the option at the tooling level; this feature is opt-in for security
* file processing occurs one at a time
* the external tool may be a custom script which invokes multiple tools
Also refer to the relevant documentation for [CLI](./usage.md), [Maven Plugin](https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator-maven-plugin/README.md), [Gradle Plugin](https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator-gradle-plugin/README.adoc), or [SBT Plugin](https://github.com/OpenAPITools/sbt-openapi-generator/blob/master/README.md).
## Supported Environment Variables
The following environment variables are supported by their respective generators:
<!-- query with: grep -Rn '_POST_PROCESS_FILE"' modules | grep -Eo '[^"]+_POST_PROCESS_FILE' | sort -u -->
* `CPP_POST_PROCESS_FILE`
* `CSHARP_POST_PROCESS_FILE`
* `C_POST_PROCESS_FILE`
* `DART_POST_PROCESS_FILE`
* `FSHARP_POST_PROCESS_FILE`
* `GO_POST_PROCESS_FILE`
* `HASKELL_POST_PROCESS_FILE`
* `JAVA_POST_PROCESS_FILE`
* `JS_POST_PROCESS_FILE`
* `KOTLIN_POST_PROCESS_FILE`
* `OCAML_POST_PROCESS_FILE`
* `PERL_POST_PROCESS_FILE`
* `PHP_POST_PROCESS_FILE`
* `POWERSHELL_POST_PROCESS_FILE`
* `PYTHON_POST_PROCESS_FILE`
* `RUBY_POST_PROCESS_FILE`
* `RUST_POST_PROCESS_FILE`
* `SCALA_POST_PROCESS_FILE`
* `SWIFT_POST_PROCESS_FILE`
* `TS_POST_PROCESS_FILE`
## Example
Let's see how to pass Ruby generated files to Rubocop, a static code analysis/linter/formatter tool.
```
# First, export the required environment variable
export RUBY_POST_PROCESS_FILE="/usr/local/bin/rubocop -a"
export OPENAPI_DOC="https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml"
# Invoke the generator with --enable-post-process-file
openapi-generator generate --enable-post-process-file -i $OPENAPI_DOC -g ruby -o .out-ruby/
```
You will now see messages logged about which files have been processed:
```
[main] INFO o.o.codegen.TemplateManager - writing file /Users/jim/projects/openapi-generator/.out-ruby/.rspec
[main] INFO o.o.codegen.TemplateManager - writing file /Users/jim/projects/openapi-generator/.out-ruby/spec/spec_helper.rb
[main] INFO o.o.c.languages.AbstractRubyCodegen - Successfully executed: /usr/local/bin/rubocopy -a /Users/jim/projects/openapi-generator/.out-ruby/spec/spec_helper.rb
[main] INFO o.o.codegen.TemplateManager - writing file /Users/jim/projects/openapi-generator/.out-ruby/spec/configuration_spec.rb
[main] INFO o.o.c.languages.AbstractRubyCodegen - Successfully executed: /usr/local/bin/rubocopy -a /Users/jim/projects/openapi-generator/.out-ruby/spec/configuration_spec.rb
[main] INFO o.o.codegen.TemplateManager - writing file /Users/jim/projects/openapi-generator/.out-ruby/spec/api_client_spec.rb
[main] INFO o.o.c.languages.AbstractRubyCodegen - Successfully executed: /usr/local/bin/rubocopy -a /Users/jim/projects/openapi-generator/.out-ruby/spec/api_client_spec.rb
[main] INFO o.o.codegen.TemplateManager - Skipped /Users/jim/projects/openapi-generator/.out-ruby/.openapi-generator-ignore (Skipped by supportingFiles options supplied by user.)
[main] INFO o.o.codegen.TemplateManager - writing file /Users/jim/projects/openapi-generator/.out-ruby/.openapi-generator/VERSION
[main] INFO o.o.codegen.TemplateManager - writing file /Users/jim/projects/openapi-generator/.out-ruby/.openapi-generator/FILES
```

View File

@@ -27,9 +27,9 @@ The following generators are available:
* [elm](generators/elm.md)
* [erlang-client](generators/erlang-client.md)
* [erlang-proper](generators/erlang-proper.md)
* [flash](generators/flash.md)
* [flash-deprecated (deprecated)](generators/flash-deprecated.md)
* [go](generators/go.md)
* [go-experimental (experimental)](generators/go-experimental.md)
* [go-deprecated (deprecated)](generators/go-deprecated.md)
* [groovy](generators/groovy.md)
* [haskell-http-client](generators/haskell-http-client.md)
* [java](generators/java.md)

View File

@@ -125,6 +125,7 @@ sidebar_label: ada-server
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -125,6 +125,7 @@ sidebar_label: ada
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -149,6 +149,7 @@ sidebar_label: android
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -62,6 +62,7 @@ sidebar_label: apache2
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -198,6 +198,7 @@ sidebar_label: apex
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -61,6 +61,7 @@ sidebar_label: asciidoc
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -7,7 +7,7 @@ sidebar_label: aspnetcore
| ------ | ----------- | ------ | ------- |
|aspnetCoreVersion|ASP.NET Core version: 3.1, 3.0, 2.2, 2.1, 2.0 (deprecated)| |2.2|
|buildTarget|Target to build an application or library| |program|
|classModifier|Class Modifier can be empty, abstract| ||
|classModifier|Class Modifier for controller classes: Empty string or abstract.| ||
|compatibilityVersion|ASP.Net Core CompatibilityVersion| |Version_2_2|
|enumNameSuffix|Suffix that will be appended to all enum names.| |Enum|
|enumValueSuffix|Suffix that will be appended to all enum values.| |Enum|
@@ -18,7 +18,7 @@ sidebar_label: aspnetcore
|modelClassModifier|Model Class Modifier can be nothing or partial| |partial|
|newtonsoftVersion|Version for Microsoft.AspNetCore.Mvc.NewtonsoftJson for ASP.NET Core 3.0+| |3.0.0|
|operationIsAsync|Set methods to async or sync (default).| |false|
|operationModifier|Operation Modifier can be virtual, abstract or partial| |virtual|
|operationModifier|Operation Modifier can be virtual or abstract| |virtual|
|operationResultTask|Set methods result to Task&lt;&gt;.| |false|
|packageAuthors|Specifies Authors property in the .NET Core project file.| |OpenAPI|
|packageCopyright|Specifies an AssemblyCopyright for the .NET Framework global assembly attributes stored in the AssemblyInfo file.| |No Copyright|
@@ -201,6 +201,7 @@ sidebar_label: aspnetcore
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -62,6 +62,7 @@ sidebar_label: avro-schema
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -92,6 +92,7 @@ sidebar_label: bash
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -100,6 +100,7 @@ sidebar_label: c
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -68,6 +68,7 @@ sidebar_label: clojure
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -141,6 +141,7 @@ sidebar_label: cpp-pistache-server
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -147,6 +147,7 @@ sidebar_label: cpp-qt5-client
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -146,6 +146,7 @@ sidebar_label: cpp-qt5-qhttpengine-server
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -143,6 +143,7 @@ sidebar_label: cpp-restbed-server
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -147,6 +147,7 @@ sidebar_label: cpp-restsdk
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -144,6 +144,7 @@ sidebar_label: cpp-tizen
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -149,6 +149,7 @@ sidebar_label: cpp-ue4
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -168,6 +168,7 @@ sidebar_label: csharp-dotnet2
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -94,6 +94,7 @@ sidebar_label: csharp-nancyfx
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -189,6 +189,7 @@ sidebar_label: csharp-netcore
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✓|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -188,6 +188,7 @@ sidebar_label: csharp
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✓|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -54,6 +54,7 @@ sidebar_label: cwiki
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -136,6 +136,7 @@ sidebar_label: dart-dio
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -132,6 +132,7 @@ sidebar_label: dart-jaguar
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -130,6 +130,7 @@ sidebar_label: dart
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -50,6 +50,7 @@ sidebar_label: dynamic-html
|BasePath|✗|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -131,6 +131,7 @@ sidebar_label: eiffel
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✓|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -82,6 +82,7 @@ sidebar_label: elixir
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -59,6 +59,7 @@ sidebar_label: elm
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

View File

@@ -83,6 +83,7 @@ sidebar_label: erlang-client
|BasePath|✓|ToolingExtension
|Authorizations|✗|ToolingExtension
|UserAgent|✗|ToolingExtension
|MockServer|✗|ToolingExtension
### Data Type Feature
| Name | Supported | Defined By |

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