Compare commits

...

349 Commits

Author SHA1 Message Date
William Cheng
37cf47fa2c remove go.sum 2022-02-20 22:58:15 +08:00
William Cheng
b1d7fef226 add go.sum 2022-02-20 22:58:04 +08:00
William Cheng
cf59f55334 trigger build 2022-02-20 22:37:26 +08:00
William Cheng
006c5edce3 fix path 2022-02-20 22:36:55 +08:00
William Cheng
880785121a add test.bash 2022-02-20 22:29:39 +08:00
William Cheng
650f2ebc4d add more go server tests 2022-02-20 22:21:29 +08:00
William Cheng
f30fb46b52 trigger build 2022-02-20 22:14:55 +08:00
William Cheng
69e7735b0c add workflow for go server 2022-02-20 22:14:19 +08:00
Leigh Johnson
c8d0dd18f2 add print-nanny.com to project list (#11667) 2022-02-20 11:16:45 +08:00
sullis
c5745f8d72 [java] jersey 2.35 (#11661) 2022-02-20 11:12:55 +08:00
sullis
3c8f249c6c [java] logback 1.2.10 (#11659)
Latest version of logback
https://logback.qos.ch/news.html
2022-02-19 18:52:39 +08:00
sullis
4a7f46cba5 [java] openapi-generator-maven-plugin: add jaxrs-jersey2 test (#11658) 2022-02-19 18:50:50 +08:00
sullis
840f36a50d maven-compiler-plugin 3.10.0 (#11660)
https://github.com/apache/maven-compiler-plugin/releases/tag/maven-compiler-plugin-3.10.0
2022-02-19 18:48:57 +08:00
William Cheng
3a119b9cff Add tests for Aspnet 6, minor bug fixes (#11663)
* add tests for aspnet core 6

* bug fix, update samples
2022-02-19 18:46:38 +08:00
William Cheng
2918b8706e better code format in c#, aspnet generators (#11662) 2022-02-19 14:40:12 +08:00
Felix Winterhalter
c161358aa8 [Csharp][aspnet] Aspnet 6.0 Support (#10619)
* Aspnetcore V6 Support

* docs: update-docs
2022-02-19 13:52:52 +08:00
William Cheng
d530e1baec minor enhancement to code format in go client (#11657) 2022-02-19 13:11:28 +08:00
William Cheng
d030ac1b50 better code format in go generators (#11656) 2022-02-19 11:41:19 +08:00
Aaron Pittenger
0d4dba13f6 [Python] python regex validation generation (#11525)
* fix: python regex validation generation

* docs: updated comment to be more specific

* fix: check the right value used when generating the regex
2022-02-17 21:11:39 -08:00
Paul-Etienne François
d45cb6511f [Java][Native] Fix an issue leading to an altered String parameter when consuming formatted strings like XML (#11640)
* Fix the generated request builder when using a string body parameter

* Update the samples according to the fix for #11638
2022-02-18 11:50:15 +08:00
moznion
d6a97b0c39 Remove dummy variable declaration for context.Context from generated go code (#11641)
Originally, this dummy declaration was needed because there was the
possibility of the generated code doesn't use `context.Context` and then
if it imported that package, go compiler complains that and makes an error.
ref: 3ed1aa8e79/modules/swagger-codegen/src/main/resources/go/api.mustache (L30)

However, now this dummy placement is no longer needed because the
generated code always uses `context.Context`.

Signed-off-by: moznion <moznion@mail.moznion.net>
2022-02-18 11:34:05 +08:00
sullis
9517a9525b [java] enhance unit tests for JavaJerseyServerCodegen (#11643) 2022-02-17 19:24:19 -08:00
William Cheng
1f6b3eb604 Remove go-deprecated generator (#11645)
* remove go-deprecated generator

* update doc
2022-02-18 11:20:09 +08:00
Rodrigo Cebrián González
03cca89b80 ✏️ Fixed typo error on java generator config-help command (#11644)
Fix the typo error "proeprties" to properties inside the gradleProperties config for java generator
2022-02-18 11:09:00 +08:00
William Cheng
d00a5c304f update samples 2022-02-18 00:53:42 +08:00
Ran Halprin
1b8dae18b8 typescript-fetch: Support deprecated parameters, operations (#11523)
Co-authored-by: Ran Halprin <ran@myhippo.com>
2022-02-18 00:47:28 +08:00
Tomáš Čermák
f1ad3a89e6 [Protobuf-Schema] Add enum prefix (#11548)
* [Protobuf-Schema] Add enum prefix

* [Protobuf-Schema] Documentation updated

* [Protobuf-Schema] Samples updated
2022-02-18 00:32:34 +08:00
William Cheng
6d9e349721 Update kotlin vertx server dependencies (#11631)
* update kotlin vertx dep to newer versions

* update kotlin to newer version
2022-02-17 19:45:31 +08:00
William Cheng
b979eccf68 Add Github action file to test Java clients (#11633)
* add github action file to test java clients

* update tests
2022-02-17 15:49:34 +08:00
William Cheng
0a68d83f95 [Java] move some client tests to Github actions (#11634)
* more java client tests in github actino

* trigger build

* Revert "trigger build"

This reverts commit 023f8cc725.

* move java client tests to github action
2022-02-17 15:30:14 +08:00
William Cheng
986446c1d5 Migrate JAX-RS server tests to Github action (#11632)
* remove spring tests from pom.xml

* test jaxrs in github action

* trigger build

* Revert "trigger build"

This reverts commit a9c444fe5b.
2022-02-17 14:05:25 +08:00
Justin Black
b165d2dda9 [python-experimental] fn + method signature improvements (#11529)
* Updates code

* Removes java files
2022-02-16 10:52:31 -08:00
Daniel Schreiber
035736f5c4 [java] No @NotNull annotation for readOnly (required) attributes - fixes #5026 (#10820) 2022-02-16 15:33:23 +08:00
William Cheng
c7367c2d34 [kotlin] add missing import, better code format for kotlin generators (#11619)
* add missing import, better code format for kotlin generators

* update kotlin workflow

* more kotlin tests

* better code format

* separate kotlin client, server teets

* comment out tests
2022-02-16 15:09:51 +08:00
Sergey Vladimirov
d0d0a0505e Support email validation in kotlin-spring (#11617) 2022-02-16 13:34:11 +08:00
dependabot[bot]
5bc53ec08c Bump shelljs from 0.8.3 to 0.8.5 in /website (#11324)
Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.3 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.3...v0.8.5)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 11:08:06 +08:00
dependabot[bot]
274e4b1be3 Bump ajv from 6.6.2 to 6.12.6 in /website (#11584)
Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.6.2 to 6.12.6.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](https://github.com/ajv-validator/ajv/compare/v6.6.2...v6.12.6)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 11:07:41 +08:00
cachescrubber
5afec1fec7 Spring hide controller impl (#11611)
* hide implementation behind undocumented flag (_api_controller_impl_) to temporarily preserve code.

* Generate Samples
2022-02-16 11:06:41 +08:00
William Cheng
878f6e5709 [General] Better code format (#11612)
* better code format in java tests

* better code format in java client codegen

* better code format in java model tests

* better code format in abstract java codegen

* better code format in codegen parameter, property

* better code format in codegen response

* better code format in codegen model

* better code format in default generator

* better code format in default codegen

* update codegen model
2022-02-15 16:32:48 +08:00
Laurens-W
52e3265c34 [Java][RestTemplate] Use class level RestTemplate for uri encoding (#11606)
* Move static logic to initialization method when no RestTemplate is provided.
Otherwise, use the settings from the RestTemplate that was provided.

* Move code outside of withXml
Run required scripts

Co-authored-by: Westerlaken, H.L. (Laurens) <laurens.westerlaken@devolksbank.nl>
2022-02-15 16:31:51 +08:00
devhl-labs
d7b812ad42 [charp-netcore] Constructor Improvements (#11502)
* refactor nrt annotation

* enable nrt by default in .net6.0+

* use shorter nrt annotation

* build samples

* removed debugging lines

* fixed model and operatoin constructors

* reverted a commented line for comparison

* created library modelGeneric, removed debugging lines

* build samples

* build all samples

* avoid breaking changes

* publish and build samples

* added line break
2022-02-15 10:44:23 +08:00
William Cheng
a4fcd1c924 avoid Double Brace Initialization (DBI) (#11609) 2022-02-15 10:42:55 +08:00
Lennart Schwahn
ba04720898 fix #6134 by considering the type List<File> (#11361)
The method buildRequestBodyMultipart in ApiClient.java now recognizes if
an input parameter is an instance of List.
2022-02-15 10:35:46 +08:00
matthiasloeu
7555018aa6 Add default value (#11600) 2022-02-15 09:54:14 +08:00
William Cheng
5c0d861f96 add link to presentation 2022-02-15 09:45:01 +08:00
cachescrubber
00e23490bd Decomission threetenbp support. (#11608) 2022-02-15 09:39:30 +08:00
William Cheng
380aaa55a1 Remove JDK7 support from Java Spring generators (#11561)
* remove jdk8 support from spring generators

* update tests, remove commented code in AbstractJavaCodegen

* add back implementation

* add back import

* generate code for non reactive
2022-02-14 17:54:31 +08:00
Juan Treminio
905e59c238 [PHP] Allows passing filename to deserialize (#11582)
* Allows passing filename to deserialize

* Code review changes
2022-02-14 17:38:16 +08:00
William Cheng
ec51e9cd0b update samples 2022-02-14 12:54:26 +08:00
William Cheng
5346d0b6b7 update samples 2022-02-14 11:45:12 +08:00
jiangyuan
dce8b80af7 [Python] fix api file name & api var name (#11051)
* fix api filename

* fix PythonCodeGen toApiVarName

* add samples change
2022-02-14 11:27:13 +08:00
devhl-labs
140f633655 [csharp-netcore] Nrt (nullableReferenceTypes) refactor (#11452)
* refactor nrt annotation

* enable nrt by default in .net6.0+

* use shorter nrt annotation

* build samples

* removed debugging lines
2022-02-14 11:08:40 +08:00
Marek Hudik
c937bae888 fixes #11579: Java RestTemplate Mustache template doesn't use reserved words for local variables (#11583)
* fixes #11579: Java RestTemplate Mustache template doesn't use reserved words for local variables

* fixes #11579: Java RestTemplate samples

Co-authored-by: Marek Hudik <marek.hudik@broadcom.com>
2022-02-14 10:59:11 +08:00
William Cheng
73ed743818 update samples 2022-02-14 10:57:13 +08:00
upachler
2584c9d99d add fromString() method to enums as required by JAX RS spec (#7494) 2022-02-14 10:54:32 +08:00
William Cheng
896504de51 Test Java (native) client in JDK 11 (#11599)
* test java native client in jdk11

* test java natvie async

* remove java native from pom.xml

* revert changes
2022-02-13 19:23:57 +08:00
William Cheng
d481aa3af4 Test Java Play framework in Github action (#11598)
* test play framework in github action

* trigger build

* add pom.xml

* revert readme
2022-02-13 19:23:11 +08:00
Akhil Nair
51a75c5481 [go_pbv_pbr_issue] (#11466)
There was a difference in logic for Unmarshalling the JSON.
The new logic is re-used here.
2022-02-13 16:50:27 +08:00
William Cheng
d228f3469f Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2022-02-12 17:43:27 +08:00
William Cheng
cefe7fb560 [Scala] test Scala clients, servers in GitHub workflow (#11592)
* add samples/server/petstore/spring-boot-nullable-set to github workflow

* add github workflow to test scala clients and servers

* trigger build

* remove module

* trigger build

* test with jdk8

* trigger build

* test with jdk11

* clean up pom.xml

* remove groovy from pom.xml

* update samples
2022-02-12 17:43:10 +08:00
cachescrubber
0ed147e7a4 Implement Source DocumentationProvider, spring-mvc decommission (#11531)
* - Upgrade swagger-ui to 4.4.1
- Bring homeController.mustache up-to-date
- Main class is now OpenApiGeneratorApplication
- Introduce SpringBootTest.mustache
- Remove option swaggerDocketConfig/openapiDocketConfig in favor of documentationProvider.

* Generate Samples

* Restore generator-online classes
Fix spring-mvc builds

* Generate Samples

* Do not generate SpringFoxConfiguration.java when reactive ist set.

* Fix generation of SpringFoxConfiguration

* Generate Documentation

* Reactive support: add dependency management for springdoc-openapi-webflux-ui

* Generate Samples

* Change SpringBootApplication to OpenApiGeneratorApplication

* Generate Samples

* Implement SwaggerUIFeatures in SpringCodegen

* Generate Samples

* Add useSwaggerUI: true to some test configs

* Generate Samples

* Update Documentation

* Update Documentation

* Update README.mustache

* Generate Samples

* useSwaggerUI is true by default

* Generate Samples

* Update Documentation

* Add deprecation warnings to cli opts; Log a deprecation warning

* Update Documentation

* Generate Samples

* Remove spring-mvc library

* Remove spring-mvc from project and CI configs

* Check whether the selected documentation provider requires us to boostrap swagger-ui.

* Generate Samples

* Generate samples

* Generate samples

* Generate samples
2022-02-12 17:25:21 +08:00
William Cheng
deb578a32c Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2022-02-12 16:57:10 +08:00
William Cheng
b01bcfecde [Groovy] add Groovy client tests to Github workflow (#11593)
* add samples/server/petstore/spring-boot-nullable-set to github workflow

* test groovy client in github workflow

* rename
2022-02-12 16:52:54 +08:00
William Cheng
4c330f4ca0 add samples/server/petstore/spring-boot-nullable-set to github workflow 2022-02-12 15:24:38 +08:00
Oleh Kurpiak
25270a0389 [Java] fix deserialization of readonly properties (#11495) 2022-02-12 15:23:29 +08:00
cachescrubber
703c9630c2 [spring] various bug fixes and enhancements (#11580)
* Bugfix: delay clearing *TemplateFiles with apiFirst #2407

* Bugfix: delay clearing *TemplateFiles with apiFirst #2407 (add test case)

* spring api.mustache: fix unhandledException #10860

* Generate samples

* add sample

* Generate samples

* Fixed mustache template for FormParams. Use paramName instead of baseName for variable name.
This will fix an issue when parameter name is one of the reserved keywords (#7506)

# Conflicts:
#	modules/openapi-generator/src/main/resources/JavaSpring/formParams.mustache
#	modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java

* Move and comment apiFrst

Co-authored-by: Andrii Hrytsiuk <andrii.hrytsiuk@gmail.com>
2022-02-12 15:17:58 +08:00
cachescrubber
9dfe8c63ee [Bug][Java] defaultValues for date and date-time params (#11536)
* Add default value support to cookie and header params

* Generate Samples

* Replace "OffsetDateTime.parse(..)" with toString();

* Generate Samples

* Revert "Replace "OffsetDateTime.parse(..)" with toString();"

This reverts commit 2e37411b30.

* Format java.util.Date to ISO Date in AbstractJavaCodegen.toDefaultParameterValue

* Generate Samples

* Generate Samples

* Use toParameterDefault()

* Generate Samples

* Implement testDateTimeFormParameterHasDefaultValue unit test

* Add more test coverage.

* Remove postProcessParameter() since is has no effect after using toDefaultParameterValue()

* Use LocalDate.parse() in toDefaultValue()

* Generate Samples

* Return a defaultValue only if dateTimeLibrary is java8.
2022-02-12 15:14:26 +08:00
William Cheng
4f0c07ff3c update java-vertx-web version to 4.2.4 2022-02-12 15:08:47 +08:00
Sean Brown
7bdf04db70 [java][vertx] moved HttpStatusException (vertx internal) to HttpException (public) (#11550)
* Update apiImpl.mustache

Vertx has moved HttpStatusException (vertx internal) to HttpException (public)

https://github.com/vert-x3/wiki/wiki/4.1.0-Deprecations-and-breaking-changes#iovertxextwebhandlerimplhttpstatusexception

* Update java vertx server verx version

Co-authored-by: Sean Brown <sbrown@axon.com>
2022-02-12 15:02:59 +08:00
Sergio del Amo
fbf4e56281 update micronaut to 3.3.1 (#11569) 2022-02-12 14:51:20 +08:00
Tal Kirshboim
01a8572f63 Upgrade Kotlin to version 1.6.0 (#11022) 2022-02-11 09:35:19 +00:00
Juan Treminio
15501f10c4 [PHP] Fix checking value of Configuration::getAccessToken() (#11486)
* Prevents empty access token from overriding basic auth
2022-02-10 11:01:16 +03:00
William Cheng
376bf6cd34 update samples 2022-02-10 14:46:51 +08:00
Ulrich Grave
bd48108818 Fix for multible tags in @Operation annotation (#11475)
* Check size of x-tags list

* Remove unused variable assigment

* Fix issue number in test method name

* Fix typo

* Add tag to @ApoOperation only if any tag is given

* Rename data provider method

* Remove unused import
2022-02-10 14:43:57 +08:00
William Cheng
ab482a0e7f remove jdk6, 7 supports in kotlin templates (#11560) 2022-02-10 12:05:12 +08:00
William Cheng
25b55c8c2e remove jdk 6 support (#11558) 2022-02-10 11:24:40 +08:00
William Cheng
fdb58f597c replace tabs with spaces in js templates (#11559) 2022-02-10 11:04:59 +08:00
William Cheng
3cb4b7d08e [Java] remove tabs from java templates (#11557)
* remove tabs from java templates

* replaces tabs with spaces in java templates
2022-02-10 10:47:08 +08:00
William Cheng
8455c1cd23 Remove the option to support JDK7 from Java generator and templates (#11547)
* remove java8 from java client generator and templates

* update tests

* remove threetenbp

* update spring templates to remove java8

* remove java8 from jaxrs template

* fix jaxrs spec

* fix feign

* remove CustomInstantDeserializer.java

* fix jersey1

* fix undertow

* various update

* fix jaxrs jersey1

* fix java inflector

* fix jaxrs cxf

* add new files

* update doc
2022-02-10 10:35:29 +08:00
Bruno Coelho
441c069177 [Swift5][client] try to fix JsonEncondable (#11541) 2022-02-09 08:50:16 +00:00
sullis
bf5e701c3d mockito 4.3.1 (#11549) 2022-02-09 14:27:29 +08:00
William Cheng
c06d00fe87 update doc 2022-02-08 13:53:42 +08:00
Boris Smidt
ff30df92f8 Upgrade sttp generator to sttp3 (#11260)
Remove CIRCE_VERSION from generator because it is taken in as a transitive dependency of `  "com.softwaremill.sttp.client3" %% "json4s" % "3.3.18"`

Co-authored-by: boris <borissmidt@hotmail.com>
2022-02-08 13:46:42 +08:00
William Cheng
b6c445cdc3 update swagger core, jackson to newer version (#11545) 2022-02-08 13:31:20 +08:00
William Cheng
c9118d6982 [C#] test .net6 projects in Github actions (#11544)
* test .net 6 in github workflow

* trigger workflow

* fix run

* fix test

* trigger build

* update samples
2022-02-08 11:14:11 +08:00
William Cheng
7c1f6c5d6a update build.gradle, build.sbt in java okhttp-gson client (#11543) 2022-02-08 10:57:58 +08:00
William Cheng
51800471fa [java][Okhttp] replace okhttp-gson with okhttp-gson-nextgen (#11538)
* replace okhttp-gson with okhttp-gson-nextgen

* add new files

* update doc

* clean up pom

* update test

* restore error handling in doc

* add back changes

* uncomment tests

* update samples
2022-02-08 00:05:44 +08:00
William Cheng
949b4e2008 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2022-02-07 20:19:30 +08:00
William Cheng
018fa543ed update readme 2022-02-07 20:19:19 +08:00
William Cheng
859c1969fd add numary as bronze sponsor of the project (#11539) 2022-02-07 15:43:35 +08:00
Jason Finch
dbb63dc077 tidy [csharp-netcore]: Remove unused UrlEncode method. Possible breaking change: Method is public so upstream consumer *may* of used it, but library does not. (#11453) 2022-02-07 15:18:24 +08:00
devhl-labs
8ecd619eb3 [csharp-nancyfx] Delete NancyFX (#11438)
* removed all nancyfx references

* didnt save one file

* removed two more nancyfx files
2022-02-07 15:06:47 +08:00
Julian G
9e1972bb1d fix float literals in C++ Pistache codegen (#11483) 2022-02-07 12:21:11 +08:00
Ethan Keller
9f5422d688 Add cycle detection (#7532) (#11500)
* Add cycle detection (#7532)

* Review feedback

* Including ContextAwareNodes to detect cycles more accurately.

* Add test

* Add forest to test.

* No longer need ContextAwareNode

* Review feedback

* Update samples
2022-02-06 13:21:17 -05:00
devhl-labs
fcce44ab9b [csharp-netcore] Add generichost samples (#11451)
* added generichost samples

* build samples

* added guid

* build samples
2022-02-05 17:53:26 +08:00
cachescrubber
194b3fda26 [Bug][Java/Spring] OAS3 related bugfixes and enhancements (#11526)
* Content mediatype is hardcoded in api.mustache #11511

* Generate Samples

* OAS3 incorrect data type when providing a default value #11367

* Generate Samples

* Fix JsonTypeName annotation handling in Java and JavaSpring

* Generate Samples

* getIsClassnameSanitized: use null safe equals
2022-02-05 17:29:58 +08:00
William Cheng
e177a4b757 update samples 2022-02-05 16:37:56 +08:00
zarlo
092100694e Update __init__model.mustache (#11474)
fix a error in the template
2022-02-05 16:04:07 +08:00
William Cheng
e2d32b2061 fix javadoc warnings in feign client (#11527) 2022-02-05 15:18:36 +08:00
William Cheng
31f2f11beb update samples 2022-02-05 14:47:51 +08:00
lbilger
1a14d9e5ca Fix ClassCastException if expected type is Object (#11510)
The currently generated code will throw a `ClassCastException` if `type` is `Object`. I'm not quite sure why `isAssignableFrom` is used here but I tried to keep the change minimal - in my understanding, the result would be the same if the line was 
```
if(Types.getRawType(type).equals(ApiResponse.class)) {
``` 
because the `ApiResponse` only extends `Object` and implements no interfaces. Maybe it was meant to be `ApiResponse.class.isAssignableFrom(Types.getRawType(type))`? This would also permit subclasses of `ApiResponse`, but then it would be more complicated to determine the actual type parameter (because `type` itself may not be parameterized) and to create the object to return (because it would have to be an instance of the subclass).
2022-02-05 14:43:25 +08:00
ruijlpires
92ccb629e9 Fix duplicated Authorization headers when renewing a token on a retry (#11513)
Add a leeway time to avoid a skew in the local clock
2022-02-05 14:28:05 +08:00
Justin Black
6cf4e79f14 [python-experimental] adds missing bases, performance improvements (#11517)
* Adds bases for int32, int64, float32, and float64

* Samples updated

* Removes print statements

* When creating properties and items do not call _from_openapi_data or model __new__

* Update speed improvement

* cast_to_allowed_types speeed improvements

* _get_new_instance_without_conversion order swap for speed

* Fixes test errors

* Small fixes about path_to_schemas
2022-02-04 07:47:16 -08:00
y-tomida
7843a45b89 [TypeScript] Fix type array with uniqueItems (#11515)
* fix type mapping

* add missing primitive type Set

* add testcase

* generate new samples

* update typescript generator document

* regenerate samples and documents
2022-02-04 08:04:51 +01:00
Justin Black
4d9a500c95 Adds inline composition examples to python-experimental (#11420)
* Adds component with composition in property example

* Adds endpoint parameter examples

* Adds request body examples

* Adds inpline composition example in response body

* Fixes UNKNOWNBASETYPE import bug

* Updates allof inline schemas to be type object with minProperties

* Removes newline

* Adds test_ObjectWithInlineCompositionProperty

* Updates inline schema to be type string, adds partial test_inline_composition

* Fixes accept_content_types input value

* Adds test_ObjectWithInlineCompositionProperty, adds test_inline_composition and starts deserialization of multipart

* Fixes test_inline_composition, adds simple multipat/form-data deserialization
2022-02-03 08:27:52 -08:00
Bernd Hacker
dc1df25f29 [typescript-rxjs] add rxjs 7 support (#9958)
* feat(typescript-rxjs): add support for rxjs 7.2.0, use type imports

* feat(typescript-rxjs): regenerate samples

* feat(typescript-rxjs): use generic T instead of any in BaseAPI

* feat(typescript-rxjs): regenerate samples
2022-02-03 09:52:01 +01:00
Kasper Peulen
80082c73c4 Typescript-fetch: date is only converted to javascript date with runtime checks enabled (#11481)
* date is only converted to javascript date with runtime checks enabled

* fix test

* fix test
2022-02-02 07:50:45 +01:00
William Cheng
8a2131f25f update slack url 2022-02-01 01:28:57 +08:00
William Cheng
d71904e413 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2022-01-31 15:02:47 +08:00
William Cheng
81adc3cf8c update readme with blog posts related to openapi-generator 2022-01-31 15:00:37 +08:00
cghislai
95c996f866 Revert supports for delete body in typescript-angular client (#10976)
* Update generated angular 12 client version

* Revert "Delete body angular (#10751)"

This reverts commit edb88d9193.

* Update generated files
2022-01-31 07:53:07 +01:00
William Cheng
f77d34b2f2 update readme 2022-01-31 14:29:00 +08:00
William Cheng
0e1164ff6b Merge remote-tracking branch 'origin/6.0.x' 2022-01-31 14:26:14 +08:00
William Cheng
4a36be7002 Prepare 5.4.0 release (#11457)
* prepare 5.4.0 release

* update gradle tests
2022-01-31 13:04:25 +08:00
cachescrubber
b261b29efb [Java/Spring] Revert to fully qualified import for org.springframework.core.io.Resource (#11461)
* Revert to fully qualified import for org.springframework.core.io.Resource

* Generate Samples
2022-01-31 11:14:34 +08:00
Armel Soro
ed14ce4dec [Kotlin] Use mutable container types when 'modelMutable' is enabled (#11154)
* [Kotlin] Use Mutable container types when 'modelMutable' is enabled

* Generate sample 'kotlin' project with mutable models

* Generate sample 'kotlin-server' project with mutable models

* Generate sample 'kotlin-vertx' project with mutable models

* Generate sample 'ktorm-schema' project with mutable models

Co-authored-by: Bruno Coelho <4brunu@users.noreply.github.com>
2022-01-30 12:06:03 +00:00
William Cheng
f79ac98bc3 add C# client generic host author 2022-01-30 18:41:52 +08:00
William Cheng
c8b84c4d03 Merge remote-tracking branch 'origin/master' into 6.0.x 2022-01-30 18:01:35 +08:00
William Cheng
3ed6343933 remove deprecated options in java client generator (#11456) 2022-01-30 15:57:02 +08:00
William Cheng
91087b59c5 remove swift4 generator (#11455) 2022-01-30 15:56:08 +08:00
William Cheng
8b017bc855 mark csharp-nancyfx generator as deprecated (#11454) 2022-01-30 15:53:27 +08:00
William Cheng
35fea62b3b [c#][netcore] mark EOL frameworks as deprecated (#11450)
* removed old frameworks from csharp-netcore

* removed another reference and build samples

* updated readme

* deprecated frameworks

* fix test csproj file

* update doc

Co-authored-by: devhl-labs <shawnkanyer@gmail.com>
2022-01-30 02:01:26 +08:00
William Cheng
e5bb98ce3e [java][spring] use Github action instead (#11441)
* spring ci

* update samples

* remove tests in circleci

* update workflow

* Revert "update samples"

This reverts commit 27acc82171.

* trigger build failure

* Revert "trigger build failure"

This reverts commit a93258468d.

* remove branchs, prs
2022-01-29 17:11:47 +08:00
y-tomida
088c65c9c6 [typescript-axios] Add stringEnums option (#11368)
* add stringEnums option

* update templates

* add export

* update samples

* update document

* improve readability

* remove unnecessary code

* add config file for sample

* add sample

* update sample

* remove enum variable form modelObjetEnum template because this variable is not used in modelStringEnum template.

* change the indentation to be the same as modelGeneric template
2022-01-29 08:07:30 +01:00
William Cheng
b901f11e85 use encode_path instead in crystal (#11439) 2022-01-29 14:01:27 +08:00
Chao Yang
d8f70b3390 Fix crystal code gen null pointer exception error (#11437)
Checks if codegenParameter.items is null in constructExampleCode
2022-01-29 11:02:50 +08:00
Chao Yang
3f0f92fb65 [crystal][client] Make optional properties nillable in models (#10723)
* Add nillable data types to models

Only REQUIRED and NOT NULLABLE variables can NOT have type Nil
All OPTIONAL and NULLABLE-REQUIRED variables have type Nil
Only NULLABLE-REQUIRED variables should emit keys with null values when they are serialized, json example: property name : String? = nil; the json representation for this property is {"name": null}
For all OPTIONAL variables having Nil values, their variable keys would be skipped during serialization. The json representation for OPTIONAL property name : String? = nil;  would be: {}

* Fix failed tests in samples/client/petstore/crystal/spec/api/pet_api_spec.cr

* Remove isNullable from model template

* No need to check nillability of required property

For any required property, assigning nil value to it will result in compilation error
The datatype simply can not hold value nil, so there's no need to check it

* Place required vars first in initializor

* Refresh generated sample code for crystal client

* Required properties are not nillable

* Fix compilation error of undefined method equal?

Crystal lang doesn't have method equal?
We should use method same? instead of ruby's equal? method

Reference: https://crystal-lang.org/api/master/Reference.html#same?(other:Reference):Bool-instance-method

* Add tests for add_pet api endpoint with only required parameters

Setting Pet optional properties to nil values is allowed by add_pet api endpoint

* Add helper method to test compilation errors

* Add tests to Pet model

Test model initializations
Test compilation error when model is initialized without required properties

* Test required properties in json deserialization for Pet model
2022-01-29 10:55:44 +08:00
Antti Leppä
7dad57c8b6 [kotlin-server][jax-rs] Added support for JAX-RS library into Kotlin Server generator (#10830)
* Added templates for Kotlin JAX-RS server

* Fixed Kotlin Server JAX-RS template directory

* Added support for Kotlin Server JAX-RS library

* Added support using coroutines with Kotlin server JAX-RS library

* Added sample for Kotlin server JAX-RS library

* Added support for returnResponse option into Kotlin server JAX-RS library

* Fixed issue with optional parameters in Kotlin JAX-RS spec

* Fixed oneOf issue in Kotlin jaxrs-spec generator

* Added better documentation to Kotlin Server JAX-RS options

* Updated kotlin-server.md

* Updated kotlin-server jaxrs-spec samples

* Fixed issue with Kotlin JAX-RS spec and reserved names

* Regenerated samples
2022-01-29 10:37:51 +08:00
David Gamero
b2bb5d071e [typescript] Adding Custom Agent Support for fetch call (#11400)
* add custom agent support

* samples

* more samples

* merge master files

* only enable custom agent on nodejs not browser

* samples again

* samples

* samples once more
2022-01-28 12:01:32 +01:00
devhl-labs
24366be0db [csharp-netcore] Adding generic host library (#10627)
* added generichost library

* added templates

* added an event, improved docs, added logging

* adding event args file

* fixed hard coded package name

* added an AddTokens overload for a single token

* changed api clients to singletons to support the event registration

* build samples

* log exceptions while executing api responded event

* nrt bug fixes, dangling comma fix

* resolving comments

* removed debugging lines

* refactored token provider

* rate limit provider now default

* updated readme, added ConfigureAwait(false)

* DI fixes

* removed a hard coded project name

* fixed nrt bugs

* improved NRT and .net 3.1 support

* renamed projectName to apiName, added cli option

* trying to avoid conflict

* set GenerateAssemlbyInfo to true

* created docs/scripts folder

* moved ApiTestsBase.cs to not get overwritten

* test fixes and improvements

* fixed licenseId bug, updated readme

* build samples

* export docs

* removed new language features

* added support for .net standard 2.0

* added git_push.ps1

* fixed bug in git_push.sh due to the new directory, prompting user for commit message

* moved documentation folders

* fixed bug when apiKey in query

* bug fix
2022-01-28 12:05:36 +08:00
William Cheng
aed513f65d [TS][nestjs] fix isListContainer with isArray (#11425)
* fix isListContainer with isArray in ts nextjs

* update samples
2022-01-28 10:56:30 +08:00
William Cheng
ff7c2bdb59 comment out groovy test 2022-01-27 21:17:41 +08:00
William Cheng
27d322de56 fix isArray, isMap tag in jaxrs spec templates (#11424) 2022-01-27 21:14:50 +08:00
grzegorz-moto
0bb08a7268 [kotlin] back ticks escaping of keywords and more (#11166)
* fix base class and back-ticks

* back-ticks in key word fix

* back-ticks fix in kotlin keywords

* samples

* remove EOL

Co-authored-by: ags039 <ags039@motorolasolutions.com>
2022-01-26 12:02:21 +00:00
William Cheng
9f02759ae4 update doc 2022-01-26 16:37:39 +08:00
feech
34395c3173 Makes the maven plugin to generate Model-tests and API-tests in generated-test-sources (#11294)
* added support for independent test-folder

* generate updated docs

* generate updated docs

* generate updated docs

* trigger a new CI builds

Co-authored-by: William Cheng <wing328hk@gmail.com>
2022-01-26 16:32:09 +08:00
William Cheng
604c1c0806 update jaxrs cxf, resteasy dependencies (#11414) 2022-01-26 16:23:41 +08:00
William Cheng
adcf04c63b update jaxrs junit to newer version (#11410) 2022-01-26 15:40:24 +08:00
William Cheng
2ebadc36f7 update undertow dependencies (#11411) 2022-01-26 14:54:32 +08:00
William Cheng
209f08e4a4 update doc 2022-01-26 14:54:11 +08:00
Andriy Dmytruk
a0dd025c82 Add Micronaut server generator (#10270)
* Add micronaut server implementation

* Add micronaut server tests and imporovements

* Generate samples, docs and verify that tests pass

* Update micronaut docs and samples after merging with master

* Update micronaut dev server samples

* Add micronuat server docs

* Update micronaut version

* Minor changes to micronaut server and client

* Fix documentation generation in samples

Co-authored-by: Andriy Dmytruk <andriy.dmytruk@andriy.dmytruk.ca.oracle.com>
2022-01-26 13:51:19 +08:00
Jason Finch
066883be58 tidy: [csharp-netcore] Remove redundant useWebRequest tag from templates. (#11398) 2022-01-26 13:39:22 +08:00
Hex052
cdf1943a81 Fix typo in script name (#11402) 2022-01-26 10:50:16 +08:00
jiangyuan
8b3cad0692 [Python] fix model to dict (#11234)
* fix model to dict

* add unit test

* add unit test

* update sample files
2022-01-25 09:50:59 -08:00
William Cheng
5d2a3698e2 [java][okttp-gson-nextgen] update docstring in ApiClient, RetryingOAuth (#11395)
* update docstring in apiclient, retryingoauth (java client)

* update samples
2022-01-25 17:04:32 +08:00
Justin Black
42f3258faa Turns on python-experimental CI tests (#11390)
* Installs python3.9 in node3

* Moves python clients into separate node so they can use a docker image

* Installs java and maven into docker

* Switches off some python tests
2022-01-24 15:44:38 -08:00
Tim Quinn
6ac8d9b123 Change Helidon MP release in generated project from 1.x to 2.x (#11076)
* Support Helidon MP server using Helidon 2.4.1

Signed-off-by: tim.quinn@oracle.com <tim.quinn@oracle.com>

* Add unrelated changed sample file(s) after rebase

* Updated generated samples file after rebasing again

* Remove incorrectly 'git add'ed generated file
2022-01-24 17:22:50 +08:00
William Cheng
d91a2e4221 replace tabs with spaces 2022-01-24 17:10:24 +08:00
sullis
a68babe86d migrate to official Apache Maven Wrapper (#11381)
https://maven.apache.org/wrapper/index.html

https://github.com/apache/maven-wrapper-plugin
2022-01-24 17:07:43 +08:00
vanjur
7f07fa5ba0 [Python] Some regex patterns can generate invalid code. #6675 (#10920)
* fix issue 6675 & add javadoc

* fix formatting issue

* update JUnit test for 6675

* build & update samples for PR

* clean package and regenerating samples

* add progress for fix to issue 10957

* Revert "add progress for fix to issue 10957"

This reverts commit 8240c7ccb1.

* fix version issues

* fix more versioning issues

* fix discrepancies with backslashes

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2022-01-24 16:38:19 +08:00
sullis
0fc3f65ce3 mockito 4.2.0 (#11387) 2022-01-24 15:23:55 +08:00
aderito7
549715ebf2 [docs] use correct separator (#11386) 2022-01-24 11:12:59 +08:00
sullis
57e3ed2930 [java] JavaClientCodegenTest validateJavaSourceFiles (#11379) 2022-01-24 10:46:07 +08:00
sullis
e9d69f2b45 [java] javaparser 3.24.0 (#11382) 2022-01-24 10:42:27 +08:00
Justin Black
78f4748c06 Adds generator default template engine (#11366)
* Revert "Revert "Has generators set default template engine (#11245)" (#11316)"

This reverts commit 57987424a4.

* Only loads in the default template engine if the config file contains the generatorName

* Only sets templatingEngineName using condif default in one place

* Adds config files that lack generatorName

* Revert "Adds config files that lack generatorName"

This reverts commit 7dafc93c0f.

* Adds generator default templating engine to the generator metadata
2022-01-23 14:16:46 -08:00
David Gamero
28cc286265 [typescript] Default auth method support and optional param object when all params optional (#11321)
* add default auth

* private

* default when optional params and fix types

* build samples

* remove extra space

* re-add space before default empty

* switch to default authentication method support in config

* generated samples

* null check chaining

* generate samples

* remove extra spaces

* regen samples

* formatting fixes

* more samples

* remove from abstract methods

* samples

* add default to inversify as well

* samples again

* exclude inversify

* samples once more

* samples
2022-01-22 12:11:04 +01:00
William Cheng
938cc36d1b update node-fetch to newer version (#11378) 2022-01-22 10:18:20 +08:00
William Cheng
0358d6eb71 update api tests to work with nonPublicApi option (#11376) 2022-01-22 09:47:15 +08:00
William Cheng
e0bde82131 update samples 2022-01-22 09:03:50 +08:00
Jochen Fähnlein
d737aa5fb8 Update GlobalConfiguration.mustache (#11359)
[csharp-netcore] corrected visibility of GlobalConfiguration mustache
2022-01-22 08:59:43 +08:00
cachescrubber
e1c5b220cd [JAVA] new Feature interface: Documentation Provider and Annotation Library (#11258)
* Implement DocumentationProviderFeatures and integrate it in AbstractJavaCodegen

* Integrate DocumentationProviderFeatures in SpringCodegen

* Run new test config spring-boot-springdoc

* Do not use Locale.ROOT

* Do not use Locale.ROOT, use NONE instead of empty list

* Revert "Do not use Locale.ROOT"

This reverts commit a0d6aac92b.

* Do not use forbidden APIs

* Fix spring maven plugin example

* Introduce DocumentationProviderFeaturesTest.java

* replace AUTO with preferredAnnotationLibrary

* remove sout.println from Test

* Apply code style.

* Update spring sample configuration to use the new property

* Update samples after merge

* fix atBean import

* Generate all samples

* Add ParameterObject to test

* Allow Subclasses to opt out

* Use OpenAPI 2 (fka Swagger RESTful API Documentation Specification) instead of just "Swagger"

* export generator docs

* Fix typo

* Fix typo - update docs.
2022-01-22 08:51:17 +08:00
William Cheng
20bf0c73f8 remove duplicated else if condition (#11370) 2022-01-21 19:00:59 +08:00
William Cheng
b7c8de9425 update samples 2022-01-21 17:45:53 +08:00
Francisco Cánovas
5e1164c554 fix clone method (#11363) 2022-01-21 17:38:13 +08:00
hackerman
93488f4195 Resolve several issues in generated Go code (#8491)
* [go] use regular stdlib import names

* [go] support primitive oneOf types

See #8489

* [go] improve pbv/pbr handling

Improves the way pass-by-value and pass-by-reference variables are used.

Closes #8489

* [go] improve generated documentation

* [go] adopt pointer changes in interface

* [go] regenerate sample

* [go] resolve pointer issues

* [go] regenerate clients and avoid pointers on primitive return values

* [go] improve Exec() return value handling

* [go] regernate files

* [go] use go modules

* [go] properly handle polymorph decode

If polymorphism without discriminator was used, the previous code was unable to properly decode the vaules. By using a strict decoder, which rejects unknown fields, type guessing now works.

* [go] make GetActualInstance not panic on nil

* [go] return GenericOpenAPIError as pointer

* [go] clarify helper function godoc

* [go] address test regression error type

* [go] regenerate go samples

* [go] resolve go mod issues and test regressions

* [go] resolve merge conflicts and regenerate

* [go] resolve merge conflicts

* [go] Replace spaces with tabs

Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>

* [go] Replace spaces with tabs

Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>

Co-authored-by: Jiri Kuncar <jiri.kuncar@gmail.com>
2022-01-21 16:54:09 +08:00
William Cheng
55ffdb791f mark retry class as static (#11369) 2022-01-21 16:36:19 +08:00
William Cheng
2d927a738b Improve example value handling in C# generators (#11355)
* improve example value handling in C# generators

* fix typo

* update samples
2022-01-19 18:43:39 +08:00
Ananta Dwi Prasetya Purna Yuda
0cb88ce024 [KOTLIN] add modelMutable additional properties parser (#11332)
* [kotlin] add modelMutable parser

* [kotlin] fix kotlin vertx samples
2022-01-18 11:39:29 +00:00
William Cheng
90972c638a add type check in the equal method (#11346) 2022-01-18 18:21:00 +08:00
K Zhang
915af3afcb if discriminator is not defined with useOneOfDiscriminatorLookup set to true, we generated as useOneOfDiscriminatorLookup false (#11178) 2022-01-18 00:08:15 +08:00
William Cheng
c8fff9a621 add 百度营销 as a user of openapi-generator (#11337) 2022-01-17 16:09:49 +08:00
cachescrubber
0f6b620817 [Java Spring OAS3] Minor fixes and general improvements (#11229)
* * Use Relative Imports for org.springframework.core.io.Resource
* api.mustache: Add operationId to atOperation annotation
* Overhaul atSchema annotation in model
* Add spring-stubs-oas3.yaml test config
* Optimize mustache templates
* Use Relative Imports for DateTimeFormat, Pageable and ApiIgnore

* Add spring-stubs-oas3.yaml test config

* Generate all samples

* Explain fromOperation override to support more logic-less templates.

* Support RootUriTemplateHandler from spring-boot

* Revert "Support RootUriTemplateHandler from spring-boot"

This reverts commit 1915f8b19e.

* Evaluate additional property useSpringfox as Boolean

* Generate all samples after merge (java-camel)

* Fix typo

* Move java-camel test deom samples.circleci.spring to samples.circleci profile.

* re-generate all samples after merge

* Generate samples and docs after merge

* Generate samples after merge conflicts resolved
2022-01-17 15:25:50 +08:00
William Cheng
e477538273 better checking for security definitions (#11335) 2022-01-17 11:06:55 +08:00
William Cheng
b2b077f07e clean up default type mapping (#11336) 2022-01-17 11:06:25 +08:00
William Cheng
768795648e add new files 2022-01-17 11:06:09 +08:00
William Cheng
d77acf11b5 update samples 2022-01-17 10:42:49 +08:00
William Cheng
33bce99b8e Avoid using import mapping in model generation (#11217)
* remove import mapping logic in model generation, better handle of file, list

* add new files for file, list

* fix some tests

* update tests, doc

* skip file as reserved word in feign client

* add new files

* remove file from reserved word list in spring generator
2022-01-16 23:57:53 +08:00
Esteban Gehring
3f4e7d8263 Revert "[typescript] Make module usable with esbuild (#11298)" (#11333)
This reverts commit 7129cdebc5.
2022-01-16 16:31:16 +01:00
William Cheng
341ad1fad4 [TypeScript Fetch] Default TypeScript fetch configuration to 3.6+ true #9974 (#11331)
* Default TypeScript fetch configuration to 3.6+ true, as it's been out for a while now

* TypeScript fetch update the three plus CLI option default to true

* Apply doc generator patch

* Build the project and update samples

* remove VERSION

* test ts fetch clients first

* Revert "test ts fetch clients first"

This reverts commit 590a7f2d30.

Co-authored-by: szTheory <szTheory@users.noreply.github.com>
2022-01-16 21:16:01 +08:00
William Cheng
156868e407 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2022-01-16 18:10:51 +08:00
Ananta Dwi Prasetya Purna Yuda
c7d9f5788d [KOTLIN][CLIENT] fix unused library additional properties on kotlin generator (#11328)
* fix `library` additional properties on kotlin generator

* remove duplicated codes in kotlin generators
2022-01-16 10:09:36 +00:00
William Cheng
d001aca6dc Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2022-01-16 17:57:07 +08:00
William Cheng
070f767d80 [C#][netcore] fix bugs in model naming when method names start with a number (#11330)
* first

* fix toModelName in C# generator when handling method names starting with numbers

* remove openapitools.json

* remove file
2022-01-16 17:49:26 +08:00
William Cheng
b8a6921a98 comment out python-legacy test in circleci 2022-01-16 17:21:25 +08:00
Justin Black
ffe5df8fa1 Turns python-legacy CI back on in circle, fixes python-legacy test (#11326)
* Turns python-legacy CI back on in circle, fixes python-legacy test

* Installs python 2.7 into circleci node 3

* Python 2.7 version changed to 2.7

* Switches back to py2714
2022-01-16 17:12:38 +08:00
mactho
5bccbf6734 Fix an issue where moustache template adds an extra null to the generated source code when 'nullable: true' is used in the api spec (#11284)
Co-authored-by: Thomas MacNeil <Thomas.MacNeil@greater.com.au>
2022-01-16 10:39:20 +08:00
mvistein
c12456de8e [Java-okhttp-gson] Do not set content-type if content type is null #2 (#11315)
* Fixing empty Content-Type in HTTP requests

* Updating samples
2022-01-16 10:29:47 +08:00
jiangyuan
0427681bc4 fix java apache-httpclient set basePath (#11277) 2022-01-16 10:23:15 +08:00
Paul-Etienne François
249968e397 [Java][Native] Fix the Content-Type and Accept headers that were forced to application/json (#11303)
* [Java][Native] Fix the Content-Type and Accept headers that were forced to application/json

* Update the generated samples after fixing issue no. 6779
2022-01-16 00:51:40 +08:00
Anakael
1b6d0f8746 Add condition for header (#11325) 2022-01-16 00:18:12 +08:00
Knut Johannes Dahle
692a4db964 Added fix for wrongly encoded backticks when generating kotlin client with reserved words as part of the parameters. Wrote a test verifying that the method signatures is without html encoding for backticks (#11310) 2022-01-15 23:59:42 +08:00
Ethan Keller
6430aaf3b1 recursively search for types during import type collection in deeply … (#11221)
* recursively search for types during import type collection in deeply nested schemas #11220

* composed schema recursive type import handling

* change Importable to ComplexType to modularize related type-wrangling.

* Problems...

* Revert "Problems..."

This reverts commit 6154f202a0f4db7a706fe3d61b45573581d164d4.

* Reverted attempts to reuse recursive type-finding code.

* add javadoc comments

* fix javadoc warning.

* fix NPE

* PR feedback incorporation

* Include additionalProperties recursion.

* More feedback

* More feedback

* Add comments from feedback
2022-01-14 12:39:22 -08:00
Justin Black
57987424a4 Revert "Has generators set default template engine (#11245)" (#11316)
This reverts commit dd3bba8c94.
Because it broke peoples builds per this issue https://github.com/OpenAPITools/openapi-generator/issues/11276
2022-01-14 10:52:36 -08:00
Amelia Raia
d8cb6bd894 Allow the user to pass in any headers per request. #11139 (#11140)
* [Python] Allow the user to pass in any headers per request

* Update docs

* Update docs

Update Docs _headers

* Add test

Co-authored-by: Rizwan Saeed <rizwan.saeed@finbourne.com>
2022-01-13 15:25:40 -08:00
dependabot[bot]
0323708b97 Bump follow-redirects from 1.10.0 to 1.14.7 in /website (#11300)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.10.0 to 1.14.7.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.10.0...v1.14.7)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-14 01:08:40 +08:00
William Cheng
759883f804 minor enhancements to java camel generator (#11296) 2022-01-14 01:08:22 +08:00
Bodo Graumann
7129cdebc5 [typescript] Make module usable with esbuild (#11298)
* Use default import from url-parse

* Update samples

* Fix typo in readme
2022-01-13 17:06:04 +01:00
William Cheng
dff3944d19 update doc 2022-01-13 18:16:48 +08:00
William Cheng
3e8dc31ec5 update samples 2022-01-13 01:49:52 +08:00
Giacomo
2e6e82161f Apache Camel Server Generator (#11162)
* Created Apache Camel language

* Added unit test

* Fix template dir

* Fix description api

* Camel Dataformat Properties

* Apache Camel Doc

* Apache Camel Doc

* Apache Camel Doc

* Apache Camel maven plugin example

* Fix LOGGER

* Samples

* Camel 3.14

* Samples

* samples

* up to date

* Rename camel to java-camel

* up to date

* Fix SerializedName in modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache
2022-01-13 01:28:02 +08:00
William Cheng
69b64ebb0e [kotlin][client] add tests for comma separated list in array path params (#11293)
* add tests for kotlin-array-simple-string

* add new files

* remove build fies

* clean up
2022-01-13 01:26:07 +08:00
Johan Sjöblom
3ed9a8e53c Make Kotlin client generate comma separated list for array path params (#11228) 2022-01-13 00:59:00 +08:00
방진영
69db8176b6 keyword conflict with zebos list_creat(), list_free() (#11190)
* keyword conflict with zebos list_creat(), list_free()

* keyword conflict in zebos list_create list_free
2022-01-13 00:42:58 +08:00
Ashutosh Gangwar
1bfed460c5 Fix missing ApiKeyAuth import in 'jvm-retrofit2' Kotlin client template (#11286)
* fix incorrect ApiKeyAuth import in jvm-retrofit2 kotlin-client template

links to
- https://github.com/OpenAPITools/openapi-generator/issues/10008
- https://github.com/OpenAPITools/openapi-generator/pull/10708

* update kotlin-retrofit2 samples
2022-01-12 19:22:24 +08:00
Justin Black
95a1154c20 python-experimental adds DecimalSchema (#11282)
* Fixes test

* Adds decimal examples to the pythonExp generator

* Adds isDecimal to CodegenModel, updates python-exp samples

* Fixes decimal types in ObjectModelWIthDecimalProperties and DecimalPayload

* Updates tests

* Decimal feature added to python-exp docs

* Samples and docs regenerated
2022-01-11 21:51:50 -08:00
Justin Black
ce04e9b6a2 python-experimental, redundant docstrings removed (#11281)
* Removes docstrings drom models because type hints already includes this info

* Samples updated
2022-01-11 09:31:25 -08:00
jiangyuan
45b66d660a [python] modify python import classVarName to classFileName (#11180)
* fix python import classVarName to classFileName

* add samples change
2022-01-10 23:21:29 -08:00
Justin Black
1f7eebd52d Fixes openapi-generator.tech content, python-exp documentation helpTxt updated (#11273)
* Fixes python-exp line breaks

* Docs updated
2022-01-10 20:11:57 -08:00
Anakael
f06e7c52f4 Add only one auth header (#11272) 2022-01-11 12:09:33 +08:00
joaocmendes
b05faefb93 [BUG][csharp-netcore] Fix Multi Files for the same FormField (#11132) (#11259)
* [BUG][csharp-netcore] Fix Multi Files for the some FormField  (#11132)

Make FileParamerts a Multimap to enable sending more than one file with the same key.

* update documentation for csharp-netcore
2022-01-11 11:02:39 +08:00
Justin Black
de036e211e Improves generator docs: stability + language version added (#11270)
* Adds generatorLanguageVersion and uses it in python generators

* Regenerates docs

* Adds stability to generator docs

* Triple braces generatorLanguageVersion

* Regenerates samples

* Fixes the python-experimental setup.py file so it works with generatorLanguageVersion

* Updates generators readme
2022-01-10 18:16:53 -08:00
Justin Black
0eca629127 Adds generatorLanguage to all generators (#11268)
* Adds generatorLanguage to all generators

* Adds all generator languages and info to docs

* Docs updated
2022-01-10 12:13:35 -08:00
Justin Black
dd3bba8c94 Has generators set default template engine (#11245)
* Adds default template engine to generators

* Fixes sample batch generation
2022-01-10 08:59:20 -08:00
Sorin Florea
a4325ec520 ISSUE-11242: Fix Java native path param encoding (#11257) 2022-01-10 21:23:28 +08:00
Justin Black
d813d04f46 Improves generator docs, adds metadata section (#11262)
* Refactors generator md creation, adds generateMdMetadata

* Removes extra space

* Adds docs updates

* Fixes table definition for metadata

* Docs update

* Docs update

* Updates title, removes sidebar_label because it was not doing anything on pages like https://openapi-generator.tech/docs/generators/android

* Docs updated
2022-01-09 14:10:47 -08:00
carmenquan
478219744e Making PyPi markdown friendly requires additional property (#11093)
* updating python markdown property

* adding to samples
2022-01-09 08:22:11 -08:00
Matthew
e7ca67071e [python] Fix 10773 - Use base_name for file uploads in form data (#11182)
* Use base_name for file uploads in form data

* Added missed sample changes
2022-01-09 08:19:57 -08:00
Akira MATSUDA
febf49662a Make moduleObject.mustache confirms to JSONEncodable. (#11202)
* Make moduleObject.mustache confirms to JSONEncodable.

* Regenerate samples

* Don't confirm JSONEncodable when using Vapor.

* Use CodableHelper.jsonEncoder

* Encode `Data` using `encodeToJSON()`

* Update sample

* Don't extend JSONEncodable when using Vapor.

* Add JSONEncodable in moduleEnum, moduleInlineEnumDeclaration, and modelOneOf

* Update sample

* Remove line break.

* Update sample

* Revert "Update sample"

This reverts commit 6ec206b506.

* Don't confirm JSONEncodable when enum confirms RawRepresentable.

* Update sample

* Add space before {

* Update sample

* Don't confirm JSONEncodable when enum confirms RawRepresentable.
2022-01-09 23:47:03 +08:00
Justin Black
1343024786 Adds fix for broken python test (#11247)
* Adds fix for broken python test

* Removes space

* Fixes another test too
2022-01-06 17:45:49 -08:00
Andreas Allacher
ef882a4e6c Issue 11152: Allow guzzlehttp/psr7 ^1.7 or ^2.0 (#11240) 2022-01-07 09:07:09 +08:00
jiangyuan
e1902257b3 [Python] add '_spec_property_naming' param (#11226)
* add '_spec_property_naming' param

* add '_spec_property_naming' comment

Co-authored-by: jiangyuan04 <jiangyuan04@baidu.com>
2022-01-05 14:26:10 -08:00
Justin Black
88f3db3a6e Adds spacether sponsorship link and python-experimental item (#11237) 2022-01-05 13:05:18 -08:00
Justin Black
3243279b4d Adds python-experimental with dynamic base classes (#8325) 2022-01-05 12:30:49 -08:00
Aliaksei Zhuk
9c3d4ef2a6 Parse integer array query parameters. Fix typos (#11105) 2022-01-04 17:55:18 +08:00
S2021Git
361b593da2 Not creating "Accept:null" header for Java-Jersey2 generator (#11084)
* updated ApiClient.mustache for jersey2

* updated samples

* corrected indentation

* updated samples
2022-01-04 16:41:24 +08:00
William Cheng
98a28a075a update cpp qt5 server samples 2022-01-04 15:21:15 +08:00
Ilario
74f39b442e Bugfix of #11176 and related #10706 CPP-QT-QHTTPENGINE Server (#11177)
* Fix extra m that prevents qt cpp server to build (#11176)

* Fix regular expression to capture IDs on path (#11176)

* Fix build issue missing QHttpEngine namespace (#10706)
2022-01-04 15:14:11 +08:00
Ignacio Campos Rivera
8c090c978d feat(python-asyncio): add support for proxy config using system env vars (#11171)
Co-authored-by: Ignacio Campos <ignacio.campos@global.ntt>
2022-01-04 15:08:03 +08:00
William Cheng
35a2fa6afc move avro-schema.yaml to bin/configs 2022-01-04 15:01:28 +08:00
Mostafa Aghajani
a3b90183aa Fix musache template to use "{{package}}.{{dataType}}" on all non primitive types (#11201) 2022-01-04 14:47:42 +08:00
Sergey Nikolaev
f1b9676f7e update in readme: Manticore Search uses the generator too (#11223) 2022-01-04 14:37:06 +08:00
Yohei Kitamura
5a616757e7 Fix examples for request body with array to not raise java.lang.NullPointerException (#11170) 2022-01-04 14:36:28 +08:00
Yuriy Belenko
0a09f1faa3 [php][bug] Fix DateTime microseconds bug in ObjectSerializer (#11213)
* fixing precision for php

* remove a bracket

* handling whitespace

* format comment

* Use regexp to trim needless microseconds

That way we can save timezone suffix.

Co-authored-by: Carmen Quan <cquan@launchdarkly.com>
2022-01-04 13:41:22 +08:00
William Cheng
9f899c5e6d minor bug fixes in ts fetch generator (#11215) 2022-01-04 13:39:57 +08:00
William Cheng
161de2cfdf update samples 2022-01-03 18:05:08 +08:00
William Cheng
d17a472b89 Merge remote-tracking branch 'origin/master' into 6.0.x 2022-01-03 18:03:00 +08:00
William Cheng
15b228c3ca fix import mapping for JsonValue (#11216) 2022-01-03 17:05:38 +08:00
sullis
6397421399 [scala-gatling] add ScalaGatlingCodegenTest (#11212) 2022-01-03 11:56:58 +08:00
William Cheng
ae880c94a9 various minor bug fixes based on sonar report (#11214) 2022-01-03 11:56:35 +08:00
Thomas Bredzinski
508da12ca7 Add support for asynchronous API for JavaJaxRsSpec (#10919)
* Add support for asynchronous API for JavaJaxRsSpec

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

* Ran the requested command for a PR

Run the following to build the project and update samples:
./mvnw clean package
./bin/generate-samples.sh
./bin/utils/export_docs_generators.sh

* Set java 8 mode when using supportAsync=true

`CompletionStage` are only introduced since 1.8, enabling async should for use java8

Co-authored-by: Thomas Bredzinski <thomas.bredzinski@gemalto.com>
2022-01-03 09:55:01 +08:00
agilob
6c3cdee6fb Dart - update generator to support null safety (#10637)
* fix: Make dart2 generated code compilable

* Update dart2 client samples

* Re-add deleted test files

* Lower dart version to 2.12

* Make username and pass not null in http basic auth

* Delete json_serializable

* Make growable false by default

* Make value not nullable

* Remove redundant null check

* Revert linter fix

* Provide required username and pass

* Revert initial abstractDartCodeGen changes

* Revert removing dart pom module

* Revert removing dart pom module

* Lower minimum dart version to 2.12

* Disable dart2 tests generation

* Disable petstore_client_lib

* Disable samples/openapi3/client/petstore/dart2/petstore

* Re-add dart2 tests

* Add new tests

* Delete empty directory

* api_client.mustacheUpdate 

added optional HttpBearerAuth so you can add the token directly on the ApiClient

* Update api_client.dart

auto generated files for build

* Update api_client.dart

Autogenerated files for buiild

* Make mapDateTime nullable and add ! after json mapping

* Fix warning on Future<?>

* Fix warning on Future<?>

* Dont insert unused param to constructor

* Modified Dart2 Mustache template.

* Regenerated Petstore source code.

* Remove extra code to sync with agilob's pr.

* Regenerated Petstore source code.

* Fix a couple of reported bugs.

* Regenerated Petstore source code.

* Make properties non-nullable.

* Regenerated Petstore source code.

* Do not trim user input before submitting.

* Regenerate Petstore source code.

* Regenerate Petstore source code.

Co-authored-by: Kate Döen <kate@stack11.io>
Co-authored-by: Artur Powroznik <arturp@backbase.com>
Co-authored-by: devjakobsen <94956607+devjakobsen@users.noreply.github.com>
Co-authored-by: Noor Dawod <noor@fine47.com>
2022-01-02 21:13:02 +08:00
cachescrubber
e71ee1bf43 [Java Spring OAS3] Fix numerous OAS3 related Bugs (#11181)
* Oas3: Remove swagger2 ApiModel and ApiModelProperty from imports when oas3 is true.

* Oas3: Use either swagger v2 or v3; add test config

* Oas3: allowableValues and defaultValues belong to the Schema annotation

* Oas3: use swagger-core.version property in all pom.xml

* gh-11165 remove io.swagger.v3.oas.annotations.parameters.RequestBody

* gh-11168 add import for io.swagger.v3.oas.annotations.Hidden

* Fix formParams.mustache, add dedicated test scripts for the spring generator using oas3.

* Run ./bin/generate-samples.sh

* Run ./bin/generate-samples.sh - new samples

* fix indentation

* Revert to threetenbp 2.9.10 because customInstantDeserializer.mustache is not compatible with threetenbp > 2.9.10.

* apiController.mustache: pull in osa3 imports.

* apiDelegate.mustache: remove io.swagger.annotations.* import

* Remove Hidden (import and usage). Wrap atApiIgnore with useSpringfox.

* fully qualify org.springframework.data.domain.Pageable because endorExtensions.x-spring-paginated is not set during import processing.

* align spring-cloud and spring-boot pom.mustache regarding springfox and oas versions.

* introduce dateTimeParam.mustache

* Apply DateTimeFormat consistently across different parameter types

* revert to springfox 2.9.2

* add newline after parameter

* fix atSchema annotation (use empty description)

* add more spring-*-oas3 test configs

* Update bin/config/spring* test samples

* Fix implicitHeader.mustache - add import, generate use paramDoc.

* rename spring-boot-implicitHeaders-oal3.yaml to spring-boot-implicitHeaders-oas3.yaml

* Add spring oas3 configs to samples.circleci profiles module list

* Use groupId 'org.openapitools.openapi3' for oas3 configs

* Run all spring test configs.

* In OAS3, allowableValues is a String[] array.

* formParams.mustache: Align spacing and newlines with other param templates

* Support @Parameter(hidden = true) instead of ApiIgnore, Formatting: One parameter per line.

* Format method level annotations in api.mustache

* Introduce samples.circleci.spring profile

* Generate all spring samples
2022-01-02 21:05:46 +08:00
William Cheng
b0c0461d27 update samples 2022-01-02 20:54:05 +08:00
bflamand
5152f8dee0 Java playframework: add support for oauth2 accesstoken validation (#10901)
* first commit: add cli option for saga and records. Added dummy sagas.mustache test file.

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

* record generation complete

* record generation complete

* progress with saga generation

* progress with saga generation

* first fully working saga generation

* merge with latest master

* removed unneeded "items" properties.

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

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

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

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

* added the missing "allSagas" export.

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

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

* added autodetection for passthrough to simplify standardised specs.

* fix small issue with passthrough void

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

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

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

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

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

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

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

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

* - missing ganarate sampless

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

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

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

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

* - minor tweak for apiEntitySelector to accept null id

* - minor tweak for apiEntitySelector

* - runned ensure up to date.

* Revert "- runned ensure up to date."

This reverts commit ea9b4aed

* - runned ensure up to date.

* - runned ensure up to date.

* - added more enhancements: New "toInlined" functionality. Support for more complex double array types. apiBaseConfiguration is not sent completely for Api.init().

* - merge master

* - fix generated api bug in some cases for typescript fetch when no request params are present.

* - commented broken tests

* - fix generate samples analysis.

* - work in progress for playframework swagger upgrade

* - first working output for playframework with oauth support for access code flow.

* update surefire to newer version

* added new sample project "...playframework-with-security.yaml" and improved tab in generated output for controllerImp files.

* split SecurityAPIUtil into more granular and useful functions.

* minor fix to have tab instead of spaces in securityapiutils mustache file

* added missing generated samples.

* added missing securityAPIUtils injection in generated "Controller" classes when "useInterfaces = false"

* added missing securityAPIUtils import

* added missing securityAPIUtils import for no-interface samples files.

* minor tweak: changed order of import for securityApiUtils

* minor tweak: changed order of import for securityApiUtils

* fix: securityApiUtils was incorrectly declared with "throws Exception"

* minor code tweak.

* fix potential runtime throw in SecurityApiUtils if playframework configuration variables are not found. fix minor issue with space vs tab in mustache files. Fix compilation issues in some cases when using async mode.

* run ensure-up-to-date and generate-samples

* Revert "run ensure-up-to-date and generate-samples"

This reverts commit da4d3ac755.

Co-authored-by: Bruno Flamand <bflamand@stingray.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2022-01-02 20:45:33 +08:00
KristopherTadlock
a20cee3024 Add isSkipOperationExample check before generating op.requestBodyExamples in the DefaultCodeGe. This avoids the running out of heap space error one gets when generating a large spec file (#11144)
Co-authored-by: Kristopher Tadlock <tadlockk@infintech.com>
2022-01-02 18:14:46 +08:00
William Cheng
2db3e6bb25 update java samples 2022-01-02 17:55:26 +08:00
Marc Miltenberger
783f843690 [Java-OKHTTP-GSON] Do not set content-type if content type is null (#11199)
Co-authored-by: Marc Miltenberger <Marc.Miltenberger@sit.fraunhofer.de>
2022-01-02 17:33:41 +08:00
William Cheng
238639a500 update java sampes 2022-01-02 17:28:17 +08:00
Alan Morgan
9f4f2fde47 [GH-11032] Bug - Allow query parameters than contain spaces for Java client. (#11160)
The java client doesn't allow query parameters that have a value of just "%20"
or "%0A". Those can now be values with this commit.
2022-01-02 17:23:39 +08:00
William Cheng
5f5a83a592 fix enum name in okhttp-gson-nextgen (#11210) 2022-01-02 16:37:16 +08:00
William Cheng
12e03b1937 Merge remote-tracking branch 'origin/master' into 6.0.x 2022-01-02 15:41:37 +08:00
sullis
8d532d5a38 [scala-gatling] use the official Gradle plugin (#11208) 2022-01-02 14:53:30 +08:00
Jarrod Parkes
9c3cba9b86 [swift5] Add property x-null-encodable extension for full control over encoding value/nil or nothing (#11141)
* feat(ISSUE-11033): add null encodable type and mustache changes

* feat(ISSUE-11033): regen all swift5 samples

* feat(ISSUE-11033): add swift5 examples of null encodable

* feat(ISSUE-11033): fix hashable and compliation issues

* fix(ISSUE-11033): fix tests by using new enum encodeValue

* fix(ISSUE-11033): fix tests by using new enum encodeValue

* fix(ISSUE-11033): revert status back in pet api test

* fix(ISSUE-11033): fix issue with objc compat generator

* feat(ISSUE-11033): restore default values to null encodables

* chore(ISSUE-11033): rename default value for null encodable

* chore(ISSUE-11033): add test cases with different nullable defaults
2022-01-02 14:51:15 +08:00
Hiromi Hishida
8a3b434d54 [php] Handle \SplFileObject before primitive(to avoid php8 settype() error) (#11184)
* Handle \SplFileObject before primitive(to avoid php8 settype() error)

* Add test case

* Add array check to fix type error

Code throws error:
array_key_exists() expects parameter 2 to be array, null given
When $httpHeaders argument is null.

Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
2021-12-30 13:57:01 +03:00
jiangyuan
48a8f255c9 fix CI Docs build fail (#11196)
Co-authored-by: jiangyuan04 <jiangyuan04@baidu.com>
2021-12-29 20:25:43 +08:00
William Cheng
d485391051 update rust samples 2021-12-29 11:54:45 +08:00
Šimon Lukašík
08773a211c Rust Client: Support collectionFormat="multi" (#11169)
Previously, rust-client generator disregarded collectionFormat property of
multi-value parameters. Now we support following values in collectionFormat: "",
"csv", "multi".

You can review changes this creates for fairly sizable project at https://github.com/CrowdStrike/rusty-falcon/pull/33/files
2021-12-29 11:50:08 +08:00
Yuriy Belenko
aa61220db2 [php-slim4] Add dependency injection container 2 (#11159)
* Change packages order alphabetically

* Add PHP-DI package to Composer template

* Remove ContainerInterface from APIs

User shouldn't access container directly, it's an anti-pattern.

Ref: https://php-di.org/doc/best-practices.html#rules-for-using-a-container-and-dependency-injection

* Change app templates to use PHP-DI

Application looks more like a default Slim skeleton now.

Ref: https://github.com/slimphp/Slim-Skeleton

* Rename SlimRouter to RegisterRoutes

Since it's callable class new name fits better.

* Add short documentation

* Refresh samples
2021-12-29 10:57:19 +08:00
Justin Black
ac55ac9d55 Samples and docs regenerated (#11194) 2021-12-28 11:39:13 -08:00
Jason Kaiser
02a51579be [typescript-angular] Support blob response types (#11085)
* Fixed issue 11021 by changing the responseType to blob for accept headers that don't match text or json.

* Updated samples.

* Updated inline json pattern matching with an existing utility method.

* Updated samples.

* Fixed isJsonMime call.

* Updated samples.

* Fixed default response type of json when accept header is not given.

* Updated samples.
2021-12-24 16:51:31 +01:00
Vesa Poikajärvi
7ffd0711c3 [typescript-axios] Add option to add NodeJS imports (#10990)
* [typescript-axios] Add new option to generate imports from 'url'

* Added new option `withImportUrl` to be used to generate the imports needed
  for NodeJS support without adding DOM to TypeScript libs

* [typescript-axios] Add withImportUrl support to templates

* Generate imports from 'url' if withImportUrl is set to true

* [typescript-axios] Generate new samples using withImportUrl

* [typescript-axios] Add withImportUrl to documentation

* [typescript-axios] Regenerate docs, build was still ongoing and used old param name

* [typescript-axios] Rename withImportUrl to withNodeImports

* Rename the parameter to support other Node imports
* Add imports for form-data too if using multipartFormData
* Add fix for multipart headers when running in Node with form-data package
2021-12-24 16:49:36 +01:00
David Gamero
0bbd1e59e9 useSingleRequestParameter should mark parameter optional if all properties are optional (#11135)
* useSingleRequestParameter should mark parameter optional if all properties are optional

* update samples
2021-12-24 16:46:02 +01:00
William Cheng
588cd15323 fix openapi-generator-cli version 2021-12-22 00:42:28 +08:00
William Cheng
8d16239aab Merge remote-tracking branch 'origin/5.4.x' 2021-12-21 22:04:47 +08:00
William Cheng
82b77a099a update readme 2021-12-21 19:13:29 +08:00
William Cheng
6269a9810c Prepare 5.3.1 release (#11161)
* prepare v5.3.1 release

* update samples
2021-12-21 18:20:13 +08:00
William Cheng
e3788ce44e update doc for okhttp-gson-nextgen 2021-12-21 15:48:47 +08:00
Bruno Coelho
c305c71715 [DefaultCodegen] generate unknown default case (#11078)
* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] replace Swift custom implementation with the DefaultCodegen implementation

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] update docs

* [DefaultCodegen] fix Swift enum case name

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case
2021-12-21 15:40:13 +08:00
William Cheng
1757c4d2ea Test kotlin volley sample in the CI (#11156)
* test kotlin volley sample in the ci

* update samples

* Revert "update samples"

This reverts commit 9a0da13076.
2021-12-20 17:44:18 +08:00
alisters
0de482da2b Kotlin client: add volley library support (#10253)
* Add basic jvm-volley folder to enable it as a library

* Add JVM_VOLLEY to the KotlinClientCodegen as a library option (using Retrofit2 processing for now)

* Temporary checkin of generated code and kotlinfied version for use in new template

* Added Kotlin-ified api invoker and request objects, update Kotlin client codgen for volley

* Add Android specific build.gradle mustache file to jvm-volley library

* Hardcode SDK version and build tools version in build.gradle template, add extra repository for Android Gradle build tools

* Add Android manifest to generated code

* Add Kotlin dependencies and plugins to build gradle template

* WIP: Create basic API templating for jvm-volley

* Add ApiException and parameter validation, create path variable using ApiInvoker

* Build queryParams and headerParams

* Add VolleyRequest template

* WIP: Injecting context and default API invoker into APIs (non compiling)

* Add DefaultInvoker stub and update API to inject context

* Add request queue generation to the DefaultInvoker

* Fix up compile errors in the invoker

* Cleanup unrequired templates

* Update templates

* Add constructor overloads to inject stack or network into request queue

* Fix compile errors with request queue generation

* Fix compile errors

* Al'll fix it for you.....

* WIP compile fixes

* More compile fixes

* Generate to java directory and kotlin-ify auth code

* More syntax fixes in templates

* Almost left it in a working state, fixing that .... now...

* Switch builder method based on model existence constraints - body and response

* Add coroutine logic to APIs and pass through listeners to the requests, various other fixes.

* Use reflection and type tokens to work around clazz issues on generics

* Add POST, PATCH and PUT to RequestFactory

* More templating magic

* Fix Steve, the human compiler's errors again !

* Add CLI option for generating room models

* Configure the room model package

* Add initial room model templating and generation

* Add room model generation implementation

* Implement toRoom function on models to convert model to room model

* Bug fixes, transformers to and from room models

* Add query parameters to URL generation

* Fix issues with gson type conversion, add type adapters to gson instance

* Fix issues with older API versions and Java8 libraries,

* Add request factory interface

* API template tidy up

* Update IRequestFactory to include companion object, minor tidy ups

* Remove @Keep annotations from room templates

* Rename toRoomModel and toApiModel functions

* Add empty companion object to generated room model

* Add ITransformStorage interface to allow polymorphic transforms to room models

* Add content type into GsonRequest

* Move gson serialization of request body into GsonRequest

* Update request factory to take header factories

* Remove the generated comparision code

* Move the generateRoomModels switch into the KotlinClientCodegen class

* Move room model generation out of default generator

* Updates for auth

* Finalise removal of kotlin elements from default generator

* Hoist room model logic out of abstractKotlin into kotlin client codegen

* Revert AbstractKotlinCodegen

* Revert Codegen constants to remove base generator changes out of our new library

* Revert data class template changes, add data class body check to Kotlin Client codegen

* Add sample generation yaml file for jvm-volley library

* Update JVM-Volley readme for generateRoomModels flag

* Remove unused template files, get auth compiling but non functional, clean build of warnings

* Generate sample generated code

* Add not implemented method for oauth

* Add unit test for KotlinClientCodegen generateRoomModel flag

* Remove accidental hard coding of src/main/java source folder

* Push changed generated sample files

* Move and rename IStorable inside the volley library

* Inject retry policy into API definition, re-run sample and doc scripts

* Add generic post processors

* Update samples after generator changes

* Fix some compile errors with the pet store sample

* Fix duplicate auth companion object and import generation

* Reinstate query and form parameter code generation

* Add check for unsupported serialization libraries

* Fix broken unit tests

* Regenerate samples

* AN-233 Update request factory to allow custom gsonadapters

* update `GsonRequest.mustache` and `RequestFactoy.mustache` to use `Map<Type, Any>` instead of `Map<Type, Object>` to better fit kotlin conventions

* Update readme with better examples and design notes

* Update readme with info about gson serializers and adapters for polymorphic types

* Updated samples

* Merge from upstream

* Address review comments

* Update samples

* Samples

* Update docs

* Remove DateAdapter generated file, template and it's inclusion as a supporting file in favour of localDateTime

* Review comment cleanup for initial PR #10253 - cleaner auth key in parameter string handling

* Review comment - add a kotlin version parameter to the build scripts

* Updated samples

* Missing changes from build.mustache

* Regenerate samples for build.gradle changes

* Merge from master and generate samples

* Remove serializer as a supporting file from jvm-volley - it's serialisation is not a singleton and configured differently via gson request and dependency injection

* Remove singleton serializer from jvm-volley generation as it's not used

Co-authored-by: Alister Shipman <alister.shipman@greater.com.au>
Co-authored-by: Steve Telford <steven.telford@greater.com.au>
Co-authored-by: Leigh Cooper <leigh.cooper@greater.com.au>
Co-authored-by: Michael Hewett <y2trooper@gmail.com>
2021-12-20 14:59:11 +08:00
William Cheng
b72eba90cd [java][okhttp-gson-nextgen] better oneOf implementation (#11146)
* add validJsonObject method

* add check for null

* fix list model generation

* fix optional fields validation

* add tests

* fix variable naming

* update tests

* add fromJson in oneOf, add tests

* convert JSON to static

* remove trailing space

* add fromString methods to all models

* add toJson, fix anyOf template

* remove workarounds

* undo changes to tests

* skip file schema test

* add new file
2021-12-18 23:22:55 +08:00
Yuriy Belenko
d65bf8d1a6 [php-slim4] Partial generation (#11069)
* Update tests folder

I forgot to update tests folder in latest PR. Fixing my mistake.

* Implement part generation
2021-12-17 16:11:06 +08:00
Yuriy Belenko
7dbcac3b6c [php-slim4] Switch to Packaged Body Parsing Middleware (#9562)
* Remove custom JSON parsing middleware

* Enable packaged Body Parsing Middleware

Ref:
https://www.slimframework.com/docs/v4/middleware/body-parsing.html

* Refresh samples
2021-12-17 15:24:21 +08:00
Hui Yu
490377c7b0 [C][Client] Support custom data type e.g.IntOrString (#11074) 2021-12-17 13:01:37 +08:00
Michael Brügmann
1e3dd1f7c8 [Swift5] replace special characters in Swift enum var name (#11131)
* replace replaceSpecialCharacters in enum var names

* test special characters in enum var names

* ./bin/utils/export_docs_generators.sh

* bring back replacement check for whole string

* Revert "./bin/utils/export_docs_generators.sh"

This reverts commit 63dfd33dd3.

Co-authored-by: Michael Brügmann <mail@michael-bruegmann.de>
2021-12-17 12:14:20 +08:00
Tal Kirshboim
acadba4bfb Declare Kotlin API classes as open (#11129) 2021-12-17 12:12:47 +08:00
Josh Burton
6f6d4f8c02 [dart-dio-next] Removes dioLibrary option (#10931)
As there is no longer a fork of the dio library this option can be removed
2021-12-17 10:36:42 +08:00
Samuel Nelson
80d1eedc20 Fix deprecation issue since akka-http 2.6 (#11048) 2021-12-17 10:20:26 +08:00
Bruno Coelho
42d635b463 [swift5][client] improve code formatting (#11124)
* [swift][client] improve code formatting with multiple response as

* [kotlin][vertx] update sample project
2021-12-17 10:19:41 +08:00
Mostafa Moradian
fedc54af9a [K6 Generator] various enhancements (request body example data extraction, support for generating scenario tests and load tests out of the box, and much more) (#11106)
* Further K6 OpenAPI generator enhancements

 * request body example data extraction
 * request grouping and ordering
 * response visibility
 * request data extraction for chaining requests

Signed-off-by: Michael H. Siemaszko <mhs@into.software>

* Further K6 OpenAPI generator enhancements

 - regenerated samples

Signed-off-by: Michael H. Siemaszko <mhs@into.software>

* Fix suggested changes by linter

* Fix extra spaces in the template

* Log exception

* Rename function signature to camelCase

* Address comments on Big-O

* Move declaration of variable near the usage

* Add config file for generating k6 script

* Regenerate k6 script

* Regenerate samples

* Fix predicate

* Fix missing import

Co-authored-by: Michael H. Siemaszko <mhs@into.software>
2021-12-17 10:18:10 +08:00
dependabot[bot]
94e3ae10fd Bump actions/upload-artifact from 2.2.4 to 2.3.1 (#11136)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2.2.4 to 2.3.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.2.4...v2.3.1)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-17 10:14:41 +08:00
dependabot[bot]
2e08c5f403 Bump actions/download-artifact from 2.0.10 to 2.1.0 (#11066)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2.0.10 to 2.1.0.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v2.0.10...v2.1.0)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-17 10:14:29 +08:00
Tomáš Čermák
9b65513bb1 [Protobuf-Schema] Namespace updates (#11115)
* [Protobuf-Schema] Namespace updates

* [Protobuf-Schema] Petstore sample updated
2021-12-17 10:12:11 +08:00
agilob
ebb69147a5 Forbid using standard streams in archunit (#11130) 2021-12-17 10:11:36 +08:00
William Cheng
27e6d08be4 skip okhttp-gson-nextgen ci test 2021-12-15 17:47:20 +08:00
William Cheng
0eec937845 update samples 2021-12-07 00:28:43 +08:00
William Cheng
e00efe7c8d Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-12-07 00:12:13 +08:00
William Cheng
676da0e778 update samples 2021-12-07 00:11:40 +08:00
William Cheng
2b7910c875 Merge remote-tracking branch 'origin/master' into 5.4.x 2021-12-06 23:57:07 +08:00
WILLIAM CHENG
c619f7fd63 fix java okhttp oauth test 2021-11-21 11:29:00 +08:00
WILLIAM CHENG
06f97b465d update samples, fix merge conflicts 2021-11-21 10:00:44 +08:00
WILLIAM CHENG
eb75515715 Merge branch '5.4.x' into 6.0.x 2021-11-21 09:50:47 +08:00
WILLIAM CHENG
f6001c2768 update samples 2021-11-21 09:50:10 +08:00
WILLIAM CHENG
78fe5dc427 Merge remote-tracking branch 'origin/master' into 5.4.x 2021-11-21 09:43:21 +08:00
agilob
bd61978b5f Remove deprecated PhpSilexServerCodegen (#10852) 2021-11-21 09:04:13 +08:00
agilob
535b9e22d0 Remove deprecated TypeScriptAngularJsClientCodegen (#10850) 2021-11-21 09:03:11 +08:00
agilob
42cb72ec74 Remove kotlin-server-deprecated generator (#10851) 2021-11-21 09:02:26 +08:00
Adriano Vega Llobell
a77a90f545 [csharp] Fix generation inconsistency of test folder (#10738)
* Use the specified 'sourceFolder' from additional properties for the 'testFolder' property.
2021-11-09 15:56:10 +08:00
WILLIAM CHENG
29be352deb Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-11-02 12:59:35 +08:00
WILLIAM CHENG
025e560985 Merge remote-tracking branch 'origin/master' into 5.4.x 2021-11-02 12:51:52 +08:00
William Cheng
48f81eef45 use IllegalArgumentException instead (#10745) 2021-11-02 12:47:15 +08:00
WILLIAM CHENG
4f2b5ee36d Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-11-01 00:54:44 +08:00
WILLIAM CHENG
ab603a7322 Merge remote-tracking branch 'origin/master' into 5.4.x 2021-11-01 00:49:06 +08:00
WILLIAM CHENG
c59a987e00 update meta codegen 2021-10-25 13:44:34 +08:00
WILLIAM CHENG
3594b3452d Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-10-25 13:31:12 +08:00
WILLIAM CHENG
42f4e863b7 prepare 5.4.0-SNAPSHOT 2021-10-25 12:13:33 +08:00
WILLIAM CHENG
afacdb229a Merge remote-tracking branch 'origin/master' into 6.0.x 2021-10-23 10:16:27 +08:00
William Cheng
7b7d7db0c7 [Java][okhttp] rename enum (#10642)
* rename java enum with uppercase

* add tests for snake case lambda

* update file header

* update feign templates with new enum names

* update okhttp template wth lambda

* fix tests
2021-10-23 10:15:30 +08:00
WILLIAM CHENG
df197e4a91 Merge remote-tracking branch 'origin/master' into 6.0.x 2021-10-22 11:57:00 +08:00
William Cheng
681578d1b5 rename enum constants (#10631) 2021-10-22 09:26:48 +08:00
WILLIAM CHENG
e85c67edc7 Merge remote-tracking branch 'origin/master' into 6.0.x 2021-10-22 09:17:23 +08:00
William Cheng
730636ad31 Merge remote-tracking branch 'origin' into 6.0.x 2021-10-19 12:55:59 +08:00
agilob
c2186a0b0d Flash: remove (#10535) 2021-10-09 15:51:45 +08:00
agilob
5b1b74e48d Dart-jaguar: remove (#10534) 2021-10-08 10:47:17 +08:00
William Cheng
59ddcc31ab update samples 2021-10-06 12:13:24 +08:00
William Cheng
0bfa28f844 Merge remote-tracking branch 'origin/master' into 6.0.x 2021-10-06 12:00:02 +08:00
William Cheng
a55f8afc81 update samples 2021-09-22 14:09:54 +08:00
William Cheng
acd747ca6d Merge remote-tracking branch 'origin/master' into 6.0.x 2021-09-22 12:13:44 +08:00
Fernando Fernández
b01e3c9613 [typescript-axios] Use CommonJS when using ES5 as target as per Typescript docs (#10316)
* [typescript-axios] Use CommonJS when using ES5 as target as per Typescript docs

* [typescript-axios] Restore original identation
2021-09-03 13:33:54 +02:00
Fernando Fernández
a447df04bd [typescript-axios] Properly emit module as ES6 instead of commonJS when using ES6 (#10308) 2021-09-01 21:15:00 +02:00
William Cheng
ff6ff6e81a update samples 2021-09-01 14:25:22 +08:00
William Cheng
0357b80f19 Merge remote-tracking branch 'origin/master' into 6.0.x 2021-09-01 14:16:17 +08:00
William Cheng
eaa76f8e1f Merge remote-tracking branch 'origin/master' into 6.0.x 2021-08-17 18:10:59 +08:00
William Cheng
ab5ab94bf2 update samples 2021-07-27 11:58:05 +08:00
William Cheng
b799ca9ee0 Merge remote-tracking branch 'origin/5.3.x' into 6.0.x 2021-07-27 11:52:19 +08:00
William Cheng
05e4c3cf64 update samples 2021-07-12 17:15:22 +08:00
William Cheng
35f933b27f Merge remote-tracking branch 'origin/5.3.x' into 6.0.x 2021-07-12 17:11:35 +08:00
William Cheng
702e274659 update samples 2021-05-13 18:51:38 +08:00
William Cheng
5e29d61639 Merge remote-tracking branch 'origin/master' into 6.0.x 2021-05-13 18:44:58 +08:00
William Cheng
b63d735312 update samples 2021-04-28 21:14:23 +08:00
William Cheng
3e58b0908c Merge remote-tracking branch 'origin/5.2.x' into 6.0.x 2021-04-28 18:08:24 +08:00
William Cheng
a35e9b590c Merge remote-tracking branch 'origin/5.2.x' into 6.0.x 2021-03-30 13:18:35 +08:00
William Cheng
a078b1d826 Merge branch '5.2.x' into 6.0.x 2021-03-29 12:56:33 +08:00
William Cheng
95d356ab6b Merge remote-tracking branch 'origin/5.2.x' into 6.0.x 2021-03-21 01:10:46 +08:00
William Cheng
ad137ec84a update samples 2021-03-13 23:38:17 +08:00
William Cheng
3909505c5b Merge remote-tracking branch 'origin/master' into 6.0.x 2021-03-13 23:26:43 +08:00
William Cheng
ddc38b27bb Merge remote-tracking branch 'origin/master' into 6.0.x 2021-03-05 00:06:38 +08:00
William Cheng
2b3b5a71cf update samples 2021-03-03 16:29:52 +08:00
William Cheng
d96197bcbd Merge remote-tracking branch 'origin/master' into 6.0.x 2021-03-03 16:19:20 +08:00
William Cheng
6ff5fe4495 update samples 2021-02-12 20:21:39 +08:00
William Cheng
b4f4d7434b Merge remote-tracking branch 'origin/master' into 6.0.x 2021-02-12 18:48:20 +08:00
William Cheng
0fdb003e57 update samples 2021-02-02 22:16:35 +08:00
William Cheng
2c457a458e Merge remote-tracking branch 'origin/5.1.x' into 6.0.x 2021-02-02 21:43:53 +08:00
William Cheng
a96febaba8 update samples 2021-01-28 17:41:48 +08:00
William Cheng
694b10e41c Merge remote-tracking branch 'origin/5.1.x' into 6.0.x 2021-01-28 16:47:55 +08:00
William Cheng
52065cc1c5 Merge remote-tracking branch 'origin/5.1.x' into 6.0.x 2021-01-18 12:40:31 +08:00
William Cheng
5e1aa98bb0 fix merge conflicts 2021-01-09 00:50:37 +08:00
William Cheng
64ae0eed04 Merge remote-tracking branch 'origin/5.1.x' into 6.0.x 2021-01-09 00:15:53 +08:00
William Cheng
4261252491 prepare 6.0.0 snapshot release 2020-12-21 16:39:40 +08:00
9828 changed files with 412482 additions and 194726 deletions

View File

@@ -1,16 +1,135 @@
version: 2
version: 2.1
commands: # a reusable command with parameters
command_build_and_test:
parameters:
nodeNo:
default: "0"
type: string
steps:
# Restore the dependency cache
- restore_cache:
keys:
# Default branch if not
- source-v2-{{ .Branch }}-{{ .Revision }}
- source-v2-{{ .Branch }}-
- source-v2-
# Machine Setup
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# The following `checkout` command checks out your code to your working directory. In 1.0 we did this implicitly. In 2.0 you can choose where in the course of a job your code should be checked out.
- checkout
# Prepare for artifact and test results collection equivalent to how it was done on 1.0.
# In many cases you can simplify this from what is generated here.
# 'See docs on artifact collection here https://circleci.com/docs/2.0/artifacts/'
- run: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
# This is based on your 1.0 configuration file or project settings
- run:
command: sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java; sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac; echo -e "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $BASH_ENV
- run:
command: 'sudo docker info >/dev/null 2>&1 || sudo service docker start; '
- run:
command: |-
printf '127.0.0.1 petstore.swagger.io
' | sudo tee -a /etc/hosts
# - run: docker pull openapitools/openapi-petstore
# - run: docker run -d -e OPENAPI_BASE_PATH=/v3 -e DISABLE_API_KEY=1 -e DISABLE_OAUTH=1 -p 80:8080 openapitools/openapi-petstore
- run: docker pull swaggerapi/petstore
- run: docker run --name petstore.swagger -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- run: docker ps -a
- run: sleep 30
- run: cat /etc/hosts
# Test
- run: mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run:
name: "Setup custom environment variables"
command: echo 'export CIRCLE_NODE_INDEX="<<parameters.nodeNo>>"' >> $BASH_ENV
- run: ./CI/circle_parallel.sh
# Save dependency cache
- save_cache:
key: source-v2-{{ .Branch }}-{{ .Revision }}
paths:
# This is a broad list of cache paths to include many possible development environments
# You can probably delete some of these entries
- vendor/bundle
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle
- ~/.cache/bower
- ".git"
- ~/.stack
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
- ~/R
# save "default" cache using the key "source-v2-"
- save_cache:
key: source-v2-
paths:
# This is a broad list of cache paths to include many possible development environments
# You can probably delete some of these entries
- vendor/bundle
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle
- ~/.cache/bower
- ".git"
- ~/.stack
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
- ~/R
# Teardown
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# Save test results
- store_test_results:
path: /tmp/circleci-test-results
# Save artifacts
- store_artifacts:
path: /tmp/circleci-artifacts
- store_artifacts:
path: /tmp/circleci-test-results
command_docker_build_and_test:
parameters:
nodeNo:
default: "0"
type: string
steps:
# Machine Setup
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# The following `checkout` command checks out your code to your working directory. In 1.0 we did this implicitly. In 2.0 you can choose where in the course of a job your code should be checked out.
- checkout
# Prepare for artifact and test results collection equivalent to how it was done on 1.0.
# In many cases you can simplify this from what is generated here.
# 'See docs on artifact collection here https://circleci.com/docs/2.0/artifacts/'
- run: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
# This is based on your 1.0 configuration file or project settings
# - run:
# command: sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java; sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac; echo -e "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $BASH_ENV
# - run:
# Test
# - run: mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run:
name: "Setup custom environment variables"
command: echo 'export CIRCLE_NODE_INDEX="<<parameters.nodeNo>>"' >> $BASH_ENV
- run: ./CI/circle_parallel.sh
# Teardown
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# Save test results
- store_test_results:
path: /tmp/circleci-test-results
# Save artifacts
- store_artifacts:
path: /tmp/circleci-artifacts
- store_artifacts:
path: /tmp/circleci-test-results
jobs:
build:
# docker:
# #- image: openapitools/openapi-generator
# - image: swaggerapi/petstore
# environment:
# SWAGGER_HOST=http://petstore.swagger.io
# SWAGGER_BASE_PATH=/v2
node0:
machine:
image: circleci/classic:latest
working_directory: ~/OpenAPITools/openapi-generator
parallelism: 4
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
@@ -18,85 +137,68 @@ jobs:
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
# Restore the dependency cache
- restore_cache:
keys:
# Default branch if not
- source-v2-{{ .Branch }}-{{ .Revision }}
- source-v2-{{ .Branch }}-
- source-v2-
# Machine Setup
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# The following `checkout` command checks out your code to your working directory. In 1.0 we did this implicitly. In 2.0 you can choose where in the course of a job your code should be checked out.
- checkout
# Prepare for artifact and test results collection equivalent to how it was done on 1.0.
# In many cases you can simplify this from what is generated here.
# 'See docs on artifact collection here https://circleci.com/docs/2.0/artifacts/'
- run: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
# This is based on your 1.0 configuration file or project settings
- run:
command: sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java; sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac; echo -e "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> $BASH_ENV
- run:
command: 'sudo docker info >/dev/null 2>&1 || sudo service docker start; '
- run:
command: |-
printf '127.0.0.1 petstore.swagger.io
' | sudo tee -a /etc/hosts
# - run: docker pull openapitools/openapi-petstore
# - run: docker run -d -e OPENAPI_BASE_PATH=/v3 -e DISABLE_API_KEY=1 -e DISABLE_OAUTH=1 -p 80:8080 openapitools/openapi-petstore
- run: docker pull swaggerapi/petstore
- run: docker run --name petstore.swagger -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- run: docker ps -a
- run: sleep 30
- run: cat /etc/hosts
# Test
- run: mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run: ./CI/circle_parallel.sh
# Save dependency cache
- save_cache:
key: source-v2-{{ .Branch }}-{{ .Revision }}
paths:
# This is a broad list of cache paths to include many possible development environments
# You can probably delete some of these entries
- vendor/bundle
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle
- ~/.cache/bower
- ".git"
- ~/.stack
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
- ~/R
# save "default" cache using the key "source-v2-"
- save_cache:
key: source-v2-
paths:
# This is a broad list of cache paths to include many possible development environments
# You can probably delete some of these entries
- vendor/bundle
- ~/virtualenvs
- ~/.m2
- ~/.ivy2
- ~/.sbt
- ~/.bundle
- ~/.go_workspace
- ~/.gradle
- ~/.cache/bower
- ".git"
- ~/.stack
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
- ~/R
# Teardown
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
# Save test results
- store_test_results:
path: /tmp/circleci-test-results
# Save artifacts
- store_artifacts:
path: /tmp/circleci-artifacts
- store_artifacts:
path: /tmp/circleci-test-results
- command_build_and_test:
nodeNo: "0"
node1:
machine:
image: circleci/classic:latest
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
- command_build_and_test:
nodeNo: "1"
node2:
machine:
image: circleci/classic:latest
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
- command_build_and_test:
nodeNo: "2"
node3:
machine:
image: circleci/classic:latest
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
- checkout
- command_build_and_test:
nodeNo: "3"
node4:
docker:
- image: fkrull/multi-python
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
- checkout
- command_docker_build_and_test:
nodeNo: "4"
workflows:
version: 2
build:
jobs:
- node0
- node1
- node2
- node3
- node4

View File

@@ -145,12 +145,6 @@
"Documentation: Cwiki"
]
},
{
"input": "dart-jaguar-petstore.sh",
"matches": [
"Client: Dart"
]
},
{
"input": "dart-dio-petstore.sh",
"matches": [
@@ -223,12 +217,6 @@
"Server: Scala"
]
},
{
"input": "flash-petstore.sh",
"matches": [
"Client: Flash/ActionScript"
]
},
{
"input": "go-gin-petstore-server.sh",
"matches": [
@@ -722,18 +710,6 @@
"Schema: MySQL"
]
},
{
"input": "nancyfx-petstore-server-async.sh",
"matches": [
"Server: C-Sharp"
]
},
{
"input": "nancyfx-petstore-server.sh",
"matches": [
"Server: C-Sharp"
]
},
{
"input": "nodejs-petstore-google-cloud-functions.sh",
"matches": [
@@ -944,24 +920,6 @@
"Server: Spring"
]
},
{
"input": "spring-mvc-petstore-j8-async-server.sh",
"matches": [
"Server: Spring"
]
},
{
"input": "spring-mvc-petstore-j8-localdatetime.sh",
"matches": [
"Server: Spring"
]
},
{
"input": "spring-mvc-petstore-server.sh",
"matches": [
"Server: Spring"
]
},
{
"input": "spring-stubs.sh",
"matches": [

View File

@@ -62,9 +62,6 @@ labels:
- '\s*?-[gl] erlang(-.*)?-client\s*?'
- '\s*?\[erlang-proper\]\s*?'
- '\s*?-[gl] erlang-proper\s*?'
'Client: Flash/ActionScript':
- '\s*?\[flash\]\s*?'
- '\s*?-[gl] flash(?!-)\b'
'Client: Go':
- '\s*?\[go\]\s*?'
- '\s*?-[gl] go(?!-)\b'
@@ -223,8 +220,6 @@ labels:
'Server: C-Sharp':
- '\s*?\[aspnetcore\]\s*?'
- '\s*?-[gl] aspnetcore\s*?'
- '\s*?\[csharp-nancyfx\]\s*?'
- '\s*?-[gl] csharp-nancyfx\s*?'
# 'Server: Ceylon': # TODO: REMOVE UNUSED LABEL
'Server: Eiffel':
- '\s*?\[eiffel(-.*)?-server\]\s*?'

View File

@@ -50,7 +50,7 @@ jobs:
run: mvn -nsu -B --quiet -Djacoco.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress clean install --file pom.xml ${{ matrix.flags }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v2.2.4
uses: actions/upload-artifact@v2.3.1
if: matrix.java == '8' && matrix.os == 'ubuntu-latest'
with:
name: artifact
@@ -81,7 +81,7 @@ jobs:
- name: Check out code
uses: actions/checkout@v2
- name: Download build artifact
uses: actions/download-artifact@v2.0.10
uses: actions/download-artifact@v2.1.0
with:
name: artifact
- name: Run Ensures Script

View File

@@ -39,7 +39,7 @@ jobs:
run: mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- run: ls -la modules/openapi-generator-cli/target
- name: Upload openapi-generator-cli.jar artifact
uses: actions/upload-artifact@v2.2.4
uses: actions/upload-artifact@v2.3.1
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
@@ -75,7 +75,7 @@ jobs:
run: mvn --no-snapshot-updates --batch-mode --quiet --fail-at-end test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v2.2.4
uses: actions/upload-artifact@v2.3.1
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'
@@ -93,7 +93,7 @@ jobs:
java-version: 8
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v2.0.10
uses: actions/download-artifact@v2.1.0
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
@@ -132,7 +132,7 @@ jobs:
java-version: 8
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v2.0.10
uses: actions/download-artifact@v2.1.0
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
@@ -216,5 +216,6 @@ jobs:
${{ runner.os }}-test-gradle-plugin-
- name: Run tests
run: |
mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildGoSdk)
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew openApiGenerate)

34
.github/workflows/samples-dotnet.yaml vendored Normal file
View File

@@ -0,0 +1,34 @@
name: Samples C# .Net 6
on:
push:
paths:
- 'samples/client/petstore/csharp-netcore/**net6.0**/'
- 'samples/server/petstore/aspnetcore-6.0/**'
pull_request:
paths:
- 'samples/client/petstore/csharp-netcore/**net6.0**/'
- 'samples/server/petstore/aspnetcore-6.0/**'
jobs:
build:
name: Build .Net projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-net6.0
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-net6.0-nrt
- samples/server/petstore/aspnetcore-6.0
steps:
- uses: actions/checkout@v2
- uses: actions/setup-dotnet@v1
with:
dotnet-version: '6.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

29
.github/workflows/samples-go.yaml vendored Normal file
View File

@@ -0,0 +1,29 @@
name: Samples Go
on:
push:
paths:
- 'samples/server/petstore/go*/**'
pull_request:
paths:
- 'samples/server/petstore/go*/**'
jobs:
build:
name: Build Go
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/go-gin-api-server
- samples/server/petstore/go-api-server
- samples/server/petstore/go-echo-server
steps:
- uses: actions/checkout@v2
- uses: actions/setup-go@v2
with:
go-version: '^1.17.1'
- name: Build and Test
working-directory: ${{ matrix.sample }}
run: ./test.bash

45
.github/workflows/samples-groovy.yaml vendored Normal file
View File

@@ -0,0 +1,45 @@
name: Samples Groovy
on:
push:
paths:
- 'samples/client/petstore/groovy**'
pull_request:
paths:
- 'samples/client/petstore/groovy**'
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build Groovy
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/groovy
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -0,0 +1,56 @@
name: Samples Java Client JDK11
on:
push:
paths:
- 'samples/client/petstore/java*/**'
pull_request:
paths:
- 'samples/client/petstore/java*/**'
jobs:
build:
name: Build Java Client JDK11
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/jaxrs-cxf-client
- samples/client/petstore/java/native
- samples/client/petstore/java/native-async
- samples/client/petstore/java/retrofit2
- samples/client/petstore/java/retrofit2rx2
- samples/client/petstore/java/retrofit2rx3
- samples/client/petstore/java/retrofit2-play26
- samples/client/petstore/java/resttemplate
- samples/client/petstore/java/resttemplate-withXml
- samples/client/petstore/java/webclient
- samples/client/petstore/java/webclient-nulable-arrays
- samples/client/petstore/java/vertx
- samples/client/petstore/java/jersey2-java8-localdatetime
- samples/client/petstore/java/resteasy
- samples/client/petstore/java/google-api-client
- samples/client/petstore/java/rest-assured
- samples/client/petstore/java/rest-assured-jackson
- samples/client/petstore/java/microprofile-rest-client
- samples/client/petstore/java/apache-httpclient
- samples/client/petstore/java/feign
- samples/client/petstore/java/jersey1
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package

View File

@@ -0,0 +1,47 @@
name: Samples Java Play Framework
on:
push:
paths:
- 'samples/server/petstore/java-play-framework**'
pull_request:
paths:
- 'samples/server/petstore/java-play-framework**'
jobs:
build:
name: Build Java Play Framework
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/java-play-framework
- samples/server/petstore/java-play-framework-api-package-override
- samples/server/petstore/java-play-framework-async
- samples/server/petstore/java-play-framework-controller-only
- samples/server/petstore/java-play-framework-fake-endpoints
- samples/server/petstore/java-play-framework-fake-endpoints-with-security
- samples/server/petstore/java-play-framework-no-bean-validation
- samples/server/petstore/java-play-framework-no-exception-handling
- samples/server/petstore/java-play-framework-no-interface
- samples/server/petstore/java-play-framework-no-nullable
- samples/server/petstore/java-play-framework-no-swagger-ui
- samples/server/petstore/java-play-framework-no-wrap-calls
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package

59
.github/workflows/samples-jaxrs.yaml vendored Normal file
View File

@@ -0,0 +1,59 @@
name: Samples JAX-RS
on:
push:
paths:
- 'samples/server/petstore/jaxrs*/**'
pull_request:
paths:
- 'samples/server/petstore/jaxrs*/**'
jobs:
build:
name: Build JAX-RS
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/jaxrs/jersey2
- samples/server/petstore/jaxrs/jersey2-useTags
- samples/server/petstore/jaxrs-jersey
- samples/server/petstore/jaxrs-spec
- samples/server/petstore/jaxrs-spec-interface
- samples/server/petstore/jaxrs-spec-interface-response
- samples/server/petstore/jaxrs-jersey
- samples/server/petstore/jaxrs-spec
- samples/server/petstore/jaxrs-spec-interface
- samples/server/petstore/jaxrs-spec-interface-response
- samples/server/petstore/jaxrs/jersey1
- samples/server/petstore/jaxrs/jersey1-useTags
- samples/server/petstore/jaxrs-datelib-j8
- samples/server/petstore/jaxrs-resteasy/default
- samples/server/petstore/jaxrs-resteasy/eap
- samples/server/petstore/jaxrs-resteasy/eap-joda
- samples/server/petstore/jaxrs-resteasy/eap-java8
- samples/server/petstore/jaxrs-resteasy/joda
- samples/server/petstore/jaxrs-resteasy/default-value
- samples/server/petstore/jaxrs-cxf
- samples/server/petstore/jaxrs-cxf-annotated-base-path
- samples/server/petstore/jaxrs-cxf-cdi
- samples/server/petstore/jaxrs-cxf-cdi-default-value
- samples/server/petstore/jaxrs-cxf-non-spring-app
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package

View File

@@ -0,0 +1,64 @@
name: Samples Kotlin cilent
on:
push:
branches:
- 'samples/client/petstore/kotlin*/**'
pull_request:
paths:
- 'samples/client/petstore/kotlin*/**'
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build Kotlin client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# client
- samples/client/petstore/kotlin
- samples/client/petstore/kotlin-gson
- samples/client/petstore/kotlin-jackson
# needs Android configured
#- samples/client/petstore/kotlin-json-request-string
- samples/client/petstore/kotlin-jvm-okhttp4-coroutines
- samples/client/petstore/kotlin-jvm-volley
- samples/client/petstore/kotlin-moshi-codegen
- samples/client/petstore/kotlin-multiplatform
- samples/client/petstore/kotlin-nonpublic
- samples/client/petstore/kotlin-nullable
- samples/client/petstore/kotlin-okhttp3
- samples/client/petstore/kotlin-retrofit2
- samples/client/petstore/kotlin-retrofit2-kotlinx_serialization
- samples/client/petstore/kotlin-retrofit2-rx3
- samples/client/petstore/kotlin-string
- samples/client/petstore/kotlin-threetenbp
- samples/client/petstore/kotlin-uppercase-enum
- samples/client/petstore/kotlin-array-simple-string
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -0,0 +1,54 @@
name: Samples Kotlin server
on:
push:
branches:
- 'samples/server/petstore/kotlin*/**'
pull_request:
paths:
- 'samples/server/petstore/kotlin*/**'
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build Kotlin server
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# server
- samples/server/petstore/kotlin-springboot
- samples/server/petstore/kotlin-springboot-modelMutable
- samples/server/petstore/kotlin-springboot-delegate
- samples/server/petstore/kotlin-springboot-reactive
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server/jaxrs-spec
- samples/server/petstore/kotlin-server-modelMutable
# no build.gradle file
#- samples/server/petstore/kotlin-vertx-modelMutable
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -1,65 +0,0 @@
name: Samples Kotlin
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
paths:
- 'samples/client/petstore/kotlin*/**'
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build Kotlin
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/kotlin
- samples/client/petstore/kotlin-gson
- samples/client/petstore/kotlin-jackson
# needs Android configured
#- samples/client/petstore/kotlin-json-request-string
- samples/client/petstore/kotlin-jvm-okhttp4-coroutines
- samples/client/petstore/kotlin-moshi-codegen
- samples/client/petstore/kotlin-multiplatform
- samples/client/petstore/kotlin-nonpublic
- samples/client/petstore/kotlin-nullable
- samples/client/petstore/kotlin-okhttp3
- samples/client/petstore/kotlin-retrofit2
- samples/client/petstore/kotlin-retrofit2-kotlinx_serialization
- samples/client/petstore/kotlin-retrofit2-rx3
- samples/client/petstore/kotlin-string
- samples/client/petstore/kotlin-threetenbp
- samples/client/petstore/kotlin-uppercase-enum
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

44
.github/workflows/samples-scala.yaml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: Samples Scala
on:
push:
paths:
- 'samples/client/petstore/scala**'
- 'samples/server/petstore/scala**'
pull_request:
paths:
- 'samples/client/petstore/scala**'
- 'samples/server/petstore/scala**'
jobs:
build:
name: Build Scala client, servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/scalaz
# servers
- samples/server/petstore/scala-lagom-server
- samples/server/petstore/scala-play-server
- samples/server/petstore/scala-akka-http-server
- samples/server/petstore/scalatra
- samples/server/petstore/scala-finch # cannot be tested with jdk11
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.ivy2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/build.sbt') }}
- name: Build and test
working-directory: ${{ matrix.sample }}
run: sbt -v +test

57
.github/workflows/samples-spring.yaml vendored Normal file
View File

@@ -0,0 +1,57 @@
name: Samples Java Spring
on:
push:
paths:
- 'samples/server/petstore/spring*/**'
- 'samples/openapi3/server/petstore/spring*/**'
pull_request:
paths:
- 'samples/server/petstore/spring*/**'
- 'samples/openapi3/server/petstore/spring*/**'
jobs:
build:
name: Build Java Spring
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs-skip-default-interface
# servers
- samples/server/petstore/springboot
- samples/openapi3/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-useoptional
- samples/openapi3/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-reactive
- samples/openapi3/server/petstore/springboot-reactive
- samples/server/petstore/springboot-implicitHeaders
- samples/openapi3/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-delegate
- samples/openapi3/server/petstore/springboot-delegate
- samples/server/petstore/spring-boot-nullable-set
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v2.1.7
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package

11
.gitignore vendored
View File

@@ -201,15 +201,11 @@ samples/server/petstore/aspnetcore/.vs/
effective.pom
# kotlin
samples/client/petstore/kotlin/src/main/kotlin/test/
samples/client/petstore/kotlin-threetenbp/build
samples/client/petstore/kotlin-string/build
samples/openapi3/client/petstore/kotlin/build
samples/server/petstore/kotlin-server/ktor/build
samples/server/petstore/kotlin-springboot/build
samples/client/petstore/kotlin-multiplatform/build/
samples/client/petstore/kotlin-okhttp3/build/
\?
samples/client/petstore/kotlin*/src/main/kotlin/test/
samples/client/petstore/kotlin*/build/
# haskell
.stack-work
@@ -249,9 +245,6 @@ samples/server/petstore/erlang-server/rebar.lock
**/dart*/**/pubspec.lock
# Dart dio
**/dart*/**/*.g.dart
# Dart jaguar
**/dart*/**/*.jser.dart
**/dart*/**/*.jretro.dart
# JS
samples/client/petstore/javascript-es6/package-lock.json

BIN
.mvn/wrapper/maven-wrapper.jar vendored Executable file → Normal file

Binary file not shown.

View File

@@ -1,2 +1,18 @@
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.4/apache-maven-3.8.4-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar

View File

@@ -11,7 +11,9 @@ export NODE_ENV=test
function cleanup {
# Show logs of 'petstore.swagger' container to troubleshoot Unit Test failures, if any.
docker logs petstore.swagger # container name specified in circle.yml
if [ "$NODE_INDEX" != "4" ]; then
docker logs petstore.swagger # container name specified in circle.yml
fi
}
trap cleanup EXIT
@@ -59,8 +61,8 @@ elif [ "$NODE_INDEX" = "3" ]; then
#sudo make altinstall
pyenv install --list
pyenv install 3.6.3
pyenv install 2.7.14
pyenv global 3.6.3
python3 --version
# Install node@stable (for angular 6)
set +e
@@ -79,6 +81,20 @@ elif [ "$NODE_INDEX" = "3" ]; then
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node3 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
elif [ "$NODE_INDEX" = "4" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci.node4' defined in pom.xml ..."
# install maven and java so we can use them to run our tests
apt-get update && apt-get install -y default-jdk maven sudo
java -version
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
echo $JAVA_HOME
# show os version
uname -a
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node4 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
else
echo "Running node $NODE_INDEX to test 'samples.circleci.others' defined in pom.xml ..."
#sudo update-java-alternatives -s java-1.7.0-openjdk-amd64

View File

@@ -3,13 +3,13 @@
<div align="center">
[![Stable releaases in Maven Central](https://img.shields.io/maven-metadata/v/https/repo1.maven.org/maven2/org/openapitools/openapi-generator/maven-metadata.xml.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22) [![Apache 2.0 License](https://img.shields.io/badge/License-Apache%202.0-orange)](./LICENSE) [![Open Collective backers](https://img.shields.io/opencollective/backers/openapi_generator?color=orange&label=OpenCollective%20Backers)](https://opencollective.com/openapi_generator) [![Join the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/enQtNzAyNDMyOTU0OTE1LTY5ZDBiNDI5NzI5ZjQ1Y2E5OWVjMjZkYzY1ZGM2MWQ4YWFjMzcyNDY5MGI4NjQxNDBiMTlmZTc5NjY2ZTQ5MGM) [![Follow OpenAPI Generator Twitter account to get the latest update](https://img.shields.io/twitter/follow/oas_generator.svg?style=social&label=Follow)](https://twitter.com/oas_generator)
[![Stable releaases in Maven Central](https://img.shields.io/maven-metadata/v/https/repo1.maven.org/maven2/org/openapitools/openapi-generator/maven-metadata.xml.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22) [![Apache 2.0 License](https://img.shields.io/badge/License-Apache%202.0-orange)](./LICENSE) [![Open Collective backers](https://img.shields.io/opencollective/backers/openapi_generator?color=orange&label=OpenCollective%20Backers)](https://opencollective.com/openapi_generator) [![Join the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/zt-12jxxd7p2-XUeQM~4pzsU9x~eGLQqX2g) [![Follow OpenAPI Generator Twitter account to get the latest update](https://img.shields.io/twitter/follow/oas_generator.svg?style=social&label=Follow)](https://twitter.com/oas_generator)
</div>
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`5.3.1`):
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`6.0.x`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![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)
@@ -17,20 +17,6 @@
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/master?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/openapitools/openapi-generator/Check%20Supported%20Java%20Versions/master?label=Check%20Supported%20Java%20Versions&logo=github&logoColor=green)](https://github.com/OpenAPITools/openapi-generator/actions?query=workflow%3A%22Check+Supported+Java+Versions%22)
[5.4.x](https://github.com/OpenAPITools/openapi-generator/tree/5.4.x) (`5.4.x`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/5.4.x.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/5.4.x.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=5.4.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/5.4.x)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/5.4.x?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
[6.0.x](https://github.com/OpenAPITools/openapi-generator/tree/6.0.x) (`6.0.x`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/6.0.x.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/6.0.x.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=6.0.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/6.0.x)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/6.0.x?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
</div>
<div align="center">
@@ -62,6 +48,7 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[<img src="https://openapi-generator.tech/img/companies/thales.jpg" width="128" height="128">](https://cpl.thalesgroup.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/apideck.jpg" width="128" height="128">](https://www.apideck.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/pexa.png" width="128" height="128">](https://www.pexa.com.au/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/numary.png" width="128" height="128">](https://www.numary.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
@@ -75,8 +62,8 @@ 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, .NET 5.0. Libraries: RestSharp, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient, Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client), **k6**, **Kotlin**, **Lua**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (2.x - 11.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx, Azure Functions), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/)), **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, [Mezzio (fka Zend Expressive)](https://github.com/mezzio/mezzio), Slim, Silex, [Symfony](https://symfony.com/)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (rust-server), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient, Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client), **k6**, **Kotlin**, **Lua**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (2.x - 11.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs) |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, Azure Functions), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/), [Apache Camel](https://camel.apache.org/)), **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, [Mezzio (fka Zend Expressive)](https://github.com/mezzio/mezzio), Slim, Silex, [Symfony](https://symfony.com/)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (rust-server), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML** |
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Protocol Buffer**, **WSDL** |
@@ -117,10 +104,8 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 6.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.0.0-SNAPSHOT/) | Jan/Feb 2022 | Minor release with breaking changes (no fallback) |
| 5.4.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.4.0-SNAPSHOT/) | Dec 2021 | Minor release with breaking changes (with fallback) |
| 5.3.1 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.3.1-SNAPSHOT/) | Nov/Dec 2021 | Patch release (enhancements, bug fixes, etc) |
| [5.3.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.3.0) (latest stable release) | 24.10.2021 | Minor release with breaking changes (with fallback) |
| 6.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.0.0-SNAPSHOT/) | Feb/Mar 2022 | Major release with breaking changes (no fallback) |
| [5.4.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.4.0) (latest stable release) | 31.01.2021 | Minor release with breaking changes (with fallback) |
| [4.3.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.3.1) | 06.05.2020 | Patch release (enhancements, bug fixes, etc) |
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0
@@ -177,16 +162,16 @@ See the different versions of the [openapi-generator-cli](https://mvnrepository.
<!-- RELEASE_VERSION -->
If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 8 runtime at a minimum):
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.3.0/openapi-generator-cli-5.3.0.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.4.0/openapi-generator-cli-5.4.0.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.3.0/openapi-generator-cli-5.3.0.jar -O openapi-generator-cli.jar
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.4.0/openapi-generator-cli-5.4.0.jar -O openapi-generator-cli.jar
```
For **Windows** users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g.
```
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.3.0/openapi-generator-cli-5.3.0.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.4.0/openapi-generator-cli-5.4.0.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -411,7 +396,7 @@ openapi-generator-cli version
To use a specific version of "openapi-generator-cli"
```sh
openapi-generator-cli version-manager set 5.3.0
openapi-generator-cli version-manager set 5.4.0
```
Or install it as dev-dependency:
@@ -435,7 +420,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
(if you're on Windows, replace the last command with `java -jar modules\openapi-generator-cli\target\openapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g php -o c:\temp\php_api_client`)
<!-- RELEASE_VERSION -->
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/5.3.0/openapi-generator-cli-5.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/5.4.0/openapi-generator-cli-5.4.0.jar)
<!-- /RELEASE_VERSION -->
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
@@ -585,6 +570,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [ASKUL](https://www.askul.co.jp)
- [Arduino](https://www.arduino.cc/)
- [b<>com](https://b-com.com/en)
- [百度营销](https://e.baidu.com)
- [Banzai Cloud](https://banzaicloud.com)
- [BIMData.io](https://bimdata.io)
- [Bithost GmbH](https://www.bithost.ch)
@@ -634,6 +620,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Lumeris](https://www.lumeris.com)
- [LVM Versicherungen](https://www.lvm.de)
- [MailSlurp](https://www.mailslurp.com)
- [Manticore Search](https://manticoresearch.com)
- [Médiavision](https://www.mediavision.fr/)
- [Metaswitch](https://www.metaswitch.com/)
- [MoonVision](https://www.moonvision.io/)
@@ -651,6 +638,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [PLAID, Inc.](https://plaid.co.jp/)
- [Ponicode](https://ponicode.dev/)
- [Pricefx](https://www.pricefx.com/)
- [PrintNanny](https://www.print-nanny.com/)
- [Prometheus/Alertmanager](https://github.com/prometheus/alertmanager)
- [Qavar](https://www.qavar.com)
- [QEDIT](https://qed-it.com)
@@ -771,6 +759,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2019-11-26 - [CordaCon 2019 Highlights: Braid Server and OpenAPI Generator for Corda Client APIs](https://blog.b9lab.com/cordacon-2019-highlights-braid-server-and-openapi-generator-for-corda-flows-api-s-d24179ccb27c) by [Adel Rustum](https://blog.b9lab.com/@adelrestom) at [B9lab](https://blog.b9lab.com/)
- 2019-12-03 - [A Road to Less Coding: Auto-Generate APILibrary](https://www.corda.net/blog/a-road-to-less-coding-auto-generate-apilibrary/) at [Corda Blog](https://www.corda.net/blog/)
- 2019-12-04 - [AngularNestJSOpenAPISwaggerでマイクロサービスを視野に入れた環境を考える](https://qiita.com/teracy55/items/0327c7a170ec772970c6) by [てらしー](https://twitter.com/teracy55)
- 2019-12-05 - [Code generation on the Java VM](https://speakerdeck.com/sullis/code-generation-on-the-java-vm-2019-12-05) by [Sean Sullivan](https://speakerdeck.com/sullis)
- 2019-12-17 - [OpenAPI Generator で OAuth2 アクセストークン発行のコードまで生成してみる](https://www.techscore.com/blog/2019/12/17/openapi-generator-oauth2-accesstoken/) by [TECHSCORE](https://www.techscore.com/blog/)
- 2019-12-23 - [Use Ada for Your Web Development](https://www.electronicdesign.com/technologies/embedded-revolution/article/21119177/use-ada-for-your-web-development) by [Stephane Carrez](https://github.com/stcarrez)
- 2019-12-23 - [OpenAPIのスキーマを分割・構造化していく方法](https://gift-tech.co.jp/articles/structured-openapi-schema) by [小飯塚達也](https://github.com/t2h5) at [GiFT, Inc](https://gift-tech.co.jp/)
@@ -846,6 +835,9 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2021-10-17 - [Generate a TypeScript HTTP Client From An OpenAPI Spec In DotNET 5](https://richardwillis.info/blog/generate-a-type-script-http-client-from-an-open-api-spec-in-dot-net-5) by [Richard Willis](https://github.com/badsyntax)
- 2021-11-06 - [スタートアップの開発で意識したこと](https://zenn.dev/woo_noo/articles/5cb09f8e2899ae782ad1) by [woo-noo](https://zenn.dev/woo_noo)
- 2021-11-09 - [Effective Software Development using OpenAPI Generator](https://apexlabs.ai/post/effective-software-development-using-openapi-generator) by Ajil Oomme
- 2021-12-07 - [An Introduction to OpenAPI](https://betterprogramming.pub/4-use-cases-of-openapi-which-are-good-to-know-1a041f4ad71e) by [Na'aman Hirschfeld](https://naamanhirschfeld.medium.com/)
- 2021-01-02 - [Towards a secure API client generator for IoT devices](https://arxiv.org/abs/2201.00270) by Anders Aaen Springborg, Martin Kaldahl Andersen, Kaare Holland Hattel, Michele Albano
## [6 - About Us](#table-of-contents)
@@ -860,10 +852,12 @@ 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)
* [@spacether](https://github.com/spacether) (2020/05) [:heart:][spacether sponsorship]
:heart: = Link to support the contributor directly
[spacether sponsorship]: https://github.com/sponsors/spacether/
#### Template Creator
**NOTE**: Embedded templates are only supported in _Mustache_ format. Support for all other formats is experimental and subject to change at any time.
@@ -880,6 +874,7 @@ Here is a list of template creators:
* C# (.NET 2.0): @who
* C# (.NET Standard 1.3 ): @Gronsak
* C# (.NET 4.5 refactored): @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* C# (GenericHost): @devhl-labs
* C# (HttpClient): @Blackclaws
* Clojure: @xhh
* Crystal: @wing328
@@ -917,6 +912,7 @@ Here is a list of template creators:
* JMeter: @davidkiss
* Kotlin: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Kotlin (MultiPlatform): @andrewemery
* Kotlin (Volley): @alisters
* Lua: @daurnimator
* Nim: @hokamoto
* OCaml: @cgensoul
@@ -925,7 +921,8 @@ Here is a list of template creators:
* PHP (with Data Transfer): @Articus
* PowerShell: @beatcracker
* PowerShell (refactored in 5.0.0): @wing328
* Python: @spacether
* Python: @spacether [:heart:][spacether sponsorship]
* Python-Experimental: @spacether [:heart:][spacether sponsorship]
* R: @ramnov
* Ruby (Faraday): @meganemura @dkliban
* Rust: @farcaller
@@ -967,12 +964,14 @@ Here is a list of template creators:
* GraphQL Express Server: @renepardon
* Haskell Servant: @algas
* Haskell Yesod: @yotsuya
* Java Camel: @carnevalegiacomo
* Java MSF4J: @sanjeewa-malalgoda
* Java Spring Boot: @diyfr
* Java Undertow: @stevehu
* Java Play Framework: @JFCote
* Java PKMST: @anshu2185 @sanshuman @rkumar-pk @ninodpillai
* Java Vert.x: @lwlee2608
* Java Micronaut: @andriy-dmytruk
* JAX-RS RestEasy: @chameleon82
* JAX-RS CXF: @hiveship
* JAX-RS CXF (CDI): @nickcmaynard
@@ -980,6 +979,7 @@ Here is a list of template creators:
* Kotlin: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Kotlin (Spring Boot): @dr4ke616
* Kotlin (Vertx): @Wooyme
* Kotlin (JAX-RS): @anttileppa
* NodeJS Express: @YishTish
* PHP Laravel: @renepardon
* PHP Lumen: @abcsun
@@ -1053,6 +1053,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) @frankyjuang (2019/09) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) |
| Clojure | |
| Crystal | @cyangle (2021/01) |
| Dart | @jaumard (2018/09) @josh-burton (2019/12) @amondnet (2019/12) @sbu-WBT (2020/12) @kuhnroyal (2020/12) @agilob (2020/12) @ahmednfwela (2021/08) |
| Eiffel | @jvelilla (2017/09) |
| Elixir | @mrmstn (2018/12) |
@@ -1074,7 +1075,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| 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 | @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) |
| 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) [:heart:][spacether sponsorship] |
| R | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
| Ruby | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
| Rust | @frol (2017/07) @farcaller (2017/08) @richardwhiuk (2019/07) @paladinzh (2020/05) |

View File

@@ -48,6 +48,8 @@ build_script:
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClientCoreAndNet47\Org.OpenAPITools.sln
# build C# API client (httpclient)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-httpclient\Org.OpenAPITools.sln
# build C# API client (generichost)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-generichost-netstandard2.0\Org.OpenAPITools.sln
# build C# API client (netcore)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient\Org.OpenAPITools.sln
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClientCore\Org.OpenAPITools.sln
@@ -75,6 +77,8 @@ test_script:
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClientCoreAndNet47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (httpclient)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-httpclient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (generichost)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-generichost-netstandard2.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (netcore)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClientCore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj

View File

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

View File

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

View File

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

View File

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

View File

@@ -4,5 +4,5 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/java/petstore-with-f
templateDir: modules/openapi-generator/src/main/resources/csharp-netcore
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netcoreapp2.0
targetFramework: netcoreapp3.1
useCompareNetObjects: "true"

View File

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

View File

@@ -1,11 +0,0 @@
generatorName: dart-dio-next
outputDir: samples/openapi3/client/petstore/dart-dio-next/dio_http_petstore_client_lib_fake
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/dart/libraries/dio
typeMappings:
Client: "ModelClient"
File: "ModelFile"
EnumClass: "ModelEnumClass"
additionalProperties:
hideGenerationTimestamp: "true"
dioLibrary: "dio_http"

View File

@@ -0,0 +1,17 @@
generatorName: java-camel
outputDir: samples/server/petstore/java-camel
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/java-camel-server
additionalProperties:
oas3: "true"
hideGenerationTimestamp: true
camelRestBindingMode: "auto"
performBeanValidation: true
#dateLibrary: "java8-localdatetime"
camelDataformatProperties: "json.out.disableFeatures=WRITE_DATES_AS_TIMESTAMPS"
library: "spring-boot"
withXml: true
jackson: true
camelUseDefaulValidationtErrorProcessor: true
camelRestClientRequestValidation: true
camelSecurityDefinitions: true

View File

@@ -7,3 +7,4 @@ additionalProperties:
configureAuth: "false"
build: "all"
test: "spock"
requiredPropertiesInConstructor: "false"

View File

@@ -0,0 +1,10 @@
generatorName: java-micronaut-server
outputDir: samples/server/petstore/java-micronaut-server/
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
additionalProperties:
artifactId: petstore-micronaut-server
hideGenerationTimestamp: "true"
build: "all"
test: "spock"
requiredPropertiesInConstructor: "true"
useAuth: "false"

View File

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

View File

@@ -1,7 +1,7 @@
generatorName: java
outputDir: samples/client/petstore/java/okhttp-gson
library: okhttp-gson
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/java/petstore-with-fake-endpoints-models-for-testing-with-http-signature-okhttp-gson.yaml
templateDir: modules/openapi-generator/src/main/resources/Java
additionalProperties:
artifactId: petstore-okhttp-gson

View File

@@ -0,0 +1,6 @@
generatorName: java-play-framework
outputDir: samples/server/petstore/java-play-framework-fake-endpoints-with-security
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-for-testing-playframework-with-security.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaPlayFramework
additionalProperties:
hideGenerationTimestamp: "true"

6
bin/configs/k6.yaml Normal file
View File

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

View File

@@ -0,0 +1,6 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-array-simple-string
inputSpec: modules/openapi-generator/src/test/resources/3_0/issue_7199_array_simple_string.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-array-simple-string

View File

@@ -6,3 +6,4 @@ additionalProperties:
artifactId: kotlin-enum-default-value
serializableModel: "true"
dateLibrary: java8
enumUnknownDefaultCase: true

View File

@@ -5,3 +5,4 @@ inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-petstore-okhttp3
enumUnknownDefaultCase: true

View File

@@ -0,0 +1,9 @@
generatorName: kotlin
outputDir: samples/client/petstore/kotlin-jvm-volley
library: jvm-volley
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
artifactId: kotlin-petstore-jvm-volley
generateRoomModels: "true"
serializationLibrary: "gson"

View File

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

View File

@@ -0,0 +1,7 @@
generatorName: kotlin-server
outputDir: samples/server/petstore/kotlin-server/jaxrs-spec
library: jaxrs-spec
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-server
additionalProperties:
useCoroutines: "true"

View File

@@ -0,0 +1,8 @@
generatorName: kotlin-server
outputDir: samples/server/petstore/kotlin-server-modelMutable
library: ktor
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-server
additionalProperties:
hideGenerationTimestamp: "true"
modelMutable: "true"

View File

@@ -0,0 +1,6 @@
generatorName: kotlin-vertx
outputDir: samples/server/petstore/kotlin-vertx-modelMutable
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/kotlin-vertx-server
additionalProperties:
modelMutable: "true"

View File

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

View File

@@ -1,7 +0,0 @@
generatorName: csharp-nancyfx
outputDir: samples/server/petstore/nancyfx-async
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-nancyfx
additionalProperties:
asyncServer: "true"
packageGuid: '{768B8DC6-54EE-4D40-9B20-7857E1D742A4}'

View File

@@ -1,7 +0,0 @@
generatorName: csharp-nancyfx
outputDir: samples/server/petstore/nancyfx
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp-nancyfx
additionalProperties:
asyncServer: "false"
packageGuid: '{768B8DC6-54EE-4D40-9B20-7857E1D742A4}'

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -3,6 +3,7 @@ outputDir: samples/server/petstore/springboot-delegate-j8
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: springboot-delegate-j8
hideGenerationTimestamp: "true"
delegatePattern: "true"

View File

@@ -0,0 +1,11 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/springboot-delegate
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: springboot-delegate
hideGenerationTimestamp: "true"
java8: true
delegatePattern: "true"

View File

@@ -3,6 +3,7 @@ outputDir: samples/server/petstore/springboot-delegate
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: springboot-delegate
hideGenerationTimestamp: "true"
java8: true

View File

@@ -0,0 +1,11 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/springboot-implicitHeaders
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
oas3: "true"
artifactId: springboot-implicitHeaders
hideGenerationTimestamp: "true"
implicitHeaders: true

View File

@@ -4,5 +4,6 @@ inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-e
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
artifactId: springboot-implicitHeaders
documentationProvider: springfox
hideGenerationTimestamp: "true"
implicitHeaders: true

View File

@@ -0,0 +1,10 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/springboot
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: springboot
snapshotVersion: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,11 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/springboot-reactive
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: springboot-reactive
reactive: "true"
hideGenerationTimestamp: "true"
delegatePattern: "true"

View File

@@ -4,6 +4,7 @@ inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-e
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
artifactId: springboot-reactive
documentationProvider: springfox
reactive: "true"
hideGenerationTimestamp: "true"
delegatePattern: "true"

View File

@@ -0,0 +1,10 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/springboot-source
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: source
artifactId: springboot
snapshotVersion: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,11 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/spring-boot-springdoc
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
useSwaggerUI: false
artifactId: spring-boot-springdoc
snapshotVersion: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,10 @@
generatorName: spring
outputDir: samples/openapi3/server/petstore/springboot-useoptional
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
useOptional: true
artifactId: spring-boot-useoptional
hideGenerationTimestamp: "true"

View File

@@ -3,6 +3,7 @@ outputDir: samples/server/petstore/springboot-useoptional
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
useOptional: true
artifactId: spring-boot-useoptional
hideGenerationTimestamp: "true"

View File

@@ -4,6 +4,7 @@ library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
apiPackage: org.openapitools.virtualan.api
modelPackage: org.openapitools.virtualan.model
virtualService: true

View File

@@ -3,6 +3,7 @@ outputDir: samples/server/petstore/springboot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: springboot
snapshotVersion: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,12 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-cloud-async
library: spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
async: "true"
java8: "true"
artifactId: petstore-spring-cloud
hideGenerationTimestamp: "true"

View File

@@ -4,6 +4,7 @@ library: spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
async: "true"
java8: "true"
artifactId: petstore-spring-cloud

View File

@@ -0,0 +1,12 @@
generatorName: spring
library: spring-cloud
outputDir: samples/openapi3/client/petstore/spring-cloud-date-time
inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/date-time-parameter-types-for-testing.yml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-cloud-date-time-oas3
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,11 @@
generatorName: spring
library: spring-cloud
outputDir: samples/client/petstore/spring-cloud-date-time
inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/date-time-parameter-types-for-testing.yml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: spring-cloud-date-time
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,12 @@
generatorName: spring
library: spring-cloud
outputDir: samples/openapi3/client/petstore/spring-cloud-oas3-fakeapi
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-cloud-oas3
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,12 @@
generatorName: spring
library: spring-cloud
outputDir: samples/openapi3/client/petstore/spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-cloud-oas3
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,10 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-cloud-spring-pageable
library: spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-cloud-spring-pageable
hideGenerationTimestamp: 'true'

View File

@@ -4,5 +4,6 @@ library: spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: spring-cloud-spring-pageable
hideGenerationTimestamp: 'true'

View File

@@ -4,5 +4,6 @@ library: spring-cloud
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: petstore-spring-cloud
hideGenerationTimestamp: "true"

View File

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

View File

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

View File

@@ -1,11 +0,0 @@
generatorName: spring
outputDir: samples/server/petstore/spring-mvc-j8-localdatetime
library: spring-mvc
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
booleanGetterPrefix: get
artifactId: spring-mvc-j8-localdatetime
hideGenerationTimestamp: "true"
serverPort: "8002"
dateLibrary: java8-localdatetime

View File

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

View File

@@ -1,8 +0,0 @@
generatorName: spring
outputDir: samples/server/petstore/spring-mvc-spring-pageable
library: spring-mvc
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
artifactId: spring-mvc-spring-pageable
hideGenerationTimestamp: 'true'

View File

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

View File

@@ -0,0 +1,10 @@
generatorName: spring
library: spring-boot
outputDir: samples/server/petstore/spring-boot-nullable-set
inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/10167-nullable-set.yml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
artifactId: spring-boot-nullable-set
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,11 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-stubs
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-stubs
interfaceOnly: "true"
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -0,0 +1,13 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-stubs-skip-default-interface
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
documentationProvider: springdoc
artifactId: spring-stubs
interfaceOnly: "true"
unhandledException: true
skipDefaultInterface: true
singleContentTypes: "true"
hideGenerationTimestamp: "true"

View File

@@ -3,6 +3,7 @@ outputDir: samples/client/petstore/spring-stubs
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: spring-stubs
interfaceOnly: "true"
singleContentTypes: "true"

View File

@@ -6,5 +6,6 @@ templateDir: modules/openapi-generator/src/main/resources/JavaSpring
delegatePattern: true
java8: false
additionalProperties:
documentationProvider: springfox
artifactId: springboot-spring-pageable-delegatePattern-without-j8
hideGenerationTimestamp: 'true'

View File

@@ -5,5 +5,6 @@ inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-e
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
delegatePattern: true
additionalProperties:
documentationProvider: springfox
artifactId: springboot-spring-pageable-delegatePattern
hideGenerationTimestamp: 'true'

View File

@@ -5,5 +5,6 @@ inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-e
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
java8: false
additionalProperties:
documentationProvider: springfox
artifactId: springboot-spring-pageable-withoutj8
hideGenerationTimestamp: 'true'

View File

@@ -4,5 +4,6 @@ library: spring-boot
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
artifactId: springboot-spring-pageable
hideGenerationTimestamp: 'true'

View File

@@ -7,6 +7,6 @@ additionalProperties:
podAuthors: ""
podSummary: PetstoreClient
sortParamsByRequiredFlag: false
generateFrozenEnums: false
enumUnknownDefaultCase: true
projectName: PetstoreClient
podHomepage: https://github.com/openapitools/openapi-generator

View File

@@ -3,7 +3,7 @@ outputDir: samples/client/petstore/typescript-angular-v12-provided-in-root/build
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/typescript-angular
additionalProperties:
ngVersion: 12.0.0
ngVersion: 12.2.0
npmVersion: 1.0.0
npmName: '@openapitools/typescript-angular-petstore'
npmRepository: https://skimdb.npmjs.com/registry

View File

@@ -3,4 +3,4 @@ outputDir: samples/client/petstore/typescript-angular-v12-provided-in-root/build
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/typescript-angular
additionalProperties:
ngVersion: 12.0.0
ngVersion: 12.2.0

View File

@@ -0,0 +1,7 @@
generatorName: typescript-axios
outputDir: samples/client/petstore/typescript-axios/builds/with-node-imports
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-operations-without-required-params.yaml
templateDir: modules/openapi-generator/src/main/resources/typescript-axios
additionalProperties:
withNodeImports: "true"
multipartFormData: "true"

View File

@@ -0,0 +1,6 @@
generatorName: typescript-axios
outputDir: samples/client/petstore/typescript-axios/builds/with-string-enums
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/typescript-axios
additionalProperties:
stringEnums: true

View File

@@ -0,0 +1,4 @@
generatorName: typescript
outputDir: samples/client/others/typescript/builds/with-unique-items
inputSpec: modules/openapi-generator/src/test/resources/3_0/typescript/unique_items.yaml
templateDir: modules/openapi-generator/src/main/resources/typescript

View File

@@ -36,7 +36,7 @@ _How_ you provide values to options also depends on the tool. OpenAPI Generator
openApiGenerate {
globalProperties = [
apis: "",
models: "User,Pet"
models: "User:Pet"
]
}
```

View File

@@ -5,7 +5,7 @@ title: "FAQ: Generators"
### What are some server generator use cases?
We have around 40+ server generators, with more added regularly. Some of these include Spring in your choice of Java or Kotlin, the Finch and Scalatra frameworks using Scala, and C# generators for NancyFX and WebAPI (to name only a few).
We have around 40+ server generators, with more added regularly. Some of these include Spring in your choice of Java or Kotlin, the Finch and Scalatra frameworks using Scala, and C# generators for ASP.NET and Azure Functions (to name only a few).
Besides generating the server code as a starting point to implement the API backend, here are some use cases of the server generators:

View File

@@ -24,15 +24,12 @@ The following generators are available:
* [dart](generators/dart.md)
* [dart-dio](generators/dart-dio.md)
* [dart-dio-next (experimental)](generators/dart-dio-next.md)
* [dart-jaguar (deprecated)](generators/dart-jaguar.md)
* [eiffel](generators/eiffel.md)
* [elixir](generators/elixir.md)
* [elm](generators/elm.md)
* [erlang-client](generators/erlang-client.md)
* [erlang-proper](generators/erlang-proper.md)
* [flash-deprecated (deprecated)](generators/flash-deprecated.md)
* [go](generators/go.md)
* [go-deprecated (deprecated)](generators/go-deprecated.md)
* [groovy](generators/groovy.md)
* [haskell-http-client](generators/haskell-http-client.md)
* [java](generators/java.md)
@@ -53,7 +50,8 @@ The following generators are available:
* [php](generators/php.md)
* [php-dt (beta)](generators/php-dt.md)
* [powershell (beta)](generators/powershell.md)
* [python (experimental)](generators/python.md)
* [python](generators/python.md)
* [python-experimental (experimental)](generators/python-experimental.md)
* [python-legacy](generators/python-legacy.md)
* [r](generators/r.md)
* [ruby](generators/ruby.md)
@@ -63,11 +61,9 @@ The following generators are available:
* [scala-httpclient-deprecated (deprecated)](generators/scala-httpclient-deprecated.md)
* [scala-sttp (beta)](generators/scala-sttp.md)
* [scalaz](generators/scalaz.md)
* [swift4-deprecated (deprecated)](generators/swift4-deprecated.md)
* [swift5](generators/swift5.md)
* [typescript (experimental)](generators/typescript.md)
* [typescript-angular](generators/typescript-angular.md)
* [typescript-angularjs-deprecated (deprecated)](generators/typescript-angularjs-deprecated.md)
* [typescript-aurelia](generators/typescript-aurelia.md)
* [typescript-axios](generators/typescript-axios.md)
* [typescript-fetch](generators/typescript-fetch.md)
@@ -85,7 +81,6 @@ The following generators are available:
* [cpp-pistache-server](generators/cpp-pistache-server.md)
* [cpp-qt-qhttpengine-server](generators/cpp-qt-qhttpengine-server.md)
* [cpp-restbed-server](generators/cpp-restbed-server.md)
* [csharp-nancyfx](generators/csharp-nancyfx.md)
* [csharp-netcore-functions (beta)](generators/csharp-netcore-functions.md)
* [erlang-server](generators/erlang-server.md)
* [fsharp-functions (beta)](generators/fsharp-functions.md)
@@ -96,7 +91,9 @@ The following generators are available:
* [graphql-nodejs-express-server](generators/graphql-nodejs-express-server.md)
* [haskell](generators/haskell.md)
* [haskell-yesod (beta)](generators/haskell-yesod.md)
* [java-camel](generators/java-camel.md)
* [java-inflector](generators/java-inflector.md)
* [java-micronaut-server (beta)](generators/java-micronaut-server.md)
* [java-msf4j](generators/java-msf4j.md)
* [java-pkmst](generators/java-pkmst.md)
* [java-play-framework](generators/java-play-framework.md)
@@ -111,14 +108,12 @@ The following generators are available:
* [jaxrs-resteasy-eap](generators/jaxrs-resteasy-eap.md)
* [jaxrs-spec](generators/jaxrs-spec.md)
* [kotlin-server](generators/kotlin-server.md)
* [kotlin-server-deprecated (deprecated)](generators/kotlin-server-deprecated.md)
* [kotlin-spring](generators/kotlin-spring.md)
* [kotlin-vertx (beta)](generators/kotlin-vertx.md)
* [nodejs-express-server (beta)](generators/nodejs-express-server.md)
* [php-laravel](generators/php-laravel.md)
* [php-lumen](generators/php-lumen.md)
* [php-mezzio-ph](generators/php-mezzio-ph.md)
* [php-silex-deprecated (deprecated)](generators/php-silex-deprecated.md)
* [php-slim-deprecated (deprecated)](generators/php-slim-deprecated.md)
* [php-slim4](generators/php-slim4.md)
* [php-symfony](generators/php-symfony.md)

View File

@@ -15,13 +15,11 @@ The following generators are available:
* [csharp-netcore](csharp-netcore.md)
* [dart](dart.md)
* [dart-dio](dart-dio.md)
* [dart-jaguar](dart-jaguar.md)
* [eiffel](eiffel.md)
* [elixir](elixir.md)
* [elm](elm.md)
* [erlang-client](erlang-client.md)
* [erlang-proper](erlang-proper.md)
* [flash](flash.md)
* [go](go.md)
* [go-experimental (experimental)](go-experimental.md)
* [groovy](groovy.md)
@@ -69,7 +67,6 @@ The following generators are available:
* [cpp-pistache-server](cpp-pistache-server.md)
* [cpp-qt5-qhttpengine-server](cpp-qt5-qhttpengine-server.md)
* [cpp-restbed-server](cpp-restbed-server.md)
* [csharp-nancyfx](csharp-nancyfx.md)
* [erlang-server](erlang-server.md)
* [fsharp-functions (beta)](fsharp-functions.md)
* [fsharp-giraffe-server (beta)](fsharp-giraffe-server.md)
@@ -92,7 +89,6 @@ The following generators are available:
* [jaxrs-resteasy-eap](jaxrs-resteasy-eap.md)
* [jaxrs-spec](jaxrs-spec.md)
* [kotlin-server](kotlin-server.md)
* [kotlin-server-deprecated](kotlin-server-deprecated.md)
* [kotlin-spring](kotlin-spring.md)
* [kotlin-vertx (beta)](kotlin-vertx.md)
* [nodejs-express-server (beta)](nodejs-express-server.md)

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