Compare commits

...

894 Commits

Author SHA1 Message Date
William Cheng
a6efa58341 to not override values if additional proeprties already present 2024-04-25 20:59:20 +08:00
Ghufran Zahidi
d45b1c8f37 made the HttpSigning method public to get the signed header. 2024-04-25 15:28:45 +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
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
21772 changed files with 1608261 additions and 443379 deletions

View File

@@ -57,54 +57,43 @@ commands: # a reusable command with parameters
- run: docker ps -a
- run: sleep 30
- run: cat /etc/hosts
# Test
- run: ./mvnw --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
@@ -203,20 +192,6 @@ jobs:
- checkout
- command_build_and_test:
nodeNo: "3"
node4:
machine:
image: ubuntu-2004:202201-02
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
DOCKER_GENERATOR_IMAGE_NAME: openapitools/openapi-generator
DOCKER_CODEGEN_CLI_IMAGE_NAME: openapitools/openapi-generator-cli
steps:
- checkout
- command_build_and_test:
nodeNo: "4"
workflows:
version: 2
build:
@@ -225,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": {
@@ -44,4 +50,4 @@
// "postCreateCommand": "mvn clean package -DskipTests",
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
}
}

2
.envrc
View File

@@ -1 +1 @@
use flake
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": [

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
```
Commit all changed files.
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (7.0.1 - patch release), `7.1.x` (minor release - breaking changes with fallbacks), `8.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.1.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

@@ -1,6 +1,7 @@
name: Docker tests
on:
workflow_dispatch:
push:
paths:
- Dockerfile
@@ -8,6 +9,8 @@ on:
- 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
@@ -15,19 +18,21 @@ on:
- 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@v3
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 clean install
./run-in-docker.sh mvn -B clean install
- name: Build Dockerfile
shell: bash
@@ -37,3 +42,12 @@ jobs:
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:

View File

@@ -30,21 +30,21 @@ jobs:
- 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

@@ -20,22 +20,22 @@ jobs:
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- uses: actions/cache@v3
- 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@v3
- uses: actions/cache@v4
with:
path: |
~/.gradle/caches
@@ -45,7 +45,7 @@ jobs:
${{ runner.os }}-gradle-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.9.0
uses: s4u/setup-maven-action@v1.12.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
@@ -57,7 +57,7 @@ jobs:
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
- name: Upload Maven build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: matrix.java == '11' && matrix.os == 'ubuntu-latest'
with:
name: artifact
@@ -85,14 +85,14 @@ jobs:
os: [ubuntu-latest]
steps:
- name: Check out code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Maven
uses: s4u/setup-maven-action@v1.9.0
uses: s4u/setup-maven-action@v1.12.0
with:
java-version: 11
maven-version: 3.8.8
- name: Download build artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: artifact
- name: Run Ensures Script

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:

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
- 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:
@@ -41,7 +41,7 @@ jobs:
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
@@ -53,14 +53,14 @@ jobs:
needs:
- build
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:
@@ -79,7 +79,7 @@ jobs:
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'
@@ -90,14 +90,14 @@ jobs:
needs:
- build
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: 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
@@ -129,19 +129,34 @@ jobs:
- build
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: 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
- 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

@@ -4,22 +4,31 @@ 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@v3
- 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: "samples/client/petstore/c"
working-directory: ${{ matrix.sample }}
run: |
mkdir build
cd build

View File

@@ -18,18 +18,16 @@ jobs:
matrix:
qt-version:
- '5.15.2'
- '6.4.2'
- '6.5.3'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
include:
- os: windows-latest
tools: 'tools_openssl_x64'
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@v3
with:
version: ${{ matrix.qt-version }}
tools: ${{ matrix.tools }}

View File

@@ -17,14 +17,14 @@ 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: 11
cache: maven
- name: Cache test dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: pub-cache
with:

View File

