Compare commits

...

524 Commits

Author SHA1 Message Date
William Cheng
7fbf262206 test run in docker script 2020-06-05 00:05:00 +08:00
Alexey Volkov
6f6c8ede79 [Python] Fixed docstrings in api.mustache (#6391)
* [Python] Fixed docstrings

Fixes https://github.com/swagger-api/swagger-codegen/issues/9630

* Updated generated files

* Fixed python-experimental

* Updated generated files

* Fully fixed the format of the docstrings

* Updated generated files

* Updated generated files in openapi3
2020-06-04 08:46:35 -07:00
Jiri Kuncar
e708cdc83e [BUG][python] Support named arrays (#6493)
* [python] Support named arrays

* Fix named array type

* Use ModelSimple

* Reset samples

* Regenerated

* Animal farm test

* Array of enums

* Clean-up

* Clean-up

* Clean-up

* Fix array type generation

* simplify

* array model is not alias

* Array model has one value field

* ensure up-to-date

* ./bin/utils/ensure-up-to-date --batch

* Solve issue with missing import for array model

* regenerate
2020-06-04 07:50:53 -07:00
William Cheng
2be0afffe2 [Go] whitelist AdditionalProperties in the field name (#6543)
* whitelist AdditionalProperties in Go field name

* code format
2020-06-04 21:55:10 +08:00
Bruno Coelho
ae790ea74e [kotlin][client] remove tabs usage (#6526)
* [kotlin] remove tabs

* [kotlin][client] update pet projects
2020-06-04 21:29:08 +08:00
William Cheng
176c439a6d [PS] automatically derive discriminator mapping for oneOf/anyOf (#6542)
* infer mapping based on oneOf/anyOf schemas

* update files
2020-06-04 21:13:42 +08:00
Samuel Kahn
0f627e70fb [C++][Ue4] various bus fixes (#6539)
* Fixed compilation on linux and UE4.23

* Added string and enum type definition support

* Better handling or variable names, should avoid conflicts with reserved keywords or empty variable names in edge cases

* Updated samples
2020-06-04 20:37:39 +08:00
Reijhanniel Jearl Campos
83a0f7d65b Fix incorrect npx command (#6537)
The current `npx ` command says to use:

```
npx openapi-generator generate -i petstore.yaml -g ruby -o /tmp/test/
```

This however, pulls a similarly-named but different project: [zhang740/openapi-generator](https://www.npmjs.com/package/openapi-generator).

This commit fixes this, by using the appropriate package `@openapitools/openapi-generator-cli`
2020-06-04 20:24:51 +08:00
William Cheng
859e7f7228 update pester to 5.x (#6536) 2020-06-04 15:05:08 +08:00
William Cheng
b2c615b253 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2020-06-04 11:50:34 +08:00
William Cheng
a25359e91c comment out openapi3 java jersey2-java8 tests 2020-06-04 11:46:16 +08:00
William Cheng
5cf4ee1de8 add additional properties support to powershell client generator (#6528) 2020-06-04 11:37:56 +08:00
William Cheng
a6bf956df5 [Go][Experimental] Support additionalProperties (#6525)
* support additonal properties in go

* support additonal properties marshal in go exp

* update go samples
2020-06-04 11:33:21 +08:00
sylvainmoindron
b2305d731c #5476 [kotlin] [spring] fix swagger and spring annotation for defaultValue (#6101) 2020-06-03 22:36:21 -04:00
Jim Schubert
244683d46a [samples] regenerate (#6533) 2020-06-03 21:28:25 -04:00
Jiri Kuncar
d07f459ce3 [python] Fix date-time parsing (#6458) 2020-06-03 21:26:30 -04:00
Dennis Melzer
e2e3405689 Register OAuth2ClientContext as bean (#6172)
* Register OAuth2ClientContext as bean

#6171

* Add tab

#6171

* Modify tests

#6171

* Add import for test

#6171

* Modify spring cloud async test

#6171
2020-06-03 15:36:19 +08:00
William Cheng
4d68953ded [Go][Experimental] Fix discriminator lookup (#6521)
* bug fix, better code format

* update oas3 sample
2020-06-03 01:11:41 +08:00
Justin Van Dort
8fc7ec8458 Typescript-rxjs: print param name (#6368)
* Prints out the parameter name in throwIfNullOrUndefined

* Fixed misspelling

Co-authored-by: Justin Van Dort <justinvandort@gmail.com>
Co-authored-by: Esteban Gehring <esteban.gehring@bithost.ch>
2020-06-02 12:46:30 +02:00
William Cheng
66a3ec7cf0 add oneof discrimistrator lookup to go experimental (#6517) 2020-06-02 16:50:35 +08:00
William Cheng
c1cf63e81c [PowerShell] Add useOneOfDiscriminatorLookup option (#6516)
* add useOneOfDiscriminatorLookup option

* update doc
2020-06-02 14:07:05 +08:00
William Cheng
0fbbbe8a95 add discriminator support to anyOf powershell client (#6512) 2020-06-02 10:55:56 +08:00
William Cheng
4c3eb0d973 [Go][Experimental] Add discriminator support to anyOf (#6511)
* add discriminator support in anyof

* update samples
2020-06-02 10:54:57 +08:00
Jim Schubert
58ed6afc0d Update Generate.java (#6515)
Removed missed -D messages
2020-06-01 21:08:50 -04:00
William Cheng
f91a5f7108 Undo PR #6451 (#6514)
* Revert "Minor enhancement to Python client generator's code format (#6510)"

This reverts commit 3ddc78393c.

* Revert "[Python][Client] Fix delimiter collision issue #5981 (#6451)"

This reverts commit 6783b90fe2.
2020-06-01 20:01:06 +08:00
William Cheng
3ddc78393c Minor enhancement to Python client generator's code format (#6510)
* minor enhancement to python java class code format

* minor format python experimental
2020-06-01 00:36:18 -07:00
Justin Black
d8c422398e [python-experimental] Quicken package loading (#6437)
* apis and models contains all apis and models, omits loading them in the package namespace

* Runs git add -a and commits it

* Fixes test_outer_enum.py

* Fixes test_fruit.py

* Updates test_fruit and test_mammal

* Fixes test_parent_pet

* Updates test_discard_unknown_properties.py

* Updates test_deserialization.py

* Updates v2 docs md files for apis + the readme

* Fixes v2 tests

* v2 doc updates

* Updates v3 docs

* Reverts python_doc_auth_partial.mustache

* Adds sys to v3 tests

* Adds FILES update

Co-authored-by: Justin Black <justinblack@justins-air.lan>
2020-06-01 00:25:37 -07:00
fullcircle23
6783b90fe2 [Python][Client] Fix delimiter collision issue #5981 (#6451)
* [python][client] Fix delimiter collision (#5981)

* [python][client] Fix delimiter collision (#5981) update samples

* [python][client] Fix delimiter collision (#5981) update samples

* [python][client] Fix convert to enum var name (#5981)

* [python][client] Fix convert to enum var name (#5981) update samples
2020-06-01 14:12:24 +08:00
William Cheng
15be875275 [Java][Jersey2] add petstore integration tests (#6508)
* add tests to jersey2 client

* remove import
2020-06-01 11:08:15 +08:00
Samuel Kahn
e3eb3c2f7d UE4 client generator fixes (#6438)
* Added the possibility for a codegen to set the location of the generated model files, similarly to API files.

* Removed std::shared_ptr from the generated types. Types in UE4Codegen are handled as POD structs, not shared pointers.

* Fixed handling of body parameters as per the specification, the single body object is written directly as the payload.

* Fixed handling of files and binaries, if a field is both isFile and isBinary, file will take precedence.

* Updated cpp-ue4 client samples

* Fixed handling of enums in models

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-06-01 00:13:12 +08:00
Frieder Bluemle
a96e783f06 Fix docs typos (#6478) 2020-05-31 23:03:12 +08:00
Yuriy Belenko
39eb32ec27 [php-laravel] Show required PHP version in docs (#6502)
* Add required PHP version to readme

* Add requried PHP version to @phpdoc
2020-05-31 23:02:35 +08:00
Yuriy Belenko
5877e3001d [php-lumen] Show required PHP version in docs (#6501)
* Add required PHP version to readme

* Add requried PHP version to @phpdoc
2020-05-31 23:02:17 +08:00
Sebastien Rosset
54e2574013 [Java][Jersey2] Fix typo and script, Log enhancements, HTTP signature, deserialization (#6476)
* Mustache template should use invokerPackage tag to generate import

* fix typo, fix script issue, add log statement for troubleshooting

* Add java jersey2 samples with OpenAPI doc that has HTTP signature security scheme

* Add sample for Java jersey2 and HTTP signature scheme

* Add unit test for oneOf schema deserialization

* Add unit test for oneOf schema deserialization

* Add log statements

* Add profile for jersey2

* Temporarily disable unit test

* Temporarily disable unit test

* fix typo in pom.xml

* fix duplicate jersey2 samples

* fix duplicate jersey2 samples

* fix duplicate artifact id

* fix duplicate jersey2 samples

* run samples scripts
2020-05-31 22:45:01 +08:00
Jim Schubert
7e5f720f20 Remove deprecations 5.0 (#6060)
* [breaking] Enforce vendor extension naming convention

* [breaking] Rename system properties to global properties

* [docs] Update site with global properties list and usage explanation

* Use proper vendor extension casing in all templates

* Set remaining vendor extensions to convention of lower kebab-cased with x- prefix

* [samples] Regenerate

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java

Before we were adding hasPathParams twice, once with !op.pathParams.isEmpty(), and then again with hasPathParams. This was probably caused by a mistaken merge.

This is causing the difference in samples

Co-authored-by: Richard Whitehouse <richard.whitehouse@metaswitch.com>

* [Samples] Regenerated!

* Fix -D conversion to additional-properties, missed in bat files

* JERSEY2 option changed

* [samples] Regenerate

* [scala][finch] Fix remaining vendor extensions format to conventino

* [scala] The -D option was replaced with --global-property

* [samples] Regenerate

* Fix -DskipFormModel usage which has been moved to --global-property skipFormModel=true

* [samples] Regenerate

Co-authored-by: Richard Whitehouse <richard.whitehouse@metaswitch.com>
2020-05-31 19:14:31 +08:00
Kamil Breguła
40a7e53b19 Improve handling spaces in example command (#6482) 2020-05-30 23:15:53 +08:00
William Cheng
6477a3c431 fix maven plugin snapshot version 2020-05-30 18:28:48 +08:00
William Cheng
5b6d12e15f comment out erlang server test (#6499) 2020-05-30 17:50:51 +08:00
William Cheng
1efeb92f6b Migrate Perl samples to use OAS v3 spec (#6490)
* update perl samples to use oas3

* test perl in travis ci

* fix uri query

* fix comment

* fix bearer token

* fix add pet

* update body to pet
2020-05-30 17:00:22 +08:00
Jim Schubert
a47e522fae [core] Refactor templating management (#6357)
* [core] Refactor templating management

This refactors template management to get logic out of DefaultGenerator
and to provide a cleaner API to template search and read/compile.

Deprecates MockDefaultGenerator, which is not a mock and causes
in-memory retention of file contents. Maintainers should prefer
executing a "dryRun" with new DefaultGenerator(true) or do true
mock/spies if evaluating template intermediaries is truly necessary.
Tests may read written files with lower overhead than the in-process
retention of those bytes.

This attempts to maintain some compatibility with existing templating
adapter interfaces. Any breaking change here would be unintentional but
minimal effort to retarget the new interface.

* Tests for dry run file outputs

* Update API usage in Meta, test TemplateManager

* Wait on lastModified, lookup by filename in SpringCodegenTest

* Test DefaultGenerator + ignore file

* Move config.processOpenAPI in DefaultGenerator

* Fix wrong use of libraries templateDirector (java)

The samples scripts for Java incorrectly referenced the libraries
directories directly rather than the upper-level Java directory. This
was incorrect usage of template directories, because the generator
expects to be given the "language" directory and perform a lookup for
missing templates in the order:

* user defined libraries directory
* user defined language root
* embedded libraries directory
* embedded language root
* _common directory

This is incorrect in our samples scripts because a user or maintainer
has the expectation that any template change to files at the Java/ root
should also be honored on generation if the script specifies a custom
template directory.

* Fix handlebars extension usage, clean up Meta tasks

HandlebarseEngineAdapter previously didn't handle files without
extensions in the same was as the MustacheEngineAdapter. This now allows
for files without extension (or dotfiles) to lookup in the same
location.

Meta tasks are cleaned up to use template manager only, rather than
attempting to create an "empty" generator to use the previous templating
specific methods.

* Update kotlin-multiplatform gradle wrapper

* Rename GraphQL .gitignore template

The .gitignore file is unable to load via classpath resource from the
graphql node server resource directory (for unknown reasons). Before
this change, the missing template would fail silently.

A .gitignore file may exist in other directories and load as expected.
Added a default .gitignore to _common as a fallback so as not to break
any custom generators which may also be failing silently.

* Log entire stacktrace in go sdk built by gradle in AppVeyor

* Rename PHP .gitignore to gitignore

Java resources may not load .gitignore, this follows suit with other
generators and uses "gitignore" (some use "gitignore.mustache").

* [php] Rename .gitignore templates to gitignore

* Use same classpath lookup in common locator

* [rust] Properly escape empty triple-braces

* [samples] Regenerate
2020-05-30 00:19:03 -04:00
William Cheng
74584eb734 migrate apex samples to use oas3 spec (#6488) 2020-05-30 11:17:19 +08:00
William Cheng
5ef626be53 add new file in php-symfony sample 2020-05-30 10:24:40 +08:00
Ghufz
8480706da1 [PS] Refactor the http signing auth with ecdsa support (#6397)
* ValidatePattern having double quote(") throws exception on running Build.ps1

* fix tab with space

* [powershell-experimental] : http signature auth

* fix the tab issue

* merge cnflict fix for powershell experimental

* Htpp signing : added support for ecdsa

* Update modules/openapi-generator/src/main/resources/powershell/configuration.mustache

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* Update modules/openapi-generator/src/main/resources/powershell/configuration.mustache

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* Update modules/openapi-generator/src/main/resources/powershell/configuration.mustache

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* Update modules/openapi-generator/src/main/resources/powershell/configuration.mustache

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* Update modules/openapi-generator/src/main/resources/powershell/configuration.mustache

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* HttpSigningHeader accepts any header available in request to calculate the signature.

* Update modules/openapi-generator/src/main/resources/powershell/http_signature_auth.mustache

Co-authored-by: Sebastien Rosset <serosset@cisco.com>

* Incorporated the review comments

* addressed the merge conflict

Co-authored-by: Ghufran Zahidi <gzahidi@cisco.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
2020-05-30 00:15:38 +08:00
Richard Whitehouse
82410ae90b [Rust Server] Hyper 0.13 + Async/Await support (#6244)
* [Rust Server] Hyper 0.13 + Async/Await support

Upgrade dependencies to Hyper 0.13 and use async/await.

* [Rust Server] Add missing hyper-tls dependency

* [Rust Server] Add missing models import

* Update samples
2020-05-29 15:18:30 +01:00
William Cheng
c3ac84cec2 [Rust] set supportAsync to true as the default (#6480)
* set supportAsync to true

* set reqwest as the default lib
2020-05-29 21:18:15 +08:00
Yuriy Belenko
83bad102ea [php-symfony] Set required PHP version ^7.1.3 (#6181)
* Set PHP 7.1.3 required version

I've tried to specify ^7.0 version at first, but main package which is
symfony/framework-bundle@v4.4.8 requires PHP ^7.1.3.

* Bump Symfony FrameworkBundle to ^4.4.8

Current Symfony Framework stable version is v5.0.8, but I guess it
requires significant codebase upgrade, so I've sticked with 4.4.8 which
shouldn't cause any breaking changes. Old requirement was ^3.3|^4.1
which compatible with 4.4.8.

* Bump PHPUnit version to ^7.0

PHPUnit 8.x version required PHP ^7.2, so I'm setting 7.x version to
support PHP 7.1.
There is new way to specify Kernel class, related PR:
https://github.com/symfony/symfony/pull/22668

* Bump PHP CS Fixer version to ^2.16.3

Configuration and all renamed rules fixed.
Config file renamed to .php_cs.dist as recommended in migration guide.
Migration guide from 1.x to 2.x:
https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/master/UPGRADE.md#config-file

* Remove PHP_CodeSniffer package

Second linter doesn't make sense. I think Symfony user would prefer
PHP CS Fixer over PHP_CodeSniffer because first one maintained by Symfony
members.

* Remove satooshi/php-coveralls package from Composer

This package is abandoned and Coveralls recommends to install it directly
in Travis-CI task script.

* Update Travic-CI config

I've changed test versions to PHP 7.1.3 and 7.2. PHPUnit generates
coverage report in report/logs/clover.xml file. Then PHP CS Fixer runs
with --dry-run option to not override anything just to show coding style
errors.

* Add basic Coveralls config

This is basic recommended config for a PHP based project.

* Add symfony/yaml package

This package was part of satooshi/php-coveralls, now it should be
defined as dev dependency.

* Do not commit composer.lock

I think committed composer.lock can cause CI errors while tests on fresh
installs are better.

* Remove confusing Ruby comment
2020-05-29 18:35:11 +08:00
William Cheng
30caeedb98 update doc 2020-05-29 18:16:55 +08:00
Jim Schubert
cc59367909 [csharp] Rename netstandard to netstandard1.3 (#6460) 2020-05-29 17:32:52 +08:00
ShakedH
a64f547c2a feat: support deprecated parameters for typescript-axios generator (#6475)
Add @deprecated to JSDoc for a parameter when it is marked as deprecated

Co-authored-by: Shaked Hazon <s.hazon@f5.com>
2020-05-29 08:14:54 +02:00
Jose Camara
3bf28be4bb [REQ][typescript-axios] useSingleRequestParameter should mark parameter optional if all properties are optional (#6477)
* Include map for `AnyType` in `typescript`

* Exclude `any` from the list of types extracted from `anyOf`, `allOf`, `oneOf`

Exclude if there are other meaningful types

* Include new scripts and `yaml` to test the new case

* Execute the new sample for `typescript-axios`

* Filter out only `AnyType` instead of all `any` types

* Renamed and modified samples

- Included more examples using `oneOf, `allOf`, `anyOf`
- Includede examples when types that are translated to `any` are involved (`file`)

* Changes in mustache file

Set default value to empty object when the `requestParameter` doesn't have any required param

* New schema with operations without required params

* Generate the sample
2020-05-29 08:14:16 +02:00
William Cheng
7cef7b7591 better struct alias in rust (#6470) 2020-05-29 13:13:08 +08:00
William Cheng
52fcdd5974 Migrate Go server samples to OAS 3 only (#6471)
* migrate go server samples to oas3

* add back pom.xml
2020-05-29 11:42:07 +08:00
William Cheng
bde0d77c8f [Rust][reqwest] add async support (#6464)
* fix rust sync client

* update doc
2020-05-29 00:45:51 +08:00
Sebastien Rosset
f7f41410e7 [codegen][python-experimental] Composed schema with additionalProperties (#6290)
* Mustache template should use invokerPackage tag to generate import

* Add a unit test for allOf and additionalProperties

* Fix getAdditionalProperties

* Add code comments

* Add code comments

* set nullable for additionalproperties

* add variants of additionalProperties

* Add more unit tests

* Handle additionalProperties for composed schemas

* improve code comments

* Add code comments

* Add code comments

* Add code comments

* Add code comments

* Add code comments

* Add assertions in unit tests

* Add new property to support the 'additionalProperties' keyword with composed schemas

* run sample scripts

* fix unit tests to handle additionalProperties

* Handle additional properties and composed schema

* Handle additional properties and composed schema

* Add support for additionalProperties and composed schema

* Format java code

* Add more unit tests for Python

* Handle reference in additionalProperty keyword

* Handle reference in additionalProperty keyword

* Add use case for additionalProperties and reference

* run sample scripts

* resolve schema reference

* Add OpenAPI argument

* Add OpenAPI argument

* Add OpenAPI argument

* Add OpenAPI argument

* Add OpenAPI argument

* Handle additional property keyword with reference

* Handle additional property keyword with reference

* Handle additional property keyword with reference

* Handle additional property keyword with reference

* add additionalproperties attribute with boolean values

* Run sample scripts

* handle additional properties

* Handle additionalProperties boolean values

* Run sample scripts

* fix javadoc issues

* fix javadoc issues

* Add Locale to String.toLowerCase

* execute sample scripts

* handle additional properties

* Add code comments

* Handle imports of referenced models in additional properties

* Handle isNullable class

* handle nullable type

* improve documentation, run sample scripts

* improve documentation, run sample scripts

* execute sample scripts

* execute sample scripts

* Execute sample scripts

* Run samples scripts

* set legacyAdditionalPropertiesBehavior to true by default, except python

* create separate yaml file to avoid having lots of changes in the pr

* create separate yaml file to avoid having lots of changes in the pr

* create separate yaml file to avoid having lots of changes in the pr

* create separate yaml file to avoid having lots of changes in the pr

* create separate yaml file to avoid having lots of changes in the pr

* create separate yaml file to avoid having lots of changes in the pr

* Change name of CLI option

* Generate doc

* Add TODO statement

* add code comments

* run samples scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* refactor cli option for additional properties

* refactor cli option for additional properties

* run samples scripts

* run sample scripts

* run sample scripts

* run sample scripts

* run sample scripts

* Add yaml comments

* small refactor

* small refactor

* run sample scripts

* run sample scripts

* fix unit tests

* Set disallowAdditionalPropertiesIfNotPresent flag

* reduced size of test yaml file

* simplify code and add imports directly

* rename some of the properties used in tests

* Handle more scenarios for nullable types

* add code comments

* Adds *args input to __init__ method to fix test testFruitNullValue

* Resolve merge issues

* run samples scripts

* run doc generator

* fix merge conflicts

Co-authored-by: Justin Black <justin.a.black@gmail.com>
2020-05-29 00:40:48 +08:00
William Cheng
07647b1a31 [Java] Decommission Retrofit 1.x support (#6447)
* decommission retrofit 1.x support

* remove retrofit 1.x from pom.xml
2020-05-28 21:43:38 +08:00
William Cheng
34ccec889a remove scala oas3 samples (#6446) 2020-05-28 21:42:10 +08:00
Sebastien Rosset
b87c927fc2 [Java][jersey2] Fix RuntimeException when HTTP signature parameters are not configured (#6457)
* Mustache template should use invokerPackage tag to generate import

* fix runtime exception when HttpSignatureAuth is not set

* fix runtime exception when HttpSignatureAuth is not set
2020-05-28 21:35:16 +08:00
Sebastien Rosset
2712bbd7c1 [Java][jersey2] Improve http signature code comments (#6463)
* Mustache template should use invokerPackage tag to generate import

* fix typo and improve code comments
2020-05-28 21:34:00 +08:00
Esteban Gehring
ec39005ae5 [typescript-angular] drop support of angular below 6.0.0 (#6360)
* typescript-angular: drop support for angular below 6.0.0

* typescript-angular: re-generate samples

* typescript-angular: re-generate docs
2020-05-28 11:28:11 +02:00
Jim Schubert
7d4bbcc29b [cli] new 'author template' command (#6441)
* [cli] new 'author template' command

This new command allows users to extract templates for authoring
(customization) without the complexity of finding and downloading a
specific directory for their versioned artifact.

Example usage:

```
openapi-generator author template -g java --library webclient
```

This will write all templates with library-specific templates to the
'./out' directory relative to the current directory.

CLI will refer the user to
https://openapi-generator.tech/docs/templating after generation

* [docs] Usage of author template command

* Log warning if author template fails to output requested library
2020-05-28 00:12:59 -04:00
Justin Black
a017f3a892 python-experimental updates ancestor + adds descendant discriminator tests (#6417)
* Updates comments in new method

* Adds missing line in model_utils.py

* Removes biology examples, adds ParentPet ancestor example + test, adds Pig schemas

* Updates comment and var names in get_discriminator_class, adds testMammal test

* Updates comment
2020-05-27 20:33:43 -07:00
Rhuan
dc48cfdf74 Fix ruby deprecation error (#6450)
* Update obsolete config in rubocop.

* Update generated petstore clients
2020-05-28 09:33:06 +08:00
William Cheng
ae9d4ee222 [Java][Feign] decommission 9.x support (#6445)
* decommission feign 9.x

* update ci
2020-05-28 09:30:41 +08:00
William Cheng
e3faeac0f5 fix struct export in rust reqwest (#6453) 2020-05-28 09:30:00 +08:00
William Cheng
105efd3c68 [Rust][reqwest] add tests to CI (#6454)
* add tests to rust reqwest petstore client

* add rust reqwest tests to ci
2020-05-28 09:29:42 +08:00
William Cheng
92a350ed72 set pester version (#6448) 2020-05-27 17:22:50 +08:00
William Cheng
64ddad5919 update datadog logo 2020-05-27 16:33:22 +08:00
William Cheng
301901bbbc update groovy petstore samples 2020-05-27 16:27:34 +08:00
William Cheng
45fc71b06a add datadog as sponsor (#6444) 2020-05-27 15:21:11 +08:00
William Cheng
ddcda1ee50 Migrate Groovy samples to oas3 (#6435)
* migrate groovy samples to oas3

* update samples
2020-05-27 10:59:53 +08:00
Jim Schubert
e6ba9451e8 [samples] Renerate Kotlin coroutines 2020-05-26 21:51:32 -04:00
Bruno Coelho
fac233b3a3 [kotlin][client] add support for coroutines with OkHttp (#6362)
* [kotlin][client] add support for coroutines with OkHttp

* [kotlin] fix petstore project
2020-05-26 23:04:52 +08:00
William Cheng
0a5b02eee5 update package-json.lock (#6430) 2020-05-26 22:26:44 +08:00
William Cheng
029ce2c0b3 fix hardcoded match type (#6431) 2020-05-26 21:47:55 +08:00
William Cheng
707a88d998 java jersey2 enhance anyOf (#6420) 2020-05-26 10:26:39 +08:00
William Cheng
0572030e79 [Java][jersey2] minor improvement to jersey2 tests (#6418)
* minor improvement to jersey2 test, remove script/bat

* remove tests for java7 jersey2

* remove log from abstrct java class

* undo change to jaxrs path
2020-05-26 10:26:25 +08:00
William Cheng
c73cafec6b ps minor style change (#6424) 2020-05-26 10:17:02 +08:00
William Cheng
d49de5b577 [JS] mark ES5 as deprecated (#6408)
* mark js es5 deprecated, remove samples, migrate samples to use oas3

* update test in pom.xml

* update js samples

* delete js es5 samples

* update js petstore

* remove openapi3 js petstore

* fix tests

* skip test/model/AdditionalPropertiesArray.spec.js

* fix test

* update doc
2020-05-26 09:55:00 +08:00
Jim Schubert
fb57b602c2 [ci] Execute maven and verify with no-snapshot-updates (#6415) 2020-05-25 14:30:12 -04:00
William Cheng
8bbce3397d add new file in ts axios samples 2020-05-26 00:13:41 +08:00
William Cheng
6abc4fdab2 Migrate all scala generators to use OAS3 (#6407)
* migrate all scala generators to use oas3

* add back pom.xml for scala-sttp

* skip form model in scalaz

* fix scala lagom tests

* add new files

* skip form models in scala finch petstore

* update samples
2020-05-25 23:09:34 +08:00
William Cheng
db4c4917e2 migrate ruby samples to oas3 (#6414) 2020-05-25 23:02:30 +08:00
William Cheng
f4897ea4a4 [PS] check if JSON properties is defined (#6419)
* check if json properties not defined

* add new files
2020-05-25 21:06:59 +08:00
William Cheng
c000eaef73 Add C++ UE4 client generator (#6399)
* Added new language: UE4 C++ client

* rename generator

* add copyright

* update doc

* fix with Locale.ROOT

* add new file

* minor improvements

* remove postProcessModels

Co-authored-by: Samuel Kahn <samuel@kahncode.com>
2020-05-25 18:33:48 +08:00
William Cheng
6be3bc0f8a Add a link to the article in dev.to (#6421) 2020-05-25 17:17:40 +08:00
Jose Camara
4dbb5c9e0d typescript-axios anytype is not defined (#6335)
* Include map for `AnyType` in `typescript`

* Exclude `any` from the list of types extracted from `anyOf`, `allOf`, `oneOf`

Exclude if there are other meaningful types

* Include new scripts and `yaml` to test the new case

* Execute the new sample for `typescript-axios`

* Filter out only `AnyType` instead of all `any` types

* Renamed and modified samples

- Included more examples using `oneOf, `allOf`, `anyOf`
- Includede examples when types that are translated to `any` are involved (`file`)
2020-05-25 10:21:58 +02:00
Slavek Kabrda
205514c455 [Java][jersey2] Make (de)serialization work for oneOf models, add convenience and comparison methods (#6323) 2020-05-25 15:17:52 +08:00
William Cheng
202d184ce2 Migrate OCaml petstore to use OAS v3 spec (#6348)
* migrate ocaml petstore to use oas3

* break the build

* Revert "break the build"

This reverts commit a7c12d90fe.
2020-05-25 09:09:22 +08:00
Sebastien Rosset
583aa24152 [Python-experimental] Fix type error if oneof/anyof child schema is null type (#6387)
* Mustache template should use invokerPackage tag to generate import

* Fix runtime exception when composed schema has 'null' type

* Fix runtime exception when composed schema has 'null' type
2020-05-24 17:21:00 -07:00
Sebastien Rosset
afb3188fab [Python-server] Fix blueplanet 'file not found' error (#6411)
* Mustache template should use invokerPackage tag to generate import

* fix 'cannot remove file error
2020-05-24 16:49:02 +08:00
Sebastien Rosset
60d5ed350c [nodejs] Fix deprecation notice when running sample nodejs script (#6412)
* Mustache template should use invokerPackage tag to generate import

* Remove deprecation notice
2020-05-24 16:48:23 +08:00
Sebastien Rosset
e38168c2b5 [java-jersey2] Conditionally include http signature mustache template (#6413) 2020-05-23 17:32:06 -04:00
Jim Schubert
284a90f7b1 [bug] Fix path provider bug on CI (#6409)
* Fix path provider bug on CI

Previous path sorting logic failed on CI due to one or more files in the
cpp-qt5 script being associated with different path providers. This
caused a ClassCastException from Path#compareTo

This change uses Apache Commons PathFileComparator to sort by full path.

File list is copied to avoid sort side effects. Log on all exceptions.
2020-05-23 10:56:11 -04:00
William Cheng
3d0c4e1909 decomission nodejs server generator (#6406) 2020-05-23 18:41:52 +08:00
Jon Freedman
950508fd4b [Java] Generate valid code if no Authentication implementations present (#5788)
* generate valid code if no Authentication implementations present

resurrects https://github.com/OpenAPITools/openapi-generator/pull/2861

* remove what I assume are human generated test cases

* need to iterate over authMethods in order to pull out name

* fix another test

* update more tests

* rename hasTokenAuthMethods to hasApiKeyAuthMethods

* remove duplicate methods, fix hasHttpBearerMethods check

* update templates

* update windows java-petstore files

* update windows java-petstore files

* re-generate

* re-generate

* restore samples.ci tests

* restore samples.ci tests
2020-05-23 18:36:03 +08:00
William Cheng
f200122c09 update java jersey2 samples 2020-05-23 15:47:10 +08:00
Sebastien Rosset
b3555d6801 [Java] Fix mustache tag in pom template for HTTP signature (#6404)
* Mustache template should use invokerPackage tag to generate import

* Fix tag for http signature in pom.xml
2020-05-23 15:35:01 +08:00
Sebastien Rosset
1da9092dad [Python-experimental] Rename from_server variable to json_variable_naming (#6390)
* Mustache template should use invokerPackage tag to generate import

* Add unit test showing how to construct objects from a JSON dict

* rename from_server to json_variable_naming

* rename from_server to json_variable_naming

* fix code so it can execute in python 2.x

* rename variable

* fix typo

* fix typo

* fix deprecation warning

* fix deprecation warning

* fix deprecation warning
2020-05-22 19:09:12 -07:00
William Cheng
ed84e4542f Add a link to medium blog post (#6403) 2020-05-23 09:28:19 +08:00
William Cheng
ce1967a82b Clean up debug in test (#6398)
* remote system out println

* remove typeo
2020-05-23 09:28:02 +08:00
William Cheng
8cf59384f7 readding bin/swift5-petstore-readonlyProperties.json 2020-05-23 09:17:03 +08:00
William Cheng
029f7aa39c remove ./bin/swift5-petstore-readonlyProperties.json 2020-05-23 09:15:14 +08:00
Jim Schubert
b828860614 [samples] Regenerate python-experimental 2020-05-22 17:07:37 -04:00
Jim Schubert
70ca93570e [core][general] Add metadata file tracking to aid in "Golden Tests" regeneration (#6325) 2020-05-22 16:48:32 -04:00
Sebastien Rosset
19e14237aa [python-experimental] Add support for pep 3134, attach cause of exception (#6388)
* Mustache template should use invokerPackage tag to generate import

* Add exception cause

* using six module for exception chaining in Python 3.x
2020-05-22 09:44:15 -07:00
Sebastien Rosset
912604f3dc [Java-jersey2] Add new ApiClient constructor with auth objects (#6393)
* Mustache template should use invokerPackage tag to generate import

* Add new constructor for Java ApiClient

* Add constructor with auth map
2020-05-22 23:54:05 +08:00
William Cheng
693e640872 Add links to blog post, youtube video (#6396) 2020-05-22 15:50:34 +08:00
William Cheng
573682e56d Add @wing328 as the creater of PowerShell client generator (refactored) (#6395) 2020-05-22 15:41:47 +08:00
William Cheng
a8f9ea4873 add nullable support to oneof, anyof (#6392) 2020-05-22 15:03:51 +08:00
William Cheng
f10de73ed5 Add helper methods to determine if the spec has certain authentication defined (#6347)
* better import, add security methods

* add helper method to determine auth type when adding supporting files

* better docstrings

* fix boolean return

* update tests

* Revert "update tests"

This reverts commit 29cfc8ad66.

* add test in shippable

* rename variables

* check if auth files are needed

* update tests

* revert check

* set java8 to true

* fix auth check

* better npe handling

* reoder methods

* undo changes to shippable.yml
2020-05-22 12:57:44 +08:00
Sebastien Rosset
69177517ef [Python-experimental] Should accept float value serialized without decimal point (#6386)
* Mustache template should use invokerPackage tag to generate import

* A float may be serialized as an integer, e.g. '3' is a valid serialized float

* A float may be serialized as an integer, e.g. '3' is a valid serialized float

* add unit tests
2020-05-21 18:59:31 -07:00
Jon Schoning
3603dee3fb [haskell-http-client] Ensure newytpes are generated when necessary (fixes #6350) (#6383) 2020-05-21 12:48:41 -05:00
Slavek Kabrda
cac4170c0f [go-experimental] Fix marshalling of of go oneOf structures to work on non-pointer receivers (#6314) 2020-05-21 21:02:21 +08:00
Januson
c49d8fda8e [M][REQ][JAVA]: Add option to generate arrays with "uniqueItems" true as Sets rather than Lists (#5466)
* [REQ][JAVA]: Add option to generate arrays with "uniqueItems" true as Sets rather than Lists
 - Update Java code generation to use sets instead of lists when uniqueItems is set to true
 - Add import resolution for sets
 - Add tests and fix broke tests

resolve #5254

* Update Javascript, Perl, Python and Ruby to preserve current functionality.

* Switch set implementation to LinkedHashSet

* Fix missing import for uniqueItems used on param.

* Fix missing import and return type for responses with uniqueItems

* Fix default values for array of enum

* Update generated samples

* fix merge issue

* Update generated samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-05-21 13:27:57 +08:00
Diogo Nunes
dec1365619 Use webclient exceptions in java webclient client (#6304) 2020-05-21 00:46:34 +08:00
William Cheng
2ec0754596 add pub to struct in single parameter (#6381) 2020-05-20 22:36:44 +08:00
Ramanth Addala
a0bfc3c1f2 replacing caTools dependency with base64enc (#6349)
* replacing caTools dependency with base64enc

* adding review fixes

* fix(r) : updated the cran repo url
2020-05-20 21:19:13 +08:00
Slavek Kabrda
5f2979c434 [go-experimental] Ensure that all oneOf/anyOf models have their Nullable<Model> defined (#6363) 2020-05-20 17:29:03 +08:00
Sebastien Rosset
755336f9d9 [Java] Upgrade http signature library to version 1.4 (#6370)
* Mustache template should use invokerPackage tag to generate import

* upgrade to http signature library version 1.4

* Use updated HTTP signature library

* Run sample scripts

* Add code samples in README file for HTTP signature

* fix java imports

* Update http-signature version
2020-05-20 15:51:08 +08:00
Jérémie Bresson
e66aaa29c0 Update swagger parser to 2.0.20 (#6372) 2020-05-20 12:00:33 +08:00
Natan Laverde
40a329f0f7 [BUG] [Server: C++] [Qt5] Fix missing headers and wrong status code (#6345)
Change helper method '''writeResponseHeaders''' implementation to just set the headers, instead of write them, and also rename the method to '''setSocketResponseHeaders''', to maintain the new semantic.
The implementation of '''QHttpEngine::Socket::write''' or '''QHttpEngine::Socket::writeJson''' implementations will call '''Socket::writeData''' that writes the Headers and Status Code before write the content if they are not already written.
If these methods are not called (e.g.: empty reply), we could set the headers just before close the socket.
2020-05-20 11:12:13 +08:00
William Cheng
5fe34fbd74 Add oneof/anyof support to PowerShell client generator (#6361)
* add oneof/anyof support to powershell client gen

* fix tests
2020-05-19 21:42:17 +08:00
William Cheng
096b8f8828 [Go][Experimental] Avoid duplicated import in enum model (#6355)
* avoid double import of fmt

* update go exp petstore oas3

* import for go client exp only
2020-05-19 20:17:45 +08:00
Ermolay Romanov
2f9aa282e5 [typescript-rxjs] restore prototype inheritance for clone & its clients (#6001)
* [typescript-rxjs] restore prototype inhertance

- previously clone() and its clients in the BaseAPI class were generic
- with removal of the generic argument, these methods became unavailable
  to the API classes inheriting from BaseAPI
- original generic was imprecise, as these are not statics
- return type of `this` is the correct notation

* [typescript-rxjs] Chery-pick from #5465 by @denyo

  - this is done to prevent the changes slated for 5.0 from conflicting
  - apply destructuring changes from
      - denyo:feature/rxjs-statuscode-and-progress@673d67c
2020-05-19 10:06:08 +02:00
William Cheng
d92b8833b0 reset to nil, replace tab wtih space (#6352) 2020-05-19 15:34:53 +08:00
Natan Laverde
f8a144bdc1 [C++] [Qt5] [Server] read json (#6343)
* [C++] [Qt5] [Server] [Bug] fixed Incomplete Read JSON

Emit signal requestReceived only after request content is entirely received.

* [C++] [Qt5] [Server] [Bug] fixed Incomplete Read JSON

Emit signal requestReceived only after request content is entirely received.
2020-05-18 11:32:13 +02:00
William Cheng
d4b55d6767 update php petstore oas3 samples 2020-05-18 17:27:46 +08:00
alxnegrila
e5c72a0ab6 [PHP] ObjectSerializer fix for array of objects (#6331)
* [PHP] ObjectSerializer fix for array of objects 

Array of objects translate to "map[string,object][]" and they fail to deserialize. This is because the deserialization does not parse the mapping string correctly. A quick fix is trying moving array deserialization before object deserialization.


Example object
    ObjectExample:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            additionalProperties: true

* Update sample

Co-authored-by: Alexandru Negrila <alex@arntech.ro>
2020-05-18 17:23:27 +08:00
Slavek Kabrda
634291f4b8 [go-experimental] Ensure enum deserialization checks enum values (#6315) 2020-05-18 16:42:40 +08:00
Nikita Karnaukh
eefcd62d5b [Kotlin][Client] Added supporting Retrofit2(RxJava/RxJava2/Coroutines) (#5750)
* Added support Retrofit2(RxJava/RxJava2/Coroutines) to Kotlin client code generator

* Added generated samples for Retrofit2(RxJava/RxJava2/Coroutines) on Kotlin

* Fixed generating retrofit2 without Rx/Coroutines

* Fixed MultipartBody template, remove redundant space after MultipartBody.Part annotation

* Fix documentation diff.

* Fix generating build.gradle file for samples.
Add dependencies for rxJava/rxJava2 and rx retrofit's adapter.

* Update generated sample with rx dependencies

* Update generated sample with coroutines

* Update generated sample with RxJava 2 dependencies

* Update and refactoring scripts for sample generation

* Update generated sample code

* revert changes by mistake

* revert changes by mistake #2

* Fix return type for first RxJava

* Add RxJavaCallAdapterFactory to ApiClient scheme for RxJava 1/2

* Fix script loggin

* Update generated code for RxJava 1/2

* Fix kotlin.md documentation by script export_docs_generators.sh

* Update Kotlin samples project in pom.xml

* Revert "Update Kotlin samples project in pom.xml"

This reverts commit 9de4d0ba

* Fixed "" wrapping number types for annotation value
Fixed generating polymorphic interfaces for Gson, interface fields can't be marked with @SerializedName annotation, it's enough to mark it in child model.
Fixed instantiationTypes(array, list, map) for Kotlin generator

* Update Kotlin samples project after last fixes

* Update Kotlin samples project for kotlin-jvm-*

* Update Kotlin readme.md documentations

* Update Kotlin client sample changes

* Fixed encoding braces for generics model

* Update Kotlin client sample changes

* Update Kotlin client sample after merge with master

* Fixed adding empty braces for inherit from Map/Array

* Update sample model after last fix with empty braces

* Revert adding @SerializedName to Kotlin interface fields through @get:SerializedName as for Jackson

* Update Kotlin client samples with adding @get:SerializedName
2020-05-18 16:26:27 +08:00
Slavek Kabrda
d1e8d632ef [go-experimental] Add convenience wrapper function for oneOf members (#6316) 2020-05-18 15:57:05 +08:00
Bruno Coelho
43f7134b15 [swift] improve combine available and openapi3 deprecated (#6340) 2020-05-18 09:39:40 +08:00
Sebastien Rosset
b4954b0d80 [codegen][python-experimental] Add configuration knob to disable JSON schema validation (#6227)
* Add knob to disable JSON schema structural validation

* Add knob to disable JSON schema structural validation

* Fix formatting issues

* execute sample scripts

* execute sample scripts

* fix multipleOf validation issue

* Add validation log for multipleOf. Add customizable validation checks. add unit tests for JSON schema validation

* Add validation log for multipleOf. Add customizable validation checks. add unit tests for JSON schema validation

* Add validation log for multipleOf. Add customizable validation checks. add unit tests for JSON schema validation

* Add validation log for multipleOf. Add customizable validation checks. add unit tests for JSON schema validation. Fix for python 2

* address review comments
2020-05-17 09:11:01 -07:00
Sebastien Rosset
04ff319502 [python-experimental] Support schema property which has $ref to 'oneOf' schema and child schema is null type (#6275)
* Handle null type

* Handle null type

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* improve documentation

* Handle 'null' type

* Handle 'null' type. Add unit tests

* Add NullType for go

* Add NullType for go

* fix modeling of AnyType for go-experimental

* execute scripts in bin directory

* Add review comments

* Add 'null' type in oneOf

* Improve OAS YAML file for golang openapi3 samples

* 'Any type' includes the null value, so 'isNullable' should be set to TRUE

* 'Any type' includes the null value, so 'isNullable' should be set to TRUE

* Handle AnyType and NullType

* handle anytype for go-experimental

* Log warning instead of error

* anyOf/oneOf

* Change x-golang-is-container extension to x-golang-has-wrapper

* Add code comments

* Handle Object and any type

* Handle Object and any type

* Handle object and any type

* add code comments

* handle additional properties

* handle additional properties

* handle additional properties

* handle anytype and objecttype for go-exerimental

* Move golang changes to a separate branch

* Move golang changes to a separate branch

* Better names for the OAS document test properties

* Move golang changes to a separate branch

* Run samples scripts

* Run samples scripts

* fix unit test issues

* Handle none type

* Fix index out of range exception

* fix formatting issues

* fix formatting issues

* fix formatting issues. Finally figured out how to check formatting in local workspace

* fix formatting issues

* Add reference to oneOf schema

* Add model showing unit test failure with ref to oneOf schema

* Updates get_discriminator_class to return visited_composed_classes

* Fixes broken test, adds is_valid_type

* run samples scripts

* move unit test to  test_drawing.py file

* Add more unit tests

* invoke git pull from spacether fork

* invoke git pull from spacether fork

* Improve unit tests

* Add is_nullable_type util function

* Add unit test for null value

* Add 'ShapeOrNull' type to handle the oneOf/anyOf scenario when the child schema is the null type

* Support schema property which has  to 'oneOf' schema and child schema is null type

* Support schema property which has  to 'oneOf' schema and child schema is null type

* Support schema property which has  to 'oneOf' schema and child schema is null type

* Mustache template should use invokerPackage tag to generate import

* handle null type in oneOf/anyOf

* handle null type in oneOf/anyOf

* Add more unit test for nullable shape

* resolve merge conflicts

* resolve merge conflicts

* handle null type in oneOf/anyOf

Co-authored-by: Justin Black <justin.a.black@gmail.com>
2020-05-17 09:06:12 -07:00
Slavek Kabrda
66948e6570 [Java][jersey2] Allow setting serverIndex to null (#6321) 2020-05-17 23:44:54 +08:00
William Cheng
c81359304d fix gradle in some java clients (#6339) 2020-05-17 17:59:57 +08:00
William Cheng
a4e55ea7e5 [Swift] clean up samples, scripts for deprecated swift generators (#6327)
* decomission swift, swift3

* remove swift batch files, update doc
2020-05-17 14:32:30 +08:00
Bruno Coelho
b7c8b6e6a5 [Swift] implement support for openapi3 deprecate (#6336) 2020-05-17 14:31:52 +08:00
William Cheng
77f2a25c3d Add @spacether to the core team 2020-05-17 00:07:59 +08:00
William Cheng
2c2c83df79 [Java] update jackson databind versions (#6328)
* update databind version

* update gradle build
2020-05-16 23:56:31 +08:00
William Cheng
0c2541fc93 fix commnented code in api/model tests (#6329) 2020-05-16 22:36:39 +08:00
Arun Nalla
f34b06725d Update username (arun-nalla) (#6319) 2020-05-16 14:04:15 +08:00
Jose Camara
311ca7826d [typescript-axios] Implement useSingleRequestParameter option (#6288)
* Changes in mustache file to include new option

- New options `useSingleRequestParameter` to use a single param for the request, instead of one param per request param.

* Chanes in the documentation

Include new parameter `useSingleRequestParameter`.
Default value = `false` to keep compatibility with previous versions.

* Include script to generate samples

Also included script in the script that runs all

* Generate new samples

- Previous samples have a minor change (one line is deleted)
- New sample generated with the new parameter set to true

* Include scripts for windows

* Include new CLI option in codegenerator class

* Change the order for the new parameter in the docs
2020-05-15 21:51:30 +02:00
Alexey Makhrov
56fc5f57f1 [typescript] Remove "v4-compat" value of enumSuffix (#6308)
* Remove ENUM_NAME_SUFFIX_V4_COMPAT mode

* Regenerate samples

* Regenerate docs

* Regenerate docs for js-flowtyped
2020-05-15 21:50:58 +02:00
William Cheng
26830bf3bc Mark swift4 generator as deprecated (#6311)
* mark swift4 generator as deprecated

* add new files
2020-05-15 20:50:45 +08:00
William Cheng
20242fd479 Remove @nickmeinhold from Dart technical committee (#6309) 2020-05-15 17:26:44 +08:00
William Cheng
654e94c645 Migrate Erlang samples to use OAS 3 spec (#6297)
* erlang samples switch to oas3 spec

* add new files

* update samples
2020-05-15 11:24:37 +08:00
William Cheng
d77ab6b9e2 update dart samples 2020-05-15 09:44:00 +08:00
https://gitlab.com/selankon
9a0058f577 Improve parameter documentation (#6092) 2020-05-15 09:39:01 +08:00
William Cheng
62d103d501 Minor improvements to plantuml doc generator (#6298)
* minor improvements to plantuml doc generator

* various improvements

* fix windows batch file
2020-05-15 09:16:19 +08:00
William Cheng
00a706b760 undo changes to petstore.yaml oas3.0 (#6299) 2020-05-15 09:12:12 +08:00
adg-mh
7f8118069e Allow passing progress callbacks through client methods. (#6261) 2020-05-15 09:02:25 +08:00
b1rdG
942035a411 Create method to json (#6111) 2020-05-15 09:02:00 +08:00
Josh Burton
2dd5477c24 [dart-dio] Adds support for generating inline enums (#5668)
* [dart-dio] Adds support for generating inline enums

Previously these were generated as strings if declared inline in the spec.

* Adds more detailed comment about inline enums
2020-05-14 21:11:27 +08:00
Andrei Chugunov
ae2b693ccc [BUG] Failed to add required=false (#2062) (#5573) 2020-05-14 21:10:12 +08:00
Patrick Burls
f03458dde4 Add new Plantuml generator for creating a schema diagram (#6255)
* add scaffolded new documentation generator files

* add openapi3 plantuml bin scripts

* change plantuml codegen to only generate a schemas.plantuml file

* initial plantuml schema diagram

* add item type to Lists

* add inheritance relationships

* add list one-to-many relationships

* add newline between model definitions and relationships

* add composition data type relationship

* remove allOf models and interface references

* add new entities data to SupportingFileData

* add List dataType support to entity fields

* remove composed types and remove allOf suffix from inline types

* add inheritances to supporting files data object

* add aggregation relationships to supporting file data

* add isList to compisition relationships

* refactor PlantumlDocumentationCodegenTest

* add property name to relationships

* remove old code form PlantumlDocumentationCodegen

* add plantuml generator sample output

* remove use of javafx.util.Pair

* fix casing of complex data type for fields

* add plantuml generator docs

* fix bug caused by assumption that inline _allOf types will always be unique but apparently they can be shared if they have identical properties!

* fix bug with missing relationships caused by shared identical _allOf schemas

Co-authored-by: Patrick.Burls <patrick.burls@bskyb.com>
2020-05-14 18:20:26 +08:00
William Cheng
9f95f0cf3d Add a link to android blog post (#6296) 2020-05-14 17:51:13 +08:00
William Cheng
56da2c00ca Migrate schema samples to use OAS3 samples instead (#6294)
* migrate mysql samples to oas 3.0

* update apache2 to use oas3 spec

* migrate graphql samples to use oas3 spec

* move avro script under bin

* update protobuf samples to use openapi3 spec

* add new files
2020-05-14 17:24:19 +08:00
William Cheng
c95bc4dfb0 [Java] Fix repeated OAuth files being generated (#6285)
* fix repeated oauth files being generated

* fix oauth check
2020-05-14 17:23:54 +08:00
William Cheng
9c4b37299a migrate doc samples to oas3.0 spec (#6293) 2020-05-14 12:22:40 +08:00
William Cheng
81d307d8ca add composed schema check (#6286) 2020-05-14 10:05:15 +08:00
William Cheng
7f3f7063ab Add null type support to Go (experimental) oneOf/anyOf schemas (#6280)
* add null type support to go oneof/anyof

* fix anyof
2020-05-14 00:23:08 +08:00
Sebastien Rosset
1a6cc67fcc [python-experimental] Support schema property which has $ref to 'oneOf' schema (#6262)
* Add reference to oneOf schema

* Add model showing unit test failure with ref to oneOf schema

* Updates get_discriminator_class to return visited_composed_classes

* Fixes broken test, adds is_valid_type

* move unit test to  test_drawing.py file

* Add more unit tests

* invoke git pull from spacether fork

* invoke git pull from spacether fork

* Improve unit tests

Co-authored-by: Justin Black <justin.a.black@gmail.com>
2020-05-13 09:11:43 -07:00
William Cheng
a5b410993b Set java8 to true by default (#6278)
* set java8 to true by default

* update samples

* update java-petstore-jersey2-java6.bat
2020-05-13 17:59:22 +08:00
William Cheng
505d6e7a1c update kotlin samples 2020-05-13 17:09:34 +08:00
Sebastien Rosset
dc1bdac820 [Python-experimental] JSON schema 'null' type should be modeled as 'none_type' (#6121)
* Handle null type

* Handle null type

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* Handle null type. Add 'null' type in the OAS document for testing purpose

* improve documentation

* Handle 'null' type

* Handle 'null' type. Add unit tests

* Add NullType for go

* Add NullType for go

* fix modeling of AnyType for go-experimental

* execute scripts in bin directory

* Add review comments

* Add 'null' type in oneOf

* Improve OAS YAML file for golang openapi3 samples

* 'Any type' includes the null value, so 'isNullable' should be set to TRUE

* 'Any type' includes the null value, so 'isNullable' should be set to TRUE

* Handle AnyType and NullType

* handle anytype for go-experimental

* Log warning instead of error

* anyOf/oneOf

* Change x-golang-is-container extension to x-golang-has-wrapper

* Add code comments

* Handle Object and any type

* Handle Object and any type

* Handle object and any type

* add code comments

* handle additional properties

* handle additional properties

* handle additional properties

* handle anytype and objecttype for go-exerimental

* Move golang changes to a separate branch

* Move golang changes to a separate branch

* Better names for the OAS document test properties

* Move golang changes to a separate branch

* Run samples scripts

* Run samples scripts

* fix unit test issues

* Handle none type

* Fix index out of range exception

* fix formatting issues

* fix formatting issues

* fix formatting issues. Finally figured out how to check formatting in local workspace

* fix formatting issues

* run samples scripts
2020-05-12 23:09:25 -07:00
Sebastien Rosset
2c5675a48f Mustache template should use invokerPackage tag to generate import (#6277) 2020-05-13 14:01:42 +08:00
Ilya Buzlov
a842e1c3a3 [cwiki] Show enum values for URI parameters (#6174)
* Show enum values for URI parameters

* Update petstore
2020-05-13 11:44:00 +08:00
Alexander Eggers
ca436cb393 [Kotlin-Client] Implemented missing openapi3 deprecate property usage (#6235)
* Implemented missing openapi3 deprecate property usage

* Implemented deprecated usage for operation and data class
2020-05-13 10:54:29 +08:00
William Cheng
de3b9e8b9e update jsflow dependencies (#6276) 2020-05-13 10:36:33 +08:00
Sebastien Rosset
6c5621d97e [Java] Enable discriminator recursive lookup (#5895)
* Adds addComposedMappedModels and testComposedSchemaOneOfDiscriminatorMap

* Requires that discriminators be required properties

* Strengthens discriminaotr validation, adds better error messages, adds schema oneof samples

* Adds oneOf and anyOf invalidDiscriminator tests

* Updates incorrect addOneOfInterfaceModel invocation

* Runs ensure-up-to-date

* Adds updates from Sebastien Rosset

* Removes newlines

* Uses df.isString

* Fixes tests be correctly setting df.isString

* Updates discriminatorExplicitMappingVerbose description per PR feedback

* Adds description of how mappedModels is populated

* enable discriminator lookup

* Adds the suggestion exception raising when a MappedModel mappingName is null

* Actually resolves merge conflicts

* Adds addComposedMappedModels and testComposedSchemaOneOfDiscriminatorMap

* Requires that discriminators be required properties

* Strengthens discriminaotr validation, adds better error messages, adds schema oneof samples

* Adds oneOf and anyOf invalidDiscriminator tests

* Updates incorrect addOneOfInterfaceModel invocation

* Runs ensure-up-to-date

* Adds updates from Sebastien Rosset

* Removes newlines

* Uses df.isString

* Fixes tests be correctly setting df.isString

* Updates discriminatorExplicitMappingVerbose description per PR feedback

* Adds description of how mappedModels is populated

* Adds the suggestion exception raising when a MappedModel mappingName is null

* Actually resolves merge conflicts

* Switches two methods to package private because they are needed for testing

* Allow nulls in MappedModel.getMappingName

* Address Jim Schubert review comments

* Updates CLI flag name to legacyDiscriminatorBehavior, default=true

* Change discriminator CLI option. Remove exception when mappingName is null value

* resolve merge conflicts

* Execute scripts under bin directory

Co-authored-by: Justin Black <justin.a.black@gmail.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-05-13 01:02:55 +08:00
William Cheng
f8be3926f4 add null type support to oneof/anyof java jersey2 (#6269) 2020-05-13 00:46:53 +08:00
Yuriy Belenko
a77e038cb3 Remove Silex broken link (#6263)
There are no deprecated generators in that doc. I've deleted Silex too.
2020-05-12 22:33:37 +08:00
William Cheng
15794f8026 Fix build failure due to flake8 (#6265)
* fix flake8 folder

* fix flake8 folder in python2

* comment out flake8

* comment out flake8

* comment out flake8

* comment out flake8

* comment out flake8
2020-05-12 21:41:55 +08:00
Mike Welsh
5f0e7e81b1 Unwrap the AnyHashable and use the base value in Models.mustache (#6241)
* Unwrap the `AnyHashable` and use the `base` value in Models.mustache

- Unwraps the `AnyHashable` base in `NSURLResponse.allHeaderFields` instead of the `AnyHashable` itself

* Update samples (just running the script)

* Update samples
2020-05-12 20:09:17 +08:00
William Cheng
deec5da8a7 [Java][jersey2] replace jersey2 with jersey2-experimental (#6251)
* replace jersey2 with jersey2-experimental

* better handling of oauth

* add jersey2 java8 samples

* add dependency to test pom

* fix test, update doc
2020-05-12 18:27:33 +08:00
sunn
1f82facf82 Fix datatypes in headers other than strings (#6233) 2020-05-12 08:51:24 +02:00
Sebastien Rosset
c1d47a580b [codegen][Python-experimental] Discriminator NPE fix, handle 'null' type, #4906 enhancements (#5809)
* Adds addComposedMappedModels and testComposedSchemaOneOfDiscriminatorMap

* Requires that discriminators be required properties

* Strengthens discriminaotr validation, adds better error messages, adds schema oneof samples

* Adds oneOf and anyOf invalidDiscriminator tests

* Runs ensure up to date

* Updates incorrect addOneOfInterfaceModel invocation

* Runs ensure-up-to-date

* Fix NPE when at least one extension is defined but not x-discriminator-value

* Adds addComposedMappedModels and testComposedSchemaOneOfDiscriminatorMap

* Requires that discriminators be required properties

* Strengthens discriminaotr validation, adds better error messages, adds schema oneof samples

* Adds oneOf and anyOf invalidDiscriminator tests

* Updates incorrect addOneOfInterfaceModel invocation

* Runs ensure-up-to-date

* Adds updates from Sebastien Rosset

* Removes newlines

* Add documentation and new getValidDiscriminatorMappings function

* Add documentation and new getValidDiscriminatorMappings function

* Add documentation and new getValidDiscriminatorMappings function

* Add documentation and new getValidDiscriminatorMappings function

* Add documentation and new getValidDiscriminatorMappings function

* Add documentation and new getValidDiscriminatorMappings function

* throw exception if discriminator mappingName argument is null

* handle scenario when composed schema has 'null' type

* remove extraneous characters in comments

* Uses df.isString

* Traverse discriminators to resolve discriminator mapping

* Fixes tests be correctly setting df.isString

* Remove unused method

* Updates discriminatorExplicitMappingVerbose description per PR feedback

* Adds description of how mappedModels is populated

* Adds the suggestion exception raising when a MappedModel mappingName is null

* Actually resolves merge conflicts

* Adds addComposedMappedModels and testComposedSchemaOneOfDiscriminatorMap

* Requires that discriminators be required properties

* Strengthens discriminaotr validation, adds better error messages, adds schema oneof samples

* Adds oneOf and anyOf invalidDiscriminator tests

* Updates incorrect addOneOfInterfaceModel invocation

* Runs ensure-up-to-date

* Adds updates from Sebastien Rosset

* Removes newlines

* Uses df.isString

* Fixes tests be correctly setting df.isString

* Updates discriminatorExplicitMappingVerbose description per PR feedback

* Adds description of how mappedModels is populated

* Adds the suggestion exception raising when a MappedModel mappingName is null

* Actually resolves merge conflicts

* Switches two methods to package private because they are needed for testing

* Allow nulls in MappedModel.getMappingName

* Remove exception when mappingName is null value

* Remove exception when mappingName is null value

* resolve merge conflicts

* resolve merge conflicts

* Execute scripts in the bin directory

* Fix CI issues and address PR review comments: better documentation and fix white space issues.

* Fix CI issues and address PR review comments: better documentation and fix white space issues.

* run sample scripts

* resolve merge conflicts

* fix end-of-line issue

* resolve merge conflicts

* resolve merge issues

* Handle case when discriminator is not specified in input data

* minor changes and add code comments

* Refactor get_discriminator code

* Add unit test with missing discriminator property

* improve get_discriminator function

* Run sample scripts

* add unit tests for recursive get_discriminator_class

* fix unit test issues

* fix formatting issues

* fix formatting issues

* fix formatting issues

* fix index out of range exception

* fix formatting issues

* fix formatting issues

* fix formatting issues. Finally figured out how to check formatting in local workspace

Co-authored-by: Justin Black <justin.a.black@gmail.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-05-11 16:57:49 -07:00
William Cheng
0d6f8763eb add cookie auth support to csharp-netcore (#6254) 2020-05-12 00:35:38 +08:00
Sebastien Rosset
4488db60b3 [python-experimental] Improve error message for regex matching, add unit tests. (#6226)
* Improve error message

* Add unit tests for regular expressions
2020-05-11 18:18:34 +08:00
William Cheng
edb94f7ece [Go][Experimental] better oneOf and anyOf implementation (#6166)
* diff oneOf implementation

* update oas3 samples

* fix imports

* remove commented code
2020-05-11 17:25:38 +08:00
William Cheng
d22bea216c Add "useSingleRequestParameter" option to Rust client generator (#6230)
* add useSingleParameter option

* fix group parameter in rust reqwest

* rust-single-param
2020-05-11 15:27:59 +08:00
William Cheng
4effa739eb Add AnyType support to Java generators (#6246)
* add anytype support to java

* fix test

* fix primitive type

* update tests

* update samples
2020-05-11 15:27:03 +08:00
Christophe Bornet
779b176648 Add full OAuth2 support to jersey2-experimental codegen (#6183)
* Add full Oauth2 support to Jersey client

* Regenerate jersey2-experimental sample

* Regenerate all java clients
2020-05-11 15:18:47 +08:00
Pierre-Yves FARE
3de587826a Remove extra bracket in --http-user-agent example. (#6247) 2020-05-11 14:30:20 +08:00
sullis
0398053b41 testng 7.1.0 (#6249) 2020-05-11 14:29:42 +08:00
William Cheng
6ed9bd8f29 minor fix to aspnetcore scripts (#6250) 2020-05-11 14:28:46 +08:00
sullis
8338bcb920 scala-maven-plugin 4.3.1 (#6248) 2020-05-11 14:27:45 +08:00
DK99
5693cb9863 [c-sharp] generator added CancellationToken to async api calls (#6243)
* csharp generator CancellationToken added to async methods

* update samples
2020-05-10 23:55:48 -04:00
Roman Klevtsov
57c986f7fa Do not reset templateDir in setAspnetCoreVersion (#6216) 2020-05-11 11:46:32 +08:00
Sebastien Rosset
fa37a696a8 [python-experimental] Raise builtin AttributeError instead of custom ApiKeyError (#6229)
* Use AttributeError instead of ApiKeyError because that's what the hasattr builtin function uses

* Use AttributeError instead of ApiKeyError because that's what the hasattr builtin function uses

* fix unit tests

* create ApiAttributeError exception

* fix formatting

* run samples scripts
2020-05-10 19:02:41 -07:00
William Cheng
44b51a136f update C# netcore samples 2020-05-10 22:51:33 +08:00
Jesper Nysteen
7f58c57249 Fix locale issue for numeric string conversions (#6194)
* Fix locale issue for numeric string conversions

Using a generated C# client from an application with a locale that formats numbers with a comma as a decimal separator will make the client send invalid numeric parameters to the API. Any numeric parameter with decimals will added to the URL with a comma ('0,15' instead of '0.15'), potentially breaking the API integration.
In my specific use case, the API interpreted '0,15' as '15', resulting in pretty funky errors.

This commit ensures that parameters are parsed with the invariation culture, fixing the mentioned error.

* Add missing reference to System.Globalization

* Update ClientUtils.mustache
2020-05-10 22:41:03 +08:00
William Cheng
a986867a95 add vonage to the user list (#6245) 2020-05-10 21:34:33 +08:00
Sebastien Rosset
a093a9d5d5 [python-experimental] Make the array items attribute optional (#6133)
* Make the array items optional

* Handle any type schema

* Handle any type schema

* remove prefix and fullSuffix

* Remove prefix and suffix

* fix Java code comment

* Add code comments, use recursion for any type

* Address review comments
2020-05-09 18:49:10 -07:00
Falko Modler
3f174d8a30 [maven] Introduce addTestCompileSourceRoot (#6120) 2020-05-09 14:32:54 -04:00
William Cheng
6ae61e2dfd update java inflector samples 2020-05-09 22:03:32 +08:00
David Lee
20931b1daa Fix java-inflector to reference the correct openapi.yaml file (#6228)
java-inflector references wrong openapi file (swagger.yaml)
2020-05-09 21:53:16 +08:00
William Cheng
b81a9fa4f4 add new powershell files 2020-05-09 15:10:54 +08:00
adg-mh
2b1bc73f03 Support responses which are binary files (#6201) 2020-05-09 14:34:03 +08:00
Yuriy Belenko
d2b925769e Mark Silex server generator as deprecated (#6220)
Quote from Silex package on Packagist:
https://packagist.org/packages/silex/silex
WARNING: Silex is in maintenance mode only. Ends of life is set to June
2018. Read more on https://symfony.com/blog/the-end-of-silex.
2020-05-09 14:27:52 +08:00
William Cheng
d5304055ab Minor improvements to the Lua client generator (#6219)
* minor improvement to lua client gen

* add new files
2020-05-09 14:26:54 +08:00
William Cheng
d6d241bdab remove web.config (#6214) 2020-05-08 22:47:16 +08:00
William Cheng
f327f01c19 Replace powershell generator with powershell-experimental generator (#6213)
* replace powershell generator with powershell-experimental generator

* add back samples

* add back scripts

* remove outdated script

* update doc
2020-05-08 20:13:01 +08:00
Robin Wood
6e619e0a15 [Docker] Added a check to make sure an argument is passed (#6207)
* added a check to make sure an argument is passed

* list available commands
2020-05-08 11:22:03 +08:00
Yuriy Belenko
8c6236b341 [php] Set required PHP 7.1 in code comments and readme (#6188)
* Bump PHP version to 7.1 in readme

* Bump PHP version to 7.1 in class templates

* Remove HHVM from Travis CI config

PHPUnit dropped support of hhvm, so build unlikely will pass tests.
https://github.com/sebastianbergmann/phpunit/issues/3320#issuecomment-426325646

* Remove sudo: false from Travis-CI config

Official doc recommendation:
https://docs.travis-ci.com/user/reference/trusty/#container-based-infrastructure

* Change tested versions to 7.1, 7.2 in Travis-CI

* Remove PHP_CodeSniffer from dev dependencies

There is another linter(PHP CS Fixer) which is fully configured while
CodeSniffer isn't configured at all.

* Use caret instead of tilde in dependencies

^2.12 equals (>= 2.12.0 && <3.0.0) while ~2.12 is (>=2.12.0 && <2.13.0)

* Refresh samples
2020-05-08 10:55:36 +08:00
Bruno Coelho
577ebb687e [swift] remove urlsession kvo usage (#6211) 2020-05-08 10:13:13 +08:00
William Cheng
b23ec9a7dd map any type in rust server generator (#6209) 2020-05-08 10:11:58 +08:00
Ghufz
13f329eafe [powershell-experimental] : http signature authentication implementation (#6176)
* ValidatePattern having double quote(") throws exception on running Build.ps1

* fix tab with space

* [powershell-experimental] : http signature auth

* fix the tab issue

Co-authored-by: Ghufran Zahidi <gzahidi@cisco.com>
2020-05-07 22:46:40 +08:00
adg-mh
5f2270a0e8 Add missing AnyType type mapping (#6196)
Without the AnyType type mapping, the generated dart code uses `AnyType` instead of  `Object`, which does not compile.
2020-05-07 21:09:55 +08:00
William Cheng
7800dbe35a remove pubspec.lock (#6208) 2020-05-07 20:45:14 +08:00
William Cheng
fa8c9908be Minor fixes post-release (#6204)
* minor fixes post release

* update gradle version

* comment out rust server test
2020-05-07 16:41:24 +08:00
William Cheng
98e54f0cc1 Merge remote-tracking branch 'origin/5.0.x' 2020-05-07 14:27:56 +08:00
Alofredo
3bfd6de327 [cpp][Qt5] Add the ability to pass QNetworkAccessManager as a parameter (#6053)
* [C++][Qt5] Add the ability to pass QNetworkAccessManager as a parameter
* connect to QNetworkReply::finished instead of QNetworkAccessManager::finished

* [C++][Qt5] regen samples for cpp-qt5-client

* [C++][Qt5] disconect from reply by timeout

* [C++][Qt5] regen samples for cpp-qt5-client

Co-authored-by: alfredotg <alfredotg@tu.ru>
2020-05-07 08:05:29 +02:00
William Cheng
adb6bf9d81 comment out dart2 test due to failure 2020-05-07 13:43:18 +08:00
Vikrant Balyan
9e8cc284e0 adds the missing typeMapping for AnyType (#6199) 2020-05-07 11:55:55 +08:00
Richard Whitehouse
046b4acdff [Rust Server] Support boolean headers, and fix panic handling headers (#6056)
* [Rust Server] Support headers containing booleans

* [Rust Server] Fix panic handling headers

* [Rust Server] Fix issue with Results

* Update samples
2020-05-06 19:27:52 +01:00
William Cheng
4beea9d90d update samples 2020-05-07 00:30:12 +08:00
William Cheng
c588db682d update 5.0.0 release date 2020-05-06 22:53:08 +08:00
William Cheng
1d606499ee Merge remote-tracking branch 'origin/5.0.x' 2020-05-06 22:51:05 +08:00
William Cheng
1b0ec0cd83 update readme with new release 2020-05-06 22:34:48 +08:00
William Cheng
003165c2c2 Prepare 4.3.1 release (#6187)
* prepare 4.3.1 release

* update doc
2020-05-06 17:10:31 +08:00
Luis Ballabeni
30ee3f343e Fix #6157: Updated native template to fix null async return (#6168)
* Fix #6157: Updated native template to fix null async return

Should fix issue: https://github.com/OpenAPITools/openapi-generator/issues/6157

* fixed uncaught json exception in java native api gen

* cleaning up

Co-authored-by: Luis Ballabeni <luis.ballabeni@lexisnexis.com>
2020-05-05 13:40:22 +08:00
Yuriy Belenko
90ff4926b9 Show description when summary is missing (#6159) 2020-05-05 11:23:59 +08:00
Sebastien Rosset
a58441cf68 Make the array items optional (#6132) 2020-05-04 20:31:55 +08:00
William Cheng
9afa154a5e [aspnetcore] test petstore samples in drone.io (#6148)
* test aspnetcore 3.0/3.1 in drone.io

* switch images

* trigger build failure

* Revert "trigger build failure"

This reverts commit f5c2c1578d.
2020-05-04 15:09:28 +08:00
William Cheng
b369f9bfea fix bearer auth in c# netcore async call (#6136) 2020-05-04 14:28:54 +08:00
William Cheng
138276a7c4 skip web.config for aspnetcore 3.x (#6147) 2020-05-04 10:45:02 +08:00
Justin Black
cbc006a938 Adds memoization and deserialization through 2 or more discriminators (#6124)
* Adds cached_property decorator, adds feature to move through n discriminators

* Adds v3 sample with 2 discriminators

* Adds tests of Shape, Tringle, and Quadrilateral traveling through 2 discriminators

* Adds test_deserialization.py:test_deserialize_shape

* Simplifes XTriangle sample spec schemas

* Simplifies Shape schema definition, updates go+python-experimental samples

* Fixes python-experimental test_dog tests

* Separates off python-experimental spec
2020-05-03 11:44:04 -07:00
Paul Hatcher
e4cbaa721b Implement Asp.Net Core 3.0/3.1 generator (#6009) (#6025)
* Minor changes to 2.1 templates to make them work or improve documentation

* Support for ASP.NET Core 3.0 and 3.1

* Update aspnetcore test scripts and results

* Update generated documentation

* update doc

* Update modules/openapi-generator/src/main/resources/aspnetcore/3.0/Startup.mustache

Co-Authored-By: Tatsuro Shibamura <me@shibayan.jp>

* Update modules/openapi-generator/src/main/resources/aspnetcore/3.0/Startup.mustache

Co-Authored-By: Tatsuro Shibamura <me@shibayan.jp>

Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: Tatsuro Shibamura <me@shibayan.jp>
2020-05-03 16:32:26 +08:00
William Cheng
f8a7475c7b update doc, samples 2020-05-03 16:18:33 +08:00
Ukonn Ra
f4fa00fefa Add async native Java Client (#4721)
* Add async native Java Client

* UPDATE: Reformat the samples

* test java native async in drone.io

* update test count

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-05-03 16:06:18 +08:00
William Cheng
ec0db2f1ee Test java 11 native client in drone.ci (#6144)
* test java 11 native clientin drone.ci

* trigger build failure

* Revert "trigger build failure"

This reverts commit e52ad39ec1.
2020-05-03 14:46:17 +08:00
William Cheng
c98499454c update go samples 2020-05-03 12:42:48 +08:00
minenok-tutu
cd88c06372 File return type fix (#5644)
* file return type fix

* Update client.mustache
2020-05-03 12:21:22 +08:00
William Cheng
15d58dc89b Add paladinzh to rust technical committee (#6137) 2020-05-03 00:18:55 +08:00
Sebastien Rosset
afa66f858b fix documentation (#6131) 2020-05-02 23:48:43 +08:00
Sebastien Rosset
77d6c04b24 [Java] Enhancements for HTTP message signature (#6090)
* Add code comments

* Change 'setup' method to setPrivateKey

* Add support for configuring digest algorithm

* run script in bin directory

* format generated code

* Revert "format generated code"

This reverts commit 3b52778437.
2020-05-02 23:31:45 +08:00
Aleksandr Nekrasov
03c3c64d23 [scala][akka-http] fix non-default packages for api, model and invoker (#6129)
* [scala][akka-http] fix non-default packages for api, model and invoker

* remove default invoker additionalProperty

* fix invoker package for scala-akka and sttp

* fix invoker package and settings for scala-akka

* fix tests compatible with windows paths

* test output

* test output

* fix base output path for test

* fix output path for test

* fix sttp invoker package
2020-05-02 21:49:34 +08:00
Tatsuro Shibamura
973258912c [csharp-netcore] Fixed handling of nullable enum values (#6112)
* [csharp-netcore] Fixed handling of nullable enum values

* Update sample code

* Remove unnecessary method calls
2020-05-02 21:39:24 +08:00
https://gitlab.com/selankon
6439990463 Add listFromJson method to fix #4887 (#5355) 2020-05-02 21:27:27 +08:00
Jaumard
7d5695e551 dart-dio improvements (#6047)
* fix runtime deserialisation

* add security support for dart dio

* regenerate dart dio sample

* update dio pubspec.mustache deps

* check response type before parsing

* add default dateTime serializer

* regenerate sample
2020-05-02 21:23:52 +08:00
Åsmund Grammeltvedt
c08e80f49b Propagate deprecated property through $ref's (#6093)
* Propagate deprecated property through $ref's

As $ref is supposed to completely replace the definition of a property,
make sure we also include the 'deprecated' property when generating the
type of a $ref property.

This makes a property $ref'ing a deprecated schema also become deprecated.

* Clarify why we're messing around with $ref
2020-05-01 22:01:01 +08:00
William Cheng
6484c03518 Test scala akka petstore client in CI (#6118)
* test scala akka in ci

* fix compilation error

* fix scala akka test

* add tests
2020-05-01 16:47:38 +08:00
William Cheng
f7ba9354e8 update oas3 petstore go exp sample 2020-05-01 14:15:43 +08:00
adg-mh
c38b52919f [dart-dio][client] Handle x-www-form-urlencoded form data (#5597) 2020-05-01 11:02:45 +08:00
William Cheng
b23c52f2ca [Go][experimental] provide code samples in the API doc (#6115)
* provide code samples in api doc

* update petstore samples
2020-05-01 10:50:01 +08:00
Artem
0032e04530 [php-symfony] Fix return type in model setters. (#6085)
* Fix return type in model setters.
Previously return type was same, as method arguments. It`s wrong, and cause errors like
"Return value of Foo::setSuccess() must be of the type bool, object returned"
We cant use self and current {{classname}} as return type, because that can break class inheritance. So, better remove type hint on setters, until PHP-devs dont make realization for return static

* Add return self type hint for setters

* Revert "Add return self type hint for setters"

This reverts commit 07dd9715
2020-04-30 22:03:05 +03:00
William Cheng
3bbaedd9bc Better "Any Type" support (#6091)
* better anytype support

* add tests for any type

* fix test with any_value

* fix tests

* fix case additionalProperties: {}

* test with CI

* remove check in map schema

* Revert "remove check in map schema"

This reverts commit e016c4155f.

* fix tests, comment out map schema fix

* fix tests

* fix tests with correct codegen model

* fix tests

* fix tests for map of any type

* fix array of any type

* fix array of any type

* update samples, remove log

* add typemapping to go, python
2020-04-30 21:23:55 +08:00
Jim Schubert
cc623ba429 [cli][build] Relax the git id plugin (#6094)
* [cli][build] Relax the git id plugin

* Guard against null on missing build properties
2020-04-30 08:49:07 -04:00
Artem
3e2c933dec [php-symfony] Fix problem with clients, that put charset in content type header. (#6078)
* Fix problem with clients, that put charset in content type header.

With this fix header "Content-Type: application/json; charset=utf-8" working same as "Content-Type: application/json" for parse input data

* Fix code style, add $consumes length check.

* Add isContentTypeAllowed static method and tests

* Fix old tests

Right now serializer doesn't support anything beside json and xml.
Call tests with application/json instead of form data.

Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
2020-04-30 12:22:44 +03:00
Aleksandr Nekrasov
8e4452e383 [scala-akka-http] fixed getOffsetDateTimeHeader and removed broken test due invalid v2 spec (#6109) 2020-04-30 10:53:14 +08:00
William Cheng
001d9cb36d better docstring for jersey2 client (#6104) 2020-04-29 23:43:21 +08:00
Geoff Brown
bc097cfdde [C#] Fixed valuetype parameters and discriminator deserialization (#5680)
* Fixed valuetype parameters and discriminator deserialization

- Made non-required valuetypes nullable, and flagged required valuetypes as "x-csharp-value-type"
- Made sure to camelCase discriminator property names in Subtype converter

* Ran pet store sample script

* Ensure that readWriteVars and readOnlyVars are also marked as isEnum and isPrimitiveType where appropriate

* Updated petstore sample with enum fix

* Fields that are required should emit default values (otherwise the consuming API might throw a fit

* Added missing sample updated

* Re-ran petstore example script to grab all changes

* Rebased and re-ran example update script

* update csharp samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-29 21:36:27 +08:00
William Cheng
a8885e838a update swift5 samples (#6102) 2020-04-29 18:03:19 +08:00
Jim Schubert
a8cc42d170 [validation] Warn on duplicate tags (#6061)
The specification requires that tags are unique. This isn't caught by
swagger-parser, so we will issue a warning if duplicate tag names are
found.
2020-04-29 11:48:05 +08:00
iliaskarim
e01c1a9b72 Readonly properties for Swift 5 (#6048)
* Generate readonly properties in Swift5 with additional readonlyProperties parameter

* add sample
2020-04-29 11:17:00 +08:00
Dennis Ameling
7424582210 [TypeScript-Angular] Add AuthService example to README.md (#6087)
* Add AuthService example to TypeScript Angular README.md

* Update generated Angular libs
2020-04-28 17:13:41 +02:00
Justin Black
a2b613c1b3 Fixes md docs (#6079)
* Fixes md docs

* Separates out boolean enum options into legacyDiscriminatorBehaviorOpts

* Updates docs, adds true and false descriptions
2020-04-28 22:30:56 +08:00
n0idea
6bb4bd8ebe fixed typescript-axios pattern data integrity by removing escapeText() call (#5974) 2020-04-28 16:22:21 +02:00
Harald Fernengel
500fb472b0 [typescript-fetch] Allow multiline documentation (#6088)
Add a lambda that formats the documentation correctly even if it
contains newlines. The generated docs with typedoc looks a lot better
and also renders Markdown correctly.

Also remove the "no description" fallback for APIs because we don't have
it anywhere else, other generators don't generate a default fallback and
I'd rather have no documentation than a "no description" string.
2020-04-28 16:20:26 +02:00
Jim Schubert
f12fb86a1a [feat] Allow configuration of yaml minimize quotes (#5933)
There are cases where minimizing quotes results in invalid YAML. For
example, an input YAML with string "1234_1234" will be converted to YAML
value 1234_1234 which is an int in YAML 1.1
(https://yaml.org/type/int.html)

THe only option in these cases is to either:

* Revert the option completely to always quote values
* Provide a user-customization to disable quotes minimization

This applies the latter with the assumption that this is an edge case
and users who are unaffected will default to the "prettier" version.

An alternative would be to write a custom serializer for strings, and if
they are in the format of of any of the valid formats defined in YAML:

[-+]?0b[0-1_]+ # (base 2)
|[-+]?0[0-7_]+ # (base 8)
|[-+]?(0|[1-9][0-9_]*) # (base 10)
|[-+]?0x[0-9a-fA-F_]+ # (base 16)
|[-+]?[1-9][0-9_]*(:[0-5]?[0-9])+ # (base 60)

Then wrap the result in quotes. That approach was not taken because of
the potential for significant performance impact on very large specs,
which our users are often tasked with transforming.
2020-04-28 22:20:15 +08:00
Harald Fernengel
6f9d8259b0 [typescript-fetch] Make FormData optional (#6077)
Check "typeof FormData" first. This allows the code to also work in
nodejs with isomorphic-fetch.
2020-04-28 15:21:53 +02:00
William Cheng
46216cd796 Merge remote-tracking branch 'origin/master' into 5.0.x 2020-04-28 20:35:28 +08:00
Harald Fernengel
354f195ec0 [typescript-fetch] Support deepObject query params (#6075)
deepObject query parameters need to be specially marshalled.
Unfortunately, they're quite tricky to distinguish in mustache because
there's no boolean property for deepObject, so add a vendorExtension
property to ease the mustache template.
2020-04-28 10:37:31 +02:00
jerbob92
3d5b140c3d Fix URLSessionImplementations file upload (#6043)
* Fix URLSessionImplementations file upload

* Generated petstore
2020-04-28 00:28:21 +08:00
Alexander Hirner
eccdf1d667 add MoonVision user (#6076)
* add MoonVision user

* add moonvision to readme list
2020-04-28 00:10:42 +08:00
William Cheng
588023686a Add HTTP signature authentication support to Java (jersey2-experimental) (#6058)
* add fmt-maven-plugin to jersey2 exp

* update samples

* add http signature auth template

* minor fix

* fix http beaer auth, update sample

* fix http signature auth

* fix http signature auth

* header support

* add query string to path

* undo changes in default codegen

* ignore fake test

* add serialize to string method

* add serialzie to string method

* add get mapper

* auto format java source code

* remove plugin

* update pom.xml

* change back AbstractOpenApiSchema to T

* skip mvn code formatter in bin script

* undo changes to spec

* update samples

* add back HttpSignatureAuth.java
2020-04-28 00:09:30 +08:00
William Cheng
3b0bd368a6 Update Java (feign) client dependency (#6068)
* update feign dependency

* update feign samples
2020-04-28 00:09:14 +08:00
Justin Niessner
db5941379f [Python] Fix Python UTF-8 Encoding Issue (#5679)
* Try decoding but don't bail on error

* Switch binary and ByteArray to bytes

* Read content type and parse appropriately

* Remove response parsing

* Remove response parsing and just return the data

* Update petshop examples w/ new generator code

* Fix copy/paste error with naming

* Update petstore examples

* Move response decoding to inside _preload_content block

* Update the clients again

* Use a raw string for the regex pattern

* Regenerate petstore clients

* Add bytes to python primitives as it's supported in 2.7 and 3

* Add bytes to the exports from model_utils

* Import bytes from model_utils

* Add conditional typing for regex pattern to match variable type

* Regenerate petstore clients

* Use read() instead of text() for asyncio

* Regenerate petstore clients

* Remove unused six import

* Regenerate petstore clients

* Add newline to kick Circle to re-run

* Remove whitespace from tox.ini

* Update more examples after ensure_updated

* Add sample updates that didn't run with the --batch flag

* Remove extra bracket in regex to remove warning

* Stop printing debug messages

* Add bytes examples to python doc generators

* Update generated FakeApi docs

* Regenerate api_client.py

* Remove print statements from generated clients

* Update bytes example in FakeApi.md. Again. I swear.

* Add yet another seemingly missing doc update

* Catch the error, decode the body, and re-throw

* Remove the updates now that the change is non-breaking

* Regenerate client

* Add bytes deserialization test

* Update exception parsing

* Add exception parsing for python-experimental

* Regenerate client with minor changes

* Revert test changes

* Regenerate model_utils.py

* Update confusing test name

* Remove bytes from mapping and examples

* Add back in the old binary/ByteArray to str mapping

* Update docs and api_client template

* Add experimental api_client changes

* Regenerate samples again

* Add Tornado handling to early return

* Try fixing Tornado python returns

* More documentation changes

* Re-generate the client code

* Remove bytes from test_format_test

* Remove more leftover bytes usages

* Switch bytes validation back to string

* Fix format_test template and regenerate

* Remove unused bytes var

* Remove bytes import from models and regenerate

* Remove bytes import from test_deserialization

* Reduce nested ifs

* Remove byte logic for now

* Regenerate client after latest changes

* Remove another bytes usage

* Regenerate after removing dangling byte string usage

* Reduce the scope of the try/catch in api_client

* Regenerate after try/catch cleanup

* Swap catch for except

* Regenerate Python client after api_client change

* Fix lint error on the generated api_client

* Add binary format test back in w/ string

* Add decoding to python-experimental and regenerate

* Import re into python-experimental api_client

* Ensure file upload json response is utf-8 encoded bytes
2020-04-26 13:33:42 -07:00
Richard Whitehouse
f36a319316 [Rust Server] Rust 2018 Edition (#5942)
* [Rust Server] Rust 2018 Edition
* [Rust Server] Fix unused warning
* Update samples
2020-04-26 12:00:46 +01:00
William Cheng
cef5470ea8 Add Http signature authentication test to fake petstore spec (#6054)
* add endpoint to test http signature

* update plugin version
2020-04-25 23:39:41 +08:00
Kieran Simpson
0e276bef19 Add input flag for Gradle openApiGenerate task (#5966) 2020-04-24 22:20:40 -04:00
Sebastien Rosset
e8f486ba7f [Python experimental] Readme improvements (#6031)
* Python experimental readme improvements

* Python experimental readme improvements

* execute scripts in bin directory
2020-04-25 00:10:32 +08:00
Sebastien Rosset
58908e6494 [codegen] change x-oneOf-name to x-one-of-name. Consistency with naming conventions and x-all-of-name (#5820)
* change x-oneOf-name to x-one-of-name.

* Add code comments

* Add code comments
2020-04-25 00:07:15 +08:00
Justin Black
8e8471c1fd [CORE] Fixes composed schema discriminator map (#4906)
* Adds addComposedMappedModels and testComposedSchemaOneOfDiscriminatorMap

* Requires that discriminators be required properties

* Strengthens discriminaotr validation, adds better error messages, adds schema oneof samples

* Adds oneOf and anyOf invalidDiscriminator tests

* Updates incorrect addOneOfInterfaceModel invocation

* Runs ensure-up-to-date

* Adds updates from Sebastien Rosset

* Removes newlines

* Uses df.isString

* Fixes tests be correctly setting df.isString

* Updates discriminatorExplicitMappingVerbose description per PR feedback

* Adds description of how mappedModels is populated

* Adds the suggestion exception raising when a MappedModel mappingName is null

* Actually resolves merge conflicts

* Switches two methods to package private because they are needed for testing

* Allow nulls in MappedModel.getMappingName

* Updates CLI flag name to legacyDiscriminatorBehavior, default=true

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-25 00:01:02 +08:00
William Cheng
45bbe4922b Add test for allOf without object type (#6042)
* add test for allof without object type

* add comments to test cases
2020-04-24 23:41:42 +08:00
sunn
234053fed9 Export response code to worker (#6021) 2020-04-24 14:46:25 +02:00
sunn
649daed9a9 Export valid and set status of properties (#6020) 2020-04-24 14:44:48 +02:00
Sebastien Rosset
6ad5e5fb45 [Python experimental] Add __setattr__ function to ensure signing_info.host is the same as configuration.host when the user assigns signing info (#6033)
* Add __setattr__ function to ensure signing_info.host is the same as configuration.host when the user assigns signing info

* Add __setattr__ function to ensure signing_info.host is the same as configuration.host when the user assigns signing info
2020-04-23 23:16:31 -07:00
Sebastien Rosset
1e01c380e8 [python-experimental] Minor doc update, code comments and exception handling (#5945)
* add support for any type, i.e. when 'type' attribute is not specified in OAS schema

* fix typos, add code comments

* Handle case when 'type' attribute is not present in the OAS schema

* fix python formatting rule

* fix python formatting rule

* remove 'object' as a type
2020-04-23 22:59:31 -07:00
William Cheng
93dd4a5138 Add jersey2-experimental to Java client generator (#6024)
* add jersey2 experimental

* add new files

* add abstract one of class

* read the stream multiple times

* rename to getActualInstance

* update petstore

* fix jackon check

* test new java petstore in ci

* fix broken tests

* remove todo

* better exception message, primitive type handling

* add anyof support

* update samples

* add new files

* update all java client samples

* update doc, fix pom

* better null check for allOf

* add primitive types support in oneof, anyof

* better validation

* update python exp samples

* remove primitive type support in allOf
2020-04-24 12:47:25 +08:00
Andy.Yang.cn
d911fd73bd [Rust Server] Bugfix #5948 (Generated client code "Disabled because there's no example") (#5949)
* [Rust Server] Fix RustServerCodegen type: object example "Disabled because there's no example" issue.

* [Rust Server] Add test case yaml with "Disabled because there's no example" issue.

* [Rust Server] Fix example-client-main param.example character escaping issue with raw string.

* [Rust Server] Add test case yaml new generated code after fix.
2020-04-24 11:04:36 +08:00
William Cheng
3db7f65e3e Add a link to the blog post in Nordic APIs (#6038) 2020-04-24 10:56:12 +08:00
iliaskarim
bafed337b5 Fix OpenAPI link in broken Swift4/5 README templates (#6035)
* Fix Swift README templates

* Update Swift4/5 samples
2020-04-24 10:36:52 +08:00
William Cheng
4ed3421a77 update resttemplate sample 2020-04-23 23:32:47 +08:00
Francisco A. Lozano
c981535579 Change access updateParamsForAuth to protected (#5940)
So that it can be overridden with a custom behaviour.
2020-04-23 23:25:35 +08:00
chenqping
140f823465 fix generate java-inflector crash issue on windows (#6011) 2020-04-23 13:31:42 +08:00
Andy.Yang.cn
38dfed4104 [Rust Server] Fix #5947 multi tag generate multi method issue. (#5928)
* [Rust Server] Fix issue with multiple tags on an operation generating duplicate methods.

* [Rust Server] Add test case yaml with multiple tags on a single operation.
2020-04-22 18:00:21 +01:00
Harald Fernengel
00ffcea6ef [typescript-fetch] Fix map API return type (#5995)
Fix APIs that return a map.
2020-04-22 14:25:26 +02:00
Harald Fernengel
b431d65099 Make "Index" a reserved word (#6000)
Some APIs have a model called "Index" which would create a file
"Index.ts" which would override "index.ts" on case-insensitive file
systems (e.g. macOS, some Windows versions). Make "Index" a reserved
word to prevent this clash.
2020-04-22 14:24:42 +02:00
Harald Fernengel
63b4429775 Escape clashing model names (#6004)
Closes #6002
2020-04-22 14:23:24 +02:00
William Cheng
e38498dd5d Merge branch '5.0.x-sync-master4' into 5.0.x 2020-04-22 16:26:10 +08:00
William Cheng
46b0421fa5 update java restassured jackson 2020-04-22 15:36:31 +08:00
William Cheng
02717e6076 update samples 2020-04-22 14:48:27 +08:00
William Cheng
47a9294a99 Merge remote-tracking branch 'origin/master' into 5.0.x-sync-master4 2020-04-22 12:15:45 +08:00
William Cheng
f91908689b Merge branch '5.0-sync-master3' into 5.0.x 2020-04-22 12:01:59 +08:00
William Cheng
5de72a79f0 Revert "Sync master to 5.0.x (#5968)"
This reverts commit 90dd7a0341.
2020-04-22 11:59:27 +08:00
William Cheng
90dd7a0341 Sync master to 5.0.x (#5968)
* Change the Model template (#5222)

* Add a link to Xero blog post (#5426)

* Removal of Encoding in the Query-Params in order to prevent double Encoding. (#5255)

This way letting WebClient do its Job in encoding the URL.

* update java webclient sample

* [kotlin][client] Add Jackson as serialization library (#5236)

* [kotlin][client] Add Jackson as serialization library

* [kotlin][client] Add kotlin-client-jackson.sh to kotlin-client-all.sh

* update kotlin client samples

* update doc

Co-authored-by: William Cheng <wing328hk@gmail.com>

* include kotlin jackson in CI tests (#5438)

* [Ruby] Add error output (#5428)

* Add error output to the log so that we can make sure why the error occurred

* Fix forbidden method invocation using default charsets

* Update usage.md (#5443)

* fix NPE for enum (#5445)

* [Java][WebClient] better code format (#5433)

* better code format for java webclient

* prefix local varaible with localVar

* fix issue with online service (#5461)

* Support for additionalProperties in the C generator "Client: C" solves #5395 (#5440)

* Support for additionalProperties in the C generator.

* Support for additionalProperties in the C generator.

* [docs] Enable Algolia search (#5472)

* Fix #5420 add headers from configuration object (#5422)

* Fix #5420 add headers from configuration object

* Add baseOptions undefined checking #5420

* Update the samples and replace array to object #5420

* Update sample

* [typescript] Clean up modelPropertyNaming across generators  (#5427)

* [typescript] Clean up modelPropertyNaming across generators
Fixes https://github.com/OpenAPITools/openapi-generator/issues/2976

Generators without runtime models conversion use "original" property naming by default. It's still possible to change it via cli options

Generators with runtime conversion keep using "camelCase"

* Refactoring: use enum instead of string for modelPropertyNaming

* Restore the original camelCase for var names, decouple it from property names

* Swap toParamName and toVarName logic (looks like I've mistaken them)

* Regenerate docs

* Remove a no longer used private method

* Added support for msvc builds in cpp-qt5-client generator (#5468)

* Added support for msvc builds

Moved GCC-specific compile flags to non msvc builds, and added equivalent flags for msvc.

* CMakeLists condition cleanup

* [all] Move feature set setter (#5460)

When I originally implemented the feature set code, I added the
getter/setter on DefaultCodegen and CodegenConfig as well as on
GeneratorMetadata. GeneratorMetadata also includes the library variation
features. When I went to add library-specific features, I realized the
discrepancy.

This removes the public setter from DefaultCodegen/CodegenConfig, and
adds a protected modifyFeatureSet which accepts a lambda and hides the
builder logic away in the method.

This will be a breaking change for anyone who's created a custom
generator in 4.2.3, so the impact is very limited.

* [Swift5] small improvements to Objc compatibility (#5410)

* [swift] make some small improvements

* [swift][client] revert model to use allVars

* PostProcessModelProperty with allVars

* PostProcessModelProperty with vars

* [swift] improve objc interoperability

* [swift] fix swift4 for CI to pass

* [swift] improve objc interoperability

* [swift] improve objc interoperability

* Swift - try to fix build

* [swift] remove pods from git

* [scala] [template] scala sttp client (#5429)

* scala-sttp-client template

* invoker for sttp fixed and tests added

* clean up pet api test from redunant comments

* docs updated

* fix artefact name, model comments and redunant generic

* code optimization

* cross scala versions 2.11 2.12 2.13

* date serializers extracted and joda enabled as default

* basic and bearer authorization added, apikey in query supported

* [Ruby] Fix obsolete configuration of Rubocop and Rubocop's warns (#5417) (#5474)

* fix obsolute configuration in generated .rubocop.yml

* fix style of `expect` with block in generated ruby client's test code

* update sample of ruby client

* [scala] strip model class name for all scala generators (#5439)

* stripped parameter enabled for all scala based generators

* scala samples updated

* docs generators updated

* fix scalatra. regenerated by openapi3 script.
manually removed enum default value from scalatra example due bug in schema extraction

* [Scala][sttp] various improvements (#5475)

* various improvements to scala sttp

* update ScalaSttpClientCodegen.java

* add windows batch file

* test scala sttp in jdk8

* fix tempalte directory

* Use the dataType if the baseType is not set (#5372)

* Use the dataType if the baseType is not set

* add tests for passing enum as parameter

* updated requirements file in samples

* Update spec to explicitly name objects and prevent `inline_object`

* use the correct scripts to generate samples (`bin/openapi3/python-flask*`)

* [python] Adds python oneOf/anyOf models + tests (#5341)

* Adds oneOf + anyOf schemas, models and tests to python-experimental

* Adds setUpClass and tearDownClass

* Removes newline in method_init_shared.mustache

* Regenerated v3 spec sample for python-experimental

* Fxes test for discard_unknown_keys

* Moves new models into existing spec, regen python-exp and go-exp

* Also fix python-exp windows file

* fix CVE-2020-8130 (#5483)

* [go] Add Ptr method to const enum values (#5257)

* fix rubocop warns in Ruby client's custom spec (#5488)

* [C-libcurl] The name in API parameter should not be escaped even though it includes a C key word. (#5487)

* [go-experimental] Support aliasing of API keys (#4940)

* [go-experimental] Support aliasing of API keys

* Use {{.}} inside condition

* Use name instead of keyParamName for lookup

* x-lookup to x-auth-id-alias

* [java] Support aliasing of API keys (#4966)

* [java] Support aliasing of API keys

* Rebuild Java Jersey2 sample client

* x-lookup to x-auth-id-alias

* Regenerated

* [cli][gradle] Validate now uses parseOptions w/setResolve (#5471)

* [cli] Validate now uses parseOptions w/setResolve

The validate command now uses ParseOptions#setResolve(true) to match how
we parse in CodegenConfigurator and online's Generate. Without this
option, the OpenAPI 3 parser skips the "resolve" block, which made lead
to validations in the command not matching validations during
generation.

* [gradle] Validate now uses parseOptions w/setResolve

The Graldle validate command now uses ParseOptions#setResolve(true) to match how
we parse in CodegenConfigurator and online's Generate. Without this
option, the OpenAPI 3 parser skips the "resolve" block, which made lead
to validations in the command not matching validations during
generation.

* [kotlin]Fix ktor doesn't generate nullable types (#5258)

* If not required, need `? = null`

* run  ./bin/kotlin-server-petstore.sh

* Added `?` when value is `required` and `isNullable`

* Rerun ./bin/kotlin-server-petstore.sh. But No differences

* [C++] Add an option to allow having lowercase variables in models, Pistache: allow using reservedWords in models (#5434)

* [C++][Pistache] Use reserved words to replace incorrect names

discard old decision to truncate reservedWords

* [C++][Pistache] Update struct model to use name instead of baseName

* [C++][Pistache] Update Petstore sample

* [C++] Add option to have lowercase variables

* [C++] Update generated docs

* [BUG] [JAVA | Spring] Cookie in parameter is not correctly generated (#5393)

* Cookie in parameter is not correctly generated

* gh-5386: Fix cookie parameter in

* gh-5386: Fix cookie parameter in

* gh-5386: Update test file

* gh-5386: Fix cookie parameter in

* gh-5386: Fix cookie parameter in

* gh-5386: Regenerate samples

* gh-5386: Fix test

* Added Spring CookieValue tests

Co-authored-by: Gonzalo <gonzalo.nom.es@gmail.com>

* Add missing `@Generated` annotation. (#5384)

The annotation is present on other generated files when using jaxrs-spec, but it missing on model classes.

* [scala] [template] scala model property style (#5486)

* Model property naming style generic for scala

* scala templates based on abstractScala regererated

* docs generators updated

* property format tests

* add Agoda as the user (#5494)

* Hide timestamp in Scala Play server samples (#5495)

* hide timestamp in scala play server output

* add chameleon82 to scala tech committee

* Add a link to tech blog tech.medpeer.co.jp (#5498)

* Add links to blog posts about OpenAPI Generator (#5508)

* Typescript array alias array (#4981)

* Add failing tests for typescript type declaration

* Refactor array and map child type string fallback

* Add unaliasSchema to typescript getTypeDeclaration

* TypeScriptRxjs: Use Blob as file type declaration

This was inadvertantly changed in
https://github.com/OpenAPITools/openapi-generator/pull/5266

* [core] Sanitize/underscore/camelize cache expiry (#5484)

The helper methods for sanitize/underscore/camelize were recently
updated to cache values in static maps. This would lead to a memory leak
in hosted environments as the maps had no cleanup/expiry.

This moves those cached entries to Caffeine caches with expiry based on
last access to allow the edge-case performance improvement gains on very
large documents, without the memory leak in hosted or embedded
environments.

* Update README.md

* Add a link to the conference paper (#5510)

* Add a link to the conference paper

* fix author list

* [Slim4] Add Data Mocker middleware (#4978)

* [Slim4] Store response schemas

* [Slim4] Add Data Mocker middleware

* [Slim4] Enhance Slim router

* [Slim4] Enhance config

* [Slim4] Fix data format key in object mocking

* [Slim4] Add tests for Data Mocker middleware

* [Slim4] Add Mock feature documentation

* [Slim4] Refresh samples

* [Java][Spring][Spring-Cloud] Fix #5144 - Use conditional package declaration to avoid unnecessary dependencies (#5145)

* FIX: Use conditional package declaration to avoid unnecessary dependencies

* DEV: Adjusted sample ClientConfiguration.java for async spring-cloud

* fix(php): no need to serialize collections, Guzzle does that, fix #2292 (#3984)

* fix(php): only serialize collections if !explode, Guzzle handles the rest, fix #2292

* fix(php): update petstore samples

Co-authored-by: Mahdi Dibaiee <mdibaiee@pm.me>

* [php] replace $collectionFormat with $style (#5517)

* php - remove $collectionFormat

* update php openapi3 petstore sample

* [BUG][scala][template] scala generate java.math.BigDecimal instead of scala type (#5514)

* [BUG] scala generate java.math.BigDecimal instead of scala type

* update docs/generators

* [PHP] complete support for form style (#5519)

* [BUG][PHP] Parameter property style not fully implemented (related to comment on PR #3984)

* [AUTOGENERATED][PHP] Sample Files

* update jackson dependency to newer version (#5527)

* Fix Swift4 CI tests (#5540)

* comment out swift 4 order tests

* comment out store tests

* Test Dart petstore client in CircleCI (#5544)

* test dart2 in circle ci (jdk7)

* fix tests

* update package

* fix dart installation

* Add serialization of ModelComposed (#5551)

* Fixes kwargs typos, removes E501s (#5552)

* Update generic model to support nullable properties (#5568)

* [DOC] Add link to integration test wiki in CONTRIBUTING.md (#5570)

* Add link to integration test wiki

* Add link to integration test wiki

* [Kotlin][client] fix file upload (#5548)

* [kotlin] fix file upload

* [kotlin] fix file upload

* [kotlin] fix file upload

* [kotlin][client] fix jackson integration

* [kotlin] fix file upload

* [kotlin] fix file upload

* update doc

* [Java] Fix exception when OAuth2 token URL is a relative URL (#5535)

* Add support for case when OAuth2 token URL is a relative URL

* Add support for case when OAuth2 token URL is a relative URL

* run scripts under bin

* [Java] fix runtime exception when there are multiple auth methods (#5530)

* fix runtime exception when there are multiple auth methods

* Refactor a bit so that it does not cause conflict with relative url token branch

* [markdown] Fix broken links when generating markdown (#5569)

* [markdown] Fix broken links when generating markdown

The `api.mustache` file generates links to the markdown model files.
These links were previously brokeen.

Additionally, the defaultPackage for markdown is "/Models", so this
looked pretty in the heading for model files. So this prefix has been
stripped from the header in `model.mustache`.

* Re-generate Petstore samples for markdown

* typescript-angular: fix zone-js version for angular 8 (#5585)

* Add a link to the slide (#5590)

* [Swift] fix URLSession file upload (#5546)

* [swift5] - fix URLSession file upload

* [swift5] - fix URLSession file upload

* [swift5] fix file upload

* [swift5] - fix URLSession file upload

* [swift] add unit tests for file upload

* [swift] update samples copyright

* [swift] add option for API prefix (#5567)

* [swift] add option for API prefix

* [swift] update docs

* [haskell-http-client] update stack; exclude problem time versions (#5589)

* [go-experimental] Do not generate HTTP signature unit test for every generated SDK (#5588)

* Do not generate HTTP signature unit test for every generated SDK

* Add golang 1.14 to CI environment

* fix unit test issues

* remove script commands that were commented out

* add support for ed25519 private keys

* PR to solve 2 open issues on enums: #5091 and #4293 (#5477)

* PR to solve 2 open issues on enums:
Issue 5091 needs to generate enums also when the enum is directly in a param to a API call, instead than in a model. I did that by copying and adapting enum code from *model* to *api*
Issue 4293 needs to decorate enums, for when enum names or enum values are repeated over the yaml definition.

* PR to solve 2 open issues on enums:
Issue 5091 needs to generate enums also when the enum is directly in a param to a API call, instead than in a model. I did that by copying and adapting enum code from *model* to *api*
Issue 4293 needs to decorate enums, for when enum names or enum values are repeated over the yaml definition.

* Enums decorated: with {{projectName}}_{{classVarName}}_{{enumName}}_ in the models, with {{projectName}}_{{classVarName}}_{{enumName}}_ in the operations.

* Changes to the c client:
- Removed white space.
- Removed ToJSON and FromJSON function for the enums, since they are not used
- Sanitized project name in the .java file. For example, this solves a problem with the issue #2338, where the yaml file had title: "Skycoin REST API."

* Changes to the c client:
- Removed white space.
- Removed ToJSON and FromJSON function for the enums, since they are not used
- Sanitized project name in the .java file. For example, this solves a problem with the issue #2338, where the yaml file had title: "Skycoin REST API."

* Adds parseFlattenSpec (#5526)

* Adds parseFlattenSpec, updates tests and helper functions

* Adds parseSPec invocation inside parseFlattenSpec

* Scala-Akka: Add missing body to PATCH requests (#5605)

* NodeJS - Adds missing keyword (#5606)

* [jaxrs-cxf-cdi] Support PATCH httpMethod (#5574)

Update the required CXF version to 3.1.2 since PATCH support appeared
with this version.

Add the cxf PATCH annotation to the imports so that the generated code
when defining a PATCH api compiles.

* fix default value for abstract scala and scalatra server impl (#5578)

* [Java] Generated API class has wrong dataType and does not compile Issue (#5331)

* add unit test assertion

* add check for composed schema

* add support for x-allOf-name

* change x-allOf-name to x-all-of-name

* Add more troubleshooting information

* Add more troubleshooting information

* Add more troubleshooting information

* Add more troubleshooting information

* [swift5] stop hiding network error (#5603)

* [swift5] stop hiding network error

* [swift5] stop hiding network error

* [scala][templates] java 8 dates support (#5291)

* [scala][akka-http-client] java8 dates support

* scala-akka readme doc updated

* DateSerializers renamed

* rename serializers

* move date-library option to abstractScala

* generators docs updated

* enum defined for date libraries

* Backport to scala-http-client

* fix scala-akka-client date serializers

* fix typo in docs

* switch scala templates to java8 (jsr-310) date library by default

* update scala samples with java8 date library

* update scala generators docs with java8 default date library

* fix scala-play-server generator cli options as only java8 dateLibrary supported

* fix scalaz DateTimeCodecs template to support java8

* scalaz ci test againt java7 removed as it generate scala 2.11.8 client which is java8 based

* update doc

* Adding Response Interceptor (#5500)

* added Response interceptor for native clients

* added Response interceptor for native clients

* [k6] Add blog post about using the k6 generator (#5608)

* [Kotlin] Remove kotlin-reflect dependency when not needed (#5502)

* Remove kotlin-reflect dependency when using CodeGen

* Update Kotlin tests

* Regenerated unit test samples

* Remove newline in generated build.gradle files

* [typescript-fetch] add interfaces, withInterfaces (#5612)

* typescript-fetch: interfaces, first draft

* fix name in description

* [scala] Regenerate akka sample (#5622)

* scala-version 2.11.12 (#5618)

* micheleISEP->michelealbano (#5625)

* [Powershell] refactor the client generator (#5629)

* add api client

* add local variables

* add configuration

* add header/query/form parameter support

* add partial header

* add auth, fix parameters type

* fix accept, content type

* url query string

* fix path, header

* remove dep on C# client

* fix method naming with package name

* fix object

* convert result from json

* better response handling

* remove tostring method

* fix model doc

* fix default module

* generate api test files

* better api, model tests

* fix add pet

* add appveyor

* fix accept, content type

* add petstore tests

* fix form parameters

* test delete

* better file handling (upload)

* better code sample

* add package version, better doc

* delete unused files

* fix header parameters

* clean up api client

* update samples

* support query parameter

* better method and parameter naming

* minor formatting change

* better doc, fix cookie parameter

* better doc

* add api prefix support

* better api nam prefix option

* fix configuration

* throw errors for required parameter

* fix authentication

* add try catch block to sample code

* rename model

* use debug, clean up comment

* revise code

* move bin script

* update doc

* add new file

* better map support

* [PowerShell] minor improvements and bug fixes (#5635)

* add output type, minor format fix

* minor test improvement

* Port client updates to server (#5634)

* Revert "scala-version 2.11.12 (#5618)"

This reverts commit 6b984a926a.

* update release date

* Handle negative response from the server (#5649)

* Fix integration tests (Travis, CircleCI) (#5672)

* fix php tests

* fix scala tests

* update ts angular v6 rest

* fix user create test

* fix spring cloud test

* comment out user delete

* fix angular v7 tests

* fix user test

* fix tests

* fix go exp tests

* commented out delete user tests

* comment out delete user tests in go openapi 3

* fix clojure tests

* [PowerShell] Fixes typo (#5648)

* Solving issue #5623 and supporting bools for C client label:"Client: C" (#5624)

* Removed stray "printf"s in
modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java

* Support for booleans in C client

* Update README.md

* Change to C API mustache files to solve issue #5623

* Debugging of C's modle-body.mustache, as suggested by ityuhui

* Final changes suggested by ityuhui

* [PowerShell] Fix map type (#5638)

* fix map type

* remove output type, fix appveyor

* test macos

* comment out failing scala test

* fix typo: configuration

* Revert "comment out failing scala test"

This reverts commit 1dcf84ffcb.

* [powershell-experimental] Protects against stackoverflow when OAS spec has circular references (#5646)

* protects against stackoverflow when OAS spec has circular references

* protects against stackoverflow when OAS spec has circular references

* Adds configuration option to skip certificate check. Fixes a typo. Fixes an issue which was restricting from cookie to get consumed (#5657)

* [k6] bugfixes to improve the output script (#5614)

* [k6] Skip appDescription escaping

* [k6] Fix variable identifier in output

* [k6] Fix bug with reserved words handling

* [C][Client] Check the pointer before deleting operation to avoid core dump label:"Client C" (#5626)

* [C-libcurl] Check the pointer before deleting operation to avoid core dump

* [C-libcurl] Check the pointer before deleting operation, update sample

* [kotlin][client] Add Jackson to interface properties and remove extra line feed (#5459)

* [kotlin][client] Ensure Jackson annotations are consistent with interface vars

* [kotlin][client] Rebuild samples

* [kotlin][client] Some kotlin client enhancements

- Don't use JsonFormat for Date objects, this should be controlled via
  a custom serializer/deserializer or a turning on and off serialization
  features of Jackson.  I've updated the jacksonObjectMapper config to
  write the dates as strings, which I think was intended in the original
  commit.
  https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/SerializationFeature.html#WRITE_DATES_AS_TIMESTAMPS
  https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/cfg/MapperConfig.html#getDateFormat--
- Dont' use @JsonFormat(shape = JsonFormat.Shape.OBJECT) for enums.
  This causes Enums to be formatted as objects with an internal "value"
  field.  In reality, OpenAPI enums are just strings without properties
  and should be treated as a string.
  https://www.baeldung.com/jackson-serialize-enums#2-enum-as-json-object
- Add's Kotlin use site annotation @get: to JsonProperty for parent interface
  properties.  Otherwise Kotlin will warn:
  "This annotation is not applicable to target 'member property without
  backing field or delegate'"
- Add's JsonTypeInfo annotations to interfaces for inheritance.  This
  was copied verbatim from the kotlin-spring generator.
  https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/resources/kotlin-spring/typeInfoAnnotation.mustache

* [kotlin][client] Rebuild kotlin samples

* Remove scala version in parent pom (#5647)

* [asciidoc] Allow the inclusion of additional documentation to t… (#5260)

* [asccidoc] Allow the inclusion of additional documentation to the asccidoc generated

Resolves #5228

* [jaxrs-reasteasy-eap] Fix invalid Bean Validation annotations for Longs (#5659)

* fix issue #5658

* update samples

* [PowerShell] Test powershell petstore client in Appveyor (#5674)

* remove scala version in parent pom

* test ps petstore in appveyor

* fix command

* build and import

* fix import module

* fix import

* skip module import

* run multiple commands

* move to test script

* test ps exit

* fix exit

* check last status code

* clean tests

* exit last code

* add import

* change dir

* skip build failure

* fix check

* trigger build failure

* fail fast

* restore c# test

* new line comment

* add powershell exp to ensure up to date script

* [PowerShell][Experimental] Better docstring (#5688)

* add docstring to powershell module

* add doc string

* Nodejs express js packages update (#5675)

* Updated to new nodejs packages, depending heavily on express-openapi-validator. Requires quite a change in code.
Updated the business-logic in the controllers/Controller.js file.
Logger now records also timestamp of events.
Files are uploaded according to definition in config.js file

* Removed commented-out code; Changed openApi document extensions to suit new express-openapi-validator definition; multipart and file uploading is supported now; Automatic response returns the values the were sent in the request

* fixed README documentation, fixed a mistage in package.json/mustache

* added generated files that were created when running the ./bin/test file

* [go-experimental] Fix nullable support (#5414)

* Fix nullable support in go-experimental client

* Fix support for models with parents and container fields

* Make sure that oneOf interfaces serialize properly even if they're required (non-pointers) on other models

* Spaces => tabs

* Regenerate samples

* Make some methods of nullables pointer-receivers, add tests

* Improve the Get/Set logic to make usage more convenient

* Address review

* [kotlin][client] make base path globally configurable (#5450)

* [kotlin][client] make base path configurable

* [kotlin][client] update pet project

* [kotlin][client] set default base path

* [kotlin][client] set default base path

* [kotlin][client] set default base path

* Add michelealbano to C technical committee (#5692)

* [Go][Experimental] Rename extensions from x-basetype to x-go-base-type (#5691)

* rename go vendor extension

* update go exp petstore samples oas3

* comment out powershell petstore in uptodate script

* remove processing of http_signature_test.mustache (#5696)

* Fix generation of oneOf interfaces for oneOf usage in properties (#5400)

* Fix generation of oneOf interfaces for oneOf usage in properties

* Only generate oneOf interface models when oneOf is defined

* use basic parsing (#5702)

* [python/asyncio] explicitly close client session via async context manager (#5621)

* [gradle] Include engine option for handlebars generation (#5686)

* [codegen][Go] Fix compilation error of generated go code when schema is free form object (#5391)

* Fix code generation for free-form objects in go-experimental

* Execute scripts in bin directory

* Add more use cases for open-ended types

* Add more use cases for open-ended types

* Add more use cases for open-ended types

* add code comments

* Better name for test properties

* handle scenario when type is arbitrary

* handle interface{} scenario

* handle interface{} scenario

* add helper function isAnyType

* isAnyType function

* implementation of isAnyType function

* fix javadoc issue

* handle interface{} scenario

* use equals comparison instead of ==

* merge from master

* Add code documentation

* add code comments, remove unused min/max attribute, fix equals method

* Handle 'anytype' use case

* add code comments

* override postProcessModelProperty to set vendor extension

* Use vendorExtensions.x-golang-is-container

* fix compilation error of generated code

* fix compilation error of generated code

* fix compilation error of generated code

* [Java] Update version of maven-surefire-plugin (#5509)

* use more recent version of maven-surefire-plugin

* use more recent version of maven-surefire-plugin

* higher debug level for troubleshooting ci issue

* temporarily increase debug log to help troubleshoot

* Use local instance of pet store service for unit test purpose

* Add more logging to troubleshoot unit test failures

* Add more logging to troubleshoot unit test failures

* Add more logging to troubleshoot unit test failures

* Add more logging to troubleshoot unit test failures

* Add more logging to troubleshoot unit test failures

* use random ID for Java unit test instead of fixed id

* add code comments and specify URL for java unit test

* reenable quiet argument

* fix java unit test issues

* fix java unit test issues

* Revert "fix java unit test issues"

This reverts commit e8508416ff.

* fix java unit test issues

* Generator for JavaScript/Apollo Client (#5645)

Co-authored-by: William Cheng <wing328hk@gmail.com>

* Add yutaka0m to Kotlin Technical Committee (#5716)

* Add Scala client scripts to ensure-uptodate process (#5712)

* add scala client to ensure-upto-date

* new scala-akka petstore oas3 folder

* regenerate scala akka oas2 petstore

* remove script

* Minor improvments to JS apollo generator (#5714)

* minor improvments to js apollo generator

* comment out apollo

* [Rust Server] Handle text/xml correctly (#5660)

* [Rust Server] Handle text/xml correctly

  Treat application/xml the same as text/xml as per RFC 7303

* [Rust Server] Add test for text/xml

* Update samples

* 4.3.0 release (#5721)

* update samples (#5722)

* 5211 - Use allVars instead of vars for Kotlin client (#5396)

* [C++] [Qt5] fixed cpp-client-qt5 HttpRequestWorker requests crashing on timeout... (#5651)

* - fixed cpp-client-qt5 HttpRequestWorker requests crashing on timeout when they have actually NOT timed out (were calling back into a deleted struct).

* #minor fixes after review

* Regenerate changed files

Co-authored-by: valentin Bisson <valentin@inrosoftware.com>
Co-authored-by: etherealjoy <sunn.ssb@live.com>

* Fix SSL setting in checkout script (#5725)

* fix ssl setting in checkout script

* add check for sbt-openapi-generator

* [C] fix decode funtion (#5642)

* fix function names and add parameter to return decoded bytes length from base64decode function

* format base64decode function to avoid unnecessary malloc and fix wrong length assigning

* update the pointer assigning

for some reason var++ / *var++ cannot be done on int *var, hence making a local variable which is incremented and at the end it is assigned to the pointer.

* Update bump.sh to go SNAPSHOT to version (#5727)

* Fix CI failures (#5734)

* update ci to use petstore 1.0.4

* comment out test

* comment out test

* comment out update user test

* comment out more tests

* use latest petstore

* comment out updatePetWithForm

* comment out update pet test

* fix file path in release_version_update_docs (#5724)

* better appveyor test (#5739)

* better readme, type mapping, new option (#5740)

* Remove warning for unused camel case vendor extension for Qt5 client and server (#5731)

* [PS][Experimental] Add multiple server support (#5741)

* code comment

* add get host setting

* add multiple server support

* add default headers support (#5746)

* [C][Client] Support SSL client authentication for the c client (#5719)

* [C][Client] Support SSL client authentication

* [C][Client] Support SSL client authentication, update sample

* [kotlin] Fix #5247 incorrect enum parameter type for arrays (#5435)

* [Erlang-Server] security definition context changes don't propagate to handler (#5751)

* Map Merge Context & Params

handler requires context and params to be merged before returned to user defined request_handler.

* post build & shell script

* Delete VERSION

* [PS][PowerShell] fix passthru, use switch instead of bool (#5768)

* fix passthru, use switch

* remove line

* comment out kotlin vertx server test (#5767)

* add support for common verbs (#5771)

* fix request.on_complete message when tempfile is nil (#5745)

* fix request.on_complete message when tempfile is nil

* update faraday client sample

* add openapi3 client samples

* use prepare instead of new (#5773)

* use Initialize instead of prepare (#5777)

* add map example (#5778)

* [PS][Experimental] Better common verb handling (#5783)

* better common verb handling

* better debugging

* add option to customize common verb

* [cli][docker] Better expose version/sha information of builds (#5736)

* [cli] Some CLI improvements…

* Introduce --version
* Introduce --help
* Add --sha to version command for short SHA display
* Output Version and SHA details
* In new --version output, display repo and doc site

Additional cleanup to suppress warnings and code quality.

* [docker] Adds labels for metadata

This adds image labels to store metadata on the online and cli docker
images, using standard labels:

* org.opencontainers.image.created
* org.opencontainers.image.revision
* org.opencontainers.image.title
* org.opencontainers.image.version

These can be inspected via 'docker inspect IMAGE_NAME' and may be useful
in tooling/automation or bug reports submitted by users.

For more details on these labels, see:
https://github.com/opencontainers/image-spec/blob/master/annotations.md

* Include version --full for equiv to --version

* [cli] Add --global-property for -D replacement (#5687)

-D option has been deprecated as it was previously used to:

* Pass "system properties"
* Pass additional properties

This was confusing because we already have --additional-properties and
because Java System Properties are passed as -D before program
arguments.

Confusion around the -D option had existed for some time, but when we
introduced the thread-safe GlobalSettings to avoid overwriting Java
System Properties, we created a hard break from Java System Properties
in the generator. This also disconnected the previous "system
properties" from accepting additional properties.

Once these newly deprecated methods are removed, we will have a clear
separation of concerns between:

* Java System Properties
* Global generator properties (used as workflow context)
* Additional properties (used as generator options)

This commit marks multiple places for cleanup in 5.0. These will be
breaking changes, and lower effort to break in 5.0 with deprecation
warnings now rather than adding sibling properties throughout the code
and potentially introducing logic errors.

* [dart-dio] Fixes --model-name-suffix having no effect (#5669)

Fixes #5409

* [go-experimental][go][client] Remove unreachable code in go client API methods (#5611)

* [go-experimental][go][client] Remove unreachable code in go client API methods

* Properly regenerate all samples

* please add openVALIDATION Project to readme (#5534)

* added openVALIDATION Project to readme

* Update README.md

Co-Authored-By: Akihito Nakano <sora.akatsuki@gmail.com>

Co-authored-by: Akihito Nakano <sora.akatsuki@gmail.com>

* [Csharp-client] Complex form parameters are not serialized as application/json (#5787)

* [csharp-client] Complex form parameters are now correctly serialized as json.
Reference: http://spec.openapis.org/oas/v3.0.3#special-considerations-for-multipart-content

* Updated bin/windows csharp sample generation scripts to point to the correct directories

* Updated csharp samples

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* fix scala-akka java8 serializers (#5742)

* fix scala-akka java8 serializers

* regenerate samples for akka-http

* [typescript-axios][client] Unnecessary imports occurs when using withSeparateModelsAndApi (#5797)

* add ts-ignore

* add petstore sample

* use write verbose in auth, better api doc (#5804)

* [PS][Experimental] add withHttpInfo support, fix "null" return (#5811)

* add with http support

* use full name in tests

* using full name in test

* skip type check

* [PS][Experimental] Add tests for array of object in response (#5814)

* debugging array response

* fix find pet tests

* better tests to ignore order

* [codegen] Use once(LOGGER) to reduce amount of identical warning messages (#5808)

* Warn once instead of many times when the log statement does not have contextual information

* Warn once instead of many times when the log statement does not have contextual information

* make name cache configurabl (#5775)

* [codegen] Cachesize config seconds (#5816)

* make name cache configurable

* Address review comments

* [Python-experimental] Documentation enhancement for oneOf schema and minor err msg improvement (#5791)

* Add documentation to generated code

* Improve error message

* Improve documentation

* Improve documentation

* Improve documentation

* Improve documentation

* Improve documentation

* Improve documentation

* Run sample scripts

* Address review comments

* Address review comments

* Fix problem in python error message

* rename hostsetting, validate base url (#5821)

* fix array return (#5822)

* Scala akka-http server (#5758)

* Scala akka-http server base implementation

* [scala-akka-http-server] petStore samples

* Improved the formatting of generated files

* Updated scala-akka-http server samples

* [scala-akka-http-server] the groupId, artifactId and artifactVersion default value are used as intended.

* Fixed the default operation not being correctly generated on parameterless operations

* Added build.sbt.mustache supporting file

* Updated scala-akka-http server samples

* ScalaAkkaHttpServer: Fixed a String.format call to use Locale.ROOT for locale

* [scala-akka-http-server] Fixed defaultValue being escaped during generation

* Added scala-akka-http.md

* Replaced all "⇒" character with "=>" to retain compatibility with scala 2.13

* [scala-akka-http] Added a config option akkaHttpVersion
It's set in the generated build.sbt.

* Updated scala-akka-http server samples

* [scala-akka-http] More accurate akkaHttpVersion parsing

* Updated scala-akka-http.md

* [scala-akka-http] Changed the akka-http version check to fix the generation of StringDirectives

* Updated scala-akka-http samples

* updated scala-akka-http.md

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* Minor improvements to scala akka server (#5823)

* minor improvements to scala akka server

* add samples

* update doc

* Update swagger parser to 2.0.19 (#5413)

* update swagger parser to 2.0.18

* fix online server exception

* Revert "fix online server exception"

This reverts commit fe3cb5221f.

* update parser to 2.0.19

* [jaxrs-cxf-cdi] fix allOf equals and hashCode (#5756)

When generating model that use allOf, the equals and hashCode methods
must take the parent class into account.

* [BUG] [KOTLIN] Fix default value generation for Kotlin Strings (#5776)

* fix default value generation for kotlin

* add updated pet templates

* Revert "add updated pet templates"

This reverts commit 7e8168ad

* regen pet store projects code

* tests  for models for C-libcurl generator (#5699)

* First try to generate unit tests for the models of the C-libcurl client. Models into models are not supported yet.

* Added unit tests for the modules of the C-libcurl client to the git repository.

* Support for objects having other objects as properties, for the C-libcurl client generator

* Proper formatting of generated code

* use allVars to cover all properties (#5835)

* support enum in parameters (#5838)

* [C++] [Qt5] [Client] fixed cpp-client-qt5 HttpRequestWorker contentCompression variables initialization (#5834)

When contentCompression is not enabled, the variables isRequestCompressionEnabled and isResponseCompressionEnabled in HttpRequestWorker are not being initialized.
Without initialization the compress function could be called and the request content could be an empty QByteArray instead of original request body.

* minor fix to http basic auth (#5839)

* Scala akka http server - normalization of some vendor extensions (#5829)

* [scala-akka-http-server] Normalized vendor extension "paths" to "x-paths"

* [scala-akka-http-server] Normalized vendor extension "hasDefaultValue", "isDefault", "specificMarshallers", "fileParams", "nonFileParams"

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* Add Bouill to the Scala technical committee (#5843)

* C client generator improvements to support petstore. Solves #5836 (#5837)

* C client generator improvement to support:
openapi-generator/modules/openapi-generator/src/test/resources/3_0/petstore.yaml

* Improvements to the C client generator:
- moved base64* from apiClient.c to binary.h/binary.c
- changed CR/LF to LF in binary.h/binary.c

* C client generator: better support for base64encode / base64decode

* Add openapi.yaml file to Java clients (#5765)

* Add openapi.yaml file to Java client

* Move supporting template file to Java root

* Update petstore clients

* [codegen] Fix 'super.HashCode' for oneOf and allOf Implementations (retry) (#5830)

* Added hasVars after completion of all model post-processing (#5587)

* Post ensure-up-to-date

* Update to check the size of vars and not assume non-null

* update mysql samples

* Add default case to handle response code (#5825)

* add default case to handle response code

* fix default response code

* add test for isDefault

* fix user id in scala tc

* Fix for Issue #4840 [BUG][JAVA][spring-mvc] Generated Code for Map of Maps Return Type does not compile (#5240)

* add parent for allOf only (#5851)

* Add pythonSrcRoot option to python servers (aiohttp/flask/blueplanet) to support src/ layout projects [and reenable/fix all python server tests] (#5423)

* python server: Add pythonSrcRoot option

This will allow the python project to be in a subdirectory (as specified
in pythonSrcRoot). That could mean following the src layout with sources
under src/ or lib/. Multi-language projects might use a sub directory
like python/, or whatever makes sense for the project.

By default, the pythonSrcRoot is "", meaning the existing behavior is
the default.

* python server: update template files to support pythonSrcRoot

* python server: update docs to add pythonSrcRoot option

* python server: add pythonSrcRoot sample script

* python server: build sample srclayout project

* [Python] copy test files preserving history

* [Python] Make a conflict to preserve file copy history

* [Python] customize pom.xml for src layout tests

* [Python] add python-aiohttp-srclayout tests

* [Python] Fix server tests by updating requirements

Reverts the PR that disabled python2 server tests:
https://github.com/OpenAPITools/openapi-generator/pull/4949

Reverts commits that disabled python3 server tests:
9adfedbfbb
17ee990baa

Issue about the python 3 tests:
https://github.com/OpenAPITools/openapi-generator/issues/5235

I couldn't find an issue about the python2 tests being disabled.
I'm guessing build errors like the following were the trigger:
https://travis-ci.org/github/OpenAPITools/openapi-generator/builds/634238181

Let's see what breaks!

* [Python] Copy setup.py to python-aiohttp

* [Python] Save history while copying setup.py to python-aiohttp

* [Python] Add aiohttp server setup.py

* [Python] Fix python server tests with src layout

* [Python] bump Flask-Testing version

* [Python] Pin pyyaml for py2.7 flask server

* [Python] simplify flask server requirements

* consolidate server tests

* [Python] rebuild python server samples

* [Python] Fix python server requirements for older pythons

Documented minimum python version for our aiohttp server is 3.5.
Documented minimum python version for our flask server is 3.4.
Connexion 2.3 is the last version to support python 3.4 and 3.5, so fix
the version pinning to correctly select <=2.3 for these EOL python
versions. Newer pythons should get the latest if possible as there many
relevant bug fixes.

Werkzeug also needs to be pinned for these old versions in the aiohttp
server just like for the flask server.

3.4 and 3.5 are EOL. We really should increase the minimum supported
version, but that is for another PR to do.

* stop error globally (#5858)

* [PS][Experimental] Add validations to model (#5842)

* add validations to model

* better error message

* improve validation

* Updates to allow the setting of the dateTime format string (#5763)

* [PS] Select Content-Type in the response (#5872)

* better return type handling

* update tempalte

* better documentation

* fix greater than

* various enhancement to ps exp generator (#5875)

* [C#] dependency upgrade (#5870)

* Updating packages version (#5313)

* Add support to RestSharp version 106.10.1

Restsharp 106.10.1 needs the Content Lenght as a parameter to AddFile method

* Updating RestSharp Version

Updating RestSharp Version

* Update netcore_project.mustache

* Update netcore_testproject.mustache

* Update Project.mustache

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Execute task async obsolete

Use ExecuteAsync instead

* update csharp samples

Co-authored-by: William Cheng <wing328hk@gmail.com>

* [csharp] Library upgrade fix (#5848)

* On .net45 framework, Restsharp version is updated to 106.10.1 Otherwise, it stays on version 105.1.0

* Added additionalProperties for library versions and target frameworks

* Removed unused properties

* Added an additional property to test for a specific version of RestSharp

* Updated csharp samples

* Fixed nuspec.mustache to use library specific additional properties

* Updated csharp samples

* Updating CI/samples.ci csharp petstore test project file.

* Updated csharp.md

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* [csharp-client] Restored tests on csharp samples (#5879)

* Restored tests on csharp samples

* Restored a reference to the file used to test file uploads

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* update samples

Co-authored-by: Igor Quirino <iquirino91@gmail.com>
Co-authored-by: Bouillie <34162532+Bouillie@users.noreply.github.com>
Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* [Csharp-client] Complex form parameters are not serialized as application/json (#5849)

* [csharp-client] Complex form parameters are now correctly serialized as json.

* Updated csharp samples

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* docs: removes Nico from technical committee (#5883)

* [PS] better handle special variables (#5885)

* add variable

* fix reserved words

* update ps doc

* [PS] add file post-processing to the PowerShell generator (#5864)

* add post process to ps generator

* add import

* fix merge issue

* consolidate header selection functions (#5889)

* [Java-client] Add maven-compiler-plugin in pom.xml and enable linter checks by default (#5866)

* Add maven-compiler-plugin plugin in Java pom.xml and enable linter checks by default

* Add maven-compiler-plugin plugin in Java pom.xml and enable linter checks by default

* Update enum.mustache (#5793)

https://github.com/OpenAPITools/openapi-generator/issues/5792

* Update modelGeneric.mustache (#5378)

* Update modelGeneric.mustache

If maxlength is specified for a property type enum it there should be .ToString() appended before length check

* ran the csharp petstore bar and updated the file

Co-authored-by: Shweta Shukla <shshukl@microsoft.com>

* Fix Scala sttp generator packages (#5890)

* Fix Scala sttp generator packages

* Change package to parameterised

* [Dart] Fix "basic" auth method and  Add Bearer token support (#5743)

* added auth check and lint

* fixed basic auth condition

* Added bearer auth

* updated samples

* update dart petstore samples

Co-authored-by: William Cheng <wing328hk@gmail.com>

* Add date time format annotation on pojo for model query parameters (#5437)

* Add date time format annotation on pojo for model query parameters

* Regenetare samples

* update spring samples

Co-authored-by: William Cheng <wing328hk@gmail.com>

* [mysql] Add basic SQL queries (#5757)

* Add basic SQL queries template

* Add namedParametersEnabled option

* Move model related SQLs into Model folder

* Update README template

* Refresh samples

* [enhancement] [jaxrs-spec] Add builders to models (#4930)

* Update formatting in jaxrs-spec POJOs

* Add generateBuilders option

* Update formatting in jaxrs-spec POJOs

* Disable the builders generation by default

* Ensure samples are up-to-date

* Revert newline change

* Run ensure-up-to-date

* update doc

* fix merge conflicts

Co-authored-by: Artem Shubovych <ashubovych@atlassian.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>

* Update generated build files for REST Assured (#5873)

* REST Assured 4.3.0
* Jackson 2.10.3
* Gson 2.8.6, GSON-Fire 1.8.4
* Okio 1.17.5
* Joda-Time 2.10.5
* ThreeTenBP 1.4.3
* Added missing dependencies for Bean Validation
* Added missing dependencies for `@Generated` annotation
* Refresh REST Assured sample project

* [Java][Feign] Bug fix in @Param annotation (#5250)

* FIX-5249 fix @Param annotation for Feign-client code generation

Use paramName instead of baseName in order to make mapping in @Headers
section fit the param-value.

* update samples

* FIX-5249 fix @Param annotation for Feign-client code generation

Use paramName instead of baseName in order to make mapping in @Headers
section fit the param-value.

Co-authored-by: Christoph Preißner <christoph.preissner@blu-pa.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>

* [Java] Increase java compiler stack size to handle large files (#5901)

* increase java compiler stack size to handle large files

* increase java compiler stack size to handle large files

* Added emineo to list of companies on website (#5905)

* add emineo to the list

* [swift5] fix warning (#5900)

* update bitwise config (#5904)

* [Java] Discriminator lookup should not be case insensitive by default (#5894)

* Add 'discriminatorCaseSensitive' property

* Discriminator value lookup should not be case insensitive

* fix typo

* run scripts

* execute ./bin/utils/export_docs_generators.sh

* fix discriminator mapping, add code comments

* minor fix to users.yml

* Add a link to optim blog post (#5922)

* [Java] Fix inclusive max validation (#5908)

Co-authored-by: erikmolin <erik@zaver.se>

* add bearer auth support to csharp netcore (#5921)

* [Python][aiohttp] create venv as rule (#5913)

* create venv as rule

* create venv as rule II

* Fix for Result Model Name collision (#5923)

* Fix for Result Model Name collision

* Run Scripts

Co-authored-by: Sebastian Ohm <sebastian.ohm@ubimax.com>

* [Dart] Remove content type from header when content type is not specified (#5752)

* accept empty content type

* fixed test

* updated samples

* additional comment out

* update dependency for java client (#5926)

* Update axios dependency to the new minor version 0.19.0 (#5867)

* Update axios dependency to 0.19.0

Axios (version 0.18.0) used by typescript-axios generator is more than two years old (released in Feb 2018). Axios 0.19.2 released earlier this year contains a lot of fixes and functionality, I recommend updating to 0.19.2.

* Ran ./bin/typescript-axios-petstore-all.sh to update package.json in ./samples

Co-authored-by: Chandra Yalangi <chandra.yalangi@appklenz.com>

* fixed README/doc of bearer auth support for csharp-netcore (#5931)

* fix duplicated semi-colon in c# model (#5934)

* [Python-experimental] Use DER encoding for ECDSA signatures, add parameter to configure hash algorithm (#5924)

* Use DER encoding for ECDSA signatures

* Use DER encoding for ECDSA signatures

* Use DER encoding for ECDSA signatures

* Use DER encoding for ECDSA signatures

* fix python unit tests for http message signature

* Fix error message

* format python code

* format python code

* [Python-experimental] Fix TypeError: unhashable type: 'list' (#5810)

* handle scenario when value is a list, fix TypeError: unhashable type: 'list'

* Add __hash__ function

* use list instead of set

* use list instead of set

* use list instead of set

* use list instead of set

* use list instead of set

* use list instead of set

* [python/asyncio] fix passing proxy parameters to aiohttp (#5943)

* [C][Client]Fix data lost when libcurl write-data callback function is called multiple times (#5828)

* [C][Client]Fix the defect of data lost when libcurl write-data callback function (configured by CURLOPT_WRITEFUNCTION) is called multiple times.

* [C][Client]Fix data lost when libcurl write-data callback function is called multiple times (Reset count)

* [typescript-axios][client] Allow apiKey type Promise. (#5953)

* change apiKey type

* recreate sample

* Add YITU Technology to the user list (#5967)

* add yitu to the user list

* use yitu technology

* Use model as body param for generateAliasAsModel (#4569)

* generateAliasAsModel: Use model name as body param

* Update samples

* resolve merge conflicts in the core generator files

* fix merge conflicts in pom.xml

* Resolve Elm merge conflicts

* [Rust Server] Fix up merge conflicts

* Update samples

* [Rust Server] Add debug log for rust-server-petstore.sh

* update samples

* update more samples

* fix dart openapi-generator version

* remove deprecated c# files

* update meta codegen

* fix port in pom.xml

* fix port in sample

* update jaxrs cxf version

Co-authored-by: sunn <33183834+etherealjoy@users.noreply.github.com>
Co-authored-by: dwlabcube <46682038+dwlabcube@users.noreply.github.com>
Co-authored-by: Herve DARRITCHON <herve.darritchon@orange.com>
Co-authored-by: Akihito Nakano <sora.akatsuki@gmail.com>
Co-authored-by: Johnny Peck <johnnypeck@users.noreply.github.com>
Co-authored-by: Michele Albano <michele.albano@gmail.com>
Co-authored-by: Jim Schubert <james.schubert@gmail.com>
Co-authored-by: Nikita <nickita.davidenko@gmail.com>
Co-authored-by: Alexey Makhrov <amakhrov@gmail.com>
Co-authored-by: val <onzeonline@gmail.com>
Co-authored-by: Bruno Coelho <4brunu@users.noreply.github.com>
Co-authored-by: Aleksandr Nekrasov <snake_nas@mail.ru>
Co-authored-by: Akira Tanimura <autopp.inc@gmail.com>
Co-authored-by: Justin <JustinBusschau@users.noreply.github.com>
Co-authored-by: Justin Black <spacether@users.noreply.github.com>
Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>
Co-authored-by: Hui Yu <ityuhui@gmail.com>
Co-authored-by: Yutaka Miyamae <48900426+yutaka0m@users.noreply.github.com>
Co-authored-by: Mateusz Szychowski (Muttley) <muttleyxd@users.noreply.github.com>
Co-authored-by: Jorge Rodriguez <jorgerod84@gmail.com>
Co-authored-by: Gonzalo <gonzalo.nom.es@gmail.com>
Co-authored-by: ChristianCiach <christian.ciach@gmail.com>
Co-authored-by: Bodo Graumann <mail@bodograumann.de>
Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
Co-authored-by: Daniel Klessing <sakanaou@users.noreply.github.com>
Co-authored-by: copypasta-g <53397163+copypasta-g@users.noreply.github.com>
Co-authored-by: Mahdi Dibaiee <mdibaiee@pm.me>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
Co-authored-by: siada <siada@users.noreply.github.com>
Co-authored-by: Samuel Hoffstaetter <samuel@hoffstaetter.com>
Co-authored-by: Esteban Gehring <esteban.gehring@bithost.ch>
Co-authored-by: Jon Schoning <jonschoning@gmail.com>
Co-authored-by: Marcin Kubala <marcin@mkubala.pl>
Co-authored-by: anoohya-n <51289018+anoohya-n@users.noreply.github.com>
Co-authored-by: Antoine Reilles <areilles@gmail.com>
Co-authored-by: Clemens Angermann <clemens.tirsch@web.de>
Co-authored-by: Mostafa Moradian <mostafa@loadimpact.com>
Co-authored-by: Adam <adkapx@gmail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: sullis <github@seansullivan.com>
Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Matt Traynham <matt.traynham@pureport.com>
Co-authored-by: LEZIER-S2 <60382243+LEZIER-S2@users.noreply.github.com>
Co-authored-by: Thomas Enderle <dommaes@users.noreply.github.com>
Co-authored-by: YishTish <yishail@gmail.com>
Co-authored-by: Slavek Kabrda <slavek.kabrda@datadoghq.com>
Co-authored-by: Tomasz Prus <tomasz.prus@gmail.com>
Co-authored-by: Erica Kastner <dkastner@gmail.com>
Co-authored-by: Richard Whitehouse <richard.whitehouse@metaswitch.com>
Co-authored-by: valentin Bisson <valentin@inrosoftware.com>
Co-authored-by: etherealjoy <sunn.ssb@live.com>
Co-authored-by: Hemant Zope <42613258+zhemant@users.noreply.github.com>
Co-authored-by: Even André Fiskvik <even@myworkout.no>
Co-authored-by: ehansen31 <e.hansen31@live.com>
Co-authored-by: Timur Platonov <tpltn@users.noreply.github.com>
Co-authored-by: Josh Burton <josh@arklabs.nz>
Co-authored-by: Ilja leyberman <7ilya@gmx.de>
Co-authored-by: Bouillie <34162532+Bouillie@users.noreply.github.com>
Co-authored-by: Olivier Leonard <oleonard@ankama.com>
Co-authored-by: tanmen <yt.prog@gmail.com>
Co-authored-by: Alex Buchkovsky <alex.buchkovsky@gmail.com>
Co-authored-by: Natan Laverde <natanlaverde@gmail.com>
Co-authored-by: Nicholas Muesch <nicholas.muesch@datadoghq.com>
Co-authored-by: jburgess <11861789+jburgess@users.noreply.github.com>
Co-authored-by: emileonhardt <40421857+emileonhardt@users.noreply.github.com>
Co-authored-by: Jacob Floyd <cognifloyd@gmail.com>
Co-authored-by: Igor Quirino <iquirino91@gmail.com>
Co-authored-by: Nico König <npunktkoenig@gmail.com>
Co-authored-by: https://gitlab.com/selankon <selankon@selankon.xyz>
Co-authored-by: Shweta Shukla <25539662+shwetashukla@users.noreply.github.com>
Co-authored-by: Shweta Shukla <shshukl@microsoft.com>
Co-authored-by: Bartek Kowalik <bkowalik@users.noreply.github.com>
Co-authored-by: Shinya Sugmoto <34866626+gasugesu@users.noreply.github.com>
Co-authored-by: Artem Shubovych <shybovycha@gmail.com>
Co-authored-by: Artem Shubovych <ashubovych@atlassian.com>
Co-authored-by: Jochen Schalanda <jochen@schalanda.name>
Co-authored-by: Chr1st0ph <cpreissner@gmx.de>
Co-authored-by: Christoph Preißner <christoph.preissner@blu-pa.com>
Co-authored-by: Erikmolin <erik.johan.molin@gmail.com>
Co-authored-by: erikmolin <erik@zaver.se>
Co-authored-by: Nicolas Homble <nhomble@terpmail.umd.edu>
Co-authored-by: Sebastian <63457660+sebohdev@users.noreply.github.com>
Co-authored-by: Sebastian Ohm <sebastian.ohm@ubimax.com>
Co-authored-by: chandra-gh <63366477+chandra-gh@users.noreply.github.com>
Co-authored-by: Chandra Yalangi <chandra.yalangi@appklenz.com>
Co-authored-by: Fabian Freund <mail@fabi.online>
Co-authored-by: Erik Timmers <e.timmers@gmail.com>
2020-04-22 11:47:08 +08:00
Jochen Schalanda
40be1c311e [Java][Client] Fix Gradle and SBT builds for REST Assured generator (#5990)
* Fix Gradle and SBT builds for Java REST Assured generator

* Add missing jackson-databind-nullable dependency to SBT build

* Update rest-assured sample

* Add sample for Java client with REST Assured and Jackson

* Add new REST Assured sample as Maven sub-module
2020-04-22 11:19:17 +08:00
William Cheng
12512cf720 update cxf version (#6003) 2020-04-22 11:02:23 +08:00
William Cheng
5ae783aac5 update jaxrs cxf samples 2020-04-22 10:58:31 +08:00
William Cheng
751b40677b update jaxrs cxf cdi version to 3.1.2 2020-04-22 04:04:25 +08:00
William Cheng
ac5de91b97 update jaxrs cxf version 2020-04-22 00:17:58 +08:00
Harald Fernengel
381ebeb33e [typescript-fetch] support http HEAD as well (#5994)
closes #2935
2020-04-21 14:12:11 +02:00
William Cheng
bf4c5298fd fix port in sample 2020-04-21 18:13:21 +08:00
William Cheng
c9882cb494 add allianz logo 2020-04-21 17:07:29 +08:00
William Cheng
98ea048d46 fix port in pom.xml 2020-04-21 15:59:39 +08:00
Christian Katzorke
8661ed3c04 Added Allianz Technolgy (#5999)
Allianz Technology, the service provider subsidiary of Allianz SE is using OpenAPI generator.
2020-04-21 15:40:08 +08:00
William Cheng
f8911700c7 fix inline schema without object type (#5992) 2020-04-21 15:39:40 +08:00
Yuriy Belenko
da149e1204 [mysql] Add OAuth2 framework tables (#5807)
* Add OAuth table schemas

* Refresh samples

* Expand password column length

* Add copyright notice of OAuth2 schema author

* Refresh samples
2020-04-21 14:25:56 +08:00
Romain Pouclet
fe2f092e7f Expose deprecated flag in model template (#5964) 2020-04-21 14:23:33 +08:00
William Cheng
f80a5b3e64 update meta codegen 2020-04-21 14:03:45 +08:00
William Cheng
15d0982a5e remove deprecated c# files 2020-04-21 13:43:19 +08:00
William Cheng
0f8b0edfad fix dart openapi-generator version 2020-04-21 10:09:42 +08:00
William Cheng
fc7dda8db9 update more samples 2020-04-21 10:04:42 +08:00
William Cheng
5a9b0fcf9e update samples 2020-04-21 02:22:55 +08:00
Richard Whitehouse
935f6100c3 [Rust Server] Add debug log for rust-server-petstore.sh 2020-04-20 18:43:19 +01:00
Richard Whitehouse
2cd5bc45da Update samples 2020-04-20 18:43:19 +01:00
Richard Whitehouse
3ad1646f2e [Rust Server] Fix up merge conflicts 2020-04-20 18:43:19 +01:00
William Cheng
c35f32bf39 Add tests for parents, allParents (#5984)
* add test for regression with a single ref in allof

* fix tests

* add a test for allParents
2020-04-20 18:39:06 +08:00
Justin Black
1766279916 Fixes issue 5876 (#5977)
* Fixes getParentName function

* Updates getChildrenMap to not throw a NPE

* Updates test

* Runs ensure up to date
2020-04-20 16:00:24 +08:00
Erik Timmers
c1cea7f2fb Resolve Elm merge conflicts 2020-04-20 09:20:46 +02:00
Malcolm Murray
4818644278 [BUG] [TYPESCRIPT-AXIOS] Fixing issue where dist folder is not published when publishing typescript-axios generated client with npm publish (#5850)
* Removing build path from gitignore as this causes npm publishing issues

* updating petstore example

* Adding npmignore to typescript-axios generator

* Updating petstore example
2020-04-20 11:27:53 +08:00
William Cheng
c6353a7589 add bearer auth support to C# 2.0 client (#5978) 2020-04-19 23:15:57 +08:00
Kieran Simpson
a15da6feb6 [gradle] Print value of outputDir correctly in gradle plugin (#5936) 2020-04-19 10:32:29 -04:00
zaleski.d
f6572fd2f4 [bug][html2] Fix visibility of body/response schemas (#5643)
* 1441 fix visibility of body/response schemas

* Handle schemas with array items

* Point to template directory in bin script

* Regenerate sample

Co-authored-by: Jim Schubert <james.schubert@gmail.com>
2020-04-19 09:38:28 -04:00
William Cheng
171f71872e add test to reuse object from the server (#5976) 2020-04-19 12:37:48 +08:00
William Cheng
a8620b8663 add bearer support to csharp client (#5975) 2020-04-19 10:46:34 +08:00
Falko Modler
84099eefdc [maven] mark Mojo threadSafe=true + fix concurrency issue in Co… (#5898) 2020-04-18 20:40:09 -04:00
Alexey Makhrov
c5472be422 Ensure model.allParents always includes model.parent. (#5738)
`allParents` is used by generators with multiple inheritance, e.g typescript and perl
2020-04-18 15:22:20 +08:00
Fabian Freund
e47739dda5 return a null instead of application/json when no content types are set (#5941)
* return a null instead of application/json when no content types are set

* update petstore sample

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-18 09:57:18 +08:00
Bouillie
cb50ad590f [scala-akka-http-server] Fix a generation problem on operations with empty responses (#5868)
* [scala-akka-http-server] When expecting an empty response, a response with an empty text/plain content is not produced anymore

* Updated scala-akka-http-server samples

Co-authored-by: Olivier Leonard <oleonard@ankama.com>
2020-04-18 01:22:24 +08:00
Ghufz
0adc20f114 [powershell-experimental] ValidatePattern with double-quote (") throws-exception (#5956)
* ValidatePattern having double quote(") throws exception on running Build.ps1

* fix tab with space

Co-authored-by: Ghufran Zahidi <gzahidi@cisco.com>
2020-04-17 23:08:48 +08:00
William Cheng
1574250fc6 fix merge conflicts in pom.xml 2020-04-17 16:26:30 +08:00
William Cheng
8fa76843d0 resolve merge conflicts in the core generator files 2020-04-17 16:10:10 +08:00
William Cheng
faf6f197be Merge remote-tracking branch 'origin/master' into 5.0-sync-master 2020-04-17 15:51:00 +08:00
Bodo Graumann
896867b5e7 Use model as body param for generateAliasAsModel (#4569)
* generateAliasAsModel: Use model name as body param

* Update samples
2020-04-17 13:36:27 +08:00
William Cheng
5acbbf8878 Add YITU Technology to the user list (#5967)
* add yitu to the user list

* use yitu technology
2020-04-17 10:45:01 +08:00
tanmen
efae171054 [typescript-axios][client] Allow apiKey type Promise. (#5953)
* change apiKey type

* recreate sample
2020-04-16 14:04:43 +02:00
Hui Yu
41664b3ba8 [C][Client]Fix data lost when libcurl write-data callback function is called multiple times (#5828)
* [C][Client]Fix the defect of data lost when libcurl write-data callback function (configured by CURLOPT_WRITEFUNCTION) is called multiple times.

* [C][Client]Fix data lost when libcurl write-data callback function is called multiple times (Reset count)
2020-04-16 12:45:44 +08:00
Tomasz Prus
7a0242311f [python/asyncio] fix passing proxy parameters to aiohttp (#5943) 2020-04-15 18:16:08 -07:00
Sebastien Rosset
91cfabdad2 [Python-experimental] Fix TypeError: unhashable type: 'list' (#5810)
* handle scenario when value is a list, fix TypeError: unhashable type: 'list'

* Add __hash__ function

* use list instead of set

* use list instead of set

* use list instead of set

* use list instead of set

* use list instead of set

* use list instead of set
2020-04-15 17:02:56 -07:00
Sebastien Rosset
827904f732 [Python-experimental] Use DER encoding for ECDSA signatures, add parameter to configure hash algorithm (#5924)
* Use DER encoding for ECDSA signatures

* Use DER encoding for ECDSA signatures

* Use DER encoding for ECDSA signatures

* Use DER encoding for ECDSA signatures

* fix python unit tests for http message signature

* Fix error message

* format python code

* format python code
2020-04-15 10:43:33 -07:00
Andy.Yang.cn
c3837ca331 [Rust Server] Fix #5906 (yaml with path parameter error) (#5871)
* [Rust Server] Fix Rust 1.39+ "Box<Future" and "as &Has" compile issue

* [Rust Server] Fix Rust server side pathRegEx and baseName not match issue

* [Rust Server] Add test case yaml with path parameter.
2020-04-15 17:19:00 +01:00
William Cheng
d57ceb86bf fix duplicated semi-colon in c# model (#5934) 2020-04-15 16:28:54 +08:00
Fabian Freund
33850a1312 fixed README/doc of bearer auth support for csharp-netcore (#5931) 2020-04-15 14:41:34 +08:00
chandra-gh
8a17ae6822 Update axios dependency to the new minor version 0.19.0 (#5867)
* Update axios dependency to 0.19.0

Axios (version 0.18.0) used by typescript-axios generator is more than two years old (released in Feb 2018). Axios 0.19.2 released earlier this year contains a lot of fixes and functionality, I recommend updating to 0.19.2.

* Ran ./bin/typescript-axios-petstore-all.sh to update package.json in ./samples

Co-authored-by: Chandra Yalangi <chandra.yalangi@appklenz.com>
2020-04-14 18:42:46 +02:00
William Cheng
747cd087b6 update dependency for java client (#5926) 2020-04-14 20:34:16 +08:00
Shinya Sugmoto
533d686bec [Dart] Remove content type from header when content type is not specified (#5752)
* accept empty content type

* fixed test

* updated samples

* additional comment out
2020-04-14 18:19:34 +08:00
Sebastian
131bd4fd35 Fix for Result Model Name collision (#5923)
* Fix for Result Model Name collision

* Run Scripts

Co-authored-by: Sebastian Ohm <sebastian.ohm@ubimax.com>
2020-04-14 17:23:58 +08:00
Nicolas Homble
c479e518d4 [Python][aiohttp] create venv as rule (#5913)
* create venv as rule

* create venv as rule II
2020-04-14 14:53:28 +08:00
William Cheng
4c64870ab7 add bearer auth support to csharp netcore (#5921) 2020-04-14 11:53:15 +08:00
Erikmolin
dc9f79de6b [Java] Fix inclusive max validation (#5908)
Co-authored-by: erikmolin <erik@zaver.se>
2020-04-14 11:26:50 +08:00
William Cheng
2de0e6f9e4 Add a link to optim blog post (#5922) 2020-04-14 11:04:49 +08:00
William Cheng
a6f521c7b7 minor fix to users.yml 2020-04-13 21:23:51 +08:00
Sebastien Rosset
8af6b7459c [Java] Discriminator lookup should not be case insensitive by default (#5894)
* Add 'discriminatorCaseSensitive' property

* Discriminator value lookup should not be case insensitive

* fix typo

* run scripts

* execute ./bin/utils/export_docs_generators.sh

* fix discriminator mapping, add code comments
2020-04-13 18:54:00 +08:00
William Cheng
aca8089bdd update bitwise config (#5904) 2020-04-13 16:57:44 +08:00
Bruno Coelho
7dd2d3c3eb [swift5] fix warning (#5900) 2020-04-13 16:57:22 +08:00
William Cheng
d8b46dc3d5 add emineo to the list 2020-04-13 16:25:37 +08:00
emileonhardt
54a350fbff Added emineo to list of companies on website (#5905) 2020-04-13 16:16:41 +08:00
Sebastien Rosset
d81c244f9a [Java] Increase java compiler stack size to handle large files (#5901)
* increase java compiler stack size to handle large files

* increase java compiler stack size to handle large files
2020-04-13 13:56:20 +08:00
Chr1st0ph
cc09118ffc [Java][Feign] Bug fix in @Param annotation (#5250)
* FIX-5249 fix @Param annotation for Feign-client code generation

Use paramName instead of baseName in order to make mapping in @Headers
section fit the param-value.

* update samples

* FIX-5249 fix @Param annotation for Feign-client code generation

Use paramName instead of baseName in order to make mapping in @Headers
section fit the param-value.

Co-authored-by: Christoph Preißner <christoph.preissner@blu-pa.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-13 09:59:35 +08:00
Richard Whitehouse
95105cef2e [Rust Server] Support complex query parameters (#5831)
* [Rust Server] Support complex query parameters

* [Rust Server] Remove unused extern crate

* [Rust Server] tokio should be a dev-dependency

* [Rust Server] Add test for complex query params

* Update samples

Co-authored-by: Matt Williams
2020-04-12 19:57:50 +01:00
Jochen Schalanda
e82546f342 Update generated build files for REST Assured (#5873)
* REST Assured 4.3.0
* Jackson 2.10.3
* Gson 2.8.6, GSON-Fire 1.8.4
* Okio 1.17.5
* Joda-Time 2.10.5
* ThreeTenBP 1.4.3
* Added missing dependencies for Bean Validation
* Added missing dependencies for `@Generated` annotation
* Refresh REST Assured sample project
2020-04-12 23:36:18 +08:00
Artem Shubovych
62c346f8da [enhancement] [jaxrs-spec] Add builders to models (#4930)
* Update formatting in jaxrs-spec POJOs

* Add generateBuilders option

* Update formatting in jaxrs-spec POJOs

* Disable the builders generation by default

* Ensure samples are up-to-date

* Revert newline change

* Run ensure-up-to-date

* update doc

* fix merge conflicts

Co-authored-by: Artem Shubovych <ashubovych@atlassian.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-12 17:27:34 +08:00
Yuriy Belenko
1c51d4138e [mysql] Add basic SQL queries (#5757)
* Add basic SQL queries template

* Add namedParametersEnabled option

* Move model related SQLs into Model folder

* Update README template

* Refresh samples
2020-04-12 16:49:50 +08:00
Gonzalo
6a158de431 Add date time format annotation on pojo for model query parameters (#5437)
* Add date time format annotation on pojo for model query parameters

* Regenetare samples

* update spring samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-12 09:39:16 +08:00
Shinya Sugmoto
800293ccf9 [Dart] Fix "basic" auth method and Add Bearer token support (#5743)
* added auth check and lint

* fixed basic auth condition

* Added bearer auth

* updated samples

* update dart petstore samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-04-12 09:38:15 +08:00
Bartek Kowalik
64c99504b4 Fix Scala sttp generator packages (#5890)
* Fix Scala sttp generator packages

* Change package to parameterised
2020-04-11 16:23:48 -04:00
Shweta Shukla
58dc48da8d Update modelGeneric.mustache (#5378)
* Update modelGeneric.mustache

If maxlength is specified for a property type enum it there should be .ToString() appended before length check

* ran the csharp petstore bar and updated the file

Co-authored-by: Shweta Shukla <shshukl@microsoft.com>
2020-04-11 22:45:30 +08:00
https://gitlab.com/selankon
07cb6529b3 Update enum.mustache (#5793)
https://github.com/OpenAPITools/openapi-generator/issues/5792
2020-04-11 22:15:14 +08:00
Sebastien Rosset
e9d35c5a2a [Java-client] Add maven-compiler-plugin in pom.xml and enable linter checks by default (#5866)
* Add maven-compiler-plugin plugin in Java pom.xml and enable linter checks by default

* Add maven-compiler-plugin plugin in Java pom.xml and enable linter checks by default
2020-04-11 00:40:27 +08:00
William Cheng
b7dfd3b2a7 consolidate header selection functions (#5889) 2020-04-11 00:39:33 +08:00
William Cheng
59c3a3127b [PS] add file post-processing to the PowerShell generator (#5864)
* add post process to ps generator

* add import

* fix merge issue
2020-04-11 00:30:05 +08:00
William Cheng
b477341d94 update ps doc 2020-04-10 22:11:10 +08:00
William Cheng
5c2d1eafa2 [PS] better handle special variables (#5885)
* add variable

* fix reserved words
2020-04-10 21:46:27 +08:00
Nico König
8eefbadd06 docs: removes Nico from technical committee (#5883) 2020-04-10 18:43:47 +08:00
Bouillie
d221237309 [Csharp-client] Complex form parameters are not serialized as application/json (#5849)
* [csharp-client] Complex form parameters are now correctly serialized as json.

* Updated csharp samples

Co-authored-by: Olivier Leonard <oleonard@ankama.com>
2020-04-10 15:09:12 +08:00
William Cheng
6c153bd079 [C#] dependency upgrade (#5870)
* Updating packages version (#5313)

* Add support to RestSharp version 106.10.1

Restsharp 106.10.1 needs the Content Lenght as a parameter to AddFile method

* Updating RestSharp Version

Updating RestSharp Version

* Update netcore_project.mustache

* Update netcore_testproject.mustache

* Update Project.mustache

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Updating packages version

Updating packages version

* Execute task async obsolete

Use ExecuteAsync instead

* update csharp samples

Co-authored-by: William Cheng <wing328hk@gmail.com>

* [csharp] Library upgrade fix (#5848)

* On .net45 framework, Restsharp version is updated to 106.10.1 Otherwise, it stays on version 105.1.0

* Added additionalProperties for library versions and target frameworks

* Removed unused properties

* Added an additional property to test for a specific version of RestSharp

* Updated csharp samples

* Fixed nuspec.mustache to use library specific additional properties

* Updated csharp samples

* Updating CI/samples.ci csharp petstore test project file.

* Updated csharp.md

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* [csharp-client] Restored tests on csharp samples (#5879)

* Restored tests on csharp samples

* Restored a reference to the file used to test file uploads

Co-authored-by: Olivier Leonard <oleonard@ankama.com>

* update samples

Co-authored-by: Igor Quirino <iquirino91@gmail.com>
Co-authored-by: Bouillie <34162532+Bouillie@users.noreply.github.com>
Co-authored-by: Olivier Leonard <oleonard@ankama.com>
2020-04-10 15:08:34 +08:00
William Cheng
46f3b4a870 various enhancement to ps exp generator (#5875) 2020-04-09 22:28:58 +08:00
William Cheng
7342077cb1 [PS] Select Content-Type in the response (#5872)
* better return type handling

* update tempalte

* better documentation

* fix greater than
2020-04-09 20:06:26 +08:00
sunn
c73f3c5eb2 Updates to allow the setting of the dateTime format string (#5763) 2020-04-09 09:20:35 +02:00
William Cheng
d599527104 [PS][Experimental] Add validations to model (#5842)
* add validations to model

* better error message

* improve validation
2020-04-09 10:49:37 +08:00
William Cheng
31ecf7306b stop error globally (#5858) 2020-04-08 21:53:51 +08:00
Jacob Floyd
469b21830c Add pythonSrcRoot option to python servers (aiohttp/flask/blueplanet) to support src/ layout projects [and reenable/fix all python server tests] (#5423)
* python server: Add pythonSrcRoot option

This will allow the python project to be in a subdirectory (as specified
in pythonSrcRoot). That could mean following the src layout with sources
under src/ or lib/. Multi-language projects might use a sub directory
like python/, or whatever makes sense for the project.

By default, the pythonSrcRoot is "", meaning the existing behavior is
the default.

* python server: update template files to support pythonSrcRoot

* python server: update docs to add pythonSrcRoot option

* python server: add pythonSrcRoot sample script

* python server: build sample srclayout project

* [Python] copy test files preserving history

* [Python] Make a conflict to preserve file copy history

* [Python] customize pom.xml for src layout tests

* [Python] add python-aiohttp-srclayout tests

* [Python] Fix server tests by updating requirements

Reverts the PR that disabled python2 server tests:
https://github.com/OpenAPITools/openapi-generator/pull/4949

Reverts commits that disabled python3 server tests:
9adfedbfbb
17ee990baa

Issue about the python 3 tests:
https://github.com/OpenAPITools/openapi-generator/issues/5235

I couldn't find an issue about the python2 tests being disabled.
I'm guessing build errors like the following were the trigger:
https://travis-ci.org/github/OpenAPITools/openapi-generator/builds/634238181

Let's see what breaks!

* [Python] Copy setup.py to python-aiohttp

* [Python] Save history while copying setup.py to python-aiohttp

* [Python] Add aiohttp server setup.py

* [Python] Fix python server tests with src layout

* [Python] bump Flask-Testing version

* [Python] Pin pyyaml for py2.7 flask server

* [Python] simplify flask server requirements

* consolidate server tests

* [Python] rebuild python server samples

* [Python] Fix python server requirements for older pythons

Documented minimum python version for our aiohttp server is 3.5.
Documented minimum python version for our flask server is 3.4.
Connexion 2.3 is the last version to support python 3.4 and 3.5, so fix
the version pinning to correctly select <=2.3 for these EOL python
versions. Newer pythons should get the latest if possible as there many
relevant bug fixes.

Werkzeug also needs to be pinned for these old versions in the aiohttp
server just like for the flask server.

3.4 and 3.5 are EOL. We really should increase the minimum supported
version, but that is for another PR to do.
2020-04-07 23:14:13 -07:00
William Cheng
41955b104c add parent for allOf only (#5851) 2020-04-08 11:04:13 +08:00
emileonhardt
55f928a82e Fix for Issue #4840 [BUG][JAVA][spring-mvc] Generated Code for Map of Maps Return Type does not compile (#5240) 2020-04-07 22:32:09 +08:00
William Cheng
73605a0c0e Merge branch 'master' of https://github.com/openapitools/openapi-generator 2020-04-07 17:09:43 +08:00
William Cheng
6bf0183696 fix user id in scala tc 2020-04-07 17:07:36 +08:00
William Cheng
22f3e59210 Add default case to handle response code (#5825)
* add default case to handle response code

* fix default response code

* add test for isDefault
2020-04-07 16:48:36 +08:00
William Cheng
ceef040e37 update mysql samples 2020-04-07 16:46:32 +08:00
jburgess
2ff9be6f95 [codegen] Fix 'super.HashCode' for oneOf and allOf Implementations (retry) (#5830)
* Added hasVars after completion of all model post-processing (#5587)

* Post ensure-up-to-date

* Update to check the size of vars and not assume non-null
2020-04-07 16:42:20 +08:00
Nicholas Muesch
7efa65164a Add openapi.yaml file to Java clients (#5765)
* Add openapi.yaml file to Java client

* Move supporting template file to Java root

* Update petstore clients
2020-04-07 16:07:08 +08:00
Michele Albano
5fd724fceb C client generator improvements to support petstore. Solves #5836 (#5837)
* C client generator improvement to support:
openapi-generator/modules/openapi-generator/src/test/resources/3_0/petstore.yaml

* Improvements to the C client generator:
- moved base64* from apiClient.c to binary.h/binary.c
- changed CR/LF to LF in binary.h/binary.c

* C client generator: better support for base64encode / base64decode
2020-04-07 11:40:57 +08:00
William Cheng
ff0c730ec8 Add Bouill to the Scala technical committee (#5843) 2020-04-07 11:18:10 +08:00
Bouillie
6cdfb7ca9f Scala akka http server - normalization of some vendor extensions (#5829)
* [scala-akka-http-server] Normalized vendor extension "paths" to "x-paths"

* [scala-akka-http-server] Normalized vendor extension "hasDefaultValue", "isDefault", "specificMarshallers", "fileParams", "nonFileParams"

Co-authored-by: Olivier Leonard <oleonard@ankama.com>
2020-04-07 01:00:48 +08:00
William Cheng
5dd572035c minor fix to http basic auth (#5839) 2020-04-06 16:07:36 +08:00
Natan Laverde
6cbc442b02 [C++] [Qt5] [Client] fixed cpp-client-qt5 HttpRequestWorker contentCompression variables initialization (#5834)
When contentCompression is not enabled, the variables isRequestCompressionEnabled and isResponseCompressionEnabled in HttpRequestWorker are not being initialized.
Without initialization the compress function could be called and the request content could be an empty QByteArray instead of original request body.
2020-04-06 08:53:41 +02:00
William Cheng
f1325e23ee support enum in parameters (#5838) 2020-04-06 14:45:45 +08:00
William Cheng
d893ee883b use allVars to cover all properties (#5835) 2020-04-06 10:54:49 +08:00
Richard Whitehouse
cdb500c156 [Rust Server] Fix no features build (#5747)
* Remove test file erroneously checked in

* [Rust Server] Fix no features build

- Need serde_json for no-features build for undefined value structures
- Don't include `IntoHeader` type and implementations if we aren't including the client/server features
- Don't export the `IntoHeader` type at all - it's internal

* Update samples
2020-04-05 19:08:39 +01:00
Michele Albano
e9c1346386 tests for models for C-libcurl generator (#5699)
* First try to generate unit tests for the models of the C-libcurl client. Models into models are not supported yet.

* Added unit tests for the modules of the C-libcurl client to the git repository.

* Support for objects having other objects as properties, for the C-libcurl client generator

* Proper formatting of generated code
2020-04-06 01:42:50 +08:00
Alex Buchkovsky
166aae6fec [BUG] [KOTLIN] Fix default value generation for Kotlin Strings (#5776)
* fix default value generation for kotlin

* add updated pet templates

* Revert "add updated pet templates"

This reverts commit 7e8168ad

* regen pet store projects code
2020-04-06 01:30:03 +08:00
Antoine Reilles
3b495bab12 [jaxrs-cxf-cdi] fix allOf equals and hashCode (#5756)
When generating model that use allOf, the equals and hashCode methods
must take the parent class into account.
2020-04-06 00:26:02 +08:00
William Cheng
8a12a810d4 Update swagger parser to 2.0.19 (#5413)
* update swagger parser to 2.0.18

* fix online server exception

* Revert "fix online server exception"

This reverts commit fe3cb5221f.

* update parser to 2.0.19
2020-04-06 00:12:40 +08:00
William Cheng
52018c43ba Minor improvements to scala akka server (#5823)
* minor improvements to scala akka server

* add samples

* update doc
2020-04-05 10:09:31 +08:00
Bouillie
af85fab52b Scala akka-http server (#5758)
* Scala akka-http server base implementation

* [scala-akka-http-server] petStore samples

* Improved the formatting of generated files

* Updated scala-akka-http server samples

* [scala-akka-http-server] the groupId, artifactId and artifactVersion default value are used as intended.

* Fixed the default operation not being correctly generated on parameterless operations

* Added build.sbt.mustache supporting file

* Updated scala-akka-http server samples

* ScalaAkkaHttpServer: Fixed a String.format call to use Locale.ROOT for locale

* [scala-akka-http-server] Fixed defaultValue being escaped during generation

* Added scala-akka-http.md

* Replaced all "⇒" character with "=>" to retain compatibility with scala 2.13

* [scala-akka-http] Added a config option akkaHttpVersion
It's set in the generated build.sbt.

* Updated scala-akka-http server samples

* [scala-akka-http] More accurate akkaHttpVersion parsing

* Updated scala-akka-http.md

* [scala-akka-http] Changed the akka-http version check to fix the generation of StringDirectives

* Updated scala-akka-http samples

* updated scala-akka-http.md

Co-authored-by: Olivier Leonard <oleonard@ankama.com>
2020-04-04 23:16:14 +08:00
William Cheng
00ec8fd15b fix array return (#5822) 2020-04-04 21:49:40 +08:00
William Cheng
42e87c8f33 rename hostsetting, validate base url (#5821) 2020-04-04 17:25:05 +08:00
Sebastien Rosset
242c2e8544 [Python-experimental] Documentation enhancement for oneOf schema and minor err msg improvement (#5791)
* Add documentation to generated code

* Improve error message

* Improve documentation

* Improve documentation

* Improve documentation

* Improve documentation

* Improve documentation

* Improve documentation

* Run sample scripts

* Address review comments

* Address review comments

* Fix problem in python error message
2020-04-03 20:49:23 -07:00
Sebastien Rosset
acae76b38f [codegen] Cachesize config seconds (#5816)
* make name cache configurable

* Address review comments
2020-04-03 17:15:55 -04:00
Sebastien Rosset
3d99c58338 make name cache configurabl (#5775) 2020-04-03 23:11:48 +08:00
Sebastien Rosset
9c8fb9db46 [codegen] Use once(LOGGER) to reduce amount of identical warning messages (#5808)
* Warn once instead of many times when the log statement does not have contextual information

* Warn once instead of many times when the log statement does not have contextual information
2020-04-03 23:10:12 +08:00
William Cheng
baeb1dd385 [PS][Experimental] Add tests for array of object in response (#5814)
* debugging array response

* fix find pet tests

* better tests to ignore order
2020-04-03 20:12:11 +08:00
William Cheng
281d154ff4 [PS][Experimental] add withHttpInfo support, fix "null" return (#5811)
* add with http support

* use full name in tests

* using full name in test

* skip type check
2020-04-03 15:47:04 +08:00
William Cheng
bc12ada4c0 use write verbose in auth, better api doc (#5804) 2020-04-03 10:14:06 +08:00
tanmen
7d35268414 [typescript-axios][client] Unnecessary imports occurs when using withSeparateModelsAndApi (#5797)
* add ts-ignore

* add petstore sample
2020-04-02 19:17:40 +02:00
Aleksandr Nekrasov
ea2fd0f1b6 fix scala-akka java8 serializers (#5742)
* fix scala-akka java8 serializers

* regenerate samples for akka-http
2020-04-02 12:18:21 +08:00
Bouillie
65eff3ba4c [Csharp-client] Complex form parameters are not serialized as application/json (#5787)
* [csharp-client] Complex form parameters are now correctly serialized as json.
Reference: http://spec.openapis.org/oas/v3.0.3#special-considerations-for-multipart-content

* Updated bin/windows csharp sample generation scripts to point to the correct directories

* Updated csharp samples

Co-authored-by: Olivier Leonard <oleonard@ankama.com>
2020-04-02 11:59:27 +08:00
Ilja leyberman
8a82f48f5e please add openVALIDATION Project to readme (#5534)
* added openVALIDATION Project to readme

* Update README.md

Co-Authored-By: Akihito Nakano <sora.akatsuki@gmail.com>

Co-authored-by: Akihito Nakano <sora.akatsuki@gmail.com>
2020-04-02 11:50:57 +08:00
Slavek Kabrda
3f445772ae [go-experimental][go][client] Remove unreachable code in go client API methods (#5611)
* [go-experimental][go][client] Remove unreachable code in go client API methods

* Properly regenerate all samples
2020-04-02 11:15:31 +08:00
Josh Burton
04160dab3d [dart-dio] Fixes --model-name-suffix having no effect (#5669)
Fixes #5409
2020-04-02 11:13:23 +08:00
Jim Schubert
2957dd4d45 [cli] Add --global-property for -D replacement (#5687)
-D option has been deprecated as it was previously used to:

* Pass "system properties"
* Pass additional properties

This was confusing because we already have --additional-properties and
because Java System Properties are passed as -D before program
arguments.

Confusion around the -D option had existed for some time, but when we
introduced the thread-safe GlobalSettings to avoid overwriting Java
System Properties, we created a hard break from Java System Properties
in the generator. This also disconnected the previous "system
properties" from accepting additional properties.

Once these newly deprecated methods are removed, we will have a clear
separation of concerns between:

* Java System Properties
* Global generator properties (used as workflow context)
* Additional properties (used as generator options)

This commit marks multiple places for cleanup in 5.0. These will be
breaking changes, and lower effort to break in 5.0 with deprecation
warnings now rather than adding sibling properties throughout the code
and potentially introducing logic errors.
2020-04-02 11:11:02 +08:00
Jim Schubert
e14e5fccf3 [cli][docker] Better expose version/sha information of builds (#5736)
* [cli] Some CLI improvements…

* Introduce --version
* Introduce --help
* Add --sha to version command for short SHA display
* Output Version and SHA details
* In new --version output, display repo and doc site

Additional cleanup to suppress warnings and code quality.

* [docker] Adds labels for metadata

This adds image labels to store metadata on the online and cli docker
images, using standard labels:

* org.opencontainers.image.created
* org.opencontainers.image.revision
* org.opencontainers.image.title
* org.opencontainers.image.version

These can be inspected via 'docker inspect IMAGE_NAME' and may be useful
in tooling/automation or bug reports submitted by users.

For more details on these labels, see:
https://github.com/opencontainers/image-spec/blob/master/annotations.md

* Include version --full for equiv to --version
2020-04-02 11:05:25 +08:00
William Cheng
4623ec86d3 [PS][Experimental] Better common verb handling (#5783)
* better common verb handling

* better debugging

* add option to customize common verb
2020-04-02 08:19:16 +08:00
William Cheng
12440ca877 add map example (#5778) 2020-04-01 14:59:33 +08:00
William Cheng
f58ebf65d1 use Initialize instead of prepare (#5777) 2020-04-01 11:21:11 +08:00
William Cheng
24513091b0 use prepare instead of new (#5773) 2020-04-01 09:24:07 +08:00
Timur Platonov
01d07694fb fix request.on_complete message when tempfile is nil (#5745)
* fix request.on_complete message when tempfile is nil

* update faraday client sample

* add openapi3 client samples
2020-04-01 00:10:31 +08:00
William Cheng
0fd5d46585 add support for common verbs (#5771) 2020-03-31 22:37:30 +08:00
William Cheng
de40cfc128 comment out kotlin vertx server test (#5767) 2020-03-31 19:10:41 +08:00
William Cheng
3316f17ed5 [PS][PowerShell] fix passthru, use switch instead of bool (#5768)
* fix passthru, use switch

* remove line
2020-03-31 19:10:27 +08:00
ehansen31
7e22b4b8cf [Erlang-Server] security definition context changes don't propagate to handler (#5751)
* Map Merge Context & Params

handler requires context and params to be merged before returned to user defined request_handler.

* post build & shell script

* Delete VERSION
2020-03-30 23:20:51 +08:00
Even André Fiskvik
603709e17e [kotlin] Fix #5247 incorrect enum parameter type for arrays (#5435) 2020-03-30 16:08:17 +08:00
Hui Yu
daa737dafa [C][Client] Support SSL client authentication for the c client (#5719)
* [C][Client] Support SSL client authentication

* [C][Client] Support SSL client authentication, update sample
2020-03-30 14:35:33 +08:00
William Cheng
861fcce578 add default headers support (#5746) 2020-03-30 12:15:27 +08:00
Richard Whitehouse
d0d0252fff [Rust Server] Don't use structs in models (#5557)
* [Rust Server] Don't use structs in models

This avoids namespace clashes between model names and types used.

* [Rust Server] Handle models named after results

* [Rust Server] Add test for result models

* Update samples
2020-03-29 20:04:56 +01:00
William Cheng
01f02f6c57 [PS][Experimental] Add multiple server support (#5741)
* code comment

* add get host setting

* add multiple server support
2020-03-29 21:44:18 +08:00
sunn
94152c4d35 Remove warning for unused camel case vendor extension for Qt5 client and server (#5731) 2020-03-29 13:06:41 +02:00
William Cheng
77c1907f51 better readme, type mapping, new option (#5740) 2020-03-29 14:33:42 +08:00
William Cheng
53a230a9a3 better appveyor test (#5739) 2020-03-29 12:55:22 +08:00
William Cheng
57dc8a43f6 fix file path in release_version_update_docs (#5724) 2020-03-29 00:55:25 +08:00
William Cheng
eecc05f888 Fix CI failures (#5734)
* update ci to use petstore 1.0.4

* comment out test

* comment out test

* comment out update user test

* comment out more tests

* use latest petstore

* comment out updatePetWithForm

* comment out update pet test
2020-03-29 00:55:06 +08:00
Jim Schubert
2a115090a7 Update bump.sh to go SNAPSHOT to version (#5727) 2020-03-27 21:30:46 -04:00
Hemant Zope
2f9c20a175 [C] fix decode funtion (#5642)
* fix function names and add parameter to return decoded bytes length from base64decode function

* format base64decode function to avoid unnecessary malloc and fix wrong length assigning

* update the pointer assigning

for some reason var++ / *var++ cannot be done on int *var, hence making a local variable which is incremented and at the end it is assigned to the pointer.
2020-03-27 23:16:20 +08:00
William Cheng
b49128f04b Fix SSL setting in checkout script (#5725)
* fix ssl setting in checkout script

* add check for sbt-openapi-generator
2020-03-27 20:21:28 +08:00
val
bb2112f3de [C++] [Qt5] fixed cpp-client-qt5 HttpRequestWorker requests crashing on timeout... (#5651)
* - fixed cpp-client-qt5 HttpRequestWorker requests crashing on timeout when they have actually NOT timed out (were calling back into a deleted struct).

* #minor fixes after review

* Regenerate changed files

Co-authored-by: valentin Bisson <valentin@inrosoftware.com>
Co-authored-by: etherealjoy <sunn.ssb@live.com>
2020-03-27 16:00:26 +08:00
Matt Traynham
7baa1870b7 5211 - Use allVars instead of vars for Kotlin client (#5396) 2020-03-27 15:56:46 +08:00
William Cheng
a0ca253218 update samples (#5722) 2020-03-27 13:55:55 +08:00
Richard Whitehouse
cff1f1ce80 [Rust Server] Support operation overriding server path on client (#5554)
* [Rust Server] Support operation overriding server on the client

* [Rust Server] Test operation overriding sever

* Update samples
2020-03-24 16:41:11 +00:00
Richard Whitehouse
05ace4f43f [Rust Server] Preserve path provided in base path (#5555)
* Preserve path provided in base path
* Update samples
2020-03-24 09:25:48 +00:00
Richard Whitehouse
28ea718004 [Rust Server] Run rustfmt over rust-server output (#5558)
* Run rustfmt over rust-server output

Automatically run rustfmt over rust-server output if --enable-post-process-file is set

* Update samples

* Add note about configuring post processing
2020-03-24 00:09:40 +00:00
Richard Whitehouse
15a2390fe5 [Rust Server] Flag responses as must use (#5559)
* [Rust Server] Flag responses as must use if there is more than a single option
* Update samples
2020-03-23 18:47:12 +00:00
Richard Whitehouse
806562bb05 [Rust Server] Retire mimetypes modules (#5560)
* Retire mimetypes module to prevent collision in mimetype identifiers
* Update samples
2020-03-23 13:04:29 +00:00
Richard Whitehouse
be983b5212 [Rust Server] Build APIs which have no available examples (#5561)
* [Rust Server] Build APIs which have no examples

* [Rust Server] Add test for APIs with no examples

* Update samples
2020-03-22 19:54:48 +00:00
Richard Whitehouse
b0520a346d [Rust Server] Support multiple identical MIME types (#5562)
* Support multiple identical MIME types in a multipart request
* Add test for multiple identical MIME types
* Update samples
2020-03-22 15:30:37 +00:00
Richard Whitehouse
058d1d2aa0 [Rust Server] Return 405 Method Not Allowed (#5563)
* Return 405 Method Not Allowed if the path matches, but the method doesn't.
* Update samples
2020-03-22 11:57:36 +00:00
Richard Whitehouse
4aefc9ba33 [Rust Sever] Upgrade to openssl 0.10 (#5564)
* [Rust Server] Upgrade to openssl 0.10

Use hyper-openssl/openssl instead of hyper-tls/native-tls/openssl on Linux

* Update samples
2020-03-19 21:05:16 +00:00
Richard Whitehouse
16646b39c1 [Rust Server] Make parse error Display-able (#5490)
* [Rust Server] Make parse error displayable

  Change error type to be displayable to prevent compile errors

* [Rust Server] Add test for enum in path

* Update samples
2020-03-08 11:12:17 +00:00
Richard Whitehouse
e4be8a107f [Rust Server] Test allOf objects including base properties (#5457)
* [Rust Server] Add operationIds for rust-server-test

* [Rust Server] Add test for allOf

* Update samples
2020-03-07 20:53:13 +00:00
Richard Whitehouse
b60fc900b2 [Rust Server] Support OpenAPI v3 callbacks (#5405)
* [Rust Server] Support Callbacks

* [Rust Server] Support callbacks in the examples

* [Rust Server] Update features documentation

* [Rust Server] Mark as supporting callbacks

* Update samples

* [Rust Server] Add tests for callbacks

* [Rust Server] Fix README

Don't suggest examples which don't exist
2020-03-07 19:24:42 +00:00
Richard Whitehouse
8f8443d175 [Rust Server] Don't change API version (#5458)
Don't change the API version which is exposed in `crate::API_VERSION`.

- If the API version isn't set, we don't expose it.

- If it is set, we leave it well alone.

- Always pass a package version:
 - Pass in the passed package version by preference
 - Pass in the API version if it's not.
   - If the API version isn't set, we use 1.0.0
   - If it is set, and isn't a valid semver, we append .0 such that we have
     something with three digits (so that an API version of 1 works).
2020-03-01 10:32:11 +00:00
Richard Whitehouse
dc0da57f96 [Rust Server] Suffix reserved words with _ (#5455)
* [Rust Server] Suffix reserved words with _

Suffix reserved words with an underscore instead of prefixing them.

This follows convention in the Rust community, as prefixing with an underscore
indicates an unused variable in Rust.

* Update samples
2020-03-01 00:23:00 +00:00
Richard Whitehouse
a196296e57 [Rust Server] Support RFC 7386 (#5454)
* [Rust Server] Support RFC 7386

Support application/merge-patch+json as defined by RFC 7386 -
https://tools.ietf.org/html/rfc7386

Handle exactly the same as application/json.

* [Rust Server] Add test for RFC 7386

* Update samples
2020-02-29 21:54:11 +00:00
Richard Whitehouse
f32b1463bc [Rust Server] Support numeric operation IDs (#5453)
* [Rust Server] Support operation IDs which begin with a number
* [Rust Server] Add test for a numeric operation ID
* Update samples
2020-02-29 19:23:54 +00:00
Richard Whitehouse
a6e96b4971 [Rust Server] Handle numeric response description (#5452)
* [Rust Server] Handle response descriptions which start with a number.
* [Rust Server] Add test for numeric response descriptions
* Update samples
2020-02-29 14:54:47 +00:00
Richard Whitehouse
f5c5b91f83 [Rust Server] Nullable fixes (#5408)
* [Rust Server] Nullable fixes
* [Rust Server] Add tests for nullable cases
* Update samples
2020-02-29 13:37:12 +00:00
Richard Whitehouse
ca9376fdbb [Rust Server] Support RFC 7807 (#5407)
* Support RFC 7807 - Problem Details for HTTP APIs
* Add test for RFC 7807
* Update samples
2020-02-26 18:18:01 +00:00
Richard Whitehouse
1b3094be87 [Rust Server] Add support for untyped properties and models (#5339)
* [Rust Server] Add support for untyped properties
* [Rust Server] Improve support for untyped data
* Update samples
2020-02-22 20:29:51 +00:00
Richard Whitehouse
71aef72bbd [Rust Server] Support objects as query parameters (#5338)
- Support objects as query parameters
- Update samples
2020-02-22 18:25:57 +00:00
Richard Whitehouse
71f532072b [Rust Server] Support header objects (#5337)
[Rust Server] Support header objects

Support operations with objects in the header
2020-02-22 15:55:26 +00:00
William Cheng
19acd36e3a update samples 2020-02-04 16:39:04 +08:00
William Cheng
100b01844a Merge remote-tracking branch 'origin/master' into 5.0.x 2020-02-04 15:31:10 +08:00
Jim Schubert
607f5a1c0a [core] Move overwrite ownership to SupportingFile (#5036)
* [core] Move overwrite ownership to SupportingFile

Previously, there was a writeOptional method in DefaultCodegen which
allowed *Codegen instances to immediately write out a supporting file if
it did not exist. This would allow a codegen implementation to skip
user-facing options such as definitions in .openapi-codegen-ignore, the
"supportingFiles" system property, and support for the experimental
handlebars templating engine. While our implementation only modified the
supportingFiles list conditionally, it added confusion as it seemed to
imply that file writes were somewhat the responsibility of
DefaultCodgen (it's DefaultGenerator which handles file manipulation).

This commit moves the definition of whether a file supports overwriting
existing files into the SupportingFile type itself, allowing that
functionality to be determined at time-of-write rather than
time-of-definition. This would allow us, for example, to dump the list
of files which would be generated using a --dry-run option or similar.

This will be a breaking change for anyone who has extended
DefaultCodegen and called "writeOptional". The path to migrate is to add
the SupportingFile to the supportingFiles list and chain the method call
`.doNotOverwrite()` on the instance.

This has the added benefit of clarifying this behavior, considering the
write behavior wasn't previously "optional" writes but optionally
defining the list of supportingFiles based on the state of the file
system.

* [samples] Regenerated
2020-01-29 18:26:39 -05:00
Erik Timmers
fa295aa2a8 [elm] Add bearer, task, and sendWithCustomError (#5146)
* [elm] Add bearer support

* [elm] Allow mapping request errors

By either using `sendWithCustomError` or `task`.
2020-01-29 22:26:41 +01:00
Richard Whitehouse
84b6804d8f [Core, Rust Server] Support multipart/related requests (#5015)
* [Core, Rust] Support multipart/related requests

* Treat multipart/related as a type of form data
2020-01-26 20:39:43 -05:00
Richard Whitehouse
52e09e2ffa [Rust Server] Handle array of objects inside an object correctly (#5044)
Use correct data type for arrays inside objects.

Add test for arrays of objects

Update samples
2020-01-25 18:23:20 +00:00
Richard Whitehouse
2714af4922 [Rust Server] Sanitise enum values (#5042)
[Rust Server] Sanitize enum values
2020-01-25 16:26:05 +00:00
Richard Whitehouse
32222da435 [Rust Server] Add support for primitive arrays (#5041)
[Rust Server] Add support for primitive arrays
2020-01-25 16:25:20 +00:00
Erik Timmers
7e16a1f58c [elm] Fix duplicate coder names (#5100)
* [elm] Add signature to enum variants

* [elm] Fix field encoders/decoders
2020-01-24 11:04:00 +01:00
Erik Timmers
71128f712c [elm] enum items and parameters (#5051)
* [elm] Fix generating arrays of enums

* [elm] Add suffix to operation parameters

So there are no longer conflicts between parameters or
parameters and operation names.
2020-01-23 13:13:24 +01:00
Erik Timmers
efc452513b [elm] Fix decoding empty operation responses (#5055) 2020-01-23 10:28:13 +01:00
William Cheng
bbada4fe7c resolve merge conflicts in VERSION files 2020-01-20 18:05:23 +08:00
William Cheng
4ec3900d31 undo restoring ElmClientCodegenTest.java 2020-01-20 17:53:11 +08:00
William Cheng
aa841904b4 fix merge conflicts 2020-01-20 17:50:52 +08:00
William Cheng
82e2448bf2 Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2020-01-20 15:46:13 +08:00
Jim Schubert
8ab39a28d2 [scripts] Remove misspelled OPENAPI_GENERATOR_DOWLOAD_CACHE_DIR (#5035) 2020-01-18 22:17:58 -05:00
Erik Timmers
b62fc1c031 Elm refactoring (#4891)
* [elm] Remove support for Elm 0.18

* [elm] Drop `Main.elm`

* [elm] Put all models in a single file

* [elm] Put generated code in `Api` package

* [elm] Introduce Request type for operations

* [elm] Generate list of enum variants

* [elm] Make default Time module

* [elm] Small improvements & fixes

* [elm] Improve support for allOf

* All of types are now nested;
* Adding a discriminator creates a custom type wrapping all variants
  and a 'catch-all' fallback variant.

* [elm] Add support for recursive types

* [elm] Add catch-all type for allOf

* [elm] Drop support for post-processing of files

* [elm] Only import required packages

* [elm] Handle reserved and unsafe words

* [elm] Minor improvements

* [elm] Add support for integer enums

* [elm] Remove additional slash in path

* [elm] Add link to docs

* [elm] Update CI test file & scripts
2020-01-10 17:12:33 +08:00
Richard Whitehouse
e9459125bb [Rust Server] Hyper 0.12 Support (#4519)
[Rust Server] Hyper 0.12 Support

- Hyper upgraded to Hyper 0.12.
  - NewService becomes MakeService
  - Request on MakeContext is not parameterised - instead, ReqBody, and ResBody are parameterized, and must implement hyper::body::Payload.
  - This means that our existing tuples (i.e. (Body, Context)) don't work - instead we have a type ContextualPayload, which implements Payload, and derefs to an inner payload (the body), and contains a context.
  - This is handled by the work done in Metaswitch/swagger-rs#63 but has some fall out here as well.

- tokio-proto/tokio-core is no longer supported, and hyper instead depends on tokio.

- Hyper depends on mime 0.3, but multipart depends on mime 0.2, so we now import both

- Hyper TLS 0.2 and native-tls 0.1

- Use Swagger Support library 3.x

- Futures are now Send. This forces ApiImpl to be need to Send as a result, and all forces Clients to be Send + Sync.
2020-01-05 14:48:12 +00:00
William Cheng
e9d616bd02 run ensure-up-to-date 2019-12-28 15:04:48 +08:00
William Cheng
9b3688ae2a Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2019-12-28 14:26:40 +08:00
William Cheng
b450ce8a5a Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2019-12-28 12:34:30 +08:00
William Cheng
bad78a30c8 Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2019-12-20 23:26:19 +08:00
William Cheng
68b4ac5bee update kotlin samples 2019-12-20 22:45:26 +08:00
William Cheng
165a9e0508 Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2019-12-20 20:52:27 +08:00
William Cheng
e29ccbb051 update samples 2019-12-12 18:41:44 +08:00
William Cheng
466a67c9bc Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2019-12-12 17:27:49 +08:00
William Cheng
7aeab0219c Merge remote-tracking branch 'origin/4.3.x' into 5.0.x 2019-11-23 11:37:54 +08:00
William Cheng
7f05cf0252 fix elm version 2019-11-21 17:34:56 +08:00
William Cheng
ac8b96b972 update samples without batch mode 2019-11-21 17:13:30 +08:00
William Cheng
be991311fe update ruby samples 2019-11-21 16:28:35 +08:00
William Cheng
4ed742b6bc update samples 2019-11-21 15:24:13 +08:00
William Cheng
facabd4472 Merge branch '4.3.x' into 5.0.x 2019-11-21 15:19:31 +08:00
William Cheng
4ca9430474 sync master, update doc 2019-11-04 09:38:22 +08:00
William Cheng
1c5d8182ab update doc 2019-10-24 23:12:34 +08:00
wiruzman
d15a4c3e8e Remove support for old .net core project type (#3937) 2019-10-24 23:06:48 +08:00
wing328
4de3b3f473 update samples 2019-10-17 11:48:23 +08:00
wing328
54151891cc Merge branch 'master' into 5.0.x 2019-10-17 11:18:57 +08:00
William Cheng
8f86f0f04a Merge remote-tracking branch 'origin/4.2.x' into 5.0.x 2019-10-08 21:21:04 +08:00
William Cheng
5eb67d471b Merge remote-tracking branch 'origin/4.2.x' into 5.0.x 2019-09-22 21:00:38 +08:00
William Cheng
a8fe5d355c Merge remote-tracking branch 'origin/4.2.x' into 5.0.x 2019-08-29 14:48:00 +08:00
William Cheng
1c31dce4bd Merge remote-tracking branch 'origin/4.2.x' into 5.0.x 2019-08-12 00:22:19 +08:00
William Cheng
fb7cd7315a update samples 2019-07-27 23:34:29 +08:00
William Cheng
3e027c61da Merge remote-tracking branch 'origin/master' into 5.0.x 2019-07-27 20:53:38 +08:00
William Cheng
0b7d3c4590 Merge remote-tracking branch 'origin/master' into 5.0.x 2019-07-10 11:41:13 +08:00
wing328
8fd4539836 Merge remote-tracking branch 'origin/4.1.x' into 5.0.x 2019-07-02 22:48:41 +08:00
wing328
8cdacb5a44 Merge branch 'sync_41x_50x' into 5.0.x 2019-06-28 09:26:39 +08:00
wing328
bacbbe7af8 update samples 2019-06-27 20:38:48 +08:00
wing328
a48d7f77fb Merge remote-tracking branch 'origin/4.1.x' into sync_41x_50x 2019-06-27 18:27:20 +08:00
William Cheng
3c8fe5b97f update petstore samples 2019-06-03 10:32:03 +08:00
William Cheng
46da7fe0e9 Merge remote-tracking branch 'origin/4.1.x' into 5.0.x 2019-06-03 09:28:51 +08:00
Jeremie Bresson
653d479efb Merge remote-tracking branch 'origin/4.1.x' into HEAD 2019-05-20 13:09:36 +02:00
William Cheng
94fc0474b9 update version 5.0.0-snapshot and samples 2019-05-15 01:54:29 +08:00
11009 changed files with 347508 additions and 445527 deletions

View File

@@ -65,7 +65,6 @@ before_install:
- gem install bundler
- npm install -g typescript
- npm install -g npm
#- npm install -g elm@0.18.0-exp5
- npm config set registry http://registry.npmjs.org/
# set python 3.6.3 as default
- source ~/virtualenv/python3.6/bin/activate
@@ -102,6 +101,9 @@ before_install:
# install Qt5
- sudo apt install -y --no-install-recommends qt5-default
- cmake --version
# 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"
# show host table to confirm petstore.swagger.io is mapped to localhost
- cat /etc/hosts
# show java version
@@ -128,6 +130,7 @@ install:
script:
# fail fast
- set -e
- ./run-in-docker.sh mvn clean package
# fail if templates/generators contain carriage return '\r'
- /bin/bash ./bin/utils/detect_carriage_return.sh
# fail if generators contain merge conflicts
@@ -136,13 +139,13 @@ script:
- /bin/bash ./bin/utils/detect_tab_in_java_class.sh
# run integration tests defined in maven pom.xml
# WARN: Travis will timeout after 10 minutes of no stdout/stderr activity, which is problematic with mvn --quiet.
- mvn --quiet --batch-mode --show-version clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --quiet --batch-mode --show-version verify -Psamples -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- 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 --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/java-client.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/multi-module/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/kotlin.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/spring.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- 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)
@@ -178,9 +181,33 @@ after_success:
fi;
fi;
## docker: build and push openapi-generator-online to DockerHub
- if [ $DOCKER_HUB_USERNAME ]; then echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin && docker build -t $DOCKER_GENERATOR_IMAGE_NAME ./modules/openapi-generator-online && if [ ! -z "$TRAVIS_TAG" ]; then docker tag $DOCKER_GENERATOR_IMAGE_NAME:latest $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG; fi && if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then docker push $DOCKER_GENERATOR_IMAGE_NAME && echo "Pushed to $DOCKER_GENERATOR_IMAGE_NAME"; fi; fi
- if [ $DOCKER_HUB_USERNAME ]; then
echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin;
export cli_version=$(\mvn -o org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\[');
export build_date=$(date -u +"%Y-%m-%dT%H:%M:%SZ");
docker build --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-online --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_GENERATOR_IMAGE_NAME ./modules/openapi-generator-online;
if [ ! -z "$TRAVIS_TAG" ]; then
docker tag $DOCKER_GENERATOR_IMAGE_NAME:latest $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG;
fi;
if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then
docker push $DOCKER_GENERATOR_IMAGE_NAME && echo "Pushed to $DOCKER_GENERATOR_IMAGE_NAME";
fi;
fi;
## docker: build cli image and push to Docker Hub
- if [ $DOCKER_HUB_USERNAME ]; then echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin && cp docker-entrypoint.sh ./modules/openapi-generator-cli && docker build -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/openapi-generator-cli && if [ ! -z "$TRAVIS_TAG" ]; then docker tag $DOCKER_CODEGEN_CLI_IMAGE_NAME:latest $DOCKER_CODEGEN_CLI_IMAGE_NAME:$TRAVIS_TAG; fi && if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then docker push $DOCKER_CODEGEN_CLI_IMAGE_NAME && echo "Pushed to $DOCKER_CODEGEN_CLI_IMAGE_NAME"; fi; fi
- if [ $DOCKER_HUB_USERNAME ]; then
echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin;
cp docker-entrypoint.sh ./modules/openapi-generator-cli;
export cli_version=$(\mvn -o org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\[');
export build_date=$(date -u +"%Y-%m-%dT%H:%M:%SZ");
docker build --label=org.opencontainers.image.created=$build_date --label=org.opencontainers.image.title=openapi-generator-cli --label=org.opencontainers.image.revision=$TRAVIS_COMMIT --label=org.opencontainers.image.version=$cli_version -t $DOCKER_CODEGEN_CLI_IMAGE_NAME ./modules/openapi-generator-cli;
if [ ! -z "$TRAVIS_TAG" ]; then
docker tag $DOCKER_CODEGEN_CLI_IMAGE_NAME:latest $DOCKER_CODEGEN_CLI_IMAGE_NAME:$TRAVIS_TAG;
fi;
if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" = "master" ]; then
docker push $DOCKER_CODEGEN_CLI_IMAGE_NAME;
echo "Pushed to $DOCKER_CODEGEN_CLI_IMAGE_NAME";
fi;
fi;
## publish latest website, variables below are secure environment variables which are unavailable to PRs from forks.
- if [ "$TRAVIS_BRANCH" = "master" ] && [ -z $TRAVIS_TAG ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
cd website;

View File

@@ -2,6 +2,12 @@ kind: pipeline
name: default
steps:
# test aspnetcore 3.x
- name: aspnetcore-test
image: mcr.microsoft.com/dotnet/core/sdk:3.1
commands:
- (cd samples/server/petstore/aspnetcore-3.1/ && /bin/sh build.sh)
- (cd samples/server/petstore/aspnetcore-3.0/ && /bin/sh build.sh)
# test ocaml petstore client
- name: ocaml-test
image: ocaml/opam2:4.07
@@ -18,20 +24,15 @@ steps:
image: haskell:8.6.5
commands:
- (cd samples/client/petstore/haskell-http-client/ && stack --install-ghc --no-haddock-deps haddock --fast && stack test --fast)
# below dart tests moved to circle ci
# test Dart 2.x petstore client
#- name: dart2x-test
# image: google/dart
# commands:
# - (cd samples/client/petstore/dart-jaguar/openapi && pub get && pub run build_runner build --delete-conflicting-outputs)
# - (cd samples/client/petstore/dart-jaguar/flutter_petstore/openapi && pub get && pub run build_runner build --delete-conflicting-outputs)
# - (cd samples/client/petstore/dart2/petstore && pub get && pub run test)
# test Java 11 HTTP client
- name: java11-test
image: openjdk:11.0
commands:
- ./mvnw -quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- ./mvnw --quiet verify -Psamples.droneio -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# test java native client
- ./mvnw clean test -f samples/client/petstore/java/native/pom.xml
- ./mvnw clean test -f samples/client/petstore/java/native-async/pom.xml
# test all generators with fake petstore spec (2.0, 3.0)
- /bin/bash bin/utils/test-fake-petstore-for-all.sh
# generate test scripts

View File

@@ -34,4 +34,4 @@ script:
- set -e
# run integration tests defined in maven pom.xml
- cp pom.xml.bash pom.xml
- mvn --batch-mode verify -Psamples
- mvn --no-snapshot-updates --batch-mode verify -Psamples

View File

@@ -34,4 +34,4 @@ before_install:
script:
# run integration tests defined in maven pom.xml
- mvn -q --batch-mode verify -Psamples.ios -Dmaven.javadoc.skip=true
- mvn --no-snapshot-updates -q --batch-mode verify -Psamples.ios -Dmaven.javadoc.skip=true

View File

@@ -28,29 +28,10 @@ workflows:
set -e
mvn package -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates package -Dorg.slf4j.simpleLogger.defaultLogLevel=error
title: Build openapi-generator
- script@1.1.5:
title: Update Swift4 samples
inputs:
- content: |
#!/usr/bin/env bash
set -e
sh bin/swift4-all.sh
- script@1.1.5:
title: Run Swift4 tests
inputs:
- content: |
#!/usr/bin/env bash
set -e
./samples/client/petstore/swift4/swift4_test_all.sh
./samples/client/test/swift4/swift4_test_all.sh
- script@1.1.5:
title: Update Swift5 samples
title: Update Swift samples
inputs:
- content: |
#!/usr/bin/env bash
@@ -66,14 +47,15 @@ workflows:
set -e
./samples/client/petstore/swift5/swift5_test_all.sh
./samples/client/test/swift5/swift5_test_all.sh
- script@1.1.5:
title: Run all bin scripts
inputs:
- content: |-
#!/usr/bin/env bash
# comment out the following as it's causing timeout
# - script@1.1.5:
# title: Run all bin scripts
# inputs:
# - content: |-
# #!/usr/bin/env bash
#
# set -e
#
# ./bin/run-all-petstore
set -e
./bin/run-all-petstore

View File

@@ -24,8 +24,8 @@ if [ "$NODE_INDEX" = "1" ]; then
export PATH="/usr/local/go1.14/go/bin:$PATH"
go version
mvn --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --quiet javadoc:javadoc -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
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
elif [ "$NODE_INDEX" = "2" ]; then
# run ensure-up-to-date sample script on SNAPSHOT version only
@@ -34,9 +34,6 @@ elif [ "$NODE_INDEX" = "2" ]; then
echo "Running node $NODE_INDEX to test ensure-up-to-date"
java -version
# install elm-format
npm install -g elm-format
# clear any changes to the samples
git checkout -- .
@@ -61,7 +58,7 @@ elif [ "$NODE_INDEX" = "2" ]; then
sudo apt-get -y install libcurl4-gnutls-dev
# run integration tests
mvn --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
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
@@ -76,7 +73,7 @@ else
sudo apt-get install dart
export PATH="$PATH:/usr/lib/dart/bin"
mvn --quiet verify -Psamples.circleci.jdk7 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.jdk7 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
fi

View File

@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Org.OpenAPITools.Test")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Org.OpenAPITools.Test")]
[assembly: System.Reflection.AssemblyTitleAttribute("Org.OpenAPITools.Test")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Org.OpenAPITools.Test")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Org.OpenAPITools.Test")]
[assembly: System.Reflection.AssemblyTitleAttribute("Org.OpenAPITools.Test")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@@ -4,7 +4,7 @@ OpenAPI Petstore
This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
OpenAPI spec version: 1.0.0
The version of the OpenAPI document: 1.0.0
-->
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
@@ -47,16 +47,16 @@ OpenAPI spec version: 1.0.0
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Xml" />
<Reference Include="Newtonsoft.Json">
<HintPath Condition="Exists('$(SolutionDir)\packages')">$(SolutionDir)\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('..\packages')">..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('..\..\packages')">..\..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('..\..\vendor')">..\..\vendor\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('$(SolutionDir)\packages')">$(SolutionDir)\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('..\packages')">..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('..\..\packages')">..\..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath Condition="Exists('..\..\vendor')">..\..\vendor\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="JsonSubTypes">
<HintPath Condition="Exists('$(SolutionDir)\packages')">$(SolutionDir)\packages\JsonSubTypes.1.5.2\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('..\packages')">..\packages\JsonSubTypes.1.5.2\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('..\..\packages')">..\..\packages\JsonSubTypes.1.5.2\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('..\..\vendor')">..\..\vendor\JsonSubTypes.1.5.2\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('$(SolutionDir)\packages')">$(SolutionDir)\packages\JsonSubTypes.1.6.0\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('..\packages')">..\packages\JsonSubTypes.1.6.0\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('..\..\packages')">..\..\packages\JsonSubTypes.1.6.0\lib\net45\JsonSubTypes.dll</HintPath>
<HintPath Condition="Exists('..\..\vendor')">..\..\vendor\JsonSubTypes.1.6.0\lib\net45\JsonSubTypes.dll</HintPath>
</Reference>
<Reference Include="RestSharp">
<HintPath Condition="Exists('$(SolutionDir)\packages')">$(SolutionDir)\packages\RestSharp.105.1.0\lib\net45\RestSharp.dll</HintPath>
@@ -72,7 +72,8 @@ OpenAPI spec version: 1.0.0
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="**\*.cs" Exclude="obj\**" />
<Compile Include="**\*.cs"
Exclude="obj\**"/>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />

View File

@@ -122,7 +122,6 @@ public class ApiClientTest {
}
}
@Ignore("There is no more basic auth in petstore security definitions")
@Test
public void testSetUsernameAndPassword() {
HttpBasicAuth auth = null;

View File

@@ -0,0 +1,68 @@
package org.openapitools.client;
import org.openapitools.client.model.Mammal;
import org.openapitools.client.model.AppleReq;
import org.openapitools.client.model.BananaReq;
import org.openapitools.client.model.FruitReq;
import org.openapitools.client.model.BasquePig;
import org.openapitools.client.model.Pig;
import org.openapitools.client.model.Whale;
import org.openapitools.client.model.Zebra;
import java.lang.Exception;
import org.junit.*;
import static org.junit.Assert.*;
public class JSONComposedSchemaTest {
JSON json = null;
Mammal mammal = null;
@Before
public void setup() {
json = new JSON();
mammal = new Mammal();
}
/**
* Validate a oneOf schema can be deserialized into the expected class.
* The oneOf schema does not have a discriminator.
*/
@Test
public void testOneOfSchemaWithoutDiscriminator() throws Exception {
// BananaReq and AppleReq have explicitly defined properties that are different by name.
// There is no discriminator property.
String str = "{ \"cultivar\": \"golden delicious\", \"mealy\": false }";
FruitReq o = json.getContext(null).readValue(str, FruitReq.class);
assertTrue(o.getActualInstance() instanceof AppleReq);
}
/**
* Validate a oneOf schema can be deserialized into the expected class.
* The oneOf schema has a discriminator.
*/
@Test
public void testOneOfSchemaWithDiscriminator() throws Exception {
// Mammal can be one of whale, pig and zebra.
// pig has sub-classes.
String str = "{ \"className\": \"whale\", \"hasBaleen\": true, \"hasTeeth\": false }";
/*
DISABLING unit test for now until ambiguity of discriminator is resolved.
// Note that the 'zebra' schema does not have any explicit property defined AND
// it has additionalProperties: true. Hence without a discriminator the above
// JSON payload would match both 'whale' and 'zebra'. This is because the 'hasBaleen'
// and 'hasTeeth' would be considered additional (undeclared) properties for 'zebra'.
Mammal o = json.getContext(null).readValue(str, Mammal.class);
assertTrue(o.getActualInstance() instanceof Whale);
str = "{ \"className\": \"zebra\" }";
o = json.getContext(null).readValue(str, Mammal.class);
assertTrue(o.getActualInstance() instanceof Zebra);
str = "{ \"className\": \"BasquePig\" }";
o = json.getContext(null).readValue(str, Mammal.class);
assertTrue(o.getActualInstance() instanceof BasquePig);
*/
}
}

View File

@@ -122,7 +122,6 @@ public class ApiClientTest {
}
}
@Ignore("There is no more basic auth in petstore security definitions")
@Test
public void testSetUsernameAndPassword() {
HttpBasicAuth auth = null;

View File

@@ -5,6 +5,7 @@ import java.util.ArrayList;
import java.util.Map;
import java.util.List;
import org.openapitools.client.ApiException;
import org.openapitools.client.Pair;
import org.junit.*;
import static org.junit.Assert.*;
@@ -12,14 +13,14 @@ import static org.junit.Assert.*;
public class ApiKeyAuthTest {
@Test
public void testApplyToParamsInQuery() {
public void testApplyToParamsInQuery() throws ApiException {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("query", "api_key");
auth.setApiKey("my-api-key");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams, cookieParams, null, null, null);
assertEquals(1, queryParams.size());
for (Pair queryParam : queryParams) {
@@ -32,7 +33,7 @@ public class ApiKeyAuthTest {
}
@Test
public void testApplyToParamsInHeaderWithPrefix() {
public void testApplyToParamsInHeaderWithPrefix() throws ApiException {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
@@ -40,7 +41,7 @@ public class ApiKeyAuthTest {
ApiKeyAuth auth = new ApiKeyAuth("header", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams, cookieParams, null, null, null);
// no changes to query parameters
assertEquals(0, queryParams.size());
@@ -50,7 +51,7 @@ public class ApiKeyAuthTest {
}
@Test
public void testApplyToParamsInCookieWithPrefix() {
public void testApplyToParamsInCookieWithPrefix() throws ApiException {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
@@ -58,7 +59,7 @@ public class ApiKeyAuthTest {
ApiKeyAuth auth = new ApiKeyAuth("cookie", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams, cookieParams, null, null, null);
// no changes to query or header parameters
assertEquals(0, queryParams.size());

View File

@@ -5,6 +5,7 @@ import java.util.ArrayList;
import java.util.Map;
import java.util.List;
import org.openapitools.client.ApiException;
import org.openapitools.client.Pair;
import org.junit.*;
import static org.junit.Assert.*;
@@ -19,14 +20,14 @@ public class HttpBasicAuthTest {
}
@Test
public void testApplyToParams() {
public void testApplyToParams() throws ApiException {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
auth.setUsername("my-username");
auth.setPassword("my-password");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams, cookieParams, null, null, null);
// no changes to query parameters
assertEquals(0, queryParams.size());
@@ -37,7 +38,7 @@ public class HttpBasicAuthTest {
// null username should be treated as empty string
auth.setUsername(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams, cookieParams, null, null, null);
// the string below is base64-encoded result of ":my-password" with the "Basic " prefix
expected = "Basic Om15LXBhc3N3b3Jk";
assertEquals(expected, headerParams.get("Authorization"));
@@ -45,7 +46,7 @@ public class HttpBasicAuthTest {
// null password should be treated as empty string
auth.setUsername("my-username");
auth.setPassword(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams, cookieParams, null, null, null);
// the string below is base64-encoded result of "my-username:" with the "Basic " prefix
expected = "Basic bXktdXNlcm5hbWU6";
assertEquals(expected, headerParams.get("Authorization"));

View File

@@ -26,8 +26,10 @@ import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ThreadLocalRandom;
import java.io.BufferedWriter;
import java.io.File;
@@ -324,7 +326,7 @@ public class PetApiTest {
api.updatePet(pet);
List<Pet> pets = api.findPetsByTags(Arrays.asList("friendly"));
Set<Pet> pets = api.findPetsByTags(new HashSet<>(Arrays.asList("friendly")));
assertNotNull(pets);
boolean found = false;
@@ -396,7 +398,7 @@ public class PetApiTest {
assertTrue(pet1.hashCode() == pet1.hashCode());
pet2.setName("really-happy");
pet2.setPhotoUrls(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"));
pet2.setPhotoUrls(new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")));
assertFalse(pet1.equals(pet2));
assertFalse(pet2.equals(pet1));
assertFalse(pet1.hashCode() == (pet2.hashCode()));
@@ -404,7 +406,7 @@ public class PetApiTest {
assertTrue(pet2.hashCode() == pet2.hashCode());
pet1.setName("really-happy");
pet1.setPhotoUrls(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"));
pet1.setPhotoUrls(new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")));
assertTrue(pet1.equals(pet2));
assertTrue(pet2.equals(pet1));
assertTrue(pet1.hashCode() == pet2.hashCode());
@@ -423,7 +425,7 @@ public class PetApiTest {
pet.setCategory(category);
pet.setStatus(Pet.StatusEnum.AVAILABLE);
List<String> photos = Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2");
Set<String> photos = new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"));
pet.setPhotoUrls(photos);
return pet;

View File

@@ -128,7 +128,6 @@ public class ApiClientTest {
}
}
@Ignore("There is no more basic auth in petstore security definitions")
@Test
public void testSetUsernameAndPassword() {
HttpBasicAuth auth = null;

View File

@@ -2,19 +2,13 @@
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`4.3.0`): [![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`5.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)
[`5.0.x`](https://github.com/OpenAPITools/openapi-generator/tree/5.0.x) branch: [![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/5.0.x.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/5.0.x.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Run Status](https://api.shippable.com/projects/5af6bf74e790f4070084a115/badge?branch=5.0.x)](https://app.shippable.com/github/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=5.0.x&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/5.0.x)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[![iOS Build Status](https://app.bitrise.io/app/4a2b10a819d12b67/status.svg?token=859FMDR8QHwabCzwvZK6vQ&branch=5.0.x)](https://app.bitrise.io/app/4a2b10a819d12b67)
</div>
<div align="center">
@@ -50,7 +44,7 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[![NamSor](https://openapi-generator.tech/img/companies/namsor.png)](https://www.namsor.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[![LightBow](https://openapi-generator.tech/img/companies/lightbow.png)](https://www.lightbow.net/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/docspring.png" width="128" height="128">](https://docspring.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/datadog.png" width="128" height="128">](https://datadoghq.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS and Checkly for sponsoring the API monitoring
@@ -65,7 +59,7 @@ OpenAPI Generator allows generation of API client libraries (SDK generation), se
| | Languages/Frameworks |
| -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.0, .NET Core 2.0), **C++** (cpp-restsdk, Qt5, Tizen), **Clojure**, **Dart (1.x, 2.x)**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client), **k6**, **Kotlin**, **Lua**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (rust, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (2.x - 8.x), Aurelia, Axios, Fetch, Inversify, jQuery, Node, Rxjs) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin), **Haskell** (Servant), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/)), **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, Slim, Silex, [Symfony](https://symfony.com/), [Zend Expressive](https://github.com/zendframework/zend-expressive)), **Python** (Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (rust-server), **Scala** ([Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin), **Haskell** (Servant), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/)), **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, Slim, Silex, [Symfony](https://symfony.com/), [Zend Expressive](https://github.com/zendframework/zend-expressive)), **Python** (Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (rust-server), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc** |
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
| **Others** | **GraphQL**, **JMeter**, **MySQL Schema**, **Protocol Buffer** |
@@ -106,9 +100,8 @@ 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/) | 13.05.2020 | Major release with breaking changes (no fallback) |
| 4.3.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/4.3.0-SNAPSHOT/) | 27.03.2020 | Minor release (breaking changes with fallbacks) |
| [4.3.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.3.0) (latest stable release) | 27.03.2019 | Backward-compatible release |
| 5.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.0.0-SNAPSHOT/) | 17.06.2020 | Major 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
@@ -164,16 +157,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.0/openapi-generator-cli-4.3.0.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.0/openapi-generator-cli-4.3.0.jar -O openapi-generator-cli.jar
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
```
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.0/openapi-generator-cli-4.3.0.jar
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
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -290,7 +283,7 @@ To generate code with this image, you'll need to mount a local location as a vol
Example:
```sh
docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli generate \
docker run --rm -v "${PWD}:/local" openapitools/openapi-generator-cli generate \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml \
-g go \
-o /local/out/go
@@ -394,10 +387,10 @@ openapi-generator version
```
<!-- RELEASE_VERSION -->
Or install a particular OpenAPI Generator version (e.g. v4.3.0):
Or install a particular OpenAPI Generator version (e.g. v4.3.1):
```sh
npm install @openapitools/openapi-generator-cli@cli-4.3.0 -g
npm install @openapitools/openapi-generator-cli@cli-4.3.1 -g
```
Or install it as dev-dependency:
@@ -421,7 +414,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.0/openapi-generator-cli-4.3.0.jar)
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar)
<!-- /RELEASE_VERSION -->
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
@@ -567,6 +560,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Adaptant Solutions AG](https://www.adaptant.io/)
- [Agoda](https://www.agoda.com/)
- [Allianz](https://www.allianz.com)
- [Angular.Schule](https://angular.schule/)
- [Australia and New Zealand Banking Group (ANZ)](http://www.anz.com/)
- [ASKUL](https://www.askul.co.jp)
@@ -585,12 +579,14 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Commencis](https://www.commencis.com/)
- [Crossover Health](https://crossoverhealth.com/)
- [Cupix](https://www.cupix.com/)
- [Datadog](https://www.datadoghq.com)
- [DB Systel](https://www.dbsystel.de)
- [DocSpring](https://docspring.com/)
- [dwango](https://dwango.co.jp/)
- [Edge Impulse](https://www.edgeimpulse.com/)
- [Element AI](https://www.elementai.com/)
- [Embotics](https://www.embotics.com/)
- [emineo](https://www.emineo.ch)
- [Fenergo](https://www.fenergo.com/)
- [freee](https://corp.freee.co.jp/en/)
- [FreshCells](https://www.freshcells.de/)
@@ -612,9 +608,11 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [MailSlurp](https://www.mailslurp.com)
- [Médiavision](https://www.mediavision.fr/)
- [Metaswitch](https://www.metaswitch.com/)
- [MoonVision](https://www.moonvision.io/)
- [Myworkout](https://myworkout.com)
- [NamSor](https://www.namsor.com/)
- [Openet](https://www.openet.com/)
- [openVALIDATION](https://openvalidation.io/)
- [Oracle](https://www.oracle.com/)
- [Paxos](https://www.paxos.com)
- [Ponicode](https://ponicode.dev/)
@@ -640,6 +638,8 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Vouchery.io](https://vouchery.io)
- [Xero](https://www.xero.com/)
- [Yahoo Japan](https://www.yahoo.co.jp/)
- [Vonage](https://vonage.com)
- [YITU Technology](https://www.yitutech.com/)
- [Yelp](https://www.yelp.com/)
- [Zalando](https://www.zalando.com)
@@ -744,6 +744,13 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2020-03-02 - [OpenAPI Generator + TypeScript で始める自動生成の型に守られた豊かなクライアント生活](https://gift-tech.co.jp/articles/openapi-generator-typescript) by [五百蔵 直樹](https://gift-tech.co.jp/members/naokiioroi) at [GiFT株式会社](https://gift-tech.co.jp/)
- 2020-03-10 - [OpenAPI Generator Meetup #1](https://speakerdeck.com/akihito_nakano/openapi-generator-meetup-number-1) by [中野暁人](https://github.com/ackintosh) at [OpenAPI Generator Meetup #1](https://openapi-generator-meetup.connpass.com/event/168187/)
- 2020-03-15 - [Load Testing Your API with Swagger/OpenAPI and k6](https://k6.io/blog/load-testing-your-api-with-swagger-openapi-and-k6)
- 2020-04-13 - [俺的【OAS】との向き合い方 (爆速でOpenAPIと友達になろう)](https://tech-blog.optim.co.jp/entry/2020/04/13/100000) in [OPTim Blog](https://tech-blog.optim.co.jp/)
- 2020-04-22 - [Introduction to OpenAPI Generator](https://nordicapis.com/introduction-to-openapi-generator/) by [Kristopher Sandoval](https://nordicapis.com/author/sandovaleffect/) in [Nordic APIs](https://nordicapis.com/)
- 2020-04-27 - [How we use Open API v3 specification to auto-generate API documentation, code-snippets and clients](https://medium.com/pdf-generator-api/how-we-use-open-api-v3-specification-to-auto-generate-api-documentation-code-snippets-and-clients-d127a3cea784) by [Tanel Tähepõld](https://medium.com/@tanel.tahepold)
- 2020-05-09 - [OpenAPIでお手軽にモックAPIサーバーを動かす](https://qiita.com/kasa_le/items/97ca6a8dd4605695c25c) by [Sachie Kamba](https://qiita.com/kasa_le)
- 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)
## [6 - About Us](#table-of-contents)
@@ -758,6 +765,7 @@ OpenAPI Generator core team members are contributors who have been making signif
* [@ackintosh](https://github.com/ackintosh) (2018/02) [:heart:](https://www.patreon.com/ackintosh/overview)
* [@jmini](https://github.com/jmini) (2018/04) [:heart:](https://www.patreon.com/jmini)
* [@etherealjoy](https://github.com/etherealjoy) (2019/06)
* [@spacether](https://github.com/spacether) (2020/05)
:heart: = Link to support the contributor directly
@@ -772,6 +780,7 @@ Here is a list of template creators:
* Bash: @bkryza
* C: @PowerOfCreation @zhemant [:heart:](https://www.patreon.com/zhemant)
* C++ REST: @Danielku15
* C++ UE4: @Kahncode
* C# (.NET 2.0): @who
* C# (.NET Standard 1.3 ): @Gronsak
* C# (.NET 4.5 refactored): @jimschubert [:heart:](https://www.patreon.com/jimschubert)
@@ -815,6 +824,7 @@ Here is a list of template creators:
* Perl: @wing328 [:heart:](https://www.patreon.com/wing328)
* PHP (Guzzle): @baartosz
* PowerShell: @beatcracker
* PowerShell (refactored in 5.0.0): @wing328
* Python-experimental: @spacether
* R: @ramnov
* Ruby (Faraday): @meganemura @dkliban
@@ -842,6 +852,7 @@ Here is a list of template creators:
* Ada: @stcarrez
* C# ASP.NET 5: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* C# ASP.NET Core 3.0: @A-Joshi
* C# APS.NET Core 3.1: @phatcher
* C# NancyFX: @mstefaniuk
* C++ (Qt5 QHttpEngine): @etherealjoy
* C++ Pistache: @sebymiano
@@ -874,6 +885,7 @@ Here is a list of template creators:
* Python AIOHTTP: @Jyhess
* Ruby on Rails 5: @zlx
* Rust (rust-server): @metaswitch
* Scala Akka: @Bouillie
* Scala Finch: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Scala Lagom: @gmkumar2005
* Scala Play: @adigerber
@@ -881,6 +893,7 @@ Here is a list of template creators:
* AsciiDoc: @man-at-home
* HTML Doc 2: @jhitchcock
* Confluence Wiki: @jhitchcock
* PlantUML: @pburls
* Configuration
* Apache2: @stkrwork
* k6: @mostafa
@@ -932,7 +945,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| 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) |
| Clojure | |
| Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) @nickmeinhold (2019/09) @athornz (2019/12) @amondnet (2019/12) |
| Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) @athornz (2019/12) @amondnet (2019/12) |
| Eiffel | @jvelilla (2017/09) |
| Elixir | @mrmstn (2018/12) |
| Elm | @eriktim (2018/09) |
@@ -951,14 +964,14 @@ If you want to join the committee, please kindly apply by sending an email to te
| OCaml | @cgensoul (2019/08) |
| Perl | @wing328 (2017/07) [:heart:](https://www.patreon.com/wing328) @yue9944882 (2019/06) |
| PHP | @jebentier (2017/07), @dkarlovi (2017/07), @mandrean (2017/08), @jfastnacht (2017/09), @ackintosh (2017/09) [:heart:](https://www.patreon.com/ackintosh/overview), @ybelenko (2018/07), @renepardon (2018/12) |
| PowerShell | |
| Python | @taxpon (2017/07) @frol (2017/07) @mbohlool (2017/07) @cbornet (2017/09) @kenjones-cisco (2017/11) @tomplus (2018/10) @Jyhess (2019/01) @slash-arun (2019/11) @spacether (2019/11) |
| PowerShell | @wing328 (2020/05) |
| Python | @taxpon (2017/07) @frol (2017/07) @mbohlool (2017/07) @cbornet (2017/09) @kenjones-cisco (2017/11) @tomplus (2018/10) @Jyhess (2019/01) @arun-nalla (2019/11) @spacether (2019/11) |
| R | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
| Ruby | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
| Rust | @frol (2017/07) @farcaller (2017/08) @bjgill (2017/12) @richardwhiuk (2019/07) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03) |
| Rust | @frol (2017/07) @farcaller (2017/08) @bjgill (2017/12) @richardwhiuk (2019/07) @paladinzh (2020/05) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @nicokoenig (2018/09) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) |
:heart: = Link to support the contributor directly

View File

@@ -48,9 +48,9 @@ build_script:
- nuget restore samples\client\petstore\csharp\OpenAPIClientNetStandard\Org.OpenAPITools.sln
- msbuild samples\client\petstore\csharp\OpenAPIClientNetStandard\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
# install openapi-generator locally
- mvn clean install --quiet -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# run the locally installed openapi-generator-gradle-plugin
- gradle -b modules\openapi-generator-gradle-plugin\samples\local-spec\build.gradle buildGoSdk --info
- gradle -b modules\openapi-generator-gradle-plugin\samples\local-spec\build.gradle buildGoSdk --stacktrace
test_script:
# restore test-related files
- copy /b/v/y CI\samples.ci\client\petstore\csharp\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj samples\client\petstore\csharp\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
@@ -70,7 +70,7 @@ test_script:
# test ps pestore
- ps: |
$ErrorActionPreference = "Stop"
cd samples\client\petstore\powershell-experimental\
cd samples\client\petstore\powershell\
.\Build.ps1
Import-Module -Name '.\src\PSPetstore'
$Result = Invoke-Pester -PassThru

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -g apache2 -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -o samples/config/petstore/apache2 $@"
ags="generate -g apache2 -t modules/openapi-generator/src/main/resources/apache2/ -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -o samples/config/petstore/apache2 $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/apex -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g apex -o samples/client/petstore/apex $@"
ags="generate -t modules/openapi-generator/src/main/resources/apex -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g apex -o samples/client/petstore/apex --global-property skipFormModel=true $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/asciidoc-documentation --additional-properties=specDir=modules/openapi-generator/src/main/resources/asciidoc-documentation,snippetDir=. -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g asciidoc -o samples/documentation/asciidoc $@"
ags="generate -t modules/openapi-generator/src/main/resources/asciidoc-documentation --additional-properties=specDir=modules/openapi-generator/src/main/resources/asciidoc-documentation,snippetDir=. -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g asciidoc -o samples/documentation/asciidoc $@"
java ${JAVA_OPTS} -jar ${executable} ${ags}

View File

@@ -0,0 +1,32 @@
#!/usr/bin/env bash
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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -g aspnetcore -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/aspnetcore/3.0/ -o samples/server/petstore/aspnetcore-3.0 --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties aspnetCoreVersion=3.0 $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -0,0 +1,32 @@
#!/usr/bin/env bash
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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -g aspnetcore -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/aspnetcore/3.0/ -o samples/server/petstore/aspnetcore-3.1 --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties aspnetCoreVersion=3.1 $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -0,0 +1,32 @@
#!/usr/bin/env bash
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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -g aspnetcore -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/aspnetcore/3.0/ -o samples/server/petstore/aspnetcore3 --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties aspnetCoreVersion=3.0 $@"
java $JAVA_OPTS -jar $executable $ags

32
bin/avro-petstore.sh Executable file
View File

@@ -0,0 +1,32 @@
#!/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"
if [ ! -f "$executable" ]
then
mvn clean package
fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/avro-schema -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g avro-schema -o samples/openapi3/schema/petstore/avro-schema $@"
java $JAVA_OPTS -jar $executable $ags

View File

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

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/feign10x",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/feign",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is"

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/google-api-client",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/google-api-client",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true
}

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/native",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/native",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true
}

View File

@@ -4,7 +4,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/okhttp-gson-parcelableModel",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true,
"parcelableModel": true

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/okhttp-gson",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true
}

View File

@@ -1,7 +1,7 @@
{
"generatorName": "java",
"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/libraries/feign",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"outputDir": "samples/client/petstore/java/feign10x",
"additionalProperties": {
"hideGenerationTimestamp": true,

View File

@@ -0,0 +1,16 @@
{
"!include": "bin/java-petstore-rest-assured-jackson.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/rest-assured-jackson",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is",
"java8": "true",
"dateLibrary": "java8",
"serializationLibrary": "jackson",
"useBeanValidation": "true",
"performBeanValidation": "true"
}
}

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/rest-assured",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/rest-assured",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is"

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/retrofit2",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true
}

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2rx",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/retrofit2",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"useRxJava": true,
"hideGenerationTimestamp": true

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2rx2",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/retrofit2",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"useRxJava2": true,
"hideGenerationTimestamp": true

View File

@@ -3,7 +3,7 @@
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/vertx",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/vertx",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true
}

View File

@@ -1,5 +1,5 @@
{
"generatorName": "php-silex",
"generatorName": "php-silex-deprecated",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/php-silex/OpenAPIServer",
"templateDir": "modules/openapi-generator/src/main/resources/php-silex"

31
bin/cpp-ue4-petstore.sh Executable file
View File

@@ -0,0 +1,31 @@
#!/bin/sh
SCRIPT="$0"
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"
if [ ! -f "$executable" ]
then
mvn 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"
ags="$@ generate -t modules/openapi-generator/src/main/resources/cpp-ue4 -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g cpp-ue4 -o samples/client/petstore/cpp-ue4"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g csharp-dotnet2 -o samples/client/petstore/csharp-dotnet2/OpenAPIClientTest/Lib/OpenAPIClient --additional-properties hideGenerationTimestamp=true $@"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g csharp-dotnet2 -t modules/openapi-generator/src/main/resources/csharp-dotnet2 -o samples/client/petstore/csharp-dotnet2/OpenAPIClientTest/Lib/OpenAPIClient --additional-properties hideGenerationTimestamp=true $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -6,7 +6,7 @@
# C# Petstore API client with PropertyChanged
./bin/csharp-property-changed-petstore.sh
# C# Petstore API client (v5.0 for .net standarnd 1.3+)
# C# Petstore API client (.net standarnd 1.3+)
./bin/csharp-petstore-net-standard.sh
# C# Petstore API client (.NET 4.0)

View File

@@ -1,3 +1,3 @@
{
"targetFramework": "v5.0"
"targetFramework": "netstandard1.3"
}

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/confluenceWikiDocs -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g cwiki -o samples/documentation/cwiki $@"
ags="generate -t modules/openapi-generator/src/main/resources/confluenceWikiDocs -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g cwiki -o samples/documentation/cwiki $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g dynamic-html -o samples/documentation/dynamic-html $@"
ags="generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g dynamic-html -o samples/documentation/dynamic-html $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -1,35 +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"
if [ ! -f "$executable" ]
then
mvn -B clean package
fi
# auto format elm code using elm-format
export ELM_POST_PROCESS_FILE="/usr/bin/env elm-format --elm-version=0.18 --yes"
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g elm -t modules/openapi-generator/src/main/resources/elm -o samples/client/petstore/elm-0.18 --additional-properties elmVersion=0.18 --enable-post-process-file $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -1,5 +0,0 @@
#!/bin/sh
./bin/elm-0.18-petstore.sh
./bin/elm-petstore.sh

View File

@@ -1,35 +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"
if [ ! -f "$executable" ]
then
mvn -B clean package
fi
# auto format elm code using elm-format
export ELM_POST_PROCESS_FILE="/usr/bin/env elm-format --elm-version=0.19 --yes"
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g elm -t modules/openapi-generator/src/main/resources/elm -o samples/client/petstore/elm --enable-post-process-file $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/erlang-client --additional-properties packageName=petstore -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g erlang-client -o samples/client/petstore/erlang-client $@"
ags="generate -t modules/openapi-generator/src/main/resources/erlang-client --additional-properties packageName=petstore -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g erlang-client -o samples/client/petstore/erlang-client $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/erlang-proper --additional-properties packageName=petstore -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g erlang-proper -o samples/client/petstore/erlang-proper $@"
ags="generate -t modules/openapi-generator/src/main/resources/erlang-proper --additional-properties packageName=petstore -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g erlang-proper -o samples/client/petstore/erlang-proper $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/erlang-server -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g erlang-server -o samples/server/petstore/erlang-server $@"
ags="generate -t modules/openapi-generator/src/main/resources/erlang-server -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g erlang-server -o samples/server/petstore/erlang-server $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -25,7 +25,7 @@ then
mvn -B clean package
fi
SPEC="modules/openapi-generator/src/test/resources/2_0/petstore.yaml"
SPEC="modules/openapi-generator/src/test/resources/3_0/petstore.yaml"
GENERATOR="go-gin-server"
STUB_DIR="samples/server/petstore/go-gin-api-server"

View File

@@ -25,7 +25,7 @@ then
mvn -B clean package
fi
SPEC="modules/openapi-generator/src/test/resources/2_0/petstore.yaml"
SPEC="modules/openapi-generator/src/test/resources/3_0/petstore.yaml"
GENERATOR="go-server"
STUB_DIR="samples/server/petstore/go-api-server"

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties $@"
ags="generate -t modules/openapi-generator/src/main/resources/graphql-schema -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g graphql-schema -o samples/config/petstore/graphql-schema --additional-properties packageName=petstore $@"
ags="generate -t modules/openapi-generator/src/main/resources/graphql-schema -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g graphql-schema -o samples/config/petstore/graphql-schema --additional-properties packageName=petstore $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,5 +27,5 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Groovy/ -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g groovy -o samples/client/petstore/groovy --additional-properties hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Groovy/ -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g groovy -o samples/client/petstore/groovy --additional-properties hideGenerationTimestamp=true $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/htmlDocs -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g html -o samples/documentation/html $@"
ags="generate -t modules/openapi-generator/src/main/resources/htmlDocs -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g html -o samples/documentation/html $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g html2 -o samples/documentation/html2 --additional-properties hideGenerationTimestamp=true $@"
ags="generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g html2 -o samples/documentation/html2 -t modules/openapi-generator/src/main/resources/htmlDocs2/ --additional-properties hideGenerationTimestamp=true $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -2,20 +2,18 @@
# update java petstore clients for all supported http libraries
./bin/java-petstore-feign-10x.sh
./bin/java-petstore-feign.sh
./bin/java-petstore-google-api-client.sh
./bin/java-petstore-jersey1.sh
./bin/java-petstore-jersey2-java6.sh
./bin/java-petstore-jersey2.sh
./bin/java-petstore-jersey2-java8.sh
./bin/java-petstore-microprofile.sh
./bin/java-petstore-native.sh
./bin/java-petstore-okhttp-gson-parcelable.sh
./bin/java-petstore-okhttp-gson.sh
./bin/java-petstore-rest-assured.sh
./bin/java-petstore-rest-assured-jackson.sh
./bin/java-petstore-resteasy.sh
./bin/java-petstore-resttemplate-withxml.sh
./bin/java-petstore-resttemplate.sh
./bin/java-petstore-retrofit.sh
./bin/java-petstore-retrofit2-play24.sh
./bin/java-petstore-retrofit2-play25.sh
./bin/java-petstore-retrofit2-play26.sh
@@ -24,4 +22,3 @@
./bin/java-petstore-retrofit2rx2.sh
./bin/java-petstore-vertx.sh
./bin/java-petstore-webclient.sh
./bin/java8-petstore-jersey2.sh

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/feign -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-feign-10x.json -o samples/client/petstore/java/feign10x --additional-properties hideGenerationTimestamp=true,booleanGetterPrefix=is $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-feign-10x.json -o samples/client/petstore/java/feign10x --additional-properties hideGenerationTimestamp=true,booleanGetterPrefix=is $@"
echo "Removing files and folders under samples/client/petstore/java/feign10x/src/main"
rm -rf samples/client/petstore/java/feign10x/src/main

View File

@@ -1,5 +0,0 @@
{
"library": "feign",
"artifactId": "petstore-feign",
"feignVersion": "9.x"
}

View File

@@ -1,5 +0,0 @@
{
"library": "feign",
"artifactId": "petstore-feign",
"feignVersion": "10.x"
}

View File

@@ -1,40 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/feign -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-feign-9x.json -o samples/client/petstore/java/feign --additional-properties hideGenerationTimestamp=true,booleanGetterPrefix=is,additionalModelTypeAnnotations=@javax.annotation.concurrent.Immutable $@"
echo "Removing files and folders under samples/client/petstore/java/feign/src/main"
rm -rf samples/client/petstore/java/feign/src/main
find samples/client/petstore/java/feign -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
java $JAVA_OPTS -jar $executable $ags
# copy additional manually written unit-tests
mkdir samples/client/petstore/java/feign/src/test/java/org/openapitools/client
cp CI/samples.ci/client/petstore/java/test-manual/common/StringUtilTest.java samples/client/petstore/java/feign/src/test/java/org/openapitools/client/StringUtilTest.java

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/google-api-client -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-google-api-client.json -o samples/client/petstore/java/google-api-client --additional-properties hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-google-api-client.json -o samples/client/petstore/java/google-api-client --additional-properties hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/google-api-client/src/main"
rm -rf samples/client/petstore/java/google-api-client/src/main

View File

@@ -1,39 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate --artifact-id petstore-jersey2-java6 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-jersey2.json -o samples/client/petstore/java/jersey2-java6 --additional-properties hideGenerationTimestamp=true,supportJava6=true,booleanGetterPrefix=is $@"
echo "Removing files and folders under samples/client/petstore/java/jersey2-java6/src/main"
rm -rf samples/client/petstore/java/jersey2-java6/src/main
find samples/client/petstore/java/jersey2-java6 -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
echo "Restoring build.gradle ... "
cp CI/samples.ci/client/petstore/java/jersey2-java6/build.gradle samples/client/petstore/java/jersey2-java6/
java $JAVA_OPTS -jar $executable $ags

View File

@@ -0,0 +1,48 @@
#!/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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate --artifact-id petstore-jersey2-java8 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-jersey2-java8.json -o samples/client/petstore/java/jersey2-java8 --additional-properties hideGenerationTimestamp=true --additional-properties serverPort=8082 $@"
echo "Removing files and folders under samples/client/petstore/java/jersey2-java8/src/main"
rm -rf samples/client/petstore/java/jersey2-java8/src/main
find samples/client/petstore/java/jersey2-java8 -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
java $JAVA_OPTS -jar $executable $ags
# copy additional manually written unit-tests
mkdir -p samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client
mkdir -p samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/auth
mkdir -p samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/model
cp CI/samples.ci/client/petstore/java/test-manual/common/StringUtilTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/StringUtilTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/ApiClientTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/ApiClientTest.java
cp CI/samples.ci/client/petstore/java/test-manual/common/ConfigurationTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/ConfigurationTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/auth/ApiKeyAuthTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/auth/ApiKeyAuthTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/auth/HttpBasicAuthTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/auth/HttpBasicAuthTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/model/EnumValueTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/model/EnumValueTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2-java8/JSONTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/JSONTest.java

View File

@@ -1,4 +0,0 @@
{
"library": "jersey2",
"artifactId": "petstore-jersey2"
}

View File

@@ -1,48 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-jersey2.json -o samples/client/petstore/java/jersey2 --additional-properties hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/jersey2/src/main"
rm -rf samples/client/petstore/java/jersey2/src/main
find samples/client/petstore/java/jersey2 -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
java $JAVA_OPTS -jar $executable $ags
# copy additional manually written unit-tests
mkdir samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client
mkdir samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/auth
mkdir samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/model
cp CI/samples.ci/client/petstore/java/test-manual/common/StringUtilTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/StringUtilTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/ApiClientTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/ApiClientTest.java
cp CI/samples.ci/client/petstore/java/test-manual/common/ConfigurationTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/ConfigurationTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/auth/ApiKeyAuthTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/auth/ApiKeyAuthTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/auth/HttpBasicAuthTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/auth/HttpBasicAuthTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/model/EnumValueTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/model/EnumValueTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/JSONTest.java samples/client/petstore/java/jersey2/src/test/java/org/openapitools/client/JSONTest.java

View File

@@ -0,0 +1,35 @@
#!/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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-native.json -o samples/client/petstore/java/native-async --additional-properties hideGenerationTimestamp=true,asyncNative=true $@"
echo "Removing files and folders under samples/client/petstore/java/httpclient/src/main"
rm -rf samples/client/petstore/java/native-async/src/main
find samples/client/petstore/java/native-async -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/native -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-native.json -o samples/client/petstore/java/native --additional-properties hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-native.json -o samples/client/petstore/java/native --additional-properties hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/httpclient/src/main"
rm -rf samples/client/petstore/java/native/src/main

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate --artifact-id petstore-okhttp-gson-parcelableModel -t modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-okhttp-gson.json -o samples/client/petstore/java/okhttp-gson-parcelableModel --additional-properties hideGenerationTimestamp=true,parcelableModel=true $@"
ags="generate --artifact-id petstore-okhttp-gson-parcelableModel -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-okhttp-gson.json -o samples/client/petstore/java/okhttp-gson-parcelableModel --additional-properties hideGenerationTimestamp=true,parcelableModel=true $@"
rm -rf samples/client/petstore/java/okhttp-gson-parcelableModel/src/main
find samples/client/petstore/java/okhttp-gson-parcelableModel -maxdepth 1 -type f ! -name "README.md" -exec rm {} +

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-okhttp-gson.json -o samples/client/petstore/java/okhttp-gson --additional-properties hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-okhttp-gson.json -o samples/client/petstore/java/okhttp-gson --additional-properties hideGenerationTimestamp=true $@"
rm -rf samples/client/petstore/java/okhttp-gson/src/main
find samples/client/petstore/java/okhttp-gson -maxdepth 1 -type f ! -name "README.md" -exec rm {} +

View File

@@ -0,0 +1,4 @@
{
"library": "rest-assured",
"artifactId": "petstore-rest-assured-jackson"
}

View File

@@ -0,0 +1,36 @@
#!/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"
target_dir="./samples/client/petstore/java/rest-assured-jackson/"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
args="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-rest-assured-jackson.json -o ${target_dir} --additional-properties hideGenerationTimestamp=true --additional-properties useBeanValidation=true --additional-properties performBeanValidation=true --additional-properties booleanGetterPrefix=is --additional-properties java8=true --additional-properties dateLibrary=java8 --additional-properties serializationLibrary=jackson $@"
echo "Removing ${target_dir}"
rm -rf "${target_dir}"
java $JAVA_OPTS -jar $executable $args

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/rest-assured -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-rest-assured.json -o samples/client/petstore/java/rest-assured --additional-properties hideGenerationTimestamp=true --additional-properties booleanGetterPrefix=is $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-rest-assured.json -o samples/client/petstore/java/rest-assured --additional-properties hideGenerationTimestamp=true --additional-properties useBeanValidation=true --additional-properties performBeanValidation=true --additional-properties booleanGetterPrefix=is $@"
echo "Removing files and folders under samples/client/petstore/java/rest-assured/src/main"
rm -rf samples/client/petstore/java/rest-assured/src/main

View File

@@ -1,4 +0,0 @@
{
"library": "retrofit",
"artifactId": "petstore-retrofit"
}

View File

@@ -1,35 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit.json -o samples/client/petstore/java/retrofit --additional-properties hideGenerationTimestamp=true,dateLibrary=joda $@"
echo "Removing files and folders under samples/client/petstore/java/retrofit/src/main"
rm -rf samples/client/petstore/java/retrofit/src/main
find samples/client/petstore/java/retrofit -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/retrofit2 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit2.json -o samples/client/petstore/java/retrofit2 --additional-properties hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit2.json -o samples/client/petstore/java/retrofit2 --additional-properties hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/retrofit2/src/main"
rm -rf samples/client/petstore/java/retrofit2/src/main

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/retrofit2 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit2rx.json -o samples/client/petstore/java/retrofit2rx --additional-properties useRxJava=true,hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit2rx.json -o samples/client/petstore/java/retrofit2rx --additional-properties useRxJava=true,hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/retrofit2rx/src/main"
rm -rf samples/client/petstore/java/retrofit2rx/src/main

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/retrofit2 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit2rx2.json -o samples/client/petstore/java/retrofit2rx2 --additional-properties useRxJava2=true,hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-retrofit2rx2.json -o samples/client/petstore/java/retrofit2rx2 --additional-properties useRxJava2=true,hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/retrofit2rx2/src/main"
rm -rf samples/client/petstore/java/retrofit2rx2/src/main

View File

@@ -27,7 +27,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Java/libraries/vertx -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-vertx.json -o samples/client/petstore/java/vertx --additional-properties hideGenerationTimestamp=true $@"
ags="generate -t modules/openapi-generator/src/main/resources/Java -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java-petstore-vertx.json -o samples/client/petstore/java/vertx --additional-properties hideGenerationTimestamp=true $@"
echo "Removing files and folders under samples/client/petstore/java/vertx/src/main"
rm -rf samples/client/petstore/java/vertx/src/main

View File

@@ -1,48 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate --artifact-id petstore-jersey2-java8 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g java -c bin/java8-petstore-jersey2.json -o samples/client/petstore/java/jersey2-java8 --additional-properties hideGenerationTimestamp=true --additional-properties serverPort=8082 $@"
echo "Removing files and folders under samples/client/petstore/java/jersey2-java8/src/main"
rm -rf samples/client/petstore/java/jersey2-java8/src/main
find samples/client/petstore/java/jersey2-java8 -maxdepth 1 -type f ! -name "README.md" -exec rm {} +
java $JAVA_OPTS -jar $executable $ags
# copy additional manually written unit-tests
mkdir samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client
mkdir samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/auth
mkdir samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/model
cp CI/samples.ci/client/petstore/java/test-manual/common/StringUtilTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/StringUtilTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/ApiClientTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/ApiClientTest.java
cp CI/samples.ci/client/petstore/java/test-manual/common/ConfigurationTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/ConfigurationTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/auth/ApiKeyAuthTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/auth/ApiKeyAuthTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/auth/HttpBasicAuthTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/auth/HttpBasicAuthTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2/model/EnumValueTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/model/EnumValueTest.java
cp CI/samples.ci/client/petstore/java/test-manual/jersey2-java8/JSONTest.java samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/JSONTest.java

View File

@@ -28,8 +28,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Javascript/es6 \
-i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g javascript \
--additional-properties appName=PetstoreClient \
-o samples/client/petstore/javascript-es6 $@"
-i modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml -g javascript \
-o samples/client/petstore/javascript-es6 --additional-properties appName=PetstoreClient $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -1,6 +1,4 @@
#!/bin/sh
./bin/javascript-petstore.sh
./bin/javascript-promise-petstore.sh
./bin/javascript-es6-petstore.sh
./bin/javascript-promise-es6-petstore.sh

View File

@@ -1,32 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Javascript -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g javascript -o samples/client/petstore/javascript --additional-properties appName=PetstoreClient,useES6=false $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -28,8 +28,8 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/Javascript/es6 \
-i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g javascript \
-i modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml -g javascript \
-o samples/client/petstore/javascript-promise-es6 \
--additional-properties appName=PetstoreClient,usePromises=true,useES6=true $@"
--additional-properties appName=PetstoreClient,usePromises=true $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -1,38 +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"
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} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate \
-t modules/openapi-generator/src/main/resources/Javascript \
-i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml \
-g javascript \
-o samples/client/petstore/javascript-promise \
--additional-properties usePromises=true,useES6=false \
--additional-properties appName=PetstoreClient $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -12,3 +12,4 @@
./bin/kotlin-client-nullable.sh
./bin/kotlin-client-retrofit2.sh
./bin/kotlin-client-json-request-string.sh
./bin/kotlin-client-petstore-okhttp-coroutines.sh

View File

@@ -0,0 +1,37 @@
#!/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"
if [ ! -f "$executable" ]
then
mvn clean package
fi
samplePath="samples/client/petstore/kotlin-jvm-okhttp4-coroutines"
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-client -g kotlin --artifact-id kotlin-petstore-okhttp4-coroutines-client --library jvm-okhttp4 --additional-properties serializationLibrary=gson,dateLibrary=java8,serializableModel=true,useCoroutines=true -o $samplePath $@"
echo "Cleaning previously generated files if any from $samplePath"
rm -rf $samplePath
echo "Generating Kotling client..."
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties $@"
ags="generate -t modules/openapi-generator/src/main/resources/lua -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g lua -o samples/client/petstore/lua --additional-properties packageName=petstore $@"
ags="generate -t modules/openapi-generator/src/main/resources/lua -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g lua -o samples/client/petstore/lua --additional-properties packageName=petstore $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -26,6 +26,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/markdown-documentation -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g markdown -o samples/documentation/markdown $@"
ags="generate -t modules/openapi-generator/src/main/resources/markdown-documentation -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g markdown -o samples/documentation/markdown $@"
java ${JAVA_OPTS} -jar ${executable} ${ags}

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/mysql-schema -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g mysql-schema -o samples/schema/petstore/mysql $@"
ags="generate -t modules/openapi-generator/src/main/resources/mysql-schema -i modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml -g mysql-schema -o samples/schema/petstore/mysql $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/nodejs-express-server -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g nodejs-express-server -o samples/server/petstore/nodejs-express-server -Dservice $@"
ags="generate -t modules/openapi-generator/src/main/resources/nodejs-express-server -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g nodejs-express-server -o samples/server/petstore/nodejs-express-server $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -28,7 +28,7 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
args="generate -t modules/openapi-generator/src/main/resources/ocaml -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g ocaml -o samples/client/petstore/ocaml --additional-properties packageName=petstore_client $@"
args="generate -t modules/openapi-generator/src/main/resources/ocaml -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g ocaml -o samples/client/petstore/ocaml --additional-properties packageName=petstore_client $@"
echo "java ${JAVA_OPTS} -jar ${executable} ${args}"
java $JAVA_OPTS -jar $executable $args

View File

@@ -1,32 +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"
if [ ! -f "$executable" ]
then
mvn clean package
fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g dynamic-html -o samples/dynamic-html $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -1,5 +0,0 @@
#!/bin/sh
./bin/openapi3/elm-petstore.sh
./bin/openapi3/elm-composition.sh

View File

@@ -1,35 +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"
if [ ! -f "$executable" ]
then
mvn -B clean package
fi
# auto format elm code using elm-format
export ELM_POST_PROCESS_FILE="/usr/bin/env elm-format --elm-version=0.19 --yes"
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -i modules/openapi-generator/src/test/resources/3_0/composition.yaml -g elm -t modules/openapi-generator/src/main/resources/elm -o samples/openapi3/client/composition/elm --enable-post-process-file $@"
java $JAVA_OPTS -jar $executable $ags

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