Compare commits

...

1919 Commits

Author SHA1 Message Date
William Cheng
21872b47b1 update doc 2024-06-26 10:05:19 +08:00
William Cheng
0da60def01 update samples 2024-06-26 10:04:23 +08:00
William Cheng
7dac40e31c update comment 2024-06-26 09:55:31 +08:00
William Cheng
81feb4ba78 Merge remote-tracking branch 'origin/master' into normalizer-rule-default 2024-06-26 09:54:38 +08:00
William Cheng
38d189b159 update kong URL (#19018) 2024-06-26 00:29:43 +08:00
martin-mfg
045b6012b3 [Spring] replace MultipartFile by Resource (#18509)
* replace MultiPartFile by Resource

* fix SpringCodegenTest

* new approach: small scoped fix

* move to JDK17 workflow

* update samples

* fix formParams
2024-06-25 18:26:09 +08:00
William Cheng
da7105bc6a fix NPE in get type, add test (#19014) 2024-06-25 18:05:09 +08:00
William Cheng
6aa825bcf7 [Go] Fix an issue causing int array reference translated to an invalid type []Integer (#19013)
* [Go] Fix an issue causing int array ref be converted into an invalid type, `[]Integer`

* Add test case: wrapped and referenced integer of an array to Go client samples

* add check for ref to property in go abstract

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

Co-authored-by: Zhiwei <zhiwei.liang27@pm.me>

---------

Co-authored-by: Zhiwei Liang <zhi.wei.liang@outlook.com>
Co-authored-by: Zhiwei <zhiwei.liang27@pm.me>
2024-06-25 16:29:28 +08:00
jpfinne
ba9ac74237 revert lsot testMicroprofileGenerateCorrectJacksonGenerator_issue18336 (#19005) 2024-06-24 17:01:02 +08:00
Rodrigo de Almeida - RMA3
5532203f9f fix issue 18959 (#18962)
Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2024-06-24 16:58:02 +08:00
Lucas
861e8f0656 [kotlin] implement serializable data classes (#8317) (#18386) 2024-06-24 08:13:32 +01:00
GregDThomas
0368f4e031 Add support for a bearer token supplier to OAuth based RestTemplate clients. Fixes #19000 (#19002) 2024-06-24 13:37:04 +08:00
William Cheng
c0be6ba9df update undetow to newer version 2024-06-24 12:43:22 +08:00
Yannick Wiesner
c5daf8193b dart - make the dependency on the http, collection and meta package less strict (#18952) 2024-06-24 12:02:30 +08:00
William Cheng
d5f42500ab [Golang] Move utility functions from client.mustache to utils.mustache (#19001)
* [Golang] Move utility functions from client.mustache to utils.mustache

* re-generate Go samples

* re-generate Go samples again

* re-generate samples once more

* update go samples

---------

Co-authored-by: Martin Lakov <martin.lakov@ocado.com>
2024-06-24 11:58:57 +08:00
William Cheng
1064cb6a68 Allow to pass a str to the Python aiohttp client (#18985)
* see #18972

Add support for `str`

* update python samples

---------

Co-authored-by: David Riccitelli <david@wordlift.io>
2024-06-23 17:19:26 +08:00
Jimmy Ma
4e89436177 [kotlin] Fix a leak in the ApiClient (#18997) 2024-06-23 17:17:05 +08:00
Nathaniel Cook
640ef9d944 fix(rust-server): remove duplicate allow(unused_imports) directive (#18983)
New versions of rust clippy catch errors with duplicate allow
directives. This change fixes the duplicate directives in generated rust
code.
2024-06-20 22:14:57 +08:00
Vito De Tullio
e5ae07c2b4 avoid setting debug property if not needed (#18872)
* avoid setting debug property if not needed

* update samples

* fix compatibility with python 3.7

* always set Configuration.__debug

* update samples

* check `Configuration` behavior when debug parameter is / is not set

* address PR requests
2024-06-20 18:23:34 +08:00
William Cheng
7747cc93e0 [Kotlin] update ApiClient to register all adapters for GsonBuilder (#18965)
* update api client to register type adapter

* update samples

* remove json array variable name
2024-06-20 00:20:11 +08:00
Johann-Peter
cf303d4e03 [csharp] Don't apply OpenAPIDateConverter json converter attribute for DateOnly properties (#18874)
* [csharp] Don't apply json converter attribute for DateOnly (#18541)

Applying the OpenAPIDateConverter to an DateOnly property fails at runtime with an exception.

* [csharp] Update samples
2024-06-19 17:53:00 +08:00
Cameron Koegel
9919c23267 [Ruby] Add Flag to Allow Ignoring Operation Servers (#18934)
* [Ruby] Add Flag to Allow Ignoring Operation Servers

* update samples

* add tests

* fix tests
2024-06-19 17:24:59 +08:00
ReneZeidler
5bc7aa3cd6 Never create inline model for allOf with single $ref (#18945)
Fixes #15077

The previous fix for this in #16096 is incomplete because it still
generates unnecessary inline models when readOnly or
nullable is used in conjunction with other properties like
description.
This commit fixes the logic error and adds testcases.
2024-06-19 17:15:33 +08:00
Val Packett
da57701569 [haskell-http-client] Support --name-mappings and handle _ name (#18943) (#18944)
* [haskell-http-client] Support --name-mappings and handle _ name (#18943)

Fixes #18943

* [haskell-http-client] Add missing TypeOperators flag

-Wtype-equality-requires-operators:
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
2024-06-19 17:07:26 +08:00
Oleg Gromiak
c3a2fe0592 [Python] Add retries option to Configuration constructor (#18919)
* Python: add retries option to Configuration constructor

* Update autogenerated sample clients
2024-06-19 17:06:33 +08:00
Andy☼ McSherry☼
a4b577ddc7 [swift] Issue 18940: Rename url & path variables to avoid collision (#18969) 2024-06-19 17:03:12 +08:00
Andreas Maechler
a4d43a8376 Add default (#18968) 2024-06-19 13:01:47 +08:00
William Cheng
819083b1ba update urllib3 to newer version (#18957) 2024-06-18 14:32:20 +08:00
Cameron Koegel
abc4461e88 [python] Fix Typo in Model Test (#18953) 2024-06-18 11:59:17 +08:00
Oğuz Demirbaşcı
18b4bcba0d useEnumCaseInsensitive option fixed in Java Native Model Enum (#18762) 2024-06-17 17:49:50 +08:00
Dennis Ameling
793aba724a [kotlin-server][javalin6] Add Javalin 6 support (#18928)
* [kotlin-server][javalin6] Add Javalin 6 support

Javalin 5 support was added in 13edc5d. Javalin 6 has been released, with some breaking changes. Let's add a new supportedLibrary to not break existing users of Javalin 5.

https://javalin.io/migration-guide-javalin-5-to-6

* Fix Gradle config and don't include JVM 8 CI anymore (JVM 11 is the minimum for Javalin)

* Update docs

* Fix optional query parameter handling and turn into expected type
2024-06-17 11:38:17 +08:00
Peter Storch
c806ea51b3 requestMappingMode: Explicit configuration to control the location of the generated class level RequestMapping annotation (#18896)
Based on #13838 but for kotlin-spring.

Fixes #18884
2024-06-17 11:36:03 +08:00
jpfinne
129e4dc9c9 Fix #18715 [JAVA] ensure codegen fields and additionalProperties are not conflicting (#18935)
* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Use MUSTACHE_PARENT_CONTEXT in additionalProperties

* Fix link to mustache documentation
2024-06-17 11:35:40 +08:00
Val Packett
989a79811a [Android][Volley] Build fixes (#18899)
* [android] Fix useAndroidMavenGradlePlugin type in template

* [android][volley] Use version variables in template

* [android][volley] Exclude httpclient

As it is incompatible with Android

* [android][volley] Resolve file conflict between httpcomponents modules

* [android] Update Gradle, the plugins, build tools

This fixes building with current Android Studio.

Android Gradle plugin version 8.0.0 was chosen for wider compatibility
with Android Studio versions (as far back as 2022.2.1).

The Maven plugin has been abandoned since the functionality is now
built in, and manual jar tasks are not necessary with it.

* [android] Regenerate samples
2024-06-16 17:17:59 +08:00
Philzen
6f9ad31df3 [JAVA-SPRING] Avoid broken code due to duplicate rendering of @Deprecated annotation with generateBuilders=true (#18917)
* Implement regression test for #12804

* Fix duplicate rendering of @Deprecated annotation on Builder methods

* Regenerate samples

* Sort entries so it's easier to parse if an entry already exists

* Add sample that uses generateBuilders=true to test build matrix

Serves as an additional regression check for #12804

* Add --no-transfer-progress to mvn build command to increase log legibility
2024-06-16 12:02:53 +08:00
Philzen
ec8998b39f [test-stack] Implement inner class assertion and fix typo "doesNotContains" (#18921)
* Implement InnerClassAssert for easy inner class testing

* Suppress "'Optional.get()' without 'isPresent()' check" warning

For now, until https://youtrack.jetbrains.com/issue/IDEA-354935
is solved.

* Apply DRY refactoring

* Move newTempFolder helper method into TestUtils

* Fix typo `doesNotContains`

* Pluralize assertion classes that extend ListAssert

* Add short-hand has/doesNotHaveAnnotation methods to Method assertions

So .hasAssertion(String) can replace .assertMethodAnnotations().containsWithName(String)

* Refactor tests, simplifying setup using CodegenConfigurator

* Harmonize API, removing confusion between has… and assert…

This makes our the assertion API more consistent, in the way that
assertSomething("") will always return a different assertion type,
while hasSomething("") will always return the same type.

* Use simplified hasAnnotation/doesNotHaveAnnotation assertions
2024-06-16 10:03:11 +08:00
Ghufran Zahidi
3d93862c6d OneOf should handle Inheritance based type (#18892) 2024-06-16 00:06:56 +08:00
Philzen
642b1a3a95 [JAVA] [SPRING] [PKMST] [MICRONAUT] XML wireformat: Fix Jackson useWrapping=false, JAXB+Jackson namespaces (#18870)
* Fix XML annotations on model properties (JavaSpring)

* generate JAXB annotations for attributes and elements

* generate wrapper annotations (JAXB and Jackson)

* use XML config from items for annotations of containers

* Add test for Jackson XML wrapper correctness

* Add additional test cases to cover all xml applications in spec

Test now covers all use cases described in
- https://web.archive.org/web/20240424203304/https://swagger.io/docs/specification/data-models/representing-xml/
- https://spec.openapis.org/oas/v3.0.0#xml-arrays

* Fix basename used instead of xmlName when items.xmlName is unset

See last example in spec: https://spec.openapis.org/oas/v3.0.0#xml-arrays

* Harmonize spacing between Annotation attribute name and value

* Refactor and group JAXB vs. Jackson XML annotations, only generate latter if enabled

This is in line with the way the class annotations in `xmlAnnotations.mustache`
are rendered – which only renders the `@Jackson`… xml annotations if
additionalProperty jackson is true.

Also reorder annotation attributes in the following order:
- localName/name
- namespace (optional)
- isAttribute/useWrapping (optional)

* Explicitly render `useWrapping = true` to @JacksonXmlElementWrapper

This was slightly inspired by @jzrebiec via PR #5371.

Wrapping is the default since Jackson 2.1 – so explicitly rendering
this will:
- make generated model work out-of-the-box in Jackson 2.0 for instance
- ensure the models still work if the local `XmlWrapper` was
  configured with `useXmlWrapper(false)`

* Move xml test spec to java resources folder (not spring specific)

* Make test class name match class-under-test

This makes discovery & cross-navigation in IDE easier.

* Add complete xml annotations test for Java generators

* Fix Java PKMST generator not generating @JacksonXmlElementWrapper

* Fix Java microprofile generator missing @JacksonXmlRootElement

* Fix Java microprofile generator not using wrapper annotations and namespaces

* Fix Java Micronaut Client creating invalid (unclosed) @XmlAttribute annotations

* Fix Micronaut Client using wrong localName for @JacksonXmlElementWrapper

* Fix Micronaut client rendering @JacksonXmlProperty annotation twice

* Make Java Micronaut render @JacksonXmlElementWrapper(useWrapping=false) for non-wrapped elements

* Fix Jackson element using `xml.name` when it should be `items.xml.name`

Closes #5989
Closes #3223
Relates to #9371

* Fix JAXB element using `baseName` instead of `xmlName` when items.xmlName is unset

* Remove XML generation debug output from templates

* Remove redundant newline between XML class annotations and class

Brings the SpringCodegen in line with other Java Codegen's

* Remove redundant newline between XML setter annotations and setter

* Fix multiline JavaDoc block indentation and format

* Simplify / condense xml annotation template into single lines

May look a bit more complex, but cuts out a lot of repetitiveness.
Also reorders annotation attributes in the following order:
- localName/name
- namespace (optional)
- isAttribute/useWrapping (optional)

* Harmonize spacing between Annotation attribute name and value

* Remove unused jackson_annotations partial

Was not referenced anywhere in java-helidon resources folder

---------

Co-authored-by: Christian Schuster <christian@dnup.de>
2024-06-15 23:02:32 +08:00
William Cheng
13facdaab5 [python] Add an option to add ensure_ascii=False to json.dumps (#18888)
* Added ensure ascii

* add option to add ensure_ascii=False in jsom.dumps

* remove option

* update workflow

---------

Co-authored-by: Emile Girard <Emile.Girard@opal-rt.com>
2024-06-15 18:39:06 +08:00
William Cheng
a40673acb9 update rust axum samples, add cargo fmt (#18938) 2024-06-15 18:35:49 +08:00
Emmanuel Mathot
0aac363ca0 [rust-axum] Support for response status code ranges (#18895)
This PR adds support for response ranges in rust-axum server, as defined in section 4.8.16.2 of the spec.

### PR checklist

- [X] Read the [contribution guidelines](https://github.com/openapitools/openapi-generator/blob/master/CONTRIBUTING.md).
- [X] Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community.
- [X] Run the following to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
  ```
  ./mvnw clean package
  ./bin/generate-samples.sh ./bin/configs/*.yaml
  ./bin/utils/export_docs_generators.sh
  ```
  (For Windows users, please run the script in [Git BASH](https://gitforwindows.org/))
  Commit all changed files.
  This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit as it would merge with master.
  These must match the expectations made by your contribution.
  You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`.
  IMPORTANT: Do **NOT** purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
- [X] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming 7.6.0 minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
- [X] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.
@frol @farcaller @richardwhiuk @paladinzh @jacob-pro
2024-06-15 18:12:47 +08:00
Emily Crandall Fleischman
cc24106832 [Rust-Axum] Use x-response-id if specified (#18906)
* [Rust-Axum] Use x-response-id if specified

* update samples
2024-06-15 18:12:38 +08:00
Filipe Silva
8bac93e23b [csharp] Improved apiclient.mustache (#18915)
* improved apiclient.mustache to keep it dry, sharing a single exec with Action<> delegate.

* updated samples and test

* Removed async from ApiClient.mustache

Updated samples

* Revert change to CSharpClientDeepObjectTest.java

* Fix async await (it was not waiting creating a null exception)

Updated samples

* Fix File IO namespace with using directive

* Improved comments on new methods

Added new DRY method DeserializeRestResponseFromPolicy

* Fix comments and parameters for new method DeserializeRestResponseFromPolicy

Updated samples
2024-06-15 17:54:14 +08:00
Tobias Zink
01fec76ab1 feat(typescript-angular): add support for Angular V18 (#18916)
* feat/typescript-angular/add-v17-support

* HTTP_TRANSFER_CACHE_IN_OPTIONS for angular 17 as well

* run build scripts again because of angular 17 HTTP_TRANSFER_CACHE_IN_OPTIONS
2024-06-14 15:14:28 +02:00
Daniel Imber
f36590051f [Enhancement] [Gradle Plugin] Allow templates from classpath (#14909)
* [Enhancement] [Gradle Plugin] Allow templates from classpath

* Adding missing argument binding.
2024-06-13 21:20:41 +08:00
Jean-Donald Roselin
ea0190324e fixes #18853: provide support of array attributes in multipart/form-data request for axios and fetch typescript clients (#18855) 2024-06-13 14:49:55 +02:00
Max Lapshin
788fd6f725 Golang client can use pattern-based discriminator between oneOf (#18760)
* Enable reading schemas with pattern-based discriminator between oneOf for golang client #5311

* Codegen after changing to golang templates #5311
2024-06-13 16:31:36 +08:00
William Cheng
26a164e57f [Java][Spring] enumUnknownDefaultCase true now returns correctly in fromValue (#18914)
* enumUnknownDefaultCase true added for Spring

* Resource added for test

* Updated tests

---------

Co-authored-by: Dean <dean.kane@opencastsoftware.com>
2024-06-13 16:23:56 +08:00
William Cheng
1765efc1ff [Golang] Introduce 'lambda.type-to-name' in models_anyof.mustache (#18912)
* Update model_anyof.mustache

* add tests for anyof in go client

---------

Co-authored-by: Martin Lakov <85170913+martinlakov@users.noreply.github.com>
2024-06-13 16:01:58 +08:00
devhl-labs
3abe2512c5 [csharp][generichost] Add options for model parameter sorting (#18886)
* fixed parameter ordering

* placed changes behind a switch

* bug fix

* minor revert

* use lombok.Setter

* addressed comment

* lint

* minor refactor

* massively improve csharp templates code

improved apiclient.mustache to keep it dry, sharing a single exec with Action<> delegate.
improved api.mustache to keep it dry, used chain constructors, kept RequestOptions in a single method, set configuration with alias directive
moved fqn types to using directive for cleaner code
removed 'this' from variables/props that are redundant
fix CSharpClientDeepObjectTest code is now DRY so count must only be one

* updated test samples csharp

* removed async from ExecAsync (not needed here anymore)

* updated samples csharp

* nullable property not working on models due to not being defined in yaml schema

updated samples

* added options

* rebuild tests

* revert unintended commits

* rebuild samples

* rebuild samples

* rererebuild samples

* fix manual tests

---------

Co-authored-by: filipe <filipe_ds@live.com.pt>
2024-06-13 00:25:29 +08:00
William Cheng
fc0105e214 [Java][jaxrs-spec] enumUnknownDefaultCase true now returns correctly in fromValue (#18910)
* enumUnknownDefaultCase true added for Jaxrs-spec

* Updated tests

---------

Co-authored-by: Dean <dean.kane@opencastsoftware.com>
2024-06-12 23:43:43 +08:00
William Cheng
ef7654958e Marketplace software zapier request middleware (#18907)
* feat: add middleware for requests

* update samples

---------

Co-authored-by: Stephen (Alex) Wallen <wallenstephen@outlook.com>
2024-06-12 16:32:08 +08:00
Dennis Melzer
7084e87140 Remove bean validation for uuid (#18900)
* Remove bean validation for uuid

* Add maxLenght to test the uuid validation
2024-06-12 11:53:14 +08:00
William Cheng
37ea82b2c7 Fix list in kotlin client templates (#18891)
* fix list in kotlin client templates

* remove java syntax in kotlin template

* fix array check
2024-06-12 11:42:44 +08:00
Filipe Silva
e8bbfe23b4 [csharp] fix system.web warning and removed unneeded fqn (#18902)
* Refactor validatable.mustache moved fqn types to using directive for cleaner code

Fix netcore_project.mustache conditional "System.Web", more details:
https://learn.microsoft.com/en-us/aspnet/core/migration/inc/adapters?view=aspnetcore-7.0

* updated csharp samples
2024-06-11 19:53:39 +08:00
Filipe Silva
7f34e11a7f [csharp] Refactor anyOf model template (#18901)
* Refactor AnyOf model removed "this."

* Updated csharp samples
2024-06-11 18:43:27 +08:00
Klaus Mueller
8357cc313b muenchen deeplink (#18894) 2024-06-10 22:46:06 +08:00
Nate Todd
00f2cd573c [Elixir] Fix generation issues and compilation warnings in Elixir generator (#18788)
* Format Elixir generator

* Update Elixir reserved words

* Update Elixir generator docs

* Improve typespec generation to avoid double ".t" issues

* Fix compilation warnings by changing reserved words to use suffix instead of underscore prefix

* Include additional reserved words and handle words with leading underscores

* Update samples and docs

* Uses dataType instead of baseType for non-struct types

* Generate elixir samples

* Fixes issue with AnyType in a list

* Generate elixir samples

* Removes normalizeTypeName for arrays as they correct by getTypeDeclaration

* CodeStyle

---------

Co-authored-by: Michael Ramstein <michael@ramste.in>
2024-06-10 14:06:16 +02:00
Jason Schroeder
80bb3dde0b build: use runtime scope for slf4j-simple log sink (#18881)
Avoid leaking this as a dependency to openapi-generator consumers.
2024-06-10 17:45:51 +08:00
Pierre B
f517bf7b98 [typescript-fetch] - Fix Nullable Types (#18887)
* fix nullable types

* fix samples

* fix samples

* fix samples

* fix samples

---------

Co-authored-by: Pierre Berube <pberube@blackpointcyber.com>
2024-06-10 11:35:20 +02:00
devhl-labs
2851838f7f [csharp][generichost] Fixed parameter ordering (#18823)
* fixed parameter ordering

* placed changes behind a switch

* bug fix

* minor revert

* use lombok.Setter

* addressed comment

* lint

* minor refactor
2024-06-10 14:46:55 +08:00
William Cheng
0cc9644120 Add enum default value tests to python clients (#18883)
* add enum default value tests to python clients

* add new files
2024-06-08 17:34:57 +08:00
Mike Welsh
a5a99585ef [Python] Add enum support when building default values for model properties when using $ref (#18796)
* Add enum support when building default values for model properties

* Update enum handling for Python for enum references

* Remove unused method

* Update mustaches for FastAPI, Pydantic, and Python for default values

* Address PR feedback and rebase main

* Remove old 2_0 samples
2024-06-08 16:18:03 +08:00
Philzen
5adf1ff522 Avoid UnsupportedEncodingException by design, replacing magic string "UTF-8" with StandardCharsets.UTF_8 (#18851)
* Replace magic string "UTF-8" with StandardCharsets.UTF_8

This avoids an UnsupportedEncodingException by design.

* Remove unused UnsupportedCharsetException import
2024-06-08 15:23:24 +08:00
ふぁ
dc81339ef1 [typescript-fetch] fix #18876 Type error in oneOf when legacyDiscriminatorBehavior is false (#18877) 2024-06-07 10:44:39 +02:00
William Cheng
4be5971e0f [cpp-restsdk] add support for oneOf via std::variant (#18821)
* Revert "Revert "[cpp-restsdk] add support for oneOf via std::variant (#18474)…"

This reverts commit 8d398719c9.

* update samples

* update pom

* set cxx 17

* Revert "set cxx 17"

This reverts commit 0cec8f725d.

* install clang 6.0

* Update CI/circle_parallel.sh

Co-authored-by: Amin Yahyaabadi <aminyahyaabadi74@gmail.com>

* fix include

---------

Co-authored-by: Amin Yahyaabadi <aminyahyaabadi74@gmail.com>
2024-06-07 12:24:39 +08:00
Nikita Shmakov
3aba42733b clone Schema using AnnotationUtils.clone with WA (to clone schemas wi… (#18867)
* clone Schema using AnnotationUtils.clone with WA (to clone schemas with example field set)

* changes after scripts run
2024-06-06 20:55:51 +08:00
ふぁ
6ae8a8f4c7 [python] fix deserialize on basic str fails (#18800)
* [python] fix #18774 Deserialize on basic str fails

* [python] update sample

* [python] update test

* [python] remove type

* [python] fix test

* [python] add top level type test

* Update deserialize content_type parameter and quote

* [python] restore echo_api test

* [python] add allow empty json in Response
2024-06-06 16:15:50 +08:00
Val Packett
d1254ccfda [dart] Apply var/param/model name mappings, handle single _ (#18663) (#18860)
Fixes #18663
2024-06-06 13:22:09 +08:00
Humle-T
36ade65993 [kotlin-spring] Fix two missing ) in kotlin-spring/pathParams.mustache (#18854) (#18861) 2024-06-05 15:51:09 +01:00
Val Packett
0621d3462d [erlang-client] Apply var/param name mappings (#18662) (#18859)
Fixes #18662
2024-06-05 17:45:18 +08:00
William Cheng
f97706d29b update php slim samples 2024-06-05 17:44:27 +08:00
Tommy Seus
b7a4a47270 [php-slim4-server] fix php syntax error in RegisterRoutes class (missing semicolon) (#18863)
Co-authored-by: Tommy Seus <tommy.seus@tmy.email>
2024-06-05 17:37:47 +08:00
Philzen
880df7a7a4 [maven-plugin] Generate hash from actual resolved spec rather than inputSpec file (#18849)
* Ensure temp directories are deleted after test execution

* Implement test that external $ref changes are reflected in checksum

* Generate hash checksum from actual resolved spec instead of inputSpec file

Otherwise regeneration will not happen when skipIfSpecIsUnchanged is enabled,
although formally the spec content has changed.

Fixes #4512 and #16489

* Use try-with-resources to ensure stream is closed properly on exit

* Fix deprecation warning on SimpleLocalRepositoryManagerFactory no-arg constructor

* Apply minor code cleanup

- use fluent setters where possible
- remove undocumented @throws from JavaDoc
- use List.of() instead of Arrays.asList() for single-element-collection
  (more memory efficient)
- fix some grammar issues in comments and JavaDoc

* Use non-blocking java.nio API for file existence checks
2024-06-05 17:19:22 +08:00
Philzen
446e168f43 Remove deprecated MockDefaultGenerator (#18857)
* Make DryRunStatus path field final

* Add templateData capture functionality to DryRunTemplateManager

* Replace MockDefaultGenerator with DryRunTemplateManager captures

* Remove MockDefaultGenerator
2024-06-05 17:10:17 +08:00
Val Packett
2fcf825e19 [clojure] Apply model/param/var name mappings (#18665) (#18858)
Fixes #18665
2024-06-05 16:58:13 +08:00
Jean-Donald Roselin
17a08d2646 fixes #18489: provide support of array attributes in multipart/form-data request for angular typescript client (#18490) 2024-06-05 09:37:00 +02:00
Philzen
86f23e13e5 [javascript-closure-angular] Change metadata to reflect beta status and non-existing xml capability in docs (#18834)
* Fix generator metadata to reflect beta status and non-existing xml capability

* Regenerate doc page

* Regenerate docs/generators.md
2024-06-05 10:57:22 +08:00
Philzen
45bc9c9e2f [php-laravel] Fix file database/migrations/2019_08_19_000000 being written twice (#18832)
* Implement dedicated transitional test for #18831 bugfix

* Remove duplicated database migration file from supportingFiles collection

* Activate AllGeneratorsTest.noDuplicateSupportingFiles

* Drop transitional test again

* Simplify truthy assertions
2024-06-05 04:43:52 +02:00
Philzen
aef4d75fd5 Refactoring: Use lombok for simple getters & setters (#18559)
* Add missing @Override annotation

* Fix JavaDoc unresolved symbol

* Fix JavaDoc method link

* Remove unnecessary semicolon

* Remove method identical to super implementations

* Replace repetitive getter code with Lombok @Getter

See https://projectlombok.org/features/GetterSetter

* Replace repetitive setter code with Lombok @Setter

See https://projectlombok.org/features/GetterSetter

* Generate no-args constructor with Lombok

* Generate all-args constructor with Lombok

* Fix parameter naming

* Replace stubbed abstract class implementations with Mockito mocks

* Remove unused import(s)
2024-06-05 04:43:05 +02:00
julien Lengrand-Lambert
42c78403cb JetBrains HTTP Client - Adds support for query and header params and env file (#18844)
* Adds basic support for query params.

* Need to parameterize them
* Need to add tests
* Need to add option to skip, maybe
* Need to add support for header params too

* Parameterizes query param values

* Need to add tests
* Need to add option to skip, maybe
* Need to add support for header params too

* Remove extra empty line

* Adds support for header params

* Also fixes extra end of line bug.

* Fixing failing test

* Adding tests for query params

* Adding tests for header params

* Adding basic support for env file

* Add support for env file for path variables and custom header variables

* TODO : Add tests

* Adding tests for env generation

* Adding generated test files

* Fix namefile
2024-06-05 10:30:25 +08:00
Philzen
1c787babad [JAVA] Fix jackson (de)serializer annotation breaking libs using gson when bigDecimalAsString=true (#18835)
* Implement regression test for bigDecimalAsString annotations

* Ensure @JsonSerialize and @JsonDeserialize is only generated when Jackson enabled

Fixes #6496
2024-06-04 13:26:07 +08:00
Philzen
a574d9e09c Remove unused retrofit1 mustache templates (#18833)
These are not used by any generator implementation, hence there's no
point in bundling them into every release we're shipping.

In case someday it is decided that a retrofit v1 generator will be needed
again, this commit can simply be reverted.
2024-06-04 12:53:19 +08:00
Philzen
35a882076f [python-fastapi] Fix CLI crash when calling config-help & update docs (#18816)
* Implement test for uniqueness of CliOptions across all generators

* Refactor existing test to use @DataProvider and fluent assertion

* Remove extraneous cliOption definition for disallowAdditionalPropertiesIfNotPresent

This is already defined (matching exactly in all aspects) in DefaultCodegen.

Resolves #18810

* Avoid variable declaration & assignment when only used once

* Add additional uniqueness tests for all DefaultCodegen List<> members

Test uniqueness for lists of:
- supportingFiles
- supportedLibraries
- supportedVendorExtensions

* Disable AllGeneratorsTest.noDuplicateSupportingFiles for the time being

Re-enable when #18831 is fixed

* Generate updated python-fastapi docs
2024-06-04 12:40:29 +08:00
devhl-labs
91a1931bd9 [csharp][generichost] Add support for primitive composed (#18825)
* add support for primitive composed

* build samples again

* rebuild tests

* addressed comment
2024-06-04 12:38:53 +08:00
Philzen
ed2aad6756 [JAVA: okhttp-gson, rest-assured, retrofit2] Don't generate Jackson import when serialization library is GSON (#18811)
* Partially revert "replace deprecated ISO8601Utils with StdDateFormat (#17052)"

This partially reverts commit 76560e34c9, namely anything
related to generators and samples using GSON instead of Jackson.

Changes to Jackson-only generation and generator-online regarding RFC3339DateFormat
are not being reverted.

* Test for default serialization library fallback

* Convert repetitive tests to parameterized test

* Add regression test for #18515

* [FEIGN] Only include <jackson-databind-version> property in pom.xml when required

* [RETROFIT2] Only include jackson-databind in gradle file when actually required

* [FEIGN] Don't include jackson dep's in sbt file when GSON is selected

* [FEIGN] Don't include jackson dep's in gradle file when GSON is selected

* DRY refactor JavaClientCodegen test code, increase readability

- use fluent assertions
- use helper method newTempFolder()
- use Java 9 static factory methods for maps
- don't declare variables that are only used once
- group declarations and usages
- use non-blocking java.nio.file API wherever possible

* Regenerate samples
2024-06-02 21:42:55 +08:00
Philzen
051abb82dc Bugfix/activate helidon versionutil tests (#18815)
* Reactivate tests

Contrary to Junit5, classes containing TestNG tests need to have
public visibility, otherwise the tests will not be discovered and run.

* Reformat tests for readability

* Rewrite tests using fluent assertions
2024-06-02 21:42:02 +08:00
William Cheng
713aa92b22 add tests for 18772 (#18828) 2024-06-02 18:10:46 +08:00
Gerwin Jansen
c08afa37e4 [BUG][Csharp][GenericHost] OpenApi 3.1: Model property of type map/additionalproperties gets generated as object (#18772)
* Fix the bug + add test case

* Add sample output

* Update version number in new sample output

---------

Co-authored-by: Gerwin Jansen <gerwinjansen@users.noreply.github.com>
2024-06-02 17:31:53 +08:00
Philzen
4ae4bc5f5d [kotlin-spring] Generated code using Schema with discriminator mapping will not compile (#18826)
* Update springdoc-openapi-starter-* to v2.2.0 in gradle build

This brings it in sync with the maven pom. Brings swagger-annotations
version 2.2.15 as transitive dependency, implements the @Schema annotation
property `requiredMode`.

Hence fixes #14949

* Update kotlin-server samples
2024-06-02 15:18:38 +08:00
Philzen
2b9949a66b Bump Jackson to latest v2.17.1 and sync in templates (#18799)
* Drop separate version property

Not required as all Jackson packages usually tether on a version bump.

* Update Jackson to v2.17.1

* Sync Jackson version used by Spring Boot with project version

* Sync jackson update to v2.17.1 with generator templates

* Regenerate samples with updated versions

* Adjust test to current exception msg behavior

* Add dependency mgmt to ensure matching version for transitive dependencies

* Update library descriptions with correct Jackson version number

* Update library descriptions with correct GSON and JSONB versions

* Update retrofit library description with correct version number

* Update retrofit description to include Jackson as an option

This should have been done as part of in #16853.

* Update remaining libary version descriptions with correct versions

* Generate updated doc
2024-06-02 15:17:38 +08:00
devhl-labs
f540e003f5 fixed workflow (#18824) 2024-06-02 15:07:57 +08:00
William Cheng
8d398719c9 Revert "[cpp-restsdk] add support for oneOf via std::variant (#18474)" (#18820)
This reverts commit 6a3d406690.
2024-06-01 19:04:03 +08:00
Amin Yahyaabadi
6a3d406690 [cpp-restsdk] add support for oneOf via std::variant (#18474)
* [cpp-restsdk] add support for oneOf via std::variant

* [cpp-restsdk] detect the latest supported C++ standard in CMake

* [cpp-restsdk] add test with oneOf support for cpprest

* [cpp-restsdk] avoid warnings because of implicit this capture

* [cpp-restsdk] avoid deprecated CMake version warnings

* [cpp-restsdk] build the test into the build directory - parallel build

* [cpprest-sdk] use absolute source path for cmake + debug build

* fix: remove inheritance due to template not overriding

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-06-01 17:48:02 +08:00
William Cheng
ca94559fb6 Add tests for Cpprestsdk client in CircleCI (#18817)
* add cpprest sdk test in circleci

* install
2024-06-01 17:31:20 +08:00
Marc Le Bihan
84ce2bfd14 [BUG][C++][cpp-pistache-server] An api receiving a std::optional parameter generates a org::openapitools::server::model::std::optional<...> that doesn't compile #18792 (#18793)
Solving this issue has for goal to reduce the amount of work required to resolve the [[C++] Error making the cpprestsdk generated files](https://github.com/OpenAPITools/openapi-generator/issues/6726)
   and to put the `cpp-pistache-server` generator a the "same compilation problems" level than the `cpp-restsdk` generator in font of the #6726.
2024-06-01 17:04:46 +08:00
Lars van Leeuwen
8783ad8a18 [Python] List enum members in docs (#18804)
* List enum values in docs

* Remove newline

* Remove another newline

* Generate samples
2024-06-01 17:00:11 +08:00
Philzen
e2258fb790 [kotlin-spring] Fix gradle build failure when generated with interfaceOnly=true (#18809)
* Fix kotlin-spring not building when `interfaceOnly=true`

Fixes #18803

* Regenerate fixed kotlin-spring samples

* Include sample kotlin-springboot-request-cookie in CI build check

* Apply suggestions from code review

Co-authored-by: Stefan Koppier <stefan.koppier@outlook.com>

---------

Co-authored-by: Stefan Koppier <stefan.koppier@outlook.com>
2024-06-01 16:55:25 +08:00
Philzen
66126a8ae4 Remove unused test dependencies org.reflections & maven-rewrite (#18798)
* Specify exact relative path to parent pom.xml

* Remove org.reflections from the test stack

* Remove unused parameter

* Remove unused method

* Fix raw use of parameterized variable warning

* Use Files.readString instead of converting raw bytes

* Add test coverage for TestUtils.validatePomXmlFiles(List)

* Reimplement TestUtils.validatePomXmlFiles(List) with Jackson XML mapper

* Remove maven-rewrite dependency
2024-06-01 16:42:26 +08:00
Philzen
6a6f39d6f4 Change/reintroduce junit5 (#18790)
* Revert "Revert back to junit4 (#18786)"

This reverts commit 2471ba2d2e.

* Make junit engine execute TestNG test cases

* Fix failing test and use tempDir's for test code generation

* Make test fail with helpful info in case generator throws exception

* Suppress error output from TestUtils

* Remove transitive junit4 dependency

* Sync guava-testlib version with guava version

* Add hint regarding alternative for guava-testlib's FakeTicker
2024-06-01 16:40:40 +08:00
devhl-labs
368110a631 [csharp][generichost] Added 4.8 samples (#18791)
* added 4.8 samples

* easer to understand diff

* build samples again

* build samples again
2024-06-01 16:17:58 +08:00
William Cheng
353320cb04 [kotlin] better oneOf, anyOf support (#18382)
* add validteJsonElement

* add oneOf support

* various fixes, add tests

* minor fixes

* minor fixes

* update data class

* remove comments

* array support, add test

* update api client constructor

* add anyOf support

* add new files

* fix merge

* update

* update

* update

* update
2024-05-31 12:22:27 +08:00
William Cheng
1c7e5c4726 add kong as sponsor (#18795) 2024-05-31 00:42:01 +08:00
devhl-labs
b19fc67a53 added framework support (#18776) 2024-05-29 20:58:52 +08:00
William Cheng
2471ba2d2e Revert back to junit4 (#18786)
* revert junit5 upgrade

* revert upgrade to junit5

* fix kotlin-wiremock template folder

* fix/comment tests

* update
2024-05-29 18:58:44 +08:00
HentaiHeavenVR
edaace9323 Fix TS7053 errors in generated instanceOf* methods (#18770)
* Fix bug referenced in #18746 , introduced in #18418

* Generate examples
2024-05-28 14:18:39 +02:00
Oliver Stevns Larsen
48919ba3d2 Add model name mapping to swift5 client generator (#18780) 2024-05-28 16:48:53 +08:00
devhl-labs
56f301632e removed warnings (#18775) 2024-05-28 16:41:30 +08:00
dependabot[bot]
1c94576da7 Bump jorelali/setup-elm from 5 to 6 (#18777)
Bumps [jorelali/setup-elm](https://github.com/jorelali/setup-elm) from 5 to 6.
- [Release notes](https://github.com/jorelali/setup-elm/releases)
- [Commits](https://github.com/jorelali/setup-elm/compare/v5...v6)

---
updated-dependencies:
- dependency-name: jorelali/setup-elm
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-28 16:39:01 +08:00
Brais Gabín
c1d0e7c24a Support nonPublicApi on jvm-retrofit2 (#18769) 2024-05-27 12:22:26 +01:00
Marcel Huber
74a9509e0c [Java][native] Fix: DateTime in deepObjects is no longer serialized correctly [fix #18742] (#18743)
* fix serialization of OffsetDateTime

* update samples

* wrap import
2024-05-27 16:32:32 +08:00
Philzen
9c999b6559 [General] Remove defunct global property withXml from generator, docs, maven & gradle plugin (#18568)
* Mention that Golang generator also supports XML annotations

Looking at src/main/resources/go/model_simple.mustache and
src/main/java/org/openapitools/codegen/languages/GoClientCodegen.java
the GoLang seems to cater for withXml=true

* Fix maven plugin config description for `withXml`

* Add basic test for global withXml setting

* Use global withXml setting if not configured in ConfigOptions

Resolves #3839 and #5764

* Don't generate metadata or other files when only Models are tested

* Reformat table for readability

* Remove global property `withXml` from generator and docs

* Move WITH_XML constant out of system constants block

Currently there is only a single reference to this value in the whole
codebase (GoClientOptionsProvider). Maybe we should re-think how this
file is organised (i.e. provide a clearer split / mapping / understanding
what are system properties vs. global properties vs. configOptions and
where to put them).

* Remove global option `withXml` from Maven plugin (Breaking change)

This is a "soft" breaking change: Plugin will no longer execute if
user have this option – which is good, b/c it never worked as expected.
We may want to hint this in the 8.0 release notes.

* Remove global property `withXml` from Gradle plugin (Breaking change)

This is a "soft" breaking change: Plugin will no longer execute if
user have this option – which is good, b/c it never worked as expected.
We may want to hint this in the 8.0 release notes, so they can add it
to the `configOptions` map if required, or simply delete it

* Update samples to reflect removed `withXml` property

* Move `withXml` option into ConfigOptions for Java Microprofile sample

* Remove unused local vars and parameters

* Avoid repetition using fluent assertions

* Remove extraneous debug output
2024-05-27 14:35:32 +08:00
William Cheng
258b7af727 update samples 2024-05-26 21:42:10 +08:00
Aaron Pritzlaff
e6964482b8 Service api fix (#18767)
* moved service api into shared source

* moved service api into shared source

* This Scala cask change makes the service traits available to 
Both JVM and JS platforms.

It does this by moving the api interfaces into the cross-platform
Shared sources
2024-05-26 21:37:35 +08:00
devhl-labs
ee3ff39225 fixed sorting (#18706) 2024-05-26 18:07:31 +08:00
dependabot[bot]
af090fd526 Bump s4u/setup-maven-action from 1.12.0 to 1.13.0 (#18703)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  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>
2024-05-26 17:54:31 +08:00
Jimmy Praet
6a9b10075e Make JAX-RS BuilderImpl class non-final to fix WELD-001503 issue (#18724)
Fixes #17875
2024-05-26 16:43:32 +08:00
cvkem
5e8b589bea Fix rust server auth (#18692)
* Added authentication via Bearer-token api_key and basic for server and client

* Improved errorhandling

* Added check on oAuth audience to example

* Updates of the petstore files for Rust-server

* Moved module import to prevent issue in callbacks

* updated samples

* Fix for unused-qualifications issue

* updated sampmles
2024-05-26 16:04:14 +08:00
Ievgen Rozdymakha
0daf9ffa5b Fix javaJaxRS template: remove deprecated in JDK9 method usage (#18728)
* Fix javaJaxRS template: remove deprecated in JDK9 method usage

* Fix javaJaxRS api template: regenerate samples
2024-05-26 15:58:41 +08:00
Marcel Huber
728abafdfa [Java][native] Fix: empty deepObject can produce invalid query [fix #18736] (#18737)
* fix empty query parameter string

* update samples
2024-05-26 15:54:58 +08:00
Jonathan Siegel
77365c34fa [crystal-lang] Resolve type check compile error in ApiError (#18759)
* Even with .nil? typecheck, compiler still fails due to .empty? call on nillable type. This appears a poor implementation issue by crystal-lang, but this explicit try avoids the issue for now.

* Made call more succinct.
2024-05-26 11:44:07 +08:00
William Cheng
e6fcbcbde0 update crystal petstore tets (#18766) 2024-05-26 11:29:24 +08:00
Jonathan Siegel
e6f372992e [crystal-lang] Update dependencies to remedy build failure (#18755)
* Updated crystal dependencies to remedy build failure with a mutually conflicting library version.

* Samples updated from running PR-suggested build.
2024-05-26 11:15:13 +08:00
Philzen
22f18fad91 Fix tests for parsing of additional type annotations & refactor test code (#18751)
* Fix tests for parsing of additional type annotations

These were comparing the same things with each other and this could
not fail. Now using (as probably intended by the author) the before
unused ArrayList for assertion of the expectation.

* Remove Exception from signature that is never thrown

* Simplify assertions using AssertJ

* Replace stub implementation with abstract Mockito mock

* Cache flat parsed openapi results for faster test execution

Simply caching any calls to TestUtils.parseFlattenSpec that occur
at least twice.

* Fix some "Raw use of parameterized class 'Schema'" warnings
2024-05-26 10:53:23 +08:00
Philzen
746961d07a Fix long running test (#18754)
Depending on test exec environment, this test could linger around
for ~8 minutes, b/c pinging test.com will not resolve and run into
seveal timeouts.
2024-05-25 14:28:59 +08:00
Esteban Gehring
7bc2a66065 tiny simplification of typescript-nestjs api.service.mustache (#18749) 2024-05-23 16:52:08 +02:00
Arivanandan
7d3258f155 [typescript-nestjs] Fix template for useSingleRequestParameter (#18744)
* fix: template

* chore: samples
2024-05-23 15:52:31 +02:00
Simon Hanna
f49efe02fd [typescript/nestjs] remove unused imports and allow async configuration (#18745) 2024-05-23 14:12:26 +02:00
aaronforest-wf
235b57e499 convert all text/* content types to strings in the apache http java client (#18731) 2024-05-23 16:36:34 +08:00
William Cheng
00c1ceffcd [Java][webclient] update junit to 5.x (#18741)
* webclient: update junit to 5.x

* update samples

* update samples

* update samples

* update samples

* update samples

* clean up

* update samples

* update pom plugin version

* update tests
2024-05-23 16:27:06 +08:00
William Cheng
63d1564637 update C# samples 2024-05-23 14:41:44 +08:00
Omer
a230588aca Fix build issue when using dotnet 8.0.300 (#18712)
https://github.com/dotnet/sdk/issues/40445
2024-05-23 14:37:26 +08:00
Aaron Pritzlaff
3a232611d2 Added support for freeform types (#18722) 2024-05-23 14:36:50 +08:00
William Cheng
638af0fe37 add it@m to sponsor list (#18733) 2024-05-22 15:24:06 +08:00
William Cheng
8860537e2b update samples 2024-05-22 15:13:38 +08:00
Horace Li
d0a8726580 [java][resttemplate] Fix missing javax validation imports with list validation (#18332)
* Fix java list validation

* Fix java list validation

* Fix java list validation

* Fix java list validation
2024-05-22 15:07:42 +08:00
Philzen
1d96c770f9 Update PR template with latest minor version reference (#18729) 2024-05-22 11:34:58 +08:00
William Cheng
ea7609f35b update requests in python-fastapi to newer version (#18726) 2024-05-22 00:37:02 +08:00
Renato Mameli
bfa26ea6be Add missing underscores for PascalCase enum values #4837 (#18594)
Co-authored-by: Renato Mameli <renato.mameli@teamviewer.com>
2024-05-21 15:29:34 +08:00
William Cheng
9398c6444a update samples 2024-05-21 14:58:21 +08:00
Evgenii
73598b9dbb [REQ] [ASPNETCORE] Add value types for the ASPNETCORE generator (#18646)
* Add value types for the ASPNETCORE generator

* generate samples
2024-05-21 14:45:54 +08:00
devhl-labs
ede6458d19 [csharp][generichost] Remove discriminator property (#18445)
* fixed nullability

* minor refactor to address a comment

* removed discriminator property

* update more manual tests

* update more manual tests

* added tests and bug fixes

* fixed allof

* reworked manual tests to compare json instead of classes, reworked discriminator logic

* removed unneeded code
2024-05-21 14:32:12 +08:00
Stefan Koppier
27120357aa [kotlin-wiremock] New generator for generating WireMock stubs using Kotlin (#18705)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient

* [kotlin-wiremock] added generator and sample

* [kotlin-wiremock] First version with petstore

* [kotlin-wiremock] Small typo

* [kotlin-wiremock] Added echo-api test

* [kotlin-wiremock] Split stub and stub builder

* [kotlin-wiremock] Added default values and jackson annotations to models

* [kotlin-wiremock] Small default value fix

* [kotlin-wiremock] Use Gradle wrapper version in samples-kotlin-server GitHub workflow

* [kotlin-wiremock] Added default artifact name

* [kotlin-wiremock] Added kotlin docs

* [kotlin-wiremock] Fixed capitalization in kotlin docs

* [kotlin-wiremock] Added kotlin-wiremock echo_api sample to GitHub workflow

* [kotlin-wiremock] Added new generator to README.md

* [kotlin-wiremock] Generated docs

* [kotlin-wiremock] Generated docs (missed commit)

* [kotlin-wiremock] Explicit Gradle wrapper version in kotlin server generators

* Revert "[kotlin-wiremock] Explicit Gradle wrapper version in kotlin server generators"

This reverts commit 71e1c47def.

* [kotlin-wiremock] Revert Gradle in workflow samples-kotlin-server and moved kotlin-wiremock samples to separate workflow

* [kotlin-wiremock] Use Java 11 instead of Java 8

* [kotlin-wiremock] ensure-up-to-date
2024-05-21 13:53:44 +08:00
Paul Parenko
9a35914f0c PR for openapi-generator-maven-plugin inputSpec -- Allow jar: URLs (#18576)
* Added support for <inputSpec/> arguments of JAR URLs.
E.g., jar:jar-specific-uri!/spec.yml.

* Resolve and search COMPILE dependencies for inputSpec resource.

* Added test cases for openapi-generator-maven-plugin:generate input
specifications:

* URLs of the form jar:jar-specific-uri!/spec.yaml

* Resources on the compilation classpath

in addition to the existing FILE test case.

* Check for inputSpecFile existence

else it is a remote URL && url is not empty

* replaced deprecated usage

* use Unix separators when on win-os

* example with jar inputSpec

* Comment not required anymore

Was introduced with #7587 could be removed with #10544

* referenced same maven version

these artifacts are referenced by same ${project.version} in https://github.com/apache/maven/blob/master/pom.xml

* updating maven dependencies to 3.9.6

---------

Co-authored-by: Allen D. Ball <ball@hcf.dev>
2024-05-21 13:51:52 +08:00
dependabot[bot]
9222231832 --- (#18718)
updated-dependencies:
- dependency-name: jurplel/install-qt-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 13:49:25 +08:00
William Cheng
56cc4828a2 update readme 2024-05-20 17:38:31 +08:00
William Cheng
741bf0c035 Prepare 7.7.0-SNAPSHOT (#18709)
* Revert "7.6.0 release"

This reverts commit d76f9d32d1.

* prepare 7.7.0 snapshot in master

* update samples
2024-05-20 17:27:17 +08:00
William Cheng
ab7d0cb74f 7.6.0 release (#18708) 2024-05-20 15:26:08 +08:00
Gonzalo Gomez
ef0d10df8d Use time.RFC3339Nano instead of time.RFC3339, do not want to loose the millisecond resolution. (#18673) 2024-05-19 17:53:51 +08:00
Pavel Miller
33617ee867 Improve generation of selected models with dependent models (#18462)
* Issue-18444: recursively trace variables and support of new option

* Issue-18444: suppoting inheritance, but interfaces

* Issue-18444: build project instructions executed

* code review from wing328: tab-spaces removed

* code review by wing328: added a line of comment for the private method
2024-05-19 17:46:50 +08:00
Aniokrait
9b0ca06442 [html2] Change to correct variable (#18685) 2024-05-19 17:46:27 +08:00
Vasiliy Ditsyak
3d15864eac [dart-dio] Incorrect hashCode and == overide for fields withList (#18198)
* [dart-dio] Incorrect hashCode and == overide for fields withList

* fix

* extend description

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-05-19 17:35:25 +08:00
RiccardoPetteruti-Onfido
8924083d73 Ruby: Fixed CodeQL polynomial regexp (#18699) 2024-05-19 17:28:04 +08:00
Kalvin Pearce
e9f961e36e [rust-axum] Split up api trait per tag (#18621)
* [rust-axum] Feat: split up api trait per tag

* [rust-axum] Fix: missing types in api files

* [rust-axum] Fix: add samples output

* [rust-axum] Feat: handle mutli tagged operations

* [rust-axum] Fix: spacing between generated operations

* [rust-axum] Fix: coding standards
2024-05-19 17:13:01 +08:00
Kaido Iwamoto
57dceae4ad Improve typescript-fetch code generation for oneOf cases without discriminator (#18702) 2024-05-18 11:11:34 +02:00
Marcus Pasell
62238c6886 [typescript-fetch] Make instanceOf infer type and check for undefineds (#18694) 2024-05-17 17:22:32 +02:00
William Cheng
2fe397cb3e synn beea validation template (jaxrs) (#18697) 2024-05-17 17:39:59 +08:00
Jeffrey Yasskin
7e94c873f7 Add typescript 5.x as an allowed version. (#18674)
* Add typescript 5.x as an allowed version.

* Adjust version ranges to keep tests passing.

* Update the typescript-rxjs sample.
2024-05-15 22:09:55 +02:00
Nikita Shmakov
70130edaab Properties with custom types inheritance fix (#18052)
* custom types support in inheritance fix

* files changed after scripts run

* remove unused method

* move cloneSchema to ModelUtils

* imports

* changes after scripts run

* test cloning array of enums schema
2024-05-15 19:44:39 +08:00
Miroslav Šedivý
014cd2cb2b typescript-axios: withSeparateModelsAndApi - use import types properly. (#18625) 2024-05-15 11:30:18 +02:00
Aviv Levitski
affb6bc1f7 [GO] Add assert constraints checks for complex types in the model template (#18654)
* [GO] Add assert constraints checks for complex types in the model template

* [GO] Update samples

* [GO] revert AssertRecurseInterface naming
2024-05-15 16:59:35 +08:00
William Cheng
a9b1f93d65 clean up samples, update test spec (cpp-restsdk) (#18675) 2024-05-15 15:09:17 +08:00
Marc Le Bihan
1fa2d474b4 [[BUG][C][cpp-restsdk] Missing Set.h when trying to generate from Twitter OpenAPI JSON #9969](https://github.com/OpenAPITools/openapi-generator/issues/9969) (#18631)
- Handling `std::set` in cpp-restdsk
    - Member variables using `std:set` added to `Pet` in cpp-restsdk 3.0 Petstore sample

[cpp-pistache-server] taking into account a remark on this issue about cpp-pistache-server and its set management

    - Switching `std::vector` to `std::set` for openapi set type in cpp-pistache-server
2024-05-15 14:51:59 +08:00
William Cheng
4e61738348 upgrade microprofile to junit5 (#18669)
* upgrade microprofile to junit5

* re-generate samples

* fix junit(DOT)version

* update tests for java microprofile server

* update samples

* update

* update

* update

* update

---------

Co-authored-by: Thorsten Hirsch <t.hirsch@web.de>
2024-05-14 18:21:19 +08:00
William Cheng
cc5c50b227 update cpp-restsdk to use 3.0 petstore spec (#18670) 2024-05-14 17:15:36 +08:00
William Cheng
09be19cef7 upgrade okhttp-gson and google-api-client to junit5 (#18668)
* upgrade okhttp-gson and google-api-client to junit5

* add changes in StringUtilTest

* use https instead of http to fix 301 (moved) error

* revert petstore test server url to http://petstore.swagger.io and regenerate samples

* synced gradle/sbt/pom, re-generated samples

* revert removal of port 80 from test url

* udpate google api client tests

* update sha

* update comment

---------

Co-authored-by: Thorsten Hirsch <t.hirsch@web.de>
2024-05-14 17:04:33 +08:00
Rohit Sanjay
ed33b86205 Use pascal case instead of double lambda (#18667)
Co-authored-by: Rohit Sanjay <rohitsanjay@Rohits-MacBook-Pro.local>
2024-05-14 14:41:57 +08:00
William Cheng
926a07fe4d Add tests for @Valid (enum) (#18664)
* add tests for #18430

* add new filies
2024-05-14 12:57:41 +08:00
CREKD
d5559d5e65 Remove @Valid even for enum types defined in components (#18451)
* Update beanValidation.mustache

* step 3

* Revert "step 3"

This reverts commit 73ba918d36.

* update mustache

* #

* isContainer

* step3

* ^

* fix
2024-05-14 11:56:53 +08:00
William Cheng
51ef8683fb [java] implement #18032 add builder pattern to java client and spring generator (#18650)
* add builder pattern to java client and spring generator

* regenerate samples

* update doc

---------

Co-authored-by: jpfinne <jeanpaul@finne.be>
2024-05-14 11:38:30 +08:00
Alex Jones
2f734515a1 fix: Null example values generated for enum properties (#18623)
* Fix null example values being generated for enum properties

* Update examples

* PRFB: use isEnumSchema
2024-05-14 11:31:22 +08:00
William Cheng
edbb021aad skip setting output folder in online service (#18652) 2024-05-14 11:12:35 +08:00
Jorge Rodríguez Martín
4a872a8d69 Prevent generating "pattern" and "size" to ENUM (#18658) 2024-05-14 00:13:15 +08:00
Lars Thern
2a15270589 [KOTLIN] Kotlinx serialization, use first party retrofit converter factory (#18656)
* Switch the jakewharton converter factory for the first party one

* Run all samples generation
2024-05-13 12:28:35 +01:00
Rohit Sanjay
b23dcbd190 [Java] [VertX] Handle hyphen-separated security scheme in input spec (#18630) 2024-05-13 16:52:18 +08:00
Jochem Kuijpers
2f9b487779 Fixes incorrect Jackson imports in Java templates used in ApiClient.java when useJakartaEe=true (#18507)
* Adds useJakartaEe condition to select the appropriate Jackson package to import.

This also removes the import on the apache-httpclient template where it doesn't actually get used, requiring users to declare additional dependencies for compilation that aren't actually required by the generated code other than for import.

* Ran generate-samples.sh
2024-05-13 16:48:59 +08:00
Max
cefeded745 [BUG][JAVA] oneOf/anyOf multiple constructors with same erasure #18548 (#18645)
* [BUG][JAVA] oneOf/anyOf multiple constructors with same erasure
#18548

* [BUG][JAVA] oneOf/anyOf multiple constructors with same erasure
#18548
2024-05-13 16:33:49 +08:00
Tim Quinn
0e05cf26d9 Add support for Helidon 4 MP client and server generation (#18627)
* Add support for Helidon 4 MP client and server generation

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

* Rerun samples generation trying to fix spring jobs

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

* Update copyright

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

* Correct the copyright notice

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

---------

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
2024-05-12 16:49:28 +08:00
Vikrant Balyan
4b56fd281a [Go] uses sanitized model name instead of the name (#18644)
* uses sanitized model name instead of the name

* commit sample

* samples updated

* update CI file to test the changes

* adds a pom.xml to the sample
2024-05-12 15:04:39 +08:00
Daniel García
970424678e Use Display instead of ToString in Rust generators (#18633) 2024-05-12 11:06:03 +08:00
0xMattijs
365fcd3fb4 Fix the post processing of enums in the Python generator, such that it uses the proper variable namesfrom x-enum-varnames (#18566)
Remove sample
2024-05-12 00:40:06 +08:00
William Cheng
eec30f2cda update sha256 for JSONTest.java 2024-05-12 00:08:27 +08:00
Max
d4d4c77fee [BUG] [Java] Invalid code generation for oneof types. (#18544)
* [BUG] [Java] Invalid code generation for oneof types. #18517

* update samples

* [BUG] [Java] Invalid code generation for oneof types. #18517

* [BUG] [Java] Invalid code generation for oneof types. #18517

* [BUG] [Java] Invalid code generation for oneof types. #18544
2024-05-12 00:07:02 +08:00
Aniokrait
2a3f63f9e3 [html2] Support oneOf (#18642) 2024-05-11 23:34:36 +08:00
Aniokrait
3d96a404e6 [html2] Support alias types (#18579)
* [html2] Support alias models to render html docs.

* [html2] Fix compile error

* [html2] Update sample
2024-05-11 23:33:47 +08:00
Esteban Dugueperoux
4637658f78 fix: Upgrade testng to avoid CVE-2022-4065 (#18635) 2024-05-11 23:19:57 +08:00
William Cheng
42536932da downgrade gradle to 7.6.4 (#18641) 2024-05-11 16:58:25 +08:00
William Cheng
65bdb99f96 update java version in build.gradle (#18640) 2024-05-11 15:23:30 +08:00
William Cheng
40c7adccd8 [gradle plug-in] update jvm target (#18639)
* update jvm target

* fix jvmTarget
2024-05-11 14:06:16 +08:00
William Cheng
4368eb45e8 update kotlin version to 1.9.0 (#18638) 2024-05-11 13:02:12 +08:00
Thorsten Hirsch
3805cf366c upgrade resteasy to junit5 (#18615)
* upgrade resteasy to junit5

* fix echo_api tests

* updated gradle/sbt/pom and generated samples with bin/generate-samples.sh

* fix xml syntax error

* forgot to run generate-samples.sh
2024-05-10 10:51:50 +08:00
Thorsten Hirsch
854e521a06 upgrade java native to junit5 (#18617)
* upgrade java native to junit5

* upgrade build.gradle, optimize imports

* upgrade gradle, re-generate samples

* migrate api_test.mustache and petstore tests of native-async & native-jakarta
2024-05-10 10:50:54 +08:00
William Cheng
29cfa3335d update python fastapi dependencies (#18624) 2024-05-09 13:23:16 +08:00
Charles Treatman
75dd531e65 upgrade swagger-parser to latest version (#18436)
* upgrade swagger-parser to latest version

* additional upgrades to address gradle failures
2024-05-09 12:29:33 +08:00
William Cheng
98f9c07bc4 update meta-codegen pom.xml 2024-05-09 12:29:04 +08:00
Thorsten Hirsch
5614eef995 upgrade openapi poms and codegen tests to junit5 (#18619) 2024-05-09 12:19:56 +08:00
Amrita Venkatraman
89c2664e4c updating config options (#18614)
Co-authored-by: Amrita Venkatraman <amrita.venkatraman@mavenclinic.com>
2024-05-09 10:46:00 +08:00
Max Nachlinger
03389dfdbd Bump Rust edition to 2021 and a few crates (#18608)
* bump Rust edition to 2021, update a few creates

* bump Rust edition to 2021, update a few creates
2024-05-09 10:43:11 +08:00
Thorsten Hirsch
b67a019cf9 upgrade apache-httpclient to junit5 (#18616) 2024-05-09 09:54:32 +08:00
William Cheng
4441ab303f [jaxrs-spec] fix nullable import, migrate tests to 3.0 spec (#18606)
* update samples

* fix nullable, better test (jaxrs-spec)

* Revert "update samples"

This reverts commit 2377d98de3.

* update samples
2024-05-08 17:45:43 +08:00
William Cheng
8226ff8f96 [python-flask] deference parameter schemas before further processing (#18605)
* update samples

* deref parameter, add null check

* Revert "update samples"

This reverts commit 2377d98de3.
2024-05-08 17:00:19 +08:00
Daniel Schreiber
9db0e3237c [php-flight] fix: always set http status in streaming response and use http status from spec (#18604)
This additionally adds streaming stubs for all methods (rather err on the side of too much stubs).
2024-05-08 14:26:41 +08:00
Max Nachlinger
ac649b2e2f Disable clippy::too_many_arguments in generated Rust client code. (#18601) 2024-05-08 11:52:20 +08:00
Ween Jiann
8f6a2860bf [go-server] Fix: error handling and linting (#18550)
* Update error.go and fix lint

* Regen

* Fix incorrect change

* Fix handler issue

* Regenerate
2024-05-08 00:06:45 +08:00
myz-dev
06499605e1 [RUST-AXUM] Fix #18580: disableValidation does not create superfluous code (#18592)
* fix: Respect `disableValidator` CLI option

Setting the `disableValidator` option to `true` used to generate
validation code but avoid calling it from the route handlers.
This generated invalid code in some cases.
This commit renders the `server-operation-validate` only, when the
`disableValidator` option is set to false (the default value).

* test: Update examples and run integration test

The generated samples are updated with:
`./bin/generate-samples.sh ./bin/configs/manual/*.yaml`
The relevant integration test
`mvn integration-test -f samples/server/petstore/rust-axum/pom.xml`
passes.

* test: Add integration test

This integration tests provokes the generation of code that would
not compile (see #18580). The new change that makes sure validation
logic is not rendered when disabled, makes sure the faulty code is not
generated and therefore the project compiles.

* test: Update examples and run integration test

The generated samples are updated with:
`./bin/generate-samples.sh ./bin/configs/manual/*.yaml`

The relevant integration test
`mvn integration-test -f samples/server/petstore/rust-axum/pom.xml`
passes.
2024-05-07 21:02:45 +08:00
myz-dev
2d967ccae8 [Rust-Axum] Fix uuid in header params causing compilation errors (#18563)
* fix: Fix uuid in header params causing errors

Routes with header parameters with a `format` of `uuid` in the openAPI
specification used to cause a compilation error in the resulting
Rust Axum code.
This commit fixes the issue by including the correct conversion trait
implementation on the condition that at least one header parameter of
`format` `uuid` is included in the specification.

* refactor: Add final to boolean

* fix: Bring str::FromStr optionally into scope

The trait needs to be in scope for the TryFrom implementation:
`TryFrom<HeaderValue> for IntoHeaderValue<uuid::Uuid> `
It will only be brought into scope when the implementation is rendered.

* test: Add integration test and its specification

This commit adds an integration test that tests the bug fix for #18554.
A header parameter of `format: uuid` is included in one route.
This makes the example create a route handler that tries to extract a
Rust `uuid::Uuid` type from the header. The integration test will check
that the generated code compiles.

* test: Update examples and run integration test

The generated samples are updated with:
`./bin/generate-samples.sh ./bin/configs/manual/*.yaml`
Most example projects have their version numbers bumped. Some changes
show, that there are some other unrelated changes to the files, which
indicates that some prior commit did not update the samples accordingly.
The relevant integration test
`mvn integration-test -f samples/server/petstore/rust-axum/pom.xml`
passes.
2024-05-07 21:02:19 +08:00
William Cheng
9929d35166 [refactor] Use getType in ModelUtils (#18577)
* use getType in model utils

* add tests

* update
2024-05-07 18:05:22 +08:00
keyjh2
be94c22d08 [C++][Pistache] Compile error when nesting references (#16711) (#18586)
When components/schema/<object> reference other objects, validate() was
getting called on the referenced objects with no arguments. The return
value was void, but checked as if it was a boolean value.
2024-05-07 17:15:42 +08:00
kiwi-oss
dec8a430df [Microprofile] Add option to use tags a client keys and server generator (#16673)
* [Java/Microprofile] Add support for Jackson serialization & async interfaces using Mutiny in Java Microprofile library

* Regenerate samples & docs

* Add server generator

* Update client to set configKey by classname

* Remove debug remains and comments

* Adapt method override to upstream changes

* Regenerate samples

* Revert "Regenerate samples"

This reverts commit b5bcbdea90.

* Move additional 2xx response to dedicated OpenAPI document

Some other generators than those for Micronaut don't seem to be able to
handle this case, so we don't add it to the general pet store document.

* Make filename consistent with other files in the folder

* Regenerate Microprofile client and server samples

* Generate samples

* Update documentation

* Generate samples

* Remove left-over `*.orig` files from Git merges

* Regenerate samples

* Regenerated samples

* changed generator name to "java-microprofile"

* added the new folder to .github/workflows/samples-java-server-jdk8.yaml so that CI will test it moving forward

* Renamed JavaMicroprofileServerCodegen.java

* regenerated samples

* only enable configKeyFromClassName if configKey is not set

* Updated documentation

* Change samples to use junit 4

* Fix junit 4 test classes

* run ensure up-to-date script

* fix kotlin test errors

---------

Co-authored-by: pravussum <pravussum@users.noreply.github.com>
Co-authored-by: frank <frank.buechel@kiwigrid.com>
Co-authored-by: Oscar <oscar.obrien@kiwigrid.com>
Co-authored-by: oscarobr <133783370+oscarobr@users.noreply.github.com>
2024-05-07 16:24:23 +08:00
William Cheng
dc63444789 update samples 2024-05-07 12:30:21 +08:00
Reinhard Handler
2fb41ac529 [JAVA] Fix generation of remove method of map entries (#18562)
* Fix generation of remove method for map entries

Map::remove in java removes entries by key, therefore the key must be used as parameter.

* Fix generation of remove method for map entries

Map::remove in java removes entries by key, therefore the key must be used as parameter.

---------

Co-authored-by: Reinhard Handler <reinhard.handler@ssi-schaefer.com>
2024-05-07 12:13:15 +08:00
keyjh2
228b47a953 [go-server] Fix: missing sample changes from previous commit (#18546) (#18588) 2024-05-07 11:27:19 +08:00
Ween Jiann
cefbf62060 [go-server] Fix: missing quotes for string default value (#18546)
* Update controller mustache

* Add tests to openapi doc

* Regen
2024-05-06 14:17:44 +08:00
myz-dev
b1fac19a75 Fix #18572 rust server: Silence clippy lints by refactoring (#18575)
* refactor: move closure definition to own statement

A clippy lint recommends not using a closure inside of a statement.
The code generation used to produce code that triggered this warning,
which caused the rust-server integration test to fail because clippy is
configured to return lint violations as errors.
For details for the lint see:
https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions

* refactor: Remove unnecessary qualification

A GitHub action test used to fail because of a clippy warning that was
emitted due to not using an imported symbol but qualifying its use.
A failed test can be seen here:
https://github.com/OpenAPITools/openapi-generator/actions/runs/8958257509/job/24603984954?pr=18563
With the relevant error being:

error: unnecessary qualification
  --> output/openapi-v3/src/client/callbacks.rs:88:9
   |
88 |         futures::future::ok(Service::new(

This commit simply removes the qualification.

* test: Update examples and run integration test.

Updated examples by running
`./bin/generate-samples.sh ./bin/configs/rust-server-*`
The integration test with the following command passes:
`mvn integration-test -f samples/server/petstore/rust-server/pom.xml`
2024-05-06 12:24:33 +08:00
Stefan Koppier
f145b8962d [kotlin-client] Update Gradle and dependencies (#18571)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient

* [kotlin-client] Bump Gradle version

* [kotlin-client] enableFeaturePreview no longer needed as it's enabled by default

* [kotlin-client] Bump kotlin, spotless, and reactor versions

* [kotlin-client] Generated code

* [kotlin-client] Missed a generated sample

* [kotlin-client] Bumped gradle and java version in kotlin-client workflows

* [kotlin-client] First attempt to fix jvm-volley

* [kotlin-client] Use standard gradle action instead of custom one

* [kotlin-client] Use original gradlew action but without specific version

* [kotlin-client] Moved sample kotlin-spring-cloud to servers instead of clients

* [kotlin-client] Added previously missing generated file

* [kotlin-client] Corrected sample path
2024-05-05 21:40:58 +08:00
Manuel Covas
296a6ac516 [typescript-fetch] Restore pre-es2017 compatibility in modelEnum template (#18418)
* [typescript-fetch] Restore pre-es2017 compatibility in modelEnum template

Restore pre-es2017 compatibility in modelEnum template by not using Object.values in instanceOf{{classname}} function

* [typescript-fetch] Regenerate samples

* [typescript-fetch] Regenerate samples documentation

* [typescript-fetch] Add curly brackets

* [typescript-fetch] Regenerate samples

* [typescript-fetch] Use typed comparison

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

* [typescript-fetch] Regenerate samples

---------

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2024-05-05 09:05:12 +02:00
Marc Le Bihan
fde8c772fb [BUG] [C++][Pistache] cpp-pistache-server generating API include unde… (#18553)
* [BUG] [C++][Pistache] cpp-pistache-server generating API include undefined "Object.h" (#2769)

Should handle Object.h, AnyType.h correctly. Set.h also tested.

   - #include Object.h removed and replaced by a typeMapping.put(object, nlohmann::json) like suggested in other issues
   - object had an invalid syntax: ':' instead of '::' in types with namespace
   - extra include of #include nlohmann/json.h removed when there's already #include <nlohmann/json.hpp>
   - nlohmann::json is excluded from model namespace

Tested with custom petstore played, with suggested openapi specs coming from issues #2769, #10266, #14234

   ```bash
   rm -rf samples/server/petstore/cpp-pistache-everything/ && ./bin/generate-samples.sh ./bin/configs/cpp-pistache-server-cpp-pistache-everything.yaml  && cd samples/server/petstore/cpp-pistache-everything/ && mkdir build && cd build && cmake .. && cmake --build . --parallel
   ```

* - Adding to samples/server/petstore cpp-pistache-everything

* - .md and FILES missing
2024-05-04 21:59:49 +08:00
Philzen
d3b156d694 Add .sdkmanrc for easy Java and Maven version management (#18552)
* Add .sdkmanrc for easy Java and Maven version management

https://sdkman.io/

* Bump required Maven version for building to 3.8.8
2024-05-04 21:05:10 +08:00
Philzen
38b8f60e54 Update broken JSON schema links (#18565)
Using archive.org snapshots in case the URLs change again, like they
apparently have in the past.

Also fixing formal JavaDoc error, which does not allow bare URLs.
2024-05-04 12:31:11 +08:00
Hidan
73f2d8289b fix(typescript-axios): Correct the content type for a list of objects in form-data when contentType is present (#18505)
* fix content type for list of objects in form-data

* updated the samples
2024-05-03 15:43:57 +02:00
Tristan
06b00e657c Support optional singleRequestParameter (#18467) 2024-05-03 15:10:06 +02:00
En0s0und
0e809d4800 [typescript-fetch] Support fileNaming option (#18283) (#18284)
* [typescript-fetch] Support fileNaming option (#18283)

* [typescript-fetch] Support fileNaming option - add tests (#18283)

* [typescript-fetch] introduce constants
2024-05-03 15:07:54 +02:00
Jeffrey Yasskin
67a504a2f3 [typescript-fetch] Remove a cycle in the discriminator dependency graph. (#18503) 2024-05-03 15:07:02 +02:00
Aniokrait
8cb23db8c0 [html2] Fix rendering of arrays of objects in html2 docs (#18561)
* [html2] Fix array parameter rendering.

* [html2] Update html2 sample.
2024-05-03 16:54:02 +08:00
Stefan Koppier
30dc35de44 [kotlin][client] fix warning (#18560)
* [kotlin] Target correct library in jvm-spring-webclient sample

* [kotlin] Fixed warning in jvm-spring-restclient
2024-05-03 16:47:55 +08:00
Nicklas Wiegandt
ef2fa03e96 [Java][Client] Add support for the new Spring RestClient (#18522)
* feat (JAVA SPRING RESTTEMPLATE) 17571: initial commit for Spring RestClient

* feat (JAVA SPRING RESTTEMPLATE) 17571: Copied and changed the webclient mustache files

The RestClient API is oriented on the WebClient API so many parts of the templates can be the same

* fix (JAVA SPRING RESTTEMPLATE) 17571: Renaming error & add README template

The README must be changed because the minimal Java Version for this client is 17

* fix (JAVA SPRING RESTTEMPLATE) 17571: Imports, compile errors and cookie setting

* feat (JAVA SPRING RESTTEMPLATE) 17571: Add generated samples

* test (JAVA SPRING RESTTEMPLATE) 17571: Add tests

* feat (JAVA SPRING RESTTEMPLATE) 17571: Update doc

* Add the restcilent to samples-java-client-jdk17.yam

The minimum Java version of the used Spring Version is 17

* fix (JAVA SPRING RESTTEMPLATE) 17571: Workflow paths to petstore samples

* fix (JAVA SPRING RESTTEMPLATE) 17571: Regenerated samples

* feat (JAVA SPRING RESTTEMPLATE) 17571: Generated echo-api sample for RestClient

* fix (JAVA SPRING RESTTEMPLATE) 17571: Missing import

* fix (JAVA SPRING RESTTEMPLATE) 17571: Missing body class exception when null body is set

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api Auth test

* fix (JAVA SPRING RESTTEMPLATE) 17571: Gradlew file permissions

* feat (JAVA SPRING RESTTEMPLATE) 17571: Reggenerate samples after rebase

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api Body gif test

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api octet stream body test

* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api multipart form data test

* fix (JAVA SPRING RESTTEMPLATE) 17571: Form as body when body is null

Also regenerated the restclient samples
2024-05-02 00:15:20 +08:00
William Cheng
d573f00e84 update go samples 2024-05-01 22:52:26 +08:00
William Cheng
9f57684dad [PHP] Update php.md - marked Multiserver as true (#18545)
* Update php.md - marked Multiserver as true

Mulitiserver support was fully implemented 2 years ago, on PR #12982

* update php feature

* update

---------

Co-authored-by: Thomas Hansen <thomasphansen@users.noreply.github.com>
2024-05-01 19:29:48 +08:00
rledisez
230e8ce887 [go-server] add field name in parsing error messages (#18533)
Currently when a parsing rule of a field is not respected (eg: min/max
value, required, ...), the api only returns an  error message without
providing the field name to help the user to fix the request. This commit
add the field name to the error message to help the user of the API.
2024-05-01 19:28:51 +08:00
Richard Lavoie
10897caf37 [go-server] fix imports with go generation (#18514)
* fix imports with go generation

* Wrong copy over

* Missing new line

* tab vs space

* Fix new line between router and std go libs

* Add both use case, add samples to CI validation

* Update samples
2024-05-01 18:13:03 +08:00
Daniel Wischolek
afd3a78e20 scala-sttp: fix for issue 15785 api returns unit. (#18537) 2024-05-01 18:12:04 +08:00
Daniel Wischolek
5e40fe7f8f scala-sttp4: fix for issue 15785 api returns unit. (#18536) 2024-05-01 18:11:52 +08:00
William Cheng
2a1b4f90df Add new option allArgConstructor for java client, spring generators (#18538)
* allArgConstructor for java

* Remove leftover from builder pattern branch

* Rename generateConstructorWithAllArgs and use x- in vendorExtensions

* Test issue #18340

* Add evidences for allVars issue (#18340)

* remove eol

* update doc

---------

Co-authored-by: jpfinne <jeanpaul@finne.be>
2024-05-01 18:10:35 +08:00
Simon Podlipsky
98d026118c feat(php): allow to pass raw boolean to api (#18520)
This allows users to use APIs that require booleans in query params not to be cast to int, e.g. `&foo=true`. Currently, `true` is cast to `1` so it's passed as `&foo=1`. That might not be supported by the target API.

The fix contains copy-pasted function from guzzlehttp/psr7 `Query::build()` with minor tweak.
2024-05-01 18:10:00 +08:00
Bruno Coelho
0768ddcd7c [swift] support content type application json variants (#18539)
* [swift] support content type application json variants

* [swift] support content type application json variants
2024-04-30 11:16:28 +01:00
Arivanandan
a4cf255dce Add useSingleRequestParameter to typescript-nestjs generator (#18476)
* feat: change template to use useSingleRequestParameter

* chore: add useSingleRequestParameter option

* chore: generate-samples, docs and fix spacing in template

* chore: remove random white space
2024-04-30 15:07:57 +08:00
Phellippe Lima
e36172090e fix: ExampleGenerator for composed child schemas and array schemas (#18479)
* fix: ExampleGenerator for composed child schemas and array schemas correctly

* fix: refactor to remove code duplication

* fix: fixes test assertion encoding

* fix: adds doc to new method
2024-04-30 14:36:49 +08:00
Zishun (Zack) Wei
81fab15a33 [PYTHON] Fix for failing to lookup discriminator value using AllOf and discriminator (#18498)
* fix issue 18495

* add tests and update samples

* update samples
2024-04-30 14:21:20 +08:00
Erko Risthein
bd02e65f88 [Java] Update Java version in GitHub actions (#18513)
* Update Java version in Github actions

* Generate samples

* [java] Upgrade Gradle wrapper to 8.7

* Generate samples

* [Java] Add resttemplate-jakarta to CI

* Upgrade CI machines to ubuntu-2204:2024.04.4 which use Java 21

* Change CI machines to ubuntu-2204:2024.01.1 which use Java 17

* Change CI machines to ubuntu-2004:2024.01.1

* [ruby] Update Gemfile.locks

* Use gradle wrapper for samples-java-client-jdk17
2024-04-30 13:57:01 +08:00
jase
8faa77cd1c fix(typescript-angular): make sure basePath is defined before assignment (#18457)
* fix(typescript-angular): make sure basePath is defined before assignment

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

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

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

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

* chore(typescript-angular): update examples

---------

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2024-04-29 18:07:45 +02:00
William Cheng
5f136557ba update php samples 2024-04-29 09:38:58 +08:00
Daniel Schreiber
7070255dc5 [php-flight] fix: parsing class/enum models (#18528) 2024-04-29 09:32:12 +08:00
Tadas Krivickas
06ed7c8205 [dart] [dart-dio] Support Dart3 (#18001)
* Support both dart 2.x and 3.x

* Append dart3 keywords

* Update docs
2024-04-28 22:09:10 +08:00
William Cheng
f8d91510a9 clean up supporting-mustache (#18524) 2024-04-28 20:45:42 +08:00
Ashish Mathew
519eaf6bf3 fix post process file type (#18519) 2024-04-28 20:30:54 +08:00
martin-mfg
c16f7f0aad better example of user defined supporting file (#18512) 2024-04-27 15:35:49 +08:00
William Cheng
1751163f36 fix null type check when simplifying any type (#18504) 2024-04-26 13:16:59 +08:00
William Cheng
a5ccd7a77e fix array default check in php nextgen 2024-04-26 10:10:13 +08:00
Jeffrey Yasskin
fd90aa6347 Use the current Java version in devcontainer.json. (#18502) 2024-04-26 09:38:23 +08:00
William Cheng
a5d463d90f made the HttpSigning method public to get the signed header. (#18496)
Co-authored-by: Ghufran Zahidi <18732053+Ghufz@users.noreply.github.com>
2024-04-25 16:08:57 +08:00
William Cheng
a00549cd65 Add an option to skip unmarshall json in Go client generator (#18448)
* feat(go): Add a vendor extension to option out of generating the UnmarshalJSON method

* add generate unmarshal json option in go client generator

* update doc

---------

Co-authored-by: Radoslav Kotsev <radoslav.kotsev@cellpointmobile.com>
2024-04-25 12:52:48 +08:00
William Cheng
3bd6d67cc0 (java client) minor code enhancements (#18493)
* (java client) minor code enhancements

* update doc
2024-04-25 12:51:18 +08:00
William Cheng
1bb4d42216 update readme, format code (php flight) (#18492)
* update readme, format code (php flight)

* add flight to the list

* update samples
2024-04-25 10:58:11 +08:00
Elric Milon
d7b808e2e9 [Rust] Add support for base64-encoded byte arrays (#18469)
Co-authored-by: Elric Milon <whirm@gmx.com>
2024-04-25 10:26:34 +08:00
Aaron Pritzlaff
efb7e5624d Cask version fix (#18486)
* using artefact version in build

* using artefact version in build

* cask knows how to honour artifact versions
2024-04-24 23:50:14 +08:00
Alexander Karkossa
50945d0e17 [Kotlin] fix wrong type- and importMapping for kotlinx.date (#17597) (#18488) 2024-04-24 16:42:57 +01:00
Even André Fiskvik
fbe2e0b18f Fix enum value issues in path or query (#18483) 2024-04-24 12:57:25 +01:00
Aaron Pritzlaff
4dc8531a67 fix for the artefact names in scala cask (#18480)
* fix for the artefact names in scala cask

* updated the sample
2024-04-24 18:50:00 +08:00
William Cheng
59ba346306 update samples 2024-04-24 15:34:02 +08:00
Amin Yahyaabadi
7036b99e91 [cpp-restsdk] add support for AnyType (#18463)
* [cpp-restsdk] add support for AnyType

* [cpp-restsdk] fix the AnyType header generation path
2024-04-24 13:44:21 +08:00
Amin Yahyaabadi
dc96d648f7 docs: add instruction for building the binary (#18473) 2024-04-24 13:36:55 +08:00
William Cheng
1d67d0632d update samples 2024-04-23 21:32:52 +08:00
Duc Nguyen
d71df6ab85 fix incorrect JsonProperty in pojo constructor (#18421) 2024-04-23 15:45:10 +08:00
SebastjanPrachovskij
58aad760f0 Add SearchApi to users list (#18455) 2024-04-22 23:50:31 +08:00
Even André Fiskvik
99b5fe9f9c [typescript-angular] Add support for marking model properties with @deprecated (#18417)
* [typescript-angular] Add support for marking model properties with @deprecated

* Add generated samples

* Only add comment if description or deprecated is set. And split description/deprecated on two lines if both are set.

* Update samples with generated output

* Fix indention

* Update samples

* Remove whitespace

* Update samples
2024-04-22 15:24:24 +02:00
Mike Welsh
a724c754bc Add ResumableTask to URLSessionImplementations.mustache (#18438)
* Add `ResumableTask` to `URLSessionImplementations.mustache`

- Makes it testable
- Implementations can return something _other_ than a URLSessionDataTask if they want to implement another request format (sockets maybe?)
- Default implementation for `URLSession` provided

* Regenerate examples

* Add more properties and rename to `CancelableResumableTask`

* Regen samples

* Rename missed reference

* Missed some generated classes somehow

* Rename from `CancellableResumableTask` to `URLSessionDataTaskProtocol`

Rename from `resumableTask` to `dataTaskFromProtocol`

---------

Co-authored-by: welshm-ideogram <welsh@Mikes-MacBook-Pro.local>
2024-04-22 13:51:12 +01:00
William Cheng
cbf52aefe4 update samples 2024-04-22 19:44:21 +08:00
Esteban Gehring
36911c773e Revert "Fix: Incorrect serialisation of maps and sets in typescript-axios (#1…" (#18452)
This reverts commit 815205250a.
2024-04-22 08:47:10 +02:00
Archit Mathur
c64d569a7d [typescript-nestjs] Accept async function for fetching access token (#18190)
* feat: starts accepting async function for fetching access token in typescript-nestjs

* fix: adds Provider in the import to fix build error

* chore: deletes package lock

* chore: deletes package lock for v6

* fix: switches to switchMap for map
2024-04-22 08:34:02 +02:00
Gabriel Feo
406d00fe9b [kotlin] Fix model imports when using exploded query params (#18440)
* Fix model package import

* Fix typo

* Add missing properties to docs

* Revert "Add missing properties to docs"

This reverts commit 67a68f9ea7.
2024-04-22 14:31:35 +08:00
gianlucaparadise
d25c5a8b26 [TS-FETCH] Generate models/index.ts in postProcessModels (#18256)
* [TS-FETCH] Generate models.index in postProcessModels

* [TS-FETCH] Add test for spec without path
2024-04-22 08:31:08 +02:00
martin-mfg
73bca68fea add example for UserDefinedTemplates (#18423) 2024-04-22 10:46:15 +08:00
Daniel Schreiber
2217a7b0f2 feat: simple/experimental generator for flight-php server framework (#18406)
* feat: simple/experimental generator for flight-php server framework

* fix: update php-flight samples and add php-flight to integration tests

* feat: adding path to method doc
2024-04-21 23:56:59 +08:00
devhl-labs
6568bc54a5 [csharp] Fixed nullability of composed schemas (#18408)
* fixed nullability

* minor refactor to address a comment
2024-04-21 23:47:43 +08:00
William Cheng
c8e835cac7 update x/net to newer version in go generators (#18447) 2024-04-21 22:01:20 +08:00
Aaron Pritzlaff
93f4323364 Taught Scala-cask to publish JS model files (#18413)
* Taught Scala-cask to publish JS model files

* cask fix for generated FILES
2024-04-20 18:23:09 +08:00
KentarouTakeda
d99affda96 Add a link to the tech conference talk (#18431) 2024-04-19 17:44:23 +08:00
denisbog
514c0d6448 [RUST-AXUM] fix generator not handling application/x-www-form-urlencoded request content, update for initial fix #18061 (#18362)
* fix OpenAPITools/openapi-generator#18060

* isolate the option as separate flag

* apply modification suggested by @wing328

* remove added newlines

* do not change the handle of multipart body, keep the change only for x-www-form-urlencoded
2024-04-18 14:52:36 +08:00
William Cheng
807250a430 Prepare 7.6.0 (#18412)
* Revert "v7.5.0 release"

This reverts commit 1eafe2aebf.

* update master to v7.6.0 snapshot

* update readme

* update samples
2024-04-17 19:05:37 +08:00
William Cheng
cce4139af6 v7.5.0 release (#18411) 2024-04-17 16:24:01 +08:00
William Cheng
7609273a02 fix string compare in haskell generator (#18410) 2024-04-17 15:13:05 +08:00
William Cheng
dd97def5fa update undertow to newer version (#18409) 2024-04-17 11:29:06 +08:00
lizzyTheLizard
213564a5aa #18388: Add Mutiny support to JaxRS (#18389)
* #18388: Add Mutiny support to JaxRS

* Updated samples

* Updated doccs

* Updated example to 3_0

* Updated sample
2024-04-17 11:20:39 +08:00
devhl-labs
7b0f963c74 [csharp][generichost] Delete samples (#18323)
* delete samples

* rebuild samples

* test to see if the pr gate fails

* make the samples generate twice

* pr gate successfully failed

* minor cleanup

* minor cleanup
2024-04-16 15:10:19 +08:00
devhl-labs
c109399f3f fixed property naming convention for composed types (#18312) 2024-04-16 15:09:15 +08:00
weirdo
c7b33c4762 [Java] fix beanvalidation compilation failed when items type in array… (#18379)
* [Java] fix beanvalidation compilation failed when items type in array is int64

* [Java] add annotations container bean validation test
2024-04-16 12:30:39 +08:00
Radoslav Kotsev
1471e7a0d0 Go generate all of with multiple ref and discriminator (#18390)
* feat(go): Generate compiling stubs for allOf with multiple refs and discriminator

* feat(go): Generate compiling stubs for allOf with multiple refs and discriminator

* feat(go): Generate compiling stubs for allOf with multiple refs and discriminator
2024-04-16 12:21:00 +08:00
William Cheng
81f576c9da update dnspython to a newer version (#18376) 2024-04-13 10:52:43 +08:00
Daniel Metzner
8155d03c38 Allow Symfony 7 / Remove EOL PHP / Bearer Fix (#18357)
Bump requirements
  - add Symfony 7 support
  - remove support php < 8.2 (EOL)
  - remove symfony < 6.4 support

Bug Fix
  - add missing $security{{name}} variable when using Bearer Auth

Misc
 - getContentType method is deprecated; use getContentTypeFormat
 - use match instead of switch for simple assignments
 - remove default depth param from json_encode call
 - make data provider static (phpunit)
2024-04-13 10:46:47 +08:00
William Cheng
4cde53c3d7 update idna to newer version (fastapi) (#18372) 2024-04-13 09:37:08 +08:00
Aaron Pritzlaff
24c1968002 cask fix for response encoding (#18375) 2024-04-13 09:34:08 +08:00
William Cheng
359ff9e457 update html2 sample 2024-04-13 01:07:27 +08:00
Aaron Pritzlaff
85c81e84d5 scala cask fix for missing annotations on simple routes (#18371) 2024-04-13 00:46:51 +08:00
Aniokrait
86186586c7 [html2] Fix blank responses in html document (#18356)
* [html2]remove unnecessary mustache section

* [html2]add null check
2024-04-12 21:16:24 +08:00
Kathryn DiPippo
0b3e6edb98 [python] Update docs/ Markdown files for Classes to fix _form_ typo and correct casing for class name when calling from_dict() (#18359)
* Update Python mustache templates to fix _form_ typo and correct casing for class name when calling from_dict()

* Results of 'build the project' checklist step
2024-04-12 12:29:20 +08:00
Linh Tran Tuan
65e74a354d [Rust] [Axum] Revert PR #18061 (#18354) 2024-04-11 21:58:21 +08:00
William Cheng
b4c315ebce use model utils check instead of instanceof 2024-04-11 21:23:04 +08:00
William Cheng
03af25ce34 Fix null check in 3.1 spec (#18353)
* fix null check in 3.1 spec

* clean up
2024-04-11 16:52:31 +08:00
William Cheng
ff8fa40808 fix object and complex compposed schema check (#18352) 2024-04-11 14:26:45 +08:00
Viktor Szépe
172c4d11b4 Remove param tag for non-existent parameter in ObjectSerializer (#18347)
* Remove param tag for non-existent parameter in ObjectSerializer

* Remove all discriminator parameters
2024-04-11 13:17:15 +08:00
Mike Friesen
97c1dc8a1a #18252 - [REQ] add sessionToken support to AWS4Auth (#18253) 2024-04-11 11:56:40 +08:00
Bijan Chokoufe Nejad
44ae981830 Update versions for typescript-node and remove vulnerable test package (#18334)
* Update versions for typescript-node

Use latest versions for `bluebird` and `request` and remove `rewire`. `rewire` has high security alerts and shouldn't have been added to the generated clients as its used in tests. It was introduced here 960412a9b4 (diff-1df884eca4890fc2cff7eec6f61ac2157b1b9e72fe4cc13c782e300125fb0da3R20) although the same commit shows that it used to work without it 960412a9b4 (diff-d2785da28187b6d6ef1e0bdab42139309e443906fb5d9d365fce5e2a01673ef5R52-R56)

* Update Typescript sample
2024-04-11 10:45:41 +08:00
Beppe Catanese
a887f6d4bf Add test for CI suite (#18350) 2024-04-10 23:49:34 +08:00
BaptisteSaves
6bcc28d06e Python: Correctly serialize enum with its value (#18327) (#18328) 2024-04-10 21:12:37 +08:00
Val Packett
9351217048 [javascript] fix docs example quoting, fixes #6324 (#18349)
And prefer example over default
2024-04-10 18:58:13 +08:00
William Cheng
2bfc5a3958 [Scala] added new scala-cask generator for the cask framework (#18344)
* Ran `./new.sh -n scala-cask -s` to generate a new Scala Cask impl

* removed scala-cask-petstore

* Added Scala-cask param parser for BigDecimals

* added scala cask to samples

* splitting out validation and json

* Added GitHub workflow support

* regenerated cask samples

* cask build fix for local builds

* regenerated samples

* trying to reproduce failed cask build. checking in compiles sources, which have been reformatted

* reverted whaitespace change

* cask fix - adding gitignored files

* scala cask toLowreCase fix

* scala cask toUpperCase fix

* cask regenerated samples

* improved exception handling for scala cask

* File separator fix for windows

* Noob fix for cask

* regenerated api package

* Removed environment variable settings, debug code

* Updated samples

* moved scala-cask output

* Regenerated samples

* scala cask fix

* Updated scala cask settings for more typical package structure
Removed cask client samples

* cask - reran generate samples

* Removed duplicate ScalaCaskServer entry

* minor enhancements

* update samples

* update templates

---------

Co-authored-by: aaron.pritzlaff <aaron@kindservices.co.uk>
2024-04-10 18:49:59 +08:00
William Cheng
ef36ea410e Fix method naming for openapi normalzier, openapi ignore list option (#18348)
* fix openapi normalizer naming issue in config

* update openapi generator ignore list setting

* update

* fix

* update sample config

* update doc
2024-04-10 17:09:48 +08:00
William Cheng
eb506ee776 [java][native] use type reference instead to fix compilation issue in JDK11 (#18346)
* use type reference instead to fix compilation issue in jdk11

* fix
2024-04-10 11:29:51 +08:00
William Cheng
a651376b18 fix java native compilation errors 2024-04-10 02:57:41 +08:00
William Cheng
abfeb6e035 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2024-04-10 02:33:15 +08:00
William Cheng
edd91063b4 hide generation timestamp in java microprofile samples 2024-04-10 02:33:01 +08:00
Ege Sucu
1a06e3e0fb [swift] Added solution for deprecated "UTTypeCopyPreferredTagWithClass" (#18330)
* Added solution for deprecated "UTTypeCopyPreferredTagWithClass"

UTTypeCopyPreferredTagWithClass is deprecated with iOS 15, so apps targeting iOS 15+ were getting this warning on any auto-generated code. This solution will solve that warning and works both iOS 15 and below.

* Project built

* macOS Related fixes applied
2024-04-09 18:20:48 +01:00
Knut Erik Langdahl
6a2ad134c6 [kotlin] Add support for modelNameMappings (#18342) 2024-04-10 01:19:52 +08:00
William Cheng
d6749f8a0e update samples 2024-04-09 20:49:23 +08:00
Joakim Holm
3cb3fc2898 Add Generated annotations to more classes (#17736) 2024-04-09 16:39:53 +08:00
Lionel Tesolin
a245e86b74 Update dataClass.mustache (#18205)
Added the missing additionalModelTypeAnnotations for the Kotlin data class generator
2024-04-09 16:25:44 +08:00
William Cheng
b2a7f435c8 "==" enum value generates "_" in Java which is invalid since Java 9 (#18338)
* #17276 "==" enum value generates "_" in Java which is invalid since Java 9

* update doc

---------

Co-authored-by: Julien BÉTI <jbeti@cosium.com>
2024-04-09 12:21:54 +08:00
Beppe Catanese
45a657f59d Deal with boolean field (#18294) 2024-04-09 11:28:48 +08:00
William Cheng
83b45fd1e8 [java][okhttp-gson] Fix oneof, anyof for array type (#18324)
* fix oneof, anyof for array type in java okhttp-gson

* fix oneof

* fix add tests

* clean up comments

* update

* add new files
2024-04-08 22:20:23 +08:00
sbilz
b2faf39ac7 Update README.md with consistend dmtech-sponsoring-link (#18329) 2024-04-08 20:41:14 +08:00
Zishun (Zack) Wei
453facc81c Fix 18271: Circular imports on AllOf generation with REFACTOR_ALLOF_WITH_PROPERTIES_ONLY=True (#18272)
* fix issue 18271

* the same update for python-pydantic-v1

* add test

* update samples

* update samples

* put properties under allOf for python client tests

* update samples

* add a test in test model
2024-04-08 19:01:01 +08:00
sbilz
2c663561ef update dmtech-sponsoring-link (#18326) 2024-04-08 18:59:01 +08:00
Michito Maeda
101b3fcc35 Removed unused file (#18325) 2024-04-08 15:44:08 +08:00
devhl-labs
79fe176ef2 fixed operation parameter handling (#18322) 2024-04-08 10:15:31 +08:00
Michael Esemplare
3f143a3b5a Fix #17768: Delegate Incorrectly generated when useOptional True (#18278)
- Update moustache dataType value to >optionalDataType section to use Optional DataType when it is a BodyParam and not reactive.
2024-04-07 23:33:00 +08:00
Taylor Becker
560089e4c7 Kotlin: Do not escape/sanitize quoted enum values (#18305) 2024-04-07 22:33:16 +08:00
Francisco Bretal
a91d8e2c57 fix: backticks are now unescaped (#18318) 2024-04-07 22:26:58 +08:00
William Cheng
494d74ab82 remove duplicated (#18320) 2024-04-07 22:25:03 +08:00
condorcorde
fbc8616a06 Fix #17740 (multipart/form-data request) and proxy behaviour (#18315)
* Support multipart requests

* Further code optimization

* Update ApiClient.ps1

* Set $Multipart

* Corrections after petstore tests

* Update api_client.mustache

* Update api_client.nustache

* Update api_client.mustache

* Tabs removed
2024-04-07 21:42:19 +08:00
Viswajith Venugopal
650e119f22 Update go-server template to include the conventional generated code line (#18304)
* Update go-server template to include the conventional generated code line

Follow the convention from https://pkg.go.dev/cmd/go#hdr-Generate_Go_files_by_processing_source.

The generated go client code already follows this: f357be480e/modules/openapi-generator/src/main/resources/go/partial_header.mustache (L18)

* gen files

* Move to top
2024-04-07 21:23:24 +08:00
Samuel Kahn
d2c48e2999 Fix map parameter not a container (#18220)
* Map parameters now carry their container properties when generated from map properties. This solves an issue where a map parameter was not considered a container and induced generation errors.

* Added test specification with fake endpoint for testing map parameters

---------

Co-authored-by: Samuel Kahn <samuel@darewise.com>
2024-04-07 16:12:59 +08:00
William Cheng
2168851e8a Better array handling in 3.1 spec (#18313)
* better array detection in 3.1 spec

* fix
2024-04-07 15:48:19 +08:00
William Cheng
3d2e38e347 add tests for query parameter (array of enum) in 3.1 spec (#18310) 2024-04-06 14:36:41 +08:00
martin-mfg
b11005b00d [JAXRS-SPEC] no @Valid annotation on simple fields (#18302)
* fix and test

* whitespace change, generate samples
2024-04-06 11:19:03 +08:00
devhl-labs
3bb17efa09 fixed issue (#18309) 2024-04-06 11:05:43 +08:00
William Cheng
ac14e66da1 skip warning, better code format for jetbrain http client generator (#18299) 2024-04-06 11:01:08 +08:00
William Cheng
1024c7733e update parser to 2.1.19 (#18298) 2024-04-05 16:44:42 +08:00
Michael Brügmann
90301f932d SWIFT5: sort query items alphabetically to allow better server side caching of requests with same URL (#18239)
* sort query items alphabetically to allow better server side caching of requests

* updarted samples
2024-04-05 08:18:53 +01:00
William Cheng
6d10e80916 [normalizer] fix schemas incorrectly skipped (#18297)
* fix circular reference check in normalizer

* add new files

* fix
2024-04-05 13:55:22 +08:00
sullis
f357be480e [gradle-plugin] enhance unit test cases (#18285) 2024-04-03 17:13:18 -07:00
William Cheng
2a39b29684 [python] Add field as a reserved word (#18279)
* add field as a reserved word

* remove tabs

* update
2024-04-03 16:43:51 +08:00
William Cheng
88204b247a [Java] Sync jersey2 jersey3 template (#18281)
* sync jersey2 and 3 templates

* add deprecated

* update samples
2024-04-03 16:32:39 +08:00
William Cheng
2934f5ac51 add logic to simplify any type represented with oneof/anyof (#18268) 2024-04-02 15:08:20 +08:00
dependabot[bot]
2ce71512d0 Bump julia-actions/setup-julia from 1 to 2 (#18270)
Bumps [julia-actions/setup-julia](https://github.com/julia-actions/setup-julia) from 1 to 2.
- [Release notes](https://github.com/julia-actions/setup-julia/releases)
- [Commits](https://github.com/julia-actions/setup-julia/compare/v1...v2)

---
updated-dependencies:
- dependency-name: julia-actions/setup-julia
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-02 08:52:03 +08:00
William Cheng
927768757b Add designli to bronze sponsor (#18269)
* add designli to bronze sponsor

* update link to jpg
2024-04-01 15:46:04 +08:00
devhl-labs
858499ffdd [csharp][generichost] Form models (#18264)
* rename a bin artifact

* add support for form models

* revert sample changes

* revert sample changes

* build samples

* build samples
2024-04-01 13:12:03 +08:00
William Cheng
4719d9e55f update spring-context to newer version (#18266) 2024-04-01 11:56:58 +08:00
William Cheng
2d7f0496ec add rule to set primitive types to nullable (#18258) 2024-04-01 11:54:21 +08:00
devhl-labs
2fac8e34db [csharp][generichost] Updated UseSourceGeneration (#18265)
* updated UseSourceGeneration

* updated UseSourceGeneration

* updated UseSourceGeneration
2024-04-01 11:49:13 +08:00
martin-mfg
1704ae1194 fix issue 17999 (#18259) 2024-03-31 22:47:19 +08:00
devhl-labs
370eca2889 [csharp] Update dependencies (#18263)
* version bump

* updated a workflow
2024-03-31 11:27:57 +08:00
devhl-labs
d0f8468651 [csharp] Rename samples (#18260)
* renamed OpenAPIClient-httpclient to Petstore

* updated bin artifacts

* renamed OpenAPIClientCoreAndNet47 to MultipleFrameworks

* updated bin artifacts

* renamed OpenAPIClient-net47 to Petstore

* renamed OpenAPIClient-net48 to Petstore

* updated bin artifacts

* renamed OpenAPIClient-restsharp-name-parameter-mappings to ParameterMappings

* updated bin artifacts

* renamed OpenAPIClientCore to Petstore

* updated bin artifacts

* renamed OpenAPIClient-net7.0-useDateTimeForDate to UseDateTimeForDate

* updated bin artifacts

* renamed OpenAPIClient-net5.0 to EnumMappings

* updated bin artifacts

* renamed OpenAPIClient-ConditionalSerialization to ConditionalSerialization

* updated bin artifacts

* renamed OpenAPIClient to Petstore

* updated bin artifacts

* renamed OpenAPIClient-unityWebRequest to Petstore

* updated bin artifacts

* updated appveyor

* updated bin artifacts

* updated bin artifacts

* comenting out a sample project with no csproj file

* updated bin artifacts
2024-03-31 10:36:42 +08:00
devhl-labs
6252dac28e [csharp][generichost] Ensure samples are running (#18257)
* ensure samples are running

* ensure samples are running

* ensure samples are running

* ensure samples are running

* ensure samples are running

* ensure samples are running

* revert testing changes

* sorted the array entries
2024-03-30 21:14:51 +08:00
B4ckslash
807aa5d3ae [Java][jersey2] Fix generated client code for oneOf models if datatype includes arrays (#18042)
* Add java-jersey2 sample with mixed oneOf

* [java][jersey2]Fix client generation if oneOf contains an array type

Changes:
* Change jersey2/oneof_model template to use composed schema data
* Change adding of imports in AbstractJavaCodegen to use composed schema data
* Add escapedDataType property to CodegenProperty so that the data type
  may be part of identifiers (e.g. in getters)
* Update samples

* Add sample for multiple array in oneOf

* Fix generation of constructors with same erasures

* Update samples again

* Version bump

* Add new sample folders to CI

* Make primitive handling more explicit

* Replace escapedDataType property with Mustache lambda

* Update samples with new primitive handling and sanitization lambda
2024-03-30 21:08:41 +08:00
timo-a
f73db59b0e Migrate generated tests for java resttemplate generator updateFeature/resttemplate junit5 (#18222)
* update(resttemplate): migrate java resttemplate templates to junit 5

* update(java defaults): migrate java defaults as well because resttemplate uses model_tests from default

* update(samples, java): update samples as described in the contribution guidelines

* fix tests: try double quotes

* fix tests: remaining double quotes

* update(samples): regenerate resttemplate

* update(samples): regenerate resttemplate-jakarta

* update(samples): regenerate resttemplate-swagger1

* update(samples): regenerate resttemplate-swagger2

* update(samples): regenerate resttemplate-withXml

* update(samples again): ./bin/generate-samples.sh ./bin/configs/*.yaml
2024-03-30 21:06:05 +08:00
Yohei Kitamura
34ebc1c644 [ruby] Use Marcel to detect content-type in form-data file upload using faraday (#18243) 2024-03-29 21:58:08 +08:00
martin-mfg
de680de60e fix issue 17895 (#18248) 2024-03-29 21:57:13 +08:00
William Cheng
1f9373eb4d update test 2024-03-27 12:27:39 +08:00
William Cheng
f06204b5ca set REFACTOR_ALLOF_WITH_PROPERTIES_ONLY to true by default 2024-03-27 11:58:06 +08:00
William Cheng
e78aeb6bc7 Better support for $ref to schema's properties (#18233)
* use once

* add support for reference to schema properties
2024-03-27 11:46:00 +08:00
Dennis Melzer
309918d03e Fix compile error in client properties configuration (#18232)
* Fix config

* Add tests

* Remove unused import

* Sort imports

* Add new workflow
2024-03-26 22:02:19 +08:00
Harry Devane
6690b9f87d Update okhttp3 to 4.12.0 (#18235) 2024-03-26 21:44:43 +08:00
dependabot[bot]
ee69a7983a Bump express from 4.18.2 to 4.19.2 in /website (#18228)
Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-26 10:21:02 +08:00
devhl-labs
204407daf0 Rename samples (#18223)
* moved OpenAPIClient-generichost-net6.0

* moved OpenAPIClient-generichost-netcore-latest-allOf

* moved OpenAPIClient-generichost-netcore-latest-anyOf

* moved OpenAPIClient-generichost-netcore-latest-oneOf

* moved OpenAPIClient-generichost-net6.0-nrt-useSourceGeneration

* moved OpenAPIClient-generichost-net6.0-nrt

* moved OpenAPIClient-generichost-net7.0-useDateTimeForDate

* moved OpenAPIClient-generichost-manual-tests

* moved OpenAPIClient-generichost-netstandard2.0

* moved OpenAPIClient-generichost-net6.0

* deleted abandoned files

* updated bin artifacts

* build samples

* updated workflow

* fix manual tests
2024-03-26 10:19:05 +08:00
devhl-labs
d1860b95cf [csharp] Move samples (#18217)
* moved manual tests

* moved allOf

* moved anyOf

* moved oneOf

* moved OpenAPIClient-generichost-net6.0

* moved OpenAPIClient-generichost-net6.0-nrt

* moved OpenAPIClient-generichost-net6.0-nrt-useSourceGeneration

* moved OpenAPIClient-generichost-net7.0-useDateTimeForDate

* moved OpenAPIClient-generichost-netstandard2.0

* moved OpenAPIClient

* moved OpenAPIClient-ConditionalSerialization

* moved OpenAPIClient-httpclient

* moved OpenAPIClient-net5.0

* moved OpenAPIClient-net7.0-useDateTimeForDate

* moved OpenAPIClient-net47

* moved OpenAPIClient-net48

* moved OpenAPIClient-restsharp-name-parameter-mappings

* moved OpenAPIClient-unityWebRequest

* moved OpenAPIClientCore

* moved OpenAPIClientCoreAndNet47

* renamed standard2 to standard2.0

* renamed standard2 to standard2.0

* fixed workflows

* renamed workflows

* updated bin artifacts

* updated bin artifacts

* pinned the samples to their version

* renamed bin artifacts

* update bin artifact

* update bin artifact

* update bin artifact

* updated appveyor

* reverting changes bc git does not show the rename

* commiting all but the file rename for these two files
2024-03-25 09:14:34 +08:00
William Cheng
e0b059bcde update samples 2024-03-24 18:14:15 +08:00
William Cheng
6746be9a50 fix allOf handling in 3.1 spec 2024-03-24 18:07:01 +08:00
William Cheng
d88023f833 fix ref to request bodies in form content type (#18216) 2024-03-24 11:38:21 +08:00
Nick Cooper
8acf9b779d Specify named param for field defaults in Python Pydantic V1 generator (#18187)
* Use named parameter

* Regenerate samples
2024-03-24 11:36:15 +08:00
ふぁ
9acd620bbb [Python] Add test object serialization for multipart requests (#18156)
* [Python] add test object serialization for multipart requests #18140

* [python] update samples

* [python] update samples
2024-03-24 09:37:44 +08:00
William Cheng
e17777044e Use systemPropertyVariables in pom.xml (#18213)
* use system property variables in pom.xml

* update
2024-03-23 21:45:29 +08:00
Maroš Varchola
f258ce2cf5 #18031 Fix: added middleware adding for authorization methods [php-slim4] (#18103)
* fix: added middleware adding for authorization methods, added unauthorized handler to authorization abstract, fixes #18031

* feat: updated generated sample for php-slim4

* fix: small fix for running error handlers and environment setting fix

* feat: removed unused dependency in abstract authenticator, php-slim4
2024-03-23 21:41:16 +08:00
ふぁ
5e9546451c [Python] Add echo_api test object serialization for multipart requests (#18176)
* [python] echo add test object serialization for multipart requests

* [echo api] update samples

* [echo api] update samples
2024-03-23 21:40:10 +08:00
William Cheng
420e49f258 better type check for additoinal properties before casting (#18212) 2024-03-23 21:21:31 +08:00
William Cheng
4ca8f9c384 Update kotlin client dependencies to newer versions (#18211)
* update kotlin client dependencies to newer versoins

* update
2024-03-23 21:21:20 +08:00
Njeri Gachoka
aedf571811 Handle both types of additional properties when getting type declaration (#18201) 2024-03-23 17:42:22 +08:00
William Cheng
8288b6fb15 fix #18184, check nullable in 3.1 spec (#18189) 2024-03-23 17:15:27 +08:00
William Cheng
a26c87e7a9 [Kotlin][jvm-retrofit2] fix missing import for models in query parameters (#18143)
* add new kotlin client samples

* update workflow

* update samples

* update

* add kotlin echo api client

* update

* update

* fix model import
2024-03-23 15:38:49 +08:00
Thom
2916be0fb5 fix[kotlin]: only use data class when it has constructor vars (#18202)
Co-authored-by: Thom van Kalkeren <thom.vankalkeren@ns.nl>
2024-03-23 15:38:03 +08:00
devhl-labs
716a82f8bb minor spacing change (#18210) 2024-03-23 13:01:58 +08:00
William Cheng
84b3cd9962 allow customer version to be overwritten in additional properties (#18170) 2024-03-22 15:22:24 +08:00
dependabot[bot]
19898646a8 Bump webpack-dev-middleware from 5.3.3 to 5.3.4 in /website (#18200)
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 15:17:16 +08:00
Matteo Baccan
7565e365f8 Update pom.mustache (#18195)
* Update pom.mustache

* Updated pom.xml of samples
2024-03-22 15:05:32 +08:00
shirin175
1bfe800b9f typescript-fetch: Move parenthesis to correct place (#18075)
A misplaced parenthesis let to a syntax error when generating the code for a nullable set in the FromJSONTyped function. By moving the parenthesis to the correct place the syntax error was resolved.
2024-03-21 18:45:50 +08:00
Flemming Nørnberg Larsen
a4508f6817 #18058 Fix the Java generator to generate valid @RequestMappings where the produce field takes list of string parameters instead of a single comma-separated string (#18092)
* #18058 Fix AbstractJavaCodegen.getAccepts() so it returns a String array instead of a comma-separated string, and fixed api.mustache so the @RequestMapping annotation generated produces for x-accepts as a parameter list instead of a (single) string.

* #18058 Updated test case to accept a string array instead of a comma-separated list.

* #18058 Reverted changes on imported compared to the main branch.

* #18058 getAccepts() is now hybrid, and can return both a single String or a String[].

* #18058 Rolled back the hybrid getAccepts(), so it only returns a String array.

* #18058 Updated mustache files to cope with vendorExtensions.x-accepts being a string array instead of a comma-separated string.

* #18058 Generated new sample files with by running `./bin/generate-samples.sh ./bin/configs/*.yaml`

* #18058 Optimization of getAccepts()

* #18058 Regenerated scripts that got broken after resolving conflicts on GitHub

* #18058 Fixed introduced issue with api.mustache causing a redundant accept with @HttpExchange with the PetApi.java, StoreApi.java, and UserApi.java.
2024-03-21 17:53:18 +08:00
Sondre Eikanger Kvalø
c7e9bd2f29 [Kotlin][Server] Skip new post processing routine for kotlin server jaxrs (#18180)
* Skip post processing when generating JAXRS spec with Kotlin
This feature was previously added to work with the javalin5 library

* Add sample that proves what we expect after fixing this

* Update sample

* Added new samples to samples workflow

* Revert from jdk17 pipeline
2024-03-21 15:55:28 +08:00
ふぁ
e39b99051c [python] add test Missing the important statement for Datetime in Python binding generation (#18175)
* [python] add test on datetime response import

* [python] update sample

* [python] update sample
2024-03-21 15:40:33 +08:00
William Cheng
894848e550 update links to blog posts (#18174)
* update links to blog posts

* update doc
2024-03-21 15:36:52 +08:00
Maroš Varchola
9c26ad4745 fix: when instantiation type is not defined for language, return type itself for parent (#18164) 2024-03-21 08:06:11 +01:00
Jonas Emmert
bcd0bc5de8 [R][Client] fix brackets for httr2 file_params (#18142)
* fix brackets for httr2 file_params

* added additional braces to baseName of httr2 file_params
2024-03-21 11:43:50 +08:00
Daniel Wischolek
bf2a251dd6 scala-sttp4: fix for missing EnumNameSerializer for inner enum definitions (#18145) (#18160) 2024-03-21 11:43:15 +08:00
William Cheng
7aeb952565 update samples 2024-03-21 11:42:51 +08:00
Zishun (Zack) WEI
43ca5fcac9 Fix issue 18088: Missing the important statement for Datetime in Python binding generation (#18173)
* fix issue 18088

* update samples
2024-03-21 11:39:19 +08:00
William Cheng
0b94817f58 skip check for possible model type in abstract C# (#18171) 2024-03-21 11:38:40 +08:00
Matteo Baccan
fe9ba01bf8 Upgrade github action (#18181) 2024-03-21 11:31:05 +08:00
Jonas Emmert
2600eb92dc [R][Client] allow to initialize enum classes without parameters (#18183)
* allow empty initialization of enum classes

* regenerate samples
2024-03-21 11:21:41 +08:00
Sondre Eikanger Kvalø
ed8b7ec7f6 Should parse boolean value for useJavaEE as this is done elsewhere (#18182)
For consistency across generators we should allow specifying the value of the useJavaEE in the same way as for instance in the jaxrs-spec (Java)
2024-03-21 11:21:12 +08:00
Giovanni Cimolin da Silva
6a1791c8c3 fix: Don't spread strings, instead "||" them together (#18185) 2024-03-20 18:30:09 +01:00
Artur Zdolinski
c15e267e22 Fix problem in sanitize_for_serialization for Python (pydantic type SecretStr ) BUG#16086 (2nd pull) (#18023)
* fix-for-bug-16086

* add to_dict alternative

* fix assertEqual

* remove extra blank line + test_model Argument SecretStr set

* update samples / remove extra blank line

* restore sanitize test for serialization with different data types

* remove empty line in api_client.mustache

* remove 2nd empty line in api_client.mustache
2024-03-20 19:14:43 +08:00
Axident
e2df0d6154 #18095 | Prevent generating "pattern" and "size" to special formats of string type (#18135) 2024-03-20 14:07:29 +08:00
William Cheng
971c3a6059 Insert missing quote in clientPropertiesConfiguration.mustache for the Spring generator (#18172)
* #18090 Insert missing quote: `{{{tokenUrl}}}"` -> `"{{{tokenUrl}}}"`

* #18058 Added test unit

* #18058 Stop unit test from generating unnecessary APIs

* fix test

---------

Co-authored-by: Flemming Nørnberg Larsen <f.larsen@elsevier.com>
2024-03-20 14:06:16 +08:00
William Cheng
09af44eca3 [java] update jakarta.validation-api to 3.0.2 (#18124)
* fix: jersey3 library

fix issue that library failed in case pattern matching was used in
the api.

* add tests, update version

* update

* fix tag

* fix, update samples

* update build

* more update

* update workflow

* test useJakarta

---------

Co-authored-by: holomekc <30546982+holomekc@users.noreply.github.com>
2024-03-20 12:55:19 +08:00
condorcorde
de081e4edf Fix proxy type (#18166)
* Update configuration.mustache

Fix check of proxy type

* Changing sample source files
2024-03-20 12:53:58 +08:00
William Cheng
1108ce5808 update samples for cpp-ue4 petstore 2024-03-20 11:33:43 +08:00
Samuel Kahn
783119b687 [cpp-ue4] Handled nullable by setting the required tag, effectively making nullables optionals (even if they may be required in the spec). This is because there is no such concept as a value being nullable in C++, and this generator deals with values, not pointers. (#18168)
Co-authored-by: Samuel Kahn <samuel@darewise.com>
2024-03-20 11:26:54 +08:00
Giovanni Cimolin da Silva
93b76dde37 fix: Fix schema generation for oneOf when using TS-FETCH client (#18154)
* fix: Fix schema generation for `oneOf` when using TS-FETCH client

This fixes the following errors:
* Spread types may only be created from object types (on `FromJSONTyped` functions).
* Module '"./BlankEnum"' has no exported member 'instanceOfBlankEnum' (enum templaces don't export function used by other API client files).

* chore: Regenerate samples
2024-03-19 11:48:21 +01:00
William Cheng
191dc1a6ba Override escape reserved word in abstract rust (#17440)
* override escape reserved word in abstract rust

* add tests for ref, improve verion lambda

* add files
2024-03-19 18:33:29 +08:00
Poolmann
b7ea139f77 [Python] Fix object serialization for multipart requests (#18140)
* Fix multipart object serialization

* Update samples
2024-03-19 18:31:08 +08:00
Beppe Catanese
e58f19c735 [POSTMAN] Process request with array of string (#18159)
* Process JSON array

* Update test file

* Regenerate samples

* Add CI test
2024-03-19 18:29:48 +08:00
adrianhelvikspond
815205250a Fix: Incorrect serialisation of maps and sets in typescript-axios (#17790) 2024-03-19 08:21:39 +01:00
Jonas Emmert
5f49a04190 allow api response to be NULL and regenerate samples (#18141) 2024-03-19 10:03:17 +08:00
William Cheng
ddb5ab4078 Add name in various cases in property, parameter names (#18139)
* create nameInPascalCase

* add back name in camel case

* update abstract cpp codegen

* update erlang templates, update samples

* update tests

* add param names in various cases

* clean up

* fix
2024-03-19 09:27:02 +08:00
William Cheng
3155a70c3f [Refactor] create a static function to build map of codegen model (#18138)
* refactor to build map of codegen model

* update
2024-03-19 09:15:33 +08:00
Ross Bender
b59957a095 Java API invocation flexibility (#18078)
* add direct invocation methods for java (httpclient)

* add direct invocation methods for java (resttemplate)

* handle methods only if endpoints exist for api client

* preserve previous newline to minimize changes

* update httpclient/resttemplate samples

* add common methods in base class

* regenerate samples with base class
2024-03-18 21:51:32 +08:00
devhl-labs
da1187fc8d [csharp] Fixes incorrect property name (#18136)
* moved camel case lambda

* renamed camel case lambda

* reverted unintended change

* fixed wrong property names

* restored accidental file deletion

* build samples
2024-03-18 13:02:26 +08:00
William Cheng
669651fcb2 trigger workflow when theres change to postman.json (#18129) 2024-03-18 13:01:15 +08:00
devhl-labs
96fad5eb2c [csharp] Fix getModelFromParameter (#18137)
* fix getModelFromParameter

* minor fix
2024-03-18 12:54:49 +08:00
devhl-labs
12849cccbe Camel case lambda does too much (#18131)
* moved camel case lambda

* renamed camel case lambda

* reverted unintended change
2024-03-17 16:42:11 +08:00
William Cheng
c5ab78575a Add rule to set container (array, set, map) to true (#18128)
* add rule to set containter to null

* update doc
2024-03-17 16:37:46 +08:00
Tomohiko Ozawa
0b4cf0a027 [typescript-fetch] Omit readOnly properties from request models (#18065)
* omit readOnly properties on requests

* update the sample
2024-03-16 09:27:39 +01:00
dvacca-onfido
ae9598dcfc fix(typescript-axios): Serialize boolean to string in form-data file upload (#18084) 2024-03-16 09:20:48 +01:00
William Cheng
d1ccabbe7e update file header 2024-03-16 15:34:52 +08:00
ふぁ
3137b3da77 [python-pydantic-v1] Fix unnamed dicts with additional properties (#18112)
* [python-pydantic-v1] pick #16779

* [python] update sample
2024-03-16 15:26:06 +08:00
Daniel Karlsson
fbe81f0735 Add new uncamelize lambda (#18109)
Co-authored-by: Daniel Karlsson <daniel.karlsson@cinnober.com>
2024-03-16 15:23:10 +08:00
William Cheng
41dbe51575 update protobuf to newer version (go gin) (#18123) 2024-03-16 14:59:47 +08:00
dependabot[bot]
58bdef48c7 Bump follow-redirects from 1.15.4 to 1.15.6 in /website (#18116)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6)

---
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>
2024-03-16 14:36:24 +08:00
Petar Karadzhov
4f4237393f [dart] fix: Bearer and Basic auth interceptors case-insensitive scheme comparison (17073) (#17074)
* [dart] fix: Bearer and Basic auth interceptors case-insensitive scheme comparison

* Update samples
2024-03-16 10:49:43 +08:00
Jérôme Prinet
3bd8974583 Ignore _merged_spec.yaml when computing build cache key (#18105) 2024-03-15 19:43:29 +08:00
Beppe Catanese
cb75fa0d9e [POSTMAN] Genarate Postman requests from inline examples (#18086)
* Process inline examples (if available)

* Test generation with inline examples

* Update samples

* Move test to CI testing suite
2024-03-14 21:03:31 +08:00
Dennis Melzer
5ed2283e01 Fix model generation of array with items unique = true (#18104)
* Fix optional empty collection as default

* Fix test

* Fix test

* Fix default value collection handling
2024-03-14 20:51:11 +08:00
Dennis Melzer
96bf7ac915 Fix default empty collections when collection is optional (#18080)
* Fix optional empty collection as default

* Fix test

* Fix test
2024-03-14 20:28:27 +08:00
Jonas Emmert
6075b8a8f1 [R][Client] Fix api response, JSON for maps and let httr2 api client handle empty response bodies (#18049)
* changed files from rebuilding project and updating samples

* change default value of from_encoding to empty string

- from_encoding = NULL is invalid and produces an error, as only strings are allowed, see https://www.rdocumentation.org/packages/base/versions/3.6.2/topics/iconv
- defaulting to an empty string fixes this issue

* fix map being surrounded by quotes in json

* allow httr2 client to deal with empty response body

* changed files from rebuilding project and updating samples

* added PetMap schema for test of correct map serialization in toJSONString and regenerated samples
2024-03-13 15:30:58 +08:00
javiarellanoo
7e8de912a7 Update ExampleGenerator.java (#18003)
Renamed the DATE_FORMAT field in order to follow convention
2024-03-13 15:02:08 +08:00
Daniel Seiler
9824b004f0 Update 2018-12-24-new-website.md (#18085)
https://docusaurus.io/en returns 404
2024-03-13 13:26:54 +08:00
dependabot[bot]
e41dc1e81b Bump swift-actions/setup-swift from 1 to 2 (#18087)
Bumps [swift-actions/setup-swift](https://github.com/swift-actions/setup-swift) from 1 to 2.
- [Release notes](https://github.com/swift-actions/setup-swift/releases)
- [Commits](https://github.com/swift-actions/setup-swift/compare/v1...v2)

---
updated-dependencies:
- dependency-name: swift-actions/setup-swift
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-13 13:21:50 +08:00
ふぁ
1586c698c9 [python] Fix multipart requests with type file fails with binary data (#18079)
* [python] fix Multipart requests with type file fails with binary data #18073

* [python] update sample
2024-03-12 19:24:55 +08:00
Timo von Holtz
5975e6c5b0 Haskell: JSON Query parameters (#18047)
* Allow json encoded query paramters

* Also fix haskell-http-client

* Regenerate haskell samples
2024-03-12 15:35:18 +08:00
denisbog
6251aa17ef [RUST-AXUM] fix generator not handling application/x-www-form-urlencoded request content (#18061)
* fix OpenAPITools/openapi-generator#18060

* isolate the option as separate flag

* apply modification suggested by @wing328

* remove added newlines
2024-03-12 15:17:30 +08:00
ふぁ
678db1e4af [python] json like str response (#18069)
* [python] json like str response

* [python] fix response deserialize

* [python] update sample

* [python] fix echo_api test quotes
2024-03-11 20:27:26 +08:00
BaptisteSaves
82fcf28a2b Remove pydantic warnings when using model_dump by fixing one_of_schemas type (#17941) 2024-03-11 20:26:46 +08:00
William Cheng
7f1e79f7d2 [C] Optimize memory usage when printing JSON (#18072)
* cJSON generate unformatted json to save memory during large objects handling

* update sample

* add option to use cjson print unforamtted in client

* remove unused test template files

* add new samples

* update workflow

* update doc

* fix model filename

* fix inclulde

---------

Co-authored-by: Hemant Zope <42613258+zhemant@users.noreply.github.com>
Co-authored-by: Hemant Zope <hemantzope2008@gmail.com>
2024-03-11 16:18:08 +08:00
William Cheng
4ff7e0ec3f Prepare 7.5.0 snapshot (#18068)
* Revert "7.4.0 release"

This reverts commit eda0493484.

* prepare 7.5.0 snapshot version

* update samples

* update doc
2024-03-11 11:10:52 +08:00
William Cheng
2abcb4f7f0 7.4.0 release (#18067) 2024-03-11 10:11:15 +08:00
linxin1019
20bd649bf9 Add enum name mapping feature to typescript generators (#18064)
* feat: add enum mapping for typescript

* revert unnecessary change
2024-03-10 23:28:33 +08:00
swcm-mnestler
0bc979ebdc [typescript-nestjs] Compatability with tsc 'strict' flag (#17672)
* [typescript-nestjs] Compatability with tsc 'strict' flag

* Update samples / docs
2024-03-09 17:16:29 +01:00
William Cheng
950028419a update samples 2024-03-10 00:03:11 +08:00
dabdirb
93aec4d89d Fix #17831 @lombok.NonNull on all required fields when any lombok annotation is included (#17861)
* fix #17831 @lombok.NonNull on all required fields when any lombok annotation is included

* fix #17831 @lombok.NonNull on all required fields when any lombok annotation is included
2024-03-09 17:44:10 +08:00
hahny93
033993c63d [Kotlin Spring] fix template request part and description (#17821)
* [kotlin-spring] Parameter Name and Description are now used properly in multipart form endpoints

* [kotlin-spring] Parameter Name and Description are now used properly in multipart form endpoints (generated docs and samples)

* [kotlin-spring] Parameter Name and Description are now used properly in multipart form endpoints (generated docs and samples)

---------

Co-authored-by: Kevin Hahn <kevin.hahn@partner.ionity.eu>
2024-03-09 17:43:27 +08:00
William Cheng
494fc7d182 [kotlin] Enum should match spec (#18062)
* [kotlin] Enum should match spec

Adjust the enum generation to match what is in the spec, rather than
camel-casing it.
Add tests for capitalization scenarios, including for kotlin keywords

* [kotlin] export docs generators for enum change

* [kotlin] export docs generators for enum change

* fix conflicts

---------

Co-authored-by: Tyler B. Thrailkill <tylerbthrailkill@gmail.com>
Co-authored-by: Jari Nystedt <jari.nystedt@tietoevry.com>
2024-03-09 17:42:33 +08:00
William Cheng
81e33ede6e update gitignore 2024-03-09 17:18:23 +08:00
julien Lengrand-Lambert
f1fcceb375 Major Jetbrains HTTP Client upgrade. Move to BETA (#15779)
* Add notes to requests for better readability

* Adds extra configs for jetbrains http client for testing

* Adding new sample data

* Changes

* Setting up test infrastructure

* Adds body to requests.

* Fixing some bugs in map traversal

It'd be much better to use a proper library for this though

* Adding secret file to gitignore

* Adds github spec, for complex example.

Add null check to avoid errors in example extraction

* Add support for custom variables in request body

* Add support for all basic Auth headers

* Not sure whaet happened with my api mustache file

* Add support for custom headers

* Fixes empty lines issue

* Adds support for Accept header

* Adding many tests, deleting experiment files

* Updates generator doc

* Completes README file with extra information

* Runs generate-samples and export docs

* Running sample generation

* Adding missing files to samples

* Removing forgotten stdout statements

* Ignore one test making the docker image generation fail
2024-03-09 16:56:26 +08:00
William Cheng
93d5fc646b update kotlin server tests 2024-03-09 16:51:52 +08:00
William Cheng
f61b7c2aa4 remove generator version sample test and config 2024-03-09 15:55:46 +08:00
Ross Bender
cf2435f335 Add support for controlling output of OpenAPI Generator version in generated files (#17952)
* add initial openapi config and java generated files

* add java implementation for adding generator version

* regenerate sample client files

* remove tabs

* only show generated version if build info exists

* set build info for batch generation

* update generator doc for new global flag

* use existing property for generator version

* update templates to include generator version

* update templates for better generator version syntax

* revert undesired changes

* regenerate samples for openapi client

* update templates to correct formatting/newlines

* correct description text and add to usage doc

* add generator cli option for all codegen types

* use more concise version info; update existing codegens to support new prop

* correct wrong prop reference

* add initial test coverage for new prop

* update last (scala) templates with new prop

* update samples after upstream merge

* use consistent version output

* use better sample project id/name

* revert using option for generator version in templates
2024-03-09 15:52:08 +08:00
andreas-wirth
c87ad561f1 inputSpec should not be mandatory when inputSpecRootDirectory is set (#18000)
* Fix inputSpec to not be mandatory in maven plugin

* Add unit tests
2024-03-09 15:34:13 +08:00
Tomohiko Ozawa
5d959eeae6 [typescript-fetch] Use == to check property is null or undefined (#17972)
* use `==` operator to check null or undefined

* update the sample
2024-03-09 15:28:36 +08:00
Prashant Pant
31cff44206 Autoset constants (Required fields having single valid enum value) C# Implementation of #16547 (#17954)
* Autoset constants (Required fields having single valid enum value) C# Implementation

* Update generichost/api.mustache & httpclient/api.mustache to autoset singleton enums values.
2024-03-09 15:07:26 +08:00
William Cheng
8dae7026b9 update samples 2024-03-09 14:41:22 +08:00
Oscar Reyes
7d9f9d7e81 [kotlin-spring] Fix cookie parameter code generation in API (#17959)
* + Cookie parameter generation fixed

* Added cookie parameter mustache template for generating cookie related code
* Adapted kotlin-spring api templates to include cookie parameters
* Added tests for evaluating cookie parameter code generation
* Added configuration sample for the new cookie use case

* - Unused fake cases removed

* Removed fake cases from openapi spec that were not related to cookie usage
* Cleaned sample files
2024-03-09 14:34:12 +08:00
Dan Booker
2653777ece [C][Client] Fix default enum value being -1 (#18040) 2024-03-09 14:16:41 +08:00
Ira Chan
62d0e3abdb [kotlin-spring] fix BigDecimal default value failed to compile (#17956) 2024-03-08 12:56:16 +00:00
Charles Treatman
34a386c5a3 [Go] Update generator docs to reflect supported features (#18044)
* [Go] Update generator docs to reflect supported features

* update feature support in code
2024-03-07 10:36:08 +08:00
Daniel Seiler
8eaeb2a1e7 fix(java): Use modelNameMappings if provided (#18025) 2024-03-06 13:57:03 +08:00
William Zhang
ae9084bfd6 fix: typo in docs (#18028) 2024-03-05 15:34:02 +08:00
martin-mfg
8f74d03290 fix KotlinServerCodegenTest and PostmanCollectionCodegenTest (#18019)
* fix KotlinServerCodegenTest and PostmanCollectionCodegenTest

* fix PostmanCollectionCodegen line endings
2024-03-04 13:08:33 +08:00
Aliaksei
92314232f8 [bugfix][18008]: fix getBeanValidation for scalar as ref (#18014) 2024-03-04 13:04:57 +08:00
gf-smtzgr
2d155105a4 Added jackson as supported serialization library for retrofit2 (#16853)
* added jackson as supported serialization library for retrofit2; resolves #7435

* Jackson support for retrofit2 library: Adjusted ApiClient to respectively include only gson or jackson specific conversion support depending on which serialization framework is selected

* Jackson support for retrofit2 library: Adjusted dependencies to respectively only include those necessary for gson or jackson depending on which serialization framework is selected

* reorder converter factory additions to have minimal change

* -: skipping gson-fire dependency when gson is not selected

* -: Jackson support for retrofit2 library: since useplayws implies jackson usage, only adding dependencies via useplayws that are specific to it

* Jackson support for retrofit2 library: fixed whitespace issue in generated api clients

* Jackson support for retrofit2 library: removed duplicated play26 dependency version property

* Jackson support for retrofit2 library: update to play26 example as that had gson dependencies but does not seem to use it and now fully relies on the jackson setting to control the respective dependencies; play version property and dependency changed place because the jackson dependencies are grouped together and the play26 ones are placed after

* Jackson support for retrofit2 library: adjusting dependencies also for gradle file

* -: moved jackson databind version out of jackson section since it is used independently of jackson support it seems

* -: update gradle dependencies to match changes in maven dependencies
2024-03-04 12:50:42 +08:00
Vladimir Svoboda
5d43c88540 [Java] [Spring] Fix reactive return type for list (#16884)
* Improve Add Async - Spring Cloud test

By testing the generated code.
This will be used to detect regressions.

* Spring: Fix reactive return type for list

Fix for #16883.

When *reactive* is enabled and response entities is *disabled*,
use `Flux<Item>` to stream the output instead of `Mono<Flux<Item>>`
With Spring Reactive, the expected return type for an array of item is
`Flux<Item>`.
Without this patch, the generated code is `Mono<Flux<Item>>`.

This is fixed by introducing specific handling for return types when
reactive is enabled.
In particular, "responseWrapper" is not used anymore in such situations.

* Fix methodBody

* Fix invalid test

* Fix SSE

* Fix methodBody when isArray and useResponseEntity

* methodBody: Flux.empty() instead of s -> {}
2024-03-02 21:19:34 +08:00
Alex B
009fda5e3d [JAVA][apache-httpclient] Use `EntityUtils#toString instead of Scanner` (#17998)
``EntityUtils#toString`` automatically selects the correct encoding based on the received request.
Scanner currently uses the JVM default encoding, which doesn't always work.
2024-03-02 21:18:49 +08:00
Linh Tran Tuan
cdf8973999 [Rust] [Axum] Fix clippy warning: to_string_trait_impl (#17995)
* [Rust] [Axum] Fix clippy warning

* Using Display trait
2024-03-01 11:32:23 +08:00
Georgi Getsov
d3ebb0a52b Fix 3.1 generation for composed schema's with type object (#18002) 2024-03-01 11:23:53 +08:00
William Cheng
d4e10508cd [C#] fix anyof, oneof mixed primitive object parse error (#17986)
* Update csharp oneOf and anyOf mustache templates to accept primitive, object, and array types when deserializing

 Add bug openapi spec

Remove generated files

Add test endpoints

Generate base on spec

Remove issue spec as it is moved into sample test spec

Add back in number and int

Round trip anyOf/oneOf serialization tests

Generate classes with int/num types

Do through converter instead of object ctor

Regen models

Use convert methods

Regen models

Test data

Add enum

Remove enums

Regenned models

* update sha256

* use new spec

* skip tests

* update workflow

* fix

---------

Co-authored-by: Ruben Aguilar <ruben.aguilar@forgeglobal.com>
2024-02-29 16:05:08 +08:00
Kathryn DiPippo
c10c9146b9 [python] Update Markdown files for Models with fixed Python print() syntax (#17993)
* Update Markdown file with fixed Python example

* ./bin/generate-samples.sh ./bin/configs/*.yaml
2024-02-29 10:54:54 +08:00
William Cheng
d801bfdb84 remove poetry.lock (#17994) 2024-02-29 10:54:08 +08:00
William Cheng
8df0d98a44 fix broken link to spec 2024-02-29 10:42:59 +08:00
William Cheng
2d3670b96c update openapi normalizer doc 2024-02-29 10:34:21 +08:00
0xNF
275ed9296d [dart2] [client] Bump test package version to >=1.21.6<1.22.0 to enable running tests on Dart3 projects. Also bumped minimum Dart version to 2.18 to accomodate this change. (#17563) (#17816) 2024-02-28 18:37:33 +08:00
Anakael
1fbf7220ec [CS] refactor: update github actions (#17666)
* feat: DateOnly for client

* fix: generated doc for csharp

* doc: fix generators README for csharp

* add DateOnly option for aspnet

* refactor: update csharp docs

* refactor: fix typo

* finish

* finish

* finish

* regenerate

* rebuild and regenerate

* fix build error

* finish

* revert path

* regenerate

* remove exceed samples

* regenerate

* add DateOnly to nullable

* remove obsolete file from list

* update test files list

* remove obsolete sample build

* revert manual tests

* revert samples to master and regenerate

* remove new samples

* remove eol

* remove eol

* add new specs

* try fix test

* update tests

* update files

* remove eol

* revert

* remove eol

* regenerate

* add net6+ support to aspnetcore

* add jobs

* update actions

* regenerate

* delete exceed file

* remove rexeg
2024-02-28 15:56:48 +08:00
Artem Medvedev
6f01a7ad82 fix(rust): wrong path to model used as parameter of api (#17968)
* fix(rust): wrong path to mode used as parameter of api

Closes #16974

* fix: re-build samples
2024-02-28 14:56:03 +08:00
William Cheng
340a3eba54 update feign to newer version (#17983) 2024-02-28 14:11:42 +08:00
Ruokki
149246de31 fix(java): resolve feign ambiguity in ApiErrorDecoder fix(#17842) (#17843) 2024-02-28 12:06:57 +08:00
Andre Wachsmuth
8ca914d64f [okhttp-gson] Make initializer block for GSON builder static #16860 (#16892)
* [okhttp-gson] Make initializer block for GSON builder static #16860

Make initializer block for GSON builder static, see #16860

* update sapmles

---------

Co-authored-by: Andre Wachsmuth <awa@xima.de>
2024-02-28 12:04:44 +08:00
William Cheng
df8851d627 update orjson to newer version (#17982) 2024-02-28 11:45:26 +08:00
Artem Medvedev
4b04e17751 feat(rust): support ability to disable boxed models in client (#17931)
* feat(client): support ability to disable boxed models

Add new additional property `avoidBoxedModels` which can be configured to avoid `Box<..>` of models.

It's very nice to have such config, because it doesn't make a lot of sense for really simple models.

* test: rollback config of existed test
2024-02-28 11:22:18 +08:00
Stefan Koppier
2a4e60ccbb [Kotlin] Fix default values (#17937)
* Fixed invalid extraction of response body in kotlin-client jvm-spring-*

* Generated echo-api for kotlin-jvm-spring-3-restclient

* Specific echo-api for Kotlin without allOf/anyOf

* Specific echo-api for Kotlin without allOf/anyOf

* Generated all samples

* Added kotlin-jvm-spring-3-restclient sample to workflow

* Fixed syntax problem

* [kotlin] Fixed multiple problems with default values

* [kotlin] Removed old commented code

* [kotlin] Generated new samples after merge with master

* [kotlin] ensure-up-to-date
2024-02-28 11:20:27 +08:00
William Cheng
0b02734b93 better handling of allOf in request/response (#17964) 2024-02-28 11:19:11 +08:00
Tomohiko Ozawa
a8efb8eea8 Add hasReadOnly property to CodegenModel (#17942)
* add hasReadOnly property to CodegenModel

* add for CodegenModel subclasses
2024-02-26 16:27:33 +08:00
William Cheng
51ef501c02 fix npe by prefixItems in normalizer 3.1 spec (#17955) 2024-02-26 15:24:55 +08:00
Ross Bender
22c52d358c Update Java templates to correctly close parenthesis (#17961)
* update java templates to correctly close parenthesis

* add closing parenthesis to missing java template
2024-02-26 15:24:31 +08:00
Chris Miller
4ba187a1a4 Provide rust-server swagger/multipart_form (#17950)
* grant rust server swagger form multipart

* run exporters
2024-02-25 17:18:15 +08:00
William Cheng
6e113842cf [resttemplate] Update springweb to newer version (#17953)
* update springweb to newer version

* update
2024-02-24 23:43:15 +08:00
Artem Medvedev
518b29d089 fix(rust): oneOf generation for client (#17915)
* fix(rust): discriminator mapping to serde rename

Discriminator mapping has been ignored in some cases.
Even existing samples had wrong definition in some cases

This PR addresses this

* fix(rust): `oneOf` generation for client

Solves #17869 and #17896 and also includes unmerged $17898

Unfortunately it affects quite a lot of code, but we can see that only client-side models were affected by re-generation.
I tried to split this PR to several, but they're really coupled and hard to create a chain of PRs.

* fix: indentation in `impl Default`

* missing fixes

* fix: correct typeDeclaration with unaliased schema

* style: improve indentation for models

* fix: user toModelName for aliases of oneOf

* refactor: unify `getTypeDeclaration` for rust

* cover the case when `mapping` has the same `ref` for different mapping names

* test: add test for previous change

* style: remove extra qualified path to models

* add some comments

* fix(build): use method of `List` instead of specific for `LinkedList`
2024-02-24 23:41:30 +08:00
William Cheng
15af1ce1de update doc 2024-02-23 16:27:26 +08:00
Miklós Márton
81b96fd606 Prevent enum item names being reserved keywords (#17804) 2024-02-23 16:02:22 +08:00
Miklós Márton
62b3ba7acc [cpp]Do not lowercase the reserved keywords for C++ (#17802)
(Will be necessary for adding NULL as a reserved keyword)
2024-02-23 16:01:36 +08:00
Miklós Márton
9c72b25bf4 [cpp-qt-client]Allow nullable parameters (#17805)
* [cpp-qt-client]Allow nullable parameters

Fixes #17756

* Update samples
2024-02-23 16:01:13 +08:00
Miklós Márton
c4f90d058b Add NULL as reserved keyword cpp (#17803)
* [cpp]Do not lowercase the reserved keywords for C++

(Will be necessary for adding NULL as a reserved keyword)

* [cpp]Add NULL as reserved keyword
2024-02-23 16:00:23 +08:00
Jean-François Côté
a6771adf53 Add nullable to model fields (#17934) 2024-02-23 15:55:19 +08:00
William Cheng
9f5ec178cb update html2 samples 2024-02-23 00:44:17 +08:00
Kira Resari
fe919b2203 Updated jQuery to latest version (#17930)
The old version (3.1.0) had known security issues
2024-02-23 00:34:04 +08:00
Tyler Mairose
8d73c82417 Add additional mustache lambda for kebab case (#17858)
* Add new kebabcase mustache lambda

* Add tests for new kebabcase lambda

* Update toLowerCase to use Locale.ROOT
2024-02-23 00:30:01 +08:00
William Cheng
f191904297 Add auto-generated test files for kotlin client (#17916)
* add auto-generated test files for kotlin client

* undo changes to doc

* add auto-generated model test files in kotlin clients

* update tests
2024-02-21 18:29:23 +08:00
Bastien Jansen
3af7363e76 Fix ClassCastException in OpenAPINormalizer on composed schemas in 3.1 (#17912) 2024-02-21 15:22:46 +08:00
mikkka
6c86c2d3cf Remove postprocess printing (#17880) 2024-02-20 18:19:38 +08:00
William Cheng
cf8c343b17 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2024-02-20 17:59:04 +08:00
William Cheng
3c364ccbb4 use white litslink logo 2024-02-20 17:58:38 +08:00
ふぁ
c99a5cfeb6 [python] update model_config from dict to ConfigDict (#17900)
* [python] rewrite dict as ConfigDict

* [python] update sample

* [python] undo unwanted changes

* [python] update sample
2024-02-20 17:53:13 +08:00
William Cheng
6b024dbbfa Add LITSLINK as the bronze sponsor (#17904)
* add litslink as the bronze sponsor

* add logo

* update logo
2024-02-20 17:48:21 +08:00
Mehmet Fatih Ercik
48565ae5be Generate API files as interfaces for go-gin server (#17784)
* add feature to generate only interface files

* generate sample

* add workflow file foe go gin service

* add workflow file foe go gin service

* add workflow file foe go gin service

* update samples
2024-02-20 15:37:44 +08:00
Stefan
95377cded4 Fix typos 'the the'. (#17897) 2024-02-20 13:00:55 +08:00
William Cheng
ad84355288 fix: Runtime error that occurs when Retrofit2 query parameter is an enum list (#17901)
* fix: Runtime error occurs when Retrofit2 query parameter is an enum list (9481)

* chore: Removes EOL

* remove EOL

---------

Co-authored-by: Ivan Vasheka <87310984+ivanvasheka-intellias@users.noreply.github.com>
2024-02-20 12:56:28 +08:00
ふぁ
ad08581f16 [python] Fix Circular imports on inherited discriminators. (#17886)
* [python] add inheritance discriminators test #16808

* [python] update samples

* [python] fix assert in test

* [python] fix inheritance discriminators circular import

* [python] update samples

* [python] undo type changes related to discriminator

* [python] remove extraneous processing

* [python-pydantic-v1] fix inheritance discriminators circular import

* [python] remove type ignore comment

* [python] update samples

* [python] fix avoid the empty line break

* [python] update samples
2024-02-20 12:17:32 +08:00
Jérôme Prinet
bf8ee80001 Enable local build cache (#17894) 2024-02-20 11:23:46 +08:00
Nathan Shaaban
76d743b63b fix(rust): simplify new function optional logic (#17865)
* fix(rust): simplify None logic

Used to be a code path (where isFreeFormObject and something else) where we could end up with two `: None` `: None`'s

This does add the None for the !required && !isArray && !isMap && !isNullable case (where nothing would have been printed before.

Above for the type on the individual vars inside the struct definition the logic is simply if not required then it's optional.
If it's optional we want a None when creating a new struct.

* ci: add tests for failure
2024-02-19 22:26:29 +08:00
Jérôme Prinet
eb7d9b1605 Migrate to Develocity Build Cache connector (#17891) 2024-02-19 21:17:39 +08:00
Noor Dawod
e025ef947a Use exists() to check for properties (#17798)
* Use `exists()` to check for existing properties.

* Generate Petstore code.

* Fix use of `null` instead of `undefined`.

* Enhance function code.

* Regenerate Petstore code.

* Use `exists()` in generated API clients.

* Use `exists()` in generated API clients.

* Refer to properties differently.
2024-02-19 11:12:46 +08:00
Felix König
6350d1d191 make title available to templates for ref properties (#17881)
Even though `title` is technically for the title of the API itself,
it's possible to set it for properties as well.
Right now, the `title` property is available in templates for regular properties,
but for ref-properties it gets lost right here.
This seemed rather surprising to me, so I think it's better to fix.
2024-02-19 11:06:26 +08:00
William Cheng
28b75377b5 Add EchoServerResponseParser.kt to Kotlin Echo API client (#17887)
* add kotlin jvm retrofit2 coroutine echo client

* add tests for echo server parser

* add workflow

* remove coroutines sample
2024-02-19 10:52:58 +08:00
William Cheng
7d539bcb78 Remove deprecated library (jvm-okhttp3) in kotlin client generator (#17884)
* remove deprecated library in kotlin client generator

* update workflow
2024-02-18 17:16:23 +08:00
William Cheng
436a3e0744 fix multi line description in allOf (#17879) 2024-02-16 15:26:15 +08:00
William Cheng
5a0f6b8eb2 use unescaped media type (#17878) 2024-02-16 10:55:01 +08:00
William Cheng
809c90aa24 Use unescaped media type in java native client (#17872)
* use unescaped media type in java native client

* add tests
2024-02-16 10:17:08 +08:00
Dipesh Chauhan (Twilio Work Account)
cedf170454 Adds Collapse Spec Options to Maven Plugin (#17714)
* Adds Collapse Spec Optionss to Maven Plugin

* Adds a collapsedSpec option to the maven plugin that produces a single-file representation of the spec in the output directory.
* Adds a includeCollapsedSpecInArtifacts option to the maven plugin that adds the collapsed spec file to the maven artifacts.

* Address Feedback Round 1

* Adds the new options to the maven plugin README.md.

* Fixes Unit Tests

* Corrects the casing of one of the schema files that was causing the tests to fail.
2024-02-15 17:02:25 +08:00
Dennis Melzer
7d76d0af61 Fix configuration handling with Feign (#17860)
* Fix configuration handling with Feign

* Fix test

* Fix compile error

* Fix compile error
2024-02-15 17:01:01 +08:00
William Cheng
82bb813aeb update fastapi dependencies to newer versions (#17871) 2024-02-15 15:27:17 +08:00
William Cheng
4e39f12e29 [Go] fix isNil check (#17870)
* #17835 changed to return !IsNil

* update samples

---------

Co-authored-by: sagar khot <sagarkhot74@gmail.com>
2024-02-15 14:17:31 +08:00
William Cheng
887b860007 Update python-fastapi generator to support Pydantic v2 (#17369)
* update python fastapi to support pydantic v2

* add new files

* update samples

* update samples

* update starlette

* update typing extensions

* update email validator
2024-02-15 14:15:51 +08:00
Steven Sheehy
8cd34ac963 Fix native java with list validation (#17857)
Signed-off-by: Steven Sheehy <steven.sheehy@swirldslabs.com>
2024-02-15 13:29:43 +08:00
William Cheng
4810dd52c3 [python-fastapi] auto generate impl folder (#17852)
* auto generate impl folder

* fix working dir

* install pytest

* add new file

* update, fix

* test with py 3.9

* fix tests

* update doc
2024-02-15 13:08:04 +08:00
William Cheng
b0c9456add add FILTER to openapi normalizer (#17859) 2024-02-15 13:05:31 +08:00
Yannick Wiesner
41bb5cd331 [Dart] Make dependency on intl package less strict (#17862) 2024-02-15 12:54:20 +08:00
s-jepsen
487b856c11 Fix java-spring equals generation (#17837) 2024-02-15 12:27:33 +08:00
dvacca-onfido
9deeb608e6 fix(ruby): Detect content-type in form-data file upload using faraday (#17851) (#17853)
* fix(ruby): Detect content-type in form-data file upload using faraday (#17851)

* Update samples

* Add needed dependency libmagic-dev into node 1 setup of Circle Parallel CI

* After merge/pull last master + regeneration of samples
2024-02-14 21:14:01 +08:00
William Cheng
7d2e8b1278 update rust samples 2024-02-14 00:10:26 +08:00
Nathan Shaaban
c30d3696b0 [rust] basic oneOf support (#13970)
* [rust] basic oneOf support

Suport oneOf as a rust struct enum.

Details:

Enum without a discriminator is untagged being
"untagged" simply means serde won't attempt to
store the name of the enum inside the serialized
object. See
https://serde.rs/enum-representations.html#untagged
for more

Also check to make sure the mapping values
are not an empty object (aka null).

Co-authored-by: Nikita Puzankov <git@bshn.rs>

* refactor: fix clippy lints

No longer needed as of reqwest 0.10, it now takes the response as owned instead of mut ref.

Is not empty is more clear

* fix: discriminator and oneof case

Will show as a struct enum when there are additional fields, otherwise will be a tuple enum.

not sure the purpose of x-mapped-models, perhaps legacy code? mappedModels appears to do the same thing.

Also add default implementation for quality of life

* chore: update samples

---------

Co-authored-by: Nikita Puzankov <git@bshn.rs>
2024-02-13 19:21:51 +08:00
William Cheng
4fb97b1003 add support for extension in request body to name body parameter (#17850) 2024-02-13 17:33:51 +08:00
William Cheng
dd3ab0a1fa Fix attributes in allOf and $ref (#17836)
* fix allOf and ref properties

* add tests
2024-02-13 16:54:40 +08:00
William Cheng
3f344ac6b4 update python fastapi readme 2024-02-13 16:54:27 +08:00
Alex
024c245ba7 Run the server using PYTHONPATH and correct module (#17820)
Executing the command from the README file should allow the user to run the application. Without the proposed changes either the error message `Error loading ASGI app. Could not import module "main".` or `ModuleNotFoundError: No module named 'openapi_server'` is being returned.
2024-02-13 16:49:39 +08:00
martin-mfg
aad345f0bd expand documentation for option "artifactVersion" (#17845)
* update documentation strings

* re-generate docs
2024-02-13 16:18:05 +08:00
dependabot[bot]
f3d5ea2f54 Bump s4u/setup-maven-action from 1.11.0 to 1.12.0 (#17849)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  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>
2024-02-13 12:55:10 +08:00
Simon Podlipsky
ec42f88c6a refactor(php): unify $hostSettings variable name (#17828) 2024-02-12 16:13:55 +08:00
Simon Podlipsky
f431540075 fix(php): do not cast to string something that's already string (#17838) 2024-02-12 16:06:33 +08:00
Simon Podlipsky
f3ac4498df refactor(php): use self::markTestIncomplete instead of instance calls (#17824)
It's reported by phpstan as `Dynamic call to static method PHPUnit\Framework\Assert::markTestIncomplete().`.

The method is static, therefore it should not be called from instance context.
2024-02-12 15:48:44 +08:00
Simon Podlipsky
cd23dfd3ce fix(php): call selectHeaders correctly in psr-18 implementation (#17832)
- `selectHeadersForMultipart()` does not exist,
- therefore we have to call `selectHeaders()`

This is signature of `public function selectHeaders(array $accept, string $contentType, bool $isMultipart): array;`

We have to pass `$multipart` as 3rd parameter.

The second parameter is content type as string, not in array.
2024-02-12 15:47:27 +08:00
William Cheng
5535578036 update meta codegen 2024-02-12 15:46:38 +08:00
Simon Podlipsky
1e9bccca16 feat: generate EOL in VERSION file (#17829)
The EOL is missing so let's add it in order to comply with POSIX standard:

Line
> A sequence of zero or more non- <newline> characters plus a terminating <newline> character.
2024-02-12 15:40:55 +08:00
William Cheng
783e68c7ac 7.4.0 snapshot (#17818)
* Revert "7.3.0-release (#17817)"

This reverts commit d617b46c86.

* update samples, docs, readme
2024-02-08 16:07:22 +08:00
William Cheng
d617b46c86 7.3.0-release (#17817) 2024-02-08 14:15:11 +08:00
William Cheng
0bcd88b204 update docs 2024-02-08 13:38:48 +08:00
Miklós Márton
36f2ecae48 Extend the reserved keywords for Qt projects with the following words: (#17722)
- signals (builtin Qt macro)
 - slots (builtin Qt macro)
 - valid (generated classes has an isValid method)
 - set (generated classes has an isSet method)

Fixes #17487
2024-02-08 13:19:47 +08:00
William Cheng
0d1b14a75f replace 4-space with tabs in go templates 2024-02-08 12:58:19 +08:00
Mehmet Fatih Ercik
fdb001c8a3 add a new function router to pass gin context (#17785) 2024-02-08 12:53:00 +08:00
William Cheng
7cdbb2a7b4 update samples 2024-02-08 11:38:49 +08:00
Andreas Zöllner
bc680568c5 include API information in RestConfiguration Template (#17770)
Include API info in RestConfiguration for java-camel-server mustache template to prevent warning on startup as OpenAPI information can't be created otherwise.
2024-02-08 11:34:55 +08:00
Ash Berlin-Taylor
5334014098 [go] Fix panic from marshalling Nil NullableTime (#17772) 2024-02-08 11:25:09 +08:00
Nathanael COURET
ba4e5ef495 Fix #17752 - Add dependency for jakarta-validation-api and hibernate-validator to pom.xml file for Java client with Resttemplate library (#17753)
Co-authored-by: NC90131N <nathanael-externe.couret@enedis.fr>
2024-02-08 11:23:23 +08:00
William Cheng
5bcdc25645 update test file sha256 2024-02-08 11:20:05 +08:00
Vasilii Sorokin
be81652269 [java] 14404 fix for json arrays (#17812) 2024-02-08 11:19:08 +08:00
William Cheng
cd18299bb8 Fix TS Axios echo client github workflow (#17815)
* test fix

* test fix
2024-02-08 11:03:59 +08:00
Jonathan
f323a3e788 [Python] deserialize enum json response (fix #17789) (#17791)
* deserialize enum json response (python)

* adapt python samples: adding enum deserialization

* add echo test for enum json response deserialization (python)

* update samples
2024-02-08 10:52:43 +08:00
Martin Delille
c71eb5dfe8 [cpp-qt-client] Fix CMakeLists.txt.mustache and CMakeLists.txt for Qt5 (fix #17712) (#17721)
* [cpp-qt-client] Fix CMakeLists.txt.mustache and CMakeLists.txt for Qt5
(fix #17712)

* Restore CMAKE_AUTOMOC
2024-02-08 10:44:36 +08:00
William Cheng
0202bac539 fix parent name look up using schema name (#17807) 2024-02-07 18:11:43 +08:00
MarBode
cbc345308a Fix OpenAPITools#17757 - Include minimum and maximum values in arrays with number items (#17759) 2024-02-07 13:47:46 +08:00
condorcorde
5a7f050889 [PowerShell] Support multiple types in Accept header (#17765)
* Update api_client.mustache

Allow Accept header to contain multiple MIME types

* Changes after build

* Update api_client.mustache

Return JSON MIME first on -Multiple -JsonFirst

* updated PetStore files
2024-02-07 12:55:24 +08:00
Tomohiko Ozawa
795f0798ac [Java] Fix default values of array-type parameters in a referenced file (#17779)
* fix invalid default values of parameters with array type in a referenced file

* add test
2024-02-07 12:46:43 +08:00
Charles Treatman
d0ed25a06d [Go] fix unused bytes import for anyOf and oneOf models (#17775)
* add sample spec for oneof and anyof with required properties

* omit bytes import for oneOf and anyOf models

* generate sample client for new spec
2024-02-06 17:05:39 +08:00
William Cheng
963e16a0dd update js samples 2024-02-06 17:00:49 +08:00
Moritz
2f3f684b7f Fix #17767 (#17769)
Co-authored-by: Moritz Hannemann <m.hannemann@fz-juelich.de>
2024-02-06 16:56:28 +08:00
William Cheng
3858599be0 udpate typescript samples 2024-02-06 16:55:37 +08:00
Lucian Buzzo
4ec170236d fix: update dead link to TypeScript docs (#17771)
The previous link no longer worked, so I've updated it to the latest
version of the TypeScript handbook.

Signed-off-by: Lucian Buzzo <lucian.buzzo@gmail.com>
2024-02-06 16:50:01 +08:00
Arthur Mogliev
70addf8fc9 [PHP] update dependencies for php-dt generated code (#17796)
* php-dt update:
- bump minimal required PHP version to 7.4 (8.1 for modern mode)
- bump minimal required DataTransfer version to 0.6
- support for date / date-time string lists and maps
- support for request and response bodies with date / date-time string schema
- minimal file string support

* docs update
2024-02-06 16:48:18 +08:00
William Cheng
5af2c7fbfb [jax-rs][jersey3] Fix missing SecurityRequirement (#17797)
* [jax-rs][jersey3] Add SecurityRequirement

* Update Samples

* update samples

---------

Co-authored-by: nbreuil <88213872+nbreuil@users.noreply.github.com>
2024-02-06 16:47:19 +08:00
Charles Treatman
6e137bb61d Add sample spec to catch external file reference issues in swagger-parser (#17773)
* add a sample that catches swagger-parser issues with external refs

* generate samples for new test spec
2024-02-06 16:22:41 +08:00
Jonathan Klaassen
6bcf8cd332 Fix Python codegen in specific additionalProperties case. (#17659)
* Fix Python codegen is specific additionalProperties case.

* Add generated test files.

* Apply fix to AbstractPythonPydanticV1Codegen.java.
2024-02-05 22:17:14 +08:00
William Cheng
334ddca021 Add Svix as bronze sponsor (#17783)
* add svix as sponsor

* add logo
2024-02-04 22:15:38 +08:00
wouter-rednose
5397f64595 [typescript][axios] Add any to index type when additionalPropertiesIsAnyType is true (#16494) (#17625) 2024-02-02 16:04:42 +01:00
Simon Hanna
eb7d2d9fd2 Fix typescript-nestjs services when using api_key authentication (#17708)
Closes: #17706
2024-02-02 15:32:26 +01:00
Simon Hanna
580da9978a Allow using bearer auth in typescript-nestjs (#17711)
Closes: #10114
2024-02-02 15:23:20 +01:00
Jeffrey Yasskin
8ff230ed06 Accept Promises for the apiKey configuration in the typescript-fetch generator. (#17758) 2024-02-02 15:18:31 +01:00
William Cheng
7c7634dda9 add operation id option (#17750) 2024-02-01 17:21:49 +08:00
Robert Stoll
2129b15c8f fix require var logging, don't matchGenerated if allOf skipped (#17746) 2024-01-31 21:35:43 +08:00
William Cheng
4d3121c32e remove sonar workflow which works with jdk17+ only 2024-01-31 11:46:15 +08:00
William Cheng
c9204c4330 Update model_generic.mustache, tuple notation breaks when there is only one element in the tuple (#17749)
* Update model_generic.mustache, tuple notation breaks when there is only one element in the tuple

In this excerpt of the mustache template, the matching behaviour is bugged when there is only one element in the tuple notation. A single string with the tuple notation, e.g., `("string")`, will result in a string, and when values are compared with the string, it will do a `contains` match instead of an exact match, which is unintended behaviour.

* Update with samples, step 3

* Add test spec and regenerate samples

* Update samples

* Update spec and samples

* update samples

---------

Co-authored-by: Edmund Loo <edmundloo@users.noreply.github.com>
Co-authored-by: Edmund Loo <github.yn0u9@simplelogin.com>
2024-01-31 11:29:15 +08:00
hopi
6ec4ed0b69 scala-sttp: fix for missing EnumNameSerializer for inner enum definitions (#17697) 2024-01-31 11:05:56 +08:00
Sander Hoentjen
7267e809c3 [python-fastapi] Ensure path param is ... instead of None (#17532)
Fixes #16029
Code from https://github.com/OpenAPITools/openapi-generator/issues/16029#issuecomment-1776271921
2024-01-31 11:03:14 +08:00
Charles Treatman
af4800132d revert swagger-parser upgrade (#17657) 2024-01-31 10:46:14 +08:00
Aron
1146575848 corrected handling of "isPrimitiveType" for FormParameters (#17700)
* FormParameters correct handling for "isPrimitiveType"

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

* MultipartApi.cs generated with new mustache

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

* FakeApi.cs generated based on new mustache

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

* FakeApi.cs generated based on new mustache

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

* FakeApi.cs generated based on new mustache

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

* FakeApi.cs generated based on new mustache

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

* FakeApi.cs generated based on new mustache

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

* FakeApi.cs generated based on new mustache

https://github.com/OpenAPITools/openapi-generator/issues/17699
2024-01-31 10:42:15 +08:00
William Cheng
ef59589287 update samples 2024-01-31 10:38:59 +08:00
William Cheng
59f672d9aa Add rule to remove x-internal in openapi normalizer (#17734)
* add rule to remove x-internal in normalizer

* update

* update doc

* better code format

* update samples
2024-01-30 21:11:25 +08:00
William Cheng
301f25a306 fix is null schema check for array of string in 3.1 spec (#17728) 2024-01-30 12:08:45 +08:00
martin-mfg
9afea50cab use map/array model class only if it is generated (#17612)
* fix

* tests

* generate samples

* refactor
2024-01-29 21:35:21 +08:00
Paul Horton
5055ebade9 fix: ensure models that have variables that contain a complexType of time.Time import the time module (#17452)
* fix: handle variables that have items that contain a complexType of `time.Time` properly

Signed-off-by: Paul Horton <phorton@sonatype.com>

* chore: trigger new CI runs

Signed-off-by: Paul Horton <phorton@sonatype.com>

* test: added test change an regenerated samples

Signed-off-by: Paul Horton <phorton@sonatype.com>

* resolved merge issues with upstream main

Signed-off-by: Paul Horton <phorton@sonatype.com>

* regenerated samples

Signed-off-by: Paul Horton <phorton@sonatype.com>

---------

Signed-off-by: Paul Horton <phorton@sonatype.com>
2024-01-28 11:36:05 +08:00
dmbakker
9952776e9c [java] fix Use jackson-jakarta-rs-json-provider when useJakartaEe is true (#17600)
* fix #17590 - use jackson-jakarta-rs-json-provider instead of jackson-jaxrs-json-provider in pom when useJakartaEe is true

* fix #17590 - fix indentation

* fix #17590 - updated samples

* fix #17590 - fixed groupid

---------

Co-authored-by: in376bak <dennis.bakker@duo.nl>
2024-01-28 00:38:18 +08:00
Tobias
8f441689f7 [JavaSpring] Add Javadoc to enum (x-enum-descriptions) (#14123)
refs #1693
2024-01-27 23:49:11 +08:00
Antoine Reilles
17473a035b make sure the imports are present for enum, if using jackson (#15123) 2024-01-27 23:29:18 +08:00
dabdirb
66a6af5ca4 add lombok model support on spring (#17622)
* add lombok model support on spring

* use regex to adapt annotation with parenthesis

* add ut case

* add samples

* add samples

* fix github workflow

* fix github workflow
2024-01-27 10:45:44 +08:00
Jesenko Mehmedbasic
a092bbd83b [BUG] [Java] Remove deprecation and serial warnings in ApiException.java and JSON.java (#17716)
* Add serialVersionUID to Java apiException.mustache templates

* Use 'enable()' and 'disable()' methods to handle object mapper features in JSON.mustache for the "native" Java generator instead of the deprecated 'configure()'

* Update samples
2024-01-27 10:42:27 +08:00
Jesenko Mehmedbasic
0a0428b89c Add JavaDoc to api and apiInterface templates for the JavaJaxRS spec generator (#17705)
* Add javadoc to api and apiInterface templates for JavaJaxRS/spec.

* Updated samples with javadoc change.
2024-01-27 10:40:37 +08:00
roseatromero
d152f4d995 [cpp-ue4] Fix generated code not compiling when using unique array items (#17684)
* Add CollectionToUrlString for TSet

Added a template for converting collection to url string parameters for associative container

* Add generated samples

* Add TSet template

* Fix iterator
2024-01-27 10:32:40 +08:00
dependabot[bot]
aa15ef9ab9 Bump eskatos/gradle-command-action from 2 to 3 (#17719)
Bumps [eskatos/gradle-command-action](https://github.com/eskatos/gradle-command-action) from 2 to 3.
- [Release notes](https://github.com/eskatos/gradle-command-action/releases)
- [Commits](https://github.com/eskatos/gradle-command-action/compare/v2...v3)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-27 10:02:40 +08:00
dependabot[bot]
ad73e115d9 Bump gradle/gradle-build-action from 2 to 3 (#17720)
Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action) from 2 to 3.
- [Release notes](https://github.com/gradle/gradle-build-action/releases)
- [Commits](https://github.com/gradle/gradle-build-action/compare/v2...v3)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-27 10:02:18 +08:00
Laith Hussein
a7439e456e feat(typescript-angular): add support for v17 of angular (#17685)
- Add support for `transferCache` property in request options

Refs: [#17301]

Co-authored-by: Laith Hussein <laith.hussein@beno.com>
2024-01-26 09:21:48 +01:00
William Cheng
96eb4a499a Add SSS Twitter to bronze sponsor (#17698)
* add SSS Twitter to the sponsor

* update url
2024-01-25 00:52:50 +08:00
Tjeerd Verhagen
aaaf1e14c8 Fixes #17645 When interfaceOnly is true, RestApplication will be generated as well (#17646)
This class with the optional OpenAPIDefinition annotations is now generated always.
And no longer only when the interfaceOnly is set to false (default).
2024-01-24 21:37:10 +08:00
Jakub Szulc
45add92710 [RUST][CLIENT] Fix generated type not being converted to string (#17504) 2024-01-24 15:26:45 +08:00
William Cheng
f31164b569 Improvements on scala http4s server generator (#17693)
* improvements on scala https server generator

* trigger dockerfile build
2024-01-24 11:46:50 +08:00
William Cheng
6a8ca1018f fix missing import in ruby faraday test (#17692) 2024-01-24 11:02:53 +08:00
William Cheng
d0187ab359 Add tests for query parameters (array of integer/string) (#17686)
* add tests for query parameters in python client

* update other samples

* update samples
2024-01-24 10:20:18 +08:00
William Cheng
dccb147055 Fix allOf with a single item in inline model resolver (#17683)
* fix inline model resolver for allof with 1 item

* add files

* update sha

* more checks
2024-01-23 23:37:39 +08:00
atl3
4840b366bc Include support to Mojolicious relaxed placeholders (#17633) 2024-01-23 22:44:01 +08:00
William Cheng
90bd1f361b update samples 2024-01-23 16:52:00 +08:00
masudanaokinino
0357a1b1dd fix "parameters_to_url_query" throws an error (#17638) 2024-01-23 16:31:47 +08:00
Matt Pollock
1e17712f25 support binary response for R api client (#17626)
* support binary response for R api

* rework

* autogenerated samples
2024-01-23 16:28:37 +08:00
William Cheng
b2f622cd98 Fix map and free form object detection issue in 3.1 spec (#17624)
* fix map issue in 3.1 spec

* fix, add tests

* update samples

* update

* manully fix spec

* revert

* fix rust model
2024-01-23 12:06:38 +08:00
Yonatan Karp-Rudin
c2ec0bafdf Pass ObjectMapper to JacksonConverterFactory (#17673)
This commit fixes an issue where the object mapper is not passed to the JacksonConverterFactory. The issue causing the serialization to fail when passing to the ApiClient a pre-configured mapper object (e.g. the primary bean of SpringBoot).

With this fix, the bean would be correctly passed to the factory, and the serialization would work "out of the box" for the pre-configured bean.
2024-01-23 01:09:45 +08:00
Neeme Praks
74a3a8870d Fix typo in KotlinClientCodegen.java user-visible error message (#17674) 2024-01-22 23:40:37 +08:00
William Cheng
659e21a4bf Update perl tests (#17670)
* update perl tests

* add more tests
2024-01-22 17:59:49 +08:00
mHejlesen
256b27912b [Bash] Allow non-JSON request body payloads (#17641)
* Added option to mustache template that allows passing of non JSON request bodies

* Used linux terminal to run the generator scripts

---------

Co-authored-by: mHejlesen <mads.hejlesen@secata.com>
2024-01-22 16:41:20 +08:00
William Cheng
e6161cc044 Test perl petstore client in CircleCI (#17669)
* test perl client in circleci

* cpanm install

* install

* add bash

* bin bash

* update

* undo pom.xml change
2024-01-22 14:30:53 +08:00
William Cheng
df0e13f0c6 Remove outdated files in perl petstore cilents (#17668)
* remove outdated files in perl cilents

* update samples
2024-01-22 11:39:01 +08:00
Stefan Koppier
227c8602f7 [kotlin-client][jvm-spring-*] Fix runtime error in endpoints of type Unit (#17664)
* Fixed invalid extraction of response body in kotlin-client jvm-spring-*

* Generated echo-api for kotlin-jvm-spring-3-restclient

* Specific echo-api for Kotlin without allOf/anyOf

* Specific echo-api for Kotlin without allOf/anyOf

* Generated all samples

* Added kotlin-jvm-spring-3-restclient sample to workflow

* Fixed syntax problem
2024-01-22 10:57:40 +08:00
William E Little Jr
189bf7d6c5 feat(perl): Update agent to use version constant (#17665)
close #14297
2024-01-21 00:47:39 +08:00
Tjeerd Verhagen
3dcef8249b Fixes #17642 by adding info contact url to the generated OpenAPIDefinition annotation (#17644) 2024-01-20 22:47:40 +08:00
William Cheng
eb10b410e1 remove isAnyTypeSchema in default codegen (#17663) 2024-01-20 17:07:50 +08:00
William Cheng
e326d6aafc add auto-generated cpanfile in perl client (#17662) 2024-01-20 16:59:39 +08:00
William Cheng
27f766721a support x-internal in models and operations (#17639) 2024-01-20 15:20:25 +08:00
William Cheng
50ae17b197 add any type support in perl client gen (#17654) 2024-01-20 14:27:07 +08:00
William E Little Jr
5b6b082504 [Perl] Update _test.mustache templates to use done_testing (#17649)
* test(perl): Update test plan to use done_testing

close #14921

* fixup! test(perl): Update test plan to use done_testing

results of "./bin/generate-samples.sh ./bin/configs/perl.yaml"

* fixup! test(perl): Update test plan to use done_testing

regenerate samples

---------

Co-authored-by: William E Little Jr <13027375-bmodotdev@users.noreply.gitlab.com>
2024-01-20 14:25:45 +08:00
Vasiliy Ditsyak
3767110b1b [dart-dio] includeIfNull: truefalse bugfix (#17631)
Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-01-20 14:19:21 +08:00
Sindre Møgster Braaten
3756c3b65d Support isResponseOptional in typescript-fetch generator #7720 (#17635) 2024-01-18 08:46:57 +01:00
William Cheng
d810d7c534 R echo client tests (#17629)
* add r echo api client sample

* add r workflow

* fix

* add env

* set r version

* install curl

* install dep

* fix

* comment out installation
2024-01-18 09:05:35 +08:00
dependabot[bot]
eab34c9b3f Bump actions/cache from 3 to 4 (#17636)
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-18 08:59:37 +08:00
Linh Tran Tuan
7e8b521069 [Rust] [Axum] Fix clippy warning (#17637) 2024-01-18 08:58:59 +08:00
Sindre Møgster Braaten
a730fe5048 Added missing copied properties from CodegenOperation in TypeScriptFetchClientCodegen and ErlangClientCodegen to resolve issue #15457 (#17627) 2024-01-17 23:34:15 +08:00
Rugal Bernstein
287e8fc69c Able to generate within parameter #17158 (#17623) 2024-01-16 21:48:46 +08:00
Chao Yang Wu
26ab9e7741 fix(typescript-axios): fix syntax error if a queryparameter called index exists (#17550) 2024-01-16 10:59:03 +01:00
Alexis Couvreur
092463a513 feat: add java-wiremock generator (#17614)
* feat: add `java-wiremock` generator

* remove text block usage for samples

this will allow more version of jav to be compatible with this

* fix extra parenthesis

* Add java-wiremock workflow
2024-01-16 11:40:13 +08:00
Robert Schweizer
a0418c2855 [python][client] Clean up samples and CI (#17509)
* chore: Remove leftover Github action file

This was probably added by mistake. A similar file is active in
.github/workflows/samples-python-pydantic-v1-petstore.yaml.

* chore: Remove leftover VERSION from old python-experimental sample

* ci: Stop running Python integration tests in Circle CI

These Python clients are all tested with Github Actions already, which
is faster, more cleanly separated and only runs on modifications.

I'm not cleaning up the pydantic-v1 client, I expect it to be removed soon anyway.

* chore: Remove true from sample folder name

python-disallowAdditionalPropertiesIfNotPresent-true
-> python-disallowAdditionalPropertiesIfNotPresent
2024-01-16 10:34:04 +08:00
Dennis Ameling
13edc5d494 kotlin-server: Add support for Javalin (#17596)
* kotlin-server: Add support for Javalin

* kotlin-server: Add Javalin generated sample code

* Add output from build scripts

* Address MR feedback

* Update CI to include new Javalin sample
2024-01-15 20:22:20 +08:00
William Cheng
36e4e4f316 add Carksberg Group to the user list (#17615) 2024-01-15 15:40:41 +08:00
Gonzalo Gomez
af71460c86 [Go-Server] Use ParseQuery For Parsing Query Parameters (#17585)
* Uses ParseQuery to check for malform paramater value pairs.
Runs ./mvnw clean package, ./bin/generate-samples.sh ./bin/configs/*.yaml, and ./bin/utils/export_docs_generators.sh.

* Adds missing import

* Only import url if hasQueryParams.

* Adds helper function to wrap url.ParseQuery.

* Fixes function return signature
2024-01-15 13:43:04 +08:00
William Cheng
6518932ccf add tests for oneOf object (go) 2024-01-15 12:06:56 +08:00
Ash Berlin-Taylor
90a7354c42 Fix Go generation of type: object inside anyOf (#17339)
Without this the generated code contains `{}` in the field name which is invalid.
2024-01-15 11:57:54 +08:00
William Cheng
33faa2960c update python flask samples 2024-01-15 09:18:32 +08:00
Matthias Tafelmeier
9391354b85 bug fix: breaking dependency of flask server gen (#17611)
Because the requirements file does not limit connexion version to below
3.0, with release of connexion 3.0 the openapi server startup sequence
runs into a module not found issue.

This contraint is preventing that.
2024-01-15 09:10:07 +08:00
William Cheng
64c763b87a [OAS 3.1] Fix null type check in normalizer (#17609)
* fix null type check in normalizer

* add back ref check

* add files
2024-01-14 00:49:35 +08:00
martin-mfg
51dbd32622 remove jersey1 templates (#17607) 2024-01-13 20:37:13 +08:00
Huan-Cheng Chang
8e9a17fe02 [Python] Handle nullable dictionary values (#17605)
* fix nullable elements in maps

* update examples

* exclude values typed as Any
2024-01-13 18:45:22 +08:00
Roi Shacham
406bc28a3d Fix parameters_to_url_query doesn't properly convert lists to string (#17592)
* fix parameters_to_url_query to properly handle lists

* fix query parameters bug in sample clients

* add tests for url query list value

* build project

* tests fix

* Revert "build project"

This reverts commit a486a6de75.
2024-01-13 11:36:01 +08:00
Alexis Couvreur
b01b182af6 fix: DefaultCodegen now generates an exemple for each status codes (#17603)
The DefaultCodegen now iterates through all api operations.

This allows to access different examples based on the response per status code and content type.
2024-01-13 11:33:36 +08:00
Huan-Cheng Chang
968c6dc418 [Python] Handle nullable list items (#17594)
* fix nullable elements

* update type info in docs

* update examples
2024-01-13 11:29:22 +08:00
William Cheng
c6efe8810d better npe handling when processing openapi 3.1 spec 2024-01-13 11:21:08 +08:00
William Cheng
75ef9e0b02 update java samples 2024-01-12 12:51:33 +08:00
Breus Blaauwendraad
e384201416 [JAVA] - fix BUG 14233 code gen support multiple accept headers, fallback is json/application (#15245) 2024-01-12 12:39:11 +08:00
William Cheng
62459f4a9a add copyright note to rust axum server codegen (#17598) 2024-01-12 10:37:43 +08:00
Linh Tran Tuan
6429711a58 [Rust] [Axum] Format ops-v3 sample (#17599) 2024-01-12 10:37:14 +08:00
William Cheng
987a52cf0f move rust axum configs to bin/configs/manual 2024-01-12 10:28:07 +08:00
Sergey Vladimirov
69e72203ae Fix flattenPath() in InlineModelResolver: use List instead of Map (#17579)
* Fix flattenPath() in InlineModelResolver: use List instead of Map

Fix for https://github.com/OpenAPITools/openapi-generator/issues/17578

* Update InlineModelResolver.java
2024-01-11 18:37:16 +08:00
Marc Weiß
76560e34c9 replace deprecated ISO8601Utils with StdDateFormat (#17052) 2024-01-11 18:24:52 +08:00
Linh Tran Tuan
be19c35c45 [Rust] [Axum] Deduplicate code from rust-axum generator (#17588)
* [Rust] [Axum] Deduplicate code from rust-axum generator

* Fix build
2024-01-11 16:48:28 +08:00
Jorge Rodríguez Martín
61c40474af [BUG][java][resttemplate] Fix NPE when query param with value null is exploded (#17568)
* Fix NPE when query param with value null is exploded

* Polish

* Add test

* Update tests

* Add integration test
2024-01-10 23:39:41 +08:00
Stefan Koppier
d0e533d573 [kotlin-client][jvm-spring-*] Fixed URL encoding (#17493)
* [kotlin-client][jvm-spring-*] do URL encoding via the UrlBuilder instead of manual replacement

* [kotlin-client][jvm-spring-*] Fixed imports

* ensure up-to-date

* Fixed syntax problem

* Removed unnecessary toString()
2024-01-10 15:24:29 +08:00
wrj97
cfe7dcc0cf feat: using Qt with 3rd Party Signals and Slots (#17067)
Replace signals,slots and emit with Q_SIGNALS,Q_SLOTS and Q_EMIT

Because these names will be used by a 3rd party library
2024-01-10 13:55:31 +08:00
Matthias Gabriel
e3c0a3e8b0 [BUG][Kotlin] Add default values to optional parameters for jvm-spring-webclient and jvm-spring-restclient (#17393)
* Add default values to optional parameters for jvm-spring-webclient

* Update samples

* Add default values to optional parameters for jvm-spring-restclient
2024-01-10 13:39:54 +08:00
William Cheng
9b7528d8c8 update samples, docs 2024-01-10 11:50:48 +08:00
mikkka
455add6d80 Implement scala http4s server generator (#17430)
* Implement scala http4s server generator

* Fix types and auth

* Add proper handling of various responses

* Fix configs

* Drop null values in json encoder

* Add sample files

---------

Co-authored-by: m.tkachev <m.tkachev@tinkoff.ru>
2024-01-10 11:40:31 +08:00
Anakael
11caad92df [CSharp] feat!: add useDateOnly flag (#17471)
* feat: DateOnly for client

* fix: generated doc for csharp

* doc: fix generators README for csharp

* add DateOnly option for aspnet

* refactor: update csharp docs

* refactor: fix typo

* finish

* finish

* finish

* regenerate

* rebuild and regenerate

* fix build error

* finish

* revert path

* regenerate

* remove exceed samples

* regenerate

* add DateOnly to nullable

* remove obsolete file from list

* update test files list

* remove obsolete sample build

* revert manual tests

* revert samples to master and regenerate

* remove new samples

* remove eol

* remove eol

* add new specs

* try fix test

* update tests

* update files

* remove eol

* revert

* remove eol

* regenerate

* add net6+ support to aspnetcore

* add jobs
2024-01-10 11:34:14 +08:00
Alexis Couvreur
9b62b9bb05 fix: ExampleGenerator correctly produces YYYY-MM-dd format for date with examples (#17495)
When an example was specified for a property with the `date` format, it's example would be generated to something like `2024-01-01T00:00:00.000+00:00` or `Sat Jan 30 01:00:00 CET 2021`.

It's because the resolved type for a Date example is a DateSchema, and a DateSchema uses `java.util.Date` to represents the Date. Which gets printed using .toString() not in the YYYY-MM-dd format.

Fixes #17494 #15342
2024-01-10 11:27:10 +08:00
Kernevez
e69c5269d5 Add tags on operation for template kotlin-spring (#17410)
* Add tags on kotlin-spring

* Fix review
2024-01-10 11:20:14 +08:00
William Cheng
7ddcb9a8cb update samples 2024-01-10 11:19:38 +08:00
Rugal Bernstein
1e0e8fe0eb Add ability to append ServerHttpRequest for kotlin-spring generator (#17158)
* Add ability to append ServerHttpRequest for kotlin-spring generator

* Add generated doc & sample
2024-01-10 11:11:23 +08:00
Alexis Couvreur
dd5c7e3b9a fix: ExampleGenerator correctly generates allOf composed schemas (#17499)
* fix: ExampleGenerator correctly generates allOf composed schemas

Changes the previous behavior of generating `null` examples for allOf composed schemas.

Fixes #17497

* fix: ExampleGenerator correctly generates anyOf and oneOf composed schemas

Changes the previous behavior of generating `null` examples for anyOf and oneOf composed schemas.

To generate a oneOf/anyOf example, we generate the example using the first valid schema available. In case of a $ref, we use the first valid reference.

Fixes #17497
2024-01-10 11:04:11 +08:00
Hansjörg Oppermann
8bab0ceb53 Generated methode ApiClient.parameterToPairs failed to handle empty collections #17460 (#17463)
* #17460 add missing empty collection check

* generate samples
2024-01-10 02:29:10 +08:00
Erik Booij
90f3b24edc fix(go-server): ensure original filename can be deduced from tmp file (#17416) 2024-01-10 02:00:44 +08:00
Linh Tran Tuan
425011a50c [Rust] [Axum] Remove redundant code in rust-axum generator (#17570) 2024-01-10 01:41:14 +08:00
Thomas Kläger
69a4a65bc7 fix spring generator dto annotations (#17054) 2024-01-09 16:47:10 +08:00
Jonathan Ballet
df7976c1a3 python: enable more mypy checks 1/n (#17556)
* python: more mypy checks

* mypy: check_untyped_defs

* mypy: disallow_subclassing_any

* mypy: disallow_untyped_decorators

* mypy: disallow_any_generics
2024-01-09 16:45:05 +08:00
dependabot[bot]
c041d7e12f Bump follow-redirects from 1.15.2 to 1.15.4 in /website (#17562)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.4)

---
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>
2024-01-09 16:40:37 +08:00
Steven Sheehy
209344ba40 [java][native] Fix ObjectMapper deprecation warnings (#17558)
* Fix ObjectMapper deprecation warnings

Signed-off-by: Steven Sheehy <steven.sheehy@swirldslabs.com>

* Fix missing JsonMapper import

Signed-off-by: Steven Sheehy <steven.sheehy@swirldslabs.com>

---------

Signed-off-by: Steven Sheehy <steven.sheehy@swirldslabs.com>
2024-01-09 16:37:59 +08:00
Linh Tran Tuan
9827098057 [Rust] [Server] New generator bases on Axum (#17549)
* Rust Server - Axum based (#5)

* Fix typo

* Address comment

* Address comment
2024-01-09 11:38:54 +08:00
William Cheng
210044eb8a fix description in allOf with single item (#17560) 2024-01-09 11:37:50 +08:00
William Cheng
f36659114b update runalloy logo and links (#17559) 2024-01-09 10:44:11 +08:00
Hui Yu
742c2c48e7 [C][Client] Update the API doc after some data types of parameters are changed from "int" to "int *" (#17540) 2024-01-06 19:04:36 +08:00
William Cheng
0d4c9fb2c3 update alloy automation logo 2024-01-06 15:43:42 +08:00
Jonathan Ballet
22a0fc1727 python: adjust basic typing information (#17511)
* python: adjust basic typing information

This is an initial pass to fix and adjust the typing information for the
generated client. This is enough to have mypy runnning without complains
on all the (modern) generated clients (Pydantic v1 code is not checked
for instance)

mypy is also now run directly in the CI, so further changes will also be
checked and thus, will need to be compliant with good typing
information.

Note that this doesn't *fully* type all the code: mypy is not run in
"strict" mode and there are still many functions/methods/attributes
which are still not fully typed, but it's a first good step in that
direction.

* ApiResponse's raw_data can't be None

* Fix indentation

* Revert test changes

* run mypy on tests/ directory

* don't forcefully convert the client response headers to dict

* override petstore ApiResponse model

* adjust type of 'any/one_of_schemas' fields
2024-01-06 15:40:42 +08:00
William Cheng
4acbd69c3d update samples 2024-01-06 15:29:09 +08:00
Sebastian Toepfer
cc946e3f61 fix typo in javadoc in RestTemplate/ApiClient (#17541) 2024-01-06 15:21:18 +08:00
William Cheng
ca260b2230 update ruby samples 2024-01-05 15:05:30 +08:00
Armand Mégrot
07a9257ee9 [Ruby][client] Handle enums (and other scalars) in oneOf and anyOf schemas (#17515)
* Handle enums in oneOf and anyOf schemas

* Update specs
2024-01-05 15:01:08 +08:00
William Cheng
5c571b0e1f add enum name mapping support to ruby generators (#17537) 2024-01-05 15:00:52 +08:00
William Cheng
c782526556 update samples 2024-01-05 14:28:13 +08:00
William Cheng
a0c2517e79 Add a link to new youtube tutorial (#17536)
* fix typo

* add link to youtube tutorial

* update julia doc
2024-01-05 12:02:36 +08:00
William Cheng
22d228b075 Add Alloy Automation as bronze sponsor (#17535)
* add Alloy Automation as bronze sponsor

* fix url
2024-01-05 11:53:20 +08:00
martin-mfg
64f2cad9e8 fix #17258 - use model class only if it is generated (#17490)
* fix  #16797 and #15796 spring child constructor missing parent params

* root cause and update the DefaultCodegen.java to add missing property when with multi inheritance

* rollback SpringCodegen.java

* update samples

* rollback with master cause #16992 fixed this issue too

* still using orignal design

* catchup master

* catchup master

* catchup master

* fix

* add tests

---------

Co-authored-by: dabdirb <dabdirb@gmail.com>
2024-01-05 10:30:28 +08:00
William Cheng
6317796cba Remove optional path parameter in C# generichost template (#17525)
* remove optional path parameter in C# generichost template

* update
2024-01-05 09:58:28 +08:00
Ilamparithi Natarajan
ddc7d4b1b5 [java][resttemplate] rethrow original exception when retry limits exceeded (#17488)
in rest template, when the retry limits exceeded
rethrow the original exception

also add 429 (Too many requests) status code to the
retry logic

fix #17478
2024-01-05 09:57:24 +08:00
William Cheng
23bd5d413c Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2024-01-05 09:56:51 +08:00
William Cheng
1b72140b46 update samples 2024-01-05 09:56:40 +08:00
Dan Booker
34c3f8c7aa [C][Client] Fix enum function names not matching headers in the model template (#17512)
- fixes #17510

Co-authored-by: Dan Booker <dan.booker@ncipher.com>
2024-01-05 09:49:04 +08:00
Antoine MARQUES
3d91fa8bd7 Update Configuration.mustache (#17529)
BUG: in getHostString : typo in variable usage : $hostsSettings instead of $hostSettings
2024-01-05 09:48:14 +08:00
Jonathan Ballet
063865973d python: simplify module imports (#17507)
In #16624, I introduced a new mechanism to record imports to other
modules, instead of having specialized datetime/typing/pydantic objects
to manage imports for these modules.

This change reuses the mechanism from #16624 and replace the specialized
import managers by the generic one. Unused imports from various
.mustache templates are also cleaned up.
2024-01-03 21:22:53 +08:00
cureaid
dffb5c121f Also escape '$' and '\' in normal Kotlin strings, … (#17434)
* also escape '$' and '\' in normal Kotlin strings, …

* rename `lambdaEscapeDoubleQuote` to `lambdaEscapeInNormalString`

* escape `$` and `\` in `@RequestMapping` annotation `value` property
2024-01-03 10:46:03 +08:00
Martin Delille
c56fc21517 [cpp-qt-client] Update minimum cmake version to 3.5 (#17480) 2024-01-03 10:22:46 +08:00
Martin Delille
cb84dffb2a [cpp-qt-client] Add cpp-qt-client technical committee to CODEOWNERS (#17481) 2024-01-03 10:22:09 +08:00
Aliaksei
48e9b9f408 [bugfix][jaxrs]: fix compile error for jaxrs samples (#17479) 2024-01-03 09:59:17 +08:00
William Cheng
218dccdb8b not throwing ex when ignore file exists (#17501) 2024-01-03 09:56:13 +08:00
Christopher Queen
8b5b5a74c3 Update README.md (#17483)
Added Christopher Queen Consulting to list of companies using the generator
2023-12-30 11:27:10 +08:00
Artur Neumann
a5d3fb4f60 fix rendering of stars in README (#17477) 2023-12-27 15:11:16 +08:00
Mobile Team @ AOK Systems
6eeecc1d18 Fix decoding OpenAPIDateWithoutTime (#17146)
* Fix decoding OpenAPIDateWithoutTime which in previous implementation only worked when used with CodableHelper, because it encoded to String, but tried to decode from Date afterwards

* update samples

* Update OpenAPIDateWithoutTime.mustache

* Update sample projects

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: Bruno Coelho <4brunu@users.noreply.github.com>
Co-authored-by: Bruno Coelho <4brunu@gmail.com>
2023-12-26 17:56:39 +00:00
ken_tunc
1105759a6f [kotlin-client][jackson] Add support for unknown default enum value (#17404)
* [kotlin-client][jackson] Enable @JsonEnumDefaultValue

* Update samples
2023-12-26 16:36:44 +00:00
William Cheng
e20466bffe update readme to reference 7.2.0 2023-12-27 00:35:41 +08:00
Ghufran Zahidi
35b47e6382 Fixed the HttpSigning issue for ECDSA key supplied as string. (#17459)
Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
Co-authored-by: Vikrant Balyan (vvb) <vvb@cisco.com>
Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
2023-12-26 17:50:14 +08:00
Ghufran Zahidi
c252216700 [go]: Accept APIKey as string, byte array or stream using io.Reader interface (#17432)
* Added support for APIKey as string or bytes stream for golang sdk.

* updated the sample code

* Update modules/openapi-generator/src/main/resources/go/signing.mustache

Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>

* updated the sample code

---------

Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
Co-authored-by: Vikrant Balyan (vvb) <vvb@cisco.com>
Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
2023-12-26 17:39:53 +08:00
William Cheng
c215bc681d better java resteasy echo api client tests (#17473) 2023-12-26 10:25:55 +08:00
fizzet
2d50655d8c [JaxRS] fix pojo equals (#17431)
* [JaxRS] fix Pojo equals

Fix equals for pojos that have the same name as one of their properties

* regen samples
2023-12-26 10:13:36 +08:00
Raphaël Ouazana
d0f659ec4d [#17465] Fix Kotlin templates to be compatible with Kotlin K2 compiler (#17466) 2023-12-26 10:09:28 +08:00
Alex Shani
a4f1a17502 Update README.md (#17468)
hideGenerationTimestamp flag should be =true instead of :true
2023-12-26 09:50:17 +08:00
Milad
8c014372aa [Java RESTEasy client] updating test to use the Java RESTEasy echo api client (#17367) (#17470)
* updating test to use the Java RESTEasy echo api client (#17367)

* regenerated samples

* set source and target to 1.8 to fix workflow failure, adapted parser
2023-12-26 09:32:51 +08:00
Noor Dawod
a67e07e132 Stop using internal variable from okhttp3 (#17458) 2023-12-22 11:07:08 +00:00
William Cheng
5eab3cef19 Prepare 7.3.0-SNAPSHOT (#17456)
* Revert "v7.2.0 release (#17455)"

This reverts commit fe638d0093.

* set version to 7.3.0-SNAPSHOT

* update doc
2023-12-22 16:55:58 +08:00
William Cheng
fe638d0093 v7.2.0 release (#17455) 2023-12-22 14:52:51 +08:00
Charles Treatman
da13013a27 [Go] fix validation of property names when a model has required fields and doesn't allow additional properties (#17267)
* update template for required field validation when additional properties are not allowed

* regenerate samples

* move bytes import from template to GoClientCodegen

* regenerate samples

* add test for model with required fields and additionalProperties: false
2023-12-22 12:35:52 +08:00
Gašper Kojek
63f09ee846 Update gradle enterprise setup (#17399)
* Set remote build cache to push only if authenticated

* Bumped Gradle enterprise extension to 1.20 and CCUD extension to 1.12.5

* Removed duplicated <storeEnabled> line from gradle-enterprise.xml

* Removed addressed comment
2023-12-22 11:07:43 +08:00
William Cheng
e127ba3d0c update readme 2023-12-22 11:06:09 +08:00
Mickael Magniez
38c33b92fe Add scala-pekko client generator (#17417)
* feat: add scala-pekko client generator

* feat: add scala-pekko client to CI
2023-12-22 10:58:27 +08:00
Beppe Catanese
986a9146d7 Remove tests replaces with Python sample testing (#17453) 2023-12-22 10:57:25 +08:00
Stormshield-robinc
0a7140224c Fix swift5 binary upload (#17422) 2023-12-21 22:27:47 +00:00
Nikita Shmakov
3099a2fcd3 webclient explode query parameters support (#17441) 2023-12-21 19:35:07 +08:00
Milad
106047980b [Java RESTEasy client] added filename directive for Java RESTEasy file uploads (#17367) (#17435)
* added filename directive for Java RESTEasy file uploads (#17367)

* regenerated samples
2023-12-21 19:34:30 +08:00
Ween Jiann
bf4c98a82a [go-server] Add ability to handle nullable query param (#17321)
* Update

* Regen
2023-12-21 19:13:05 +08:00
mya0
864c0db5e9 [typescript-axios] Fix Missing AxiosRequestConfig (#17450) 2023-12-21 10:58:05 +01:00
Beppe Catanese
a34eeaed77 [GO Gin Server] Webhooks support: add missing webhook handlers (#17411)
* Implement postProcessWebhooksWithModels

* Implement postProcessWebhooksWithModels

* Add missing webhook handlers

* Test webhook handler

* Generate samples
2023-12-21 16:10:09 +08:00
Emanuele Saccomandi
b20c8db281 [Zapier] Updated some dependencies (#17420)
* updated zapier dependencies

* updated zapier platform core to last version
2023-12-21 16:09:44 +08:00
William Cheng
6d9211a131 Update dependencies to newer versions (#17449)
* update dependencies to newer versions

* remove test
2023-12-21 16:09:18 +08:00
William Cheng
a62132ecd9 fix exception in request body with enum ref (#17438) 2023-12-21 15:22:28 +08:00
Beppe Catanese
b5cd4e9316 Add tests to verify generated Postman samples (#17444) 2023-12-21 15:22:03 +08:00
Drew Kimberly
457622c456 fix(typescript-*): nullable additionalProperty values (#17379)
* fix(typescript-*): nullable additionalProperty values

* chore(samples): update samples
2023-12-20 14:14:25 +01:00
William Cheng
aeb6fcbb8c update wording in exception message (python abstract) (#17437) 2023-12-20 16:45:54 +08:00
Benedikt Waldvogel
1ccabeec64 Add "cronn GmbH" to the list of companies using the openapi-generator (#17436) 2023-12-20 14:29:48 +08:00
Anton Ignatov
aacea3477f Generalized mime type support (#17285)
* implemented generalized content-type handling

* regenerated samples

* addressed implementation review feedback

* added tests for proposed improvements
2023-12-19 13:23:36 +01:00
William Cheng
dc047b4e91 fix missing array description in 3.1 spec (#17427) 2023-12-19 11:35:46 +08:00
William Cheng
473c3508ff to fix loop for allof with single element in normalizer (#17426) 2023-12-19 11:31:25 +08:00
Yonatan Karp-Rudin
5435b44e40 Fix missing convertor for jackson in retrofit (#17418)
* Add missing Jackson converter for Retrofit

This commit adds the missing configuration for a ApiClient so all Jackson serializations will start to work correctly.

* Add sample project code for Retrofit Jackson
2023-12-19 10:29:50 +08:00
Jan Sandberg
efe2f8703d Use modelNameMappings in ruby client (#17408)
The modelNameMappings were introduced with PRs #16209, #16234 and are
now also used in the ruby client generator.
2023-12-18 10:59:39 +08:00
Beppe Catanese
58345a9a80 [POSTMAN] Add Samples GitHub workflow (#17412)
* Add Python tests

* Add workflow to verify Postman samples

* Correct path
2023-12-18 10:52:59 +08:00
William Cheng
809d7151c6 remove auto-generated ruby tests (#17402) 2023-12-15 14:47:15 +08:00
dabdirb
e63563a8fc fix #16889 replace deprecated response code function (#17405) 2023-12-15 13:41:14 +08:00
William Cheng
367301de22 deref parameter in normalizer for 3.1 spec (#17406) 2023-12-15 12:18:07 +08:00
renaud-twd
a9179e95dd fix: java apache httpclient should support UTF-8 by default (#17395)
* fix(java): apache-httpclient serialization error

fixes following related issue:
https://github.com/OpenAPITools/openapi-generator/issues/12797

* docs(java): update samples and docs
2023-12-15 09:01:10 +08:00
Beppe Catanese
0062d1c8da Do not escape request name (#17394) 2023-12-15 09:00:32 +08:00
dependabot[bot]
bc2443ecb0 Bump actions/download-artifact from 3 to 4 (#17400)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v3...v4)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-15 08:59:24 +08:00
dependabot[bot]
c49701b804 Bump actions/upload-artifact from 3 to 4 (#17401)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-15 08:59:09 +08:00
Ween Jiann
b7f31ddda4 Regenerate (#17389) 2023-12-13 22:17:15 +08:00
William Cheng
56e2c49e07 update doc 2023-12-13 16:13:31 +08:00
William Cheng
734b922381 [scala-akka-client] Scala Akka client does not support arbitrary query string parameters (#17386)
* Add check for input if is Map type

* Update Pet samples

* Add PetApi support for filter by Pet property

* Clean up

* update samples

* remove manual test

---------

Co-authored-by: ameenhaq <ameenhaq79@gmail.com>
2023-12-13 16:03:48 +08:00
Tiffany Marrel
42f72192ca add security feature AWSV4Signature to documentation (#15603) 2023-12-13 15:07:18 +08:00
hhomar
28b2c75ac8 Fix issue with URI type in the enum (#17126)
* fix(java): fix URI inner enum for gson

* fix(java): fix URI enum for gson

* fix(java): fix URI enum for microprofile

* fix(java): fix URI import for native enum

* fix(java): add tests for URI enum
2023-12-13 14:19:51 +08:00
rubiniselvaraj
4c4388e3c8 Fix for handling error in resttemplate (#17381)
* Fix with handling error

* Fix with handling error
2023-12-13 12:56:02 +08:00
William Cheng
64c85a8fee Fix NPE in codegen security (#17378)
* fix npe in codegen security

* add new test file
2023-12-12 22:33:20 +08:00
Hui Yu
2a27fd51a7 [C][Client] Use int* as int or bool type function parameter (#17179) 2023-12-12 22:11:13 +08:00
rubiniselvaraj
a792a79059 Implementing retry logic to restTemplate (#17375)
* Implementing retry logic to restTemplate

* Fixing the issue

* Adding import

* Fix

* Fix

* minor update, add tests

* fix

* Adding the maxRetryAttempt, threadWaitTime as additionalProperty

* Updating the apiClient

* Removing reduntant variable

* Generating samples

* Fixing format

---------

Co-authored-by: Rubini <rubini@Rubinis-MacBook-Air.local>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-12 22:01:36 +08:00
Aliaksei
809b3331a9 [4947][java]: adds support for validation of primitives in arrays (#17165)
* [4947][java]: adds support for validation of primitives in arrays

* [4947][java]: prevents generation '@Valid' for Object

* [4947][java]: test against different codegens and stick to primitive

* [4947][java]: code review

* [4947][java]: enhance getBeanValidation

* [4947][java]: adds email

* [4947][java]: removes unnecessary override

* [4947][java]: adds postProcessResponseWithProperty

* [4947][java]: adds missing import {{javaxPackage}}.validation.Valid

* [4947][java]: adds missing useBeanValidation

* [4947][java]: fix use rootJavaEEPackage for helidon
2023-12-11 20:55:38 +08:00
William Cheng
d4d5196907 Better handling of any type in v3.1 spec (#17370)
* fix NPE in the example generator

* fix any type in 3.1 spec

* use log error instead
2023-12-11 17:13:55 +08:00
William Cheng
62399b1897 add a test for SecretStr in the python client (#17364) 2023-12-11 13:18:36 +08:00
Maciej Lewiński
51c8be3f8c [csharp][generichost] Handle obsolete params and methods (#17344)
* [csharp][generichost] Handle obsolete params and methods

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-11 13:17:26 +08:00
Stefan Koppier
7f05c1f41d [kotlin-client] New generator: kotlin-jvm-spring-restclient (#17366)
* Created kotlin jvm spring restclient

* Fixed kotlin jvm-spring-restclient

* Fixed earlier problems

* Fixed earlier problems

* Updated kotlin.md
2023-12-11 12:49:36 +08:00
Beppe Catanese
9eb5882f94 OpenAPI 3.1.0 Add webhooks support (#17174)
* Add support for webhooks

* Test webhook generation with Go Gin server

* Generate samples

* Removing \t

* Remove tabs
2023-12-11 11:21:23 +08:00
Csaba Kozák
8bb9a10b9f [kotlin-client][multiplatform] use shortcut to access jsMain as well (#17358) 2023-12-10 15:15:40 +08:00
TAKAHiRO TOMiNAGA
004c7e8c8d [Style][Go] standardize the format of mustache (tiny change) (#17363)
* fix: change indent style to tab in the mustache to generate Go code

* docs: standardize the language names for code blocks

* docs: change indent style to tab in the code blocks

* update: regenerate samples

* `./bin/generate-samples.sh ./bin/configs/*.yaml`
2023-12-10 10:13:49 +08:00
William Cheng
10da7a3c5a [Ruby] add file download tests (#17362)
* add new ruby echo api clients

* add tests for ruby faraday file download

* add file download test to ruby Typhoeus

* add ruby workflow, add tests for ruby httpx

* update

* fix
2023-12-09 22:05:27 +08:00
William Cheng
dd36fa09f8 update logbak core to newer version (#17360) 2023-12-09 21:59:50 +08:00
William Cheng
5daa145d25 check boolean value returned by createFile (#17359) 2023-12-09 21:58:53 +08:00
Tomohiko Ozawa
a21e68182a enable scopes for all security scheme types (#17083) 2023-12-09 21:58:01 +08:00
Daniel
583184888f Ruby Client for Faraday: fix file downloading (#17333)
* Ruby Client for Faraday: fix file downloading

In MR #16876, a bug was introduced that causes file downloading to fail
for the Faraday adapter.

This commit fixes the obvious missing parameter for the method
call to download_file() and the missing variable `request` for saving the
response value of the call to build_request().

Signed-off-by: Daniel Schnell <dschnell@grammatek.com>

* Add automatically generated changes.

---------

Signed-off-by: Daniel Schnell <dschnell@grammatek.com>
2023-12-09 10:49:00 +08:00
Omar Osman
351f764746 Fix broken link to csharp-netcore generator (#17322)
* Fix broken link to csharp-netcore generator

The example source URL of the csharp-netcore generator pointed to the master version of the repo, but the generator has been renamed or removed and the URL is broken. I updated the link to the latest pre 5.0.0 version, since the text talks about pre 5.0.0 version of the openapi generator.

* Update link to point to csharp generator
2023-12-08 22:16:44 +08:00
Erik Booij
95af601586 fix: go-server unresolved function NewstringFromValue for enums (#17316)
* fix: go-server unresolved function NewstringFromValue for enums

* fix: go-server change isRef to isEnumRef in controller-api template
2023-12-08 22:07:59 +08:00
Dennis Melzer
e37decff7b Add Java Optional for POJOs in JavaSpring templates (#17202)
* Add optional parameter for request body

* Adapt Test

* Add test

* Format code

* Remove extra method

* Add optional for pojos

* Add optional for pojos

* Add bean validation for Optional

* Add default values + test

* Rename test
2023-12-08 21:46:13 +08:00
Vladislav Bauer
62462354ca [csharp] Support 420 HTTP code (#17207)
* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code

* [csharp] Support 420 HTTP code
2023-12-08 21:35:03 +08:00
Gintautas Miselis
c159abfdad [typescript-axios] Allow enum attribute to be nullable (#17265)
Fixes #17264
2023-12-08 13:27:33 +01:00
mymx2
e37cf901a8 fix(typescript-axios): use baseURL of (custom) axios instance (#17296)
Co-authored-by: ddd <ddd>
2023-12-08 13:27:08 +01:00
Leonid Olevskii
3762277206 Use .Content of for accessing response body in powershell (#17342) 2023-12-07 22:50:33 +08:00
dependabot[bot]
1b2917d69f Bump actions/setup-python from 4 to 5 (#17338)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-07 11:28:14 +08:00
dependabot[bot]
f593adff18 Bump actions/setup-go from 4 to 5 (#17337)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 4 to 5.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-07 11:28:01 +08:00
William Cheng
2c9fbf81a7 add enum name mapping to ada codegen (#17299) 2023-12-06 17:50:03 +08:00
Robert Schweizer
6a43a371f1 fix: Configure python urllib3 connection pool size (#17323)
This was removed in #16802, but using a higher value than 1,
or at least making this configurable makes complete sense.

Without this, we get a lot of these log messages:

[ WARNING] Connection pool is full, discarding connection:
2023-12-06 15:49:10 +08:00
William Cheng
6230248716 update php samples 2023-12-06 14:56:53 +08:00
Viktor Szépe
33149569a3 Fix PHP constructor docblock (#17324) 2023-12-06 14:51:52 +08:00
devhl-labs
0ab9f74cfb use keyParamName (#17328) 2023-12-06 14:49:55 +08:00
Viktor Szépe
39d5b4ebf9 Replace stray TAB characters with spaces (#17311)
* Replace stray TAB characters with spaces

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-05 18:01:25 +08:00
William Cheng
391df3b81c update samples 2023-12-05 15:36:33 +08:00
Viktor Szépe
889c6fe7a1 Fix non-four indents in PHP templates (#17309) 2023-12-05 15:27:43 +08:00
Viktor Szépe
0ee662b515 Fix parameter names in Configuration (#17305) 2023-12-05 15:26:52 +08:00
dependabot[bot]
d9b795171a Bump actions/setup-dotnet from 3.2.0 to 4.0.0 (#17312)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 3.2.0 to 4.0.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v3.2.0...v4.0.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-05 15:25:54 +08:00
Beppe Catanese
e8e7a210c3 Skip escaping path parameter description (#17304) 2023-12-05 15:21:18 +08:00
William Cheng
cdb020d044 add enum name mapping option to swift generators (#17297) 2023-12-05 15:06:31 +08:00
William Cheng
bbd0ce38be add enum mapping option to dart generators (#17298) 2023-12-04 12:32:36 +08:00
William Cheng
ac45e3ddab add enum name mapping feature to the rust generators (#17290) 2023-12-04 10:53:11 +08:00
William Cheng
b19bc59c6a add enum name mapping feature to go generators (#17289) 2023-12-04 10:52:58 +08:00
devhl-labs
2967b33ab6 [csharp][generichost] Added enum for api key names (#17295)
* added enum

* added enum
2023-12-04 10:44:12 +08:00
Martin Delille
95340d5264 [cpp-qt-client] pass QString by const reference instead of by value (#16793)
* [cpp-qt-client] pass QString by const reference instead of by value

* Add another signal instead of changing its signature

* Bump qt version

* Fix CODEOWNERS

* Try to fix workflow

* use v3

* Remove openssl from windows build

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-03 18:14:22 +08:00
Beppe Catanese
62faa53373 [POSTMAN] Include header description (#17292)
* Include header description

* Generate samples
2023-12-03 08:06:09 +08:00
Beppe Catanese
6657b2c5c2 [POSTMAN] Query parameter description (#17291)
* Include query parameter description

* Generate samples
2023-12-03 08:05:44 +08:00
YusukeOba
64e5266556 [kotlin-client] Fixed an issue where compilation fails when an enum of type integer is used as a query parameter (#17178) 2023-12-02 18:54:34 +08:00
Beppe Catanese
ac78f1e85b [POSTMAN] Enabling required query parameters (#17281)
* Enable required query parameters

* Generate samples
2023-12-02 17:41:05 +08:00
William Cheng
f834519aeb move config file to unmaintained to avoid samples outdated errors 2023-12-01 11:29:09 +08:00
SAIA-Basseldonk
8911740924 [BUGFIX][Rust] Array with unique enum items no longer causes mismatched types error (#17197)
* check args to fn new for uniqueItems

* Added model with unique items for template testing

* build the project and update samples

* Removed testcase from fake petstore spec
2023-11-30 22:08:37 +08:00
William Cheng
f033b11408 Update JAX-RS client samples (#17262)
* update jaxrs client samples

* move configs
2023-11-30 21:39:42 +08:00
Dennis Melzer
939ffdd73c Add bean validation for primitive container type 17450 (#17157)
* Add optional parameter for request body

* Adapt Test

* Add test

* Format code

* Remove extra method

* Format code
2023-11-30 20:28:45 +08:00
William Cheng
4c4d0e485a [java] Update logback to newer versions (#17259)
* update logback to newer versions

* update
2023-11-30 18:51:46 +08:00
Beppe Catanese
4a1db3f1e6 [JAVA] Jersey3 deprecate class attribute (#17223)
* Deprecate attribute

* Generate samples
2023-11-30 13:50:30 +08:00
dependabot[bot]
77127ecf65 Bump actions/setup-java from 3 to 4 (#17252)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-30 13:50:10 +08:00
Beppe Catanese
a8ac32238b [BUG] OpenAPI normalizer ignoring common parameters (#17236)
* Normalize common and operation parameters

* Test normalize schema v3.1
2023-11-30 10:31:31 +08:00
Beppe Catanese
fd58539fe9 [JAVA] Jersey3 deprecated field only deprecates getter method (#17221)
* Deprecate build and setter methods

* Generate samples
2023-11-29 21:54:17 +08:00
William Cheng
9184560597 remove unused CI files (#17217) 2023-11-29 18:05:46 +08:00
William Cheng
46dd87525e Add tests for max,min items in array (rust-server) (#17215)
* add tests for max,min items in array (rust server)

* fix both min, max items
2023-11-29 16:21:54 +08:00
Vance Shipley
14c12fc617 include {min|max}Items validation in rust-server models (#17201) 2023-11-29 15:06:59 +08:00
devhl-labs
fb429f7e94 [csharp][generichost] Do not assume api keys are interchangeable (#17185)
* allow multiple auth methods of same type

* allow multiple auth methods of same type

* allow multiple headers to have api keys

* removed commneted code

* fixed all but standard

* fixed standard
2023-11-28 10:54:34 +08:00
Xiangxuan Qu
8669646d99 fix: chsarp get file name from content disposition (#17183)
* fix: chsarp get file name from content disposition

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-11-27 20:32:41 +08:00
William Cheng
e2a8118c86 add enum name mapping support to php generators (#17195) 2023-11-27 20:26:28 +08:00
William Cheng
ac687657ba add enum name mapping feature to C# generators (#17194) 2023-11-27 20:26:12 +08:00
William Cheng
a117dd55f1 add enum name mapping feature to kotlin generators (#17193) 2023-11-27 20:25:15 +08:00
devhl-labs
4f82071502 [csharp][generichost] Honor the Set-Cookie header (#17186)
* allow multiple auth methods of same type

* allow multiple auth methods of same type

* allow multiple headers to have api keys

* remove changes for another pr

* resolved conflicts, build samples

* fixed a casing issue

* fixed casing issue
2023-11-27 11:01:05 +08:00
Csaba Kozák
9fa3aec2e0 [kotlin-client][multiplatform] update dependency versions (#17180) 2023-11-26 21:58:22 +08:00
devhl-labs
3fa21b5603 do not inherit additional properties (#17140) 2023-11-26 21:49:00 +08:00
devhl-labs
ad95d551ed [csharp][generichost] Allow multiple auth methods of same type (#17129)
* allow multiple auth methods of same type

* allow multiple auth methods of same type
2023-11-26 21:46:48 +08:00
devhl-labs
8bea7f7377 handled nullable inner enums better (#17128) 2023-11-26 21:45:25 +08:00
William Cheng
4c6dbfe7d6 fix build errors in jdk 11 (#17177) 2023-11-24 17:40:13 +08:00
dependabot[bot]
7c551e65dd Bump s4u/setup-maven-action from 1.10.0 to 1.11.0 (#17175)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.10.0...v1.11.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  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>
2023-11-24 12:54:35 +08:00
William Cheng
0d2a01611c update samples 2023-11-23 11:46:06 +08:00
William Cheng
0dbc108d62 Add openapiGeneratorIgnoreList option to pre-populate .openapi-generator-ignore (#17164)
* add openapiGeneratorIgnoreList option to pre-populate .openapi-generator-ignore

* minor fix

* better code format

* add tests
2023-11-23 11:10:29 +08:00
William Cheng
a93bab077f Add openapi-normalizer rule to set tags to operationId (#17161)
* add normalizer rule to set tags to operationId

* update
2023-11-23 11:09:09 +08:00
William Cheng
aaed846f5f Update Dockerfile (cli, online) to use eclipse-temurin:17.0.3_7-jre-focal (#17139)
* add tests for openapi-generator-cli dockerfile

* trigger workflow

* add cp

* restore

* use eclipse-temurin:17.0.3_7-jre-focal

* update dockerfile

* update image to newer version
2023-11-23 11:08:31 +08:00
Rick Dutour Geerling
917d671d2c Fix typescript-fetch to support nullable enum properties (#17153) 2023-11-22 18:44:08 +00:00
Csaba Kozák
3f033c0974 [kotlin-client][multiplatform] fix iosSimulatorArm64 source sets (#17167) 2023-11-22 17:57:51 +00:00
Csaba Kozák
ab0b44a1c4 [kotlin-client] add support for kotlinx-datetime (#17166)
Closes #14490
2023-11-22 17:52:37 +00:00
William Cheng
7bf9534034 update option description (java client) 2023-11-21 12:29:43 +08:00
Vignesh
87b86c78dc feat: Support useSingleRequestParameter feature for java microprofile client generation (#17072) 2023-11-21 11:56:11 +08:00
Makoto Suzuki
baaf759440 [python-fastapi]Add an alias keyword parameter for Query parameter (#17111)
* add alias to endpoint_definition

* regenerate source code
2023-11-21 11:34:43 +08:00
Pat Buxton
9970c06f8c Adds basic retries to rest API requests for Python asyncio (#17014)
* Adds basic retries to API requests

 * This mimics the basic retries performed by urllib3 in the sync version

* update samples

* Only use retry client if number of retries is specified in the config

* Reorganize

* Remove class attribute

* close retry_client

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-11-21 10:42:34 +08:00
Max-Julian Pogner
489d369ee7 README: update url for maven-wrapper (#17142)
According to information posted at the old url https://github.com/takari/maven-wrapper (most recent commit 2b2c15adc38acfcf17533f5d7aff220ba87256ba as of this writing),
the new official project url of maven wrapper now is https://maven.apache.org/wrapper/
2023-11-20 11:29:43 +08:00
William Cheng
0401c46147 Fix missing objects when defining inline anyOf, or oneOf (#17141)
* better handling of composed schema in inline model resolver

* better handling of example
2023-11-20 10:24:57 +08:00
William Cheng
6d93b0ec83 Fix handling of composed schema in inline model resolver (#17138)
* fix handling of composed schema in inline model resolver

* update samples
2023-11-19 23:24:49 +08:00
William Cheng
8e36014ae6 update samples 2023-11-19 17:36:25 +08:00
William Cheng
97704841c5 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-11-19 17:31:36 +08:00
Barak Amar
63c8d0e071 python docs templates minor fixes (#17133) 2023-11-19 17:29:59 +08:00
William Cheng
186fde250b [spring-cloud] add http basic test (#17135)
* update samples

* add tests for spring cloud http basic

* fix path

* update samples
2023-11-19 16:07:28 +08:00
William Cheng
bf6145506d update samples 2023-11-19 15:26:38 +08:00
Vedant Chokshi
4fd5603075 Fix JavaSpring clientConfiguration's ConditionalOnProperty import (#17027) 2023-11-19 15:22:04 +08:00
greenbourne277
685d9445c2 [Kotlin] fix: match tags of closing brackets with opening ones (#12976) (#17117)
Trying to generate Kotlin code for CookieAuth will result in a malformed
ApiClient.kt for function updateAuthParams. The code block has a closing
bracket too much.

Co-authored-by: Christian Bay <christian.bay@posteo.net>
2023-11-19 14:44:31 +08:00
Robert Schweizer
75ff110449 [python] Some cleanup of samples folder (#17127)
* Delete sample folders of discontinued clients

* Remove duplicate python-flask server sample

The python-flask sample actually lives in samples/server/petstore/python-flask.

* Move hand-written test to "tests" folder

Now, "test" only contains generated stubs and all hand-written tests are in "tests".

* Delete left-over files in Python samples

These are not created by the generators (anymore) and not hand-written
for testing.

* Regenerate test file to fix import error
2023-11-19 14:43:34 +08:00
William Cheng
1da970b3b1 fix comparison using equals (#17132) 2023-11-19 14:41:39 +08:00
Xiangxuan Qu
a577db895c fix[csharp]: The Deserialize should use the ClientUtils to handle the headers. (#16604) 2023-11-18 14:41:17 +08:00
William Cheng
8258cde110 [jmeter] Fix exception when operationId has $ (#17125)
* fix exception when operationId has $ in jmeter

* add tests
2023-11-18 14:38:19 +08:00
Tomohiko Ozawa
4bedeef643 [Java][apache-httpclient][feign][okhttp-gson] Enable access token refresh (#17086)
* add setter of bearer token supplier

* run generate-samples.sh

* add test of bearer auth
2023-11-18 12:46:18 +08:00
Petar Karadzhov
dc4c72c85c [BUG] [dart-dio] Support for Analyzer configuration options changes in Dart 3 (#17099) 2023-11-18 12:46:03 +08:00
Csaba Kozák
3e5049565d [kotlin-client][multiplatform] add iosSimulatorArm64 target (#17058) 2023-11-18 10:47:23 +08:00
Robert Schweizer
5e7f2f274c fix: Annotate free-form object as dict in Python (#17082) 2023-11-18 10:46:01 +08:00
Artur Neumann
0098d56a6a [PHP-NG] allow 'object' type in serializer (#17118) 2023-11-18 10:41:36 +08:00
William Cheng
eabd9401bf fix rust client test (#17124) 2023-11-18 10:37:54 +08:00
Markus Lenger
1ce95ff41e Map type date to correct rust type NaiveDate (#17095)
* Fix clippy errors (rustc 1.73.0)

* Add feature docker-in-docker

* Fix mapping of "date"

See issue #9769

The type
  type: string
  format: date
was mapped to DateTime<Utc> which violates the OpenAPI spec

see https://swagger.io/docs/specification/data-models/data-types/
2023-11-18 10:33:45 +08:00
Artur Neumann
5c69284928 [PHP-NG] convert data to string before giving it to preg_match (#17119) 2023-11-18 10:17:34 +08:00
Artur Neumann
3552935a5b [PHP-NG] don't nullify mixed types (#17116) 2023-11-18 10:15:14 +08:00
Aurélien Joga
1f5b590d5a Python-server workflow fixes + pytest (#17060)
* Fix referenced path for tests

* Explicit dependencies

Flask 2.3 has breaking changes

* Marks all async tests with pytest.mark.asyncio

Otherwise they are skipped by pytest and coverage is zero

* Fix path for pytest

On suggestion from https://github.com/OpenAPITools/openapi-generator/pull/17060#discussion_r1392666369
2023-11-18 10:10:10 +08:00
Emanuele Saccomandi
a2c1b02840 added required fields to zapier models generation (#17115) 2023-11-18 10:09:17 +08:00
Artur Neumann
f81d44bb29 [PHP-NG] check if json_decode was able to decode response (#17120) 2023-11-18 10:08:32 +08:00
William Cheng
195f27de1f update rest-assured dep to newer versions (#17107) 2023-11-17 10:35:54 +08:00
William Cheng
07620cebe2 update webclient dep to newer version, add tests (#17106) 2023-11-17 10:34:22 +08:00
William Cheng
dcccd06a9a Revert "Use JDK17 images in Dockerfile (#17076)" (#17104)
This reverts commit bae20c1887.
2023-11-16 23:35:11 +08:00
William Cheng
bae20c1887 Use JDK17 images in Dockerfile (#17076)
* use jdk17 images in Dockerfile

* use amazoncorretto:17.0.8-alpine3.18
2023-11-16 10:16:04 +08:00
William Cheng
d9920a5b81 update samples 2023-11-16 00:56:05 +08:00
Tomohiko Ozawa
37451fa569 [Java][resttemplate] Add test for bearer auth (#17081)
* add bearer auth API to echo-api

* run generate-samples.sh

* add resttemplate echo-api sample

* add bearer auth test

* remove @Ignore
2023-11-16 00:38:49 +08:00
Robert Schweizer
e47e7041f7 [python][Feat] Deserialize error responses (#17038)
* refactor: Clean up _response_types_map formatting

It matches black's behavior of having trailing commas now.

* test: Add test to reproduce #16967

* fix: deserialize responses even if no returnType

Closes #16967

* refactor: Simplify ApiException subclasses

* refactor: Move exception subtype choice to ApiException

* feat: Deserialize error responses and add to exceptions

* test: Add for error responses with model
2023-11-16 00:37:04 +08:00
Jonas Heschl
69fcfeff38 Add passgenau-digital and we-make.ai as OpenAPI Generator users (#17077)
* Add passgenau digital logo

* Add passgenau digital to users

* Add wemakeai logo

* Add we-make.ai to users
2023-11-15 21:34:16 +08:00
devhl-labs
dd4143b75e [csharp] Added .net8 (#17075)
* added .net8

* change .net version in the github action

* upgrade manual sample
2023-11-15 15:35:02 +08:00
Segev Finer
a460b7ea87 [typescript-axios] Upgrade to axios@^1 (#14518)
* [typescript-axios] Upgrade to axios@^1

* Try fixing tests
2023-11-14 15:06:15 +01:00
Robert Schweizer
61fde48501 fix: Disable warnings for model_* properties (#17066)
For model classes with model_something fields, pydantic raises a warning by default:
`Field "model_something" has conflict with protected namespace "model_".`.

These warnings make no sense here, because most users of the generator have established APIs
that they cannot change to conform to pydantic's safety rules.

Pydantic will raise an error if we ever conflict with a current attribute like `model_dump`.
2023-11-14 21:50:35 +08:00
William Cheng
6be4d2e082 update algoria settings (#17064) 2023-11-14 14:18:55 +08:00
Rolf Rando
2ca958642b Add socks5 proxy support for OpenAPI generated python client (#16918)
* add socks5 proxy support (requires additional import)

* updated examples

* build samples. updated to support pydantic python option

* rename sock to socks for correct protocol name

* add proxy headers for pydantic

* fixed param changes from conflict resolution
2023-11-14 12:28:05 +08:00
litetex
2c25443260 Update base image of Dockerfile (#17007)
* Update base image of Dockerfile

* Make github workflow "Docker tests" manually triggerable

* Don't possibly downgrade TLS version

* Update Dockerimage in ``run-in-docker.sh``

* Use Maven's non interactive mode inside workflow

* Don't spam log

* Use java 17

because it won't compile with 21

* Removed hard memory limit

as memory should be controlled by the container

* Update hub dockerfiles
2023-11-14 11:41:49 +08:00
OliverTetzTT
d1b148a7d3 [python] added handling for boolean content type (#17020)
* added handling for boolean content type

* adapted addition to newer version of template

* [python] updated samples
2023-11-14 11:30:10 +08:00
devhl-labs
8860d967c0 disabled GetHashCode generation (#17039) 2023-11-14 11:27:28 +08:00
William Cheng
322afeacd4 Retain deprecated in allOf schema handling (#17056)
* retain deprecated in allof schema handling

* add test
2023-11-14 11:22:36 +08:00
Charles Treatman
c8b3da7388 [Java][okhttp-gson] remove unreachable code from templates (#17057)
* Remove checks for jackson and jsonb from okhttp-gson templates

* regenerate samples
2023-11-14 11:13:28 +08:00
William Cheng
91ac75ff05 Fix NPE in request body (#17055)
* fix null request body NPE

* fix typo
2023-11-14 10:41:21 +08:00
William Cheng
6da264b0f8 update lombok dep to newer version (#17053) 2023-11-14 10:40:51 +08:00
William Cheng
53289263d9 Prepare v7.2.0 (#17050)
* update version to 7.2.0-SNAPSHOT

* update samples

* update doc
2023-11-13 18:53:20 +08:00
William Cheng
e2a62ace74 7.1.0 release (#17049) 2023-11-13 17:25:18 +08:00
Ian Cubbon
c9f7af752f Verify Path params that fall into the string bucket are supplied (#17032) 2023-11-13 11:02:33 +08:00
William Cheng
ec3c484ce9 Add enum name mapping to Java generators (#17018)
* add enum name mapping to java generators

* update doc

* update description
2023-11-13 10:53:50 +08:00
devhl-labs
7e529926a6 [csharp][generichost] Implement not required nullable properties (#16810)
* init

* fixed read and write

* completed changes using latest-nrt sample

* fixed all samples

* add null check on write, change on exception

* resolved conflicts

* build samples

* added backing property for not required properties

* more not required and nullable hanlding improvements

* revert sample updates for a merge master

* revert sample updates for a merge master

* sample build is working, need to remove warnings

* fixed warnings in .net 7 with nrt

* fixed manual tests

* fixed all samples

* fix npe

* removed debugging lines

* revert changes to unused file

* removed unused lambdas

* fix a serialization bug

* make option a hidden property

* updated documentation

* improved parameter ordering
2023-11-13 10:16:35 +08:00
Ian Cubbon
2f655f1a9c Time parameters in the path resulted in code that would not compile (#17021)
This is probably a pretty rare case as it just seems weird to have a time
path parameter, but it's good to fix.
2023-11-13 10:01:32 +08:00
William Cheng
5693eee4e0 Fix CircleCI build (#17016)
* fix circleci build

* add maven opts

* remove cache path

* clear cache

* fix node 0

* use 1024

* skip save cache

* restore tests

* fix

* fix typo

* update

* clean up pom.xml
2023-11-13 10:00:55 +08:00
William Cheng
f83e4ffb9b update PS samples 2023-11-13 08:55:52 +08:00
Elon Mallin
c377fdf62d Fix powershell client Build.ps1 and *.psm1 error when there is a missing Model folder (#17025)
* fix(powershell): make sure paths exists when building and importing module

* chore(powershell): update sample psm1 and build.ps1 with path check
2023-11-13 00:29:49 +08:00
William Cheng
372894dd1d Add powershell echo test, rename api key names (#17043)
* add powershell echo test, rename api key names

* update
2023-11-13 00:09:46 +08:00
Elon Mallin
6917aad760 fix: use apikey name in header instead of securityDefinition spec id (#17022) 2023-11-12 23:18:12 +08:00
Beppe Catanese
2b9ee8c5f6 Remove unused method (#17042) 2023-11-12 23:10:15 +08:00
William Cheng
40b1d37368 Update gradle samples to use gradle wrapper 7.6.3 (#17035)
* trigger gradle build

* update gradlew to use 7.x
2023-11-12 22:01:43 +08:00
Beppe Catanese
09060c6c22 Use postman notation (#17028)
* use Postman notation for path parameter

* Regenerate samples
2023-11-12 00:08:07 +08:00
William Cheng
279a92c2ed rearrange users 2023-11-11 16:31:23 +08:00
Aidan
c48cddd640 [GO] Add support for model name mapping for go (#17023)
* Add support for model name mapping for go

Signed-off-by: Aidan Jensen <aidan@artificial.com>

* Add model name and filename tests

Signed-off-by: Aidan <aidan@artificial.com>

* Use File.separator to make the test platform agnostic

Signed-off-by: Aidan <aidan@artificial.com>

---------

Signed-off-by: Aidan Jensen <aidan@artificial.com>
Signed-off-by: Aidan <aidan@artificial.com>
2023-11-11 16:10:42 +08:00
Cosmin Poieana
92daacd6a2 Add Robocorp (robocorp.com) as user (#17019)
* Add Robocorp (robocorp.com) as user

* Reference Robocorp into the README
2023-11-09 17:06:28 +08:00
Julian Kalinowski
f35b132068 [Kotlin] fix(#14044): ktor JSON serialization handling (#16843) 2023-11-08 14:48:43 +08:00
Łukasz Baran
ced31f49b3 add kotlin-spring beanValidation for RequestBody parameters fix #16738 (#16859)
* fix missing bean validation annotations on RequestBody

* add new line to files

* remove new line from files

* reformat file
2023-11-08 14:33:39 +08:00
Charles Treatman
166ebc50b0 [Java][okhttp-gson] validateJsonElement does not validate enum values (#16865)
* validate enum properties in validateJsonElement

* regenerate samples

* add test for enum validation in okhttp-gson models
2023-11-08 14:14:48 +08:00
Ian Cubbon
291ce353ce [Go][Server] FormParams - Generic Array Type Handling (#17001)
* If a form param is an array and isn't caught in the previous checks, treat it as a slice of strings.

* Add an example of a FormParam that is an array
2023-11-08 14:09:12 +08:00
William Cheng
e9507077fc better null check in getSchemaFromResponse (#17003) 2023-11-08 14:08:19 +08:00
Meo
ced9660123 [ts][axios] fix bugs in base.ts (#16997)
* Update base.ts

* update base.ts

* update mustache template

* update samples

---------

Co-authored-by: yangqiuyi <yangqiuyi@yaocheng.cn>
2023-11-07 18:07:15 +01:00
loicconan
d945499073 [PHP-SYMFONY] Support BackedEnum for enum ref (16846) (#16847)
* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)

* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)

* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)

* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)

* [PHP-SYMFONY] Support BackedEnum for enum ref (16846)

* [PHP-SYMFONY] Support BackedEnum for enum ref (16846)

* [PHP-SYMFONY] Support BackedEnum for enum ref (16846)
2023-11-07 22:40:35 +08:00
Marc Weiß
74163f0ac8 bump gson-fire to 1.9.0 (#17002) 2023-11-07 22:35:05 +08:00
hhomar
ba8546189a fix(java): generate correct enum constructor when string format is uri (#16929)
Before:

COM_V1_SCHEMA_JSON("https://example.com/v1/schema.json")

After:

COM_V1_SCHEMA_JSON(URI.create("https://example.com/v1/schema.json"),
2023-11-07 15:16:41 +08:00
martin-mfg
c301004b7e fix oneOf merging, upgrade dependencies (#16992)
* fix oneOf enums

* upgrade jackson dependencies

* upgrade openRewrite dependency
2023-11-07 13:13:37 +08:00
Mann Patel
a31b38b223 Added some Test Cases (#16994)
* New Test Case Added to AndroidClientCodegenTest

* New Test Case Added to GenApiControllerTest

* New Test Case Added to BirdAndCategoryTest

* New Test Case Added to WorkflowSettingsTest

* Modified GenApiControllerTest

* Added Test case in JavascriptClientCodegenTest

* Modified BirdAndCategoryTest

* Modified BirdAndCategoryTest

---------

Co-authored-by: Mann <mn906219@dal.ca>
2023-11-07 13:11:35 +08:00
William Cheng
849cf88ba7 Update C# dependencies to newer versions, update reserved word list (#16996)
* update c# dep to newer versions, update reserved word list

* update doc, list
2023-11-07 12:32:23 +08:00
Kazuhiro Fujieda
8e98671ba6 [csharp] Introducing the enumPropertyNaming option to the C# Generator (#16981)
* [csharp] Support the enumPropertyNaming option

* Add a doc comment to adjustNamingStyle
2023-11-07 10:52:10 +08:00
Robert Schweizer
65ccf0492c fix: Raise exceptions on non-2xx responses (#16999) 2023-11-07 10:44:45 +08:00
William Cheng
0673897746 Update README.md with Develocity 2023-11-06 21:38:20 +08:00
William Cheng
74363a3eb8 Add tests for go generateMarshalJSON option (#16993)
* add tests for go generateMarshalJSON option

* update samples
2023-11-06 12:04:19 +08:00
William Cheng
49208144e1 Better handling of allOf in request body (#16991)
* better handling of allOf in request body, add tests

* additional checks

* fix description
2023-11-05 22:43:45 +08:00
William Cheng
339596aeec normalizer: minor refactoring in responses (#16988) 2023-11-05 18:04:40 +08:00
William Cheng
588e2598f6 add Adyen to the sponsor list 2023-11-05 15:50:07 +08:00
William Cheng
a853adb4b0 add sponsors, update readme (#16987) 2023-11-05 15:26:44 +08:00
William Cheng
de8599906e Better handling of API response in 3.1 spec (#16986)
* better handling of API response in 3.1 spec

* update PR template

* add tests
2023-11-05 15:24:02 +08:00
Charles Treatman
db9fd9a094 [Go] validate required fields when unmarshalling JSON (#16863)
* validate required properties when unmarshalling JSON

* build project & update samples

* Add test for required field validation
2023-11-04 22:58:25 +08:00
William Cheng
5d03c4ac82 [java-okhttp] Restore integration tests (#16985)
* restore java okhttp tests

* update PR template, update sha
2023-11-04 22:50:23 +08:00
Eric Rolli
482c759a10 corrected gneration of java jersey code with oneof and anyof (#16970)
* Update anyof_model.mustache

corrected missing implements

* Update oneof_model.mustache

corrected missing implements

* Update anyof_model.mustache

corrected missing implements

* Update oneof_model.mustache

corrected missing implements
2023-11-04 22:29:35 +08:00
Beppe Catanese
5e8e301869 [POSTMAN] [BUG] Correct order of the Postman requests (#16983)
* Make public for testing

* Sort endpoints as they are added in the list/map

* Test endpoints are sorted

* Regenerate Postman sample
2023-11-04 22:24:27 +08:00
Dennis Melzer
f83cb60f27 Add optional parameter for request body (#16972)
* Add optional parameter for request body

* Adapt Test
2023-11-04 16:54:50 +08:00
Yohei Kitamura
61629ae8ed [python] Add back __enter__ and __exit__ methods for non asyncio (#16979) 2023-11-04 16:54:17 +08:00
Kapil Gupta
c4b18f206d [Server][Spring] fix support interface and implementation classes for API controllers (#16945)
* [Server][Spring] support interface and implementation classes for API controllers

* Omitted new string calls

* Added Log messages

* remove else

* Removed redundant if

* Update missed ;
2023-11-04 16:52:17 +08:00
William Cheng
171cc67caa fix pydantic v1 default template folder (#16973) 2023-11-03 20:37:35 +08:00
Nelson Osacky
fe547dd0b5 Update Revved up by Develocity badge (#16968) 2023-11-03 13:55:54 +08:00
ふぁ
1092593841 [python] add circular reference import (#16940)
* [python] add circular reference import

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-11-02 22:14:20 +08:00
Adarsh Jha
7b8a515dcb Bug Fix: Removing Hardcoded 'id' csharp-function (#16963)
* Bug Fix: Removing Hardcoded 'id' csharp-function

* Bug Fix: Removing Hardcoded 'id' csharp-function

* Bug Fix: Removing Whitespace
2023-11-02 22:14:03 +08:00
martin-mfg
39347ec37b maven plugin: log global settings, minor improvements (#16961) 2023-11-02 22:13:03 +08:00
TAKAHiRO TOMiNAGA
e4cfd626c8 [Go] add generateMarshalJSON key for additional-properties settings (#16962)
* [add] additionalProperties about whether generating MarshalJSON (#16948)

* [change] key from skipGeneratingMarshalJSON to generateMarshalJSON (#16948)

* [test] modify unit tests (#16948)

* [fix] default value (#16948)

* [update] samples (#16948)

* [fix] document (#16948)
2023-11-02 22:12:21 +08:00
Lucas Heim
fbbfa12096 fix(typescript-nodejs): update package json dependencies (#15493)
* fix(typescript-nodejs): update package dependencies

* update samples

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

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

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2023-11-02 12:06:12 +01:00
Kirill
832947c895 [typescript-fetch] Generate @deprecated comments for all deprecated APIs (#16696)
* add deprecated to typescript-fetch

* update samples

---------

Co-authored-by: Родин Кирилл Владимирович <kvrodin@mts.ru>
2023-11-02 09:38:23 +01:00
Rémy Sanchez
5c5ec36500 Type import for oneOf models in ts-fetch template (#16828)
Required for some compilation modes of TS, specifically for use with SvelteKit.
2023-11-02 09:34:03 +01:00
Ian Cubbon
83822d269a [Bug][Go][Client] Downloaded File Does Not Exist When Returned to Caller (#16954)
* Keep the file that gets written out to by the client->decode function

* Update the echo-api test case to check the file returned exists
2023-11-02 11:46:15 +08:00
Akira Aratani
6425fbe3ed [dart-dio] Add toString in Enum on json_serializer (#15387)
* Bump up the dart version.

* Add toString on enum.

* [dart-dio/json_serializable] Fix enum converter for non-string.

* [dart-dio/json_serializable] Bump up the dart version only json_serializable.

* [dart-dio/json_serializable] Rename enum value.
2023-11-02 11:15:23 +08:00
OliverTetzTT
4402635d49 [python] Fix postponed model imports (#16882)
* replaced method used on model to import the model not the mapping name

* replaced method used on model to import the model not the mapping name
2023-11-02 00:59:19 +08:00
William Cheng
4302d37f52 use unescaped baseName (#16957) 2023-11-02 00:01:06 +08:00
Mark Haley
a4267ee630 fix parameters_to_url_query returns booleans with upper letter (#16947)
* chore: add test to show python bool url params are not lower case

* fix: python parameters_to_url_query template to properly detect booleans

* fix: typo in test

* fix: typo in test

* chore: update test name to snake case and be more descriptive
2023-11-01 23:30:32 +08:00
William Cheng
8893c7136a [Core] Better code format (#16959)
* better code format in default codegen

* better code format in test

* better code format in model utils
2023-11-01 22:27:25 +08:00
William Cheng
8d76ab9511 [Go] Add multiple file upload support (#16956)
* add go echo api client github workflow

* add support for multi file upload in go client

* update go samples
2023-11-01 11:35:25 +08:00
Cameron Koegel
c2a4163bdb [typescript-axios] Fix Explode Query Parameters (#16898)
* [typescript-axios] Fix Explode Query Parameters

* use `paramName` instead of `baseName`

* add config, workflow and tests for echo api

* generate echo api sample

* update test dependencies and add gitignore

* update space in package json and regenerate samples

* remove tsc in test package

* update samples

* undo samples

* regenerate samples

* regenerate samples again
2023-11-01 09:41:06 +08:00
dabdirb
739390a682 java exclude password field from toString (#16942) 2023-10-31 17:50:30 +08:00
William Cheng
bfe6157d07 Better isAlias detection (#16943)
* better isAlias check for allOf with single item

* better code format
2023-10-31 17:49:00 +08:00
Artur Neumann
6cd73eba2b [PHP] check if json_decode was able to decode response (#16879)
* [PHP] check if json_decode was able to decode response

* use try/catch to check if json_decode failed
2023-10-31 15:52:33 +08:00
mmews-n4
08d518319e n4js fix issue with broken module names due to same module names (#16937) 2023-10-31 00:10:09 +08:00
ふぁ
8827da8012 [python] fix typing for API responses (#16802)
* [python] remove _preload_content

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove _return_http_data_only

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove async_req

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix typing for API responses

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix AttributeError

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove _preload_content

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix response_type

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix typo

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update simplify RESTClientObject

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update split call_api into 4 functions

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update improve stream

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove kwargs

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update ApiResponse

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add method for each return value

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update test

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update docs

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add constantParams

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix ImportError

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix SyntaxError in RESTResponse

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add ApiResponse model_config

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix when isBinary is str

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update type

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add rest with pydantic v1

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update format

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update format and type

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add test

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update type to pydantic strict type

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove leftover files

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove descriptions per field

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add test

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix test

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] fix test

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove multiprocessing

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] add blank line to docstring

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update docstring

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] remove unwanted imports in rest

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-10-30 12:37:23 +08:00
William Cheng
3422ef1e64 update C# samples 2023-10-30 12:13:15 +08:00
devhl-labs
c1c6237eec made security scheme comparison case insensitive (#16934) 2023-10-30 10:54:58 +08:00
devhl-labs
5a5ee163dc fixed lambda to not strip line breaks (#16930) 2023-10-29 11:08:04 +08:00
Ian Cubbon
677b6e64c1 If parsing a boolean fails, return a ParsingError instead of a straight 500 (#16910)
Add an example endpoint that covers Required, Default, and Not Required cases
2023-10-28 20:32:04 +08:00
Dawson Akins Conway
244a3b4c13 [ruby] Make File Downloads Threadsafe (#16876)
* Make Generated Ruby Code Threadsafe

* missed one

* Generate Samples
2023-10-28 20:31:18 +08:00
Artem
05b796aadc Fix type hint for array in comments. (#16926) 2023-10-28 20:30:16 +08:00
Torgil Folger
58f058f3e9 [csharp] RemoteCertificateValidationCallback was not called on async methods; resolves #14608 (#16886)
* Update ApiClient.mustache

added missing line in config mapping

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-10-28 20:29:38 +08:00
Kisaragi
d671b83a5f chore(deps,rust): requires reqwest 0.11 in blocking generated code (#16927)
* chore(deps,rust): requires reqwest to be 0.11 series even if generate in blocking mode

* chore: reflect change

* test: reflect blocking Form
2023-10-28 20:08:39 +08:00
Nathaniel Cook
fbd02554f5 fix(rust-server): remove redundant clone (#16906)
The generated example code would clone the context. However as context
is a generic type and is not declared to implement Clone, a clone of a
reference is just a copy of the reference and therefore unnecessary.
This change removes the redundant call and therefore avoids the `cargo
clippy` warning.
2023-10-27 11:06:34 +08:00
Cameron Koegel
eb5b781e20 [typescript-axios] Add Support for Operation Servers (#16782)
* [typescript-axios] Add Support for Operation Servers

* add missed import

* redo indexing to be safer

* generate samples
2023-10-27 10:41:03 +08:00
dependabot[bot]
eae2051d37 Bump actions/setup-node from 3 to 4 (#16893)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-27 00:55:56 +08:00
Šimon Lukašík
b13a1a05ef [ruby|client] Fix unmarshalling errors of enums inside other objects (#16900)
* [ruby|client] Fix unmarshalling errors of enums inside other objects

Ruby|Client autogenerated model classes for Enums do not expose openapi_one_of
method. Instead they expose openapi_any_of method like:

      # List of class defined in anyOf (OpenAPI v3)
      def openapi_any_of
        [
          :String
        ]
      end

Both types (objects and enums) do respond to build() method.

* Regenerate samples
2023-10-27 00:55:33 +08:00
SURAJ VASHISTA B K
091cff60c3 fixed flaky test JavaClientCodegenTest.testMicroprofileRestClientIncorrectVersion (#16908) 2023-10-26 21:56:24 +08:00
Csaba Kozák
0aff1a6504 [kotlin][client] Fix compilation error when all auth method is mapped to null (#16861) 2023-10-24 07:38:41 +01:00
loicconan
cb85358aa5 [PHP-SYMFONY] Debug Date and DateTime Assert (#16874) 2023-10-23 22:26:27 +08:00
Austin Ziegler
cdbb73aa55 Prevent direnv errors when not using nix (#16875)
Right now, if a developer uses `direnv` but does not use `nix`, an error
is reported whenever changing into the OpenAPI generator directory:

```console
$ cd ~/oss/forks/openapi-generator
direnv: loading ~/oss/forks/openapi-generator/.envrc
direnv: using flake
environment:1270: nix: command not found
```

This uses the `has()` function to check for `nix` to *conditionally* run
the `use_flake` function.
2023-10-23 22:07:34 +08:00
Ivan Giuliani
ae590c4712 [Ruby] Add support for populating a gem metadata (#16872)
* [Ruby] Add support for gems metadata

This defaults to an empty hash, but can be overridden with any custom
object by the callers via the `gemMetadata` property.

* Regenerate samples

The gemspecs files will now include a metadata field
2023-10-23 22:05:19 +08:00
Alexander Spivak
f16744a2bb Update ktor client version for custom plugin support (#16869)
* Update ktor-client version to 2.3.5

* Update ktor-client version to 2.2.3
2023-10-23 22:03:54 +08:00
Ian Cubbon
bf9fae641e [Go-Server] Add support for DateTime Query Parameters (#16749)
* Add support for DateTime objects in the Path, Query Params, and as a List

* Fix indentation

* Add an exaple that has dateTimes
Move the date parsing into a common util in the routers.go file.

* Fix compilation issue and regen

* Use the `RequiredError` to handle this case

* Only split on a "," and not an extra 'space' after the ",".
2023-10-22 21:07:13 +08:00
dependabot[bot]
5f71bb9afa Bump jurplel/install-qt-action from 3 to 4 (#16885)
Bumps [jurplel/install-qt-action](https://github.com/jurplel/install-qt-action) from 3 to 4.
- [Release notes](https://github.com/jurplel/install-qt-action/releases)
- [Commits](https://github.com/jurplel/install-qt-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: jurplel/install-qt-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-22 21:05:45 +08:00
Thomas Trapanese
7347daec61 fix(nestjs) fix import in api module template (16670) (#16671)
* fix(nestjs) fix import in api module template (16670)

* fix(nestjs) fix import in api module template (16670)

---------

Co-authored-by: Thomas Trapanese <thomas.trapanese@maggioli.it>
2023-10-20 18:31:30 +02:00
Emanuele Saccomandi
77687a8ea5 [zapier] Zapier generator minor fix (#16845)
* fixed childMapping method

* updated samples

* fixed deps
2023-10-18 21:47:18 +08:00
Ben Madore
d6421411c9 chore: remove unused commons logging imports from java webclient (#16839)
Co-authored-by: Ben Madore <ben.madore@glassdoor.com>
2023-10-17 13:33:34 +08:00
Bhargav P
8feef52d6b [Bug] [Java] Upgrade Guava version to 32.1.3 (#16833)
* #16832: Upgrade Guava version to 32.0.1

* #16832: Upgrade Guava version to 32.1.3
2023-10-17 13:31:59 +08:00
Ian Cubbon
e0738a6e42 [Go-Server] Support for an endpoint returning a file to the client - #15206 (#16748)
* Support for an endpoint returning a file to a client.

* Spaces to tabs conversion

* Add an example endpoint for download a file

* Regenerate after merging main
2023-10-17 11:42:27 +08:00
Ian Cubbon
1dd9590064 [Go-server] - Support for Enums in the Path and Query (#16781)
* Add support for Enums to be part of the Path and Query
Supports optional Query Enums and Lists of Enums as well
Add an example endpoint that covers the added scenarios
Added an import mapping for the GoServerCodegen for "fmt"
    when a model is an enum.
Expanded the Enum Model for the Go Server to have validation.
    Copied this logic from the Go Client Enum Model.

* Fix identation of examples

* Pre-allocate the capacity of the slice of Enums to be
the correct size.

* Formatting and updated examples

* Empty-Commit

* Switch to using a map to store the valid enum values

* Fixed pointer derefs missed from previous change in PR

* More fixing of pointer to not pointer

* Create a map for validation and a list of enums for messaging
2023-10-17 11:35:39 +08:00
Josh Raker
d1fa38e286 [BUG][GO] Add support for all +json and +xml suffixed media types (#16816)
* Add support for all +json and +xml suffixed media types to generated Go client

* Export JsonCheck and XmlCheck and add external tests

* Remove client_test.mustache
2023-10-17 00:47:09 +08:00
Prashant Pant
2f214ee6c6 Autoset constants (Required fields having single valid enum value) (#16761)
* Autoset constants (Required fields having single valid enum value) Python Implementation of #16547

* Fixing ``PythonClientCodegenTest.testHandleConstantParams`` for Windows platform.
2023-10-16 22:47:59 +08:00
DaxServer
8bb473316e [PHP-Symfony] fix #15950: Add float to deserialize (#16835)
* [PHP-Symfony] fix #15950: Add float to deserialize

* Add test sample

* Add double

---------

Co-authored-by: DaxServer <daxserver@icloud.com>
2023-10-16 22:19:33 +08:00
martin-mfg
b6db4f73f1 [JAVA] fix: oneOf generates incorrect model for primitive types (#16834)
* generate samples

* try fix

* add new sample for fixed case

* also improve native library

Other libraries don't need fixes.

* add oneOf_twoPrimitives.yaml

* generate samples

* resolve comment
2023-10-16 22:18:52 +08:00
Robert Schweizer
438bf25a47 chore: Simplify async/non-async api method templates (#16820) 2023-10-15 10:44:43 +08:00
William Cheng
769990d654 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-10-15 10:44:22 +08:00
William Cheng
694f5a05a1 fix TC table format 2023-10-15 10:44:15 +08:00
Josh Raker
c5d6884c63 [BUG][GO] Replace references to sw package with {{packageName}} in README template (#16812)
* Replace references to sw package with {{packageName}}

* Update samples
2023-10-15 10:37:27 +08:00
William Cheng
8db9af9873 fix broken link to conan.io 2023-10-15 10:35:49 +08:00
Kasper Rune Søgaard
1fc0cec75f [CSHARP] Added support for nullable Enums in the ToJsonValue method (#16801)
* Fixed C# nullabled enums and attribute reusage for generichost

* Samples
2023-10-15 09:59:22 +08:00
Beppe Catanese
b4f9d8103f [Postman Collection] Fix path parameter syntax (#16827)
* Format Postman request url

* Generate schema
2023-10-15 09:35:57 +08:00
Yuriy Belenko
3bc4f67333 [php-nextgen] Remove deprecated @category phpdoc (#16829)
* [php-nextgen] Remove deprecated @category phpdoc

@category tag is deprecated accordingly to:
* [PhpDocumentor](https://docs.phpdoc.org/guide/references/phpdoc/tags/category.html)

* Refresh samples
2023-10-15 09:35:02 +08:00
Gonzalo Gomez
571aefa3da io/ioutil has been deprecated. (#16822)
Uses os.CreateTemp to create temp directory.
Uses io.Copy to avoid reading file into memory.
2023-10-14 10:04:06 +08:00
William Cheng
ba367e60e8 [go-server] Add tests, minor format change (#16805)
* add tests for #16787, minor format change

* revert

* fix typo

* use pet instead of fake

* update samples
2023-10-12 19:23:02 +08:00
William Cheng
75ce5968bf update python technical committee (#16806) 2023-10-12 18:33:47 +08:00
ErikBooijMB
1dfdeaff59 Fix missing newline for file array in go-server/controller-api.mustache (#16787) 2023-10-12 16:20:01 +08:00
William Cheng
34265e52b1 add rule to skip xUnit1031 (#16804) 2023-10-12 15:56:27 +08:00
devhl-labs
2cfce7cd2d version bump (#16657) 2023-10-11 16:16:06 +08:00
Valerio Santinelli
e3958cba75 Added support to skip creation of go.mod and go.sum in the Go client generator (#16766)
This adds support to avoid generating go.mod and go.sum for Go client.

By default it is set to true to keep compatibility with previous version
of the tool.

It can be set to false using --additional-properties=withGoMod=false
2023-10-11 16:00:19 +08:00
William Cheng
fe55938363 better NPE handling, log warn for const in 3.1 (#16786) 2023-10-11 15:58:29 +08:00
William Cheng
015f000f70 add mapping options to zapier client generator (#16785) 2023-10-11 15:18:45 +08:00
Robert Schweizer
384ff941ae fix: Merge conflict from #16779 and #16777 (#16784) 2023-10-11 15:14:01 +08:00
Robert Schweizer
2b6b3b0883 [python] Do not pydantic-validate function args twice (#16776)
* refactor: Use newlines in _with_http_info call

This prevents too-long lines and matches the style that
black would enforce.

* fix: Do not pydantic-validate function args twice

Closes #15757
2023-10-11 13:57:52 +08:00
Emanuele Saccomandi
bbf9ccd0c0 fixed zapier objects array mapping (#16780) 2023-10-11 13:56:16 +08:00
Robert Schweizer
f180aa0eec [python] Fix unnamed dicts with additional properties (#16779)
* test: Add two extra models for testing

* Fix unnamed dicts with additional properties

Closes #16630
2023-10-11 13:55:53 +08:00
Robert Schweizer
7af459396c docs: Improve docstring in to_dict() method (#16777)
It was often confusing to me why this method is even there.

Also using more line breaks and matching how black would format this.
2023-10-11 13:51:37 +08:00
Ghufran Zahidi
1bbbb73690 fix ecdsa signing issue. (#16772) 2023-10-10 18:36:41 +08:00
Robert Schweizer
f03cbea971 feat: Add line breaks in Python API methods (#16770) 2023-10-10 18:32:52 +08:00
Robert Schweizer
9e07f85eb5 [python] Add tests and fix enum path parameters (#16769)
* test: Tests for enum params in path, query and header

* fix: Get enum ref values correctly in path parameters

Closes #16688

* fix java tests failure

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-10-10 17:10:30 +08:00
William Cheng
7bb75f4bb4 uncomment ruby test 2023-10-10 14:58:01 +08:00
Robert Danci
87f9d53c3a [Java][client] Fix feign classcastexception when getting headers (#16745)
* Avoid ClassCastException when getting headers (the header values are Collection<String> and not List<String>)
Delete unused classes

* Remove feign10x

* Add unit test
Refactor to avoid creating the headers map when ApiResponse is not used
2023-10-10 14:53:32 +08:00
SURAJ VASHISTA B K
494ee489ad fixed a flaky test org.openapitools.codegen.DefaultCodegenTest.testVarsAndRequiredVarsPresent (#16751) 2023-10-10 13:31:22 +08:00
somethingvague
594308f821 Fix log statement (#16768)
The current log statement prints "%s", updating to properly include the parameter
2023-10-10 11:34:58 +08:00
William Cheng
4a17c22905 fix object serializer, update tests in php nextgen (#16764) 2023-10-10 11:31:38 +08:00
Tiago
3e9dba01ee Fix ruby httpx test (#16765)
* fix setup of body params (may be nil)

* fix httpx adapter issues

treating DNS resolution errors as ConnectionFailed; removing multipart header set by the openapi-generated code, as it does not contain boundary, and interferes with the generation from httpx, which appropriately deals with mime-types already
2023-10-10 11:31:08 +08:00
William Cheng
23c5db602f Update ruby httpx petstore test (#16753)
* update ruby httpx petstore test

* fix pom

* comment out ruby httpx tests
2023-10-09 15:43:21 +08:00
martin-mfg
e3db882ed4 [JAVA][KOTLIN][SPRING] upgrade dependencies (#16759)
* upgrade spring-boot-starter-parent

* upgrade springdoc and swagger-ui

* upgrade v3 swagger-annotations

* generate samples

* upgrade jackson

* fix spring cloud, remove temp comment

Putting "8" instead of "1.8" should be ok, because Spring Boot 3 requires Java 17 anyway, so it should be able to understand that 8 is the same as 1.8.

* generate samples

* upgrade JUnit 5, remove commons-io dependency, remove outdated samples/client/petstore/java/feign/feign10x/ files, generate samples

commons-io dependency was introduced in https://github.com/OpenAPITools/openapi-generator/pull/8484, but I don't see why it would be needed now or back then.

* update gson, generate samples

* update logback

* update feign

* update scribejava

* generate samples

* update httpmime

* okhttp-gson: update commons-lang & okhttp & junit-platform, remove mockito; generate samples

It seems Mockito is not used at all there.

* okhttp-gson: remove unnecessary sample files, generate sample files

* upgrade google-api-client & jersey-common, restore ClientTest, generate samples

* misc. upgrades in jersey2 and jersey3

jersey 3.1.3 is available already, but IntelliJ reports security problems in 3.1.3 and 3.1.2, so I used 3.1.1 instead.

* align some gradle&sbt files with poms, generate samples

* whitespace fix
2023-10-09 14:55:32 +08:00
William Cheng
48f454cf72 fix type, update tests in php nextgen (#16758) 2023-10-09 14:40:34 +08:00
William Cheng
5fb6fcf9ef [php-nextgen] minor fix to return type (#16752)
* minor fix to return type

* use returnProperty
2023-10-08 15:29:16 +08:00
Maddin
f5680019b2 fix handling with enums in object serializer (#16741) 2023-10-07 22:56:31 +08:00
William Cheng
893154d766 map set to list, add tests (#16730) 2023-10-07 21:56:02 +08:00
Ghufran Zahidi
050e463872 Print the multiple matchedTypes when multiple schema matched. (#16736)
Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
Co-authored-by: Vikrant Balyan (vvb) <vvb@cisco.com>
Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
2023-10-06 16:17:48 +08:00
William Cheng
effbe8caad Bug fixes based on report (#16728)
* bug fixes based on report

* fix
2023-10-05 13:02:05 +08:00
William Cheng
6722f1300d add ruby httpx echo api tests (#16729) 2023-10-05 12:55:57 +08:00
Maddin
c306ca3cf2 fix invalid function is_subclass call for php-nextgen (#16712) 2023-10-05 12:34:50 +08:00
Tiago
822568b664 ruby client adapter for httpx (#16718)
* added isTyphoeus property to remove negations on isFaraday

* adding httpx support as alternative library for ruby client

* updated samples
2023-10-05 12:17:18 +08:00
dabdirb
4a0ab21ba4 [Spring] resolves #16054, resolves #15088 add vendor extension x-spring-provide-args (#16663)
* add vendor extenstion x-spring-provide-args

* add vendor extenstion x-spring-provide-args

* Revert "add vendor extenstion x-spring-provide-args"

This reverts commit 8a0cbc93eb.

* catch up latest main and re-generate samples

* remove un-used import

* add vendor extenstion x-spring-provide-args (#16054,#15088)

* update  X_SPRING_PROVIDE_ARGS for better description

---------

Co-authored-by: xiangxi.chen <xiangxi.chen@cerence.com>
2023-10-05 11:11:55 +08:00
William Cheng
a1d00e4785 [Java][okhttp-gson] fix AWS auth issue (#16721)
* fix samples

* fix awsauth in okhttp gson java client

* update github workflow
2023-10-04 18:28:50 +08:00
Jan Gosmann
7087b332f0 Replace deprecated Gradle properties (#16695)
* destinationDir -> destinationDirectory (scheduled to be removed in Gradle 9.0)
* archiveName -> archiveFileName (removed in Gradle 8.0)

Cp. https://docs.gradle.org/current/userguide/upgrading_version_7.html
2023-10-04 16:24:05 +08:00
William Cheng
f5f9a7e091 Update tests for maven plugins (#16720)
* Fix swagger-annotations groupId in java examples

In Version 5.4.0 OpenApi-Generator has replaced the legacy library
which provided the `io.swagger.annotations.*` namespace (hosted at
https://mvnrepository.com/artifact/io.swagger/swagger-annotations)
with the updated project that provides `io.swagger.v3.oas.annotations.*`.

Hence, if you want to use OpenApi-Generator >= 5.4.0 you need this
package https://mvnrepository.com/artifact/io.swagger.core.v3/swagger-annotations
which is now reflected in these example files.

* Raise jackson-databind-nullable version in example to latest v0.2.6

* Update springfox dependency to v3.x in java examples

See https://github.com/springfox/springfox#migrating-from-existing-2x-version

* fix maven plugin spring tests

---------

Co-authored-by: Philzen <philzen@riseup.net>
2023-10-04 15:59:12 +08:00
William Cheng
11771a8ccf update samples 2023-10-04 15:11:06 +08:00
Matthias Gabriel
4075a52dce fix: Add prefix and suffix to discriminator (#16684)
Use the existing toModelName method to normalize the discriminator

Co-authored-by: Matthias Gabriel <mga@rockstar.jobs>
2023-10-03 18:46:56 +08:00
jenspopp
baf33f0537 Added {{>cookieParams}} to interface (#13911)
{{>cookieParams}} was introduced to generated classes but not for the only interface use case in #8117
2023-10-03 16:49:54 +08:00
AvivLevitski
9fd4cc1e63 [Feature] add the ability to generate apis and models in the specified folder from config.yaml (#15561)
* support the ability to create apis and models templates in specify folders using the config settings (folder)

* support the ability to create apis and models templates in specify folders using the config settings (folder)
2023-10-02 17:49:07 +08:00
William Cheng
97ee910a2c update ruby rspec test (#16702) 2023-10-02 12:20:38 +08:00
Jonathan Ballet
cec5b8965a python: type generated client using Self (#16693)
* python: type generated client using Self

This doesn't offer a clear win but this helps for:

* Using modern types and making the typing intent clearer
* Decreasing the need for `from __future__ import annotations`, since a
  class can now refer to itself without using its name
* Using more `cls` to automatically refer to the class, instead of
  respecifying the class name every time

Self is available from Python 3.11 and is provided in typing_extensions
(since 4.0.0) as a fallback for older versions

See: https://peps.python.org/pep-0673/
See: https://github.com/python/typing_extensions/blob/main/CHANGELOG.md#added-in-version-400

* generate code
2023-10-01 23:31:39 +08:00
devhl-labs
bd1caf69cb [csharp][generichost] Handle all responses (#16635)
* handle all responses

* update the readme

* build samples
2023-10-01 23:28:14 +08:00
Jorge Rodríguez Martín
ee5d9f6ad3 [Java][Spring] Fix RequestPart/RequestParam handling on multipart request in reactive stack (#16535)
* Fix requestpart in reactive

* Update samples
2023-10-01 23:23:24 +08:00
AlanCitrix
2eca00f87d [Go] Adding response middleware (#16641)
* Add optional response middleware to go template

Also adds a request middleware which can return an error

* Re-adding newline to fix tests

* Fixing docs
2023-10-01 23:10:17 +08:00
Artem
039c1698b0 [php-symfony] Support for default scalar value of properties in model (#16605)
* Add support for default scalar value of properties in php-symfony models. Default values now returns in getter-functions

* Revert nullable type-hinting. Move default values from getter to property initialize.
Made changes in __construct:
Now value of properties rewrites only if key exist in $data array.
2023-10-01 21:32:32 +08:00
Jonathan Ballet
03781d3a93 python: remove aenum in favor of stdlib's enum (#16691)
The aenum dependency didn't provide any specific improvements over the
stdlib's enum module.
aenum also doesn't provide typing information at the moment.

This removes one dependency and will help for completing the typing of
the generated client.
2023-10-01 21:22:42 +08:00
Jonathan Ballet
56bc383dc1 python: type API client internal structures (#16692)
* In samples/openapi3/client/petstore/python, this reduces the mypy errors from 435 to 178 errors
* In samples/openapi3/client/petstore/python-aiohttp, this reduces the mypy errors from 381 to 124 errors
* In samples/client/echo_api/python, this reduces the mypy errors from 131 to 25 errors
2023-10-01 20:45:11 +08:00
William Cheng
ce4b2fe7bd [Python] add float to reserved word list (#16689)
* add float as reserved world

* clean up

* update samples

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

Co-authored-by: Jonathan Ballet <jon@multani.info>

* update doc

* uncomment test

---------

Co-authored-by: Jonathan Ballet <jon@multani.info>
2023-10-01 20:41:54 +08:00
William Cheng
3fcf5584c6 Add tests for python client with disallowAdditionalPropertiesIfNotPresent set to true (#16690)
* add tests for python client with different option

* update samples

* update tests
2023-10-01 17:34:52 +08:00
ふぁ
c6e9a4e1ae [python] change Private attr to Class vars (#16687)
* [python] fix TypeError

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update Private model attributes to Class vars

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] rename the List of test cases to ListClass

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] rename the List of v1 test cases to ListClass

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python] rename the List of v1-aiohttp test cases to ListClass

Signed-off-by: ふぁ <yuki@yuki0311.com>

* update samples

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-10-01 16:52:23 +08:00
ふぁ
e2f249ba35 [PYTHON] generate code based on pydantic v2 (#16685)
* [python] replace validator with field_validator

* [python] replace parse_obj with model_validate

* [python] replace dict with model_dump

* [python] replace construct with model_construct

* [python] replace __fields_set__ with model_fields_set

* [python] replace __fields_set__ in the test cases with model_fields_set

* [python] replace validate_arguments with validate_call

* [python] replace max_items, min_items with max_length, min_length

* [python] replace Config class with model_config

* [python] replace allow_population_by_field_name with populate_by_name

* [python] remove {{{classname}}}_ONE_OF_SCHEMAS

* [python] update test cases

* [python] update samples

* [python] fix typos in test cases
2023-09-29 16:45:46 +08:00
Aarni Koskela
67b129fda9 python: Remove usage of six (#16675) 2023-09-28 19:26:42 +08:00
Samson
3c4561ece2 Update configuration.md (#16683)
added additional example for --additional-properties command with comma (,) seperator
2023-09-28 19:26:02 +08:00
Jonathan Ballet
04fa53b692 python: generate Pydantic v2 + typing complete code (#16624)
* python: improve type generation with more specific typing

* Annotate function parameters

* Remove unused imports

* remove unused files

* remove temporary hack

* remove lock file

* fix Annotated import

* support Python 3.7

* Regenerate code with typing-extensions

* Fix setup.py

* More Pydantic v2 compatibility

* depend on pydantic v2

* fix client_echo tests

* fix JSON serialization

* Fix references

* Skip circular dependency tests for now

* Temporarily hide the "float" property

The "float" property aliases the "float" type and completely breaks the
model: all the properties that were "float" now become the type of the
"float" property instead.

* Fix errors

* Import Literal from typing_extensions

* Fix GitHub Action workflows

* Fix Python 3.7 failure

* Fix quotes

* Apply suggestions from code review

* Fix tests

* split model imports from other modules imports

* fix workflow

* Comment the array unique items convertion, remove set translation

* Replace alias usage
2023-09-28 19:13:14 +08:00
Ivan Vasheka
af352df10f fix: Fixes headers annotation for kotlin retrofit2 api template (#16680) 2023-09-28 19:01:36 +08:00
William Cheng
bb3096c99c Jaxrs jersey3 server (#16676)
* Introduced Jersey3 to JavaJerseyServerCodgen and its test class

* Added date ParamConverterProvider to new jersey3 resource directory

* Copied and adjusted jaxrs-jersey2 directory to jaxrs-jersey3

* Added unit tests for Jersey2 (jakarta|javax) and jersey3 (jakarta only)

* Added Jersey3 to markdown documentation

* Added several mustache files for Jersey3

* Further adjustments in JavaJerseyServerCodegen for Jersey3

* Removed tabs from JavaJerseyServerCodegen

* Further improvements in pom and web template

* Changed to swagger-jaxrs2-servlet-initializer-v2 within the projects pom

* Changed servlet-initializer to jakarta version

* Removed tabs in JavaJerseyServerCodegenTest.java

* Removed tabs from JavaJerseyServerCodegen

* Out commented Swagger 1.x part in api.mustache (see ApiImplicitParams)

* Exchanged import of javax* by jakarta* in file verify.groovy

* Changed Parameter annotations to Schema annotations

* Added web.mustache for jersey3

According to the 'Swagger 2.X Integration and Configuration' doc at
https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Integration-and-Configuration

* Adjusted README to point to ./openapi.json instead of ./swagger.json

* Added ./bin/configs/jaxrs-jersey-jersey3.yaml as requested

* Added new jersey3 example (see ./samples/server/petstore/jaxrs/jersey3

* Corrected formParams.mustache exchanged @FormParam by QueryParam

* Resolved ModelValidationException for Map query parameter

* Improved api.mustache (layout and deprecated class instantiation )

* Updated jersey3 example under ./samples/server/petstore/jaxrs/jersey3

* fix tests

* add jeresey3 to github workflow test

* add new workflow

* remove jersey3

---------

Co-authored-by: CDerksen <christian.derksen@uni-due.de>
2023-09-28 16:53:20 +08:00
Robbert van Waveren
beb67aa74d [JAVA] Prioritize mapped discriminators over generated (relates to issue #12777) (#15284)
* prioritize mapped discriminators over generated

* update samples with new ordering

* explain reason behind discriminator prioritization

* add new samples

* prioritize explicit mapping over any generated mappings

* update examples to reflect new logic

* update tests to reflect explicit mappings
2023-09-27 17:50:39 +08:00
William Cheng
4f8d61c05c fix kotlin enum name (#16666) 2023-09-27 13:45:59 +08:00
Graeme Wilson
fdd179e60a [csharp] Fix Issue #16660 System.NotImplementedException in ApiClient.cs with OAuth2 (#16661)
* Set authenticator against clientOptions instead of client

* Changes from generate-samples.sh ./bin/configs/csharp*
2023-09-26 11:28:16 +08:00
William Cheng
fce2dcbb37 [php-nextgen] Fix default value for array of items (#16654)
* fix form parameter default value

* fix only phpnextgen
2023-09-26 10:26:03 +08:00
William Cheng
6c1a937663 remove supportJava6 (#16664) 2023-09-26 10:14:36 +08:00
martin-mfg
1cff462d90 remove jersey 1 (#16646) 2023-09-26 09:10:11 +08:00
William Cheng
077744a7af [python-pydantic-v1] various improvements (#16658)
* rename, add tests

* remove library support in python pydantic v1 codegen

* copy tests

* copy echo api tests

* update samples

* update doc

* add back library support
2023-09-25 15:59:06 +08:00
Jonathan Ballet
3b95f701e5 python: copy the current Python generator into a "pydantic v1" generator (#16656)
* Copy the current Python generator into a "pydantic v1" generator

This generator will be deprecated over time and the normal generator will
focus on Pydantic v2.

* add missing doc
2023-09-25 12:13:24 +08:00
William Cheng
d58e68f8c0 update php samples 2023-09-23 15:28:43 +08:00
Julian Vennen
d165b8879f [php-nextgen] Use php type declarations (#16572)
* WIP: implement strict types

* Add parameter and return types to API methods

* Cleanup imports and some code, fix some phpdoc

* Add toDefaultValue override
2023-09-23 15:22:09 +08:00
Kyle Dodson
7d60a46bc7 Fix ASP.NET Core server type mappings (#16653) 2023-09-23 13:59:27 +08:00
Jonathan Ballet
e892d50075 Test with Python 3.11 (#16649) 2023-09-23 13:09:11 +08:00
martin-mfg
2ca99bdf8e use model class for request body with additionalProperties (#16613)
* try out simple fix

* add test case

* generate samples
2023-09-23 13:07:53 +08:00
Graeme Wilson
f99002a974 [csharp] fix authorization header casing issue (#16622)
* Capitalise auth scheme irrespective of token_type capitalisation

* Changes from generate-samples.sh

* Add comment to change
2023-09-23 12:59:51 +08:00
dependabot[bot]
19d8dbc7d5 Bump s4u/setup-maven-action from 1.9.0 to 1.10.0 (#16652)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  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>
2023-09-23 12:33:15 +08:00
William Cheng
7d154c988c [kotlin-client] add spotless plugin (#16645)
* add spotless plugin to kotlin client

* add spotless plugin to kotlin client

* use 6.13.0
2023-09-23 12:32:25 +08:00
James Choi
a68eba649f [typescript-axios]: handle explode query (#16435)
* [typescript-axios]: handle explode query

* [typescript-axios]: handle explode query based on isPrimitive

* Use `of` instead of `for...in`

* Update modules/openapi-generator/src/main/resources/typescript-axios/apiInner.mustache

---------

Co-authored-by: nightspite <n16h75p173@gmail.com>
Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2023-09-22 10:07:13 +02:00
Julian Kalinowski
55c580579e fix(#9682): API class has multiple imports of 'okhttp3.ResponseBody' (#16638) 2023-09-22 13:41:13 +08:00
William Cheng
0f2a27d3c5 add tests for useAbstractionForFiles option (webclient, resttemplate) (#16644) 2023-09-22 12:51:50 +08:00
Tom Deering
1a4b574a48 feat: [JAVA] [webclient] [#16589] Support file abstraction for WebClient responses (#16590)
* Support file abstraction for  WebClient responses

Issue-16589

* Fix issue flagged by tests. Yay tests!

Issue-16589

* Update generation of test file too

* Fix generated tests for webclient, resttemplate
2023-09-22 12:31:41 +08:00
Jonathan Ballet
e5a29b6328 python: run the Python samples tests with GitHub Actions (#16643) 2023-09-22 10:45:18 +08:00
Luckl
29033bf62a Fix incorrect @InputFile on inputSpecRootDirectory argument (#16420)
* 16419 fix incorrect InputFile on inputSpecRootDirectory argument of gradle-plugin

* 16419 fix incorrect InputFile on inputSpecRootDirectory argument of gradle-plugin

* 16419 fix incorrect InputFile on inputSpecRootDirectory argument of gradle-plugin

* 16419 delete unused files
2023-09-21 18:10:47 +08:00
William Cheng
1bcf79236f update samples 2023-09-21 17:19:35 +08:00
krasv
8f8fd85fd6 contribution #6123: add spring support for SSE conform specs (#16543)
* add spring support for SSE conform specs

see https://github.com/OpenAPITools/openapi-generator/issues/6123 for the ongoing discussion

* extend generator option documentation

* applied review suggestions

* regenerated samples

* regenerated docu

* fix code style: removed tabs
2023-09-21 17:08:24 +08:00
Beppe Catanese
254b359a56 Change default value of 'pathParamsAsVariables' config option (#16404)
* Change default value for config option

* Regenerate samples
2023-09-20 17:35:30 +08:00
William Cheng
9b39887eba move option to kotlin client (#16627) 2023-09-20 17:06:55 +08:00
William Cheng
16c6cff28f fix required parameter check (#16628) 2023-09-20 17:05:55 +08:00
William Cheng
25b67dd6bf Run tests for C# Echo API client in CI (#16626)
* run tests for C# echo api client in ci

* trigger build failure

* Revert "trigger build failure"

This reverts commit 844ec9a3d2.
2023-09-20 15:21:44 +08:00
MachineUserPTV
f530496f21 [dotnetcore] Implement QueryParameter deepObject style is missing for… (#15945)
* [dotnetcore] Implement QueryParameter deepObject style is missing for async function

* Add some csharp-restsharp tests

* add and fix tests

* restore missing files

* remove test with datetime problem

---------

Co-authored-by: Oliver Krug <Oliver.Krug@ptvgroup.com>
2023-09-20 14:57:33 +08:00
Jonathan Ballet
a2f6b8eae5 python: remove non-async code path from the aiohttp generator (#16601)
* python: remove non-async code path from the aiohttp generator

This removes all the non-async code from the aiohttp generator:

* all the methods that should be asynchronous are marked as `async`
* the `async_req` parameter is gone; calls are directly awaitables now
* the async calls into a thread pool are gone and the thread pool is
  gone too (now useless)

Closes: #15824
Closes: #5539
Related: #763
Related: #3696

* Fix empty line

* remove more
2023-09-20 10:48:31 +08:00
William Cheng
69bc994ba7 Update sponsor (#16619)
* add BairesDev to the sponsor list

* add dmTECH
2023-09-19 18:13:58 +08:00
William Cheng
df994b77f2 fix mapping options in gradle plugin (#16616) 2023-09-19 13:49:06 +08:00
William Cheng
bab67e44e4 add -SkipPublisherCheck (#16610) 2023-09-18 17:37:52 +08:00
William Cheng
5e8e2d7f6d Prepare v7.1.0 in master (#16608)
* prepare v7.1.0 in master

* update
2023-09-18 17:37:36 +08:00
William Cheng
5b720ded0c trigger build 2023-09-18 16:51:54 +08:00
William Cheng
875c3ecd3c 7.0.1 release (#16607)
* v7.0.1 release

* update readme

* update template

* update readme
2023-09-18 14:57:09 +08:00
Alex Kucksdorf
352182a7b9 fix(go-server): Allow optional request bodies (#16579)
* fix(go-server): Allow optional request bodies

Closes #16578

* chore: Run scripts

* chore: Remove unnecessary whitespace change

* fix: Use correct error
2023-09-18 13:59:28 +08:00
William Cheng
8c8be7482b Update java undertow to newer version (#16606)
* update java undertow to newer version

* update compiler plugin to newer version

* test undertow in circleci

* use 3.0 spec
2023-09-18 11:26:33 +08:00
Beppe Catanese
7d86adccc4 Add postman-collection generator to list (others) (#16599) 2023-09-18 10:38:22 +08:00
William Cheng
5f0d7053e4 Update go gin to newer version (#16593)
* update go gin to newer version

* update test
2023-09-15 15:50:25 +08:00
William Cheng
70bffffc5a remove option, update doc (#16592) 2023-09-15 15:01:21 +08:00
prashant-pant
4b87606665 Autoset constants (Required fields having single valid enum value) Java (OkHttp) Implementation of #16547 (#16550)
* Autosets the parameters with the only value specified as enum if the parameter is also marked as required

* Autosets the parameters with the only value specified as enum if the parameter is also marked as required

* Autosets the parameters with the only value specified as enum if the parameter is also marked as required for Java default client.

* Autosets the parameters with the only value specified as enum if the parameter is also marked as required for Java default client.

* Autosets the parameters with the only value specified as enum if the parameter is also marked as required for Java default client.

* Autosets the parameters with the only value specified as enum if the parameter is also marked as required for Java default client.
2023-09-15 14:41:17 +08:00
William Cheng
d671fe24ee better null check to avoid NPE (#16588) 2023-09-15 13:42:11 +08:00
Barczi
e75e5a2c57 [swift] remove unavailable property to fix Xcode 15 compiler error (#16504) 2023-09-14 11:36:01 +01:00
Kado Yasuyuki
ec59334904 Fix ValidateTask failure if recommend is not assigned (#16580)
* spec for recommend test

* add ValidateTask test for custom defined tasks

* add ValidateTask test for recommend option

* ValidateTask recommend default value is true
2023-09-14 13:33:06 +08:00
mol-pensiondk
82e3590eed Update AbstractCSharpCodegen.java (#16577)
Fixed a bug in postProcessAllModels, changing an anyOf to a oneOf.
2023-09-14 12:03:26 +08:00
Kado Yasuyuki
353507ef23 Java 11 (#16581) 2023-09-14 10:29:08 +08:00
William Cheng
9170e1030f fix enum in python flask (#16576) 2023-09-13 15:49:38 +08:00
William Cheng
4260c7aaf0 Better tests for php-nextgen (#16569)
* better tests for php nextgen

* add new files
2023-09-13 10:50:29 +08:00
William Cheng
781ccae722 add go echo api tests (#16570) 2023-09-13 10:49:05 +08:00
Charles Treatman
5b4d97016a [Go] return errors that happen while unmarshalling objects (#16525)
* [Go] return errors that happen while unmarshalling objects

* Update model samples

* More updates to samples

* Update failing Go store API test to match the one that passes
2023-09-12 23:42:54 +08:00
William Cheng
9c4f6c46f7 Fix integer default value with double quote (kotlin jaxrs server generator) (#16563)
* fix integer default value with double qutoe (kotlin jaxrs)

* add enum tests

* fix typo

* update samples
2023-09-12 17:38:51 +08:00
William Cheng
a5f79a7bdc [python] Update github workflow, use debug instead of warning (#16565)
* update github workflow, use debug instead of warning

* use debug instead of warn
2023-09-12 16:55:53 +08:00
William Cheng
70543126f2 fix jaxrs sample tests (#16566) 2023-09-12 16:51:05 +08:00
martin-mfg
d6695056fe add test case for nullable parent property (#16552)
* add nullable case to spring test spec

* generate samples for changed spring input

* add nullable case to general test spec

* generate samples for changed general input

* generate samples again

* generates samples again

* re-build from new sources, generates samples again
2023-09-12 15:59:58 +08:00
Philzen
196c2b1642 [maven-generator] Do not cleanup output if spec file is unchanged and skipIfSpecIsUnchanged=true (Fixes #16490) (#16491)
* Don't delete output directory if spec is unchanged

Resolves #16490

* Fix some typos
2023-09-12 15:42:19 +08:00
Dennis Melzer
c6d355e8d4 Fix spring scope property (#16553)
* Fix spring scope property

* Adapt test files
2023-09-12 14:58:26 +08:00
William Cheng
ad589c7700 better null check for schema types (#16564) 2023-09-12 14:58:05 +08:00
Julian Vennen
cd0fde41f1 fix parent class check in ObjectSerializer (#16558) 2023-09-12 10:25:28 +08:00
Julian Vennen
8b15d4820e Use backed enums in php-nextgen (#16556) 2023-09-11 20:06:50 +08:00
devhl-labs
1901bf23ea use TypeInfoResolver (#16548) 2023-09-11 20:05:02 +08:00
Justin Black
78f3b19b58 Removes spacether (#16551)
* Update README.md

* Update team.yml

* Update pom.xml
2023-09-11 12:49:10 +08:00
William Cheng
5ee18156db [Java-Feign]: model combining properties and additionalProperties (#16546)
* [Java-Feign]: model combining properties and additionalProperties (#6146)

* update samples

---------

Co-authored-by: François Dodé <francois.dode@dawex.com>
2023-09-09 16:11:54 +08:00
William Cheng
14cfca7b06 [java][feign] Update feign client dependencies to newer version (#16545)
* update javae feign client dependencies to new versions

* update feign
2023-09-09 15:39:02 +08:00
Julian Vennen
c354bf86ff Set minimal PHP Version to ^8.1 (#16542) 2023-09-09 14:46:49 +08:00
Andrew Tran
4e15e1a813 Update pom.xml (#16544) 2023-09-09 14:40:45 +08:00
William Cheng
18df6ed85f [Spring] fix nullable map properties (#16524)
* fix map in spring generators

* fix nullable map in spring generators
2023-09-09 13:30:21 +08:00
William Cheng
128d9da8a1 update smaples 2023-09-09 11:50:36 +08:00
Andreas Johnsen
75c2e934da add omitGradleWrapper option to kotlin-server code generator (#16528)
The added option removes the wrapper part of build.gradle, enabling the generated project to be used as a sub project. The same option from kotlin client was used as reference for this change.
2023-09-09 11:40:37 +08:00
William Cheng
c614b9d9b1 [Java][resteasy] Add tests to upload files (#16534)
* add test to upload files (resteasy)

* remove resteasy tests from github workflow
2023-09-08 15:57:10 +08:00
William Cheng
026fa514c3 update java resteasy samples 2023-09-08 15:12:54 +08:00
Alex Wood
6ea8ff3a17 [java-client][resteasy] fix multipart requests (#16517)
This patch fixes two issues with the Resteasy generated client code.
The first is the usage of a deprecated method, getFormData.  The fix for
this issue was originally conceived by @peter-seitz.

The second issue was a problem in how the Content-Disposition header was
being constructed.  If we had a file named "test.txt" and were uploading
it to a field named "myFile", the Content-Disposition header should look
like

Content-Disposition: form-data; name="myFile"

Instead, the code was using the file's name (rather than the field name)
in the name directive and the header looked like

Content-Disposition: form-data; name="test.txt"

The Content-Disposition header can take an optional directive, filename,
but I have not included that here as that directive is mostly useful for
file downloads and not uploads.
2023-09-08 15:07:49 +08:00
Tom Crasset
005566c6e3 [typescript] fix: allow 'additionalProperties: true' at top level (#16526)
* fix: allow 'additionalProperties: true' at top level

* refactor: use same call as other typescript generators
2023-09-08 08:46:15 +02:00
William Cheng
dee536f7f7 import Annotated if needed (#16521) 2023-09-07 14:36:45 +08:00
William Cheng
fbff32c5d7 update java resttemplate dep to newer versions (#16523) 2023-09-07 14:36:19 +08:00
William Cheng
d1808405ca mark oneOf form parameters as optional (#16512) 2023-09-06 17:27:44 +08:00
Diego Urban
3817e40f47 [JavaSpring] Generate deprecated property, annotation and javadoc. (#16493)
* [JavaSpring] Generate deprecated annotation and doc properties

* [JavaSpring] Generate deprecated for @Schema

* [JavaSpring] Add sample folder to workflow

---------

Co-authored-by: Diego Urban <d.urban@carepay.com>
2023-09-06 15:55:15 +08:00
Artur Neumann
270238e060 [PHP] convert data to string before giving it to preg_match (#16513) 2023-09-06 15:40:07 +08:00
martin-mfg
75ac4a2f58 Fix selection of unnecessary form parameter models (#16418)
* fix idea

* add unit test

* adjust warnings about form parameters
2023-09-06 15:23:04 +08:00
Robin Jonsson
acb798b58b [JavaSpring] Call parent fluent setters from child (#16497)
* Call fluent parent setter from child pojo

This closes #16496

* Generate new samples
2023-09-06 11:43:35 +08:00
William Cheng
b1ec110aa3 go: minor refactoring (#16508) 2023-09-06 11:02:09 +08:00
jessemyers-lettuce
b34a10aee7 python: ignore long lines for model descriptions (#16518)
Descriptions can easily exceed line-length limits because they are often
extracted from doc/comments strings, which may use unexpected formatting.

Python doc strings, in particular, are likely to use newlines, which mustache
does not preserve, causing descriptions to be condensed to a single line.
2023-09-06 10:48:43 +08:00
Mike Friesen
0192baed42 Issue: #16268 (#16507)
Bug fix AWS4Auth to support query parameters and updated to use AWS SDK V2 from V1
2023-09-06 09:45:02 +08:00
Toby Archer
ecb56f1e88 Fix Elixir connection.ex middleware usage and regenerate elixir sample (#16461) 2023-09-05 21:17:37 +02:00
jessemyers-lettuce
1b32088c2d python: use isinstance instead of type() (#16516)
Use of `isinstance` is preferred (and validated by common linters).
2023-09-05 23:45:18 +08:00
William Cheng
4b7a808a9f [openapi-normalizer] add a rule to better handle openapi 3.1 spec (#16495)
* add samples

* update samples

* openapi 3.1 beta support

* update .gitignore

* fix composed schema, add oneof, allof tests in opeanpi 3.1 spec

* add allof tests, more fixes

* add null check

* update artifact id

* better null check
2023-09-05 23:27:00 +08:00
Ivan Giuliani
065b48177b [Ruby] Fix incorrect escaping of Ruby forward slashes (#16474)
* [Ruby] Test correct escaping of pattern sequences

Ruby is not correctly escaping pattern sequences containing forward
slashes in their definition. This commit adds tests that verify the
correct behaviour of the code generator.

See issue #5582.

* [Ruby] Correctly escape patterns containing forward slashes

Ruby regexs are always generated as match patterns enclosed in slash
characters (i.e. using the `/pattern/` syntax). Regular expressions
defined in the OpenAPI declaration via the `pattern` attribute follow
[ECMA 262](https://262.ecma-international.org/5.1/#sec-15.10.1) which
means they already include the correct escaping of forward slashes as
far as Ruby is concerned.

The current Ruby codegen is incorrectly escaping all forward slashes,
which ultimately causes the generated code to include additional
incorrect escape sequences which cause the generated file to have an
invalid syntax.

This commit ports the same fix introduced in #1539 for the Python
codegen, as both Ruby and Python use perl-flavored regular expressions
so they behave in the same way when it comes to escaping forward
slashes.

Fixes #5582.
2023-09-05 20:12:29 +08:00
William Cheng
8608103c9f add name mapping features to lua client generator (#16511) 2023-09-05 20:03:27 +08:00
William Cheng
a9301a6c16 [perl] Add name mapping features to the Perl client generator (#16510)
* add name mapping features to perl client generator

* update samples
2023-09-05 18:39:38 +08:00
William Cheng
29f0d22713 [Powershell] add name mapping features (#16509)
* add name mapping features to the powershell generator

* update samples
2023-09-05 15:45:03 +08:00
devhl-labs
f3eb07408d [csharp] Support source generator (#16324)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* revert samples for easier merge master

* revert unnecessary change

* fixed formatting

* build samples

* reverting unintended commit

* fixing default value

* reverting unintended commit

* removed debugging lines

* removed unnecessary diff

* address comment
2023-09-05 10:18:08 +08:00
Théophane Charbonnier
4418b59b47 [java] Microprofile - fix optional array property's default value (#16500) 2023-09-05 10:15:10 +08:00
dependabot[bot]
616e8df8d0 Bump actions/checkout from 3 to 4 (#16505)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-05 09:50:08 +08:00
William Cheng
74cd73bd6c better null check in array default value (java) (#16503) 2023-09-05 00:40:17 +08:00
devhl-labs
c510ea4b3d Ensured enum entry name is unique (#16484)
* ensured enum entry name is unique

* ensured enum entry name is unique
2023-09-04 23:28:32 +08:00
Tomohiko Ozawa
09704951f0 [Java][resttemplate] Enable access token refresh (#16485)
* use supplier to enable refreshing token

* update samples

* fix param name and doc

* update samples
2023-09-04 23:23:22 +08:00
William Cheng
47a85e880b Add tests for http basic authentication in python client (#16488)
* add tests for http basic auth in python client

* add new files
2023-09-03 19:11:53 +08:00
devhl-labs
b59719a6ea [csharp][generichost] Minor formatting changes (#16482)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* revert samples for easier merge master

* revert unnecessary change

* fixed formatting

* build samples

* reverting unintended commit

* fixing default value

* reverting unintended commit

* move minor formatting changes to different pr
2023-09-03 16:20:12 +08:00
devhl-labs
dad677f63d [csharp][generichost] Remove unnecessary json options (#16483)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* revert samples for easier merge master

* revert unnecessary change

* fixed formatting

* build samples

* reverting unintended commit

* fixing default value

* reverting unintended commit

* removed unnecessary json option
2023-09-03 16:19:23 +08:00
William Cheng
6434c86afd [php-nextgen] add php-nextgen client generator (#16480)
* php-nextgen first commit

* [php] Set minimal PHP version to ^8.0 (#14500)

* Set minimal PHP version to ^8.0

* Fix php-nextgen config

* Change stability to BETA

* Add phplint package (#15054)

* [php-nextgen] Rename folders to follow PDS skeleton (#15102)

* Change lib -> src, test -> tests folder

This will make build compliant to PHP-PDS skeleton.
Ref: https://github.com/php-pds/skeleton

* Refresh samples

* Exclude composer.lock from codebase (#15105)

Since client generator is library and not a project it makes sense
to exclude composer.lock from codebase by default.

Ref: http://getcomposer.org/doc/02-libraries.md#lock-file

* Add @generated tag to DocBlocks (#15106)

This tag in draft status right now(PSR-19), but I think we can leverage
from it already.

Ref: https://github.com/php-fig/fig-standards/blob/master/proposed/phpdoc-tags.md#55-generated

* update samples, doc

* update samples

---------

Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
2023-09-03 16:16:58 +08:00
William Cheng
ebc9bcda44 [java][native] Add tests for oneOf form parameters (#16487)
* add tests for oneOf form parameters

* update samples
2023-09-03 16:15:54 +08:00
William Cheng
69c3f567ce [Swift] various improvements (#16481) 2023-09-02 20:13:01 +01:00
William Cheng
8c2de11ac2 [rust] fix nullable array (#16473)
* add tests for nullable array in rust

* fix nullable array in rust

* minor fix
2023-09-02 10:21:04 +08:00
William Cheng
a2177570b3 update python samples 2023-09-02 01:07:33 +08:00
jessemyers-lettuce
40731ed52d python: several typing and style improvements (#16378)
* python: several typing and style improvements

The generated (python) code fails with several standard validation tools,
including `flake8`, `mypy`, and `autoflake`. While fixing every possible
violation -- especially wrto typing -- woudl be a project, some of the
changes are fairly easy.

 - The `autoflake` tool picks up on unused imports. These can just be removed.

 - The `mypy` tool picks up on numerious typing violations, especially if set
   to its strictest mode. As a starting point, all functions ought to annotate
   a return type, including constructors, even if the return type is `None`
   because otherwise the functions are omitted from type checking and it's
   impossible to make incremental progress towards adding types.

 - The `flake8` tool mostly finds whitespace and line-length issues; while
   line-length standards very, the source already includes several flake8
   ignores, so it seems safe to add a few more.

* Add generated files

* Restore imports used by `AbstractPythonCodegen.java`

* Update generated files
2023-09-02 01:03:02 +08:00
devhl-labs
c0abeceb85 [csharp] Fixed enum values with whitespace (#16316)
* fixed enum values

* build samples

* build samples

* revert samples for easier merge master

* fixed while not changing other generators

* changed logging

* minor change
2023-09-01 10:11:11 +08:00
William Cheng
c74ed98282 Fix indent lambda using \n as line break (#16464)
* fix indent lambda using \n as line break

* update tests

* more fix
2023-09-01 09:07:14 +08:00
Cliford
71b33db7ee Fix global property separator (#16465) 2023-08-31 21:02:19 +08:00
William Cheng
07a5920b2f fix slash in python aiohttp files (#16463) 2023-08-31 15:59:18 +08:00
William Cheng
72da3b2c76 fix slash in php gneerator doc/config (#16462) 2023-08-31 15:22:38 +08:00
William Cheng
5954daea18 [powershell] update doc to use backslash (#16460)
* add backslash, forwardslash lambda

* update api doc
2023-08-31 14:29:01 +08:00
Davy Durham
4a1c70f2f1 fix: python client generator didn't respect range response specification (#16451)
* bug: python client generator didn't respect range response specification (e.g. "1XX", "2XX", etx.).  Return values tended to become None as a result

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-08-31 10:15:30 +08:00
William Cheng
e73143d777 fix cast exception with uuid default (c) (#16449) 2023-08-31 10:03:20 +08:00
William Cheng
a0350c6533 Fix cast exception when handling example/default of UUID/Long type (#16450)
* fix cast exception when handling uuid example/default

* more cast exception fix

* better fix in example generator

* better code format

* better code format
2023-08-31 09:42:38 +08:00
William Cheng
bceae5695e Fix model name being a type in TS abstract codegen (#16392)
* fix model name being a type in ts abstract codegen

* add a test

* better code format
2023-08-30 13:24:54 +02:00
Jim Simon
9cc5513a1c Fix Issue 16385 (#16387) 2023-08-30 14:23:53 +08:00
martin-mfg
20692aa891 Properly handle mappings and import mappings after processOpts (#16216)
* make Java imports overridable

* fix for other dateLibraries

* complete core fix

* adapt test - step 1/2

* add unit test

* adapt test - step 2/2

* remove accidentally added file

* final small clean-up
2023-08-30 13:48:51 +08:00
EdithBirrer1
35f5852cc0 Fix null request body issue (#16376)
* suggestion how to fix #9217

* removed check for versions V2/v3

* removed useless import
2023-08-30 13:40:35 +08:00
William Caine
134dc98a71 fix: Using Map.Entry to avoid "reference to Entry is ambiguous" (#16445)
* fix: Using Map.Entry to avoid "reference to Entry is ambiguous"

when spec defines a model Entry it conflicts.  Also rest of mustache
uses  Map.Entry to matching it

* fix: Map.Entry - update samples
2023-08-30 12:57:53 +08:00
William Cheng
8386a6eaaf [java] improve petstore tests with openapi v3 spec (#16447)
* regenerate tests in jersey2-java8 client

* update samples

* fix java google api client tests

* update java resteasy to use v3 spec for tests

* update java vertx to test with v3 spec

* update java resttemplate to test with v3 spec

* add new files

* regenerate jersey1 tests
2023-08-30 12:33:01 +08:00
William Cheng
611a60411b fix cast exception in uuid default value (julia) (#16438) 2023-08-29 20:42:49 +08:00
William Cheng
b1564d8002 Fix UUID default value cast exception (swift5) (#16436) 2023-08-29 12:32:01 +01:00
ChengDaqi2023
b14f99df92 update golang.org/x/net v0.2.0 to 0.7.0 (#16148) 2023-08-29 18:51:32 +08:00
William Cheng
5ab1badbef fix cast exception in default value of uuid (objc) (#16437) 2023-08-29 18:43:53 +08:00
William Cheng
9b6e6b3e49 Fix cast exception in uuid default value (haskell-http-client) (#16439)
* fix cast exception in uuid default value (haskell-http-client)

* better code format
2023-08-29 18:42:27 +08:00
William Cheng
b5867ebf2b fix cast exception in array default value (java gen) (#16434) 2023-08-29 14:31:24 +08:00
martin-mfg
020415facc add test to invoke each generator and catch simple crashes (#16425)
* add test

* remove unused imports

* remove SmartBear copyright line

* use 3.0 input
2023-08-29 13:35:45 +08:00
William Cheng
b457c3de70 fix uuid example cast exception in python generators (#16432) 2023-08-29 13:34:54 +08:00
William Cheng
1a654eba5c better handling of null pointer in CodegenSecurity (#16433) 2023-08-29 13:33:35 +08:00
Yohei Kitamura
56105fbbe6 [ruby] Not symbolize header param keys to allow the usage of underscore ("_") character (#16396)
* [ruby] Not symbolize header param keys to allow the usage of underscore ("_") character

* use lambda to convert header key to a string if underscore is included
2023-08-29 10:42:53 +08:00
William Cheng
55252f4b25 update ruby samples 2023-08-28 15:17:05 +08:00
jumpei.yokota
21cbd1ab71 [Ruby] align indentation (#16423) 2023-08-28 15:08:50 +08:00
Wojciech Trocki
6310ecdb0f issue15126: restore default support for golang generator (#15127) 2023-08-28 11:38:09 +08:00
Stephane Carrez
0dcd8b42b0 Fix 16417: [Ada] Server generation fails for some response types (#16421)
* Fix and improvement of Ada server code generator

- add support for EWS (Embedded Web Server)
- fix GNAT project to avoid depending on util_http but instead use util_aws or util_curl
- update server skeleton generation to handle more data types for the response
- add more explanation on the generated server README

* Rebuild the Ada client GNAT project
2023-08-28 10:18:50 +08:00
Robert Oschwald
ec835fbd94 Update kotlin-client okHttp3 api.mustache fixes 16410 (#16411)
- populate body into the ServerException message
2023-08-25 19:06:43 +01:00
Yoonho Go
0f8f18e727 Update api.service.mustache (#16406)
Fix miscast types. At compile time, it says it can't find toISOString because the parameter is of type string, because modifies the whole thing.
2023-08-25 10:41:22 +02:00
William Cheng
80121aa88f Prepare v7.0.1 (#16409)
* prepare 7.0.1 in master

* update doc
2023-08-25 16:11:29 +08:00
y-tomida
c7100b9e61 wrap operand listOf (#16408) 2023-08-25 08:37:48 +01:00
William Cheng
c37fa8a4e8 prepare v7.0.0 release (#16407) 2023-08-25 15:05:29 +08:00
martin-mfg
ad7ce7cba6 fix scalatra on Windows (#16395) 2023-08-25 09:25:22 +08:00
Baptiste Le Morlec
26899ee59b Adding model type hints for Python Flask (#16382)
Co-authored-by: Baptiste LE MORLEC <baptiste.lemorlec@stryker.com>
2023-08-24 20:49:28 +08:00
Felipe Crochik
9cda7b0965 use propertyBaseName instead of propertyName (#15668)
Since it is looking at the payload before the transformation it should use the "original name" and not the "generated name" for the property
2023-08-24 11:54:52 +02:00
Dan Leehr
35f6eec71d Add supportedMediaTypes needed for kubernetes client (#16386)
* Add supportedMediaTypes needed for kubernetes client

https://github.com/kubernetes-client/javascript/issues/893

* Add generated files
2023-08-24 08:43:50 +02:00
William Cheng
91fc151451 Add mapping features to Julia generators (#16370)
* add mapping features to julia generators

* additional changes required for mapped names (#16383)

---------

Co-authored-by: Tanmay Mohapatra <tanmaykm@gmail.com>
2023-08-24 10:09:54 +08:00
devhl-labs
7e67e3aafb Lambda refactors (#16369)
* started source generator

* copy the options

* fixed visibility

* added new sample

* discarded changes to existing samples

* discarded changes to existing samples

* build new sample

* changed package name due to file path length limit

* reverted changes to manual tests

* fixed all new manual tests

* inject contexts into api

* only one JsonConstructor

* fixed spacing

* reverted samples changes

* reverted more unrelated changes

* reverted more unrelated changes

* minor refactors
2023-08-24 09:56:56 +08:00
dependabot[bot]
da411b3f3f Bump s4u/setup-maven-action from 1.8.0 to 1.9.0 (#16388)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.8.0...v1.9.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  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>
2023-08-24 09:54:37 +08:00
Robert Schuh
6146129bdc [typescript] add http info calls to access headers (#16260)
* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

* [typescript] add http info calls to access headers

---------

Co-authored-by: Robert Schuh <robert.schuh@valtech.com>
2023-08-23 11:25:27 +02:00
Lezenford
3e95001939 [Kotlin-Spring] fix arrays response api after generation (#16296)
* issues/16295 fix arrays response api after generation

* fix samples

* fix samples

---------

Co-authored-by: Lezenford <alex.v.plekhanov@gmail.com>
2023-08-23 10:52:15 +08:00
Anis
00de163655 [python-flask] adopt python3.5+ syntax (#16375)
* adopt python3.5+ syntax

removing some residual python2 code, since it is not supported anymore, like:
- no need for `six` anymore
- no need for encoding utf8 in top file
- remove `object` inheritance in base model
- remove absolute import `__future__`

* generate samples

applying the new templates

* update python ignore pattern

ignore all the `.venv` folders
2023-08-23 10:42:40 +08:00
Kevin B
646ec8ba41 Fixing spelling of circiut => circuit (#16381) 2023-08-23 10:41:05 +08:00
Martin Kresse
bb507d5e6c allow check for path parameters in matrix style (#16331)
* isMatrix added

* tests for isMatrix flag added
2023-08-22 20:36:16 +08:00
William Cheng
85d7b38084 Add mapping features to Abstract C++ Codegen (#16373)
* add mapping feature to cpp abstract codegen

* better code format
2023-08-22 17:50:41 +08:00
William Cheng
9c9c45a73e add mapping features to c client generator (#16371) 2023-08-22 14:58:41 +08:00
lance-yuan-igt
32fe92fee9 [BUG] C# Aspnetcore Adding Name property for header parameters (#16360)
* Adding Name property for header param

* update samples

* update samples

* update doc

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-08-22 09:39:18 +08:00
clement-brodu
1a458d3e0b fix: memory leak with restclient (#13961) (#16365) 2023-08-21 20:26:37 +08:00
William Cheng
656d2c2263 remove flash codegen (#16372) 2023-08-21 17:20:45 +08:00
William Cheng
d9423a4edb [PHP] 6.0.x make php implementation depend on meta packages for http client (#16368)
* add psr-18 support

* update doc

* fix test
2023-08-21 10:45:51 +08:00
Filip Šmíd
2815e6a538 [BUG][kotlin-client][multiplatform] Write data to packet (#16367)
* fix: write data to packet

* docs: update samples
2023-08-21 10:31:49 +08:00
Chris
7f7717498f [BUG] [java][jersey2/3] clientBuilder gets overwritten after call to customizeClientBuilder (#16355)
* [java][jersey2/3] call customizeClientBuilder after default config init

* regenerate the samples
2023-08-20 22:50:05 +08:00
devhl-labs
a600ef0ded only one JsonConstructor (#16361) 2023-08-20 22:49:40 +08:00
William Cheng
e1b1b7d0c7 [csharp] JsonConverter.mustache - fix propertyName variable conflict (#16356)
* JsonConverter.mustache - Obfuscate "propertyName" variable to rare name "__jsonPropertyName__" to avoid conflict with generated variables

obfuscate "propertyName" variable, fixes issue if #allVars contains a variable named "propertyName" conflicting with the declared variable

* prefix local variable with localVar

* remove eol

* minor fix

* update

---------

Co-authored-by: SDP190 <sprizant1@gmail.com>
2023-08-19 23:33:05 +08:00
William Cheng
4140b387fb update go samples 2023-08-19 23:32:44 +08:00
Wouter Wijsman
a55453b5f7 Update go-gin-server templates to return a configurable library (#10479)
* Update go-gin-server templates to return a configurable library

Before this change, the user would be required to make changes in the
generated code. This makes it really hard to update the API and the
documentation at the same time. With this change, the generated code can
be imported as is and used. The user just needs to set the handler
functions for each endpoint.

* Use spaces instead of tabs for api files

* Use space instead of tab for ApiHandleFunctions in go-gin-server

* Update samples for go-gin-server
2023-08-19 18:42:58 +08:00
YusukeOba
141b3d4e0b [kotlin-client][multiplatform] HttpClient can now be passed as an argument to ApiClient (#16343)
* [kotli-client][multiplatform] Added to inject HttpClient into the argument of ApiClient

* [kotlin-client][multiplatform] update generated samples
2023-08-19 17:05:11 +08:00
William Cheng
ff19825610 [java] Remove hardcoded arrays in template (#16340)
* remove hardcoded arrays in template

* better model import in java client

* update

* better code format

* minor refactoring

* update
2023-08-19 10:20:48 +08:00
William Cheng
b006b1b128 Improve documentations (#16346)
* improve doc

* update urls
2023-08-19 10:20:02 +08:00
Simon Wegendt
778a53a406 [Kotlin Client] Implement octet-stream/binary (#16341)
* Implement octet-stream/binary for Kotlin client code generator

* Fix OkHttp3 generator flavor
2023-08-17 10:40:22 +01:00
William Cheng
e69c58623f update samples 2023-08-17 12:03:43 +08:00
Perdjesk
a9a4aa4bf8 Array default value requires import of java.util.Arrays (#16246) 2023-08-17 11:49:49 +08:00
YusukeOba
c3c0188bf4 [kotlin-multiplatform] Fixed build error when setting formdata in array (#16329) 2023-08-15 21:07:10 +08:00
YusukeOba
2e17653ae8 [kotlin-client][multiplatform] Added support enum query parameter (#16327)
* [kotlin-multiplatform] add enum parameter support

* [kotlin-multiplatform] update generated samples
2023-08-15 17:10:26 +08:00
William Cheng
4f6a25f4b5 [JAVA] [WebClient] Handle list of String special case in WebClient generator (#16326)
* [Java][WebClient] support string list return type

* [Java][WebClient] add test

* [Java][WebClient] support string list return type

* [Java][WebClient] support string list return type

* fix webclient auto-generated test files

---------

Co-authored-by: Gavin.Wu <gavin.guohao.wu@kingland.com>
2023-08-15 13:53:04 +08:00
devhl-labs
76bb8a40d8 [csharp] Fixed model property data type (#16315)
* fixed model property data type

* build samples
2023-08-15 09:57:00 +08:00
Yonatan Karp-Rudin
35fec8da0e Update the SumUp logo to the new logo (#16323)
This commit only updates the sumup logo to the latest logo

Co-authored-by: Yonatan Karp-Rudin <yonatan.karp@sumup.com>
2023-08-15 09:56:23 +08:00
Yonatan Karp-Rudin
c3c7a547b7 Add SumUp to the list of clients (#16322)
This commit adding SumUp into the list of companies that are using OpenAPI Generator.

Co-authored-by: Yonatan Karp-Rudin <yonatan.karp@sumup.com>
2023-08-14 19:57:48 +08:00
William Cheng
bcd934d15a fix missing comma in kotlin api client (#16320) 2023-08-14 14:54:06 +08:00
William Cheng
f1bacd23e7 remove python flask py2 samples (#16319) 2023-08-14 13:34:25 +08:00
Yassine Ilmi
931197a1cd Clean-up - Unnecessary trailing underscores in Python Flask, AIOHttp, BluePlanet (#16249)
* Remove trailing underscore in security_controller_.py and base_model_.py

* Regenerating sample files

* Clean-up files with trailing underscore in samples

* Update security extension to use the new security_controller

* Regenerate unmaintained samples
2023-08-14 13:26:24 +08:00
devhl-labs
47020f10b7 fixed class definition (#16318) 2023-08-14 13:23:44 +08:00
devhl-labs
ef9520f989 [csharp] Fixed operation nested return type (#16314)
* fixed operation nested return type

* more robust fix
2023-08-14 13:07:36 +08:00
Yonatan Karp-Rudin
83af019603 Fix Retrofit template with Jackson for Kotlin (#14239)
* Fix Retrofit template with Jackson (Fix #8147)

This commit amends the `ApiClient` template for Retrofit. It fixes a bug where the Retrofit client uses Jackson as the serialization library.

Until now, the `ApiClient` could not be compiled when using the Jackson library (default in SpringBoot applications), as the constructor of the class had the following parameter:

`private val serializerBuilder: Builder = Serializer.Builder,`

The change done in the commit, is to ensure that in case of Jackson, the right property of the `Serializer` class is assigned

* Add sample code for `kotlin-jvm-jackson`

This commit adds a sample code for the `kotlin-jvm-jackson` generated code to test the changes on CI

* Update kotlin code samples for CI

This commit only runs the command `bin/generate-samples.sh bin/configs/kotlin-*` to ensure that all code samples are up-to-date and CI can pass successfully.
2023-08-14 10:06:49 +08:00
Sanjay Marreddi
2ef888845d Update CMake to fix cpprest linking for UNIX (#14199) 2023-08-12 17:32:49 +08:00
Vincent Giersch
604239abba feat(swift5): allow to swift build in linux (#15060)
* feat(swift5): allow to swift build in linux

* chore(ci): add .github/workflows/samples-swift.yaml

* feat(swif5): bump Alamofire to 5.7.0

* chore(ci): run in macos all swift sample clients
2023-08-12 16:24:01 +08:00
Théophane Charbonnier
057bc8e626 [Java][Client] Microprofile Jackson serialization (#15940) 2023-08-12 12:15:59 +08:00
devhl-labs
1878c45be5 moved regex processing (#16309) 2023-08-12 11:29:19 +08:00
devhl-labs
f4dfd99566 removed nonexistant account (#16310) 2023-08-12 11:28:59 +08:00
Emanuele Saccomandi
8f9e6432f5 fixed zapier removeKeyPrefixes method (#16305) 2023-08-11 19:09:54 +08:00
William Cheng
2635b52b42 [go] fix issue that tempfile is not deleted (#16303)
* #15131 Issue: Tempfile is not deleted

* delete tempfile in go client

---------

Co-authored-by: Aniruddh <aniruddhjoshi94@gmail.com>
2023-08-11 14:40:56 +08:00
William Cheng
8885701648 minor enhancements to ts rxjs generator (#16302) 2023-08-11 11:10:33 +08:00
William Cheng
9d100d8f6b Fix removing dollar sign for name sanitization (#16301)
* fix replacing dollar sign

* try to add tests
add list import
add missing imports
import OpenAPI
fix import ?
fix import?
rename methods
test test fix
test python test fix
fix??
fix??

---------

Co-authored-by: Joshix-1 <57299889+Joshix-1@users.noreply.github.com>
Co-authored-by: Joshix-1 <joshix.dev@mailbox.org>
2023-08-11 10:40:47 +08:00
rainmanhhh
a33c353a26 [typescript-rxjs] Update servers.mustache (#9449)
* Update servers.mustache

add hasOwnProperty checking; use const instead of var

* use 4 spaces instead of tabs
2023-08-11 10:30:40 +08:00
Harish Karumuthil
cc496ff2eb Feature suppoert dart sample code in html2 generator (#7908)
* Add dart example

* Run `./bin/generate-samples.sh ./bin/configs/other/html2.yaml`
2023-08-11 10:18:41 +08:00
William Cheng
590430c774 Issue#15129 Feature Request Description (#16299)
Co-authored-by: Aniruddh <aniruddhjoshi94@gmail.com>
2023-08-11 09:42:47 +08:00
William Cheng
3ad3cf7dd9 add tests for array of number in java okhttp client (#16298) 2023-08-10 23:37:12 +08:00
n1t4chi
e8160d8d7d Improve type reference in toEntity call in order to fix issue with LinkedHashMap being returned instead of maped object to POJO (#16293) 2023-08-10 23:22:08 +08:00
William Cheng
fd12bb3508 [python] Fix data type (#16291)
* fix data type in python client codegen

* add model mapping feature
2023-08-10 23:05:35 +08:00
Marc Miltenberger
7a7309edb8 Fix Java GSON client not accepting optional null arrays (#16213)
* Add check for null JSON array in GSON Java api client

* Update samples
2023-08-10 22:58:23 +08:00
William Cheng
36cb3ce6b9 add tests, workflow for haskell samples (#16290) 2023-08-10 10:42:57 +08:00
Masahiro Sakai
9f051ec640 [haskell-servant][haskell-yesod] fix specialCharReplacements (#16289)
HaskellServantCodegen and HaskellYesodServerCodegen modify
specialCharReplacements by replacing its keys: backslash ("\\") with
"\\\\" and "\"" with "\\\"".

It seems that those replacements were for using the keys in string
literals in the specialChars table in the generated code. However,
modifying the keys causes the substitution of those characters in
field names not to work, making generated code syntactically invalid.

Since the specialChars table has already been removed, we can safely
stop modifying the specialCharReplacements.
2023-08-10 09:43:02 +08:00
Rodrigo de Almeida - RMA3
d955ff6988 Add annotations to the operation - case permission validation - Fix 12219 15822 (#16259)
* fix #12219 #15822

* add test with array

* update samples

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-08-09 17:21:57 +03:00
William Cheng
84d619b883 fix travis build (#16288) 2023-08-09 16:28:59 +08:00
André Roaldseth
75b04bb965 Ensure enum classes toString() returns kotlin.String (#16247)
When creating an enum where a valid value is `String`, the override of toString() will be the wrong type.

Simply using `*kotlin*.String` will allow using `String` as a value in an enum.
2023-08-09 15:09:21 +08:00
William Cheng
6a8039c672 update doc 2023-08-09 14:38:56 +08:00
Jonathan Wenger
d9001b8a6f Add additional reserved words for java and csharp (#16276)
Co-authored-by: Jonathan Wenger <jonathan.wenger@avalara.com>
2023-08-09 14:30:22 +08:00
ふぁ
a3d14c87c4 [Dart/CSharp/Python] replace File.separator with slash (#16282)
Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-08-09 14:28:31 +08:00
William Cheng
3f8bce6695 update samples 2023-08-09 14:27:57 +08:00
martin-mfg
3ed59cd593 [spring] reactive: fix Content-Type (#16228)
* don't set content-type to client's value

* revert manual sample change

* better fix

* generate samples

* cover 3rd case

* add new test endpoint
2023-08-08 15:52:18 +03:00
William Cheng
3d064c6115 [Python] refactor pydantic model methods into abstract python codegen (#16279)
* refactor methods from python client to abstract python codegen

* refactor regular expression methods

* more refactoring

* more refactoring
2023-08-08 20:42:43 +08:00
ふぁ
f3b930c48c [python-nextgen] Fix noqa: E501 position (#16280)
* Fix `noqa: E501` position

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-08-08 20:42:12 +08:00
KaiNative
7703560e73 Updating Maven-Plugin Dependencies (#16274)
* bugfix-15672 updated mavenplugin dependencies

* bugfix-15672 re-added maven-compat since needed by maven-plugin-testing-harness

* bugfix-15672 explicit dependency of plexus archiver in a new version due to CVEs in version included from maven-plugin-testing-harness (2.2)

---------

Co-authored-by: Kai Neuhaus <kneuhaus@communicode.de>
2023-08-08 15:06:50 +08:00
William Cheng
c377a11c57 update samples 2023-08-08 14:57:53 +08:00
devhl-labs
de8f846666 [csharp] Improved regex support (#16269)
* improved regex support

* better parsing of options

* better handling of options

* spacing change

* typo

* rename the x-modifier- extension

* trivial change

* added to the sample
2023-08-08 11:40:20 +08:00
William Cheng
362b596fce update kotlin client dependencies (#16273) 2023-08-08 10:06:08 +08:00
William Cheng
29c5d6109a mark java-okhttp3 option as deprecated in kotlin client (#16272) 2023-08-08 10:05:52 +08:00
William Cheng
a9cfa1f391 [kotlin-spring] minor bug fixes (#16270)
* kotlin-spring: minor bug fixes

* comment out tests
2023-08-08 10:05:34 +08:00
William Cheng
50ee574d1f [kotlin] Escape dollar sign in baseName (#16266)
* escape dollar sign in baseName (kotlin)

* escape dollar sign in kotlin server jaxrs-spec template

* add new files

* update samples
2023-08-08 10:05:15 +08:00
Ween Jiann
2b44d4ed93 [go-server] Partially reverts and fix #15185 (#16258)
* Partitally reverts #15185

* Remove unused import

* Set zero value if param is empty

* Refactor samples, add test config

* Add tests

* Clean up

* Fix test
2023-08-07 20:43:30 +08:00
William Cheng
4e5bd8a30a add martin-mfg to java, spring (#16271) 2023-08-07 15:02:55 +08:00
martin-mfg
6a3f0ffb37 [spring] fix void return type for useResponseEntity: false (#16230)
* fix return type

* add new sample config as test for the fix

* update samples
2023-08-07 14:53:05 +08:00
William Cheng
097385bde6 [bug][kotlin] sanitize model names according to convention (#16267)
* [bug][kotlin] sanitize model names according to convention

* [bug][kotlin] revert to english word sanitization except minus

---------

Co-authored-by: Theo Meneau <tmeneau@clearcover.com>
2023-08-07 14:38:29 +08:00
Martin Visser
f6ac603e15 [kotlin] Add fix for wrongly encoded backticks for reserved words when generating kotlin-spring server code (#14027) 2023-08-07 09:32:00 +08:00
William Cheng
9322c2fc29 fix default value, add nullable support (#16265) 2023-08-06 20:08:22 +08:00
Patrick Del Conte
350ec2a763 [kotlin-server][jaxrs-spec] treat parameters with a default value as non-null (#14413) 2023-08-06 15:55:27 +08:00
Sebastian Ziegler
17194f3ff0 Fix enum headers values while using Kotlin jvm-okhttp (#16133) 2023-08-06 15:37:33 +08:00
William Cheng
5b2ceac93d fix anyOf in handling primitive types in java client (#16264) 2023-08-06 13:48:13 +08:00
Noor Dawod
1d4a6d713f Dart deep-equals (#16251)
* Add support for deep equality for complex types.

* Use version of collection used by the SDK.

* Use a const instead of final.

* Use deep equality only for arrays and maps.

* Generate pet store sources.

* Downgrade version of dependency.

* Expose `DeepCollectionEquality` instance.

* Revert last change.
2023-08-06 13:12:45 +08:00
William Cheng
f0b100a9ad Add a test for BigDecimal parameter in java client (#16263)
* add a test for BigDecimal parameter in java client

* update tests
2023-08-06 12:14:21 +08:00
karzang
e299382a42 [Java][Client] Fix handling of 'number' types in oneOf (#16202) 2023-08-06 11:16:50 +08:00
William Cheng
d9e32a79a5 Support library option via additionalProperties (#16242)
* set library option obtain from additionalProperties

* test library

* update samples

* remove old files
2023-08-05 13:41:04 +08:00
William Cheng
6f05655101 Add mapping features to R client generator (#16252)
* add mapping features to r client generator

* update samples
2023-08-05 13:34:57 +08:00
William Cheng
d1f23ef663 add mapping features to crystal client generator (#16253) 2023-08-05 13:34:34 +08:00
William Cheng
f6fb83878b [Default] update isAdditionalPropertiesTrue tag to cover more types (#16227)
* enhance additional properties support

* update samples

* update tests

* add more tests

* update samples

* fix samples
2023-08-05 13:32:43 +08:00
Ken Kaizu
c080660cc1 [Scala] scala-akka-http-server support pekko-http using useApachePekko flag (#16255)
* introduce useApachePekko flag into scala-akka-http-server

* useApachePekko flag in scala-akka-http-server templates

* introduce scala-pekko-http-server samples
2023-08-05 13:32:02 +08:00
William Cheng
82516c75d2 Fix implements in oneof, anyof templates in java okhttp client generator (#16241)
* fix implements in oneof, anyof templates in java okhttp

* add tests

* update samples
2023-08-03 21:09:00 +08:00
hai22yu23
cb56e50e0c support 32bit in postdata (#16238) 2023-08-03 18:13:42 +08:00
Masahiro Sakai
45d8027bb4 [haskell-servant][haskell-yesod] Use table-based conversion for field name conversion (#16232)
* [haskell-servant][haskell-yesod] use table-based conversion for field name conversion

Current fieldLabelModifier implementation always produces uncapitalize
name, but it is inappropriate if the original JSON field name begins
with a capital letter.

* [haskell-servant][haskell-yesod] regenerate samples
2023-08-03 13:29:33 +08:00
William Cheng
81c398e530 add model name mappings support to the elixir client generator (#16233) 2023-08-02 17:26:52 +08:00
William Cheng
1d39902930 Add name mappings support to JS client (#16234)
* add name mappings support to JS client

* update doc

* udpate doc

* update doc
2023-08-02 17:26:23 +08:00
William Cheng
d67f5ddeff Fix circleci node 4 failure (#16236)
* fix circleci failure

* remove debug

* fix
2023-08-02 15:13:13 +08:00
martin-mfg
0ce1fef016 fix 2 sonar-reported bugs (#16229) 2023-08-02 14:27:27 +08:00
William Cheng
4602f18ca8 Add model name mapping feature to C# codegen (#16209)
* add model name mapping feature to C# codegen

* rename file

* update samples

* update doc
2023-08-02 10:06:11 +08:00
William Cheng
3278eea9a4 Add tests for #16217 (#16221)
* add tests for #16217

* add new files
2023-07-31 11:03:36 +08:00
ふぁ
77311c3d76 [python-nextgen] Fix allOf missing imports (#16217)
* [python-nextgen] fix allOf missing imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove circular import

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] Fix circular refs

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-31 10:04:53 +08:00
Antti Leppä
c6a100cce2 Added support for using mutiny instead of coroutines for asynchronous kotlin server APIs (#15262) 2023-07-31 09:50:44 +08:00
William Cheng
bf181906e0 [Swift] property, parameter name mapping support (#16207)
* add property, parameter naming support to swift5 generator

* revert change

* remove files

* update samples
2023-07-30 22:44:19 +08:00
William Cheng
f3b3de2a29 add property, parameter name mapping to php generators (#16206) 2023-07-30 21:58:05 +08:00
William Cheng
243b5569ef [Rust] add property, parameter name mapping (#16205)
* add name, parameter mapping to rust generators

* add, fix test

* undo cahnge
2023-07-30 21:57:35 +08:00
William Cheng
526ca78e79 add tests for #16199 (python client) (#16220) 2023-07-30 01:19:11 +08:00
ふぁ
48ff57b4f6 [python-nextgen] fix #16010 circular refs lead to no imports (#16199)
* [python-nextgen] fix #16010 circular refs lead to no imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unnecessary Postponed annotations

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unnecessary Postponed annotations

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-30 00:42:46 +08:00
William Cheng
d41fe12c1f [python] Add tests for simple object with additional properties (#16218)
* add tests for simple object without additional properties

* update logic
2023-07-29 11:43:37 +08:00
ふぁ
d9fc039dcf [python-nextgen] fix #16151 Disallow additional properties if not present - missing Any and Dict import (#16208)
* [python-nextgen] fix #16151 Disallow additional properties if not present - missing Any and Dict import

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unwanted imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] remove unwanted imports

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-29 10:51:28 +08:00
ふぁ
e411b2ac0a [python-nextgen] Add type to actual instance (#16204)
* [python-nextgen] add type to actual_instance

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] fixed unnecessary type conversions

Signed-off-by: ふぁ <yuki@yuki0311.com>

* [python-nextgen] update samples

Signed-off-by: ふぁ <yuki@yuki0311.com>

---------

Signed-off-by: ふぁ <yuki@yuki0311.com>
2023-07-29 10:08:06 +08:00
Marc Miltenberger
adac3b127f Support for multipart/form-data; charset="utf-8" in Java GSON Generator (#16211)
* Support for multipart/form-data; charset="utf-8"

Previously, it was only checked for an exact equal string, which failed when there were additional options such as charset.

* Update samples
2023-07-29 00:22:19 +08:00
William Cheng
7ca84e5c88 Add name, parameter name mapping to abstract go codegen (#16171)
* add name, parameter name mapping to abstract go codegen

* better code format
2023-07-28 09:57:23 +08:00
William Cheng
5d2e80977b add name, parameter mapping to scala generators (#16194) 2023-07-28 09:51:50 +08:00
William Cheng
954d41b9aa [C#] Add property, parameter naming support (#16196)
* add property, parameter naming support to c# generators

* update

* fix workflow

* update test

* update
2023-07-28 09:51:33 +08:00
William Cheng
184dfd2edd [Kotlin] Add name, parameter mapping support (#16193)
* add name, parameter mapping support to abstract kotlin

* remove files
2023-07-28 09:42:08 +08:00
William Cheng
86cf4f1eb1 add mapping option to ada codegen (#16190) 2023-07-28 09:41:43 +08:00
Masahiro Sakai
f6a819686d [haskell][haskell-yesod] Fix special char replacements (#16197)
* [haskell][haskell-yesod] remove fixOperatorChars()

fixOperatorChars() does not change input strings since special
characters have already been replaced in DefaultCodegen.fromModel().

* [haskell][haskell-yesod] do not prefix with quote ("'") when generating removeFieldLabelPrefix table

We switched from the conversion done by fixOperatorChars() to the
conversion done by DefaultCodegen.fromModel() and the latter does not
insert quote characters. So We modify the removeFieldLabelPrefix table
to conform the new mapping.

* [haskell][haskell-yesod] remove forParsing parameter from removeFieldLabelPrefix function

Aeson's fieldLabelModifier always convert Haskell field names to JSON
field names, whether at parse time or not. (Note that stripPrefix and
uncapitalize do not take such parameter)

* [haskell][haskell-yesod] perform replaceSpecialChars after stripping prefix

Because replaceSpecialChars can corrupt prefix if the prefix contains
a replacement string of a specfial character as a substring.

* [haskell][haskell-yesod] regenerate samples
2023-07-28 09:35:46 +08:00
William Cheng
d7311cd5cd [Ruby] add property, parameter name mapping (#16191)
* add property, parameter name mapping support to ruby generators

* update samples
2023-07-27 09:48:53 +08:00
Adam Shannon
90eacb685c fix(golang): make sure xml.Encoder is closed (#16141) 2023-07-26 15:48:46 +08:00
William Cheng
30c38ed7ad fix potential npe in ada codegen (#16188) 2023-07-26 14:12:45 +08:00
William Cheng
596487aa6c update doc, customization.md (#16189) 2023-07-26 14:11:36 +08:00
Max Bowsher
7d6e7e4e75 Purge obsolete Go codegen code re github.com/antihax/optional (#16185)
I spotted a mention of `github.com/antihax/optional` in
AbstractGoCodegen. I was curious and investigated. However, it turns out
that this code is an obsolete remnant of the go-deprecated generator
removed before 6.0.0, so is now just a false lead. This PR cleans it up
so no-one else has to go down the same investigative pathway.
2023-07-26 09:53:14 +08:00
Michael Prankl
a1558e3861 Add it@M to users list (#16182) 2023-07-25 23:01:55 +08:00
William Cheng
7ad8f6ef29 [Ada] remove static from logger (#16181)
* remove static from ada logger

* trigger build

* fix
2023-07-25 20:18:21 +08:00
Tom Milligan
f32be9df0b rust: fix rust generation of optional additionalProperties in openapi 3.1.0 (#16143)
* rust: add regression test for 16119

* rust: fix rust generation of optional additionalProperties in openapi 3.1.0

* [review] fix gha sample path
2023-07-25 19:39:26 +08:00
William Cheng
9aa15d9f09 [ruby] Add tests to operation servers in ruby client (#16179)
* add tests to operation servers in ruby client

* update samples

* revert change in spec, remove invalid? check in anyof model

* fix hsot table

* fix circleci config

* fix

* fix host table

* fix host table

* minor fix

* fix

* reorder

* update

* fix
2023-07-25 19:29:06 +08:00
Alexey Makhrov
24656156ed [typescript-angular] Add samples with composed schemas (#16156)
* Setup typescript-angular samples for various composed schemas

* generate samples

* restructure and regenerate samples

* add compilation tests

* update FILES in samples

* debug commit - verify that compilation will fail in CI

* revert debug commit

* remove unnecessary dependencies
2023-07-25 10:53:38 +02:00
Cameron Koegel
54d996732f [Ruby] Fix Operation Servers (#16144)
* [Ruby] Fix Operation Servers

* user `server_index` instead of `index`

* use nil as default

* add tests

* revert tests

* add tests to custom file

* add test file to ruby-faraday
2023-07-25 12:18:23 +08:00
William Cheng
66155d622c update c# samples 2023-07-24 16:04:11 +08:00
Luca
584f8448ee [Java][Native] Fix multipart builder files array (#16055) (#16094)
* [Java] Fixed bug in native client generation when API accepts array of files (#16055)

* Adding test for java native client

* Updated samples
2023-07-24 15:57:21 +08:00
William Cheng
0a02860b50 add parameter name mapping (#16160) 2023-07-24 15:54:40 +08:00
Guillaume Turri
20d1743a36 Fix parsing of Accept header like '*/*;q=0.8' (#16169)
This fixes #15043

The issue is that browsers like "text/html,...,*/*;q=0.8" (see for
instance https://developer.mozilla.org/en-US/docs/Web/HTTP/Content_negotiation/List_of_default_Accept_values
)

Without this commit we end up with an array of accepted type like
`("text/html", "*/*;q=0.8)` so when we then check if the array contains
`*/*` the check fails, and we return a 406 even though the client is
able to get the response.

This commit fixes it by removing the `;q=0.8` part.

(Ideally we should not just discard that part, we should extract that
 value, and order by it. See
 https://developer.mozilla.org/en-US/docs/Glossary/Quality_values for
 more info about that. However this could be done in a subsequent PR:
 this already fixes the 406 error, which is pretty blocking)
2023-07-24 11:34:12 +08:00
Tanmay Mohapatra
c71b48fe1a [Julia] update samples test and a minor fix (#16152)
* [Julia] update samples test and a minor fix

- updating samples test for Julia generated code to use the latest OpenAPI.jl Julia package, which includes tests for file uploads
- also including a fix where generated code duplicated the `mandatory` flag in one of the method calls

* add blank line, trigger build with julia workflow

* more updates to julia samples tests

* add samples changes
2023-07-24 10:52:17 +08:00
William Cheng
f590ef1bcf support nameMapping in abstract ts codegen (#16109) 2023-07-23 21:31:17 +02:00
devhl-labs
056475f0a4 removed incorrect cast (#16157) 2023-07-23 10:38:48 +08:00
Masahiro Sakai
476c1a9397 Fix DefaultCodegen.specialCharReplacements's comment to match the current behavior (#16164)
Translated words are not prefixed with quotation marks ("'").
2023-07-23 10:38:14 +08:00
Bernhard Wittmann
b7346d09eb [typescript-nestjs] allow configuration with forRootAsync (#15269) (#16112) 2023-07-22 20:38:52 +02:00
Florent Chamfroy
3c5b119252 fix(typescript-client): handle special characters (#15893)
Adding a new option for typescript clients in order to handle '+' and '-' characters when computing the name of an enum value.

Fix https://github.com/OpenAPITools/openapi-generator/issues/5110
2023-07-22 22:35:45 +04:00
Nicolas Gimenez
b468e4bb15 fix: take into account customAxios baseURL in typescript-axios generator (#16125) 2023-07-22 20:32:12 +02:00
William Cheng
7a7ecc832d add iBicha to C# TC (#16162) 2023-07-22 19:49:01 +08:00
William Cheng
fb2c866dfc Revert "fix(java): plus url encoding (#15539)" (#16158)
This reverts commit d000f90759.
2023-07-22 16:44:29 +08:00
Song Gie
d000f90759 fix(java): plus url encoding (#15539) 2023-07-22 16:27:36 +08:00
William Cheng
ce4a6a37c6 add oneOf lookup option in python client generator (#16154) 2023-07-22 15:29:04 +08:00
Masahiro Sakai
76989db77a [haskell] fix exampe code in generated README.md (#16142)
* [haskell] fix exampe code in generated README.md

Since create{{title}}Client is not a monadic action, we need to use
"let" instead of "<-".

* regenerate samples
2023-07-21 18:10:11 +08:00
Renny S
bd76c1b102 [csharp] Update RestSharp to 110.2.0 (#16122)
* [csharp] Update RestSharp to 110.2.0

* Post './bin/generate-samples.sh bin/configs/csharp*' and './bin/utils/export_docs_generators.sh' scripts

* OAuthAuthenticator: use configureSerialization

* ContentType prop = RestSharp.ContentType.Json

* `req` -> `request` in `Exec()` and `ExecAsync()`

* Regenerate samples
2023-07-21 17:19:38 +08:00
William Cheng
7252d1a698 [Ruby] add anyOf support (#16147)
* add anyOf support

* remove valid? from oneOf template
2023-07-21 11:38:07 +08:00
Tanmay Mohapatra
f6fefd9268 [Julia] correct handling of POST data encodings (#16149)
- detect multipart and urlencoded post data formats correctly on the server side
- generate data types correctly for binary file uploads
- re-generated samples
2023-07-21 11:37:43 +08:00
Cameron Koegel
de0bffb99d [Ruby] Update Model Creation and Attribute Validation (#16114)
* update attribute validation and model creation

* generate samples

* update tests

* update other tests

* fix custom pet_spec tests

* fix autoload tests
2023-07-21 08:58:55 +08:00
Bart ten Brinke
4ece8e992a Elixir: Switch Poison to Jason (#16061)
* Switch Poison to Jason

* generate-samples.sh

* Finalize Poison -> Jason switch

* parse date-time values to Elixir DateTime
* improve formatting in various places, so there's less changes by `mix
  format` later
* fix Java version in flake.nix

* Use List.delete/2 instead of Enum.reject/2 for performance reasons

* mix format test/*

* Install dialyxir and fix reported issues

* Fix RequestBuilder.decode/2 hardcoded module name

* Update docs

* Revert changes to API spec (HTTP -> HTTPS)

* Revert uneeded change to Elixir code generator

* Use HTTP in Elixir tests

HTTPS doesn't work for folks who setup petstore.swagger.io as described
in docs/faq-contributing.md.

---------

Co-authored-by: Wojciech Piekutowski <wojciech@piekutowski.net>
2023-07-20 18:36:50 +02:00
William Cheng
ddc2b3e560 Add tests for oneOf models in ruby client (#16137)
* add test for oneOf model in ruby

* add new files

* add tests for oneOf model without discriminator
2023-07-20 17:35:40 +08:00
William Cheng
7dee666826 add python name mapping support (#16120) 2023-07-20 17:30:01 +08:00
William Cheng
35ca486e1c Fixed bug in http signing config for C# restsharp (#16129) 2023-07-20 17:04:02 +08:00
William Cheng
0d002d381e [C#][restsharp] Removed warnings in HTTP signing config (#16128)
* Removed warnings in HTTP signing config for restsharp C#

* fix
2023-07-20 17:03:41 +08:00
William Cheng
a729cb4e09 Add support for isFreeFormObject flag (#16127)
* correctly set the free form object flag

* update

* better code format
2023-07-20 14:10:12 +08:00
Emanuele Saccomandi
bfcd646356 Updated zapier version (#16131)
* minor zapier api template fixes

* updated samples

* added zapier validation action

* readded zapier beta tags

* fixed zapier validation action

* updated samples

* updated zapier-platform-core version
2023-07-19 18:59:51 +08:00
William Cheng
aed6a0661a code clean up for go server, jaxrs generator (#16126) 2023-07-19 11:33:05 +08:00
Emanuele Saccomandi
178b8a7737 Zapier generator api template improvement (#16121)
* minor zapier api template fixes

* updated samples

* added zapier validation action

* readded zapier beta tags

* fixed zapier validation action

* updated samples

* improved zapier api names

* updated samples

* fixed zapier noun and label
2023-07-19 00:36:43 +08:00
William Cheng
28e822d870 remove php slim generator (deprecated) (#16108) 2023-07-18 13:10:21 +08:00
William Cheng
e722c42756 minor code enhancement in abstract julia codegen (#16118) 2023-07-18 12:45:15 +08:00
Fredrik Omland
b2eb14b3a5 Fix properties being required and nullable:true (#16072)
* Make generated kotlin variable nullable if corresponding schema property is required and nullable

* Updating generated samples

* Fixing indent

* Updating samples after indent fix in mustache template
2023-07-18 11:22:27 +08:00
Martin Delille
067b17252e [cpp-qt-client] Fix warning (#16083)
* [cpp-qt-client] Fix warning

* Handle warnings for MSVC

* Add warning flags only for non-MSVC compilers

* Fix warnings for MSVC compiler too
2023-07-17 16:30:44 +08:00
devhl-labs
f8e19b4ebc added equatable option (#16106) 2023-07-17 11:56:04 +08:00
William Cheng
6983a3acf3 Add nameMapping option to Java client, server generators (#16103)
* add nameMapping to java codegen

* update doc

* update samples

* fix typo

* update toParamName
2023-07-17 11:37:49 +08:00
Stephane Carrez
b107ff96ac [Ada] Fix and improvement of client and server code generator (#16100) (#16101)
* Improvement of Ada client and server generator

- recognize several mime types and configure the client/server API
- fix support to handle binary and ByteArray
- add support for client and server with multiple mime type responses
- update model templates

* Fix and improvement of Ada code generator

- fix order of model types to emit the types that depend on other
  types after; also sort the model types on their name
- fix model Serialize to avoid serializing a field which is Null
  when it is not "Nullable"

* Add support to avoid some Ada Vectors package instantiation

- recognized the x-ada-no-vector specific attribute on model types
  and when present and TRUE, don't emit the Ada Vector package instantiation
  nor the Serialize and Deserialize associated procedures.

* Fix float and double support

- fix mapping for float and double
- add x-ada-serialize-op custom attribute to allow overriding the serialize procedure
- setup a default x-ada-serialize-op value for the template

* Fix wrong import and serialize method

* Regenerate the Ada client sample petstore

* Rebuild with export_docs_generators.sh

* Fix calls to toLowerCase() to use the Locale.ROOT
2023-07-17 11:26:32 +08:00
devhl-labs
6299af176d faster logic to patch parameters (#16102) 2023-07-16 19:30:17 +08:00
William Cheng
598c27ddb0 [C#] fix validate (#16097)
* fix validation with discriminator using parent instead

* add new files

* add new workflow

* fix
2023-07-16 10:24:47 +08:00
William Cheng
7258b3c171 Fix allOf with a single $ref (#16096)
* new test

* fix allOf with a single ref in inline model resolver
2023-07-14 19:54:58 +08:00
William Cheng
80e2c05bad Add isJson, isXml to consumes, produces (#16085)
* add isJson, isXml to consumes, produces

* code cleanup, update samples
2023-07-14 16:02:59 +08:00
William Cheng
b7e7314d8e [C#] minor refactoring (#16084)
* escape keyword in toParamName (abstract C#)

* remove x-is-json (not used)
2023-07-14 00:36:57 +08:00
Tanmay Mohapatra
6a263565e7 [Julia] add Julia tests to GitHub workflow (#16089)
* [Julia] add Julia tests to GitHub workflow

Added Julia client and server tests to GitHub workflow

* fix paths
2023-07-14 00:19:56 +08:00
Daniel Lange
1531ad48d0 Fixed problem with non-ref-enums which were handled like ref-enums (#16050)
* #15476 Fixed problem with non-ref-enums which were handled like ref-enums

* Adjusted test expectation
2023-07-13 09:55:14 +08:00
CTerasa-ep
7f480cb936 [C++][Pistache] Serialize integer enums if possible (#16080)
In OpenAPI it is possible to define an enum schema containing integers
only.

Similar to the following JSON snippet:
```
...
  "components": {
    "schemas": {
      "size": {
        "type": "integer",
        "description": "Container size",
        "enum": [
          10000,
          20000,
          100000,
          200000,
          300000,
          1000000,
          1200000,
          2500000,
          5000000,
          10000000
        ]
      }
    }
  }
...
```

To correctly serialize this we need to convert to JSON integers. We can
achieve this by feeding nlohmann JSON objects directly with integers
instead of strings.

For the C++ pistache server adapt the enum models to serialize integer
values if possible.
2023-07-13 09:31:53 +08:00
Dennis Melzer
e77f9ea783 Add new OAuth2RequestInterceptor to remove deprecated open feign classes (#16011)
* Add new OAuth2RequestInterceptor to remove deprecated open feign classes

* Add override

* Add version

* Add older version

* Update docs

* Fix issue with multiple security schemes

* Move cli option to spring code gen

* Fix documentation options

* Remove resource folder

* Fix duplicate annotation

* Add an enable flag

* Remove generator setting

* Revert codgen changes

* Revert config generator changes
2023-07-13 08:35:39 +08:00
William Cheng
c6f6ef92d0 Refactor getAdditionalProperties, isFreeFormObject (#16065)
* refactor getAdditionalProperties, isFreeFormObject

* change warn to debug
2023-07-13 08:32:42 +08:00
devhl-labs
16c149a91e fixed bug in http signing config (#16040) 2023-07-13 08:27:55 +08:00
devhl-labs
3678085017 removed warnings (#16039) 2023-07-13 08:27:21 +08:00
Tanmay Mohapatra
c595a02b61 [Julia] Fix error in server enum generation (#16079)
Fixed issue in enum generation for julia-server code.
An empty struct was generated, where it should have generated a type alias.
2023-07-12 19:04:30 +08:00
William Cheng
ec6381295a Update php options for better customization of composer.json (#16078)
* update php options

* update tests
2023-07-12 13:22:05 +08:00
Maximilian Reichel
7cbdc861c7 docs(php): Add missing configuration property composerPackageName (#15846) 2023-07-12 11:29:44 +08:00
Hugo Posnic
9aa6e25886 Fix #14645 Permit to customize more composer.json parts (#16012) 2023-07-12 11:28:39 +08:00
Jens Wetterich
3325edc5c5 [kotlin][spring-webclient] Add parseDateToQueryString (#16069) 2023-07-12 10:17:53 +08:00
William Cheng
0a6671044f Rename inlineSchemaNameDefaults to inlineSchemaOptions (#16048)
* rename InlineSchemaNameDefaults to InlineSchemaOptions

* update doc

* rename options
2023-07-11 18:07:09 +08:00
William Cheng
7b3681af47 fix isMap (#16043) 2023-07-11 17:14:44 +08:00
Bruno Coelho
f31c2a4b17 [kotlin][client] Add new line at the end of all files (#16062)
* [kotlin][client] add new line at end of files

* [kotlin][client] add new line at end of files
2023-07-11 17:07:06 +08:00
devhl-labs
ceb48d3af4 removed IApi namespace (#16058) 2023-07-11 14:01:45 +08:00
devhl-labs
9362b49173 added event for errors (#16057) 2023-07-11 10:54:29 +08:00
dependabot[bot]
91a55fc6b6 Bump semver from 5.7.1 to 5.7.2 in /website (#16056)
Bumps [semver](https://github.com/npm/node-semver) from 5.7.1 to 5.7.2.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-11 09:51:43 +08:00
Emanuele Saccomandi
cc47f45eac Added zapier ci validation (#16052)
* minor zapier api template fixes

* updated samples

* added zapier validation action

* readded zapier beta tags

* fixed zapier validation action

* updated samples
2023-07-11 00:19:15 +08:00
devhl-labs
fe78be405e [csharp][generichost] Added event on http response to facilitate server health tracking (#16046)
* added event on http response to facility server health tracking

* renamed a file

* handled the renamed file
2023-07-10 16:10:04 +08:00
William Cheng
aa1e9097ea Minor improvements to Zapier client generator (#16044)
* improve Zapier client generator

* log debug instead of error
2023-07-10 15:37:20 +08:00
William Cheng
ac1f5f1e81 [inline model resolver] Add support for inline enum refactoring (#16033)
* add support for inline enum refactoring

* minor update

* add tests
2023-07-10 13:43:50 +08:00
William Cheng
852eb956db [kotlin][spring] Remove EOL from template (#16045)
* remove EOL from template

* better code format
2023-07-10 11:44:29 +08:00
Peter Leibiger
75067b2581 [Dart] Update CI (#15981)
* [dart] Update CI

* cache maven dependencies
* use newest exec plugin
* execute pub via dart subcommand

* Use run command directly
2023-07-10 11:27:01 +08:00
Ben Kolera
f34e42b249 [BUGFIX][kotlin-spring] Fix generatedAnnotation to use the javaxPackage variable instead of jakarta to fix spring boot 2 codegen (#15944)
* Update generatedAnnotation.mustache

Without this, it generates a jakarta annotation in the controllers of a spring boot 2 project.

* Updated examples
2023-07-10 11:13:22 +08:00
William Cheng
94d76ff5d4 Better inline schema naming for double byte characters (#16035)
* better inline schema naming for double byte characters

* clean up

* update deprecated methods
2023-07-10 09:38:54 +08:00
William Cheng
f0084b39ac update samples 2023-07-09 22:39:00 +08:00
Emanuele Saccomandi
9baf4988f3 Zapier generator (#15997)
* First version of Zapier Generator

* fixed zapier codegen

* added zapier templates

* added zapier sample

* added zapier doc

* added zapier generator form data management

* added samples generation

* updated docs

* fixed zapier api template

* fixed zapier samples export

* added zapier readme template

* fixed zapier readme template

* added petstore readme

* cleaned zapier generator

* updated samples

* fixed zapier enum label

* cleaned code

* updated samples

* improved zapier search actions

* updated samples

---------

Co-authored-by: Mauro Valota <maurovalota@fattureincloud.it>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-07-09 21:52:04 +08:00
devhl-labs
f63ef71432 version bump (#16038) 2023-07-09 10:27:34 +08:00
devhl-labs
c6877947ac removed a warning (#16037) 2023-07-09 10:26:59 +08:00
devhl-labs
1d470c3866 fixed nre (#16036) 2023-07-09 10:25:31 +08:00
Jon Schoning
2c5f8b30b4 [haskell-http-client] - update deps (#16041) 2023-07-08 19:34:37 -05:00
William Cheng
52dd41159f Revert "better inline schema naming for double byte characters"
This reverts commit aaf9ce637a.
2023-07-08 22:37:42 +08:00
William Cheng
aaf9ce637a better inline schema naming for double byte characters 2023-07-08 22:37:18 +08:00
William Cheng
08c3f8973e [python] Fix array of array of model's to_dict, from_dict (#16032)
* fix array of array of model's to_dict, from_dict

* update samples
2023-07-08 14:12:42 +08:00
Felix Uellendall
83a12779fa Fix syntax error in from_dict call (#16000) 2023-07-08 08:43:01 +08:00
William Cheng
f7edbbc572 update samples 2023-07-08 08:42:18 +08:00
Tanmay Mohapatra
5bae27cbbf [Julia] Fix error in default value and enum gen (#16030)
Fixed issues in default value and enum generation for non-string types.
2023-07-08 01:12:05 +08:00
Beppe Catanese
2aa75802dc [POSTMAN] Mark request header as disabled (#16028)
* Disable headers without a value

* Update samples
2023-07-08 01:06:32 +08:00
Beppe Catanese
30d6a2ff80 [POSTMAN] Use parameter default value (#16027)
* Refactor to use defaultValue

* Test parameter with defaultValue

* Update samples
2023-07-08 01:05:53 +08:00
William Cheng
a5f1c01548 update samples 2023-07-07 11:28:20 +08:00
Beppe Catanese
315fbff680 [BUG] Change default value for header parameter (#15990)
* Override toDefaultValue method

* Regenerate sample
2023-07-07 10:58:24 +08:00
William Cheng
9170306ffa Fix Spring CI sample folder (#16005)
* fix spring CI sample folder

* fix path

* trigger build

* test push

* add spring jdk17 workflow

* trigger build
2023-07-07 10:23:34 +08:00
William Cheng
a2d0b0c5b8 Minor fix to gradle test, pom.xml, build.gradle (#16026)
* fix publising to gradle portal

* v6.5.0 portal release

* add back docker publish

* trigger build

* Revert "trigger build"

This reverts commit f7ea8baf35.

* Revert "add back docker publish"

This reverts commit a279145cc6.

* Revert "v6.5.0 portal release"

This reverts commit 8a91858df5.

* minor fix to gradle test, pom.xml

* rollback to 1.0.0

* fix
2023-07-07 10:18:33 +08:00
William Cheng
ba5c5f478e remove openapi parameter from method (#16017) 2023-07-07 08:32:38 +08:00
Bodo Graumann
ba1c600830 [typescript] Fix support for relative URLs (#15482)
* Add test for different url types

* Fix tests for typescript inversify framework

* Add workaround for relative URLs

* Regenerate samples
2023-07-06 17:30:19 +02:00
William Cheng
a16a315fee Revert "7.0.0-beta release (#16018)"
This reverts commit 635f7952ce.
2023-07-06 17:21:35 +08:00
William Cheng
635f7952ce 7.0.0-beta release (#16018)
* 7.0.0-beta-release

* fix gradle tests
2023-07-06 16:06:02 +08:00
Daniel Lange
6b62f2b05a [csharp-netcore] Enable setting of RemoteCertificateValidationCallback through IReadableConfiguration (#15979)
* Fix for [BUG][C#][csharp] Use RestClient.RemoteCertificateValidationCallback for SSL validation #11497

* Fixed modification of wrong files through merging to master and applied the changes to the correct files

* Updated examples

* Forget some examples

* Updates branch to reflect master changes and published changed example files yet again to solve conflicts

* Fixed examples
2023-07-06 11:48:10 +08:00
William Cheng
965eb2a02f Add logic to avoid stackoverflow (#16008)
* add logic to avoid stackoverflow

* add test file
2023-07-06 11:45:31 +08:00
William Cheng
bf80ccb24c remove getPropertyDefaultValue (#16003) 2023-07-06 11:45:05 +08:00
devhl-labs
8d625986c6 used list instead of set (#16015) 2023-07-06 11:33:01 +08:00
Nico Martin
5479e57bee fixed date converter for javascript-flowtyped (#15983) 2023-07-05 17:04:31 +08:00
AntoineDuComptoirDesPharmacies
85df55b20e Bugfix #15982 : (#15984)
- Use 'orElse' instead of 'get' to avoid Exception for non required headers
- Update samples
2023-07-04 23:30:21 +08:00
Alejandro Ruiz
0bb9088f3e Fix StringIndexOutOfBoundsException when generating example code for recursive model (#15601)
Fixes #15600
2023-07-04 23:27:30 +08:00
Oliver B. Fischer
4f5738f493 Spelling fixes of a header for Asciidoc generation (#15988)
The case sensitivity for the heading for the response codes
was incorrect and has been corrected for the generation of Asciidoc
files.
2023-07-04 23:26:33 +08:00
bernie-schelberg-mywave
a42f90b0e8 Fix #12412 Use enum type for discriminator (#13846)
* Fix #12412 Use enum type for discriminator

* Rename variable

* Fix required property in test resource

* Add example of enum mapping to samples

* Generate samples

* Generate samples after merging master

* Regenerate samples

* Fix raw use of parameterized class

* Add test showing serialization and deserialization of classes with enum discriminator

* Remove old generated files

* Generate samples

* Generate samples
2023-07-04 23:25:39 +08:00
William Cheng
b465d88880 update samples 2023-07-04 00:29:06 +08:00
Aswin Francis
ba0c73e164 [csharp] [Req#15932] Added support for windows authentication by exposing UseDefaultCredentials property (#15935)
* Added support for windows authentication by exposing UseDefaultCredentials property

* Updated samples and docs

* update doc, samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-07-03 15:53:47 +08:00
Richard Lavoie
117e5118b1 [GO] Fix value formatting in url with slices (#15581)
* fix reflect value for Slice

* Add test
2023-07-03 15:45:14 +08:00
JeffAtDeere
cfc14565ae Support vendor extensions on more objects as per the OAS spec (#15975) 2023-07-03 15:07:59 +08:00
devhl-labs
00fcaa15c0 [csharp][generichost] Add Option struct to enable better validation (#15977)
* add Option struct to enable better validation

* use kebab case
2023-07-03 14:40:24 +08:00
Michael Glanznig
e2f5997592 fix dry-run output and add tests, fixes #15730 (#15754) 2023-07-02 23:37:21 +08:00
Beppe Catanese
3224e86377 [Postman Collections] Keep original header name (#15907)
* Define baseName for Postman headers

* Use header original name

* Commit regenerated files
2023-07-02 23:36:23 +08:00
Guillaume Turri
22e1e4e450 [PHP-Symfony] fix name mismatch in generated README (#15961) (#15963)
This fixes the generated README so it  suggests to implement the `class DefaultApi`
in a file named DefaultApi.php (instead of DefaultApiInterface.php)
2023-07-02 23:34:04 +08:00
Guillaume Turri
7572e73b8e [PHP-Symfony] Fix Symfony warning on OpenAPIServerBundle (#15960)
This fixes this Symfony warning:

    User Deprecated: Method "Symfony\Component\HttpKernel\Bundle\Bundle::build()"
    might add "void" as a native return type declaration in the future. Do the
    same in child class "OpenAPI\Server\OpenAPIServerBundle" now to avoid errors
    or add an explicit @return annotation to suppress this message

This fixes #15959
2023-07-02 23:33:37 +08:00
Dennis Melzer
50d8e7820b Fix cli options use tags and api name suffix (#15936)
* Fix cli options use tags and api name suffix

* Add sample code generator for api suffix and tags

* Fix FILES

* trigger build

* Add sample to github workflow
2023-07-02 23:18:17 +08:00
Clément Tamisier
a22a7c0d83 [kotlin-spring] Add missing parameter 'nullableReturnType' in docs (#15952) 2023-07-02 23:16:19 +08:00
devhl-labs
48f242fe58 [csharp] Rename csharp config files (#15968)
* renamed config files

* changed default framework to latest

* renamed files using standard

* ensure the default is actually latest
2023-07-02 10:30:16 +08:00
devhl-labs
34c491b115 enabled overriding parameter patching (#15971) 2023-07-02 10:08:44 +08:00
devhl-labs
179d0bcb9c added value converter class (#15970) 2023-07-02 10:07:27 +08:00
devhl-labs
780d1fb3e2 use latest framework as default (#15969) 2023-07-02 10:06:37 +08:00
devhl-labs
a89fe4ab28 fixed support for DateTimeOffset (#15967) 2023-07-02 10:05:51 +08:00
devhl-labs
ebcd1d7a32 [csharp][generichost] Exposed internals to test project (#15920)
* exposed internals to test project

* exposed internals to test project
2023-07-02 00:28:59 +08:00
devhl-labs
4dc7ffd2f3 [csharp][generichost] Fix model accessor (#15918)
* removed redundant properties

* removed commneted code

* fixed oneof anyof serialization

* restored discriminator as a model property

* added manual sample, removed need for new discriminator property

* minor pipeline change

* renamed manual test solution

* fixed model accessor

* used visibility option

* resolved conflicts

* build samples

* resolved conflicts

* resolved conflicts

* resolved conflicts

* resolved conflicts

* added a comment
2023-07-02 00:06:42 +08:00
devhl-labs
4eaa358476 [csharp][generichost] Fix oneof anyof serialization (#15873)
* removed redundant properties

* removed commneted code

* fixed oneof anyof serialization

* restored discriminator as a model property

* added manual sample, removed need for new discriminator property

* minor pipeline change

* renamed manual test solution

* resolved conflicts

* build samples

* bug fix

* fixed pipeline

* added a comment
2023-07-01 22:37:58 +08:00
Tatsuro Shibamura
42b496c003 Fixed typescript-axios not setting enum ref correctly for multipart/form-data (#15885) 2023-07-01 13:27:20 +02:00
Vladimir Svoboda
71528f69e8 Add support for Angular 16 (#15925)
* Add support for Angular 16

* Fix dependencies specifications

* Fix minimum angular supported version in readme

* Update integration tests

Even if they are currently not run.

* Update sample due to rebase
2023-07-01 13:13:58 +02:00
Dennis Melzer
d6538e3327 Fix import for spring boot 3 (#15949)
* Fix import for spring boot 3 and add a test for optional generation

* Remove timestamp

* Add sample to github workflow
2023-07-01 14:31:44 +08:00
William Cheng
30c685ea67 use openjdk official docker image (#15964) 2023-06-30 19:31:25 +08:00
Jules Bertholet
cdac1366d4 [Rust] Don't unnecessarily process enum names (#15710) 2023-06-30 14:25:04 +08:00
William Cheng
9a968c3104 add supportUrlQuery as an option (#15958) 2023-06-30 14:20:27 +08:00
Søren Hansen
9ee5fcc5c6 feat(rust,client): remove Default derives for structs as per #10845 (#15856)
* feat(rust,client): remove Default derives as per #10845

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-30 14:09:21 +08:00
William Cheng
f43111b46a remove addSchemaImportsFromV3SpecLocations (#15956) 2023-06-30 13:21:52 +08:00
William Cheng
63b2c79565 Fix NPE in StringUtils.camelize (#15957)
* fix NPE in StringUtils.camelize

* add comment

* add test file
2023-06-30 13:19:11 +08:00
William Cheng
8add9119df Add containerTypeMapped (#15881)
* add containerTypeMapped

* update samples

* update java inflector sample
2023-06-30 09:38:39 +08:00
William Cheng
15b3addd40 fix NPE in R construct example (#15953) 2023-06-30 09:29:33 +08:00
Noor Dawod
d5c53b9812 Fix epoch deserialization and parsing numbers (#15948)
* Fix 2 bugs with epoch deserialization and parsing numbers.

* Generate samples.
2023-06-30 00:06:12 +08:00
karzang
e9d98666a1 [Java][Client] Fix #12556 Support primitives and arrays in oneOf (#13897)
* [Java][Client] Fix #12556 Support primitives and arrays in oneOf

* Regenerate petstore samples

* Regenerate petstore test samples

* Treat 'BigDecimal' as primtive datatype

* Fix integration tests
2023-06-29 16:46:55 +08:00
Corné
b2280e23f7 [Kotlin][Spring]ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-c… (#15898)
* ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-cloud

* ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-cloud

* Undo formatting code

* Undo formatting code

* Undo formatting code

* ctbarnev_bugfix-13488-remove-request-mapping-from-for-Kotlin-spring-cloud

* Undo formatting code

* Undo formatting code

* Cleanup

---------

Co-authored-by: c.t.vanbarneveld <corne.van.barneveld@rws.nl>
2023-06-29 16:25:18 +08:00
William Cheng
b1b8acee48 Update openapi-generator-online Dockerfile to use openjdk11 image (#15947)
* test docker

* update

* mvn

* skip run
2023-06-29 15:57:19 +08:00
Per-Olov Jernberg
8fe4d780ed Use substring instead of substr (#15937) 2023-06-29 14:41:42 +08:00
William Cheng
fac04cfa9d Various improvements to scala-sttp4 generator (#15931)
* various improvements to scala-sttp4 generator

* test scala with jdk11

* test sttp4 in circleci

* add pom.xml

* update

* update tc
2023-06-27 23:27:38 +08:00
bcalvez
7a73f75f70 [java][okhttp-gson] Remove JAX-RS dependency from generated okhttp-gson java client (#15896)
* Remove JAX-RS dependency from generated okhttp-gson java client

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-27 16:53:10 +08:00
martin-mfg
dcc53c0d53 [Typescript][Scala][Postman][Java] fix errors with missing models, missing description, BigDecimal (#15809)
* various fixes

* generate samples
2023-06-27 16:20:21 +08:00
Frederic Jones
3627e57a4c Add validation.constraints package import to delegates when using bean validation (#15921) 2023-06-26 23:52:38 -07:00
Adam Rybicki
faa5da51e5 Sttp4 generator (#15834)
* implementation of sttp4 generator

* rebased with master

* running scripts

---------

Co-authored-by: Adam Fish Rybicki <adamrybicki@adams-macbook-pro.home>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-27 10:50:52 +08:00
martin-mfg
debf92fd7d author command: replace \ by /, fix #9528 (#15861)
* author command: replace \ by /

* add windows test for author template
2023-06-27 10:28:01 +08:00
Noah Overcash
e8fc4d159e Remove unused import in Java resttemplate auth templates (#15899)
* Remove unused import in Java resttemplate HttpBasicAuth

* Remove unused import in Java resttemplate HttpBearerAuth

* Update samples
2023-06-27 10:24:03 +08:00
martin-mfg
4bec09f7b9 [PHP] fix error on circular references (#15900)
* fix php generators

* generate samples and docs

* fix samples
2023-06-27 10:23:10 +08:00
martin-mfg
33e120a14d [Eiffel] fix Eiffel schema lookup, clean up outdated samples (#15901)
* make all unmaintained samples executable

* remove samples not generated by any config (not even unmaintained configs)

* remove deleted samples from github workflows
2023-06-27 10:21:28 +08:00
Hui Yu
47f2f5f3e7 [C][Client] Add github action to test c client sample build (#15922) 2023-06-27 10:19:25 +08:00
devhl-labs
ea2c6860d3 [csharp][generichost] Removed redundant properties (#15869)
* removed redundant properties

* removed commneted code

* restored discriminator as a model property

* build samples
2023-06-25 13:01:50 +08:00
devhl-labs
c23560afb9 removed unecessary extension from generichost (#15870) 2023-06-25 11:43:16 +08:00
William Cheng
7c67f731bc Rename csharp-netcore to csharp (#15903)
* rename csharp-netcore to csharp

* rename file

* renmae modules/openapi-generator/src/main/resources/csharp-netcore

* update samples

* mv dir

* update samples

* rename csharp-netcore to csharp in appveyor.yml

* update doc
2023-06-25 11:08:59 +08:00
William Cheng
af048ec62f update samples 2023-06-24 08:10:14 +08:00
William Cheng
17c2401abd add lombok to pom.xml 2023-06-24 07:57:26 +08:00
GregDThomas
5d6b769b5b Fix issue #907 by ensuring the parameters is properly "exploded" (#14825) 2023-06-23 20:11:39 +08:00
devhl-labs
b4eb9a40c6 fixed .net6 packages (#15902) 2023-06-23 10:54:29 +08:00
William Cheng
ae8da31772 Minor improvement to swift-combine client generator (#15892)
* minor improvement to swift combine

* update swift tc
2023-06-23 10:50:12 +08:00
Anton Davydov
9f3d9a5e8f [swift] New 'swift-combine' client generator for swift (#15823)
* swift-alt-gen init

* swift-alt-gen in progress

* swift-alt added runtime

* swift-alt added transport

* swift-alt added example

* swift-alt v0.1.0

* swift-alt implemented form encoded body

* swift-alt fixed array of enums to string

* swift-alt v0.2.0

* swift-alt v0.3.0

* swift-alt v0.4.0

* swift-alt v0.5.0

* swift-alt v0.6.0

* swift-alt v0.7.0

* swift-alt v0.8.0

* swift-alt v0.9.0

* swift-alt v0.12.0

* swift-alt v0.13.0

* swift-alt v0.14.0

* swift-alt v0.15.0

* swift-alt v0.16.0

* swift-alt v0.17.0

* swift-alt v0.18.0

* swift-alt v0.19.0 Support for raw value in header

* swift-alt v0.20.0

* swift-alt v0.21.0

* swift-alt v0.22.0

* swift-combine v0.23.0

* swift-combine PR rules adoption

* swift-combine: updated transport

* Updated bitrise.yml file

* Fixed bitrise pipeline for swift-combine

* Fixed code review comment
2023-06-22 09:25:32 +08:00
William Cheng
d160b827de Allow better default value in parameters using codegen property (#15882)
* allow better default value in parameters using codegen property

* update
2023-06-21 16:36:45 +08:00
pyckle
33aa5b07f3 [Java][bugfix] hashcode/equals behave incorrectly when inheritance is used in Generated Pojos (#15745)
* Fix Java equals and hashCode methods to work with inheritence (#5756)

* Regenerate code samples with improved hashCode/equals

---------

Co-authored-by: Andrew Pikler <andrew.pikler@earnix.com>
2023-06-21 16:33:01 +08:00
martin-mfg
7e89e1ea81 fix import mapping for return types (#14525) (#15719)
* importContainerType = true

* add unit test

* disable MyImportTest

* build all samples, add import exceptions

* simplify code

* delete myImportTest

* generate docs

* extend comment

* remove inline comment
2023-06-21 15:55:29 +08:00
William Cheng
8b26d81163 use mvnw instead of mvn in workflow (#15880)
* use mvnw instead of mvn in workflow

* fix

* more fix
2023-06-20 17:11:33 +08:00
William Cheng
14fc61a293 [java] fix default value - empty list [] (#15862)
* fix empty default value in java okhttp-gson

* add files
2023-06-20 11:27:56 +08:00
martin-mfg
396c6753b1 [Java][Haskell][Python] fix errors with empty strings, missing basePath (#15866)
* various fixes

* generate samples & docs
2023-06-20 10:05:02 +08:00
pappelt
6b1a9ba602 Update README.md (#15877)
Added Aleri Solutions to list of companies
2023-06-20 09:50:49 +08:00
ferlyloic
09b182572a Update pubspec.mustache (#15510)
updated intl package to v0.18.0
2023-06-20 09:35:37 +08:00
Noor Dawod
3dd93beac2 Introduce changes necessary for Dart 3.0.0/Flutter 3.10.0 (#15516)
* Expose `deserialize` function.

* Rename `json` argument.

* Generate Petstore code.

* Upgrade minimum version of `intl` dependency.
2023-06-20 09:35:25 +08:00
devhl-labs
e0d89c3846 removed hotfix (#15868) 2023-06-18 14:57:14 +08:00
devhl-labs
5555137b79 [csharp][generichost] Modernizes handling of composed schemas (#15865)
* removed hotfixes, improved composed schema handling

* fix copy paste bug
2023-06-17 15:05:08 +08:00
Erik Wegner
389270334a Rust validation handling (#15288)
* Prevent JavaScript regex delimiter

* Validation

* validator dependency

* validation with range

* Switch to garde crate for validation

* Update uuid crate

* Examples

* All rust-server samples

* Added rule handling

* Exchange garde for validator crate (rust)

* Version update in samples

---------

Co-authored-by: Erik Wegner <erik.wegner@regiocom.com>
2023-06-16 15:25:27 +08:00
Yohei Kitamura
0a651e1b0a fix: NullPointerException in DefaultCodegen.mergeProperties when processing models (#15859)
* fix: NullPointerException in DefaultCodegen.mergeProperties when processing models

* Add test
2023-06-16 14:39:54 +08:00
Camille TJHOA
504744a390 [typescript-fetch] fix snakecase discriminator (#15838)
* [typescript-fetch] fix snakecase discriminator (#7080)

* [typescript-fetch] add snakecase discriminator test case
2023-06-16 07:26:30 +02:00
Max Strübing
730b946537 [Bug] fix: use length to check for default return media type (#15833)
* fix: use length to check for default return media type

as `mediaTypes` is an array of strings and an required argument
it will never be undefined when we can rely on the typesystem.
However, it can be zero length(`[]`) and in this case we would
throw.

* Closes #15011

* chore: update examples
2023-06-16 07:23:58 +02:00
devhl-labs
03cef639e4 Added option to opt out of default logging for individual methods (#15850)
* added option

* moved the xml annotation

* build samples
2023-06-16 11:06:23 +08:00
Beppe Catanese
6cb3414611 Fetch request inline (single) example (bis) (#15857)
* Add (single) example

* Fetch single example when available

* Add test
2023-06-16 09:26:03 +08:00
Rexios
95cefaeecd [Dart] Convert DioError to DioException (#15783)
* Convert `DioError` to `DioException`

* Update samples

* Update dio version in example

* Use proper dio version

* Regenerate dart samples

* Regenerate

* Regenerate samples

* update samples

* remove outdated test files

* update test

* remove outdated test files

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-16 00:16:39 +08:00
William Cheng
747d9d9b51 better way to initialize hashmap (#15855) 2023-06-15 20:22:00 +08:00
Tiffany Marrel
0e212f53f2 [Java] [Kotlin] ignore unsupported schemes instead of throwing exception (#15817) 2023-06-15 16:50:49 +08:00
devhl-labs
882b9a8c50 [abstract-csharp] Process all operation parameter collections (#15841)
* added new vendor extenion

* moved code to methods to enable overriding

* fixed tests

* renamed method to setTypeMapping

* removed commented code

* moved code to make diff easier to understand

* removed commented code

* process all operation parameter collections

* fixed bugs

* fixed bugs
2023-06-15 15:54:04 +08:00
Ventsy
bdeb4ff5a4 Calls validate() for model objects properties (#15784) 2023-06-15 15:32:50 +08:00
Szabolcs Székelyi
bca80c0d3d [dart-dio] Correctly serialize path parameters (#14666) 2023-06-15 13:45:19 +08:00
William Cheng
8c1f4b1a62 Add containerType to codegen parameter (#15830)
* add containerType to codegen parameter

* add test for map container type
2023-06-15 11:51:39 +08:00
William Cheng
b42234eb3c [python] Fix map of array in property (#15844)
* fix map of array in property (python)

* update samples
2023-06-15 11:50:56 +08:00
William Cheng
afca85acf5 update scala doc 2023-06-14 17:42:27 +08:00
Adam Rybicki
522368160a Scala sttp stability change (#15842)
* changed stability in ScalaSttpClientCodegen

* updated files from scripts

---------

Co-authored-by: Adam Fish Rybicki <adamrybicki@adams-macbook-pro.home>
2023-06-14 17:32:11 +08:00
Peter Lamby
7812dd525c [BUG][typescript] add missing importFileExtension support (#15813) 2023-06-14 08:04:33 +02:00
JanLubenow
175876a105 [BUG][JAVA] Handling default values leads to wrong defaults or not compilable code fixed (#15836)
* (fix): default values for array types will be handled a bit more appropriate

* (fix): remove commented out block
2023-06-14 11:18:11 +08:00
devhl-labs
6a1626c8e7 [abstract-csharp] Make data types overridable (#15814)
* added new vendor extenion

* moved code to methods to enable overriding

* fixed tests

* renamed method to setTypeMapping

* removed commented code

* moved code to make diff easier to understand

* removed commented code
2023-06-14 10:47:46 +08:00
Oleh Kurpiak
3b832c9fd4 [Java][Client] remove model annotations from AbstractOpenApiSchema (#15808) (fix #15684) 2023-06-13 18:40:36 +03:00
Ghufran Zahidi
9fe5cc0b01 [csharp-netcore] Configure the API key in string format for HttpSigningConfiguration (#15818)
* added property in HttpSIgningConfiguration to accept API key in string format.

* remove trailing space, update samples

* updated the sample code.

* Revert "updated the sample code."

This reverts commit 5b945c7a59.

* fix the sample code compilation error for split function.

* updated the sample code after the split function fix.

* Removed the either or check for filePath or KeyString.

---------

Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
Co-authored-by: Vikrant Balyan (vvb) <vvb@cisco.com>
Co-authored-by: Vikrant Balyan <vvb@users.noreply.github.com>
Co-authored-by: Sebastien Rosset <serosset@cisco.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-06-13 21:49:33 +08:00
William Cheng
37d8a0d3ff Add java-webclient gradle test (#15837)
* add gradle test for webclient swagger2 annotation

* trigger build
2023-06-13 21:32:40 +08:00
JanLubenow
96b3488a07 [BUG] [Java-Spring] Required-Fields-Constructor has wrong super call when using multiple inheritance layers (#15827)
* (fix): required-fields constructor uses super-call-parameters in the order of the parent required-field constructor

* (fix): required-fields constructor uses super-call-parameters in the order of the parent required-field constructor - add issue number

* (fix): required-fields constructor uses super-call-parameters in the order of the parent required-field constructor - fix file reference
2023-06-13 21:13:31 +08:00
Dušan Plavák
0504c21209 [spring] Fix invalid swagger2 annotation library version in pom.xml (#15832) 2023-06-13 21:07:30 +08:00
Frederic Jones
43b1ce2c89 Fix typo on swagger2 dependency (#15826) 2023-06-13 21:02:58 +08:00
zbarbuto
e5a9081456 [dart-dio] Use sourceFolder property instead of src (#15620) 2023-06-13 16:09:33 +08:00
devhl-labs
3ea09c2855 added new vendor extenion (#15806) 2023-06-13 15:55:18 +08:00
Jérôme Prinet
89056986b6 Enable Dependabot on Maven extensions (#15820) 2023-06-12 20:29:22 +08:00
Jérôme Prinet
9a3e6c7e38 Add Revved up by Gradle Enterprise badge (#15819) 2023-06-12 20:28:47 +08:00
William Cheng
d2e10a7229 install urllib3 < 2.1.0 (#15810) 2023-06-12 15:58:51 +08:00
Bruno Medeiros
ca80fcd03e fix(ktor-client): do not add jsonBlock if using kotlinx-serialization (#15793)
* fix(ktor-client): do not add jsonBlock if using kotlinx-serialization

* update existing templates

* add new kotlin-jvm-ktor-kotlinx_serialization

* add new kotlin-jvm-ktor-kotlinx_serialization to samples-kotlin-client.yaml pipeline

actually, kotlin-jvm-ktor-gson was duplicated, so I'm replacing the second one by kotlin-jvm-ktor-kotlinx_serialization

* extra FILES entry in the template

* enumUnknownDefaultCase=false for now since it's currently broken for ktor + kotlinx_serialization

* use openapi 3 petstore
2023-06-11 20:45:20 +08:00
Oleh Kurpiak
170a2f44fa fix compilation after class renaming 2023-06-11 12:50:52 +03:00
devhl-labs
9b305318b4 [abstract-csharp] Begin removing netcore references (#15805)
* find and replace CSharpNetCoreClientCodegen

* find and replace CsharpNetcoreFunctionsServerCodegen

* find and replace CSharpNetCoreReducedClientCodegen

* find and replace AspNetCoreServerCodegen

* renamed generators

* find and replace CSharpNetCoreClientCodegenTest

* find and replace CSharpNetCoreClientDeepObjectTest

* find and replace CsharpNetcoreFunctionsServerCodegenTest

* git mv files

* find and replace CsharpFunctionsServerCodegenTest

* find and replace CsharpModelEnumTest

* git mv CsharpModelEnumTest.java
2023-06-11 17:06:12 +08:00
William Cheng
5b0c021f26 better null check in isExtensionParent (#15807) 2023-06-11 16:34:59 +08:00
William Cheng
6788f43af0 Better handling of Inline schema (#15682)
* skip allOf inline subschema created as $ref

* add option for fallback

* add back atleastonemodel

* add log

* update java, kotlin, js samples

* update tests

* fix native client test

* fix java client errors by regenerating test files

* clean up python

* clean up powershell

* clean up php

* clean up ruby

* update erlang, elixir

* update dart samples

* update ts samples

* update r, go samples

* update perl

* update swift

* add back files

* add back files

* remove outdated test files

* fix test
2023-06-11 15:35:58 +08:00
William Cheng
21748e024a add py.typed (#15804) 2023-06-10 21:48:54 +08:00
Tiffany Marrel
fe2dde3708 [Postman] fix use of isBasic from #15294 (#15760) 2023-06-10 21:06:42 +08:00
Beppe Catanese
f240ed4e4e [Go] Serialize readonly fields (#15765)
* Do not skip readOnly fields in ToMap()

* Regenerate sample

* Add test

* Correct test
2023-06-10 19:23:52 +08:00
William Cheng
1fb0ab997f [Python] fix access_token set to None when constructing Configuration object (#15802)
* clean up files

* add tests for access_token

* fix bug with access_token

* update test method name
2023-06-10 19:22:02 +08:00
gyoganathan
fc474eab5f Added BadRequestException as a subclass in python (#15722)
Co-authored-by: Gomathi Yoganathan <gyoganathan@C02G45FPMD6R.corp.proofpoint.com>
2023-06-10 15:27:18 +08:00
Heiko Studt
586626498d [Python] default values escaping more appropriate (#15695)
Fixes #15541
2023-06-10 15:26:20 +08:00
Tiffany Marrel
5cf7ed928b fix security features listed in documentation - remove openID Connect by default (#15773) 2023-06-10 13:56:46 +08:00
dependabot[bot]
9d274cffca Bump s4u/setup-maven-action from 1.7.0 to 1.8.0 (#15800)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.7.0...v1.8.0)

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  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>
2023-06-10 13:56:09 +08:00
devhl-labs
acc8274528 minor spacing change (#15801) 2023-06-10 13:53:46 +08:00
William Cheng
5a7be59967 Update bitrise.io config (#15789)
* update bitrise.io

* fix build

* avoid using mvn

* remove mvn

* update

* skip

* [swift5][client] fix CI issue cyclic dependency

* trigger build

* comment out vapour

* alarmfire

---------

Co-authored-by: Bruno Coelho <4brunu@gmail.com>
2023-06-09 20:38:27 +08:00
Jérôme Prinet
113cf9db40 Allow configuration cache compatibility (#15693)
* Allow configuration cache compatibility

Use FileSystemOperations to delete output folder if Gradle Version >= 6

* Skip Gradle legacy test if JDK is not compatible
2023-06-09 09:24:04 +08:00
martin-mfg
02790f987e always use @JacksonXmlElementWrapper and read xml data from referenced schema, updated (#15115)
* always use @JacksonXmlElementWrapper and read xml data from referenced schema

based on https://github.com/OpenAPITools/openapi-generator/pull/5371

* run generate-samples.sh

* suggestion: remove comment with empty name
2023-06-09 09:19:42 +08:00
James Wynn
d27fa00cf5 fix: #1466 additionalProperties works now in spring generator (#11572) (fix #1466)
* fix: #1466 additionalProperties works now in spring generator

* chore: chore: #1466 solved rebase conflicts

* 1466; updated samples

* [Spring] update additionalProperties MR

* [Spring] additionalProperties unit test

---------

Co-authored-by: Your Name <benfonty@gmail.com>
Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-06-08 16:38:53 +03:00
William Cheng
3d6f501710 add bileto to the sponsor section (#15787) 2023-06-08 10:21:27 +08:00
martin-mfg
17f1d351bf [Java][Jaxrs][Resteasy] add @Valid to getter methods, updated (#15064)
* [JavaJaxrsResteasy] add @Valid to getter methods

* improve whitespacing

---------

Co-authored-by: TNM Technologies <tnmtechnologies@users.noreply.github.com>
2023-06-08 09:43:01 +08:00
martin-mfg
b7f2b723aa [JAVA] fix toUrlQueryString for BigDecimal (#15764)
* add MyImportTest.java

* fix original issue

* fix same issue for native library

* remove MyImportTest

* add test configs

* generate samples (again?)

* generate samples again

* generate samples again, undo pom.xml mistake [amended to retrigger circliCi]
2023-06-08 09:34:06 +08:00
William Cheng
fbe768bb9c minor refactoring on default codegen (#15777) 2023-06-07 15:23:58 +08:00
William Cheng
87be942247 update rewrite to newer version (#15776) 2023-06-07 15:23:40 +08:00
William Cheng
658c6eb567 rename function to avoid confusion of function in parent class (#15775) 2023-06-07 14:57:15 +08:00
Frederic Jones
59ba00e1f3 Add support for swagger2 in [java] client generators (#15456)
* Add support for swagger2 in java client generator

* Target 7.x.x

* Upstream changes
2023-06-06 15:41:12 +08:00
Tiffany Marrel
79c2e87890 [Java] fix security features listed in documentation (#15756) 2023-06-06 15:12:22 +08:00
Tiffany Marrel
366e71adf9 [Kotlin-Spring] fix use of isBasic from #15048 (#15759) 2023-06-06 10:49:49 +08:00
Tiffany Marrel
d7226a6813 [Python] fix security features listed in documentation (#15755) 2023-06-06 10:49:01 +08:00
Tiffany Marrel
b5d766de4b [xojo] fix use of isBasic from #15194 (#15761) 2023-06-06 10:47:46 +08:00
Tiffany Marrel
d3a2e0e43e [Kotlin] fix security features listed in documentation (#15758) 2023-06-06 10:45:44 +08:00
devhl-labs
e439476e16 removed inheritence (#15767) 2023-06-06 10:36:59 +08:00
karzang
bc7bdca87f support nullable check for OAS 3.1 (#15698) 2023-06-05 19:34:51 +08:00
Tiffany Marrel
d2446013d1 [TypeScript] fix security features listed in documentation (#15751) 2023-06-05 17:18:01 +08:00
Tiffany Marrel
0d9ca8a2d5 [C# csharp] fix security features listed in documentation (#15687) 2023-06-05 17:13:27 +08:00
Tiffany Marrel
9bf752454e [PHP] fix security features listed in documentation (#15750) 2023-06-05 17:05:38 +08:00
devhl-labs
db3ef134b8 used partial methods for logging (#15749) 2023-06-05 14:08:56 +08:00
devhl-labs
4604bf016f fixed casing (#15748) 2023-06-05 14:06:54 +08:00
devhl-labs
e06e2cce69 fixed more warnings and spacing issues (#15743) 2023-06-04 16:13:52 +08:00
devhl-labs
3cff040fe8 used name in camel case (#15742) 2023-06-04 16:13:14 +08:00
devhl-labs
e5531c1135 improved spacing (#15741) 2023-06-04 16:12:37 +08:00
William Cheng
fbb0d6d935 add a test case for python-fastapi query parameter default value (#15744) 2023-06-04 13:37:12 +08:00
William Cheng
7295c97089 remove EOL in template file 2023-06-04 11:34:06 +08:00
Beau
961b83104e Fixed default for string query param (#15686) 2023-06-04 11:23:20 +08:00
devhl-labs
0943e5063a [csharp-netcore][generichost] Improved spacing (#15740)
* improved spacing

* addressed comment
2023-06-03 20:05:08 +08:00
Clément Tamisier
2b9d94cb0a add missing quote (#15732) 2023-06-03 13:36:13 +08:00
Tiffany Marrel
fad23df09c [Rust] fix security features listed in documentation (#15718) 2023-06-03 11:45:55 +08:00
Tiffany Marrel
7ab636d268 [JavaScript][javascript-flowtyped] fix security features listed in documentation (#15715) 2023-06-03 11:45:27 +08:00
Tiffany Marrel
2cc3e7865c [Go] fix security features listed in documentation (#15714) 2023-06-03 11:44:48 +08:00
William Cheng
a9536d6d7f minor fix readme md (#15739) 2023-06-03 11:42:34 +08:00
William Cheng
5e6e99b277 do not skip jacoco report in linux workflow (#15738) 2023-06-03 11:34:25 +08:00
Tiffany Marrel
eb0fe1bd1f [R] fix security features listed in documentation (#15716) 2023-06-03 11:14:35 +08:00
Tiffany Marrel
a953eb750f [Powershell] fix security features listed in documentation (#15717) 2023-06-03 11:11:56 +08:00
Olivier Sechet
65bee03e21 Use gitHost instead of github.com (#15720) 2023-06-03 11:08:33 +08:00
Michael Glanznig
05b9a899e4 add support for dry-run flag to Maven and Gradle plugins, fixes #15729 (#15734) 2023-06-03 11:06:58 +08:00
devhl-labs
2db7b0b177 removed more more warnings (#15737) 2023-06-03 10:51:13 +08:00
Stefan Koppier
f0a624a135 Documentation update (#15728)
* Updated Gradle documentation examples to use correct non-deprecated .set(x) syntax instead of directly assigning

* Updated more Gradle documentation examples to use correct non-deprecated .set(x) syntax instead of directly assigning

* Updated documentation to use Java 11 instead of Java 8
2023-06-02 20:59:18 +08:00
William Cheng
421bcd1787 Decommission csharp client generator (#15708)
* remove csharp client generator

* update samples/docs
2023-06-02 20:42:29 +08:00
William Cheng
7466d06b89 fix property name comparison in C# (#15697) 2023-06-02 20:42:12 +08:00
devhl-labs
f331cb0695 removed more hotfixes (#15723) 2023-06-02 16:42:39 +08:00
William Cheng
eb41941872 set mvnw to 3.8.8 (#15724) 2023-06-02 11:33:17 +08:00
stephanpelikan
0d4e399718 Do JSON serialization only if requested by mime-type (#13456) (#15676)
* Do JSON serialization only if requested by mime-type (#13456)

* Refactoring based on feedback to PR (#13456)
2023-06-01 19:53:24 +02:00
William Cheng
9c611b826b update readme to use maven wrapper (#15711) 2023-06-02 00:44:06 +08:00
William Cheng
fc76944e19 Update maven plugins, use maven 3.8.8 in CI (#15713)
* update maven pom.xml, use 3.9.2 in CI

* use maven 3.8.8

* use variable
2023-06-02 00:30:06 +08:00
stephanpelikan
3943e97e14 Introduce option 'importFileExtension' to typescript-fetch (#15439) (#15440) 2023-06-01 08:49:07 +02:00
Peter Lamby
6504eafddb [BUG][typescript-fetch] fix npe when debuggingModels (#15577) (#15578) 2023-06-01 08:33:29 +02:00
Tiffany Marrel
e593591401 cleanup new generator documentation (#15359)
* align wording across generators

* add missing authentication schemes from README of new generators

* fix anchor links in new generator documentation
2023-06-01 11:17:11 +08:00
Tiffany Marrel
c2f635a330 fix use of isBasic and isBasicBasic and isBasicBearer and isHttpSignature in documentation (#15443)
* [ada] fix use of isBasic condition

* [apex] fix use of isBasic condition

* [asciidoc] fix use of isBasic condition

* [python] fix use of isBasic condition

* [csharp C#] fix use of isBasic condition

* [htmlDocs] fix use of isBasic condition

* [Ruby] fix use of isBasic condition

* [scala] fix use of isBasic condition

* [julia] fix use of isBasic condition

* [Objective-C objc] fix use of isBasic condition

* [GraphQL] fix use of isBasic condition

* [MarkDown] fix use of isBasic condition
2023-06-01 09:47:00 +08:00
devhl-labs
f769070fa3 removed warnings (#15706) 2023-06-01 09:32:21 +08:00
William Cheng
63a311a2e6 update go samples 2023-06-01 09:09:00 +08:00
Chris McEvoy
5fae4f5d93 add go api key example in README.md (#15705) 2023-06-01 09:01:21 +08:00
devhl-labs
3ee2eeedba removed hotfix (#15703) 2023-06-01 08:49:22 +08:00
William Cheng
c8a1607b9f rename ts codegen method (#15696) 2023-06-01 00:24:40 +08:00
William Cheng
4d4477e368 update maven wrapper to 3.9.0 (#15694) 2023-06-01 00:24:20 +08:00
William Cheng
1ad8316a9d minor updates to readme (#15700) 2023-06-01 00:22:43 +08:00
Ross Bender
1561c33966 [JAVA] Generate client files with multiple enum oneOf types (#12687)
* handle multiple enum types for oneof

* add updates from generate-samples.sh

* add test coverage for oneof enum generation

* update doc and var names for clarity
2023-05-31 17:28:47 +08:00
Oleh Kurpiak
ff414dd6da [Spring] Defaulting for Spring HTTP Interface library (#15689) (fix #15631) 2023-05-31 11:20:58 +03:00
devhl-labs
0bcf9d8bde patch all property collections (#15678) 2023-05-31 00:36:35 +08:00
devhl-labs
1e1e786a72 created partial method to format arguments (#15677) 2023-05-31 00:35:50 +08:00
devhl-labs
d7d57e2ea3 fixed null reference exception (#15680) 2023-05-31 00:10:39 +08:00
William Cheng
10c270fda6 fix date isinstance check (#15675) 2023-05-31 00:03:14 +08:00
dependabot[bot]
1d5b1b0a8f Bump actions/setup-dotnet from 3.1.0 to 3.2.0 (#15679)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  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>
2023-05-31 00:00:39 +08:00
gonzalad
8a0f374a45 spring: fix spring pageable used without any config (#15113) (fix #13052)
* spring: fix spring pageable used without any config

Spring Pageable is imported whenever we have an API with
a Pageable Json schema, even if x-spring-paginated is not
set.

This commit imports Spring Pageable only if
x-spring-paginated is set to true.

* spring: add unit test for pageable fix

* spring: fix spring pageable feedback from review

remove unrelated example

---------

Co-authored-by: gonzalad <gonzalad@users.noreply.github.com>
2023-05-30 08:42:33 +03:00
William Cheng
8bad27e0ab update python fastapi server dependencies (#15650) 2023-05-29 17:16:15 +08:00
William Cheng
7006b388de Update go-gin dockerfile to newer version: 1.19 (#15597)
* update go-gin dockerfile to newer version: 1.19

* add go.sum

* fix

* update go mod
2023-05-29 16:55:14 +08:00
Stephan Strate
8e2fa826e5 [kotlin-server] cleanup KotlinServerCodegen configuration (#15653) 2023-05-29 15:58:08 +08:00
William Cheng
431cc2ec8e Fix bugs (string comparison) in csharp generators (#15663)
* fix bugs in csharp generators

* undo change
2023-05-29 15:17:54 +08:00
devhl-labs
784c700d37 [csharp] Fix property names (#13681)
* build samples

* build samples

* commit java changes

* use var as prefix instead of _ for illegal names

* resolved conflict
2023-05-28 13:50:02 +08:00
devhl-labs
29223e0b81 [csharp-netore][generichost] Renamed ToModel to AsModel (#15662)
* renamed ToModel to AsModel

* build samples again
2023-05-28 11:54:21 +08:00
devhl-labs
9e8805d712 remove-more-null-warnings (#15664) 2023-05-28 11:52:44 +08:00
devhl-labs
0350d0e313 fixed example values (#15666) 2023-05-28 11:51:14 +08:00
William Cheng
f793d62744 Update dart workflow java version to 11 (#15660)
* update dart workflow java version

* add clean

* trigger build
2023-05-28 11:21:33 +08:00
devhl-labs
7fc23dd406 fixes a warning (#15661) 2023-05-28 11:20:45 +08:00
William Cheng
e4bf068a88 Update swagger parser to 2.1.14 (#15644)
* update swagger parser to 2.1.14

* minor fix, update tests
2023-05-27 22:55:56 +08:00
William Cheng
5afa33980c Add tests for Dockerfile, run-in-docker.sh (#15657)
* add tests for docker, run-in-docker.sh

* remove it

* use 11

* more tests

* trigger build failure

* Revert "trigger build failure"

This reverts commit 47fb248ca0.

* fix build
2023-05-27 13:39:10 +08:00
devhl-labs
4d52bf656e [csharp-netcore][generichost] Reduce null warnings (#15656)
* reduced null warnings

* removed null warnings
2023-05-27 12:00:47 +08:00
Austin Ziegler
af917f8865 Fix run-in-docker.sh for JDK 11+ (#15655)
OpenAPI Generator 7 requires JDK 11+, but the `run-in-docker.sh` had not
been updated and was still using JDK 8.
2023-05-27 11:21:15 +08:00
samypr100
fe6e4e459f [java] support required nullable properties on java okhttp-gson generator (#15462)
* Support required nullable properties on java okhttp-gson generator

* regen client after merge

* covering cases
* nullable - true ; required - true
* nullable - false ; required - true
* nullable - true ; required - false
* nullable - false ; required - false
2023-05-26 16:02:48 +03:00
Stefan Koppier
b3b672fdfc [Kotlin-client][jvm-spring-webclient] Added support for spring boot 3 (#15646)
* Bumped kotlin spring-jvm-webclient spring boot version from 2.7.11 to 3.1.0

* Do not redefine HttpHeaders and MediaType for simpler code

* Added a simpler constructor to the api and simplified encodeURIComponent

* Added support for Spring Boot 3 in kotlin-client jvm-spring-webclient generator

* Fixed small syntactical regression in Kotlin client build.gradle
2023-05-26 17:07:36 +08:00
William Cheng
8457dbf1a6 [gradle enterprise] various enhancements (#15607)
* use enforce-maven as the ID

* remove enforce formula use mvn clean in workflow
2023-05-26 15:33:50 +08:00
William Cheng
4c7963cf54 remove deprecated options in kotlin client generator (#15651) 2023-05-26 14:51:55 +08:00
William Cheng
bbb6f4e6a0 [go-server] Update Dockerfile go version to 1.19 (#15596)
* update dockerfile go version to 1.19

* Update modules/openapi-generator/src/main/resources/go-server/Dockerfile.mustache

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/go-server/Dockerfile.mustache

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* update samples

---------

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>
2023-05-26 10:51:07 +08:00
William Cheng
6213d39539 update doc 2023-05-26 10:10:23 +08:00
Beppe Catanese
1f4cbb8f00 Add multiple parameter examples to CodegenParameter (#15647)
* Add examples to CodegenParameter

* Set CodegenParameter examples

* Add examples to CodegenParameter

* Set CodegenParameter examples

* Regeneration samples
2023-05-26 09:20:22 +08:00
Nikita Vakula
3db7169959 [python-fastapi] Added a base class for the actual implementation (#14470)
It is very difficult to "merge" the changes, made by code generation,
and the changes, made by developers. It would be very useful to
separate the generated code and the code written by developers. In
addition this would remove the necessity to track the generated code.
Pyhton (since 3.6) has a hook, __init_subclasses__, that could be used
to solve exactly this problem.
The classes from *_base.py should be implemented in an ns package that is specified
by the additional parameter ("-p fastapiImplementationPackage=example_name").

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2023-05-26 08:58:39 +08:00
Alpha Shuro
b94952b3b7 Add link to find more variables (#15635) 2023-05-26 08:38:32 +08:00
dependabot[bot]
68a434818c Bump actions/setup-dotnet from 3.0.3 to 3.1.0 (#15648)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 3.0.3 to 3.1.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v3.0.3...v3.1.0)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  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>
2023-05-26 08:31:49 +08:00
William Cheng
910e463d50 update C# samples 2023-05-26 08:32:10 +08:00
Tiffany Marrel
ce587c7b57 [C] fix use of isBasic condition (#15534) 2023-05-25 23:39:43 +08:00
Tiffany Marrel
8aa8a60754 [typescript] fix use of isBasic condition (#15531) 2023-05-25 23:38:59 +08:00
devhl-labs
db795a2c1a [csharp-netcore] Removed deprecated package (#15595)
* removed deprecated package

* include the library for older than .net6
2023-05-25 23:37:12 +08:00
William Cheng
1145197fad Add workflow to tests C# projects with .net 6 (#15629)
* add workflow to tests C# projects with dotnet 6

* trigger build

* fix cmd
2023-05-25 21:06:51 +08:00
gonzalad
d52e3fbfda spring: fix multiline tag description (#15112) (fix #12474)
* spring: fix multiline tag description

@Tag description should merge multiple lines into single line
and trim the newline char at the end

The fix was done in a similar way to what is done for operation description.

* spring: multiline tag description add unit test

---------

Co-authored-by: gonzalad <gonzalad@users.noreply.github.com>
Co-authored-by: Oleh Kurpiak <oleh.kurpiak@gmail.com>
2023-05-25 11:01:12 +03:00
devhl-labs
63c26fc794 upgarded test project framework (#15634) 2023-05-25 11:00:38 +08:00
Oleh Kurpiak
765628fb77 Fix extensions handling for allOf with single schema (#15632) 2023-05-25 10:59:00 +08:00
Oscar Rodríguez
2b9677a29e Adds operation null check avoid null exception (#15599)
* Adds operation null check in the method GetOperationServerUrl to avoid null exception

* Adds operation null check to avoid null exception to the csharp net core mustache

* update C# samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-05-24 17:33:58 +08:00
Tiffany Marrel
80c85eff1b [Haskell] fix use of isBasic condition (#15612) 2023-05-24 16:58:46 +08:00
William Cheng
3990b73ff3 remove scala-httpclient client generator (deprecated) (#15627) 2023-05-24 16:39:35 +08:00
aramflo
2042fb222a CASS-399: Adds {{>partial_header}} to missing mustache files in aspnetcore. (#15616) 2023-05-24 16:37:46 +08:00
William Cheng
15604b31d6 fix go server string compare (#15589) 2023-05-24 15:47:42 +08:00
William Cheng
0e8d997bf6 [rust-client]: fix for collectionFormat=multi (#15626)
* [rust-client]: fix for collection format multi

* update rust samples

---------

Co-authored-by: Gorka Kobeaga <gorka@kobeaga.eus>
2023-05-24 15:45:00 +08:00
Stephan Strate
9890f076a9 [kotlin-server] add support for jakarta ee namespace (#15593) 2023-05-24 08:44:39 +01:00
William Cheng
48ef91acc4 [python] Add test for nullable property with pattern (#15625)
* add test for nullable property with pattern

* update samples
2023-05-24 15:13:53 +08:00
George
5b5cb1f7e0 [groovy] support enum generation in groovy client (#15619)
* support generation of enums for groovy

* add custom json generator for groovy

* add nestet enums in groovy templates

* add indent for nested Groovy enums & fix compilation errors in Groovy ApiUtils

* save auto generated samples&docs for groovy
2023-05-24 15:12:59 +08:00
Tiffany Marrel
358397fe3f [rust] fix use of isBasic condition (#15532) 2023-05-24 14:43:06 +08:00
Huan-Cheng Chang
1a483b2c9a fix variable name (#15623)
Signed-off-by: Huan-Cheng Chang <changhc84@gmail.com>
2023-05-24 14:17:41 +08:00
Tiffany Marrel
f5903bc391 [swift5] fix use of isBasic condition (#15613) 2023-05-23 14:07:48 +01:00
William Cheng
833f649768 [Kotlin] minor enhancements, remove KotlinServerDeprecatedGenerator (#15608)
* better code foramt, add library creator

* remove kotlin server deprecated generator
2023-05-23 13:45:10 +08:00
Stefan Koppier
9358ab9d1d [kotlin] New 'jvm-spring-webclient' library (#15568)
* Added library 'jvm-spring-webclient' to Kotlin client generator

* Reran all generators and generated docs

* Changed target of kotlin-jvm-spring-webclient sample from 2_0 to 3_0

* Added build of kotlin-jvm-spring-webclient to github workflow
2023-05-23 11:34:52 +08:00
devhl-labs
5299935c20 [csharp-netcore] Removed .netcore 3.1 (#15605)
* removed .netcore 3.1

* dont use .net standard for test package
2023-05-23 10:39:06 +08:00
William Cheng
273be4634e Update Enforcer (maven plugin) rule (#15575)
* better enforcer with gradle mgmt plugin

* update gradle-enterprise

* fix id
2023-05-23 00:56:50 +08:00
Tiffany Marrel
cbcf3d36f6 [Java] [Kotlin] (#14876) fix use of isBasic conditions - do not use HttpBearerAuth (or HttpBasicAuth) for other http auth methods (such as http signature auth or custom schemes) (#15220)
* remove http signature from test yaml when not supported

* do not use HttpBearerAuth for signature auth or other unsupported http auth method

ignore unsupported http auth method unless generated code would not compile (in which case, an exception is thrown)

* [Java] fix use of isBasic condition

* [kotlin] fix use of isBasic condition
2023-05-22 16:08:08 +08:00
Tiffany Marrel
216e2c45ff [dart] fix use of isBasic condition (#15523) 2023-05-22 16:07:37 +08:00
martin-mfg
ad5cc827f0 remove fullJavaUtil (#15033) 2023-05-22 14:40:35 +08:00
devhl-labs
2af661d5b0 used default cancellation token (#15594) 2023-05-22 12:53:18 +08:00
William Cheng
605cc7bd29 Set maven to 3.9 in Github workflow (#15592)
* set maven to 3.9

* add java version

* fix maven version

* fix java version
2023-05-22 11:25:38 +08:00
Rustam
7881482161 [Ktor] Update generator to latest Ktor version #14061 (#14296) 2023-05-21 23:11:01 +08:00
William Cheng
5e800d9633 Update pom.xml with new plugin, setting (#15590)
* update pom.xml with new plugin, setting

* update workflow
2023-05-21 21:13:45 +08:00
William Cheng
5018d3c131 Update to JDK11 (#15553)
* update to jdk11, fix tests

* update workflow to use jdk11 instead

* update travis, circleci build

* fix test failure, update CI

* skip mvn install in appveyor

* add windows tests

* fix workflow

* remove log level

* add timeout

* sleep more

* skip tests

* sleep more

* only skip tests

* test with jdk11 only

* fix gradlew

* remove skip tests

* start server after build

* update gradle version

* more time to start server

* update to 420

* comment out build

* update

* update
2023-05-21 16:22:44 +08:00
William Cheng
6142315bef Revert "fix#14119 property generateApis=false not working (#14126)" (#15588)
This reverts commit be9f1b6e44.
2023-05-21 15:58:21 +08:00
William Cheng
e758e4a49a Improve Appveyor tests (#15585)
* use docker

* update

* skip httpclient

* update

* sleep 120

* use cmd

* restore tests

* sleep 120

* clean up

* skip
2023-05-21 15:56:51 +08:00
Stefan Koppier
08bb0f42fe Fixed additional property omitGradleWrapper for kotlin generator (#15584) 2023-05-20 23:29:24 +08:00
Tiffany Marrel
e7039f434e [cpp C++] fix use of isBasic condition (#15535) 2023-05-20 20:13:04 +08:00
Tiffany Marrel
89e4b24295 [Ada] [Java] fix Codegen copies (#15513)
* fix incomplete codegensecurity copies

* refactoring
2023-05-20 20:12:18 +08:00
Tiffany Marrel
3e10c5dbcf [bash] fix use of isBasic condition (#15521) 2023-05-20 20:11:26 +08:00
Tiffany Marrel
e83640c836 [perl] fix use of isBasic condition (#15524) 2023-05-20 20:09:39 +08:00
Tiffany Marrel
7eeb7f6ed2 [PHP] fix use of isBasic condition (#15520) 2023-05-20 20:09:18 +08:00
Tiffany Marrel
b7a9373233 [powershell] fix use of isBasic condition (#15525) 2023-05-20 20:08:37 +08:00
Tiffany Marrel
9d6f80a7cf [android] fix use of isBasic condition (#15528) 2023-05-20 20:08:18 +08:00
Tiffany Marrel
b7546888d1 [eiffel] fix use of isBasic condition (#15533) 2023-05-20 20:07:48 +08:00
Tiffany Marrel
2d8ec8b008 [xojo] fix use of isBasic condition (#15526) 2023-05-20 20:06:57 +08:00
Tiffany Marrel
7443c95d48 [lua] fix use of isBasic condition (#15529) 2023-05-20 20:06:34 +08:00
Florian Morgan
f0d439fbce [kotlin-spring] Fix inheritance compile error because of missing use-site target on annotation (#3596) (#15488) 2023-05-19 10:47:26 +01:00
William Cheng
f5f382c87a Improve build time (#15566)
* remove java helidon client, server tests (covered in sample tests)

* add new workflow to test java helidon samples

* trigger build

* test jdk 17 only

* Revert "trigger build"

This reverts commit b9528a6588.
2023-05-19 09:45:43 +08:00
Stephan Strate
2250aae6a6 [kotlin-server] fix bean validation site targets (#14997) 2023-05-18 15:56:03 +01:00
William Cheng
1204662a64 undo changes to petstore.yaml 2023-05-18 16:09:40 +08:00
William Cheng
54c8bf8733 [go-server] Add tests for boolean query parameter (#15563)
* add tests for boolean query parameter

* fix test
2023-05-18 15:39:43 +08:00
William Cheng
bba9815d1e Add workflow to test builds and Gradle plugin on Windows (#15562)
* add workflow to test builds on windows

* fix gradle
2023-05-18 15:23:21 +08:00
Dmytro Vitiuk
08184086c0 fix typo in go-server codegen (#15557) 2023-05-18 15:18:22 +08:00
devhl-labs
4a5437968f added OrDefault method (#15551) 2023-05-18 11:22:44 +08:00
William Cheng
d8ed253439 update C# samples 2023-05-18 11:21:16 +08:00
Jean-François Côté
b7dc6ce598 [Aspnetcore] Fix nullable warnings part 1 (#15555)
* Fix nullable errors in attribute and filters

* Add missing samples
2023-05-18 11:14:55 +08:00
Tiffany Marrel
c7d185dda9 [dart][dio] fix features of dart-dio generator (#15537) 2023-05-18 11:02:38 +08:00
Oleh Kurpiak
d60b10826c [Gradle] add inputSpecRootDirectory for generate task (#15548) (fix #15483) 2023-05-17 09:58:08 +03:00
William Cheng
04b34e7096 update doc 2023-05-17 02:15:24 +08:00
rledisez
44ad6d5eac [go-server] Support min/max/defaults for values (#15185)
* [go-server] Support min/max/defaults for values

Enforce, for the go-server, to check the minimum and maximum values
specified in the openapi description. Also apply the default if the
parameter is not passed.

Fix #14013

* Fix merge conflict

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Improve UnmarshalJSON implementation

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Improve default value handling for string

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>

* Fix suggested changes

* rework option pattern

* add imports based on types/min max values

---------

Co-authored-by: Ween Jiann <16207788+lwj5@users.noreply.github.com>
2023-05-17 01:58:28 +08:00
William Cheng
d3f63caf0b Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-05-17 01:02:51 +08:00
William Cheng
6a742fe398 update doc 2023-05-17 01:02:45 +08:00
Dmitriy
be9f1b6e44 fix#14119 property generateApis=false not working (#14126) 2023-05-17 01:02:12 +08:00
Beppe Catanese
ab4a05a959 Postman Collection Generator (#15294)
* Add Postman generator

* Add Postman generator doc

* Remove contact data

* Change license data

* Add Postman in samples

* Add Postman in bin/configs

* Commit changed files

* Update Postman doc

* Correct generator connfiguration

* Regenerate docs

* Correct javadoc

* Use File instead of FileReader

* Rename to postman-collection (schema) generator

* Commit regenerated files

* Improve help and Javadoc

* Commit regenerated files
2023-05-17 00:51:53 +08:00
William Cheng
9c968e8bae Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-05-17 00:50:51 +08:00
Tiffany Marrel
b35ffd3c37 add missing security schemes to new generator README template (#15536) 2023-05-17 00:50:22 +08:00
William Cheng
aa0d637631 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2023-05-17 00:49:41 +08:00
Tiffany Marrel
00676870a3 add HTTP signature to SecurityFeature (#15542) 2023-05-17 00:48:58 +08:00
Jean-François Côté
842ca3db69 Fix warning when building because of the missing documentation (#15543) 2023-05-17 00:44:58 +08:00
Tiffany Marrel
63ac3e1039 [Spring] fix use of isBasic condition (#15530) 2023-05-16 16:37:20 +03:00
William Cheng
1210229e36 Merge branch 'version-bump' of https://github.com/devhl-labs/openapi-generator 2023-05-16 17:20:52 +08:00
William Cheng
0d1f562d13 update c++ samples 2023-05-16 17:20:46 +08:00
Super Genius
87ea870f03 Update modelbase-header.mustache (#15453)
Fixes warning in ModelBase.h

warning: loop variable 'jitem' creates a copy from type 'const web::json::value' [-Wrange-loop-construct]
2023-05-16 17:13:59 +08:00
Sylvain Joubert
3a172c3753 [C++][Pistache] Add missing 'override' on virtual methods (#15469)
This is following #15279
Marking those methods 'override' should avoid producing
'-Winconsistent-missing-override' warnings or similar.
2023-05-16 17:13:34 +08:00
Sylvain Joubert
48d257b5c9 [C++][Pistache] Generate empty JSON object instead of a null value (#15468) 2023-05-16 17:05:44 +08:00
Tiffany Marrel
016507cf5c [javascript] fix use of isBasicBasic and isBasicBearer conditions (#15522) 2023-05-16 15:25:18 +08:00
William Cheng
1c6decb394 minor enhancements to the aspnetcore server generator (#15518) 2023-05-16 15:24:48 +08:00
Jean-François Côté
edad90e794 Bugfixes/12952 fix newtonsoft using (#15515)
* Fix #12952: Handle useNewtonsoft parameter correctly
Next commit will have all modified samples.

* Fix #12952: Add generated samples

* Fix #12952: Add missing files
2023-05-16 14:41:51 +08:00
Andrii Serkes
fbf42de200 Fix JsonNullable issue for Helidon generators (#15423)
* fix JsonNullable issue

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples, refactoring

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples, refactoring

Signed-off-by: aserkes <andrii.serkes@oracle.com>

* update samples

Signed-off-by: aserkes <andrii.serkes@oracle.com>

---------

Signed-off-by: aserkes <andrii.serkes@oracle.com>
2023-05-16 14:34:37 +08:00
William Cheng
6d56a1911e add new file 2023-05-16 14:32:52 +08:00
William Cheng
5ffa233dfe update asciidoc samples 2023-05-16 14:18:14 +08:00
William Cheng
1c56b07634 update c# samples 2023-05-16 14:17:42 +08:00
Furer Alexander
8b64fa54b2 Update index.mustache (#15481)
set toc level to 4 (accordingly to generated layout)
2023-05-16 14:06:57 +08:00
devhl-labs
25620e7df8 removed extra line break (#15507) 2023-05-16 14:05:53 +08:00
devhl-labs
cc1226c0db [csharp-netcore] Zero based inner enum sample (#15506)
* added to the sample

* build samples again
2023-05-16 14:05:17 +08:00
William Cheng
c5a1dbecfb [openapi-normalizer] enable some rules by default (#15501)
* enable certain normalizer rule by default

* minor fix

* better error handling

* update doc
2023-05-16 14:04:52 +08:00
William Cheng
d02679b5b6 rename method to avoid code analysis error (#15508) 2023-05-16 13:59:20 +08:00
William Cheng
01ed5975e1 rename python-nextgen to python (#15504) 2023-05-16 13:54:07 +08:00
martin-mfg
dd6ccaa84f import @Valid in Spring delegates (#15330) (fix #15213) 2023-05-15 14:55:21 +03:00
Oleh Kurpiak
54cb33c6a1 [Spring] remove deprecated annotation from no-args constructor (#15512) 2023-05-15 14:13:18 +03:00
zaenk
66caaf9a33 [kotlin-spring] interfaceOnly=true flag skips spring-boot plugin repackage goal (#15495)
As interfaceOnly=true not generates main class the repackage goal for the artifact fails.

This change applies the same template as used in JavaSpring or in kotlin-spring spring-cloud library.
2023-05-15 11:52:55 +01:00
William Cheng
b6b888302e use go-petstore.yaml in debugging test 2023-05-14 23:06:20 +08:00
William Cheng
f0519eb934 Fix Go client tests (#15505)
* fix go tests

* more fixes

* fix mock
2023-05-14 21:17:48 +08:00
devhl-labs
fd20632ba1 [csharp] Changed enums to start from 0 (#15503)
* zero based enums

* changed locale
2023-05-14 16:35:54 +08:00
William Cheng
780d266fe1 Decommission python client generator (#15486)
* decomission python client generator

* udpate

* update doc
2023-05-14 16:33:13 +08:00
devhl-labs
cc2dc65496 fixed the order to match the constructor (#15500) 2023-05-13 10:45:03 +08:00
Ween Jiann
78bffff8f3 [Go] Update API naming to follow Golang standard pkg (1 line change) (#15331)
* Add apiNameSuffix to AbstractGoCodegen

* Regenerate files

* Update tests

* Regenerate files

* Update test files

* Regenerate for CI test

* Regenerate for CI test

* Remove some docs

* Add files back
2023-05-13 09:40:26 +08:00
Beppe Catanese
aeecd9cc26 Correct script in PULL_REQUEST_TEMPLATE.md (#15480) 2023-05-12 15:03:22 +08:00
William Cheng
3371e883ab Decommission python-legacy, python-prior client generators (#15475)
* decommission python-legacy, python-prior client generators

* update tests

* update doc
2023-05-12 13:46:39 +08:00
Noor Dawod
c84b949df1 Encode a Set in toJson() properly (#15435)
* Convert `Set` to `List` in `toJson()` for properly encoding a set.

* Generate samples code.

* Convert to List before encoding in `toJson()`.

* Add `!` for nullable properties.
2023-05-11 17:40:41 +08:00
martin-mfg
e152799569 [JAVA] fix "text/plain" with charset specifications (#15399) 2023-05-11 16:47:42 +08:00
devhl-labs
977de5b324 moved deserialization to template (#15474) 2023-05-11 16:44:37 +08:00
Bodo Graumann
fc71f98bed [typescript] Add missing types field to export declaration (#15403)
* Add types to exports in package.json

* Regenerate and build petstore samples
2023-05-11 09:59:43 +02:00
William Cheng
4384198cb1 update README with v7.0.0 2023-05-11 10:46:55 +08:00
William Cheng
f8e15f1f96 Merge remote-tracking branch 'origin/7.0.x' 2023-05-11 10:43:37 +08:00
William Cheng
7f8b853f50 Prepare 6.6.0 release (#15466)
* prepare 6.6.0 release

* update samples
2023-05-11 10:01:36 +08:00
William Cheng
1d2d56ab65 Merge remote-tracking branch 'origin/master' into 7.0.x 2023-05-10 17:20:38 +08:00
William Cheng
bb8098a66f add --quite to mvn cmd in travis.ci 2023-05-10 17:17:08 +08:00
William Cheng
edc589ac81 update doc 2023-05-10 17:08:48 +08:00
Jérôme Tama
6e747259ae Initial OIDC support (#15417)
* Initial OIDC support

* Removes 'println'
Changes OIDC to OpenIdConnect
Adds generated files

* fix rebase errors
2023-05-10 16:51:37 +08:00
William Cheng
9ace780eac update samples 2023-05-10 15:14:29 +08:00
William Cheng
0c3460f95b Merge remote-tracking branch 'origin/master' into 7.0.x 2023-05-10 15:00:56 +08:00
Tiffany Marrel
8a6c708884 [Java] Cleanup documentation (#15300)
* [Java] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Java] fix anchor links in documentation
2023-05-10 14:14:44 +08:00
Tiffany Marrel
f9937e77d6 [csharp C#] cleanup documentation (#15305)
* [C# csharp] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [C# csharp] fix anchor links in documentation
2023-05-10 14:11:43 +08:00
Tiffany Marrel
ef5dc1c8a0 [Julia] Cleanup README docs (#15295)
* [Julia] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Julia] fix anchor links in documentation
2023-05-10 14:10:35 +08:00
Jacob Wang
b4d2c14f12 Update scala versions to 2.13.10 and 2.12.17 (#15459)
* Update scala versions to 2.13.10 and 2.12.17

* update samples
2023-05-10 01:30:45 +08:00
Nuno Miguel Micaelo Borges
4e27041bdc Add microprofile OpenApi annotations to JavaRxSpec (quarkus library). Add OpenID support (core) (#15407)
* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

* Issue #795: Add microprofile OpenAPI annotations for quarkus library in JaxRsSpec

---------

Co-authored-by: Nuno Borges <Nuno.Borges@ctw.bmwgroup.com>
2023-05-10 00:55:41 +08:00
Tiffany Marrel
c251202869 [Python] cleanup documentation (#15301)
* [Python] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Python] fix anchor links in documentation
2023-05-09 16:24:56 +00:00
Csaba Kozák
25aba7279a [kotlin][client] Use Kotlin code style in parameter enum class names (#15447)
* [kotlin][client] Use Kotlin code style in parameter enum class names

before: MyParam_myOperation
after: MyParamMyOperation

* [kotlin][client] update generated samples
2023-05-09 16:33:30 +01:00
Csaba Kozák
da9ad4a008 [kotlin][client] Small improvements (#15429)
* [kotlin][client] update Gradle wrapper in generated project

* [kotlin][client] Add @JsonClass(generateAdapter = false) to generated enums when using moshi library

This is needed, so the moshi generated R8 rules will include the enum classes:

https://github.com/square/moshi#enums

* [kotlin][client] Update generated samples
2023-05-09 16:28:54 +01:00
Tiffany Marrel
ef35e6d7ea [rust] fix documentation of API authorization in README files (#15352)
fix hierarchy level + align wording across generators
2023-05-09 14:30:54 +08:00
Tiffany Marrel
76fd2a2f66 [Scala] cleanup documentation (#15304)
* [Scala] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [Scala] fix anchor links in documentation
2023-05-09 14:30:28 +08:00
Tiffany Marrel
1443dd9493 [perl] fix documentation of API authorization in README files (#15356)
align wording across generators
2023-05-09 14:26:30 +08:00
Tiffany Marrel
9cb14aeb8c [php] fix documentation of API authorization in README files (#15306)
fix hierarchy level + align wording across generators
2023-05-09 14:25:14 +08:00
Tiffany Marrel
4deaad557e [Go] fix documentation of API authorization in README files (#15345)
align wording across generators
2023-05-09 14:24:16 +08:00
Tiffany Marrel
adfb963831 [objc] fix documentation of API authorization in README files (#15347)
fix hierarchy level + align wording across generators
2023-05-09 14:23:19 +08:00
Tiffany Marrel
55e9f66cae [JavaScript] fix documentation of API authorization in README files (#15346)
align wording across generators
2023-05-09 14:22:41 +08:00
Tiffany Marrel
be651e7776 [powershell] cleanup documentation (#15355)
* [powershell] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [powershell] fix anchor links in documentation
2023-05-09 14:21:09 +08:00
Tiffany Marrel
2b19d5f94d [Ruby] fix documentation of API authorization in README files (#15353)
align wording across generators
2023-05-09 14:17:34 +08:00
Tiffany Marrel
e32da0efda [apex] fix documentation of API authorization in README files (#15348)
align wording across generators
2023-05-09 14:16:58 +08:00
Tiffany Marrel
63913f2d0a [c] fix documentation of API authorization in README files (#15341)
align wording across generators
2023-05-09 14:15:27 +08:00
Tiffany Marrel
ba8ca1e7ac [R] fix documentation of API authorization in README files (#15354)
align wording across generators
2023-05-09 14:07:50 +08:00
Jorge Rodríguez Martín
fb059c259c [BUG][JAVA][restTemplate] ApiClient is not compatible with spring-web 6 Observation API (#15421)
* ApiClient is not compatible with spring-web 6 Observation API. Field uri is never filled

* Update samples
2023-05-09 14:04:51 +08:00
William Cheng
3cf646cda8 [csharp-netcore] fix back slash in regex (#15441)
* fix back slash in regex (csharp-netcore)

* undo add pattern test

* update shasum
2023-05-09 13:52:46 +08:00
devhl-labs
7bc10b03d0 [csharp-netcore][generichost] Move deserialization to method (#15454)
* removed extra line break

* moved deserialization to method
2023-05-09 13:47:15 +08:00
Dan Čermák
ff9b38404e Fix repository url in pyproject.toml (#15444)
The url had the repo id & user id in the wrong order
2023-05-09 01:29:34 +08:00
Tiffany Marrel
3685c0c1d6 [dart] cleanup documentation (#15344)
* [dart] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [dart] fix anchor links in documentation

* [dart] address review comments

This reverts commit cff17aca and part of commit eecf1dd4
2023-05-09 01:27:51 +08:00
Ahmed Fwela
3d722c1083 [dart-dio] fix endpoints returning null (#15433)
* fix endpoints returning null

* add const back
2023-05-09 01:27:29 +08:00
William Cheng
f82a311bf8 update samples 2023-05-08 18:02:59 +08:00
Dan Čermák
5d602c628e Add Python 3.11 to github-workflow.mustache (#15442) 2023-05-08 17:51:42 +08:00
Beppe Catanese
3d2ec72461 [JAVA] Okhttp-gson: blank line between annotations and method signature (#15430)
* Remove extra blank line

* Regenerate samples
2023-05-08 14:39:46 +08:00
William Cheng
b4eb7071e4 [python-nextgen] support constructor with position argument in oneOf/anyOf model (#15434)
* support position constructor

* update samples

* update test
2023-05-08 10:00:57 +08:00
Tomasz Prus
72cb03b865 [python-nextgen] fix typing for bytes with validations (#15437)
* [python-nextgen] fix typing for bytes with validations

* update samples
2023-05-08 10:00:29 +08:00
devhl-labs
c6b31a3e08 removed extra line break (#15438) 2023-05-08 09:54:34 +08:00
William Cheng
cc620d8ba2 fix incorrect mustache tag (#15424) 2023-05-05 16:15:53 +08:00
Tiago Silva
56495d1486 Python Allow clients to define TLS Server name when using (#15283)
This PR allows users to define custom SNI when using the python clients

Fixes https://github.com/OpenAPITools/openapi-generator/issues/15282
2023-05-05 16:11:57 +08:00
William Cheng
737cb362b0 add option, update doc (#15419) 2023-05-05 14:59:33 +08:00
William Cheng
7259d812bd [csharp-netcore] Better handling of oneOf/anyOf with duplicated data type (#15377)
* better handling of oneOf/anyOf with duplicated data type

* update generichost template

* remove newline in eof

* bug fix (#15413)

---------

Co-authored-by: devhl-labs <shawnkanyer@gmail.com>
2023-05-05 14:25:45 +08:00
Jorge Rodríguez Martín
76c05b2991 Add property generateClientAsBean for config creation of ApiClient.java and XXXApi.java (#15416) 2023-05-05 14:18:44 +08:00
William Cheng
182240ea1d [csharp-netcore] Better regular expression (#15378)
* do not escape regular expression in c#

* update samples

* better code format
2023-05-04 18:42:30 +08:00
William Cheng
6fa089adee Add @deprecated to methods in python-nextgen (#15380)
* add @deprecated to methods in python-nextgen

* add deprecated as comment

* add deprecation warnings

* add warnings import

* remove import
2023-05-04 18:17:24 +08:00
William Cheng
854afc9be1 Update elm workflow to cover more tests (#15415)
* add more elm tests

* trigger build failure

* Revert "trigger build failure"

This reverts commit 83b407f5a1.
2023-05-04 16:16:58 +08:00
William Cheng
bc6d30832b add copyright, remove unused import (#15394) 2023-05-04 16:14:30 +08:00
William Cheng
a0b79d87f2 Minor improvement to the N4JS client generator (#15414)
* minor improvement to the N4JS client generator

* mark generator as beta
2023-05-04 16:13:10 +08:00
mmews-n4
db478c3452 Support language N4JS (2nd) (#15397)
* n4js initial commit

* incorporate feedback from user

* add tests

* fix media type in case of DELETE method

* fix media type

* some minor fixes

* options fix for booleans

* small fixes

* generated files by ./bin/utils/ensure-up-to-date

* remove String::toLowerCase due to de.thetaphi:forbiddenapis

* adjust test expectation

* fix test expectations

* fix test expectation

* add note to section 'Languages/Generators'

* remove file according to review

* replace tabs by spaces

* replace tabs by spaces (2)

* update two generated files

* remove test file

* move statement
2023-05-03 20:50:21 +08:00
William Cheng
aea7cef6a1 Revert "Support language N4JS (#15089)" (#15396)
This reverts commit a83470066e.
2023-05-03 15:43:07 +08:00
mmews-n4
a83470066e Support language N4JS (#15089)
* n4js initial commit

* incorporate feedback from user

* add tests

* fix media type in case of DELETE method

* fix media type

* some minor fixes

* options fix for booleans

* small fixes

* generated files by ./bin/utils/ensure-up-to-date

* remove String::toLowerCase due to de.thetaphi:forbiddenapis

* adjust test expectation

* fix test expectations

* fix test expectation

* add note to section 'Languages/Generators'

* remove file according to review
2023-05-03 15:23:45 +08:00
William Cheng
0cbf118757 add surefire rerun tests (#15390) 2023-05-03 15:19:55 +08:00
Robert Schweizer
0a4648f7a0 fix(python-nextgen): Date query params typo (#15395) 2023-05-03 15:17:51 +08:00
William Cheng
4e8d41bd79 Fix circleci test failures (#15317)
* fix circleci test failures

* trigger test

* update circleici pom.xml

* rearrange test

* comment out tests

* fix test

* comment out python-prior

* comment out test

* fix import

* comment out tests
2023-05-03 15:17:25 +08:00
Christopher Kobusch
45a3fe05f5 Add Xojo client generator (#15194)
* Add Xojo client

* Add Xojo client generator

* Add Xojo client generator

* hide generation timestamp for xojo samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-05-03 14:06:40 +08:00
Beppe Catanese
61aadb32bd [GO] Add go.mod in go-gin-server generator (#15339)
* Add go.mod

* Add test

* Generate import path

* Update samples
2023-05-03 11:45:24 +08:00
William Cheng
92bcdea2fa Revert "Remove CXF imports and dependency (#15364)" (#15392)
This reverts commit 6686fb87b9.
2023-05-03 11:00:12 +08:00
William Cheng
021d3a311a [python-nextgen] Add ApiResponse object (#15367)
* add ApiResponse object

* fix tests

* improve api response

* add back _preload_content, add tests
2023-05-03 09:45:54 +08:00
William Cheng
bec32ae67f update samples 2023-05-03 09:43:43 +08:00
vanwobe
8a9afabb61 https://github.com/OpenAPITools/openapi-generator/issues/14599 (#15388)
Co-authored-by: vanwobe <bert.vanwolleghem@ext.ec.europa.eu>
2023-05-03 09:30:11 +08:00
Michel Wohlert
502a8a8ebf Fix request parameter encode call (#15313)
Co-authored-by: Wohlert, Michel <michel.wohlert@karlstorz.com>
2023-05-03 01:10:32 +08:00
Steffen Nießing
6686fb87b9 Remove CXF imports and dependency (#15364) 2023-05-03 01:09:16 +08:00
Albina Gimaletdinova
f8d5c547e3 Add urls to ktor and Vert.x in README (#15369) 2023-05-02 23:11:24 +08:00
Peter Leibiger
e356b770d2 [dart][dart-dio] Fix property deprecation and add parameter deprecation (#15374)
Addresses problems in #13818
2023-05-02 19:42:06 +08:00
Noor Dawod
fefbfd6aa2 Drop default value when unnecessary. (#15368)
* Drop default value when unnecessary.

* Simplify code.

* Simplify code.

* Generate Petstore sample code.
2023-05-02 19:41:33 +08:00
André Andersson
42fa07dd33 [Elm] Add support for petstore spec (#15257)
* Add petstore config

* Expand lambda to allow formatting of partials

* Fix order of operation with parenthesis

* Fix not exposing needed enum to string converters

* Add support for form params including files

* Add generated petstore client

* Regenerate existing elm client

* Add script that all files compile successfully

* Remove old unmaintained petstore client

* Add pipeline to try and compile elm clients
2023-05-02 16:50:57 +08:00
William Cheng
961980f284 [python-nextgen] add support for StrictBytes (#15365)
* add strictbyte support in python-nextgen client

* update samples

* use union of strictbytes, strictstr for backward compatibility
2023-05-01 10:51:22 +08:00
William Cheng
c7c5dd2673 remove unused file 2023-05-01 10:05:39 +08:00
Tiffany Marrel
5f8c4ec640 [swift5] cleanup documentation (#15351)
* [swift5] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [swift5] fix anchor links in documentation

---------

Co-authored-by: Tiffany Marrel <tiffany.marrel@flowable.com>
2023-04-30 09:11:45 +01:00
William Cheng
ab819b9b18 mark python-nextgen as stable (#15360) 2023-04-29 13:51:01 +08:00
William Cheng
1f4d323020 fix enum support in oneof/anyof in python-nextgen (#15340) 2023-04-29 13:50:47 +08:00
Rodrigo de Almeida - RMA3
e07069731d [JAVA] Enumeration comparison in Java using equalsIgnoreCase when String - Fix issue 8084 (#15273)
* fix issue 8084

* add config

* add config

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-28 17:27:41 +03:00
William Cheng
64c3be93a8 fix URL to 6.6.0 snapshot version 2023-04-28 14:08:18 +08:00
William Cheng
2bd1a15217 [python-nextgen] fix empty dict in body parameter (#15336)
* add more tests for python-nextgen

* update samples

* add fix for empty dict body

* update samples
2023-04-28 14:06:27 +08:00
William Cheng
f4c041e496 fix to_json, to_dict in python nextgen (#15337) 2023-04-28 14:04:30 +08:00
William Cheng
f4e0eb9bc9 Update git-commit-id maven plugin to newer version (#15332)
* update git commit plugin to newer version

* roll back to previous version
2023-04-28 08:45:14 +08:00
Oleh Kurpiak
1f23b019fa [Spring] fix Paginated without params (#15315) (fix #15265) 2023-04-27 14:32:11 +03:00
Tiffany Marrel
da96058f5b [kotlin] cleanup documentation (#15307)
* [kotlin] fix documentation of API authorization in README files

fix hierarchy level + add internal links + align wording across generators

* [kotlin] fix anchor links in documentation

---------

Co-authored-by: Tiffany Marrel <tiffany.marrel@flowable.com>
2023-04-27 11:33:15 +01:00
William Cheng
e211e1451d update extension to 1.17, update config (#15326) 2023-04-27 15:01:09 +08:00
martin-mfg
e0f42961c5 add missing documentation for maven and gradle options (#15322) 2023-04-27 12:43:37 +08:00
CTerasa-ep
b847140834 [C++][Pistache] Generate API generalization interface (#15279)
* [C++][Pistache] Refactor setupSupportingFiles

Supporting files are set up in the CppPistacheServerCodegen()
constructor as well as in processOpts(). Refactor the code and extract a
method setupSupportingFiles().

* [C++][Pistache] Refactor: Simplify isQueryParam condition

Both branches of the if/else do the same steps. Refactor this out and
invert logic.

* [C++][Pistache] Refactor: Add injectImplInFilename

Both branches of the if/else if do the similar steps and are dependent
on the suffix. Make this obvious by introducing a new method
injectImplInFilename(String result, String suffix).

* [C++][Pistache] Refactor: injectImplInFilename: remove index search

We do not need the separatorChar index to inject the "Impl" string.
Simply truncate the whole string.

Also rename the parameter from 'result' to' filename'.

* CppPistacheServer: Refactor postProcessOperationsWithModels

Pull out the post-processing for a single operation, and also pull out
post-processing for parameters.

Introduce boolean expressions for supported parsing per parameter, and
consumption of JSON.

Reorder code to make locality more explicit i.e. how consumeJSON and
isParsingSupported is generated and used.

* CppPistacheServer: Refactor to use functional matching

Functional matching like anyMatch() directly state what boolean value is
 searched.

 However, the Predicates deserve to heave names themselves.

* CppPistacheServer: Add base class for Api

Looking at the generated main-api-server.cpp code it gets obvious that
the API classes are self similar with a similar interface.
Only the construction and teh initialization is called in the main()
function. Leverage this fact to create a generalization ApiBase.

Introduce ApiBase as a pure virtual base class to the concrete API
classes and declare init() as virtual.

Pull the route member into the base class.

With this change we could have a container hold all the ApiImpl
objects later and call init() on all of them using a for_each loop.

* CppPistacheServer: Use ApiBase for ApiImpl storage

Refactor the main-api-server template to use a vector for ApiImpl
storage instead of separate objects. This leverages the previously
added ApiBase generalization.

 We push all concrete ApiImpl objects into a vector and call init() on
  each of them.

* [C++][Pistache]: Update generated sample

Due to teh addition of ApiBase class update the generated sample.

* [C++][Pistache] Add comment for postProcessSingleParam

* [C++][Pistache] Rename and comment implFilenameFromApiFilename

While writing the comment, I realized that the method name could be more
precise. Thus rename injectImplInFilename to implFilenameFromApiFilename
and add comment.
2023-04-26 20:01:58 +08:00
William Cheng
b8ccd25a79 [python-nextgen] Various fixes reported by pylint (#15309)
* various pylint fixes

* rearrange test

* Revert "rearrange test"

This reverts commit 24d777a8a8.
2023-04-26 17:12:10 +08:00
Beppe Catanese
6f24ad3625 [JAVA] OkHttp-GSON deprecated field only deprecates getter method (#15287)
* Deprecate build and setter methods

* Test with deprecated property

* Update samples

* Remove extra line

* Regenerate samples
2023-04-26 11:40:30 +08:00
Jaemin Park
de27749047 [cpp-ue4] Fix byte array writing in JSON to be valid base64 string (#15242)
* Fix byte array writing in JSON to be valid base64 string
- remove ToStringFormatArg
- use ToUrlString to path parameters
- use Base64UrlEncode only in ToUrlString

* Use LexToString instead of FString::Format
2023-04-25 00:21:27 +08:00
William Cheng
d6e19f8f55 fix minus sign in enum naming in python-nextgen (#15291) 2023-04-24 16:07:29 +08:00
William Cheng
52417f0597 use Field(...) for required properties in python-nextgen (#15290) 2023-04-24 16:07:09 +08:00
Dávid Gracza
98c2794b5d [Kotlin-Spring] add Kotlin based Spring-cloud openfeign generator (#15048) 2023-04-24 16:02:00 +08:00
William Cheng
e51908f176 [openapi-normalizer] Fix nullable boolean check in oneOf schema (#15276)
* fix nullable boolean check in oneof

* minor fix

* fix spec
2023-04-22 16:39:12 +08:00
William Cheng
b5745e6f26 [python-nextgen] Fix enum query parameter (#15278)
* fix enum query parameter in python-nextgen

* update samples
2023-04-22 16:08:59 +08:00
Matheus Teles
33e0c6775f Update beanValidationCore.mustache (#13631) (fix #3519)
* Update beanValidationCore.mustache

Update to use x-pattern-message for message customization

* Update spring.md

Update this page adding documentation for x-pattern-message

* added unit test
meet requested corrections

* build the project

* remove space

---------

Co-authored-by: Rodrigo de Almeida - RMA3 <rodrigo.ma3@gmail.com>
Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-21 10:08:27 +03:00
Ivo Wever
2679819694 [Ruby] Client: fix base_url when no server_operation_index is defined (#15162)
As discussed in https://github.com/OpenAPITools/openapi-generator/pull/7415#discussion_r1113274416, it seems unlikely the code was correct.

server_operation_index is a hash table. In Ruby, `hash[key]` will return the value associated with `key`. If key is absent, `nil` is returned. Because that is sometimes undesirable, there is also `hash.fetch(key)`, which raises an error if the key is absent. It also allows you to specify a default to fall back on: `hash.fetch(key, default)` will return `default` if the key is absent.

So, since not all users will specify a 'server per operation' (or at least: I'm not), the old code would usually set `index` to the `server_index`, which is initialized to 0. The subsequent `if index == nil` will usually return false (`0 != nil` in Ruby), after which the `server_url` call on line 177 constructs the url based on the `server_operation_variables` and `operation_server_settings`, assuming we are dealing with the case where a server per operation is configured. The case where the url should be constructed from `scheme`, `host`, etc. is only called if either `server_index` is explicitly set to `nil` or the key `operation` is explicitly associated with the value `nil` in the `server_operation_index` hash table, both of which seem inappropriate.
2023-04-21 11:11:42 +08:00
Jaemin Park
e6c64d3917 Fix multi collection format has duplicated prefix (#15260)
Co-authored-by: Jaemin Park <nullbus@nm-fc.com>
2023-04-21 11:08:32 +08:00
Rodrigo de Almeida - RMA3
2c78ff78ed Fix issue 15264 - Replace @Controller with @RestController when using useSpringController (#15266)
* fix issue 15264

* If useResponseEntity true then keep @Controller if not @RestController

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-20 18:35:09 +03:00
Oleh Kurpiak
ede1c9ca3e update samples 2023-04-20 17:47:44 +03:00
Vidur B
564a86ccda fix: set final query parameter value to enum value (#15133)
Use `<enum>.value` for query parameters that take an Enum, as otherwise the `name` of the enum will be used.
2023-04-20 15:54:57 +08:00
William Cheng
90d7da0b5f fix travis badge in readme 2023-04-20 14:17:17 +08:00
William Cheng
fdf53ac01e update mvn in workflow to use gradle enterprise (#15256) 2023-04-19 16:17:45 +08:00
William Cheng
0176957e26 [python-nextgen] better sample code (#15248)
* better python-nextgen sample code

* remove future import

* fix signing doc

* better test

* use hasHttpBearerMethods instead
2023-04-19 15:55:06 +08:00
yateeshc
e3fdac0711 rename hasBearerMethods to hasHttpBearerMethods (#15259) 2023-04-19 15:20:04 +08:00
Rodrigo de Almeida - RMA3
9b2917f3a9 Fix issue 12341 (#15234)
* if method return type is void then no return

* build the project

* fix build the project

* fix build the project

* fix return

* fix build the project

* fix build the project

* fix build the project

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2023-04-18 23:56:12 +03:00
William Cheng
f5b4490bc9 [python-nextgen] Fix dict of dict of object in python-nextgen (#15239)
* fix dict of dict of object in python nextgen

* update samples
2023-04-18 14:59:08 +08:00
William Cheng
1881100742 use png version of pinterest logo 2023-04-18 12:00:41 +08:00
William Cheng
1ac39c7fa9 add Pinterest to the user list (#15247) 2023-04-18 11:51:53 +08:00
William Cheng
58425f54c0 Add workflow for gradle enterprise (#15211)
* add workflow for gradle enterprise

* add xml files

* remove build cache

* install

* update

* just clean

* trigger build

* mvn clean install
2023-04-18 11:38:53 +08:00
Robin Karlsson
91815bf555 [java] Fix anyof generics (#15210) (#15230) 2023-04-17 14:43:19 +08:00
André Andersson
096aabd360 Fix printing empty notes (#15238) 2023-04-17 14:42:30 +08:00
William Cheng
70a6106626 add null check in string with regular expression (#15233) 2023-04-16 23:46:17 +08:00
Robin Karlsson
738beb401e [java][jersey] Fix UUID path parameters (#15114) (#15229) 2023-04-16 23:32:15 +08:00
Dennis Kugelmann
03359ae4d5 [pub] Add repository and publish_to as configurable option in pubspec.yaml (#15232)
* Add repository as configurable option to pub client libraries

* Generate files

* Make repository null by default

* Update pubRepository mustache template

Co-authored-by: Ahmed Fwela <63286031+ahmednfwela@users.noreply.github.com>

* Regenerate samples and documentation

* Support setting publish_to in pubspec.yaml

---------

Co-authored-by: Ahmed Fwela <63286031+ahmednfwela@users.noreply.github.com>
2023-04-16 21:37:29 +08:00
Noor Dawod
cbf5598c59 Fix generated code when a list is actually a set. (#15027) 2023-04-16 21:32:59 +08:00
William Cheng
7a41231721 minor bug fix to openapi normalizer (#15225) 2023-04-15 22:00:03 +08:00
William Cheng
9ad695d52c better npe in processUseAllOfRefAsParent (openapi normalizer) (#15224) 2023-04-15 15:54:54 +08:00
William Cheng
c5a8fafc3d remove deprecated warning (#15223) 2023-04-15 15:24:14 +08:00
William Cheng
5832731c0e [java] Update undertow to newer version (#15222)
* update undertow to newer version

* fix
2023-04-15 14:56:48 +08:00
Tom Sanidas
6a67551ea5 Issue 3175 - using @objcMembers to expose all props and funcs to ObjC code when objcCompatible is requested. (#15188) 2023-04-14 09:31:59 +01:00
John Dimeo
90b78fe97e Jersey2/3 - Probe content type for multipart upload parts (#14965)
* Probe content type for multipart form uploads since many servers require each part to correctly identify its type.

* Update samples

* Add explanatory comment

* Update samples with comment
2023-04-14 12:15:13 +08:00
Robin Karlsson
b247ad75e1 [java] Add public static version field (#15108) 2023-04-14 01:06:54 +08:00
Barnaby Court
53d9d30834 For microprofile java - use {{rootJavaEEPackage}} instead of {{javaxPackage}} (#15179) 2023-04-14 00:59:33 +08:00
André Andersson
241d649164 Fix list of type not including correct import (#15171) 2023-04-14 00:14:28 +08:00
Andrii Serkes
60e6d2d57f fix Jsonb issue for Helidon SE Client generator (#15146)
Signed-off-by: aserkes <andrii.serkes@oracle.com>
2023-04-13 23:28:12 +08:00
Ween Jiann
1163b9cd3b [go-server] Fix: name declared and not used (#15201)
* Fix: name declared and not used

* Update samples

* Re-enable workflow
2023-04-13 11:04:00 +08:00
Robbert van Waveren
8a426b2f4a allow to specify the useOneOfInterfaces option for java (#15042) 2023-04-12 15:21:34 +03:00
William Cheng
935146d187 Merge remote-tracking branch 'origin/master' into 7.0.x 2023-04-12 17:51:47 +08:00
William Cheng
c0322b18a4 Improve Go Github workflow (#15200)
* improve go sample workflow gh

* update

* trigger build

* Revert "trigger build"

This reverts commit 129bc30cfb.

* comment out go chi server tests
2023-04-12 17:27:41 +08:00
Ween Jiann
04441188c6 [go-server] Update dependencies and use generics (#15087)
* Update dependecies and go version

* Use generics for recurse

* Fix helpers.mustache

* Regenerate samples
2023-04-12 16:37:39 +08:00
William Cheng
e852ceceef add lwj5 to go tech comm (#15199) 2023-04-12 16:26:46 +08:00
Beppe Catanese
0fff9642bf Add blog Mustache templates with OpenAPI generator (#15198) 2023-04-12 16:12:38 +08:00
Steven Goris
0b41ee1c78 Issue #15095: Improve gradle task documentation (#15193)
Co-authored-by: Steven <steven.goris@nike.com>
2023-04-12 11:38:09 +08:00
William Cheng
ff48f80379 udpate vertx to newer version 3.5.2 (#15197) 2023-04-12 11:32:11 +08:00
Robert Schweizer
448cbfd018 [python-nextgen] Limit allowed pydantic version range (#15189)
Align the lower limits between pyproject.toml and setup.py.

Set a common upper limit of <2, because version 2 brings breaking
changes.
2023-04-12 11:08:28 +08:00
William Cheng
f8cb5fde97 Add tests for aspnetcore 6.0 useSwashBuckle option (#15176)
* add test for aspnetcore 6.0 useSwashBuckle option

* update samples

* update petstore with more tests

* add options

* update samples

* remove unused files
2023-04-11 17:43:39 +08:00
Ween Jiann
792c49a0ce [go-server] Change Routes type from []Route to map[string]Route (#15084)
* Change Routes to map[string]Route

* Fix linting issues

* Regenerate samples
2023-04-11 15:40:06 +08:00
Ween Jiann
81cafdc196 [go] Fix: reservedWordsMappings not checked for reserved word (#15083)
* Fix: reservedWordsMappings not checked for reserved word

* Fix coding issue
2023-04-11 15:39:53 +08:00
Ween Jiann
8ce990d3d7 [go-server] Add ability to handle parameters of number type (#15079)
* Add ability to handle parameters of number type

* Generate samples

* Add handling for number without format

* Regenerate samples

* Fix indentation
2023-04-11 15:38:58 +08:00
Beppe Catanese
2b796d5c61 [Go] Format error message only when Kind is Struct (#15154)
* Check if Kind is Struct

* Commit regenerated files

* Tabs indentation instead of 4-space

* Commit regenerated files
2023-04-11 14:39:08 +08:00
leonluc-dev
a17bb59097 Added useSwashBuckle condition (#15157)
Added useSwashBuckle condition to Swashbuckle attributes in models
2023-04-10 18:21:32 +08:00
martin-mfg
e9e0f50ab6 Update customization.md (#15172)
Clarify which OpenAPI Generator version exactly introduced [Set skipFormModel to true by default](https://github.com/OpenAPITools/openapi-generator/pull/8125).
2023-04-10 17:16:19 +08:00
Amrith Nayak
5d490d742a Add Flipkart as a company using OpenAPI Generator (#15175)
* Adding Flipkart as a openapi generator user

* chore: added flipkart company logo static asset

* fix: fixed typo in users
2023-04-10 17:14:25 +08:00
devhl-labs
1e2f16ed69 [csharp-netcore] Explicitly implement IValidatableObject (#15160)
* explicit interface implementation

* minor spacing change
2023-04-10 11:20:48 +08:00
Takeshi Masaki
5e3bb7e33e [Ruby] fix RSpec documentation URL (#15164) 2023-04-10 10:44:28 +08:00
Tushar
a4f5a74d5b fix(python-nextgen): dependency incompatiblity (#15167)
Downgrade tox and flake8. Alternateively, we can increase minimum python version to 3.8.1
2023-04-10 10:31:53 +08:00
Tushar
4a83c9181f fix(python-nextgen): Use spec format for authors in pyproject (#15170) 2023-04-10 10:31:37 +08:00
devhl
b57d35b744 bumped package versions 2023-04-09 19:27:47 -04:00
Ween Jiann
a5bc7f107d [typescript] Make TypeScriptClientCodegen extend AbstractTypeScriptClientCodegen (#15096)
* Make TypeScriptClientCodegen extend AbstractTypeScriptClientCodegen

* Regenerate samples

* Update docs

* Clean up

* Remove updated toEnumName

* Fix: SUPPORTS_ES6

* Fix: `setSupportsES6` should not be set directly in unit tests

* Set modelPropertyNaming to camelCase
2023-04-09 20:43:58 +02:00
Martin Delille
f40433d28f qt ctest (#14968)
* [cpp-qt-client] Fix warning about deprecated count() method

* [cpp-qt-client] Ignore build directory

* [cpp-qt-client] Use ctest

* Fix CMakeLists.txt for cpp-qt-client
2023-04-07 16:24:11 +08:00
William Cheng
b2be16746c fix link, add links to posts (#15153) 2023-04-07 16:14:24 +08:00
William Cheng
e8e62ccadb simplify enum of string & string to enum of string (#15149) 2023-04-07 15:54:42 +08:00
William Cheng
bda2e4a167 fix NPE in simplifyOneOfAnyOf (#15142) 2023-04-07 09:34:20 +08:00
William Cheng
bd7bc9aa79 [python-nextgen] Add bytearray, none_type as primitive type (#15130)
* add bytearray, none type as primitive type

* update samples

* update doc
2023-04-07 09:34:04 +08:00
William Cheng
ba2c42e34b add override to java native pojo (#15125) 2023-04-06 15:00:14 +08:00
William Cheng
07227d4650 add support for union of strictfloat and strictint (#15124) 2023-04-06 11:51:12 +08:00
Tommaso Barbugli
b409ceb3a0 respect api visibility for oneof enum (#15122) 2023-04-04 09:45:27 +01:00
devhl-labs
3b11187200 made escaped regex be not literal strings (#15107) 2023-04-04 15:15:14 +08:00
William Cheng
3d7c173eb2 update ue4 c++ client 2023-04-01 19:11:37 +08:00
Samuel Kahn
033b946856 [cpp-ue4] Series of fixes for cpp-ue4 (#15068)
* [cpp-ue4] Removed warning related to wrong casing of HTTP module

* [cpp-ue4] Fixed compilation error when using file parameters in json body generation

* [cpp-ue4] Do not write the form param json body generation unless there actually are form params

* [cpp-ue4] Added support for enum values in path params
2023-04-01 19:01:45 +08:00
William Cheng
938c72cec0 trigger build 2023-04-01 19:00:14 +08:00
William Cheng
5d1e18306a Prepare 6.6.0-SNAPSHOT (#15100)
* set 6.6.0 snapshot version

* update samples

* update readme
2023-04-01 18:48:01 +08:00
William Cheng
7417432a54 Prepare 6.5.0 release (#15099)
* 6.5.0 release

* update samples
2023-04-01 15:03:35 +08:00
devhl-labs
c838b1d1f9 made default strings use string literal (#15049) 2023-04-01 10:36:10 +08:00
William Cheng
0dc84520e7 [python-nextgen] use __fields_set__ to determine if the field is needed in to_dict (#15086)
* use __fields_set__ to determine if the field is needed

* fix tests
2023-04-01 10:23:38 +08:00
William Cheng
1710615fd8 fix python nextgen github workflow (#15092) 2023-03-31 22:40:23 +08:00
William Cheng
b59d535176 [python-nextgen] Fix binary response (#15076)
* fix binary response in python nextgen client

* update samples
2023-03-31 16:16:58 +08:00
William Cheng
05fa5601dd [python-nextgen] fix circular reference import (#15070)
* fix ciruclar reference import in python nextgen

* update samples
2023-03-30 10:07:34 +08:00
William Cheng
3ccd9be080 remove absolute_import (#15071) 2023-03-30 10:07:15 +08:00
William Cheng
4895b56089 [python-nextgen] fix pattern with double quote (#15073)
* fix pattern with double quote

* fix test
2023-03-30 10:06:24 +08:00
Shane Perry
0973795996 Added Micronaut configuration points (#15005)
* Added ability to configure the AuthorizationFilter pattern

* Added configuration for the Client annotation

* Generated samples

* Remove extra newline from template

* Updated samples

* Declarative client annotation path attribute only supported when id attribute is set

* Cleaned up style of generated file

---------

Co-authored-by: Shane Perry <shane.perry@acimacredit.com>
2023-03-29 22:05:41 +08:00
William Cheng
9fa032b365 add isOverridden, update java pojo with setter for parent prop (#15051) 2023-03-29 10:57:49 +08:00
RInverid
36332331e4 Skip null form values for Java native request builder (#15036) 2023-03-29 10:55:28 +08:00
William Cheng
1cdcaeb1b9 update python-nextgen samples 2023-03-26 23:45:20 +08:00
Mourad
d3de8abc25 Fix typo in api_client.mustache "configuraiton -> configuration" (#15050) 2023-03-26 23:40:06 +08:00
William Cheng
a4dd90c01d Better allOf handling in fromProperty (#15035)
* fix allOf handling in fromProperty

* add null check, update samples

* update dart generator to handle allof with a single ref
2023-03-26 15:06:27 +08:00
William Cheng
56e5122a6a Add new openapi-normalizer rule REFACTOR_ALLOF_WITH_PROPERTIES_ONLY (#15039)
* add new rule REFACTOR_ALLOF_WITH_PROPERTIES_ONLY

* update other attributes

* minor refactoring
2023-03-26 11:56:26 +08:00
CTerasa-ep
f2e05555f3 Refactor ModelUtils methods without logic changes (#15030)
* Refactor: ModelUtils: Harmonize isIntegerSchema with isStringSchema

Make code isIntegerSchema look similar to isStringSchema and remove
if-clause in favor to bool-OR '||'.

* Refactor: ModelUtils: Simplify isMapSchema

Factor out if sequence and use "return A || B || C;" scheme instead.

* Refactor: ModelUtils: Simplify isUnsignedIntegerSchema

Factor out 'if (x) {return true;} else {return false;}' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isUnsignedLongSchema

Factor out 'if (x) {return true;} else {return false;}' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isTypeObjectSchema

Factor out 'if (x) {return true;} return false;' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isComposedSchema

Factor out 'if (x) {return true;} return false;' and use
'return x;' instead.

* Refactor: ModelUtils: Simplify isBooleanSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isNumberSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isDateSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isDateTimeSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isPasswordSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isByteArraySchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isBinarySchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isFileSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isUUIDSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isEmailSchema

Factor out 'if (x) {return true;} return y;' and use
'return x || y;' instead.

* Refactor: ModelUtils: Simplify isObjectSchema

Factor out 'if (x) {return true;} if (y) {return true;} return z;' and
use 'return x || y || z;' instead.

* Refactor: ModelUtils: Simplify isModel

Factor out 'if (x) {return false;} if (y) {return true;} return z;' and
use 'return !x && (y || z);' instead.

* Refactor: ModelUtils: Simplify isModelWithPropertiesOnly

Factor out 'if (x) {return false;} if (y) {return true;} return false;'
and use 'return !x && y;' instead.

* Refactor: ModelUtils: Simplify getApiResponse

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify getParameter

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify getCallback

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify getHeader

Factor out 'if (x) {return null;} if (y) {return z;} return null;'
and use 'if (!x && y) {return z;} return null;' instead.

* Refactor: ModelUtils: Simplify isExtensionParent

Factor out 'if (x) {return false;} else {y}'
and use 'if (x) {return false;} y' instead.

* Refactor: ModelUtils: Simplify isComplexComposedSchema

Factor out 'if (x) {return true;} return false;' and use 'return x;'
instead.
2023-03-26 10:47:18 +08:00
William Cheng
e925336daf remove allowStringInDateTimeParameters option (#15046) 2023-03-26 10:46:15 +08:00
Oleh Kurpiak
18e28ab761 [Java] maven plugin to clean-up output before generation (#14935) 2023-03-25 15:44:40 +08:00
William Cheng
25adbe33a6 update cpp ue4 samples 2023-03-25 15:23:25 +08:00
axesider
0677eb5075 Correct check in SetHttpRetryManager (#15041) 2023-03-25 15:09:06 +08:00
devhl-labs
ca757b703e better handling of form parameters (#15040) 2023-03-25 15:08:20 +08:00
msosnicki
41d691334a Using nix flakes for developer shell (#14888) 2023-03-24 22:32:22 +08:00
William Cheng
f5e427ad52 Do not add schema / class name mapping where custom mapping exists (#14984)
* fix #13150 Do not add schema / class name mapping where custom mapping exists

* update test spec

* improve import

* fix import for mapped models

* fix python

* code clean up

* fix dart client import

* fix dart:core import

* better import

* add tests

---------

Co-authored-by: Bernie Schelberg <bernard.schelberg@mywave.ai>
2023-03-24 22:20:04 +08:00
William Cheng
bde5c10092 update optional parameters in jsdoc (#15032) 2023-03-24 18:25:20 +08:00
Oleh Kurpiak
d1f92acaea [Java][Spring] fix reactive method with only implicit headers (#15019) (fix #14907) 2023-03-24 11:32:04 +02:00
Dylan Kwon
b6d2e0d222 Added converterFactories property to ApiClient in jvm-retrofit2. (#15008)
* Added converterFactories property to ApiClient in jvm-retrofit2.

* [retrofit2] Supplement deprecate contents of converterFactory

* [retrofit2] Supplement deprecate contents of converterFactory

* [retrofit2] converterFactory removed.

* [retrofit2] sample update.

* [retrofit2] Type mismatch fix in Rx.
2023-03-22 15:06:04 +00:00
Bruno Coelho
5dc0b70081 [swift5][client] remove deprecated APIs (#14635)
* [swift5][client] remove deprecated APIs

* [swift5][client] remove deprecated APIs
2023-03-05 11:35:51 +00:00
Bruno Coelho
4bb8372340 [swift5][client] improve headers order (#14636) 2023-03-05 11:33:05 +00:00
William Cheng
1beec7ef87 Merge remote-tracking branch 'origin' into 7.0.x 2023-03-03 21:52:50 +08:00
Kuzma
fb18e7a039 [Typescript] Enums generation (7.0.0) (#14663)
* Enums generation

* regenerate tests

* Update tests
2023-02-19 13:45:18 +01:00
William Cheng
8db004ffa3 update samples 2022-11-01 21:54:52 +08:00
William Cheng
558ae9373d Merge remote-tracking branch 'origin/master' into 7.0.x 2022-11-01 21:01:06 +08:00
William Cheng
2bac0a8d99 Merge remote-tracking branch 'origin/6.3.x' into 7.0.x 2022-10-16 21:27:53 +08:00
Bruno Coelho
6ba97321ff [swift5] update new minimum OS supported versions (#13667)
* [swift5] update new minimum supported versions

* [swift5] update new minimum supported versions

* [swift5] update new minimum supported versions

* [swift5] update new minimum supported versions
2022-10-12 09:07:32 +01:00
Christopher Chaaya
36fd9f13f2 Generate and use enum types in parameters for typescript-axios (#13438)
* target 7.0.x

* generate all files

* fix up type in JSDoc param as well, address comment

* add fix for rxjs build

Co-authored-by: Christopher Chaaya <christopher.chaaya@bukalapak.com>
2022-10-06 18:26:22 +02:00
William Cheng
249f1ed148 remove outdated TS samples 2022-07-19 12:04:49 +08:00
William Cheng
6bfef6c191 Merge remote-tracking branch 'origin/master' into 7.0.x 2022-07-19 11:54:20 +08:00
William Cheng
c54b0623b8 prepare 7.0.x 2022-05-26 13:17:52 +08:00
40547 changed files with 2936314 additions and 1565192 deletions

View File

@@ -31,14 +31,25 @@ commands: # a reusable command with parameters
# '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 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
command: java -version
- 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
command: |
sudo tee -a /etc/hosts \<<< "127.0.0.1 path.v1.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 path.v2.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.111 path.v3.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 operation.v1.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 operation.v2.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.111 operation.v3.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 server.v1.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 server.v2.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.111 server.v3.test.openapi-generator.tech"
sudo tee -a /etc/hosts \<<< "127.0.0.1 petstore.swagger.io"
cat /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
@@ -46,54 +57,43 @@ commands: # a reusable command with parameters
- 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: export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=128m"
- 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
- ~/.nvm
- ~/.pyenv
- ~/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
- ~/.nvm
- ~/.pyenv
- ~/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_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
# - ~/.m2
# - ~/.ivy2
# - ~/.sbt
# - ~/.bundle
# - ~/.go_workspace
# - ~/.gradle
# - ".git"
# - ~/.stack
# - ~/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
# - ~/.m2
# - ~/.ivy2
# - ~/.sbt
# - ~/.bundle
# - ~/.go_workspace
# - ~/.gradle
# - ~/.cache/bower
# - ".git"
# - ~/.stack
# - ~/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
@@ -141,7 +141,7 @@ commands: # a reusable command with parameters
jobs:
node0:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -154,7 +154,7 @@ jobs:
nodeNo: "0"
node1:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -167,7 +167,7 @@ jobs:
nodeNo: "1"
node2:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -180,7 +180,7 @@ jobs:
nodeNo: "2"
node3:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -192,20 +192,6 @@ jobs:
- 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:
@@ -214,4 +200,3 @@ workflows:
- node1
- node2
- node3
- node4

View File

@@ -9,7 +9,13 @@
"ghcr.io/devcontainers/features/node:1": {
"version": "lts"
},
"ghcr.io/snebjorn/devcontainer-feature/chromium:latest": {}
"ghcr.io/devcontainers/features/rust:1": {},
"ghcr.io/snebjorn/devcontainer-feature/chromium:latest": {},
"docker-in-docker": {
"version": "latest",
"moby": true,
"dockerDashComposeVersion": "v1"
}
},
// Configure tool-specific properties.
"customizations": {
@@ -20,8 +26,8 @@
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "/usr/local/sdkman/candidates/java/11.0.16.1-ms",
"sources": "/usr/local/sdkman/candidates/java/11.0.16.1-ms/lib/src.zip",
"path": "/usr/local/sdkman/candidates/java/current",
"sources": "/usr/local/sdkman/candidates/java/current/lib/src.zip",
"javadoc": "https://docs.oracle.com/en/java/javase/11/docs/api",
"default": true
}

1
.envrc Normal file
View File

@@ -0,0 +1 @@
has nix && use flake

View File

@@ -319,12 +319,6 @@
"Client: Java"
]
},
{
"input": "java-petstore-jersey1.sh",
"matches": [
"Client: Java"
]
},
{
"input": "java-petstore-jersey2-java6.sh",
"matches": [
@@ -584,18 +578,6 @@
"Server: Java"
]
},
{
"input": "jaxrs-jersey1-petstore-server.sh",
"matches": [
"Server: Java"
]
},
{
"input": "jaxrs-jersey1-usetags-petstore-server.sh",
"matches": [
"Server: Java"
]
},
{
"input": "jaxrs-petstore-server-datelib-j8.sh",
"matches": [
@@ -800,12 +782,6 @@
"Client: Python"
]
},
{
"input": "python-server-flask-petstore-python2.sh",
"matches": [
"Server: Python"
]
},
{
"input": "python-server-flask-petstore.sh",
"matches": [

16
.github/CODEOWNERS vendored
View File

@@ -28,8 +28,14 @@ modules/openapi-generator-cli/**/* @jimschubert
modules/openapi-generator-gradle-plugin/**/* @jimschubert
modules/openapi-generator-maven-plugin/**/* @jimschubert
# Martin Delille
/Users/martin/dev/clone/openapi-generator/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQtClientCodegen.java @martindelille
/Users/martin/dev/clone/openapi-generator/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQtAbstractCodegen.java @martindelille
/Users/martin/dev/clone/openapi-generator/modules/openapi-generator/src/main/resources/cpp-qt-client @martindelille
/Users/martin/dev/clone/openapi-generator/samples/client/petstore/cpp-qt @martindelille
# cpp-qt-client technical committee
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @ravinikam
samples/client/petstore/cpp-qt/**/* @ravinikam
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @stkrwork
samples/client/petstore/cpp-qt/**/* @stkrwork
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @etherealjoy
samples/client/petstore/cpp-qt/**/* @etherealjoy
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @martindelille
samples/client/petstore/cpp-qt/**/* @martindelille
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @muttleyxd
samples/client/petstore/cpp-qt/**/* @muttleyxd

View File

@@ -8,18 +8,14 @@
- [ ] Run the following to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
```
./mvnw clean package
./bin/generate-samples.sh
./bin/generate-samples.sh ./bin/configs/*.yaml
./bin/utils/export_docs_generators.sh
```
(For Windows users, please run the script in [Git BASH](https://gitforwindows.org/))
Commit all changed files.
This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit as it would merge with master.
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`.
For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
- [ ] In case you are adding a new generator, run the following additional script :
```
./bin/utils/ensure-up-to-date.sh
```
Commit all changed files.
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (6.3.0) (minor release - breaking changes with fallbacks), `7.0.x` (breaking changes without fallbacks)
IMPORTANT: Do **NOT** purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming 7.6.0 minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
- [ ] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.

View File

@@ -15,5 +15,5 @@ inputs:
runs:
using: "composite"
steps:
- run: mvn --no-snapshot-updates --batch-mode --quiet ${{ inputs.goal }} -P${{ inputs.name }} -Dintegration-test -Dmaven.javadoc.skip=true ${{ inputs.args }}
shell: bash
- run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet ${{ inputs.goal }} -P${{ inputs.name }} -Dintegration-test -Dmaven.javadoc.skip=true ${{ inputs.args }}
shell: bash

View File

@@ -4,3 +4,9 @@ updates:
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "maven"
directory: "/"
schedule:
interval: "weekly"
allow:
- dependency-name: "com.gradle.*"

View File

@@ -1,97 +0,0 @@
name: Check Supported Java Versions
on:
push:
branches:
- master
jobs:
build:
name: 'Build: JDK ${{ matrix.java }} (${{ matrix.os }})'
runs-on: ${{ matrix.os }}
strategy:
matrix:
java: [8, 11]
os: [ubuntu-latest]
include:
- java: 8
os: windows-latest
- java: 17
os: ubuntu-latest
# Need to update to Gradle version with v17 support in modules/openapi-generator-gradle-plugin/pom.xml
flags: -am -pl modules/openapi-generator-cli -Dmaven.javadoc.skip=true -Dmaven.test.skip=true
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('pom.xml', 'modules/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/cache@v3
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('modules/openapi-generator-gradle-plugin/pom.xml') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Build with Maven
shell: bash
run: mvn -nsu -B --quiet -Djacoco.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress clean install --file pom.xml ${{ matrix.flags }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v3
if: matrix.java == '8' && matrix.os == 'ubuntu-latest'
with:
name: artifact
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
- name: Test Gradle plugin usage
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
- name: Test Maven plugin integration
if: matrix.java == '8'
shell: bash
run: |
cd modules/openapi-generator-maven-plugin
mvn verify -Pintegration
verify:
name: Verify outputs on ${{ matrix.os }}
needs: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
# include:
# - os: windows-latest
# flags: --skip-docs
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Download build artifact
uses: actions/download-artifact@v3
with:
name: artifact
- name: Run Ensures Script
shell: bash
run: |
git config --global core.fileMode false
git config --global core.safecrlf false
git config --global core.autocrlf true
mvn clean package -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
# test with java (jersey2) client generation only as ensure-up-to-date script is run in another job instead
./bin/generate-samples.sh ./bin/configs/java-jersey2-8.yaml
# test debugSupportingFiles
./bin/generate-samples.sh ./bin/configs/python.yaml -- --global-property debugSupportingFiles

53
.github/workflows/docker.yaml vendored Normal file
View File

@@ -0,0 +1,53 @@
name: Docker tests
on:
workflow_dispatch:
push:
paths:
- Dockerfile
- run-in-docker.sh
- pom.xml
- modules/openapi-generator-online/pom.xml
- modules/openapi-generator-online/Dockerfile
- modules/openapi-generator-cli/pom.xml
- modules/openapi-generator-cli/Dockerfile
pull_request:
paths:
- Dockerfile
- run-in-docker.sh
- pom.xml
- modules/openapi-generator-online/pom.xml
- modules/openapi-generator-online/Dockerfile
- modules/openapi-generator-cli/pom.xml
- modules/openapi-generator-cli/Dockerfile
jobs:
build:
name: 'Build: Docker'
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Test run-in-docker.sh
shell: bash
run: |
sed -i 's/ -it / /g' run-in-docker.sh
./run-in-docker.sh mvn -B clean install
- name: Build Dockerfile
shell: bash
run: docker build .
- name: Build modules/openapi-generator-online
shell: bash
run: |
docker build modules/openapi-generator-online/ -t test
- name: Build and test modules/openapi-generator-cli
shell: bash
run: |
cp docker-entrypoint.sh ./modules/openapi-generator-cli
docker build modules/openapi-generator-cli/ -t cli-test
docker run --rm -v "${PWD}:/local" cli-test generate \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g go \
-o /local/out/go

View File

@@ -13,14 +13,14 @@ jobs:
name: Gradle plugin tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: cache-maven-repository
with:
@@ -35,8 +35,10 @@ jobs:
${{ runner.os }}-test-gradle-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-gradle-plugin-
- name: Run tests
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw clean --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildGoSdk) # using gradle-6.8.3 via wrapper
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew openApiGenerate)
(cd modules/openapi-generator-gradle-plugin/samples/local-spec && ./gradlew buildDotnetSdk)

View File

@@ -10,7 +10,7 @@ on:
- 'samples/client/petstore/java/**'
- 'samples/openapi3/client/petstore/java/**'
env:
GRADLE_VERSION: 7.2
GRADLE_VERSION: 8.7
jobs:
build:
@@ -28,22 +28,23 @@ jobs:
- samples/client/petstore/java/jersey2-java8
- samples/client/petstore/java/okhttp-gson
- samples/client/petstore/java/okhttp-gson-group-parameter
- samples/client/petstore/java/webclient-swagger2
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
# Cache Gradle Dependencies
- name: Setup Gradle Dependencies Cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
# Cache Gradle Wrapper
- name: Setup Gradle Wrapper Cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}

View File

@@ -1,46 +0,0 @@
name: Java Helidon Functional tests
on:
push:
paths:
- modules/openapi-generator/src/test/java/org/openapitools/codegen/java/helidon/**
pull_request:
paths:
- modules/openapi-generator/src/test/java/org/openapitools/codegen/java/helidon/**
jobs:
build:
name: Java Helidon Functional tests
runs-on: ubuntu-latest
strategy:
matrix:
java-version: [11, 17]
steps:
- uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java-version }}
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
env:
cache-name: cache-maven-repository
with:
path: |
~/.m2/repository
~/.gradle
!~/.gradle/caches/*/plugin-resolution/
!~/.m2/repository/org/openapitools/
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Run unit tests
run: cd modules/openapi-generator && mvn --no-snapshot-updates --batch-mode -Dtest="**/functional/*Test" test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v3
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'

108
.github/workflows/linux.yaml vendored Normal file
View File

@@ -0,0 +1,108 @@
name: Linux tests
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
jobs:
build:
name: 'Build: JDK ${{ matrix.java }} (${{ matrix.os }})'
runs-on: ${{ matrix.os }}
strategy:
matrix:
java: [11, 17]
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('pom.xml', 'modules/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('modules/openapi-generator-gradle-plugin/pom.xml') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.13.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
- name: Build with Maven
shell: bash
run: ./mvnw clean -nsu -B --quiet -Dorg.slf4j.simpleLogger.defaultLogLevel=error --no-transfer-progress install --file pom.xml
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v4
if: matrix.java == '11' && matrix.os == 'ubuntu-latest'
with:
name: artifact
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
- name: Test Gradle plugin usage
shell: bash
run: gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace
- name: Test Maven plugin integration
if: matrix.java == '11'
shell: bash
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
cd modules/openapi-generator-maven-plugin
mvn clean verify -Pintegration
verify:
name: Verify outputs on ${{ matrix.os }}
needs: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Setup Maven
uses: s4u/setup-maven-action@v1.13.0
with:
java-version: 11
maven-version: 3.8.8
- name: Download build artifact
uses: actions/download-artifact@v4
with:
name: artifact
- name: Run Ensures Script
shell: bash
run: |
git config --global core.fileMode false
git config --global core.safecrlf false
git config --global core.autocrlf true
./mvnw clean package -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
# test with java (jersey2) client generation only as ensure-up-to-date script is run in another job instead
./bin/generate-samples.sh ./bin/configs/java-jersey2-8.yaml
# test debugSupportingFiles
./bin/generate-samples.sh ./bin/configs/go-petstore.yaml -- --global-property debugSupportingFiles

View File

@@ -13,14 +13,14 @@ jobs:
name: Maven plugin tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: cache-maven-repository
with:
@@ -34,9 +34,11 @@ jobs:
${{ runner.os }}-test-maven-plugin-${{ env.cache-name }}-
${{ runner.os }}-test-maven-plugin-
- name: Run tests
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
run: |
mvn clean install -DskipTests -Dmaven.javadoc.skip=true
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/java-client.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/multi-module/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/kotlin.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/spring.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw clean install -DskipTests -Dmaven.javadoc.skip=true
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/java-client.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/multi-module/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/kotlin.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/spring.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error

View File

@@ -15,7 +15,7 @@ jobs:
name: Misc tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '2.6'

View File

@@ -15,14 +15,14 @@ jobs:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: cache-maven-repository
with:
@@ -36,10 +36,12 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Run maven
run: mvn --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet install -DskipTests -Dorg.slf4j.simpleLogger.defaultLogLevel=error
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- run: ls -la modules/openapi-generator-cli/target
- name: Upload openapi-generator-cli.jar artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target/openapi-generator-cli.jar
@@ -51,14 +53,14 @@ jobs:
needs:
- build
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: cache-maven-repository
with:
@@ -72,10 +74,12 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Run unit tests
run: mvn --no-snapshot-updates --batch-mode --quiet --fail-at-end test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet --fail-at-end test -Dorg.slf4j.simpleLogger.defaultLogLevel=error
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Publish unit test reports
if: ${{ always() }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: surefire-test-results
path: '**/surefire-reports/TEST-*.xml'
@@ -86,14 +90,14 @@ jobs:
needs:
- build
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
@@ -125,19 +129,51 @@ jobs:
- build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 8
java-version: 11
distribution: 'temurin'
- name: Download openapi-generator-cli.jar artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: openapi-generator-cli.jar
path: modules/openapi-generator-cli/target
- name: Delete samples that are entirely generated
run: |
rm -rf samples/client/petstore/csharp/generichost/net8/AllOf
rm -rf samples/client/petstore/csharp/generichost/net8/AnyOf
rm -rf samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
rm -rf samples/client/petstore/csharp/generichost/net8/FormModels
rm -rf samples/client/petstore/csharp/generichost/net8/NullReferenceTypes
rm -rf samples/client/petstore/csharp/generichost/net8/OneOf
rm -rf samples/client/petstore/csharp/generichost/net8/Petstore
rm -rf samples/client/petstore/csharp/generichost/net8/SourceGeneration
rm -rf samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
rm -rf samples/client/petstore/csharp/generichost/standard2.0/Petstore
rm -rf samples/client/petstore/csharp/generichost/net4.8/AllOf
rm -rf samples/client/petstore/csharp/generichost/net4.8/AnyOf
rm -rf samples/client/petstore/csharp/generichost/net4.8/AnyOfNoCompare
rm -rf samples/client/petstore/csharp/generichost/net4.8/FormModels
rm -rf samples/client/petstore/csharp/generichost/net4.8/OneOf
rm -rf samples/client/petstore/csharp/generichost/net4.8/Petstore
rm -rf samples/client/petstore/csharp/generichost/net4.8/UseDateTimeForDate
rm -rf samples/client/petstore/csharp/generichost/net4.7/AllOf
rm -rf samples/client/petstore/csharp/generichost/net4.7/AnyOf
rm -rf samples/client/petstore/csharp/generichost/net4.7/AnyOfNoCompare
rm -rf samples/client/petstore/csharp/generichost/net4.7/FormModels
rm -rf samples/client/petstore/csharp/generichost/net4.7/OneOf
rm -rf samples/client/petstore/csharp/generichost/net4.7/Petstore
rm -rf samples/client/petstore/csharp/generichost/net4.7/UseDateTimeForDate
- name: Generate samples
run: bash bin/generate-samples.sh
run: |
bash bin/generate-samples.sh
# when a sample is deleted, you have to generate it twice for all files to get created
bash bin/generate-samples.sh
- name: Verify git status
run: |
if [[ "$(git status --porcelain)" != "" ]]; then

View File

@@ -0,0 +1,36 @@
name: Samples c libcurl client
on:
push:
paths:
- 'samples/client/petstore/c/**'
- 'samples/client/petstore/c-useJsonUnformatted/**'
pull_request:
paths:
- 'samples/client/petstore/c/**'
- 'samples/client/petstore/c-useJsonUnformatted/**'
jobs:
build:
name: Build c libcurl client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/client/petstore/c/'
- 'samples/client/petstore/c-useJsonUnformatted/'
steps:
- uses: actions/checkout@v4
- name: Prepare
run: |
sudo apt-get update
sudo apt-get install -y libssl-dev libcurl4-openssl-dev
- name: Build
working-directory: ${{ matrix.sample }}
run: |
mkdir build
cd build
cmake ..
make

View File

@@ -18,17 +18,19 @@ jobs:
matrix:
qt-version:
- '5.15.2'
- '6.4.2'
- '6.5.3'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: jurplel/install-qt-action@v3
- uses: actions/checkout@v4
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt-version }}
tools: ${{ matrix.tools }}
- name: Build
working-directory: "samples/client/petstore/cpp-qt"
run: ./build-and-test.bash
run: cmake . && cmake --build .

View File

@@ -17,27 +17,19 @@ jobs:
name: Tests Dart
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
env:
cache-name: maven-repository
with:
path: |
~/.m2/repository
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
java-version: 11
cache: maven
- name: Cache test dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: pub-cache
with:
path: $PUB_CACHE
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('samples/**/pubspec.yaml') }}
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('samples/**/pubspec.*') }}
- uses: dart-lang/setup-dart@v1
with:
sdk: 2.15.0

View File

@@ -0,0 +1,42 @@
name: Samples C# .Net Framework Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/net4.7/**
- samples/client/petstore/csharp/generichost/net4.8/**
pull_request:
paths:
- samples/client/petstore/csharp/generichost/net4.7/**
- samples/client/petstore/csharp/generichost/net4.8/**
jobs:
build:
name: Build .Net projects
runs-on: windows-2019
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/net4.7/AllOf
- samples/client/petstore/csharp/generichost/net4.7/AnyOf
- samples/client/petstore/csharp/generichost/net4.7/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net4.7/FormModels
- samples/client/petstore/csharp/generichost/net4.7/OneOf
- samples/client/petstore/csharp/generichost/net4.7/Petstore
- samples/client/petstore/csharp/generichost/net4.7/UseDateTimeForDate
- samples/client/petstore/csharp/generichost/net4.8/AllOf
- samples/client/petstore/csharp/generichost/net4.8/AnyOf
- samples/client/petstore/csharp/generichost/net4.8/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net4.8/FormModels
- samples/client/petstore/csharp/generichost/net4.8/OneOf
- samples/client/petstore/csharp/generichost/net4.8/Petstore
- samples/client/petstore/csharp/generichost/net4.8/UseDateTimeForDate
steps:
- uses: actions/checkout@v4
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -1,12 +1,18 @@
name: Samples C# .Net Standard
name: Samples C# .Net Standard Client
on:
push:
paths:
- 'samples/client/petstore/csharp-netcore/**netstandard**/'
- samples/client/petstore/csharp/generichost/standard2.0/**
- samples/client/petstore/csharp/httpclient/standard2.0/**
- samples/client/petstore/csharp/restsharp/standard2.0/**
- samples/client/petstore/csharp/unityWebRequest/standard2.0/**
pull_request:
paths:
- 'samples/client/petstore/csharp-netcore/**netstandard**/'
- samples/client/petstore/csharp/generichost/standard2.0/**
- samples/client/petstore/csharp/httpclient/standard2.0/**
- samples/client/petstore/csharp/restsharp/standard2.0/**
- samples/client/petstore/csharp/unityWebRequest/standard2.0/**
jobs:
build:
name: Build .Net projects
@@ -15,16 +21,21 @@ jobs:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netstandard2.0
- samples/client/petstore/csharp/generichost/standard2.0/Petstore/
- samples/client/petstore/csharp/httpclient/standard2.0/Petstore/
- samples/client/petstore/csharp/restsharp/standard2.0/Petstore/
- samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/
# - samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.0.3
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: 3.1.*
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln
# skip tests as petstore server it not running
# these tests are run in appveyor instead
#- name: Test
# working-directory: ${{ matrix.sample }}
# run: dotnet test Org.OpenAPITools.sln

View File

@@ -1,18 +1,18 @@
name: Samples C# .Net 6
name: Samples C# .Net 8 Clients
on:
push:
paths:
- 'samples/client/petstore/csharp-netcore/**net6.0**/'
- 'samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore**/'
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
- samples/client/petstore/csharp/unityWebRequest/net8/**
pull_request:
paths:
- 'samples/client/petstore/csharp-netcore/**net6.0**/'
- 'samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore**/'
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
- samples/client/petstore/csharp/unityWebRequest/net8/**
jobs:
build:
name: Build .Net projects
@@ -21,20 +21,22 @@ jobs:
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/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-allOf
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-oneOf
- samples/client/petstore/csharp-netcore/OpenAPIClient-generichost-netcore-latest-anyOf
- samples/server/petstore/aspnetcore-6.0
- samples/server/petstore/aspnetcore-6.0-pocoModels
- samples/server/petstore/aspnetcore-6.0-project4Models
- samples/client/petstore/csharp/generichost/net8/AllOf
- samples/client/petstore/csharp/generichost/net8/AnyOf
- samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net8/FormModels
- samples/client/petstore/csharp/generichost/net8/ManualPetstoreTests
- samples/client/petstore/csharp/generichost/net8/ManualSourceGenerationTests
- samples/client/petstore/csharp/generichost/net8/NullReferenceTypes
- samples/client/petstore/csharp/generichost/net8/OneOf
- samples/client/petstore/csharp/generichost/net8/Petstore
- samples/client/petstore/csharp/generichost/net8/SourceGeneration
- samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.0.3
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '7.0.x'
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -0,0 +1,33 @@
name: Samples C# .Net 6 Client Echo API
on:
push:
paths:
- samples/client/echo_api/csharp-restsharp/**
pull_request:
paths:
- samples/client/echo_api/csharp-restsharp/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/csharp-restsharp/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: |
dotnet build Org.OpenAPITools.sln
dotnet test Org.OpenAPITools.sln

View File

@@ -0,0 +1,26 @@
name: Samples C# .Net 6 Client
on:
push:
paths:
- samples/client/petstore/csharp/restsharp/net6/**
pull_request:
paths:
- samples/client/petstore/csharp/restsharp/net6/**
jobs:
build:
name: Build .Net clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/restsharp/net6/ParameterMappings/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -0,0 +1,36 @@
name: Samples C# .Net 6 Server
on:
push:
paths:
- samples/server/petstore/aspnetcore-6.0/**
- samples/server/petstore/aspnetcore-6.0-*/**
pull_request:
paths:
- samples/server/petstore/aspnetcore-6.0/**
- samples/server/petstore/aspnetcore-6.0-*/**
jobs:
build:
name: Build .Net 6 servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/aspnetcore-6.0
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
- samples/server/petstore/aspnetcore-6.0-pocoModels
- samples/server/petstore/aspnetcore-6.0-project4Models
- samples/server/petstore/aspnetcore-6.0-useSwashBuckle
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
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

35
.github/workflows/samples-elm.yaml vendored Normal file
View File

@@ -0,0 +1,35 @@
name: Samples Elm
on:
push:
paths:
- samples/client/petstore/elm/**
- samples/openapi3/client/elm/**
pull_request:
paths:
- samples/client/petstore/elm/**
- samples/openapi3/client/elm/**
jobs:
build:
name: Build Elm clients
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/elm
- samples/openapi3/client/elm
steps:
- uses: actions/checkout@v4
- uses: jorelali/setup-elm@v6
with:
elm-version: 0.19.1
- name: Build
working-directory: ${{ matrix.sample }}
# Try to compile all .elm files
# This fails if:
# An .elm file couldn't be compiled
# No .elm files were found
# No elm.json file could be found in the root of the working directory
run: elm make $(find . -name *.elm) --output=/dev/null

View File

@@ -26,7 +26,7 @@ jobs:
- samples/client/petstore/erlang-client/
- samples/client/petstore/erlang-proper/
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: erlef/setup-beam@v1
with:
otp-version: '22.2'

View File

@@ -0,0 +1,32 @@
name: Go Client (Echo API)
on:
pull_request:
paths:
- samples/client/echo_api/go/**
- .github/workflows/samples-go-client-echo-api.yaml
jobs:
build:
name: Test Go client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/go
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "stable"
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- run: go version
- name: Run test
working-directory: ${{ matrix.sample }}
run: go test -mod=mod -v

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

@@ -0,0 +1,31 @@
name: Samples Go
on:
push:
paths:
- 'samples/server/petstore/go-gin-api-server/**'
- 'samples/server/petstore/go-gin-api-server-interface-only/**'
pull_request:
paths:
- 'samples/server/petstore/go-gin-api-server/**'
- 'samples/server/petstore/go-gin-api-server-interface-only/**'
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-gin-api-server-interface-only/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "stable"
- run: go version
- name: Run test
working-directory: ${{ matrix.sample }}
run: go test -mod=mod -v

View File

@@ -1,18 +1,22 @@
name: Samples Go
name: Samples Go
on:
push:
paths:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
- 'samples/server/others/go-server/no-body-path-params/**'
pull_request:
paths:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
- 'samples/server/others/go-server/no-body-path-params/**'
jobs:
build:
name: Build Go
name: Build Go
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -20,17 +24,14 @@ jobs:
sample:
- samples/server/petstore/go-echo-server/
- samples/server/petstore/go-api-server/
- samples/server/petstore/go-chi-server/
- samples/server/others/go-server/no-body-path-params/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '>=1.17.0'
go-version: "stable"
- run: go version
- name: Install
- name: Run test
working-directory: ${{ matrix.sample }}
run: |
go get github.com/labstack/echo/v4/middleware@v4.9.0
go get github.com/labstack/echo/v4@v4.9.0
- name: Build
working-directory: ${{ matrix.sample }}
run: go test -v
run: go test -mod=mod -v

View File

@@ -21,13 +21,13 @@ jobs:
sample:
- samples/client/petstore/groovy
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -35,7 +35,7 @@ jobs:
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}

36
.github/workflows/samples-haskell.yaml vendored Normal file
View File

@@ -0,0 +1,36 @@
name: Samples Haskell
on:
push:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/client/petstore/haskell-http-client/**
pull_request:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/client/petstore/haskell-http-client/**
jobs:
build:
name: Build stack projects
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/haskell-yesod/
- samples/server/petstore/haskell-servant/
- samples/client/petstore/haskell-http-client/
steps:
- uses: actions/checkout@v4
- uses: haskell/actions/setup@v2
with:
# ghc-version: '8.8.4' # Exact version of ghc to use
# cabal-version: 'latest'. Omitted, but defaults to 'latest'
enable-stack: true
stack-version: 'latest'
- name: stack test
working-directory: ${{ matrix.sample }}
run: stack test

View File

@@ -19,14 +19,16 @@ jobs:
- samples/client/echo_api/java/apache-httpclient
- samples/client/echo_api/java/native
- samples/client/echo_api/java/feign-gson
- samples/client/echo_api/java/resttemplate
- samples/client/echo_api/java/resteasy
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -34,11 +36,11 @@ jobs:
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,42 @@
name: Java Client (Echo API) JDK17
on:
push:
paths:
- samples/client/echo_api/java/restclient
pull_request:
paths:
- samples/client/echo_api/java/restclient
jobs:
build:
name: Build Java Client JDK17
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/java/restclient
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -6,11 +6,14 @@ on:
- samples/client/echo_api/java/apache-httpclient/**
- samples/client/echo_api/java/feign-gson/**
- samples/client/echo_api/java/okhttp-gson/**
- samples/client/echo_api/java/resttemplate/**
- samples/client/echo_api/java/resteasy/**
pull_request:
paths:
- samples/client/echo_api/java/apache-httpclient/**
- samples/client/echo_api/java/feign-gson/**
- samples/client/echo_api/java/okhttp-gson/**
- samples/client/echo_api/java/resteasy/**
jobs:
build:
name: Build Java Client JDK8
@@ -23,14 +26,16 @@ jobs:
- samples/client/echo_api/java/apache-httpclient
- samples/client/echo_api/java/feign-gson
- samples/client/echo_api/java/okhttp-gson
- samples/client/echo_api/java/resttemplate
- samples/client/echo_api/java/resteasy
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -38,11 +43,11 @@ jobs:
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -8,7 +8,14 @@ on:
- samples/client/petstore/java-micronaut-client/**
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/**
- samples/openapi3/client/petstore/java/native**
- samples/client/others/java/okhttp-gson-oneOf/**
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
- samples/client/others/java/webclient-useAbstractionForFiles/**
- samples/client/others/java/jersey2-oneOf-duplicates/**
- samples/client/others/java/jersey2-oneOf-Mixed/**
- samples/client/others/java/resttemplate-list-schema-validation/**
pull_request:
paths:
- 'samples/client/petstore/java/**'
@@ -16,7 +23,14 @@ on:
- samples/client/petstore/java-micronaut-client/**
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/**
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/**
- samples/openapi3/client/petstore/java/native**
- samples/client/others/java/okhttp-gson-oneOf/**
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
- samples/client/others/java/webclient-useAbstractionForFiles/**
- samples/client/others/java/jersey2-oneOf-duplicates/**
- samples/client/others/java/jersey2-oneOf-Mixed/**
- samples/client/others/java/resttemplate-list-schema-validation/**
jobs:
build:
name: Build Java Client JDK11
@@ -38,30 +52,43 @@ jobs:
- samples/client/petstore/java/resttemplate-withXml
- samples/client/petstore/java/webclient
- samples/client/petstore/java/webclient-nullable-arrays
- samples/client/petstore/java/webclient-swagger2
- 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/microprofile-rest-client-3.0
- samples/client/petstore/java/microprofile-rest-client-3.0-jackson
- samples/client/petstore/java/microprofile-rest-client-3.0-jackson-with-xml
- samples/client/petstore/java/microprofile-rest-client-with-useSingleRequestParameter
- samples/client/petstore/java/apache-httpclient
- samples/client/petstore/java/feign
- samples/client/petstore/java/jersey1
- samples/client/petstore/java/okhttp-gson-awsv4signature
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters
- samples/openapi3/client/petstore/java/native
- samples/client/petstore/java/okhttp-gson-swagger1/
- samples/client/petstore/java/resttemplate-swagger1/
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/
- samples/client/petstore/java/okhttp-gson-swagger2/
- samples/client/petstore/java/resttemplate-swagger2/
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/
- samples/client/others/java/okhttp-gson-oneOf/
- samples/client/echo_api/java/okhttp-gson-user-defined-templates/
- samples/client/others/java/resttemplate-useAbstractionForFiles/
- samples/client/others/java/webclient-useAbstractionForFiles/
- samples/client/others/java/jersey2-oneOf-duplicates/
- samples/client/others/java/jersey2-oneOf-Mixed/
- samples/client/others/java/resttemplate-list-schema-validation/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -70,4 +97,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -5,10 +5,12 @@ on:
paths:
- samples/client/petstore/java/resttemplate-jakarta/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/restclient-*/**
pull_request:
paths:
- samples/client/petstore/java/resttemplate-jakarta/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/restclient-*/**
jobs:
build:
name: Build Java Client JDK17
@@ -20,23 +22,44 @@ jobs:
# clients
- samples/client/petstore/java/resttemplate-jakarta
- samples/client/petstore/java/webclient-jakarta
- samples/client/petstore/java/restclient
- samples/client/petstore/java/restclient-nullable-arrays
- samples/client/petstore/java/restclient-swagger2
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build with Maven
working-directory: ${{ matrix.sample }}
run: mvn clean package
- name: Build with Gradle
run: mvn clean package --no-transfer-progress
- name: Cache gradle dependencies
uses: actions/cache@v4
env:
cache-name: gradle-caches
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
- name: Cache gradle wrapper
uses: actions/cache@v4
env:
cache-name: gradle-wrapper
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: gradle clean build
run: ./gradlew build -x test

View File

@@ -0,0 +1,41 @@
name: Samples Java Helidon v3
on:
push:
paths:
- samples/client/petstore/java-helidon-client/v3/**
- samples/server/petstore/java-helidon-server/v3/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/v3/**
- samples/server/petstore/java-helidon-server/v3/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/v3/mp
- samples/client/petstore/java-helidon-client/v3/se
- samples/server/petstore/java-helidon-server/v3/mp
- samples/server/petstore/java-helidon-server/v3/se
version: [17]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
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 --no-transfer-progress

View File

@@ -0,0 +1,39 @@
name: Samples Java Helidon v4
on:
push:
paths:
- samples/client/petstore/java-helidon-client/v4/**
- samples/server/petstore/java-helidon-server/v4/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/v4/**
- samples/server/petstore/java-helidon-server/v4/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/v4/mp
- samples/server/petstore/java-helidon-server/v4/mp
version: [21]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
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 --no-transfer-progress

View File

@@ -29,13 +29,13 @@ jobs:
- samples/server/petstore/java-play-framework-no-swagger-ui
- samples/server/petstore/java-play-framework-no-wrap-calls
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -44,4 +44,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -8,14 +8,17 @@ on:
- 'samples/server/petstore/java-vertx-web/**'
- 'samples/server/petstore/java-inflector/**'
- 'samples/server/petstore/java-pkmst/**'
# test in circleci instead
- 'samples/server/petstore/java-undertow/**'
- 'samples/server/petstore/java-microprofile/**'
pull_request:
paths:
#- 'samples/server/petstore/java-camel/**'
- 'samples/server/petstore/java-vertx-web/**'
- 'samples/server/petstore/java-inflector/**'
- 'samples/server/petstore/java-pkmst/**'
- 'samples/server/petstore/java-undertow/**'
#- 'samples/server/petstore/java-undertow/**'
- 'samples/server/petstore/java-microprofile/**'
jobs:
build:
name: Build Java Server
@@ -29,15 +32,16 @@ jobs:
- samples/server/petstore/java-vertx-web/
- samples/server/petstore/java-inflector/
- samples/server/petstore/java-pkmst/
- samples/server/petstore/java-undertow/
#- samples/server/petstore/java-undertow/
- samples/server/petstore/java-microprofile/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -46,4 +50,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,35 @@
name: Samples Java Wiremock
on:
push:
paths:
- samples/server/petstore/java-wiremock/**
pull_request:
paths:
- samples/server/petstore/java-wiremock/**
jobs:
build:
name: Build Java Wiremock
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/java-wiremock
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
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 --no-transfer-progress

View File

@@ -0,0 +1,36 @@
name: Samples JAX-RS (JDK11)
on:
push:
paths:
- samples/server/petstore/jaxrs/jersey3/**
pull_request:
paths:
- samples/server/petstore/jaxrs/jersey3/**
jobs:
build:
name: Build JAX-RS
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/jaxrs/jersey3
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
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 --no-transfer-progress

View File

@@ -26,8 +26,6 @@ jobs:
- 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
@@ -38,14 +36,15 @@ jobs:
- samples/server/petstore/jaxrs-cxf-annotated-base-path
- samples/server/petstore/jaxrs-cxf-cdi
- samples/server/petstore/jaxrs-cxf-non-spring-app
- samples/server/petstore/jaxrs-spec-microprofile-openapi-annotations
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -54,4 +53,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -4,26 +4,28 @@ on:
paths:
# clients
- samples/openapi3/client/petstore/spring-cloud-3/**
- samples/client/petstore/java-helidon-client/mp/**
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/java-helidon-client/v3/mp/**
- samples/client/petstore/java-helidon-client/v3/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/java/webclient-jakarta/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
- samples/server/petstore/java-helidon-server/se/**
- samples/server/petstore/java-helidon-server/v3/mp/**
- samples/server/petstore/java-helidon-server/v3/se/**
pull_request:
paths:
# clients
- samples/openapi3/client/petstore/spring-cloud-3/**
- samples/client/petstore/java-helidon-client/mp/**
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/java-helidon-client/v3/mp/**
- samples/client/petstore/java-helidon-client/v3/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/java/webclient-jakarta/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
- samples/server/petstore/java-helidon-server/se/**
- samples/server/petstore/java-helidon-server/v3/mp/**
- samples/server/petstore/java-helidon-server/v3/se/**
jobs:
build:
name: Build with JDK17
@@ -34,24 +36,25 @@ jobs:
sample:
# clients
- samples/openapi3/client/petstore/spring-cloud-3
- samples/client/petstore/java-helidon-client/mp
- samples/client/petstore/java-helidon-client/se
- samples/client/petstore/java-helidon-client/v3/mp/
- samples/client/petstore/java-helidon-client/v3/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
- samples/client/petstore/java/webclient-jakarta
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/java-helidon-server/mp
- samples/server/petstore/java-helidon-server/se
- samples/server/petstore/java-helidon-server/v3/mp/
- samples/server/petstore/java-helidon-server/v3/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -60,4 +63,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

43
.github/workflows/samples-jdk21.yaml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Samples JDK21
on:
push:
paths:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/**
# servers
- samples/server/petstore/java-helidon-server/v4/mp/**
pull_request:
paths:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/**
# servers
- samples/server/petstore/java-helidon-server/v4/mp/**
jobs:
build:
name: Build with JDK21
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/
# servers
- samples/server/petstore/java-helidon-server/v4/mp/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
- name: Cache maven dependencies
uses: actions/cache@v4
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 --no-transfer-progress

41
.github/workflows/samples-julia.yaml vendored Normal file
View File

@@ -0,0 +1,41 @@
name: Samples Julia
on:
push:
paths:
- 'samples/client/petstore/julia/**'
- 'samples/server/petstore/julia/**'
pull_request:
paths:
- 'samples/client/petstore/julia/**'
- 'samples/server/petstore/julia/**'
jobs:
tests-julia:
name: Tests Julia
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: 1.8
arch: x64
- name: Test
shell: bash
working-directory: 'samples'
run: |
currdir=`pwd`
# Using a specific version of OpenAPI.jl helps avoid introducing version inter-dependencies
# and allows breaking changes to be done in either repos independently
# Using develop mode to install package so that it is easier to modify the package test files
julia -e "using Pkg; Pkg.develop(\"OpenAPI\");"
cd ~/.julia/dev/OpenAPI
git checkout v0.1.14
cd $currdir
rm -rf ~/.julia/dev/OpenAPI/test/client/openapigenerator_petstore_v3/petstore
rm -rf ~/.julia/dev/OpenAPI/test/server/openapigenerator_petstore_v3/petstore
cp -r client/petstore/julia ~/.julia/dev/OpenAPI/test/client/openapigenerator_petstore_v3/petstore
cp -r server/petstore/julia ~/.julia/dev/OpenAPI/test/server/openapigenerator_petstore_v3/petstore
# setting this env runs only the tests relevant to the openapi-generator repo
export OPENAPI_GENERATOR=true
julia -e "using Pkg; Pkg.test(\"OpenAPI\");"

View File

@@ -4,12 +4,11 @@ on:
push:
branches:
- 'samples/client/petstore/kotlin*/**'
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
pull_request:
paths:
- 'samples/client/petstore/kotlin*/**'
env:
GRADLE_VERSION: 6.9
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
jobs:
build:
@@ -23,47 +22,56 @@ jobs:
- samples/client/petstore/kotlin
- samples/client/petstore/kotlin-gson
- samples/client/petstore/kotlin-jackson
- samples/client/petstore/kotlin-model-prefix-type-mappings
# 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-multiplatform-kotlinx-datetime
- 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-jackson
- samples/client/petstore/kotlin-retrofit2-rx3
- samples/client/petstore/kotlin-string
- samples/client/petstore/kotlin-threetenbp
- samples/client/petstore/kotlin-kotlinx-datetime
- samples/client/petstore/kotlin-uppercase-enum
- samples/client/petstore/kotlin-default-values-jvm-okhttp3
- samples/client/petstore/kotlin-default-values-jvm-okhttp4
- samples/client/petstore/kotlin-default-values-jvm-retrofit2
- samples/client/petstore/kotlin-default-values-jvm-volley
- samples/client/petstore/kotlin-default-values-multiplatform
- samples/client/petstore/kotlin-array-simple-string-jvm-okhttp3
- samples/client/petstore/kotlin-array-simple-string-jvm-okhttp4
- samples/client/petstore/kotlin-array-simple-string-jvm-volley
- samples/client/petstore/kotlin-array-simple-string-multiplatform
- samples/client/petstore/kotlin-bigdecimal-default-multiplatform
- samples/client/petstore/kotlin-bigdecimal-default-okhttp4
- samples/client/petstore/kotlin-jvm-jackson
- samples/client/petstore/kotlin-jvm-ktor-jackson
- samples/client/petstore/kotlin-jvm-ktor-gson
- samples/client/petstore/kotlin-jvm-ktor-gson
- samples/client/petstore/kotlin-jvm-ktor-kotlinx_serialization
- samples/client/petstore/kotlin-jvm-vertx-gson
- samples/client/petstore/kotlin-jvm-vertx-jackson
- samples/client/petstore/kotlin-jvm-vertx-jackson-coroutines
- samples/client/petstore/kotlin-jvm-vertx-moshi
- samples/client/petstore/kotlin-jvm-spring-2-webclient
- samples/client/petstore/kotlin-jvm-spring-3-webclient
- samples/client/echo_api/kotlin-jvm-spring-3-webclient
- samples/client/petstore/kotlin-jvm-spring-3-restclient
- samples/client/echo_api/kotlin-jvm-spring-3-restclient
- samples/client/petstore/kotlin-name-parameter-mappings
- samples/client/others/kotlin-jvm-okhttp-parameter-tests
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -71,9 +79,8 @@ jobs:
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build

View File

@@ -0,0 +1,49 @@
name: Kotlin Client (Echo API) JDK17
on:
push:
paths:
- samples/client/echo_api/kotlin**
pull_request:
paths:
- samples/client/echo_api/kotlin**
jobs:
build:
name: Build Kotlin Client JDK17
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/kotlin-jvm-spring-3-restclient
- samples/client/echo_api/kotlin-model-prefix-type-mappings
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v4
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@v3
with:
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build

View File

@@ -1,12 +1,20 @@
name: Samples Kotlin server
name: Samples Kotlin server (jdk17)
on:
push:
branches:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
- 'samples/server/petstore/kotlin-server/javalin-6/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
pull_request:
paths:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
- 'samples/server/petstore/kotlin-server/javalin-6/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 7.4
@@ -21,14 +29,20 @@ jobs:
sample:
# server
- samples/server/petstore/kotlin-springboot-3
- samples/server/petstore/kotlin-springboot-request
- samples/server/petstore/kotlin-springboot-request-cookie
- samples/server/petstore/kotlin-server/javalin
- samples/server/petstore/kotlin-server/javalin-6
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -36,7 +50,7 @@ jobs:
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}

View File

@@ -0,0 +1,45 @@
name: Samples Kotlin server (jdk21)
on:
push:
branches:
- 'samples/server/petstore/kotlin-server/javalin-6/**'
pull_request:
paths:
- 'samples/server/petstore/kotlin-server/javalin-6/**'
env:
GRADLE_VERSION: 8.8
jobs:
build:
name: Build Kotlin server
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/kotlin-server/javalin-6
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
- name: Cache maven dependencies
uses: actions/cache@v4
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@v3
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

@@ -3,10 +3,18 @@ name: Samples Kotlin server
on:
push:
branches:
- samples/server/others/kotlin-server/jaxrs-spec/**
- 'samples/server/petstore/kotlin*/**'
- 'samples/server/others/kotlin-server/jaxrs-spec-array-response/**'
# comment out due to gradle build failure
#- samples/server/petstore/kotlin-spring-default/**
pull_request:
paths:
- samples/server/others/kotlin-server/jaxrs-spec/**
- 'samples/server/petstore/kotlin*/**'
- 'samples/server/others/kotlin-server/jaxrs-spec-array-response/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 6.9
@@ -21,6 +29,7 @@ jobs:
sample:
# server
- samples/server/petstore/kotlin-springboot
- samples/server/petstore/kotlin-springboot-bigdecimal-default
- samples/server/petstore/kotlin-springboot-delegate
- samples/server/petstore/kotlin-springboot-modelMutable
- samples/server/petstore/kotlin-springboot-reactive
@@ -29,17 +38,24 @@ jobs:
- samples/server/petstore/kotlin-springboot-springfox
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server/jaxrs-spec
- samples/server/petstore/kotlin-server/jaxrs-spec-mutiny
- samples/server/petstore/kotlin-server-modelMutable
- samples/server/petstore/kotlin-server/javalin
- samples/server/others/kotlin-server/jaxrs-spec
- samples/server/others/kotlin-server/jaxrs-spec-array-response
- samples/server/petstore/kotlin-spring-cloud
# comment out due to gradle build failure
#- samples/server/petstore/kotlin-spring-default
# no build.gradle file
#- samples/server/petstore/kotlin-vertx-modelMutable
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -47,7 +63,7 @@ jobs:
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v2
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}

View File

@@ -0,0 +1,44 @@
name: Samples Kotlin WireMock
on:
push:
branches:
- samples/server/petstore/kotlin-wiremock/**
- samples/server/echo_api/kotlin-wiremock/**
pull_request:
paths:
- samples/server/petstore/kotlin-wiremock/**
- samples/server/echo_api/kotlin-wiremock/**
jobs:
build:
name: Build Kotlin WireMock
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/kotlin-wiremock
- samples/server/echo_api/kotlin-wiremock
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
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@v3
with:
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -18,7 +18,7 @@ jobs:
# servers
- samples/server/petstore/php-laravel/lib/
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:

View File

@@ -4,9 +4,11 @@ on:
push:
paths:
- samples/server/petstore/php-symfony/SymfonyBundle-php/**
- samples/server/petstore/php-flight/**
pull_request:
paths:
- samples/server/petstore/php-symfony/SymfonyBundle-php/**
- samples/server/petstore/php-flight/**
jobs:
build:
name: Build PHP projects
@@ -17,8 +19,9 @@ jobs:
sample:
# servers
- samples/server/petstore/php-symfony/SymfonyBundle-php/
- samples/server/petstore/php-flight/
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup PHP with tools
uses: shivammathur/setup-php@v2
with:

33
.github/workflows/samples-postman.yaml vendored Normal file
View File

@@ -0,0 +1,33 @@
name: Samples Postman
on:
pull_request:
paths:
- samples/schema/postman-collection/python/**
- samples/schema/postman-collection/postman.json
- .github/workflows/samples-postman.yaml
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# schema
- samples/schema/postman-collection
python-version:
- "3.11"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install
working-directory: ${{ matrix.sample }}
run: |
pip install -r python/requirements.txt
pip install -r python/test-requirements.txt
- name: Test
working-directory: ${{ matrix.sample }}
run: python -m pytest

View File

@@ -0,0 +1,49 @@
name: Python Client (Echo API)
on:
pull_request:
paths:
- samples/client/echo_api/python/**
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent/**
- .github/workflows/samples-python-client-echo-api.yaml
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/python
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Install
working-directory: ${{ matrix.sample }}
run: |
pip install -r requirements.txt
pip install -r test-requirements.txt
- name: Test
working-directory: ${{ matrix.sample }}
run: python -m pytest
- name: mypy
working-directory: ${{ matrix.sample }}
run: python -m mypy

View File

@@ -0,0 +1,33 @@
name: Python FastAPI Server
on:
push:
paths:
- samples/server/petstore/python-fastapi/**
pull_request:
paths:
- samples/server/petstore/python-fastapi/**
jobs:
build:
name: Test Python FastAPI server
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/python-fastapi/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install dependencies
working-directory: ${{ matrix.sample }}
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install pytest
- name: Test
working-directory: ${{ matrix.sample }}
run: PYTHONPATH=src pytest

View File

@@ -1,38 +0,0 @@
name: Python Client (Echo API)
on:
push:
paths:
- samples/client/echo_api/python-nextgen/**
pull_request:
paths:
- samples/client/echo_api/python-nextgen/**
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/python-nextgen
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.7'
- name: Setup node.js
uses: actions/setup-node@v3
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Install
working-directory: ${{ matrix.sample }}
run: |
pip install -r requirements.txt
pip install -r test-requirements.txt
- name: Test
working-directory: ${{ matrix.sample }}
run: python -m pytest

View File

@@ -0,0 +1,63 @@
name: "Python Client: Petstore"
on:
pull_request:
paths:
- samples/openapi3/client/petstore/python-aiohttp/**
- samples/openapi3/client/petstore/python/**
- .github/workflows/samples-python-petstore.yaml
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
sample:
- samples/openapi3/client/petstore/python-aiohttp
- samples/openapi3/client/petstore/python
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
id: py
with:
python-version: ${{ matrix.python-version }}
- name: Cache
uses: actions/cache@v4
with:
key: ${{ runner.os }}-python-${{ steps.py.outputs.python-version }}-
path: |
~/.cache/pypoetry/virtualenvs/
~/.local/pipx/venvs/poetry/
.mypy_cache/
- name: Install poetry
run: pipx install --python '${{ steps.py.outputs.python-path }}' poetry
- name: Install
working-directory: ${{ matrix.sample }}
run: poetry install
- name: Test
working-directory: ${{ matrix.sample }}
run: poetry run pytest -v
- name: mypy
working-directory: ${{ matrix.sample }}
run: poetry run mypy

View File

@@ -0,0 +1,44 @@
name: Python Client pydantic v1 (Echo API)
on:
pull_request:
paths:
- samples/client/echo_api/python-pydantic-v1/**
- .github/workflows/samples-python-pydantic-v1-client-echo-api.yaml
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/python-pydantic-v1/
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Install
working-directory: ${{ matrix.sample }}
run: |
pip install -r requirements.txt
pip install -r test-requirements.txt
- name: Test
working-directory: ${{ matrix.sample }}
run: python -m pytest

View File

@@ -0,0 +1,59 @@
name: "Python Client pydantic v1: Petstore"
on:
pull_request:
paths:
- samples/openapi3/client/petstore/python-pydantic-v1-aiohttp/**
- samples/openapi3/client/petstore/python-pydantic-v1/**
- .github/workflows/samples-python-pydantic-v1-petstore.yaml
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
sample:
- samples/openapi3/client/petstore/python-pydantic-v1-aiohttp
- samples/openapi3/client/petstore/python-pydantic-v1
services:
petstore-api:
image: swaggerapi/petstore
ports:
- 80:8080
env:
SWAGGER_HOST: http://petstore.swagger.io
SWAGGER_BASE_PATH: /v2
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
id: py
with:
python-version: ${{ matrix.python-version }}
- name: Cache
uses: actions/cache@v4
with:
key: ${{ runner.os }}-python-${{ steps.py.outputs.python-version }}-
path: |
~/.cache/pypoetry/virtualenvs/
~/.local/pipx/venvs/poetry/
.mypy_cache/
- name: Install poetry
run: pipx install --python '${{ steps.py.outputs.python-path }}' poetry
- name: Install
working-directory: ${{ matrix.sample }}
run: poetry install
- name: Test
working-directory: ${{ matrix.sample }}
run: poetry run pytest -v

View File

@@ -0,0 +1,27 @@
name: Python Server
on:
push:
paths:
- samples/server/petstore/python-aiohttp-srclayout/**
pull_request:
paths:
- samples/server/petstore/python-aiohttp-srclayout/**
jobs:
build:
name: Test Python server
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# servers
- samples/server/petstore/python-aiohttp-srclayout/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.7'
- name: Test
working-directory: ${{ matrix.sample }}
run: make test-all

42
.github/workflows/samples-r.yaml vendored Normal file
View File

@@ -0,0 +1,42 @@
name: Samples R
on:
push:
paths:
- 'samples/client/echo_api/r/**'
pull_request:
paths:
- 'samples/client/echo_api/r/**'
jobs:
build:
name: Build R
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/client/echo_api/r/'
steps:
- uses: actions/checkout@v4
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- uses: r-lib/actions/setup-r@v2
with:
r-version: 3.6.1
- uses: r-lib/actions/setup-r-dependencies@v2
working-directory: ${{ matrix.sample }}
with:
cache-version: 2
- name: Install curl
run: sudo apt-get install -y r-cran-curl
- name: build and test
working-directory: ${{ matrix.sample }}
run: |
# export _R_CHECK_FORCE_SUGGESTS_=false
/bin/bash build_and_test.bash
shell: bash

43
.github/workflows/samples-ruby.yaml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Samples Ruby
on:
push:
paths:
- 'samples/client/echo_api/ruby-httpx/**'
- 'samples/client/echo_api/ruby-faraday/**'
- 'samples/client/echo_api/ruby-typhoeus/**'
pull_request:
paths:
- 'samples/client/echo_api/ruby-httpx/**'
- 'samples/client/echo_api/ruby-faraday/**'
- 'samples/client/echo_api/ruby-typhoeus/**'
jobs:
build:
name: Build Ruby
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- 'samples/client/echo_api/ruby-httpx/'
- 'samples/client/echo_api/ruby-faraday/'
- 'samples/client/echo_api/ruby-typhoeus/'
steps:
- uses: actions/checkout@v4
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- uses: actions/setup-ruby@v1
with:
ruby-version: 3.0
bundler-cache: true
- name: Install bundle
working-directory: ${{ matrix.sample }}
run: bundle install
- name: Run rspec
working-directory: ${{ matrix.sample }}
run: rspec

View File

@@ -3,12 +3,16 @@ name: Samples Rust
on:
push:
paths:
- 'samples/client/petstore/rust/**'
- 'samples/server/petstore/rust-server/**'
- "samples/client/others/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/client/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
pull_request:
paths:
- 'samples/client/petstore/rust/**'
- 'samples/server/petstore/rust-server/**'
- "samples/client/others/rust/**"
- "samples/client/petstore/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
jobs:
build:
@@ -19,10 +23,12 @@ jobs:
matrix:
sample:
# these folders contain sub-projects of rust clients, servers
- samples/client/others/rust/
- samples/client/petstore/rust/
- samples/server/petstore/rust-server/
- samples/server/petstore/rust-axum/
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
toolchain: stable

View File

@@ -22,21 +22,25 @@ jobs:
# clients
- 'samples/client/petstore/java/okhttp-gson'
- samples/client/petstore/scalaz
- samples/client/petstore/scala-pekko
#- samples/client/petstore/scala-sttp # won't pass while the same tests in circleci pass
# servers
- samples/server/petstore/scala-lagom-server
- samples/server/petstore/scala-play-server
- samples/server/petstore/scala-akka-http-server
- samples/server/petstore/scala-pekko-http-server
- samples/server/petstore/scalatra
- samples/server/petstore/scala-finch # cannot be tested with jdk11
- samples/server/petstore/scala-http4s-server
- samples/server/petstore/scala-cask
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:

View File

@@ -0,0 +1,49 @@
name: Samples Java Spring (JDK17)
on:
push:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
pull_request:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
jobs:
build:
name: Build Java Spring (JDK17)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v4
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 --no-transfer-progress

View File

@@ -3,10 +3,16 @@ name: Samples Java Spring
on:
push:
paths:
# clients
- 'samples/client/petstore/spring*/**'
# servers
- 'samples/server/petstore/spring*/**'
- 'samples/openapi3/server/petstore/spring*/**'
pull_request:
paths:
# clients
- 'samples/client/petstore/spring*/**'
# servers
- 'samples/server/petstore/spring*/**'
- 'samples/openapi3/server/petstore/spring*/**'
jobs:
@@ -19,41 +25,48 @@ jobs:
sample:
# clients
- samples/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-auth
- samples/client/petstore/spring-cloud-date-time
- samples/client/petstore/spring-cloud-deprecated
- samples/client/petstore/spring-cloud-tags
- samples/openapi3/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud-async
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-http-basic
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
- samples/openapi3/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs-skip-default-interface
- samples/openapi3/client/petstore/spring-cloud-async
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
# servers
- samples/server/petstore/springboot
- samples/openapi3/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-reactive
- samples/server/petstore/springboot-implicitHeaders
- samples/openapi3/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-delegate
- samples/server/petstore/springboot-delegate-no-response-entity
- samples/openapi3/server/petstore/springboot-delegate
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/spring-boot-nullable-set
- samples/server/petstore/spring-boot-defaultInterface-unhandledException
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/springboot-virtualan
- samples/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-delegate
- samples/server/petstore/springboot-delegate-no-response-entity
- samples/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-implicitHeaders-annotationLibrary
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-reactive
- samples/server/petstore/springboot-reactive-noResponseEntity
- samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8
- samples/server/petstore/springboot-spring-pageable-delegatePattern
- samples/server/petstore/springboot-spring-pageable-without-j8
- samples/server/petstore/springboot-spring-pageable
- samples/server/petstore/springboot-spring-provide-args
- samples/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-virtualan
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -62,4 +75,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

50
.github/workflows/samples-swift.yaml vendored Normal file
View File

@@ -0,0 +1,50 @@
name: Samples Swift
on:
push:
paths:
- samples/client/petstore/swift5/**
pull_request:
paths:
- samples/client/petstore/swift5/**
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [macos-latest]
sample:
- samples/client/petstore/swift5/alamofireLibrary
- samples/client/petstore/swift5/anycodableLibrary
- samples/client/petstore/swift5/asyncAwaitLibrary
- samples/client/petstore/swift5/combineLibrary
- samples/client/petstore/swift5/default
- samples/client/petstore/swift5/deprecated
- samples/client/petstore/swift5/frozenEnums
- samples/client/petstore/swift5/nonPublicApi
- samples/client/petstore/swift5/objcCompatible
- samples/client/petstore/swift5/oneOf
- samples/client/petstore/swift5/promisekitLibrary
- samples/client/petstore/swift5/readonlyProperties
- samples/client/petstore/swift5/resultLibrary
- samples/client/petstore/swift5/rxswiftLibrary
- samples/client/petstore/swift5/urlsessionLibrary
- samples/client/petstore/swift5/validation
# NOTE: disabled as vaporLibrary doesnt build when adding this CI config
#- samples/client/petstore/swift5/vaporLibrary
- samples/client/petstore/swift5/x-swift-hashable
include:
- os: ubuntu-latest
sample: samples/client/petstore/swift5/alamofireLibrary
name: Build Swift samples
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: swift-actions/setup-swift@v2
if: ${{ matrix.os == 'ubuntu-latest' }}
with:
swift-version: '5'
- name: Build
working-directory: ${{ matrix.sample }}
run: swift build

View File

@@ -0,0 +1,42 @@
name: TypeScript Axios Client (Echo API)
on:
pull_request:
paths:
- samples/client/echo_api/typescript-axios/**
- .github/workflows/samples-typescript-axios-echo-api.yaml
jobs:
build:
name: Test TypeScript Axios client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/typescript-axios/test
node-version:
- 16
- 18
- 20
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && git checkout 15a684c41d4de692878636f47fcc1670af309a0f && npm install && npm start &)
- name: Install
working-directory: ${{ matrix.sample }}
run: |
npm run preinstall
npm i
- name: Test
working-directory: ${{ matrix.sample }}
run: npm test

30
.github/workflows/samples-zapier.yaml vendored Normal file
View File

@@ -0,0 +1,30 @@
name: Samples Zapier
on:
push:
branches:
- 'samples/client/petstore/zapier/**'
pull_request:
paths:
- 'samples/client/petstore/zapier/**'
jobs:
validate:
name: Test zapier generation
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/zapier
steps:
- uses: actions/checkout@v4
- name: Setup node
uses: actions/setup-node@v4
- name: Install dependencies
working-directory: ${{ matrix.sample }}
run: |
npm install
- name: Validate
working-directory: ${{ matrix.sample }}
run: node index.js

View File

@@ -1,26 +0,0 @@
name: Sonar CI
on:
push:
branches:
- master
- '[4-9]+.[0-9]+.x'
- sonar
jobs:
build:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'OpenAPITools' }}
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 11
- name: Compile with Maven
run: mvn -B -q clean install jacoco:report
- name: Jacoco Aggregate
run: mvn jacoco:report-aggregate
- name: Publish to Sonar
run: mvn -B -q -nsu sonar:sonar -Dsonar.projectKey=OpenAPITools_openapi-generator -Dsonar.organization=openapitools -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_LOGIN }} -Dsonar.branch.name=${GITHUB_REF##*/}

59
.github/workflows/windows.yaml vendored Normal file
View File

@@ -0,0 +1,59 @@
name: Windows tests
on:
push:
branches:
- master
- '[5-9]+.[0-9]+.x'
pull_request:
branches:
- master
- '[5-9]+.[0-9]+.x'
jobs:
build:
name: Build
runs-on: windows-latest
strategy:
matrix:
java: [11, 17]
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: cache-maven-repository
with:
path: |
~/.m2/repository
~/.gradle
!~/.gradle/caches/*/plugin-resolution/
!~/.m2/repository/org/openapitools/
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.13.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
- name: Run maven
run: ./mvnw clean --no-snapshot-updates --batch-mode --quiet install
env:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Test Template Retrieval
run: |
cd modules/openapi-generator-cli/target
# generator names containing "-" caused problems in the past, see https://github.com/OpenAPITools/openapi-generator/issues/9528
java -jar ./openapi-generator-cli.jar author template --verbose -g jaxrs-spec --library quarkus
- name: Setup Gradle
uses: gradle/gradle-build-action@v3
- name: Gradle tests
run: |
gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace

22
.gitignore vendored
View File

@@ -8,6 +8,7 @@ out/
*.gpg
classpath.txt
version.properties
modules/openapi-generator-maven-plugin/src/test/resources/default/_merged_spec.yaml
modules/openapi-generator-gradle-plugin/bin/
!modules/openapi-generator-cli/src/main/resources/version.properties
.project
@@ -35,6 +36,8 @@ packages/
nbproject/
nbactions.xml
nb-configuration.xml
.direnv/
**/:w
.settings
@@ -82,12 +85,17 @@ samples/client/petstore/cpp-restsdk/CMakeCache.txt
samples/client/petstore/cpp-restsdk/CMakeFiles/
samples/client/petstore/cpp-restsdk/Makefile
samples/client/petstore/cpp-restsdk/cmake_install.cmake
samples/client/petstore/cpp-restsdk/client/CMakeFiles
samples/client/petstore/cpp-restsdk/client/Makefile
samples/client/petstore/cpp-restsdk/client/cmake_install.cmake
samples/client/petstore/cpp-restsdk/client/CppRestPetstoreClientConfig.cmake
samples/client/petstore/cpp-restsdk/client/CMakeCache.txt
#Java/Android
**/.gradle
samples/client/petstore/java/hello.txt
samples/client/petstore/java/okhttp-gson/hello.txt
samples/client/petstore/java/jersey1/hello.txt
samples/client/petstore/java/okhttp-gson-3.1/hello.txt
samples/client/petstore/java/jersey2-java8/hello.txt
samples/client/petstore/java/jersey2/hello.txt
samples/client/petstore/android/default/hello.txt
@@ -171,17 +179,17 @@ samples/client/petstore/csharp-refactor/OpenAPIClient/nuget.exe
# Python
*.pyc
__pycache__
.venv/
samples/client/petstore/python/dev-requirements.txt.log
samples/client/petstore/python/swagger_client.egg-info/SOURCES.txt
samples/client/petstore/python/.coverage
samples/client/petstore/python/.projectile
samples/client/petstore/python/.venv/
samples/client/petstore/python-asyncio/.venv/
samples/client/petstore/python-asyncio/.pytest_cache/
samples/client/petstore/python-tornado/.venv/
**/poetry.lock
# PHP
samples/client/petstore/php/OpenAPIClient-php/composer.lock
samples/client/petstore/php-nextgen/OpenAPIClient-php/composer.lock
samples/client/petstore/php-dt/composer.lock
samples/client/petstore/php-dt-modern/composer.lock
samples/openapi3/server/petstore/php-symfony/SymfonyBundle-php/composer.lock
@@ -209,6 +217,8 @@ samples/server/petstore/kotlin-server/ktor/build
samples/server/petstore/kotlin-springboot/build
samples/client/petstore/kotlin*/src/main/kotlin/test/
samples/client/petstore/kotlin*/build/
samples/server/others/kotlin-server/jaxrs-spec/build/
samples/client/echo_api/kotlin-jvm-spring-3-restclient/build/
# haskell
.stack-work
@@ -268,6 +278,7 @@ samples/client/petstore/c/*.so
# Ruby
samples/openapi3/client/petstore/ruby/Gemfile.lock
samples/openapi3/client/petstore/ruby-faraday/Gemfile.lock
samples/openapi3/client/petstore/ruby-httpx/Gemfile.lock
# Crystal
samples/client/petstore/crystal/lib
@@ -277,3 +288,6 @@ samples/openapi3/client/petstore/go/privatekey.pem
## OCaml
samples/client/petstore/ocaml/_build/
# jetbrain http client
samples/client/jetbrains/adyen/checkout71/http/client/Apis/http-client.private.env.json

View File

@@ -3,19 +3,19 @@
##
## You can build _just_ this part with:
## docker --target builder -t container-name:builder -f .hub.cli.dockerfile .
FROM maven:3.6.3-jdk-11-openj9 as builder
FROM maven:3-eclipse-temurin-17 as builder
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
COPY . ${GEN_DIR}
# Pre-compile openapi-generator-cli
RUN mvn -am -pl "modules/openapi-generator-cli" package
RUN mvn -B -am -pl "modules/openapi-generator-cli" package
## The final (release) image
## The resulting container here only needs the target jar
## and ca-certificates (to be able to query HTTPS hosted specs)
FROM openjdk:11.0.8-jre-slim-buster
FROM eclipse-temurin:17-jre
ENV GEN_DIR /opt/openapi-generator

View File

@@ -3,18 +3,18 @@
##
## You can build _just_ this part with:
## docker --target builder -t container-name:builder -f .hub.online.dockerfile .
FROM maven:3.6.3-jdk-11-openj9 as builder
FROM maven:3-eclipse-temurin-17 as builder
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
COPY . ${GEN_DIR}
# Pre-compile openapi-generator-online
RUN mvn -am -pl "modules/openapi-generator-online" package
RUN mvn -B -am -pl "modules/openapi-generator-online" package
## The final (release) image
## The resulting container here only needs the target jar
FROM openjdk:11.0.8-jre-slim-buster
FROM eclipse-temurin:17-jre
ENV GEN_DIR /opt/openapi-generator
ENV TARGET_DIR /generator

View File

@@ -1 +1 @@
1.8
11

13
.mvn/extensions.xml Normal file
View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<extensions>
<extension>
<groupId>com.gradle</groupId>
<artifactId>gradle-enterprise-maven-extension</artifactId>
<version>1.20.1</version>
</extension>
<extension>
<groupId>com.gradle</groupId>
<artifactId>common-custom-user-data-maven-extension</artifactId>
<version>1.12.5</version>
</extension>
</extensions>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Common gradle-enterprise.xml configuration for Maven shared between CI agents and developers building locally.
The build cache credentials required for CI builds to write to the remote build cache are read from environment variables.
Possibly, the credentials are configured in Jenkins via Credentials plugin (https://plugins.jenkins.io/credentials/) and
Credentials Binding plugin (https://plugins.jenkins.io/credentials-binding/), or the credentials are injected using the
vendor-specific mechanism of the CI server running the build.
Note: In the XML configuration below, you need to adjust
- the server url of your Gradle Enterprise server
- the name of the environment variable that reveals the build is running in a CI environment
- the names of the environment variables holding the build cache credentials
to the specifics of your CI server settings. -->
<gradleEnterprise
xmlns="https://www.gradle.com/gradle-enterprise-maven" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.gradle.com/gradle-enterprise-maven https://www.gradle.com/schema/gradle-enterprise-maven.xsd">
<server>
<url>https://ge.openapi-generator.tech/</url> <!-- adjust to your GE server -->
<allowUntrusted>false</allowUntrusted> <!-- ensure a trusted certificate is configured -->
</server>
<buildScan>
<captureGoalInputFiles>true</captureGoalInputFiles>
<backgroundBuildScanUpload>#{isFalse(env['CI'])}</backgroundBuildScanUpload> <!-- adjust to your CI provider -->
<publish>ALWAYS</publish>
<publishIfAuthenticated>true</publishIfAuthenticated>
<obfuscation>
<!-- Use a redacted value.-->
<ipAddresses>#{{'0.0.0.0'}}</ipAddresses>
</obfuscation>
</buildScan>
<buildCache>
<local>
<enabled>true</enabled>
</local>
<remote>
<enabled>true</enabled>
<!-- Check credentials presence to avoid build cache errors on PR builds when credentials are not present -->
<storeEnabled>#{isTrue(env['CI']) and isTrue(env['GRADLE_ENTERPRISE_ACCESS_KEY'])}</storeEnabled>
</remote>
</buildCache>
</gradleEnterprise>

View File

@@ -1,117 +0,0 @@
/*
* Copyright 2007-present the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;
public class MavenWrapperDownloader {
private static final String WRAPPER_VERSION = "0.5.6";
/**
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
*/
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
/**
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
* use instead of the default one.
*/
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
".mvn/wrapper/maven-wrapper.properties";
/**
* Path where the maven-wrapper.jar will be saved to.
*/
private static final String MAVEN_WRAPPER_JAR_PATH =
".mvn/wrapper/maven-wrapper.jar";
/**
* Name of the property which should be used to override the default download url for the wrapper.
*/
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
public static void main(String args[]) {
System.out.println("- Downloader started");
File baseDirectory = new File(args[0]);
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
// If the maven-wrapper.properties exists, read it and check if it contains a custom
// wrapperUrl parameter.
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
String url = DEFAULT_DOWNLOAD_URL;
if(mavenWrapperPropertyFile.exists()) {
FileInputStream mavenWrapperPropertyFileInputStream = null;
try {
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
Properties mavenWrapperProperties = new Properties();
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
} catch (IOException e) {
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
} finally {
try {
if(mavenWrapperPropertyFileInputStream != null) {
mavenWrapperPropertyFileInputStream.close();
}
} catch (IOException e) {
// Ignore ...
}
}
}
System.out.println("- Downloading from: " + url);
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
if(!outputFile.getParentFile().exists()) {
if(!outputFile.getParentFile().mkdirs()) {
System.out.println(
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
}
}
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
try {
downloadFileFromURL(url, outputFile);
System.out.println("Done");
System.exit(0);
} catch (Throwable e) {
System.out.println("- Error downloading");
e.printStackTrace();
System.exit(1);
}
}
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
String username = System.getenv("MVNW_USERNAME");
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
}
URL website = new URL(urlString);
ReadableByteChannel rbc;
rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream(destination);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
rbc.close();
}
}

Binary file not shown.

View File

@@ -5,14 +5,14 @@
# 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
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.8/apache-maven-3.8.8-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar

2
.sdkmanrc Normal file
View File

@@ -0,0 +1,2 @@
java=11.0.23-tem
maven=3.8.8

View File

@@ -1,7 +1,7 @@
sudo: required
language: java
jdk:
- openjdk8
- openjdk11
# See https://docs.travis-ci.com/user/languages/java/#caching
before_cache:
@@ -22,6 +22,7 @@ cache:
- $HOME/samples/client/petstore/ruby/vendor/bundle
- $HOME/samples/client/petstore/python/.venv/
- $HOME/samples/server/petstore/rust-server/target
- $HOME/samples/server/petstore/rust-axum/target
- $HOME/perl5
- $HOME/.cargo
- $HOME/.pub-cache
@@ -127,21 +128,6 @@ before_install:
gpg --check-trustdb ;
fi;
- pushd .; cd website; yarn install; popd
# install Deno
#- sh -s v1.6.2 < ./CI/deno_install.sh
#- export PATH="$HOME/.deno/bin:$PATH"
install:
# Add Godeps dependencies to GOPATH and PATH
#- eval "$(curl -sL https://raw.githubusercontent.com/travis-ci/gimme/master/gimme | GIMME_GO_VERSION=1.4 bash)"
#- export GOPATH="${TRAVIS_BUILD_DIR}/Godeps/_workspace"
- export PATH="${TRAVIS_BUILD_DIR}/Godeps/_workspace/bin:$HOME/.cargo/bin:$PATH:/usr/lib/dart/bin"
#- go version
- gcc -v
- echo $CC
- echo $CXX
#- pub version
#- dart --version
script:
# fail fast
@@ -151,14 +137,13 @@ script:
# run integration tests defined in maven pom.xml
# WARN: Travis will timeout after 10 minutes of no stdout/stderr activity, which is problematic with mvn --quiet.
# show "error" only to reduce the log size
- mvn -e --no-snapshot-updates --quiet --batch-mode --show-version clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error 2>&1 | grep -i error
#- mvn -e --no-snapshot-updates --quiet --batch-mode --show-version verify -Psamples -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- ./mvnw -e --no-snapshot-updates --quiet --batch-mode --show-version clean install -DskipTests -Dmaven.javadoc.skip=true -Dorg.slf4j.simpleLogger.defaultLogLevel=error
after_success:
# push to maven repo
- if [ $SONATYPE_USERNAME ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
if [ "$TRAVIS_BRANCH" = "master" ] && [ -z $TRAVIS_TAG ]; then
echo "Publishing from branch $TRAVIS_BRANCH";
mvn clean deploy -DskipTests=true -B -U -P release --settings CI/settings.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error;
./mvnw clean deploy --quiet -DskipTests=true -B -U -P release --settings CI/settings.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error;
echo "Finished mvn clean deploy for $TRAVIS_BRANCH";
pushd .;
cd modules/openapi-generator-gradle-plugin;
@@ -167,7 +152,7 @@ after_success:
popd;
elif [ -z $TRAVIS_TAG ] && [[ "$TRAVIS_BRANCH" =~ ^[0-9]+\.[0-9]+\.x$ ]]; then
echo "Publishing from branch $TRAVIS_BRANCH";
mvn clean deploy --settings CI/settings.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error;
./mvnw clean deploy --quiet --settings CI/settings.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error;
echo "Finished mvn clean deploy for $TRAVIS_BRANCH";
pushd .;
cd modules/openapi-generator-gradle-plugin;

View File

@@ -1,98 +0,0 @@
kind: pipeline
type: docker
name: java11-test
steps:
# test Java 11 HTTP client
- name: java11-test
image: openjdk:11.0
commands:
- ./mvnw --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
- ./mvnw --quiet verify -Psamples.droneio -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# test java native client
- ./mvnw clean test -f samples/client/petstore/java/native/pom.xml
- ./mvnw clean test -f samples/client/petstore/java/native-async/pom.xml
- ./mvnw clean test -f samples/openapi3/client/petstore/java/native/pom.xml
# test all generators with fake petstore spec (2.0, 3.0)
- /bin/bash bin/utils/test-fake-petstore-for-all.sh
# generate test scripts
- /bin/bash bin/tests/run-all-test
---
kind: pipeline
type: docker
name: nim-client-test
steps:
# test nim client
- name: nim-client-test
image: nimlang/nim
commands:
- (cd samples/client/petstore/nim/ && nim c sample_client.nim)
---
kind: pipeline
type: docker
name: protobuf-schema-test
steps:
# test protobuf schema generator
- name: protobuf-schema-test
image: nanoservice/protobuf-go
commands:
- protoc --version
- mkdir /var/tmp/go/
- cd samples/config/petstore/protobuf-schema
- protoc --go_out=/var/tmp/go/ services/*
- protoc --go_out=/var/tmp/go/ models/*
---
kind: pipeline
type: docker
name: aspnetcore-test
steps:
# test aspnetcore 3.x
- name: aspnetcore-test
image: mcr.microsoft.com/dotnet/core/sdk:3.1
commands:
- (cd samples/server/petstore/aspnetcore-3.1/ && /bin/sh build.sh)
- (cd samples/server/petstore/aspnetcore-3.0/ && /bin/sh build.sh)
---
kind: pipeline
type: docker
name: ocaml-test
steps:
# test ocaml petstore client
- name: ocaml-test
image: ocaml/opam2:4.07
commands:
- sudo apt-get -y install m4
- cd samples/client/petstore/ocaml
- opam install ppx_deriving_yojson cohttp ppx_deriving cohttp-lwt-unix
- opam pin add ocaml-migrate-parsetree 1.3.1
- eval $(opam env)
- sudo chmod -R 777 .
- dune build --build-dir=./_build
---
kind: pipeline
type: docker
name: haskell-client-test
steps:
# test haskell client
- name: haskell-client-test
image: haskell:8.10.4
commands:
- (cd samples/client/petstore/haskell-http-client/ && stack --allow-different-user --install-ghc --no-haddock-deps haddock --fast && stack --allow-different-user test --fast)
---
kind: pipeline
type: docker
name: erlang
steps:
# test erlang client and server
- name: erlang
image: erlang:alpine
commands:
- (cd samples/client/petstore/erlang-client && rebar3 compile)
- (cd samples/client/petstore/erlang-proper && rebar3 compile)
# comment out as the tests pass locally but not in the CI
#- (cd samples/server/petstore/erlang-server && rebar3 compile)

View File

@@ -1,37 +0,0 @@
sudo: required
language: objective-c
osx_image: xcode10.3
before_install:
- export SW=`pwd`
- rvm list
#- rvm use 2.3.3
- gem environment
- gem install bundler -N
- gem install cocoapods -v 1.2.1 -N
- gem install xcpretty -N
- pod --version
# comment out below to avoid errors
#- pod repo update
#- pod setup --silent > /dev/null
#- mkdir -p ~/.local/bin
#- export PATH=$HOME/.local/bin:$PATH
## start local petstore server
#- git clone -b docker --single-branch https://github.com/wing328/swagger-samples
#- cd swagger-samples/java/java-jersey-jaxrs
#- sudo mvn jetty:run &
#- cd $SW
# show host table to confirm petstore.swagger.io is mapped to localhost
- cat /etc/hosts
# show java version
- java -version
# show brew version
- brew --version
# show xcpretty version
- xcpretty -v
# show go version
- go version
script:
# run integration tests defined in maven pom.xml
- mvn --no-snapshot-updates -q --batch-mode verify -Psamples.ios -Dmaven.javadoc.skip=true

View File

@@ -1,29 +0,0 @@
dist: trusty
sudo: required
language: java
addons:
apt:
packages:
- openjdk-6-jdk
jdk: openjdk6
cache:
directories:
- $HOME/.m2
- $HOME/.ivy2
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
install:
- jdk_switcher use openjdk6
- java -version
- curl -s "https://get.sdkman.io" | bash
- source "$HOME/.sdkman/bin/sdkman-init.sh"
- sdk version
- sdk install gradle 2.9
- sdk list gradle
- sdk version
- gradle --version
script:
- cd samples/client/petstore/java/jersey2-java6 && gradle test

View File

@@ -9,20 +9,17 @@ set -e
export NODE_ENV=test
function cleanup {
# Show logs of 'petstore.swagger' container to troubleshoot Unit Test failures, if any.
if [ "$NODE_INDEX" != "4" ]; then
docker logs petstore.swagger # container name specified in circle.yml
fi
}
trap cleanup EXIT
if [ "$NODE_INDEX" = "1" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci' defined in pom.xml ..."
echo "Running node $NODE_INDEX ..."
java -version
mvn --no-snapshot-updates --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
sudo apt-get -y install cpanminus
(cd samples/client/petstore/perl && /bin/bash ./test.bash)
(cd samples/client/petstore/ruby && mvn integration-test)
(cd samples/client/petstore/ruby-faraday && mvn integration-test)
(cd samples/client/petstore/ruby-httpx && mvn integration-test)
(cd samples/client/petstore/ruby-autoload && mvn integration-test)
elif [ "$NODE_INDEX" = "2" ]; then
echo "Running node $NODE_INDEX to test Go"
@@ -42,20 +39,23 @@ elif [ "$NODE_INDEX" = "2" ]; then
export PATH="/usr/local/go1.18/go/bin:$PATH"
go version
# run integration tests
mvn --no-snapshot-updates --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# install cpprestsdk
sudo apt-get install libcpprest-dev
wget "https://github.com/aminya/setup-cpp/releases/download/v0.37.0/setup-cpp-x64-linux"
chmod +x ./setup-cpp-x64-linux
sudo ./setup-cpp-x64-linux --compiler llvm --cmake true --ninja true
source ~/.cpprc # activate cpp environment variables
# run go integration tests
(cd samples/client/petstore/go && mvn integration-test)
(cd samples/openapi3/client/petstore/go && mvn integration-test)
(cd samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false && mvn integration-test)
(cd samples/client/others/go/allof_multiple_ref_and_discriminator && mvn integration-test)
(cd samples/client/petstore/cpp-restsdk/client && mvn integration-test)
elif [ "$NODE_INDEX" = "3" ]; then
echo "Running node $NODE_INDEX to test 'samples.circleci.node3' defined in pom.xml ..."
#wget https://www.python.org/ftp/python/3.8.9/Python-3.8.9.tgz
#tar -xf Python-3.8.9.tgz
#cd Python-3.8.9
#./configure --enable-optimizations
#sudo make altinstall
pyenv install --list
pyenv install 3.7.12
pyenv install 2.7.14
pyenv global 3.7.12
echo "Running node $NODE_INDEX ... "
# Install node@stable (for angular 6)
set +e
@@ -72,22 +72,54 @@ elif [ "$NODE_INDEX" = "3" ]; then
echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
echo "[ -s \"$NVM_DIR/nvm.sh\" ] && . \"$NVM_DIR/nvm.sh\"" >> $BASH_ENV
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 ..."
#mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node4 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
(cd samples/openapi3/client/petstore/python && make test)
(cd samples/openapi3/client/petstore/python-prior && make test)
(cd samples/openapi3/client/3_0_3_unit_test/python && make test)
(cd samples/client/others/typescript-angular && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v12-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v13-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v14-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v15-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v16-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v17-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v18-provided-in-root && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/default && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/tests/default && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/jquery && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/tests/jquery && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/object_params && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/tests/object_params && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/inversify && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/tests/inversify && mvn integration-test)
#(cd samples/openapi3/client/petstore/typescript/tests/deno && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/browser && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/tests/browser && mvn integration-test)
(cd samples/client/petstore/typescript-fetch/builds/default && mvn integration-test)
(cd samples/client/petstore/typescript-fetch/builds/es6-target && mvn integration-test)
(cd samples/client/petstore/typescript-fetch/builds/with-npm-version && mvn integration-test)
(cd samples/client/petstore/typescript-fetch/tests/default && mvn integration-test)
(cd samples/client/petstore/typescript-node/npm && mvn integration-test)
(cd samples/client/petstore/typescript-rxjs/builds/with-npm-version && mvn integration-test)
(cd samples/client/petstore/typescript-axios/builds/with-npm-version && mvn integration-test)
(cd samples/client/petstore/typescript-axios/tests/default && mvn integration-test)
(cd samples/client/petstore/javascript-flowtyped && mvn integration-test)
(cd samples/client/petstore/javascript-es6 && mvn integration-test)
(cd samples/client/petstore/javascript-promise-es6 && mvn integration-test)
else
echo "Running node $NODE_INDEX to test 'samples.circleci.others' defined in pom.xml ..."
echo "Running node $NODE_INDEX ..."
java -version
mvn --no-snapshot-updates --quiet verify -Psamples.circleci.others -Dorg.slf4j.simpleLogger.defaultLogLevel=error
mvn --no-snapshot-updates --quiet javadoc:javadoc -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
(cd samples/client/petstore/scala-akka && mvn integration-test)
(cd samples/client/petstore/scala-sttp && mvn integration-test)
(cd samples/client/petstore/scala-sttp4 && mvn integration-test)
(cd samples/client/petstore/clojure && mvn integration-test)
(cd samples/client/petstore/java/jersey2-java8 && mvn integration-test)
(cd samples/openapi3/client/petstore/java/jersey2-java8 && mvn integration-test)
(cd samples/client/petstore/java/jersey3 && mvn integration-test)
(cd samples/client/others/java/okhttp-gson-streaming && mvn integration-test)
(cd samples/client/petstore/java/okhttp-gson && mvn integration-test)
(cd samples/client/petstore/java/okhttp-gson-3.1 && mvn integration-test)
(cd samples/client/petstore/java/resteasy && mvn integration-test)
(cd samples/client/petstore/java-micronaut-client && mvn integration-test)
(cd samples/client/petstore/java/apache-httpclient && mvn integration-test)
(cd samples/client/petstore/java/resttemplate-jakarta && mvn integration-test)
fi

View File

@@ -31,7 +31,7 @@ Please file the pull request against the correct branch, e.g. `master` for non-b
All the code generators can be found in [modules/openapi-generator/src/main/java/org/openapitools/codegen/languages](https://github.com/openapitools/openapi-generator/tree/master/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages)
If you want to add a new generator, follow the [new-generator](https://openapi-generator.tech/docs/new-generator) guide.
If you want to add a new generator, follow the [new-generator](https://openapi-generator.tech/docs/new-generator) guide.
### Templates
@@ -73,6 +73,7 @@ Code change should conform to the programming style guide of the respective lang
- Scala: http://docs.scala-lang.org/style/
- Swift: [Apple Developer](https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html)
- TypeScript: https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines
- Xojo: https://documentation.xojo.com/topics/code_management/coding_guidelines.html
For other languages, feel free to suggest.
@@ -83,6 +84,26 @@ For [Vendor Extensions](https://github.com/OAI/OpenAPI-Specification/blob/master
- For language-specified vendor extension, put it in the form of `x-{lang}-{extension-name}`. e.g. `x-objc-operation-id`, `x-java-feign-retry-limit`
- For a list of existing vendor extensions in use, please refer to https://github.com/openapitools/openapi-generator/wiki/Vendor-Extensions. If you've added new vendor extensions as part of your PR, please update the wiki page.
### Building
The `openapi-generator-cli` can be built using the following command. This will generate the `openapi-generator-cli.jar` in the `modules/openapi-generator-cli/target` directory without running the tests and generating the Javadocs.
```shell
./mvnw clean install -DskipTests -Dmaven.javadoc.skip=true
```
Or on Windows:
```shell
mvnw.cmd clean install -DskipTests -Dmaven.javadoc.skip=true
```
The binary can run via `java -jar`. For example:
```shell
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help
```
### Testing
To add test cases (optional) covering the change in the code generator, please refer to [modules/openapi-generator/src/test/java/org/openapitools/codegen](https://github.com/openapitools/openapi-generator/tree/master/modules/openapi-generator/src/test/java/org/openapitools/codegen)
@@ -111,5 +132,5 @@ See [OpenAPI Tools wiki](https://github.com/OpenAPITools/openapi-generator/wiki/
- File a PR with meaningful title, description and commit messages
- Make sure the option "Allow edits from maintainers" in the PR is selected so that the maintainers can update your PRs with minor fixes, if needed.
- Recommended git settings
- `git config core.autocrlf input` to tell Git convert CRLF to LF on commit but not the other way around
- `git config core.autocrlf input` to tell Git convert CRLF to LF on commit but not the other way around
- To close an issue (e.g. issue 1542) automatically after a PR is merged, use keywords "fix", "close", "resolve" in the PR description, e.g. `fix #1542`. (Ref: [closing issues using keywords](https://help.github.com/articles/closing-issues-using-keywords/))

View File

@@ -1,4 +1,4 @@
FROM maven:3.6.3-jdk-11-openj9
FROM maven:3-eclipse-temurin-17
ENV GEN_DIR /opt/openapi-generator
WORKDIR ${GEN_DIR}
@@ -20,7 +20,7 @@ COPY ./modules/openapi-generator ${GEN_DIR}/modules/openapi-generator
COPY ./pom.xml ${GEN_DIR}
# Pre-compile openapi-generator-cli
RUN mvn -am -pl "modules/openapi-generator-cli" package
RUN mvn -B -am -pl "modules/openapi-generator-cli" package
# This exists at the end of the file to benefit from cached layers when modifying docker-entrypoint.sh.
COPY docker-entrypoint.sh /usr/local/bin/

183
README.md
View File

@@ -9,29 +9,23 @@
[![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)
[![Contribute with Gitpod](https://img.shields.io/badge/Contribute%20with-Gitpod-908a85?logo=gitpod)](https://gitpod.io/#https://github.com/OpenAPITools/openapi-generator)
[![Conan Center](https://shields.io/conan/v/openapi-generator)](https://conan.io/center/openapi-generator)
[![Conan Center](https://shields.io/conan/v/openapi-generator)](https://conan.io/center/recipes/openapi-generator)
[![Revved up by Develocity](https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.openapi-generator.tech/scans)
</div>
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`6.4.0`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.7.0`):
[![Build Status](https://api.travis-ci.com/OpenAPITools/openapi-generator.svg?branch=master&status=passed)](https://app.travis-ci.com/github/OpenAPITools/openapi-generator/builds)
[![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)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/master?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
[7.0.x](https://github.com/OpenAPITools/openapi-generator/tree/7.0.x) (`7.0.x`):
[![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/7.0.x.svg?label=Integration%20Test)](https://travis-ci.com/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/7.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=7.0.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
[![Bitrise](https://img.shields.io/bitrise/4a2b10a819d12b67/7.0.x?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https://app.bitrise.io/app/4a2b10a819d12b67)
</div>
<div align="center">
:star::star::star: If you would like to contribute, please refer to [guidelines](CONTRIBUTING.md) and a list of [open tasks](https://github.com/openapitools/openapi-generator/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22).:star::star::star:
:star::star::star: If you would like to contribute, please refer to [guidelines](CONTRIBUTING.md) and a list of [open tasks](https://github.com/openapitools/openapi-generator/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22). :star::star::star:
:bangbang: To migrate from Swagger Codegen to OpenAPI Generator, please refer to the [migration guide](docs/migration-from-swagger-codegen.md) :bangbang:
@@ -65,24 +59,38 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[<img src="https://openapi-generator.tech/img/companies/burkert.jpg" width="128" height="128">](https://www.burkert.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/finbourne.png" width="128" height="128">](https://www.finbourne.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/bumpsh.png" width="128" height="128">](https://bump.sh/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/bileto.png" width="128" height="128">](https://www.bileto.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/bairesdev.png" width="128" height="128">](https://www.bairesdev.com/sponsoring-open-source-projects/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/dmtech.jpeg" width="128" height="128">](https://www.dmtech.de/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/adyen.png" width="128" height="128">](https://adyen.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/fornex.png" width="128" height="128">](https://fornex.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/alloyautomation.png" width="128" height="128">](https://runalloy.com/signup?utm_source=github&utm_medium=referral&utm_campaign=1524_openapigenerator)
[<img src="https://openapi-generator.tech/img/companies/ssstwitter.png" width="128" height="128">](https://ssstwitter.com/?utm_source=github&utm_medium=referral&utm_campaign=sponsor)
[<img src="https://openapi-generator.tech/img/companies/svix.png" width="128" height="128">](https://www.svix.com/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/litslink.png" width="128" height="128">](https://litslink.com/services/artificial-intelligence?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/designli.jpg" width="128" height="128">](https://designli.co?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/itm.png" width="128" height="128">](https://opensource.muenchen.de?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/kong.png" width="128" height="128">](https://konghq.com/products/kong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=openapi-generator)
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS and Checkly for sponsoring the API monitoring
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity
[<img src="https://openapi-generator.tech/img/companies/godaddy.png" width="150">](https://www.godaddy.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[![Linode](https://www.linode.com/media/images/logos/standard/light/linode-logo_standard_light_small.png)](https://www.linode.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcRAhEYadUyZYzGUotZiSdXkVMqqLGuohyixLl4eUpUV6pAbUULL" width="150">](https://checklyhq.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/c/cb/Gradle_logo.png/320px-Gradle_logo.png" width="150">](https://gradle.org?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
## Overview
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an [OpenAPI Spec](https://github.com/OAI/OpenAPI-Specification) (both 2.0 and 3.0 are supported). Currently, the following languages/frameworks are supported:
| | Languages/Frameworks |
| -------------------------------- |-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **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 4.x, Apache HttpClient 5.x, 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, Helidon), **Jetbrains HTTP Client**, **Julia**, **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 - 15.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/), [Helidon](https://helidon.io/)), **Julia**, **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](https://openapi-generator.tech/docs/generators/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** |
| | Languages/Frameworks |
| -------------------------------- |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **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 4.x, Apache HttpClient 5.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, Helidon), **Jetbrains HTTP Client**, **Julia**, **k6**, **Kotlin**, **Lua**, **N4JS**, **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, pekko), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (9.x - 18.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs), **XoJo**, **Zapier** |
| **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/), [Helidon](https://helidon.io/)), **Julia**, **Kotlin** (Spring Boot, [Ktor](https://github.com/ktorio/ktor), [Vert.x](https://vertx.io/)), **PHP** ([Flight](https://docs.flightphp.com/), 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](https://openapi-generator.tech/docs/generators/rust-server/)), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), [Cask](https://github.com/com-lihaoyi/cask), Scalatra) |
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML** |
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Postman Collection**, **Protocol Buffer**, **WSDL** |
## Table of contents
@@ -120,13 +128,15 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 7.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.0.0-SNAPSHOT/) | Feb/Mar 2023 | Major release with breaking changes (no fallback) |
| 6.4.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.4.0-SNAPSHOT/) | 05.12.2022 | Minor release with breaking changes (with fallback) |
| [6.3.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v6.3.0) (latest stable release) | 01.02.2023 | Minor release with breaking changes (with fallback) |
| 7.7.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.7.0-SNAPSHOT/) | 20.06.2024 | Minor release with breaking changes (with fallback) |
| [7.6.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.6.0) (latest stable release) | 20.05.2024 | Minor release with breaking changes (with fallback) |
| [6.6.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v6.6.0) | 11.05.2023 | Minor release with breaking changes (with fallback) |
| [5.4.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.4.0) | 31.01.2022 | 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
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0, 3.1 (beta support)
(We do not publish daily/nightly build. Please use SNAPSHOT instead)
For old releases, please refer to the [**Release**](https://github.com/OpenAPITools/openapi-generator/releases) page.
@@ -180,27 +190,28 @@ See the different versions of the [openapi-generator-cli](https://search.maven.o
### [1.3 - Download JAR](#table-of-contents)
<!-- 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):
If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 11 runtime at a minimum):
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/6.3.0/openapi-generator-cli-6.3.0.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.6.0/openapi-generator-cli-7.6.0.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/6.3.0/openapi-generator-cli-6.3.0.jar -O openapi-generator-cli.jar
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.6.0/openapi-generator-cli-7.6.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/6.3.0/openapi-generator-cli-6.3.0.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.6.0/openapi-generator-cli-7.6.0.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
For Mac users, please make sure Java 8 is installed (Tips: run `java -version` to check the version), and export `JAVA_HOME` in order to use the supported Java version:
For Mac users, please make sure Java 11 is installed (Tips: run `java -version` to check the version), and export `JAVA_HOME` in order to use the supported Java version:
```sh
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
export JAVA_HOME=`/usr/libexec/java_home -v 1.11`
export PATH=${JAVA_HOME}/bin:$PATH
```
<!-- /RELEASE_VERSION -->
### Launcher Script
@@ -249,25 +260,33 @@ openapi-generator-cli version # is always 4.0.2, unless any of the above overrid
To build from source, you need the following installed and available in your `$PATH:`
* [Java 8](https://www.oracle.com/technetwork/java/index.html)
* [Java 11](https://adoptium.net/)
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/)
* [Apache Maven 3.8.8 or greater](https://maven.apache.org/) (optional)
After cloning the project, you can build it from source with this command:
After cloning the project, you can build it from source using [maven wrapper](https://maven.apache.org/wrapper/):
- Linux: `./mvnw clean install`
- Windows: `mvnw.cmd clean install`
#### Nix users
If you're a nix user, you can enter OpenAPI Generator shell, by typing:
```sh
mvn clean install
nix develop
```
It will enter a shell with Java 11 installed.
If you don't have maven installed, you may directly use the included [maven wrapper](https://github.com/takari/maven-wrapper), and build with the command:
Direnv supports automatically loading of the nix developer shell, so if you're using direnv too, type:
```sh
./mvnw clean install
direnv allow
```
and have `java` and `mvn` set up with correct versions each time you enter project directory.
The default build contains minimal static analysis (via CheckStyle). To run your build with PMD and Spotbugs, use the `static-analysis` profile:
```sh
mvn -Pstatic-analysis clean install
```
- Linux: `./mvnw -Pstatic-analysis clean install`
- Windows: `mvnw.cmd -Pstatic-analysis clean install`
### [1.5 - Homebrew](#table-of-contents)
@@ -283,11 +302,13 @@ To reinstall with the latest master, run `brew uninstall openapi-generator && br
To install OpenJDK (pre-requisites), please run
```sh
brew tap AdoptOpenJDK/openjdk
brew install --cask adoptopenjdk12
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home/
brew install --cask adoptopenjdk11
export JAVA_HOME=`/usr/libexec/java_home -v 1.11`
```
To install Maven, please run
or download installer via https://adoptium.net/
To install Maven (optional), please run
```sh
brew install maven
```
@@ -370,19 +391,18 @@ Once built, `run-in-docker.sh` will act as an executable for openapi-generator-c
```sh
./run-in-docker.sh help # Executes 'help' command for openapi-generator-cli
./run-in-docker.sh list # Executes 'list' command for openapi-generator-cli
./run-in-docker.sh /gen/bin/go-petstore.sh # Builds the Go client
./run-in-docker.sh generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g go -o /gen/out/go-petstore -p packageName=petstore # generates go client, outputs locally to ./out/go-petstore
```
##### Troubleshooting
If an error like this occurs, just execute the **mvn clean install -U** command:
If an error like this occurs, just execute the **./mvnw clean install -U** command:
> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project openapi-generator: A type incompatibility occurred while executing org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test: java.lang.ExceptionInInitializerError cannot be cast to java.io.IOException
```sh
./run-in-docker.sh mvn clean install -U
./run-in-docker.sh ./mvnw clean install -U
```
> Failed to execute goal org.fortasoft:gradle-maven-plugin:1.0.8:invoke (default) on project openapi-generator-gradle-plugin-mvn-wrapper: org.gradle.tooling.BuildException: Could not execute build using Gradle distribution 'https://services.gradle.org/distributions/gradle-4.7-bin.zip'
@@ -397,7 +417,7 @@ cd openapi-generator
vagrant up
vagrant ssh
cd /vagrant
./run-in-docker.sh mvn package
./run-in-docker.sh ./mvnw package
```
### [1.7 - NPM](#table-of-contents)
@@ -416,7 +436,7 @@ openapi-generator-cli version
To use a specific version of "openapi-generator-cli"
```sh
openapi-generator-cli version-manager set 6.3.0
openapi-generator-cli version-manager set 7.0.1
```
Or install it as dev-dependency:
@@ -431,7 +451,7 @@ To generate a PHP client for [petstore.yaml](https://raw.githubusercontent.com/o
```sh
git clone https://github.com/openapitools/openapi-generator
cd openapi-generator
mvn clean package
./mvnw clean package
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate \
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g php \
@@ -440,7 +460,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/6.3.0/openapi-generator-cli-6.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/7.0.1/openapi-generator-cli-7.0.1.jar)
<!-- /RELEASE_VERSION -->
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
@@ -465,7 +485,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
-i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
-g java \
-t modules/openapi-generator/src/main/resources/Java \
--additional-properties artifactId=petstore-okhttp-gson,hideGenerationTimestamp:true \
--additional-properties artifactId=petstore-okhttp-gson,hideGenerationTimestamp=true \
-o samples/client/petstore/java/okhttp-gson
```
@@ -584,6 +604,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Adyen](https://www.adyen.com/)
- [Agoda](https://www.agoda.com/)
- [Airthings](https://www.airthings.com/)
- [Aleri Solutions Gmbh](https://www.aleri.de/)
- [Allianz](https://www.allianz.com)
- [Angular.Schule](https://angular.schule/)
- [Aqovia](https://aqovia.com/)
@@ -604,10 +625,13 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [California State University, Northridge](https://www.csun.edu)
- [CAM](https://www.cam-inc.co.jp/)
- [Camptocamp](https://www.camptocamp.com/en)
- [Carlsberg Group](https://www.carlsberggroup.com/)
- [Christopher Queen Consulting](https://www.christopherqueenconsulting.com/)
- [Cisco](https://www.cisco.com/)
- [codecentric AG](https://www.codecentric.de/)
- [CoinAPI](https://www.coinapi.io/)
- [Commencis](https://www.commencis.com/)
- [cronn GmbH](https://www.cronn.de/)
- [Crossover Health](https://crossoverhealth.com/)
- [Cupix](https://www.cupix.com/)
- [Datadog](https://www.datadoghq.com)
@@ -643,6 +667,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Klarna](https://www.klarna.com/)
- [Kronsoft Development](https://www.kronsoft.ro/home/)
- [Kubernetes](https://kubernetes.io)
- [Landeshauptstadt München - it@M](https://muenchen.digital/it-at-m/)
- [Linode](https://www.linode.com/)
- [Logicdrop](https://www.logicdrop.com)
- [Lumeris](https://www.lumeris.com)
@@ -666,6 +691,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Paxos](https://www.paxos.com)
- [Plaid](https://plaid.com)
- [PLAID, Inc.](https://plaid.co.jp/)
- [Pinterest](https://www.pinterest.com)
- [Ponicode](https://ponicode.dev/)
- [Pricefx](https://www.pricefx.com/)
- [PrintNanny](https://www.print-nanny.com/)
@@ -679,12 +705,15 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [RedHat](https://www.redhat.com)
- [RepreZen API Studio](https://www.reprezen.com/swagger-openapi-code-generation-api-first-microservices-enterprise-development)
- [REST United](https://restunited.com)
- [Robocorp](https://www.robocorp.com)
- [Robotinfra](https://www.robotinfra.com)
- [SearchApi](https://www.searchapi.io/)
- [SmartHR](https://smarthr.co.jp/)
- [Sony Interactive Entertainment](https://www.sie.com/en/index.html)
- [Splitit](https://www.splitit.com/)
- [Stingray](http://www.stingray.com)
- [Suva](https://www.suva.ch/)
- [Svix](https://www.svix.com/)
- [Telstra](https://dev.telstra.com)
- [Tencent](https://www.tencent.com)
- [The University of Aizu](https://www.u-aizu.ac.jp/en/)
@@ -879,6 +908,8 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2022-04-06 - [Effective Software Development using OpenAPI Generator](https://apexlabs.ai/post/openapi-generator) by Ajil Oommen (Senior Flutter Developer)
- 2022-05-13 - [A Path From an API To Client Libraries](https://www.youtube.com/watch?v=XC8oVn_efTw) by [Filip Srnec](https://www.devoxx.co.uk/talk/?id=11211) at Infobip
- 2022-06-01 - [API First, using OpenAPI and Spring Boot](https://medium.com/xgeeks/api-first-using-openapi-and-spring-boot-2602c04bb0d3) by [Micael Estrázulas Vianna](https://estrazulas.medium.com/)
- 2022-06-10 - [Autogenerating Clients with FastAPI and Github Actions](https://www.propelauth.com/post/autogenerating-clients-with-fastapi-and-github-actions) by [Andrew Israel](https://www.propelauth.com/author/andrew)
- 2022-06-12 - [Mustache templates with OpenAPI specs](https://medium.com/geekculture/mustache-templates-with-openapi-specs-f24711c67dec) by [Beppe Catanese](https://github.com/gcatanese)
- 2022-07-01 - [Generate API contract using OpenAPI Generator Maven plugin](https://huongdanjava.com/generate-api-contract-using-openapi-generator-maven-plugin.html) by [Khanh Nguyen](https://huongdanjava.com/)
- 2022-07-22 - [使用OpenAPI Generator Maven plugin开发api优先的java客户端和服务端代码](https://blog.roccoshi.top/2022/java/openapi-generator%E7%9A%84%E4%BD%BF%E7%94%A8/) by [Lincest](https://github.com/Lincest)
- 2022-08-01 - [Tutorial: Etsy Open API v3 (ruby)](https://blog.tjoyal.dev/etsy-open-api-v3/) by [Thierry Joyal](https://github.com/tjoyal)
@@ -890,6 +921,20 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2022-12-13 - [API-First with Spring WebFlux and OpenAPI Generator](https://boottechnologies-ci.medium.com/api-first-with-spring-webflux-and-openapi-generator-38b7804c4ed4) by [Eric Anicet](https://boottechnologies-ci.medium.com/)
- 2023-01-06 - [Major Improvements with Helidon and OpenAPI](https://medium.com/helidon/major-improvements-with-helidon-and-openapi-f76a0951508e) by [Tim Quinn](https://medium.com/@tquinno600)
- 2023-02-02 - [Replacing Postman with the Jetbrains HTTP Client](https://lengrand.fr/replacing-postman-in-seconds-with-the-jetbrains-http-client/) by [julien Lengrand-Lambert](https://github.com/jlengrand)
- 2023-03-15 - [OpenAPI Generatorに適したOpenAPIの書き方](https://techblog.zozo.com/entry/how-to-write-openapi-for-openapi-generator) by [ZOZO Tech Blog](https://techblog.zozo.com/)
- 2023-03-19 - [EXOGEM: Extending OpenAPI Generator for Monitoring of RESTful APIs](https://link.springer.com/chapter/10.1007/978-3-031-26507-5_10) by Daniel Friis Holtebo, Jannik Lucas Sommer, Magnus Mølgaard Lund, Alessandro Tibo, Junior Dongo & Michele Albano at "ICSOC 2022: Service-Oriented Computing ICSOC 2022 Workshops"
- 2023-03-28 - [API-First Design with OpenAPI Generator](https://www.linkedin.com/pulse/api-first-design-openapi-generator-jonathan-manera/) by [Jonathan Manera](https://www.linkedin.com/in/manerajona/)
- 2023-03-28 - [ハンズオンで学ぶサーバーサイド KotlinSpring Boot&Arrow&OpenAPI Generatorv1.0.1](https://zenn.dev/msksgm/books/implementing-server-side-kotlin-development) by [msk](https://zenn.dev/msksgm)
- 2023-04-01 - [OpenAPI Client Code Generation](https://testingboss.com/blog/openapi-client-generation/) by Kwo Ding
- 2023-04-27 - [Create an Angular Client using OpenAPI Specifications](Create an Angular Client using OpenAPI Specifications) by [Patric](https://pguso.medium.com/)
- 2023-05-16 - [Adyen for Java developers](https://www.adyen.com/blog/adyen-java-library) by [Beppe Catanese, Developer Advocate, Adyen](https://github.com/gcatanese)
- 2023-05-18 - [如何基于 Swagger 使用 OpenAPI Generator 生成 JMeter 脚本?](https://blog.51cto.com/u_15181572/6294974) by [高楼Zee)](https://blog.51cto.com/u_15181572)
- 2023-06-28 - [Generate API contract using OpenAPI Generator Maven plugin](https://huongdanjava.com/generate-api-contract-using-openapi-generator-maven-plugin.html) by [Khanh Nguyen](https://huongdanjava.com/)
- 2023-06-30 - [Generate Client SDKs with OpenApi Generator in Springboot](https://medium.com/@ramavathvinayak/generate-client-sdks-with-openapi-generator-in-springboot-f9f012e73c0b) by [Vinayak Ramavath](https://medium.com/@ramavathvinayak)
- 2023-12-10 - [UnityでOpenAPI Generatorを使う](https://www.youtube.com/watch?v=CbNwKVV5LRM) by [Soup Tori](https://www.youtube.com/@souptori8417)
- 2024-03-04 - [Generating TypeScript Types with OpenAPI for REST API Consumption](https://www.pullrequest.com/blog/generating-typescript-types-with-openapi-for-rest-api-consumption/) by [PullRequest](https://www.pullrequest.com/)
- 2024-03-07 - [Fully typed Web Apps with OpenAPI (Part 1)](https://medium.com/@gfox1984/fully-typed-web-apps-with-openapi-part-1-595d55766670) by [Guillaume Renard](https://medium.com/@gfox1984)
- 2024-03-08 - [Laravel OpenAPIによる "辛くない" スキーマ駆動開発](https://fortee.jp/phperkaigi-2024/proposal/9e2e6c38-d078-4efa-99b4-83ebf9033b34) by [KentarouTakeda](https://twitter.com/KentarouTakeda)
## [6 - About Us](#table-of-contents)
@@ -907,12 +952,9 @@ OpenAPI Generator core team members are contributors who have been making signif
* [@cbornet](https://github.com/cbornet) (2016/05)
* [@jmini](https://github.com/jmini) (2018/04) [:heart:](https://www.patreon.com/jmini)
* [@etherealjoy](https://github.com/etherealjoy) (2019/06)
* [@spacether](https://github.com/spacether) (2020/05) [:heart:][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.
@@ -971,7 +1013,10 @@ Here is a list of template creators:
* Kotlin: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Kotlin (MultiPlatform): @andrewemery
* Kotlin (Volley): @alisters
* Kotlin (jvm-spring-webclient): @stefankoppier
* Kotlin (jvm-spring-restclient): @stefankoppier
* Lua: @daurnimator
* N4JS: @mmews-n4
* Nim: @hokamoto
* OCaml: @cgensoul
* Perl: @wing328 [:heart:](https://www.patreon.com/wing328)
@@ -981,17 +1026,22 @@ Here is a list of template creators:
* PowerShell (refactored in 5.0.0): @wing328
* Python: @spacether [:heart:][spacether sponsorship]
* Python-Experimental: @spacether [:heart:][spacether sponsorship]
* Python (refactored in 7.0.0): @wing328
* R: @ramnov
* Ruby (Faraday): @meganemura @dkliban
* Ruby (HTTPX): @honeyryderchuck
* Rust: @farcaller
* Rust (rust-server): @metaswitch
* Scala (scalaz & http4s): @tbrown1979
* Scala (Akka): @cchafer
* Scala (sttp): @chameleon82
* Scala (sttp4): @flsh86
* Scala (Pekko): @mickaelmagniez
* Swift: @tkqubo
* Swift 3: @hexelon
* Swift 4: @ehyche
* Swift 5: @4brunu
* Swift Combine: @dydus0x14
* TypeScript (Angular1): @mhardorf
* TypeScript (Angular2): @roni-frantchi
* TypeScript (Angular6): @akehir
@@ -1004,6 +1054,8 @@ Here is a list of template creators:
* TypeScript (Node): @mhardorf
* TypeScript (Rxjs): @denyo
* TypeScript (redux-query): @petejohansonxo
* Xojo: @Topheee
* Zapier: @valmoz, @emajo
* Server Stubs
* Ada: @stcarrez
* C# ASP.NET 5: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
@@ -1017,6 +1069,7 @@ Here is a list of template creators:
* Erlang Server: @galaxie
* F# (Giraffe) Server: @nmfisher
* Go Server: @guohuang
* Go Server (refactored in 7.0.0): @lwj5
* Go (Echo) Server: @ph4r5h4d
* Go (Gin) Server: @kemokemo
* GraphQL Express Server: @renepardon
@@ -1040,7 +1093,9 @@ Here is a list of template creators:
* Kotlin (Spring Boot): @dr4ke616
* Kotlin (Vertx): @Wooyme
* Kotlin (JAX-RS): @anttileppa
* Kotlin WireMock: @stefankoppier
* NodeJS Express: @YishTish
* PHP Flight: @daniel-sc
* PHP Laravel: @renepardon
* PHP Lumen: @abcsun
* PHP Mezzio (with Path Handler): @Articus
@@ -1053,6 +1108,7 @@ Here is a list of template creators:
* Ruby on Rails 5: @zlx
* Rust (rust-server): @metaswitch
* Scala Akka: @Bouillie
* Scala Cask: @aaronp
* Scala Finch: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Scala Lagom: @gmkumar2005
* Scala Play: @adigerber
@@ -1069,8 +1125,9 @@ Here is a list of template creators:
* GraphQL: @wing328 [:heart:](https://www.patreon.com/wing328)
* Ktorm: @Luiz-Monad
* MySQL: [@ybelenko](https://github.com/ybelenko)
* Postman Collection: @gcatanese
* Protocol Buffer: @wing328
* WSDL @adessoDpd
* WSDL: @adessoDpd
:heart: = Link to support the contributor directly
@@ -1112,7 +1169,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| Bash | @frol (2017/07) @bkryza (2017/08) @kenjones-cisco (2017/09) |
| C | @zhemant (2018/11) @ityuhui (2019/12) @michelealbano (2020/03) |
| C++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) @muttleyxd (2019/08) |
| C# | @mandrean (2017/08) @frankyjuang (2019/09) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) |
| C# | @mandrean (2017/08) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05) @iBicha (2023/07) |
| 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) |
@@ -1121,17 +1178,18 @@ If you want to join the committee, please kindly apply by sending an email to te
| Elm | @eriktim (2018/09) |
| Erlang | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) |
| F# | @nmfisher (2019/05) |
| Go | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/04) |
| Go | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/04) @lwj5 (2023/04) |
| GraphQL | @renepardon (2018/12) |
| Groovy | |
| Haskell | |
| Java | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) |
| Java Spring | @cachescrubber (2022/02) @welshm (2022/02) @MelleD (2022/02) @atextor (2022/02) @manedev79 (2022/02) @javisst (2022/02) @borsch (2022/02) @banlevente (2022/02) @Zomzog (2022/09) |
| Java | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) @martin-mfg (2023/08) |
| Java Spring | @cachescrubber (2022/02) @welshm (2022/02) @MelleD (2022/02) @atextor (2022/02) @manedev79 (2022/02) @javisst (2022/02) @borsch (2022/02) @banlevente (2022/02) @Zomzog (2022/09) @martin-mfg (2023/08) |
| JMeter | @kannkyo (2021/01) |
| Jetbrains HTTP Client | @jlengrand (2023/01) |
| Julia | @tanmaykm (2023/01) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) @stefankoppier (2022/06) |
| Lua | @daurnimator (2017/08) |
| N4JS | @mmews-n4 (2023/03) |
| Nim | |
| NodeJS/Javascript | @CodeNinjai (2017/07) @frol (2017/07) @cliffano (2017/07) |
| ObjC | |
@@ -1139,13 +1197,14 @@ 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), [@ybelenko](https://github.com/ybelenko) (2018/07), @renepardon (2018/12) |
| PowerShell | @wing328 (2020/05) |
| Python | @spacether (2019/11) [:heart:][spacether sponsorship] @krjakbrjak (2023/02) |
| Python | @cbornet (2017/09) @tomplus (2018/10) @krjakbrjak (2023/02) @fa0311 (2023/10) @multani (2023/10) |
| 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) @jacob-pro (2022/10) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) @fish86 (2023/06) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) @dydus0x14 (2023/06) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) @davidgamero (2022/03) @mkusaka (2022/04) |
| Xojo | @Topheee (2023/04) |
Past Members of Technical Committee:

View File

@@ -3,99 +3,87 @@ image: Visual Studio 2022
hosts:
petstore.swagger.io: 127.0.0.1
install:
- ps: |
Add-Type -AssemblyName System.IO.Compression.FileSystem
if (!(Test-Path -Path "C:\maven" )) {
(new-object System.Net.WebClient).DownloadFile(
'https://archive.apache.org/dist/maven/maven-3/3.8.3/binaries/apache-maven-3.8.3-bin.zip',
'C:\maven-bin.zip'
)
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:\maven-bin.zip", "C:\maven")
}
# install gradle
- ps: |
Add-Type -AssemblyName System.IO.Compression.FileSystem
if (!(Test-Path -Path "C:\gradle\gradle-7.6" )) {
(new-object System.Net.WebClient).DownloadFile(
'https://services.gradle.org/distributions/gradle-7.6-bin.zip',
'C:\gradle-bin.zip'
)
[System.IO.Compression.ZipFile]::ExtractToDirectory("C:\gradle-bin.zip", "C:\gradle")
}
- cmd: SET PATH=C:\maven\apache-maven-3.8.3\bin;C:\gradle\gradle-7.6\bin;%JAVA_HOME%\bin;%PATH%
- cmd: SET MAVEN_OPTS=-Xmx4g
- cmd: SET JAVA_OPTS=-Xmx4g
- cmd: SET M2_HOME=C:\maven\apache-maven-3.8.3
- cmd: java -version
- cmd: gradle -v
- cmd: dir/w
- git clone https://github.com/wing328/swagger-samples --depth 1
- ps: Start-Process -FilePath 'C:\maven\apache-maven-3.8.3\bin\mvn' -ArgumentList 'jetty:run' -WorkingDirectory "$env:appveyor_build_folder\swagger-samples\java\java-jersey-jaxrs-ci"
- ps: Start-Sleep -s 15
- cmd: docker pull swaggerapi/petstore
- cmd: docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- ps: Start-Sleep -s 120
- ps: $PSVersionTable.PSVersion
- ps: Install-Module -Name Pester -Force -Scope CurrentUser
- ps: Install-Module -Name Pester -Force -Scope CurrentUser -SkipPublisherCheck
build_script:
- dotnet --info
# build C# aspnetcore 5.0 server
- dotnet build samples\server\petstore\aspnetcore-5.0\Org.OpenAPITools.sln
# build C# aspnetcore 3.1 server
- dotnet build samples\server\petstore\aspnetcore-3.1\Org.OpenAPITools.sln
# build C# aspnetcore 3.0 server
- dotnet build samples\server\petstore\aspnetcore-3.0\Org.OpenAPITools.sln
# build C# aspnetcore 2.2 server
- dotnet build samples\server\petstore\aspnetcore\Org.OpenAPITools.sln
# build C# API client (multiple frameworks)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClientCoreAndNet47\Org.OpenAPITools.sln
# build C# API client (httpclient)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-httpclient\Org.OpenAPITools.sln
# build C# API client (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
# build C# API client (.net framework 4.7)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-net47\Org.OpenAPITools.sln
# build C# API client (.net framework 4.8)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-net48\Org.OpenAPITools.sln
# build C# API client (.net 5.0)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-net5.0\Org.OpenAPITools.sln
# build C# API client (.net 5.0 with ConditionalSerialization)
- dotnet build samples\client\petstore\csharp-netcore\OpenAPIClient-ConditionalSerialization\Org.OpenAPITools.sln
## build C# API client
#- nuget restore samples\client\petstore\csharp\OpenAPIClient\Org.OpenAPITools.sln
#- msbuild samples\client\petstore\csharp\OpenAPIClient\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
## build C# API client (with PropertyChanged)
#- nuget restore samples\client\petstore\csharp\OpenAPIClientWithPropertyChanged\Org.OpenAPITools.sln
#- msbuild samples\client\petstore\csharp\OpenAPIClientWithPropertyChanged\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
# build C# .net standard 1.3+ API client
#- nuget restore samples\client\petstore\csharp\OpenAPIClientNetStandard\Org.OpenAPITools.sln
#- msbuild samples\client\petstore\csharp\OpenAPIClientNetStandard\Org.OpenAPITools.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
# install openapi-generator locally
- mvn --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# run the locally installed openapi-generator-gradle-plugin
- gradle -b modules\openapi-generator-gradle-plugin\samples\local-spec\build.gradle buildGoSdk --stacktrace
#- dotnet build samples\server\petstore\aspnetcore-5.0\Org.OpenAPITools.sln
## build C# aspnetcore 3.1 server
#- dotnet build samples\server\petstore\aspnetcore-3.1\Org.OpenAPITools.sln
## build C# aspnetcore 3.0 server
#- dotnet build samples\server\petstore\aspnetcore-3.0\Org.OpenAPITools.sln
## build C# aspnetcore 2.2 server
#- dotnet build samples\server\petstore\aspnetcore\Org.OpenAPITools.sln
## build C# API client (multiple frameworks)
#- dotnet build samples\client\petstore\csharp\OpenAPIClientCoreAndNet47\Org.OpenAPITools.sln
## build C# API client (httpclient)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-httpclient\Org.OpenAPITools.sln
## build C# API client (generichost)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-generichost-netstandard2.0\Org.OpenAPITools.sln
## build C# API client (netcore)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient\Org.OpenAPITools.sln
#- dotnet build samples\client\petstore\csharp\OpenAPIClientCore\Org.OpenAPITools.sln
## build C# API client (.net framework 4.7)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-net47\Org.OpenAPITools.sln
## build C# API client (.net framework 4.8)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-net48\Org.OpenAPITools.sln
## build C# API client (.net 5.0)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-net5.0\Org.OpenAPITools.sln
## build C# API client (.net 5.0 with ConditionalSerialization)
#- dotnet build samples\client\petstore\csharp\OpenAPIClient-ConditionalSerialization\Org.OpenAPITools.sln
test_script:
# test c# API client (multiple frameworks)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClientCoreAndNet47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (httpclient)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-httpclient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (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
# test C# API client (.net framework 4.7)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-net47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net framework 4.8)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-net48\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net 5.0)
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-net5.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API Client using conditional-serialization
- dotnet test samples\client\petstore\csharp-netcore\OpenAPIClient-ConditionalSerialization\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
## test c# API client
#- nunit3-console samples\client\petstore\csharp\OpenAPIClient\src\Org.OpenAPITools.Test\bin\Debug\Org.OpenAPITools.Test.dll --result=myresults.xml;format=AppVeyor
## test c# API client (with PropertyChanged)
#- nunit3-console samples\client\petstore\csharp\OpenAPIClientWithPropertyChanged\src\Org.OpenAPITools.Test\bin\Debug\Org.OpenAPITools.Test.dll --result=myresults.xml;format=AppVeyor
- dotnet test samples\client\petstore\csharp\generichost\net8\AllOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\AnyOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\AnyOfNoCompare\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\FormModels\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\ManualSourceGenerationTests\ManualTests.Latest.UseSourceGeneration\ManualTests.Latest.UseSourceGeneration.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\ManualPetstoreTests\OpenAPIClient-generichost-manual-tests\OpenAPIClient-generichost-manual-tests.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\NullReferenceTypes\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\OneOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\SourceGeneration\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\standard2.0\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\AllOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\AnyOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\AnyOfNoCompare\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\FormModels\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\OneOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\AllOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\AnyOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\AnyOfNoCompare\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\FormModels\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\OneOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\httpclient\standard2.0\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net4.7\MultipleFrameworks\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net4.7\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net4.8\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net6\ParameterMappings\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net7\EnumMappings\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net7\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net7\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\standard2.0\ConditionalSerialization\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\standard2.0\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
### TODO: Execute all generators via powershell or other
# generate all petstore clients

17
bin/configs/ada.yaml Normal file
View File

@@ -0,0 +1,17 @@
generatorName: ada
outputDir: samples/client/petstore/ada
inputSpec: modules/openapi-generator/src/test/resources/3_0/ada/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/Ada
nameMappings:
_type: P_UnderscoreType
type_: P_TypeWithUnderscore
http_debug_operation: P_HTTPDebugOperation
parameterNameMappings:
_type: UnderscoreType
type_: TypeWithUnderscore
http_debug_operation: HttpDebugOperation
additionalProperties:
modelPackage: Samples.Petstore
projectName: Petstore
enumNameMappings:
sold: UNAVAILABLE

View File

@@ -0,0 +1,9 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
inputSpec: modules/openapi-generator/src/test/resources/3_0/aspnetcore/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'
useNewtonsoft: false

View File

@@ -0,0 +1,9 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
inputSpec: modules/openapi-generator/src/test/resources/3_0/aspnetcore/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'
nullableReferenceTypes: true

View File

@@ -0,0 +1,11 @@
generatorName: aspnetcore
outputDir: samples/server/petstore/aspnetcore-6.0-useSwashBuckle
inputSpec: modules/openapi-generator/src/test/resources/3_0/aspnetcore/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'
useSwashBuckle: false
buildTarget: library
isLibrary: true

View File

@@ -0,0 +1,9 @@
generatorName: c
outputDir: samples/client/petstore/c-useJsonUnformatted
inputSpec: modules/openapi-generator/src/test/resources/2_0/c/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/C-libcurl
additionalProperties:
useJsonUnformatted: true
modelNameMappings:
another_model: MappedModel
another_property: mappedProperty

View File

@@ -2,3 +2,6 @@ generatorName: c
outputDir: samples/client/petstore/c
inputSpec: modules/openapi-generator/src/test/resources/2_0/c/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/C-libcurl
modelNameMappings:
another_model: MappedModel
another_property: mappedProperty

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