@@ -1,12 +1,18 @@
name: Samples C# .Net Standard
name: Samples C# .Net Standard Client
on:
push:
paths:
- 'samples/client/petstore/csharp/**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/**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/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.2.0
- 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,25 +1,18 @@
name: Samples C# .Net 7
name: Samples C# .Net 8 Clients
on:
push:
paths:
- 'samples/client/petstore/csharp/**net6.0**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-netcore**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-manual-tests/**'
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
- 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/**net6.0**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-netcore**/'
- 'samples/client/petstore/csharp/OpenAPIClient-generichost-manual-tests/**'
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-project4Models/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
- 'samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse/**'
- 'samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/**'
- 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
@@ -28,24 +21,22 @@ jobs:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0
- samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0-nrt
- samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-allOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-oneOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-anyOf
- samples/client/petstore/csharp/OpenAPIClient-generichost-manual-tests
- samples/server/petstore/aspnetcore-6.0
- samples/server/petstore/aspnetcore-6.0-pocoModels
- samples/server/petstore/aspnetcore-6.0-project4Models
- samples/server/petstore/aspnetcore-6.0-useSwashBuckle
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
- 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.2.0
- 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

@@ -1,4 +1,4 @@
name: Samples C# .Net 6
name: Samples C# .Net 6 Client Echo API
on:
push:
@@ -18,8 +18,8 @@ jobs:
# clients
- samples/client/echo_api/csharp-restsharp/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Run echo server
@@ -28,4 +28,6 @@ jobs:
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
run: |
dotnet build Org.OpenAPITools.sln
dotnet test Org.OpenAPITools.sln

View File

@@ -1,48 +1,12 @@
name: Samples C# .Net 6
name: Samples C# .Net 6 Client
on:
push:
paths:
# build C# API client (multiple frameworks)
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/**
# build C# API client (httpclient)
- samples/client/petstore/csharp/OpenAPIClient-httpclient/**
# build C# API client (generichost)
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/**
# build C# API client (netcore)
- samples/client/petstore/csharp/OpenAPIClient/**
- samples/client/petstore/csharp/OpenAPIClientCore/**
# build C# API client (.net framework 4.7)
- samples/client/petstore/csharp/OpenAPIClient-net47/**
# build C# API client (.net framework 4.8)
- samples/client/petstore/csharp/OpenAPIClient-net48/**
# build C# API client (.net 5.0)
- samples/client/petstore/csharp/OpenAPIClient-net5.0/**
# build C# API client (.net 5.0 with ConditionalSerialization)
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
# build C# API client (property, parameter name mappings)
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
- samples/client/petstore/csharp/restsharp/net6/**
pull_request:
paths:
# build C# API client (multiple frameworks)
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/**
# build C# API client (httpclient)
- samples/client/petstore/csharp/OpenAPIClient-httpclient/**
# build C# API client (generichost)
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/**
# build C# API client (netcore)
- samples/client/petstore/csharp/OpenAPIClient/**
- samples/client/petstore/csharp/OpenAPIClientCore/**
# build C# API client (.net framework 4.7)
- samples/client/petstore/csharp/OpenAPIClient-net47/**
# build C# API client (.net framework 4.8)
- samples/client/petstore/csharp/OpenAPIClient-net48/**
# build C# API client (.net 5.0)
- samples/client/petstore/csharp/OpenAPIClient-net5.0/**
# build C# API client (.net 5.0 with ConditionalSerialization)
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
# build C# API client (property, parameter name mappings)
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
- samples/client/petstore/csharp/restsharp/net6/**
jobs:
build:
name: Build .Net clients
@@ -51,29 +15,10 @@ jobs:
fail-fast: false
matrix:
sample:
# clients
# build C# API client (multiple frameworks)
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/
# build C# API client (httpclient)
- samples/client/petstore/csharp/OpenAPIClient-httpclient/
# build C# API client (generichost)
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/
# build C# API client (netcore)
- samples/client/petstore/csharp/OpenAPIClient/
- samples/client/petstore/csharp/OpenAPIClientCore/
# build C# API client (.net framework 4.7)
- samples/client/petstore/csharp/OpenAPIClient-net47/
# build C# API client (.net framework 4.8)
- samples/client/petstore/csharp/OpenAPIClient-net48/
# build C# API client (.net 5.0)
- samples/client/petstore/csharp/OpenAPIClient-net5.0/
# build C# API client (.net 5.0 with ConditionalSerialization)
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/
# build C# API client (property, parameter name mappings)
- samples/client/petstore/csharp-restsharp-name-parameter-mappings
- samples/client/petstore/csharp/restsharp/net6/ParameterMappings/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -1,36 +1,31 @@
name: Samples C# .Net 6
name: Samples C# .Net 6 Server
on:
push:
paths:
- 'samples/server/petstore/aspnetcore-6.0/**'
- 'samples/server/petstore/aspnetcore-6.0-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
- 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-pocoModels/**'
- 'samples/server/petstore/aspnetcore-6.0-project4Models/**'
- 'samples/server/petstore/aspnetcore-6.0-useSwashBuckle/**'
- 'samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse/**'
- 'samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes/**'
- samples/server/petstore/aspnetcore-6.0/**
- samples/server/petstore/aspnetcore-6.0-*/**
jobs:
build:
name: Build .Net servers
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
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3.2.0
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -21,7 +21,7 @@ jobs:
- samples/client/petstore/elm
- samples/openapi3/client/elm
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: jorelali/setup-elm@v5
with:
elm-version: 0.19.1

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

@@ -24,8 +24,8 @@ jobs:
- samples/server/petstore/go-api-server/
- samples/server/petstore/go-chi-server/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "stable"
- run: go version

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

View File

@@ -24,7 +24,7 @@ jobs:
- samples/server/petstore/haskell-servant/
- samples/client/petstore/haskell-http-client/
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: haskell/actions/setup@v2
with:
# ghc-version: '8.8.4' # Exact version of ghc to use

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,7 +36,7 @@ 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

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,7 +43,7 @@ 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

View File

@@ -10,6 +10,11 @@ on:
- 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/**
pull_request:
paths:
- 'samples/client/petstore/java/**'
@@ -19,6 +24,11 @@ on:
- 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/**
jobs:
build:
name: Build Java Client JDK11
@@ -43,7 +53,6 @@ jobs:
- 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
@@ -51,9 +60,10 @@ jobs:
- 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/
@@ -62,14 +72,20 @@ jobs:
- 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/
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:
@@ -78,4 +94,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

View File

@@ -21,13 +21,13 @@ jobs:
- samples/client/petstore/java/resttemplate-jakarta
- samples/client/petstore/java/webclient-jakarta
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:

View File

@@ -23,13 +23,13 @@ jobs:
- samples/server/petstore/java-helidon-server/se
version: [17]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:

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:

View File

@@ -8,6 +8,7 @@ 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/**'
pull_request:
paths:
@@ -15,7 +16,7 @@ on:
- '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/**'
jobs:
build:
name: Build Java Server
@@ -29,15 +30,15 @@ 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/
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,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

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

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
@@ -40,13 +38,13 @@ jobs:
- 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:

View File

@@ -8,6 +8,7 @@ on:
- samples/client/petstore/java-helidon-client/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/**
@@ -20,6 +21,7 @@ on:
- samples/client/petstore/java-helidon-client/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/**
@@ -38,6 +40,7 @@ jobs:
- samples/client/petstore/java-helidon-client/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
@@ -45,13 +48,13 @@ jobs:
- 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:

View File

@@ -15,8 +15,8 @@ jobs:
name: Tests Julia
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: julia-actions/setup-julia@v1
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: 1.8
arch: x64

View File

@@ -25,27 +25,28 @@ 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
@@ -61,17 +62,20 @@ jobs:
- 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-spring-cloud
- 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
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
@@ -79,7 +83,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,51 @@
name: Kotlin Client (Echo API) JDK17
on:
push:
paths:
- samples/client/echo_api/kotlin**
pull_request:
paths:
- samples/client/echo_api/kotlin**
env:
GRADLE_VERSION: 7.4
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:
gradle-version: ${{ env.GRADLE_VERSION }}
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

@@ -4,11 +4,13 @@ on:
push:
branches:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
# 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/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
@@ -25,16 +27,18 @@ jobs:
sample:
# server
- samples/server/petstore/kotlin-springboot-3
- samples/server/petstore/kotlin-springboot-request
- samples/server/petstore/kotlin-server/javalin
# 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:
@@ -42,7 +46,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

@@ -5,12 +5,14 @@ on:
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/**
@@ -27,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
@@ -37,19 +40,21 @@ jobs:
- 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
# 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:
@@ -57,7 +62,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

@@ -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,48 @@
name: Python Client (Echo API)
on:
pull_request:
paths:
- samples/client/echo_api/python/**
- .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/**
pull_request:
paths:
- samples/client/echo_api/python/**
jobs:
build:
name: Test Python client
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/echo_api/python
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

@@ -3,10 +3,10 @@ name: Python Server
on:
push:
paths:
- samples/server/petstore/python-aiohttp/**
- samples/server/petstore/python-aiohttp-srclayout/**
pull_request:
paths:
- samples/server/petstore/python-aiohttp/**
- samples/server/petstore/python-aiohttp-srclayout/**
jobs:
build:
name: Test Python server
@@ -16,10 +16,10 @@ jobs:
matrix:
sample:
# servers
- samples/server/petstore/python-aiohttp/
- samples/server/petstore/python-aiohttp-srclayout/
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.7'
- name: Test

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

@@ -6,11 +6,13 @@ on:
- "samples/client/others/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/client/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
pull_request:
paths:
- "samples/client/others/rust/**"
- "samples/client/petstore/rust/**"
- "samples/server/petstore/rust-server/**"
- "samples/server/petstore/rust-axum/**"
jobs:
build:
@@ -24,8 +26,9 @@ jobs:
- 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,6 +22,7 @@ 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
@@ -30,14 +31,16 @@ jobs:
- 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

@@ -7,6 +7,8 @@ on:
pull_request:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
jobs:
build:
name: Build Java Spring (JDK17)
@@ -17,14 +19,17 @@ jobs:
sample:
# clients
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
# servers
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
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:

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:
@@ -22,11 +28,14 @@ jobs:
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-http-basic
- 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
- samples/client/petstore/spring-cloud-tags
- samples/client/petstore/spring-cloud-auth
- samples/client/petstore/spring-cloud-deprecated
# servers
- samples/server/petstore/springboot
- samples/openapi3/server/petstore/springboot
@@ -48,14 +57,16 @@ jobs:
- 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-lombok-data
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

@@ -40,8 +40,8 @@ jobs:
name: Build Swift samples
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: swift-actions/setup-swift@v1
- uses: actions/checkout@v4
- uses: swift-actions/setup-swift@v2
if: ${{ matrix.os == 'ubuntu-latest' }}
with:
swift-version: '5'

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

View File

@@ -18,9 +18,9 @@ jobs:
sample:
- samples/client/petstore/zapier
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Setup node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
- name: Install dependencies
working-directory: ${{ matrix.sample }}
run: |

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: ./mvnw -B -q clean install jacoco:report
- name: Jacoco Aggregate
run: ./mvnw jacoco:report-aggregate
- name: Publish to Sonar
run: ./mvnw -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##*/}

View File

@@ -18,14 +18,14 @@ jobs:
matrix:
java: [11, 17]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: Cache maven dependencies
uses: actions/cache@v3
uses: actions/cache@v4
env:
cache-name: cache-maven-repository
with:
@@ -39,7 +39,7 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.9.0
uses: s4u/setup-maven-action@v1.12.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
@@ -53,7 +53,7 @@ jobs:
# 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@v2
uses: gradle/gradle-build-action@v3
- name: Gradle tests
run: |
gradle -b modules/openapi-generator-gradle-plugin/samples/local-spec/build.gradle buildGoSdk --stacktrace

16
.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
@@ -84,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
@@ -179,7 +185,7 @@ samples/client/petstore/python/swagger_client.egg-info/SOURCES.txt
samples/client/petstore/python/.coverage
samples/client/petstore/python/.projectile
samples/client/petstore/python-asyncio/.pytest_cache/
**/poetry.lock
# PHP
samples/client/petstore/php/OpenAPIClient-php/composer.lock
@@ -211,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
@@ -270,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
@@ -279,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

View File

@@ -3,11 +3,11 @@
<extension>
<groupId>com.gradle</groupId>
<artifactId>gradle-enterprise-maven-extension</artifactId>
<version>1.17</version>
<version>1.20.1</version>
</extension>
<extension>
<groupId>com.gradle</groupId>
<artifactId>common-custom-user-data-maven-extension</artifactId>
<version>1.11.1</version>
<version>1.12.5</version>
</extension>
</extensions>

View File

@@ -34,19 +34,12 @@
</buildScan>
<buildCache>
<local>
<enabled>false</enabled>
<enabled>true</enabled>
</local>
<remote>
<server>
<url>https://ge.openapi-generator.tech/cache/exp3/</url> <!-- adjust to your GE hostname, and note the trailing slash -->
<allowUntrusted>true</allowUntrusted> <!-- set to false if a trusted certificate is configured for the GE server -->
<credentials>
<username>${env.GRADLE_ENTERPRISE_CACHE_USERNAME}</username>
<password>${env.GRADLE_ENTERPRISE_CACHE_PASSWORD}</password>
</credentials>
</server>
<enabled>true</enabled> <!-- must be true for this experiment -->
<storeEnabled>#{env['CI'] != null}</storeEnabled> <!-- adjust to an env var that is always present only in your CI environment -->
<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

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

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

@@ -10,10 +10,16 @@ set -e
export NODE_ENV=test
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
./mvnw --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"
@@ -33,20 +39,14 @@ elif [ "$NODE_INDEX" = "2" ]; then
export PATH="/usr/local/go1.18/go/bin:$PATH"
go version
# run integration tests
./mvnw --no-snapshot-updates --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
# 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)
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 #python2 no longer supported
pyenv global 3.7.12
echo "Running node $NODE_INDEX ... "
# Install node@stable (for angular 6)
set +e
@@ -63,23 +63,52 @@ 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
./mvnw --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)
# comment out due to ModuleNotFoundError: No module named 'urllib3.request'
#(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/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
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci.others -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --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)
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
@@ -84,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)
@@ -112,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/

View File

@@ -9,13 +9,13 @@
[![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)
[![Revved up by Gradle Enterprise](https://img.shields.io/badge/Revved%20up%20by-Gradle%20Enterprise-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.openapi-generator.tech/scans)
[![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) (`7.0.1`):
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.6.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)
@@ -25,7 +25,7 @@
<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:
@@ -60,24 +60,35 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[<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)
#### 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**, **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), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (9.x - 16.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** (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 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 - 17.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**, **Protocol Buffer**, **WSDL** |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Postman Collection**, **Protocol Buffer**, **WSDL** |
## Table of contents
@@ -115,13 +126,13 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 7.0.1 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.0.1-SNAPSHOT/) | 08.09.2023 | Patch release (enhancements, bug fixes, etc) |
| [7.0.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.0.0) (latest stable release) | 25.08.2023 | Major release with breaking changes (no fallback) |
| 7.6.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.6.0-SNAPSHOT/) | 17.54.2024 | Minor release with breaking changes (with fallback) |
| [7.5.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.5.0) (latest stable release) | 17.04.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)
@@ -179,16 +190,16 @@ See the different versions of the [openapi-generator-cli](https://search.maven.o
<!-- RELEASE_VERSION -->
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/7.0.0/openapi-generator-cli-7.0.0.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.5.0/openapi-generator-cli-7.5.0.jar`
For **Mac/Linux** users:
```sh
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar -O openapi-generator-cli.jar
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.5.0/openapi-generator-cli-7.5.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/7.0.0/openapi-generator-cli-7.0.0.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.5.0/openapi-generator-cli-7.5.0.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -251,7 +262,7 @@ To build from source, you need the following installed and available in your `$P
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/) (optional)
After cloning the project, you can build it from source using [maven wrapper](https://github.com/takari/maven-wrapper):
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`
@@ -423,7 +434,7 @@ openapi-generator-cli version
To use a specific version of "openapi-generator-cli"
```sh
openapi-generator-cli version-manager set 7.0.0
openapi-generator-cli version-manager set 7.0.1
```
Or install it as dev-dependency:
@@ -447,7 +458,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/7.0.0/openapi-generator-cli-7.0.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`
@@ -472,7 +483,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
```
@@ -612,10 +623,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)
@@ -689,12 +703,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/)
@@ -889,6 +906,7 @@ 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)
@@ -911,6 +929,10 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 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)
@@ -928,12 +950,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.
@@ -993,6 +1012,7 @@ Here is a list of template creators:
* Kotlin (MultiPlatform): @andrewemery
* Kotlin (Volley): @alisters
* Kotlin (jvm-spring-webclient): @stefankoppier
* Kotlin (jvm-spring-restclient): @stefankoppier
* Lua: @daurnimator
* N4JS: @mmews-n4
* Nim: @hokamoto
@@ -1004,14 +1024,17 @@ 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
@@ -1069,6 +1092,7 @@ Here is a list of template creators:
* Kotlin (Vertx): @Wooyme
* Kotlin (JAX-RS): @anttileppa
* NodeJS Express: @YishTish
* PHP Flight: @daniel-sc
* PHP Laravel: @renepardon
* PHP Lumen: @abcsun
* PHP Mezzio (with Path Handler): @Articus
@@ -1081,6 +1105,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
@@ -1097,8 +1122,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
@@ -1168,7 +1194,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| Perl | @wing328 (2017/07) [:heart:](https://www.patreon.com/wing328) @yue9944882 (2019/06) |
| PHP | @jebentier (2017/07), @dkarlovi (2017/07), @mandrean (2017/08), @jfastnacht (2017/09), [@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) |
@@ -1261,4 +1287,3 @@ See the License for the specific language governing permissions and
limitations under the License.
---

View File

@@ -13,7 +13,7 @@ install:
- 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
@@ -43,23 +43,30 @@ build_script:
#- 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\OpenAPIClientCoreAndNet47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (httpclient)
- dotnet test samples\client\petstore\csharp\OpenAPIClient-httpclient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (generichost)
- dotnet test samples\client\petstore\csharp\OpenAPIClient-generichost-netstandard2.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test c# API client (netcore)
- dotnet test samples\client\petstore\csharp\OpenAPIClientCore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
#- dotnet test samples\client\petstore\csharp\OpenAPIClient\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net framework 4.7)
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net framework 4.8)
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net48\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API client (.net 5.0)
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net5.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
# test C# API Client using conditional-serialization
- dotnet test samples\client\petstore\csharp\OpenAPIClient-ConditionalSerialization\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- 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\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

View File

@@ -13,3 +13,5 @@ parameterNameMappings:
additionalProperties:
modelPackage: Samples.Petstore
projectName: Petstore
enumNameMappings:
sold: UNAVAILABLE

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

@@ -1,11 +0,0 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-allOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/allOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

@@ -1,11 +0,0 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-anyOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/anyOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

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

View File

@@ -1,11 +0,0 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netcore-latest-oneOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/oneOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true

View File

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

View File

@@ -0,0 +1,13 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net8/AllOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/allOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true
targetFramework: net8.0

View File

@@ -0,0 +1,13 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net8/AnyOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/anyOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true
targetFramework: net8.0

View File

@@ -0,0 +1,13 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
inputSpec: modules/openapi-generator/src/test/resources/3_0/anyOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: false
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true
targetFramework: net8.0

View File

@@ -0,0 +1,16 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net8/FormModels
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: false
equatable: true
targetFramework: net8.0
skipFormModel: false
inlineSchemaOptions:
RESOLVE_INLINE_ENUMS: true

View File

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

View File

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

View File

@@ -0,0 +1,13 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net8/OneOf
inputSpec: modules/openapi-generator/src/test/resources/3_0/oneOf.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
nullableReferenceTypes: true
equatable: true
targetFramework: net8.0

View File

@@ -0,0 +1,10 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/dates-api.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{2E60EF87-DB0B-4D01-A36E-F5E90F7EC757}'
useDateTimeForDate: true
targetFramework: net8.0

View File

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

View File

@@ -1,6 +1,6 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0
outputDir: samples/client/petstore/csharp/generichost/standard2.0/Petstore
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
library: generichost
templateDir: modules/openapi-generator/src/main/resources/csharp
@@ -9,3 +9,4 @@ additionalProperties:
useCompareNetObjects: true
disallowAdditionalPropertiesIfNotPresent: false
targetFramework: netstandard2.0
equatable: true

View File

@@ -1,6 +1,6 @@
# for .net standard httpclient
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClient-httpclient
outputDir: samples/client/petstore/csharp/httpclient/standard2.0/Petstore
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
library: httpclient
@@ -10,3 +10,4 @@ additionalProperties:
disallowAdditionalPropertiesIfNotPresent: false
useOneOfDiscriminatorLookup: true
targetFramework: netstandard2.0
equatable: true

View File

@@ -7,3 +7,4 @@ additionalProperties:
targetFramework: net6.0
setCompareNetObjects: "true"
hideGenerationTimestamp: "true"
equatable: true

View File

@@ -1,8 +1,9 @@
generatorName: csharp
outputDir: samples/client/petstore/csharp/OpenAPIClientCoreAndNet47
outputDir: samples/client/petstore/csharp/restsharp/net4.7/MultipleFrameworks
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/csharp
additionalProperties:
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
targetFramework: netstandard2.1;net47
useCompareNetObjects: "true"
equatable: true

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