Compare commits

...

736 Commits

Author SHA1 Message Date
William Cheng
12dfe8fe74 prepare 7.10.0 release (#20128) 2024-11-18 18:59:21 +08:00
William Cheng
6b9f6bd2b1 update java samples 2024-11-18 18:47:40 +08:00
Christian Beikov
4185782ddc [#20125] Remove unnecessary model package import to avoid ambiguous class references (#20124)
* Remove unnecessary model package import to avoid ambiguous class references

* Regenerate JSON files
2024-11-18 17:43:14 +08:00
jasonjyu
51a0bd00b7 Replaced deprecated 'summary' attribute with recommended 'caption' element (#19961) 2024-11-18 17:34:55 +08:00
William Cheng
1a58d31a81 update gdscript samples, docs 2024-11-17 10:55:57 +08:00
Antoine Goutenoir
959cf1c3c9 [GdScript] Templates for GdScript (Godot 4) (#19267)
* feat(gdscript): sketch implementation of gdscript target language

This does not really work yet, but it's a start.
Results are not denormalized, no support for enums nor datetimes,
and thousands of other features are missing.

I still don't know how we are going to denormalize JSON+LD
without writing a whole GDScript lib for it…

* feat: add an exhaustive list of keywords reserved in GDScript

I've also provided the small python script I used to generate the list.

* refacto(gdscript): start using partials in templates

Whilst I'm racking my brains trying to figure out integration testing…

* test(gdscript): prepare a demo and integration testing

* fix(gdscript): do not use subclasses, use plain POGO

(plain ol' godot object)

One: I don't know how they work under-the-hood.
Two: I'm very confused over-the-hood.
Tri: We do not need them.

* refacto(gdscript): move demo files to their own directory

I know I'm making a lot of commits for not much,
but now I'm opening the sample files with Godot as well,
and doing unholy things with filesystems,
so I'm not taking any chances.

It's all going to be squashed anyway.  :)

* fix(gdscript): sample as a Godot project

It works !  I can now write integration tests in GDScript.
The real work starts now.

/spend 25h

* feat(gdscript): serialize and send body params

The test suite is now past its first hurdle, the 415 HTTP status code,
and went straight into an unexpected error 500.

I suspect the server does not like me trying to set the pet id at 0,
because that's what we're trying to do right now.

Godot is crashing a lot, mostly because I don't know how to make Callable.NOOP
and my current solution hints at optional on_success and on_failure,
yet if we omit them the engine will ragequit.

* feat(gdscript): check request body for required yet missing properties

Now we'll get a nice error when we forget to set a required property.

The demo is now able to:
- connect
- create a user
- login as that user
- create a pet

* feat(gdscript): namespace core classes as well with apiPrefixName

This makes our usage of `class_name` a little more acceptable.

* feat(gdscript): support prefixes and suffixes for class names

This will crutch namespacing well enough for most uses.

* feat(gdscript): handle enums, naively

* feat(gdscript): support basic API endpoint param constraints

- minLength
- maxLength
- minItems
- maxItems
- minimum
- maximum
- pattern (no flags)

* feat(gdscript): handle header params and header customization

We also support serializing to application/x-www-form-urlencoded now.

Next up: DateTimes !

* feat(gdscript): handle Date and DateTime like Strings

There's no timezone support in Godot for DateTimes.

* feat(gdscript): support plain text responses

* feat(gdscript): support collections of models

Those are Arrays, not custom collection objects.

* feat(gdscript): configure default host from OAS

* feat(gdscript): some documentation and better config

We don't need no factories nor singletons ; config is enough.

* docs(gdscript): document usage a little

* feat(gdscript): add more reserved words, skip jsonld models and configure features

We can now generate a client for an OAS server running ApiPlatform (PHP).

* feat(gdscript): improve logging with a configurable log level

* feat(gdscript): add support for Basic Bearer and Header ApiKey

(but I can't find the `description` template handler)

* fix(gdscript)

Too late to amend >.<

* fix(gdscript)

dangsarnit

* chore(gdscript): clean up a sprint artifact

* fix: don't forget the HTTP error code when relevant

* feat: use Resource as base class for models

* fix. Default string values now with "quotes"

* temporary remove settings as godot api have changed

* kick ci

* docs: review gdscript java class

* feat: support for TLS, some refacto, some review

There's still a lot of holes, TODOs and FIXMEs.

* feat: experimental support of Request inline objects

The inline response objects are still not supported.

* feat(gdscript): support inline request and response objects

* chore(gdscript): review the templates

* fix(gdscript): unexpected nulls in default values

{{#if defaultValue}} evaluates to true for null if we call super here.

* refacto(gdscript): replace "bee" prefix by "bzz", use a constructor

Now we pass the config and the client via the constructor.
This reduces the area of the public surface a bit, for the better I think.
This commit also cleans up the class name shenanigans.

* fix(gdscript): add missing file

* test(gdscript): refactor the test project to use the generated lib as addon

Since there is no singleton in the generated client, the addon need not be enabled in the project configuration to be usable.

The --headless mode is broken for now, as things changed in Godot 4 since the beta.

* docs(gdscript): document petstore server ADR

* test(gdscript): add GUT and an integration test

We used the latest stable GUT, but a feature we're going to need was merged today, so we'll need to update it either to master or to the next release at some point.

* refacto(gdscript, breaking): use an ApiResponse object in success callbacks

/spent 6d since the beginning

* test(gdscript): update integration tests

/spend 2h

* docs(gdscript): explain the new ApiResponse

Also moving core templates to their own subdir, for clarity.

/spend 10m

* chore(gdscript): review, document, clean up

/spend 2h

* test(gdscript): test the delete operation as well

/spend 7m

* feat(gdscript): update GUT and exit with appropriate code

/spend 2h

* docs(gdscript): add Gdscript's PI

Hire me while I'm available !  :D
I'd rather code than make a CV.

* feat(gdscript): support reserved keywords

Also adding some more assertions,
and using our own OAS file now.

/spend 3h

* refacto(gdscript): use "base" instead of "bee"

/spend 1h

* feat(gdscript): improve descriptions

/spend 1h

* fix(gdscript): await before polling

Contributed by @jchu231

* docs(gdscript): review the template files

* docs(gdscript): review and generate docs

---------

Co-authored-by: Bagrat <b.saatsazov@gmail.com>
2024-11-17 10:48:19 +08:00
Nelson Vides
86a18bfb62 erlang-server: add jesse to app.up release (#20120)
* erlang-server: add jesse to app.up release

* erlang-server: remove dialyzer errors that might not be related to the program
2024-11-17 10:07:03 +08:00
Tim
66908020e0 [python-pydantic-v1] Fix bug in serialization for SecretStr by applying changes from #18023 (#20102)
* Apply changes of #18023

* Regenerate samples

---------

Co-authored-by: tweber2 <tim.weber@vector.com>
2024-11-16 21:48:11 +08:00
dependabot[bot]
7087104741 Bump cross-spawn from 7.0.3 to 7.0.5 in /website (#20116)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.5.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.5)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 18:04:04 +08:00
William Cheng
02847e9323 Update minimum supported version of python in docs to 3.8+ (#20118)
* Update minimum supported version of python in docs

* update samples, docs

---------

Co-authored-by: Hugo Posnic <hugo.posnic@protonmail.com>
2024-11-16 18:01:50 +08:00
Alexander Fetisov
b44ba666aa adding support for @ResponseStatus annotation into spring-http-interface java spring generator (#20071)
* adding support for useResponseEntity into spring-http-interface java spring generator

* adding samples for @StatusResponse into spring-http-interface java spring generator

* additional changes to sample
additional changes to samples jdk17

* adding sample files

* extra adjustments

* fixing generator version

* fixing status code in samples

* some rollback

* some rollback 2
2024-11-16 15:52:11 +08:00
Victoria Casasampere Fernandez
d7a23a9fcf [Rust-Axum] Fix compilation error when validate is used on Nullable values (#20100)
* Fix compilation error when validate is used on Nullable values

* Update samples

* Switch Nullable Into Option trait implement to From

* Update samples from rebase
2024-11-15 22:03:59 +08:00
Bruno Coelho
293524785e [swift][client] rename api client to api configuration (#20103)
* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* [swift][client] rename api client to api configuration

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* [swift][client] rename api client to api configuration

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/swift6/api.mustache

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>

* [swift][client] rename api client to api configuration

---------

Co-authored-by: Lennard Sprong <x-sheep@users.noreply.github.com>
2024-11-15 09:35:51 +00:00
Jan Škrášek
96adf2f8f5 Fix explicit KSerializer's name & generation when used in container (#20093)
* [kotlin][client] properly reference the same custom serializer name

* [kotlin][client] properly use correct type when enum in container
2024-11-14 14:11:08 +00:00
Jan Škrášek
d442fc9a65 [kotlin][client] do not generate Serializable(forClass) annotation as the serializer is already defined (#20092) 2024-11-14 14:10:07 +00:00
William Cheng
1ceb36f182 update java samples 2024-11-14 15:13:46 +08:00
William Cheng
344a2102e8 Merge branch 'master' of https://github.com/openapitools/openapi-generator 2024-11-14 14:50:10 +08:00
DielN
216ba30172 [JAVA] Add missing dependencies in templates (#20075)
* Add commons-lang3 dependency for useReflectionEqualsHashCode

* Fix feign-no-nullable config/sample

* Add commons-lang3 dependency to jersey2

* Add & update mutiny dependency for microprofile

* Regenerate samples
2024-11-14 14:08:26 +08:00
Linh Tran Tuan
ee698f1e6d [Rust-Axum][Breaking Changes] Extracting Claims in Cookie/Header (#20097)
* [Rust-Axum][Breaking Changes] Extracting Claims in Cookie/Header

* Update

* Update
2024-11-14 14:05:30 +08:00
William Cheng
57d567e0d0 update slack invite url in homepage 2024-11-13 21:31:05 +08:00
William Cheng
975f4d4679 update slack url 2024-11-13 21:29:29 +08:00
William Cheng
301af6050b fix allOf with properties for ref as parent rule (#20083) 2024-11-13 21:27:19 +08:00
Nelson Vides
a95ea1f519 erlang-server: Extend provided return and make the type available (#20088) 2024-11-12 22:27:37 +08:00
Nelson Vides
20b5059aa5 Erlang server (#20087)
* erlang-server: Extend provided return

* Regenerate erlang-server handlers
2024-11-12 21:26:58 +08:00
William Cheng
85f711236c update scala samples 2024-11-11 18:54:20 +08:00
Aaron Pritzlaff
6792218775 Scala Cask oneOf support (#20051)
* added support for 'oneOf' types represented as unions

also updated libs and an 'errors' field rename to address
name clashes with likely/popular field names

* Created cask-specific petstore example which 
Includes a oneOf and allOf example
2024-11-11 18:46:27 +08:00
0xNF
bfcfc6ff25 [Dart2] Added better double handling to 'mapValueOfType<T>', which previously would fail when deserding doubles (#17808) 2024-11-11 18:33:08 +08:00
William Cheng
6bc8e0bffc Fix duplicated operationId with new rule in normalizer (#19872)
* fix duplicated opeationId with new rule in normalizer

* update workflow

* update samples

* update samples

* update java samples
2024-11-11 18:12:46 +08:00
qirex
e8c9722d6b [typescript-angular]: replace hasRequiredVars with hasRequiredParams for angular generator (#20077)
Co-authored-by: qirex <qirex@gmx.net>
2024-11-11 09:59:30 +01:00
DielN
2a17134628 Add equals and hashCode methods to Microprofile (#20011)
* Add equals and hashCode methods to microprofile

* Add missing import

* Update samples

* Add missing dependency for reflection equals
2024-11-10 17:43:19 +08:00
Joscha Feth
824f864512 docs: stop regeneration on error (#19898) 2024-11-10 17:38:04 +08:00
William Cheng
6ff52c7e31 suppress the cast warning in java okhttp-gson client (#20076) 2024-11-10 17:34:40 +08:00
Dennis Ameling
13b11d7706 kotlin-server: Fix required + nullable combination for properties (#20054)
* kotlin-server: Fix required + nullable combination

* Update FILES

* Updated generated code
2024-11-09 22:35:11 +08:00
William Cheng
223a169717 add TINQIN to the user list (#20072) 2024-11-09 18:28:17 +08:00
Julian Vennen
6bd3d53eee [PHP/Dart/Python] Correctly escape strings in single quotes (Fixes #17582) (#19529)
* [PHP/Dart/Python] Correctly escape strings in single quotes (Fixes #17582)

* Move escapeTextInSingleQuotes method to DefaultCodegen, add docblock
2024-11-09 16:50:12 +08:00
William Cheng
1bda458882 Add tests for duplicated operationId (#20070)
* add tests for duplicated operation id

* add spec file
2024-11-09 16:38:20 +08:00
William Cheng
b34df341a4 [csharp] Add option to fallback to int for Timeout (#20069)
* add option to fallback to int for Timeout

* update doc
2024-11-09 15:23:57 +08:00
Alec Petersen
bbccd2827f Replace MaxTimeout usage with Timeout, update Timeout to be a TimeSpan type (#19875) 2024-11-09 14:07:13 +08:00
DaveK-Rocketmakers
d9229c7b9f fix(csharp): Fixed JsonConverter for discriminators only appearing on base classes (#19972)
* fix(csharp): Fixed JsonConverter for discriminators only appearing on base classes

* chore: Updated .NET samples
2024-11-09 13:55:02 +08:00
Cameron Koegel
5702751e91 [Java] Respect User Supplied Header Params (#20042)
* [Java] Respect User Supplied Header Params

* remove if `dynamicOperations` true
2024-11-09 13:41:30 +08:00
Dennis Ameling
a7a86398d0 [kotlin-server] Bump Kotlin/Gradle versions and improve CI triggers/config (#20061)
* [kotlin-server] Bump Kotlin versions to latest

* Run tests on more samples

* Fix typo in workflow definitions

* Update samples

* Bump Gradle to 7.6.4

* Some further tweaks

* Bump Gradle versions

* Fix Gradle version syntax
2024-11-09 13:39:20 +08:00
Dennis Ameling
7bce639441 [typescript] use supportsES6 in sample testing (#20062) 2024-11-08 14:11:54 +01:00
Jenny G. L.
961c2e44d1 [scala][client]: scala-http4s: minor improvement (enum companion method, remove implicit, error handling) (#19901)
* [scala][http4s][client]: add enum method; remove implicit

* improve error handling

* more enum enhancement

* remove unused

* update samle

* avoid breaking change

---------

Co-authored-by: Jenny Leahy <jennyleahy@JENNYLEAHY.localdomain>
2024-11-08 17:15:32 +08:00
Sylwester Zieliński
3a3688280f Bump libraries for Kotlin-client. (#20053) 2024-11-08 08:05:28 +00:00
dependabot[bot]
00db84d22b Bump actions/setup-dotnet from 4.0.1 to 4.1.0 (#20055)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.1 to 4.1.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.0.1...v4.1.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 13:13:06 +08:00
Jules Ivanic
2c38d0de35 [typescript-fetch][Fix] oneOf models are generated without ...ToJSONTyped functions but models referencing still try to import (#20046)
* Fix #19858

* re-generate the samples
2024-11-07 14:33:33 +01:00
William Cheng
28e02fc1a2 update aspnet samples 2024-11-07 20:33:49 +08:00
Julien Tschäppät
7deecdc569 [csharp] Add a server generator for FastEndpoints (#19690)
* Add of a first working generator for FastEndpoints framework

Generator that support the basics of a FastEndpoints project
https://fast-endpoints.com/

* Add respose code documentation support

* Add an option to enable use of problem details

* Clean enum and model

* Add an option to generate record for requests/models

* Update sample

* Add support of nullable types

* Add option to enable authentication

* Add option to generate validators

* Clean readme.md file

* Add option to enable response caching

* update readme template

* Add missing files references

* Update generated sample

* Add link to documentation

* Add generator documentation

* correctly support packageName

supportingFiles additions moved to processOpts()

* improve useAuthentication option handling

Avoid to copy an empty file

* processOpts, move call to parent at the end

* Update generated sample

* Refactor and fix super.processOpts(); call order

* Handle the case of multi-line description

* Rename field to match naming conventions

* Add useApiVersioning option

* Update generated sample

* Add generator documentation

* Fix record when model contains optional properties

* Add configuration files for each option

* Add sample project for each configuration

* Add GitHub Action workflow for sample projects

* Add FastEndpoints BindFrom attribute on path, query and form params

* Update sample generated projects

* Fix validator template

* fix alphabetical order

* Use fully qualified name for FastEndpoints

* Add options to set GUID to be used in sln file

* update sample projects

* Update generators.md

* Fix path in github workflow

* Put readme, gitignore and solution file at the root of generated project

* update sample projects

* Remove the projectGuid option

This Guid need to be constant, it is related to project type

* update sample projects
2024-11-07 20:28:29 +08:00
Anders Lien
e2553a4a91 Copy escapeReservedWord implementation from python generator (#20035) 2024-11-07 20:00:06 +08:00
Linh Tran Tuan
cfef948c11 [Rust-Axum] [Breaking Changes] Prevent Operation response with internal Error (#20047)
* [Rust-Axum] Fix: prevent Operation returns Internal Server Error

* Update
2024-11-07 18:39:51 +08:00
Jules Ivanic
86758747c2 Fix #20044 (#20045) 2024-11-07 09:50:51 +01:00
Cameron Koegel
98cd9bd803 [typescript-axios] Respect User Supplied Header Params (#20040) 2024-11-06 18:01:59 +01:00
Jonathan Ballet
57cfff1950 python: stronger typing for the "configuration" module (#20014)
* python: strong typing for the configuration module

* 3.8 compatibility

* fix bearer format

* Specific auth settings
2024-11-06 16:36:47 +08:00
devhl-labs
54920ff106 [csharp][generichost] Better handling of duplicate operation ids (#19913)
* fixed missing output

* bug fix

* add new sample

* build samples again

* delete sample

* move the sample and add to github workflow

* remove model not needed for this test

* handle specs with no models

* better handling of duplicate operation ids

* fixed mistake in resolving conflicts

* build samples again

* revert a change sent in another pr
2024-11-06 16:29:49 +08:00
devhl-labs
f98073d508 Refactor copy lambda (#19983)
* comment out broken tests

* refactored copy lambda

* added tests
2024-11-06 16:29:17 +08:00
Aaron Pritzlaff
b51b18e3ca Scala cask api effects (#19936)
* Scala-cask improvements:

 * fixe for grouped methods which have routes containing dashes.

Previously our OperationGroup work-around would potentially
Create methods like ‘foo-bar’, which isn’t a valid function name

 * Fix to not import some.package.Array[Byte] when binary format is specified

 * Fix for grouped operations which contain duplicate query parameters

 * Fix for binary response fields. This can come up with the following example

        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "format" : "binary",
                  "type" : "string"
                }
              }
            },
            "description" : "data"
          },

 * Fix for enum model classes
Extracted complex logic for ‘asData’ and ‘asModel’ transformations for properties

 * Introduced a generic effect F[_] for services

This was done to support composable services
(Service A calls Service B) by using monadic
Effect types (ones which can flatMap)

 * Fixed unique union types for responses, asModel and asData fixes for non-model types

* scala-cask: regenerated samples

* Fix for reserved-word properties in the API

* Fix for null imports and reserved-word enum types

* Fixes for api methods with backticked params

* Fix for duplicate (by name) grouped params

* small syntax fix

* logging response type

* Regenerated samples

* String.format fix
2024-11-06 16:14:31 +08:00
Linh Tran Tuan
cded99c3fc [Rust-Axum] Support Authentication (Cookie, API Key In Header) (#20017)
* [Rust-Axum] Support Cookie Authentication & API Key In Header

* Fix

* Fix

* Fix Header Params & Responses
2024-11-06 16:13:00 +08:00
Tanmay Mohapatra
06547b7b82 [julia] improve enum support (#20016)
* [julia] improve enum support

Improved enum support. Added an override for `postProcessModels` method in julia code generator to do enum post processing. Added an override for `toEnumValue` method in julia code generator to generate enum values correctly based on julia types. Updated templates to use `#enumVars` for generating enum values.

* generated samples
2024-11-06 16:04:15 +08:00
dependabot[bot]
e1bccbfe47 Bump s4u/setup-maven-action from 1.15.0 to 1.16.0 (#20025)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.15.0 to 1.16.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.15.0...v1.16.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-11-06 16:03:23 +08:00
Lennard Sprong
bdad11d027 [swift6] Add Sendable conformance to request parameter enums (#20023) 2024-11-04 16:23:09 +00:00
Lennard Sprong
00dbe59994 [swift6] Add Sendable conformance to structs and enums (#20013) 2024-11-04 11:38:46 +00:00
Chirag Jain
67af02ccc8 python-pydantic-v1: Keep trailing commas for enum validation tuples (#19985)
* python-pydantic-v1: Keep trailing commas for tuples when enum has just single member

* Update samples

* Add test for single member enums

* Refactor test name
2024-11-02 15:26:19 +08:00
Kirill Zimnikov
66c7b2f8cc feat cpp-qt-client: fix cast primitive to string (#20000) 2024-10-31 21:10:07 +08:00
William Cheng
b66b7af5d0 [JS] set option to true by default, update samples (#20003)
* set option to true by default, update samples

* update doc
2024-10-31 15:01:37 +08:00
Tobias Brauneis
ae4e2515dc add parameter 'useURLSearchParams' to use JS build-in UrlSearchParams, instead of deprecated npm lib 'querystring' (#19949) 2024-10-31 14:48:45 +08:00
Alexander Kose
c70b07808e Add support for a token supplier to OAuth based RestClient clients. (#19944)
Fixes OpenAPITools#19943
2024-10-31 14:13:59 +08:00
Pavel Sveda
acb16410c4 [Kotlin] Introduce support for Kotlin Explicit API Mode for Kotlin-Client generator (resolve #16506) (#19999)
* [Kotlin] Properly document nonPublicApi CLI option

* [Kotlin] Respect parameter name of parent KSerializer to avoid miss-behavior

* [Kotlin] Introduce support for Kotlin Explicit API Mode for Kotlin-Client generator (resolves #16506)
2024-10-30 21:57:47 +00:00
Bruno Coelho
e9ea12f25a [swift6] improve retry interceptor (#19988)
* [swift6] improve retry interceptor

* [swift6] improve retry interceptor

* [swift6] improve retry interceptor
2024-10-30 11:31:35 +00:00
alfredo-accuris
9452873b99 [csharp] Mustache fully qualify namespace for Path (#19349)
* fix: csharp mustash fully qualify namespace Path

The generated code of Csharp get a fully quallify namespace for PATH

using Path = global::System.IO.Path;

* mend

* Remove alias for fully qualify Path class
2024-10-30 14:41:35 +08:00
ksn-partisia
b627e1cc67 [Bug] [Java] Fix raw type compilation warning in ApiClient for jersey2 and jersey3 (#19966)
* Add type annotation to raw type Iterable in jersey templates

* Regenerate samples
2024-10-30 14:24:32 +08:00
Ross
4a21dea47f Added support for a trait based reqwest Rust client (#19788)
* Added Rust Reqwest trait based client

* Fixed Cargo imports for reqwest trait template

* Added support for mockall to Rust reqwest trait library

* Added MockApiClient when mockall and topLevelClient are enabled

* Added missing flags to Rust generator documentation

* feat: add support for single argument and bon builder

Adds support for single argument and bon building for the new
reqwest-trait generator

* Rebuilt rust samples

---------

Co-authored-by: Troy Benson <troybensonsa@gmail.com>
2024-10-30 14:21:11 +08:00
Per Hallgren
03c29e72c6 fix(go): only import reflect when using it (#19967)
The api.mustache template only uses the reflect package if there is a
query parameter which `isCollectionFormatMulti`. The import for the
reflect package is however added if _any_ parameter is
`isCollectionFormatMulti`.

If the parameter which `isCollectionFormatMulti` e.g. is in the body
instead of the query, this leads to the import being part of the
generated code but not used and the code does not compile.

This updates reworks the import handling for the `reflect` package so
that it is only added if there is a query parameter which
`isCollectionFormatMulti`.

Co-authored-by: Per Hallgren <perhallgren@users.noreply.github.com>
2024-10-30 14:20:25 +08:00
William Cheng
cbc64e86d3 Update inline model resolver to flatten responses (#19992)
* update inline model resolver flatten responses

* minor update

* minor update

* minor update

* minor update
2024-10-30 11:50:29 +08:00
Stefano Marzo
25b6fd3937 Added Company to README.md (#19994)
Updated the README company list by adding CERN, which is currently experimenting with OpenApi Generator to streamline API calls in a newly developed business application.
2024-10-30 11:49:54 +08:00
Tomasz Letachowicz
32bf99a39f [BUG][KOTLIN] Sanitize names of the adapter variables in anyOf and oneOf model template to avoid compilation errors (#19981)
* [kotlin] Sanitize one_of and any_of model variable names to avoid compilation errors (#19942)

* [kotlin] add missing validateJsonElement method to oneOf and anyOf model templates (#19942)
2024-10-29 11:38:11 +00:00
William Cheng
48e8375166 fix ref to allOf wrapper, add tests (#19986) 2024-10-29 10:24:59 +08:00
devhl-labs
891698784d Fix test on Windows (#19980)
* comment out broken tests

* fixed test for windows
2024-10-29 00:35:55 +08:00
William Cheng
32fdd7c4d8 update samples 2024-10-28 11:36:40 +08:00
William Cheng
537737730b better handling of api response 2024-10-28 11:33:39 +08:00
Andreas Haessler
836d426d21 [Java] Fix generation of POJOs with sets of enums (fixes #19957) (#19960) 2024-10-28 10:19:08 +08:00
William Cheng
62c0258e04 Better handling of allOf with unsupported schemas (#19964)
* better handling of allOf with unsupported schemas

* add test spec

* better messages
2024-10-28 10:00:17 +08:00
dependabot[bot]
30ff0d7ca9 Bump actions/setup-dotnet from 4.0.1 to 4.1.0 (#19971)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.1 to 4.1.0.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.0.1...v4.1.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 15:16:32 +08:00
dependabot[bot]
008c1a42ef Bump http-proxy-middleware from 2.0.6 to 2.0.7 in /website (#19952)
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.7/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: http-proxy-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-10-23 16:43:32 +08:00
William Cheng
511316a966 Test build.gradle for java native petstore samples, sync pom.xml & build.gradle (#19951)
* test build.gradle for java native petstore samples

* trigger build

* sync pom.xml and build.gradle (java native)
2024-10-23 16:38:30 +08:00
Simon
21093b78c6 [JAVA]: Fix unknown property error for gradle build (#19933)
* Replace classifier with archiveClassifier

* Regenerate samples by script
2024-10-23 15:37:46 +08:00
Schmiddiii
f576f05eb2 Fix Rust generation for versions without minor or patch parts (#19946)
This fixes generation of a Rust library for OpenAPI specifications
where `info.version` was a single-digit number. This happened to for
[this](db005f2e55/openapi.yaml (L10))
specification. The fix for this issue is similar to the one in !17440.
2024-10-23 14:35:37 +08:00
Aliaksandr SEMIANKEVICH
e9c3c63732 [REQ] resolve #17544 Add x-field-extra-annotation and x-class-extra-annotation for kotlin generator (#19899)
Co-authored-by: Aliaksandr SEMIANKEVICH <aliaksandrsemian.epam@navan.tech>
2024-10-22 18:05:38 +08:00
William Cheng
071540f55a fix path with unescaped value (#19938) 2024-10-22 15:07:46 +08:00
Tomasz Letachowicz
eb92eeb32e [kotlin] Fix the path variable escaping in kotlin client generators (#19930) (#19937) 2024-10-22 12:34:42 +08:00
Linh Tran Tuan
52610e026e [BugFix] [Rust*] model-name-prefix causing invalid generated code (#19922)
* [BugFix] [Rust*] model-name-prefix causing invalid generated code]

* Update

* Fix

* Update

* Update
2024-10-21 18:10:16 +08:00
Bruno Coelho
266193f95f [swift6] update RXSwift version and pin Alamofire version (#19857) 2024-10-20 08:24:10 +01:00
Linh Tran Tuan
cfdb00a14c [Improvement] [Rust-Axum] Fix clippy warning (#19920) 2024-10-20 14:09:25 +08:00
William Cheng
8c8f2f3521 fix javaodc in resttemplate oauth class (#19918) 2024-10-19 21:52:18 +08:00
William Cheng
695902cca1 update resttemplate dep to newer version (#19917) 2024-10-19 16:13:14 +08:00
William Cheng
ec98693da5 fix accepts, contentType with unescaped values (#19915) 2024-10-19 15:56:07 +08:00
Tomasz Letachowicz
c8f2d2be1f [java][feign] Fix the character escaping in feign generated Content-type and Accept headers in order to generate proper values for these fields (#19895) (#19912) 2024-10-19 15:12:45 +08:00
William Cheng
fc161821a7 update configs with tempalteDir (#19914) 2024-10-19 15:12:08 +08:00
Ryan Mustard
1248d7a103 [swift5] fix compile error from Alamofire 5.10 - cast Parameter type to avoid recursion (#19908)
* cast type to avoid unintended recursive call

* update samples
2024-10-18 15:58:14 +01:00
Bruno Coelho
c6dbf0870c [swift5] add credentials by default (#19906) 2024-10-18 10:38:27 +01:00
Jonas Reichert
f6c0b4ad6b [swift6] adjust RequestInterceptor to pass RequestBuilder instead of OpenapiClient (#19904)
* inject requestBuilder instead of openAPIClient

* adjust template

* run samples

* fix tests

* fix test

* w

* fix
2024-10-18 09:45:35 +01:00
Joscha Feth
dc3718cd5c fix(typescript): typecheck generated samples + fixes (#19903)
* fix(typescript): typecheck generated samples + fixes

* wip(today's fortune): The sum of the Universe is zero.

* Update .github/workflows/samples-typescript-typecheck.yaml

* Update modules/openapi-generator/src/main/resources/typescript/tsconfig.mustache

* chore: regenerate samples
2024-10-18 09:57:43 +02:00
David Riddervold Marconis
ce09134b48 [typescript] feat: Add typescript licenseName option (#19888)
* Add licenseName option to typescript

* Update documentation

* Fix import in test

* Consolidate typescript test OptionsProviders

* Rename Typescript to TypeScript
2024-10-17 15:48:38 +02:00
Joscha Feth
23bd50fea0 fix(typescript): missing override directives / satisfy noImplicitOverride (#19896)
* fix(typescript): missing `override` directives

* chore: regenerate samples
2024-10-17 15:43:21 +02:00
Bruno Coelho
38dac13c26 [swift6] add credentials by default (#19885) 2024-10-16 13:38:49 +01:00
Gregory Merlet
0a39a1760e Add httpClient config to typescript-nestjs generator (#19876)
* feat: add httpClient to config

* chore: generate samples and doc

* refactor: change import to type

* chore: generate samples and doc
2024-10-16 13:32:05 +02:00
Bruno Coelho
ca032113f2 [Swift] shorter readme (#19884)
* [Swift] shorter readme

* [Swift] update docs

* [Swift] update docs

* [Swift] format codegen

* [Swift] try to make CI pass
2024-10-16 11:55:18 +01:00
Nicolas Vervelle
65b1859161 Add nullability annotations to Java generated clients (#19617)
* issue-1960: Add nullability annotations to Java generated clients

Motivations:
Have generated clients properly annotated for nullability to be able to check code using them with tools like NullAway

Modifications:
* Add nullable_var_annotations template to handle nullability annotation on vars
* Add pojo templates to use the nullability template
* Adapt tests

* issue-1960: Add nullability annotations to Java generated clients

Modifications:
* Run export_docs_generator.sh script to update samples
2024-10-16 16:14:29 +08:00
William Cheng
8f7d9f7467 update samples (#19882) 2024-10-16 15:55:57 +08:00
James Ring
c487a6ea18 Fix missing serverConf variable (#19859)
Previously, if an operation had a 'servers' block, the template would
emit code requiring a `serverConf` local variable. Unfortunately, the
template would not emit this variable, because it was looking for a
`servers` variable in the wrong context.

This change makes the template emit an anonymous block containing a
unique server configuration for each operation.

I did not test this change beyond a simple code inspection, there are
other problems with the code generator which prevent it from running on
my API definition.
2024-10-16 15:45:18 +08:00
William Cheng
21a8e4e623 [python-fastapi] Update fastapi, starlette to newer versions (#19880)
* update fastapi, starlette dep to newer verions

* update samples
2024-10-16 14:17:38 +08:00
Peter Storch
b1dd6b262e fix Api Interface for kotlin-spring with spring-cloud library (#19877) 2024-10-15 18:41:48 +01:00
Jazzco
1214ad7492 Update HttpRequest.cpp.mustache - use stable 4-parameter connect (#18893)
* Update HttpRequest.cpp.mustache

Use stable 4-parameter connect

* add generated files

* Revert "add generated files"

This reverts commit 1d4e78aa0d.

* changed from 3- to 4-parameter connect for api-body for stable connection (see warning [clazy-connect-3arg-lambda])

* ran step 3 from Linux

* fixed missing braces and additional 3par issues

* add step 3 generated file

* activate trace for more info about link issue

* Update .github/workflows/samples-cpp-qt-client.yaml

Co-authored-by: Martin Delille <martin@delille.org>

* Update .github/workflows/samples-cpp-qt-client.yaml

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/HttpRequest.cpp.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* Update samples/client/petstore/cpp-qt/client/PFXPetApi.cpp

Co-authored-by: Martin Delille <martin@delille.org>

* rebuild examples

* Update modules/openapi-generator/src/main/resources/cpp-qt-client/api-body.mustache

Co-authored-by: Martin Delille <martin@delille.org>

* removed braces and updated examples

* rebuild samples

* remove false generated changes

---------

Co-authored-by: Martin Delille <martin@delille.org>
2024-10-16 00:08:40 +08:00
William Cheng
4ddfb6fc41 update generator faq (#19869) 2024-10-15 16:50:39 +01:00
William Cheng
3b3f9a770a refacot is null schema check (#19873) 2024-10-15 17:17:28 +08:00
Bruno Coelho
2354d402a8 [swift6] promote to beta and improve documentation (#19856)
* [swift6] promote to beta

* [swift6] format code

* [swift] authentication docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs

* [swift] update docs
2024-10-14 12:55:25 +01:00
Alec Petersen
b5b760a8a2 [csharp] Address obsolete build warnings in ApiClient (#19847)
* Stop using obsolete MaxTimeout

* Convert timeout to a timespan, rather than update the configuration object

* Use async overload of RestClientExtensions.Deserialize

* Update samples

* Fix typo

* Undo timeout change
2024-10-14 15:44:12 +08:00
Daniel Simon
8849156d29 Remove further Qt support before Qt 5.15.2 (#19824)
* Remove further Qt support before Qt 5.15.2

This is a follow-up pull request for [#19164] (https://github.com/OpenAPITools/openapi-generator/pull/19164), which removes the further handling of older Qt versions.

* Updates samples to match the mustach config files.

---------

Co-authored-by: Daniel Simon <mail@dlins.de>
2024-10-14 11:09:58 +08:00
William Cheng
2838b9584b add logic in normalizer to auto fix self-reference schemas (#19849) 2024-10-12 16:39:48 +08:00
William Cheng
d1ca82cb8b auto fix self-reference schemas 2024-10-12 16:12:23 +08:00
Bruno Coelho
462f450366 [kotlin] Map file and binary to ByteArray (#19840)
* [kotlin] Map file and binary to ByteArray

* [kotlin] Map file and binary to ByteArray
2024-10-11 08:59:16 +01:00
Bruno Coelho
185c0639c0 [swift6] simplify authentication (#19839) 2024-10-11 08:36:35 +01:00
William Cheng
715f6b634e add @e5l to kotlin technical committee (#19843) 2024-10-11 15:09:28 +08:00
Leonid Stashevsky
7f899dff97 [Kotlin Server] Update Ktor to latest version; move config to kts (#19727)
* [Kotlin Server] Update Ktor to latest version; move config to kts

* Bump gradle version for kotlin server samples

* Replace deprecated gradle API

* Bump gradle to 7.6.4
2024-10-11 11:44:53 +08:00
Ben Meyrick
368b9b7e37 [TypeScript - Angular] Add syntax highlighting to code blocks and correct heading levels in README.mustache (#19837)
* Improve typescript-angular README.mustache

- Add syntax highlighting to code blocks
- Correct heading levels

* Add space between heading and convert bare url to angle brackets link

* Update samples
2024-10-10 17:57:16 +02:00
Marvin Sommer
a84946bdb3 [Java Spring] Fix copyOf inheritance using empty object instead of passed value (#19426)
* Fix copyOf inheritance using empty object instead of passed value

* Generate new samples
2024-10-10 16:52:38 +08:00
William Cheng
d9cdecf3c3 commnet out gh pages publish (#19831) 2024-10-10 15:38:22 +08:00
William Cheng
b357744048 Fix python-fastapi signature of parameters for method (#19830)
* Fix python-fastapi signature of parameters for method

* update

---------

Co-authored-by: Diorcet Yann <diorcet.yann@gmail.com>
2024-10-10 15:36:22 +08:00
vcutrona
45fa4384e7 [python] Check if the given input is a container (Array or Map) when validating enum values (#19316)
* checks if input is Array or Map in validate_enum

* update samples
2024-10-10 14:57:04 +08:00
William Cheng
ea4b17c32f add missing semi colon in travis.yml 2024-10-10 14:55:59 +08:00
martin-mfg
b730e36937 [JAVA] fix several anyOf/oneOf problems (#19817)
* erasure duplicates

* sanitize beanValidation

* oneOf maps

* anyOf

* update samples
2024-10-10 14:50:18 +08:00
jops-wtakase
43fd18935c [python-flask] Fix #19487 SyntaxWarning (#19489)
* Bugfix: #19487: Fix SyntaxWarning

* Fix a bug which generates SyntaxWarning

* Chore: #19487: Generate sample
2024-10-10 14:48:02 +08:00
William Cheng
30e6612558 minor fix to travis.yml 2024-10-10 14:28:05 +08:00
Norman Schimmrich
d14eab8446 [kotlin-client][jvm-spring-webclient] Extract data from PartConfig for multipart/form-data requests (#19811) 2024-10-10 13:41:55 +08:00
William Cheng
627c0f43cd uncomment workflow to publish doc (#19821) 2024-10-09 13:07:41 +08:00
Aaron Pritzlaff
31be9b9207 scala-cask fix: Added support for 'additionalProperties:true' (#19767)
* Added support for 'additionalProperties:true' to scala-cask generator

additionalProperties means the request can contain arbitrary
additional properties, and so this change adds an 'additionalProperties'
field to request objects which is a json type.

* fixed warning in example scala-cli project

* updated samples

* addressed codegen comments
2024-10-09 11:15:25 +08:00
martin-mfg
d60200de38 improve java enums (#19815) 2024-10-09 10:46:17 +08:00
Alex Wallen
22b8c47b93 feat: add middleware for create actions (#19793)
* feat: add middleware for create actions

* chore: update samples

* chore: update typescript sample?
2024-10-09 10:38:22 +08:00
Hui Yu
ba169342a1 [C][Client] Add gcc predefined macros to reserved keywords (#19791) 2024-10-09 01:38:12 +08:00
Joscha Feth
b3b3f46ee2 docs: release links and list (#19810)
references #19809

cc @wing328
2024-10-08 19:20:20 +08:00
William Cheng
25b834131c update k6 samples 2024-10-08 17:32:41 +08:00
MrRober
7c84177e65 Remove calculateRequestOrder Function and fix bug (#19685)
* Remove calculateRequestOrder Function

This PR removes the calculateRequestOrder function from the codebase and addresses the bug described in issue #19110. After a thorough review, it was determined that the function was unnecessary due to its redundant logic and lack of unique functionality.

* delete import java.lang.*;

* delete import java.lang.*;

* Remove calculateRequestOrder Function

This PR removes the calculateRequestOrder function from the codebase and addresses the bug described in issue #19110. After a thorough review, it was determined that the function was unnecessary due to its redundant logic and lack of unique functionality.

* delete import java.lang.*;

---------

Co-authored-by: rmarqmo <rmarqmo@mercadona.es>
2024-10-08 17:27:39 +08:00
William Cheng
e2c458b9ea Prepare 7.10.0 (#19809)
* Revert "prepare 7.9.0 release (#19808)"

This reverts commit 4145000dfe.

* prepare 7.10.0 snapshot

* update doc

* update samples
2024-10-08 11:21:54 +08:00
William Cheng
4145000dfe prepare 7.9.0 release (#19808) 2024-10-08 10:30:09 +08:00
CaptainAye
a82475ed4e Fix java rest client's ApiClient constructors to make sure objectMapper parameter is used in the client (#19667) (#19795) 2024-10-08 09:47:16 +08:00
dependabot[bot]
7cf84e2daf Bump s4u/setup-maven-action from 1.14.0 to 1.15.0 (#19807)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.14.0...v1.15.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-10-08 09:34:58 +08:00
Kunitsyn Oleg
4ff8c3aaef [Python][Client] Allow all content-types with text/ prefix (#19802)
* ODM-12108: allow all content-types with text/ prefix

* ODM-12108: Update deserialization tests

---------

Co-authored-by: Oleg Kunitsyn <you@example.com>
2024-10-08 09:34:36 +08:00
roelwuytens-androme
7d1e9997d0 [Kotlin] Allow other content-types when only interested in status-code / Unit (#19801)
* Allow Unit response

* Updating samples

* Improve comment for Unit shortcut
2024-10-07 13:18:51 +01:00
Bruno Coelho
9a0fc5900f [swift6] urlsession interceptor (#19797)
* [swift6] alamofire interceptor

* [swift6] alamofire interceptor

* [swift6] urlsession interceptor

* [swift6] urlsession interceptor

* [swift6] urlsession interceptor
2024-10-07 12:16:18 +01:00
Bruno Coelho
4c81563708 Update PHP samples 2024-10-07 11:27:35 +01:00
kruegge82
5902af4e75 in case of defined status codes > 299 switch will have no effect. issue 7788 (#19483)
* in case of defined status codes > 299 switch will have no effect. As described in issue 7788

so we get only an error if statusCode is not defined AND not between 200 and 299

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

* in case of defined status codes > 299 switch will have no effect. As described in issue 7788

so we get only an error if statusCode is not defined AND not between 200 and 299

https://github.com/OpenAPITools/openapi-generator/issues/7788
2024-10-07 16:01:36 +08:00
Bruno Coelho
39fb51062b [swift6] alamofire interceptor (#19796)
* [swift6] alamofire interceptor

* [swift6] alamofire interceptor
2024-10-07 08:37:03 +01:00
Nelson Vides
77e8346fd7 [Erlang Server] Add more type information and fix minor bugs (#19792)
* Add type information about classes and operation-ids

* Remove unused logger included header

* Bugfix badmatch in delete_resource handler

* Bugfix: respect original indentation of operation_ids

* Bugfix json schema correct refs

* Add a bit more documentation

* Regenerate erlang-server handlers
2024-10-07 15:28:14 +08:00
Francesco Saverio
9163e00932 Implemented missing definitions of declared methods inside modelbase-header.mustache, added two missing body of methods definitions (#19569)
* Fix #19566 implemented the missing definition of declared methods inside openapi-generator/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/modelbase-header.mustache, have also be added two missing body of methods definitions

* Regenerated cpp-restsdk client samples

* Fixed shared_ptr creation
2024-10-07 14:06:06 +08:00
William Cheng
2f3f25dee2 update samples 2024-10-07 11:17:52 +08:00
devhl-labs
28ae69dafd [windows] Fixed missing output (#19715)
* fixed missing output

* bug fix

* add new sample

* build samples again

* delete sample

* move the sample and add to github workflow

* remove model not needed for this test

* handle specs with no models
2024-10-07 10:58:05 +08:00
Alec Petersen
6745340c64 Make DateOnly nullable in the csharp client codegen (#19333) 2024-10-07 10:49:17 +08:00
Alec Petersen
c7d9857c8d [csharp] Output DateOnly paramater in the correct default format (#19728) (#19729)
* Output DateOnly in the correct default format

* Only add conditional if we are net60 or later

* Update samples
2024-10-07 10:48:50 +08:00
devhl-labs
fce8bb9604 support formatting date only (#19785) 2024-10-07 10:23:00 +08:00
William Cheng
c8fad42324 update samples 2024-10-07 08:53:30 +08:00
Joscha Feth
2f73582d82 fix(core): single value enums (const) are not generated correctly in 3.1 specs (#19696)
* fix(core): single value enums (`const`) are not generated correctly in `3.1` specs

* fix: const enums

* chore: update samples

* chore: update samples
2024-10-06 23:16:48 +08:00
Joscha Feth
899ddecdbd feat(avro)/refactor(core): unify *_POST_PROCESS_FILE behaviour and reuse code (#19761)
* feat(avro)/refactor: unify `*_POST_PROCESS_FILE` bahviour and code

* refactor: use existing function

* test: add simple test for post processor execution

* test: restrict concurrency to 1

* docs: add explanation to method
2024-10-05 17:25:17 +08:00
William Cheng
98468aba5c minor improvemetns to new scala client generator (#19786) 2024-10-05 17:15:37 +08:00
William Cheng
fbebfeb774 update doc 2024-10-05 17:08:14 +08:00
Jenny G. L.
9791e6f537 [Scala][Client]Add Http4s scala3 client codegen (#19658)
* fix attemp

* use java.time.Instant

* fix client gen

* Tweeks

* header and form

* use scala 3 enum

* more tweeks

* add additional properties; add auth

* add form media type

* add modelsOnly

* add unit tests

* add petstore samples

* add doc

* add new samle to .github/workflows/samples-scala.yaml

* update build.sbt template

* simply the baseclient

* add None to optional field

* tweek auth model and format

---------

Co-authored-by: Jenny Leahy <jennyleahy@JENNYLEAHY.localdomain>
2024-10-05 17:00:19 +08:00
Viacheslav Pivovarov
e5dee54797 [R][client] Make enum parameters with required: false optional to request arguments (#19654)
* ODM-11697: Adding null check in R-api

* bin/generate-samples.sh executed

---------

Co-authored-by: Kunitsyn Oleg <114428801+genestack-okunitsyn@users.noreply.github.com>
2024-10-05 15:12:30 +08:00
William Cheng
77eb192414 update php samples 2024-10-05 15:02:54 +08:00
Imants Horsts
5e7cf1cfdd By default should use static configuration class instance, otherwise new instance is created every time (#19775) 2024-10-05 14:57:08 +08:00
William Cheng
ad6c2dd2b7 [normalizer] bug fixes (isNullTypeSchema, handling of primitive types with oneOf) (#19781)
* better handling of primivitype type with oneOf

* fix null check, add tests

* add check for properties
2024-10-05 13:57:11 +08:00
Bruno Coelho
8e10dd7be7 [swift6] add samples that test upload files as data (#19780)
* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data

* [swift6] upload files as data
2024-10-04 15:52:48 +01:00
Bruno Coelho
66cde8b5f4 [swift6] make async await the default response library (#19776)
* [swift6] make async await the default response library

* [swift6] make async await the default response library

* [swift6] make async await the default response library
2024-10-04 08:05:05 +01:00
Joscha Feth
cfe6520283 fix(avro-schema): fix NPE for null enum values (#19771) 2024-10-04 12:56:11 +08:00
Pascal Bachor
817da39124 [Python] Restore required dev dependency + Adjust generated Github workflow (#19773)
* Restore required python client dev dependency pytest-cov

* Harmonize python client workflow definitions

---------

Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2024-10-04 00:39:45 +08:00
Beppe Catanese
67942aa478 [Typescript-Node] Mark deprecated endpoints (#19770)
* Add @deprecated tag for deprecated operations

* Add test helper to verify a given line

* Add test to verify deprecated method

* Regenerate samples

* Delete tmp files after test

* Remove assertFileContains on specific line

* Update modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache

Co-authored-by: Joscha Feth <joscha@feth.com>

* Correct indentation

* Regenerate samples

---------

Co-authored-by: Joscha Feth <joscha@feth.com>
2024-10-03 17:45:04 +02:00
Bruno Coelho
06d914dd0f [swift6] useSPMFileStructure by default (#19772)
* [swift6] useSPMFileStructure by default

* [swift6] useSPMFileStructure by default

* [swift6] useSPMFileStructure by default
2024-10-03 16:23:43 +01:00
William Cheng
5f345c0213 update php samples 2024-10-03 21:10:30 +08:00
Bruno Coelho
c9a9ae0aa8 [swift6] move infrastructure file inside infrastructure folder (#19765)
* [swift6] replace AnyCodable with JSONValue

* [swift6] create infrastructure folder

* [swift6] replace AnyCodable with JSONValue

* [swift6] create infrastructure folder

* [swift6] replace AnyCodable with JSONValue

* Try to fix CI
2024-10-03 14:06:18 +01:00
Markus Holstein
2437d7fa97 [PHP-Client] Allow Content-Type merge-match+json for encoding (#19479)
* Allow Content-Type merge-match+json for encoding

* Changes JSON recognition to more flexible regex

* Removes now useless JSON format list

* Removes empty spaces

* Adds explanatory PHPDoc comment

* Moves Json-detection to class HeaderSelector
2024-10-03 20:53:15 +08:00
Beppe Catanese
d521cddc3b Remove unnecessary files (#19769) 2024-10-03 13:56:35 +02:00
Bruno Coelho
c48ef148c0 [swift] remove unused lenientTypeCast option (#19764)
* [swift6] remove unused lenientTypeCast option

* [swift6] remove unused lenientTypeCast option

* [swift5] remove unused lenientTypeCast option
2024-10-03 12:11:16 +01:00
Bruno Coelho
74100e44cb [swift6] replace AnyCodable with JSONValue (#19763) 2024-10-03 10:58:06 +01:00
William Cheng
577483c2e2 update rust axum samples 2024-10-03 16:10:27 +08:00
faro-dr
d193050a35 Fix rust axum doc tests (#19538) (#19539) 2024-10-03 16:01:29 +08:00
Syd Besco
9f2bd313ff [POWERSHELL] fix: keep array context when converting to json (#19535) 2024-10-03 15:57:21 +08:00
WouterBaeyens
6686c4d02f [BUG] HandlebarsEngineAdapter.java failed to use custom FieldValueResolver causing IllegalAccessException for maps (#19634)
* Update HandlebarsEngineAdapter.java

The old MY_FIELD_VALUE_RESOLVER.INSTANCE is equivalent to FieldValueResolver.INSTANCE, which is assigned `new FieldValueResolver();` so our custom class was never used.

* Add test verifying partial template works; Extract accessAwareFieldValueResolver; Add test verifying priority fo values extracted from object
2024-10-03 15:56:53 +08:00
Bruno Coelho
c84af35e7b Revert "[swift6] remove unused lenientTypeCast option"
This reverts commit 171b98e06c.
2024-10-03 08:45:42 +01:00
Bruno Coelho
171b98e06c [swift6] remove unused lenientTypeCast option 2024-10-03 08:42:10 +01:00
Nelson Vides
83f6d592a2 Erlang server validation bugfixes and capability extensions (#19750)
* Bugfix: exclusiveMinimum/Maximum must be booleans

* Add support for validating and decoding base64 byte strings

* Add support for validating RFC3339 datetime

* Simplify validate function for performance

* Regenerate erlang-server handlers
2024-10-03 14:24:00 +08:00
Pascal Bachor
619e4d9653 Harmonize python client dependency versions (#19694)
Co-authored-by: Pascal Bachor <bachorp@users.noreply.github.com>
2024-10-03 14:09:39 +08:00
Joscha Feth
0371799857 fix(core): relative path sorting (#19726) 2024-10-03 14:08:47 +08:00
William Cheng
2111713117 Fix anyOf/oneOf normalization for 3.1 spec (#19758)
* fix anyOf/oneOf normalization for 3.1 spec

* update samples
2024-10-03 14:06:42 +08:00
Bruno Coelho
fad33dfebf [Swift6] better configuration (#19732)
* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements

* [swift6] general improvements
2024-10-02 23:25:46 +01:00
Bruno Coelho
673cd15e72 [swift6] oneOf-default-case (#19754) 2024-10-02 21:30:36 +01:00
Alex Wallen
43ce2a8e10 [zapier] add response middleware (#19760)
* feat: add zapier response middleware

* chore: add samples
2024-10-03 01:02:25 +08:00
Beppe Catanese
168a1d5d1f [Typescript-Node] Mark deprecated model attributes (#19756)
* Add @deprecated tag for deprecated fields

* Add tests

* Generate samples from OpenAPI 3.0 file

* Revert to generate with previous OpenAPI 2.0 file

* Add new config 3.0 and generate samples

* Regenerate samples
2024-10-02 17:14:42 +02:00
Bruno Coelho
90bc1000bd [swift5] rename unknownDefault to unknownDefaultOpenApi to match the enums unknown case (#19753) 2024-10-02 11:45:49 +01:00
Nikita Erokhin
f409bf1440 add oneOf-default-case option for swift5 (#19094)
Co-authored-by: erokha <dev@erokha.com>
2024-10-02 10:56:04 +01:00
William Cheng
1cdd7b7ff2 add joscha to TS technical committee (#19745) 2024-10-02 13:47:31 +08:00
Joscha Feth
c5060a2318 feat(core): add info.summary to additionalProperties for 3.1 specs (#19723) 2024-10-02 13:40:48 +08:00
Maxime Vincent
c6eb9e0e09 fix_ruby_documentation_apikey_name (#19742) 2024-10-01 22:10:54 +08:00
Maxime Vincent
2544fa2928 [Ruby-client] Use secuirtyScheme Key for api_key (#19740)
* replace name by keyParamName in apiKey configuration

* update configuration generated in sample
2024-10-01 19:45:27 +08:00
William Cheng
d7ac1e4337 [OpenAPI 3.1] Avoid NPE when handling prefixItems (#19735)
* avoid npe when handling prefixItems in 3.1 spec

* update samples
2024-10-01 17:36:11 +08:00
RyosukeFukushima
60d0888898 [typescript-fetch] support "x-enum-descriptions" (#19559)
refs OpenAPITools#1693
2024-10-01 11:33:07 +02:00
skstrifork
2322a99bba [Java][microprofile] enumUnknownDefaultCase true now returns correctly in fromValue (#19677) 2024-10-01 17:30:19 +08:00
William Cheng
5f39bd230e update undertown to 2.3.17.FINAL (#19734) 2024-10-01 16:54:49 +08:00
nvivot
8ef3118005 [rust][client][auth] token source option (#19647)
* feat: add token source support for rust async client

* chore: fix + regen samples

* chore: doc gen

* chore: missing generated sample files
2024-10-01 15:05:39 +08:00
Nelson Vides
7e1ebe6404 Erlang server (#19722)
* Add documentation to server and handlers

* Respond to at least one path-server

* Let url servers override base path

* Handle reading bigger bodies in cowboy

* Improve json error handling

* Regenerate erlang-server handlers

* Rework API module for performance and completion

* Regenerate erlang-server handlers
2024-10-01 14:51:12 +08:00
winkler-pixop
2551689ec6 Fix #19683 : Generated code fails to build with x86_64-linux-gnu-g++-13 (#19684)
* Add C++ header for cpp-pistache-server to fix breaking CMake build of generated code.

* Sort includes of system C++ headers for cpp-pistache-server.

* Add samples generated from fixing bug #19683.
2024-10-01 14:00:38 +08:00
Alex Wallen
241f51c56b zapier: create a search action predicate (#19670)
* feat: implement createAction predicate rather than negating isSearchAction predicate

* chore: update samples
2024-10-01 11:34:09 +08:00
Joscha Feth
849b3e8e17 fix(typescript): export types (#19725)
* Fix export type for typescript interfaces in all platforms (#6805)

* Generated samples and docs

* chore: update samples

---------

Co-authored-by: Kevin Broja <kevin.broja@gus-group.com>
2024-09-30 17:29:21 +02:00
jaqxues
af2ed1c7a6 [kotlin] enforce fields in data classes (#19526)
Fix #14710
2024-09-30 14:51:46 +01:00
Stefan Koppier
df22ca6dcc [BUG] Kotlin wiremock query params are incorrect (#19720) 2024-09-30 11:44:08 +01:00
Joscha Feth
d68a186c5e test(OpenAPINormalizer): nullability normalization for 3.1 specs (#19714)
* test(OpenAPINormalizer): nullability normalization for 3.1 specs

* chore: samples
2024-09-30 09:49:49 +08:00
Joscha Feth
2d57255817 fix(core): nullable array types in 3.1.x specs (#19687)
* fix: nullable array types in 3.1.x

* fix: pass on on `getNullable` value

* chore: add generated marker

* chore: add generated marker

* Delete out
2024-09-30 00:00:48 +08:00
William Cheng
ea6b1c6612 Update README.md with new release date of 7.9.0 2024-09-29 23:28:02 +08:00
devhl-labs
9300a68ad7 [csharp][generichost] Fix local var (#19642)
* fix local var

* revert one unneeded breaking change

* revert one unneeded breaking change
2024-09-29 23:11:06 +08:00
devhl-labs
fb5e69f83a [csharp][generichost] Fix invalid key name (#19633)
* fix invalid key name

* fix comment
2024-09-29 23:09:37 +08:00
Joscha Feth
0b32c5025e chore: update github workflow checkput plugin references (#19676) 2024-09-29 21:23:02 +08:00
Joscha Feth
4223be77f8 feat(typescript): write minimum, maxmimum and default to JSDoc (#19707)
* feat(typescript): write `minimum`, `maxmimum` and `default` to JSDoc

* feat(typescript): express optional params in JSDoc
2024-09-29 12:42:55 +02:00
Deepika Sridhar
b01dd41ce3 bugfix: openapi code generator to consider schema changes (#16735)
* bugfix: added schema location property

* fix: #16723 open api schema refresh issue

* Update modules/openapi-generator-gradle-plugin/src/main/kotlin/org/openapitools/generator/gradle/plugin/tasks/GenerateTask.kt

Co-authored-by: David Morris <dave@code-fish.co.uk>

---------

Co-authored-by: dsridhar <deepika.sridharr@aexp.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: David Morris <dave@code-fish.co.uk>
2024-09-27 17:35:48 +08:00
Joscha Feth
36367e79e7 style(typescript): use Headers type (#19697) 2024-09-27 08:41:03 +02:00
Joscha Feth
5e2af7203a feat(typescript): generate .gitattributes file (#19698)
* feat(typescript): generate `.gitattributes` file

* sample generation

* highlight the gitattributes mustache template

* highlight the gitattributes mustache template

* Revert "highlight the gitattributes mustache template"

This reverts commit 9511997983.

* highlight the gitattributes mustache template

* Revert "highlight the gitattributes mustache template"

This reverts commit 0f67ec2e4f.

* Revert "highlight the gitattributes mustache template"

This reverts commit 1f68b42368.
2024-09-27 08:39:59 +02:00
Joscha Feth
1b247e75a9 feat(typescript): improve docs generation (#19699) 2024-09-27 08:36:04 +02:00
Bruno Coelho
911455d206 [swift] small improvements (#19675)
* [swift] small improments

* [swift] small improments

* [swift] small improments

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass

* [swift] make CI pass
2024-09-27 13:11:08 +08:00
Poolmann
76aca6618f [Javascript] Add initialization of default vars to constructor (#19692)
* Add initialization of default vars to constructor

* Update samples
2024-09-27 13:03:25 +08:00
Joscha Feth
645626d2f5 style(typescript): add missing semi (#19689) 2024-09-26 16:06:56 +02:00
Luke Zappia
29c3b020e6 [R] Update R6 object documentation (#19679)
* Remove @export and titles from R6 methods

* Remove redundant methods docs from R api.mustache

* Build project
2024-09-26 13:56:22 +08:00
Simon Abbott
a6581e8e4c [typescript][typescript-node] Serialize/deserialize maps and nullable types correctly (#19362)
* Remove deprecated suppressImplicitAnyIndexErrors property from templates

* Add encoding / decoding tests for the typescript generator

* Add encoding / decoding tests for the typescript-node generator

* [Typescript][Typescript Node] fix deserializing complex types

This fixes deserializing of models that are composed with null,
undefined, or are inside of a map.

* Use more sensible `startsWith` implementation

* Remove use of magic number offsets

* Fix endsWith bounds checking

* Regenerate samples
2024-09-25 20:21:11 +02:00
William Cheng
9147e998ff update spring web in resttemplate to 6.1.13 (#19671) 2024-09-25 17:10:39 +08:00
Bruno Coelho
7f6b1306ed Add swift6 generator (#19621)
* [Swift6] create Swift6 generator

* [Swift6] create Swift6 generator

* Update vapor integration

* Update bitrise stack to Xcode 16

* [Swift6] tryped throws

* [Swift6] tryped throws

* [Swift6] combine deferred and api static method

* [Swift6] update readme

* [Swift6] fix some errors

* [Swift6] fix some errors

* [Swift6] fix some errors

* [Swift6] update docs

* [Swift6] update docs

* Use multiline comments for examples in csharp generator (#19079)

* multi

* gen

* Uncomment File::deleteOnExit (#19624)

* [Core/Rust Server] Check references in additionalProperties correctly when checking freeForm status (#19605)

* Check references in additionalProperties correctly

Handle references in additionalProperties correctly when determining free-form status

* Update samples

* [Rust Server] Handle arrays in forms (#19625)

* [Rust Server] Handle arrays in forms correctly

* [Rust Server] Add tests

* Update samples

* [Swift6] fix CI

* [Swift6] fix CI

* [Swift6] fix CI

* [Swift6] fix CI

---------

Co-authored-by: Liri S <reallyliri@gmail.com>
Co-authored-by: Beppe Catanese <1771700+gcatanese@users.noreply.github.com>
Co-authored-by: Richard Whitehouse <git@richardwhiuk.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-09-25 16:57:25 +08:00
Joscha Feth
17e0b7ca71 [typescript] fix: nullable enums should not serialize a null value to a string (#19540)
* fix: `nullable` enums should not serialize a `null` value to a string

* better solution?

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

Co-authored-by: Joscha Feth <joscha@feth.com>

* chore: Update circle_parallel.sh

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-09-24 23:46:32 +08:00
Louis Sullivan
e370b8130a Updated pyyaml and httptools in requirements template (#19666)
Co-authored-by: Louis Sullivan <Louis.Sullivan1@ibm.com>
2024-09-24 23:35:15 +08:00
Wiktor Kwapisiewicz
5732e2758f rust: Implement Display instead of ToString for enums (#19611)
Rust docs for `ToString` explicitly recommend implementing `Display`:

> This trait is automatically implemented for any type which implements the Display trait. As such, ToString shouldn’t be implemented directly: Display should be implemented instead, and you get the ToString implementation for free.

See: https://doc.rust-lang.org/std/string/trait.ToString.html
See: https://github.com/Nitrokey/nethsm-sdk-rs/pull/33

Signed-off-by: Wiktor Kwapisiewicz <wiktor@metacode.biz>
2024-09-24 21:07:12 +08:00
Sergei Lebedev
7d8eacc197 [cpp-qt-client] New makeOperationsVirtual option (#19613)
* Implementation of new `makeOperationsVirtual` option

* Make new parameter `true` by default

* Fix default value set and regenerate samples
2024-09-24 01:05:07 +08:00
Julian Vennen
78f2f7010f [PHP] Add missing qualifier for enum parameters (#19567) 2024-09-23 16:17:52 +08:00
William Cheng
98783f8161 use debug instead of warn,error to show less log (#19646) 2024-09-23 13:28:53 +08:00
William Cheng
565af33e24 Make it easier to specify triggers for Zapier (#19645)
* chore: add triggers

* update samples

---------

Co-authored-by: Stephen (Alex) Wallen <wallenstephen@outlook.com>
2024-09-23 12:03:44 +08:00
William Cheng
b42027da5d update aspnetcore samples 2024-09-23 02:00:54 +08:00
Richard Whitehouse
fb36272358 [Rust Server] Handle arrays in forms (#19625)
* [Rust Server] Handle arrays in forms correctly

* [Rust Server] Add tests

* Update samples
2024-09-23 00:20:48 +08:00
Richard Whitehouse
8821cf095e [Core/Rust Server] Check references in additionalProperties correctly when checking freeForm status (#19605)
* Check references in additionalProperties correctly

Handle references in additionalProperties correctly when determining free-form status

* Update samples
2024-09-23 00:19:27 +08:00
Beppe Catanese
e1a1d7ab5a Uncomment File::deleteOnExit (#19624) 2024-09-23 00:18:06 +08:00
Liri S
b4edca5ad4 Use multiline comments for examples in csharp generator (#19079)
* multi

* gen
2024-09-22 23:27:47 +08:00
David Riddervold Marconis
eebecc8646 [aspnetcore] Fix issue #19592 regarding swagger xml comments (#19593) 2024-09-19 13:10:14 +08:00
William Cheng
3240c5baf0 update org.springdoc:springdoc-openapi-webmvc-api, ui to 2.6.0 (#19620)
* update springdoc-openapi-starter to 2.6.0

* pre-populate info if its not defined

* update kotlins spring dependencies to newer version
2024-09-19 12:37:56 +08:00
un1024
410113fd6d [kotlin-spring] fix springdoc dependencies (#19579)
* fix springdoc dependencies for kotlin-spring

* fix suffix core to api.
2024-09-19 11:19:42 +08:00
Joscha Feth
171804eef7 feat(avro-schema): logical type support (#19607)
* feat(avro-schema): logical type support

* style: newline at eof
2024-09-19 09:34:51 +08:00
Joscha Feth
0f561b05cb chore: pull request template mentions an old current version (#19609)
Replaces `7.6.0` with `7.x.0`
2024-09-19 09:33:02 +08:00
Mike Phillips
34aeb16c5e Improve urllib3 semver flexibility (#19458) 2024-09-18 16:54:43 +08:00
Jonathan Ballet
40967a3d38 python: test with more modern versions (#19452)
Python 3.12 has been released in October 2023, it should be tested in
the CI.

Python 3.7 is not maintained anymore, removing it from the minimum
required version in `pyproject.toml` files.
2024-09-18 16:53:51 +08:00
William Cheng
b3e72feaa9 update java samples 2024-09-18 16:14:47 +08:00
Samuel Lijin
07787973e8 fix: make generated java readme use correct package (#19563) 2024-09-18 16:03:33 +08:00
Richard Whitehouse
d03c90cb97 [Rust Server] Handle additional properties being nullable (#19594)
With:
```
    sampleObject:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/SampleData'
      minProperties: 1
      description: Map of Charging data policy decisions.
```

and
```
    SampleData:
      type: object
...
      nullable: true
```

We currently generate: HashMap<String, SampleData>, which doesn't allow
null charging data entries. This MR changes this to be
`HashMap<String, swagger::Nullable<SampleData>>`, which thus will allow null data entries.

We do this by moving null-handling to the Java code - primarily `getTypeDeclaration()`.

Note, to some extent this is wrong. In this MR (and previously) we are treating
`nullable: true` as an extrinsic property (like required), whereas it should be an
intrinsic property (and thus `HashMap<String, SampleData>` is correct, but `SampleData`
absorbs the nullability.

This would be possible with this code:

```
enum ChargingData = {
   Null,
   Present {
       ...
   }
}
```

Which would remove the usage of https://docs.rs/swagger/2.0.2/swagger/nullable_format/enum.Nullable.html.

I haven't resolved this - and have instead done a more targeted fix.

This, along with some other crude code, creates a scenario where we need to
unpick whether something is null. I've left that, though flagged a TODO to tidy it up at some point.
2024-09-18 15:25:06 +08:00
Richard Whitehouse
f07f8bc997 [Rust Server] Add derive of Hash to enums (#19603)
* [Rust Server] Add derive of Hash to enums

* Update samples
2024-09-18 15:23:27 +08:00
Richard Whitehouse
cf5d17bbfe [Rust Server] Convert Rust comment to Mustache (#19595)
* [Rust Server] Convert Rust comment to Mustache

The comment about auth types supported by the generator shouldn't be
included in the generated code as it's confusing when the API doesn't
support the same auth types.

As such, we convert it from a Rust comment to a Mustache comment

* Update samples
2024-09-18 15:22:51 +08:00
Joscha Feth
0b084cd75d [typescript] fixture: broken Array<Array> (#19548)
* [typescript] fixture: broken `Array<Array>`

* Delete samples/client/others/typescript/builds/array-of-lists/models/L.ts

* fix: remove incorrect mapping

* chore: update generated code samples
2024-09-17 15:04:04 +02:00
Rasmus Zweidorff Iversen
fd85359548 [Java] [apache-httpclient] Fix issue with toString causing wrong value with collections (#19576)
* Fix issue with toString causing wrong value with collections

With collections, calling toString will result in the value becoming [a,b] instead of just a,b.

Using the existing apiClient::parameterToString method ensures it gets parsed correctly if it is a collection

* Updated samples

---------

Co-authored-by: Rasmus Zweidorff Iversen <rzi@jysk.com>
2024-09-17 17:57:35 +08:00
dependabot[bot]
30b1a74979 Bump actions/setup-go from 3 to 5 (#19597)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 5.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v3...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>
2024-09-17 10:42:21 +08:00
rankoz
ff1fe256d8 Fix dictionary/map deserialization (#19496) 2024-09-16 23:18:04 +08:00
Csaba Kozák
1b30c1995f [kotlin-client][multiplatform] add support for kotlinx.datetime.LocalTime (#19590) 2024-09-16 16:10:32 +01:00
Julian Vennen
3832cb4eb7 [PHP] Update enum tests (#19591) 2024-09-16 19:48:58 +08:00
Eric
425aa7db44 [Kotlin] Add a new additional property to configure Jackson's failOnUnknownProperties (#19506)
* [Kotlin] Add a new additional property to configure Jackson's `failOnUnknownProperties`

Default to false

* [Kotlin] Unconditionally import `com.fasterxml.jackson.databind.DeserializationFeature`

* [Kotlin] Refactor and add test
2024-09-16 17:59:17 +08:00
Julian Vennen
0c5142a6f6 [php-symfony] Fix #19562 (#19568) 2024-09-16 17:41:49 +08:00
Julian Vennen
a5384d42b4 [PHP] Remove NUMBER_ prefix from enum vars if a name is provided, show enum descriptions (#19555)
* Remove NUMBER_ prefix from enum vars if a name is provided, show enum descriptions

* Update php model tests
2024-09-16 17:23:11 +08:00
Eric Rolli
bbafeaed40 [Java Jersey] Update ApiClient.mustache Jersey doesn't allow entities in method DELETE (#19530)
* Update ApiClient.mustache

* Update ApiClient.mustache

Jersey doesn't allow request entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* Update ApiClient.java

Jersey doesn't allow entities in method DELETE

* jersey ApiClient.mustache invoke DELETE without entity if empty

* jersey ApiClient.mustache invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty

* jersey ApiClient invoke DELETE without entity if empty
2024-09-16 17:03:50 +08:00
Beppe Catanese
cf9de0bf94 Correct package name in test (#19581) 2024-09-16 16:52:19 +08:00
Beppe Catanese
243f501aef [GO] Go Server: preserve order of the routes as defined in the OpenAPI file (#19550)
* Add skipSortingOperations configuration option

* Skip sorting operations for go-server

* Add test verifyOrder

* Regenerate samples
2024-09-16 16:52:01 +08:00
Beppe Catanese
2f179fe41d [Go] Verify content of Go server generated files (samples) (#19504)
* Add Python tests to verify generates Go files

* Run Python tests during CI

* Remove Python tests

* Add Go tests

* Update workflow to run Go tests
2024-09-16 16:48:30 +08:00
Vasiliy Ditsyak
7dcaececf8 [BUGFIX][dart-dio] add unknownEnumValue to JsonKey (#19416)
* [BUGFIX][dart-dio] add unknownEnumValue to JsonKey

* review fix

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-09-15 16:35:24 +08:00
Vasiliy Ditsyak
abf94168e6 [BUGFIX][dart-dio] Align enum and enum_inline generation result (#19510)
* [BUGFIX][dart-dio] Align `enum` and `enum_inline` generation result

* review fixes

* Revert "review fixes"

This reverts commit 9d0b263f5c.

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-09-15 13:22:09 +08:00
Chirag Jain
740b971074 python-pydantic-v1: Return the primitive type in to_dict for anyOf models (#19488)
* python: Return the primitive type in to_dict for anyOf models

* Regenerate samples

* Update test
2024-09-13 18:50:55 +08:00
Joscha Feth
cd349dc5ea [avro-schema] fix enum logic (sanitize) (#19549) 2024-09-12 17:00:19 +08:00
Joscha Feth
5c6b8f3b16 docs: add hint about how to attach VSCode to the suspended Java process (#19551) 2024-09-12 16:59:57 +08:00
Nelson Vides
d02aae7469 Erlang Server – cowboy return types improvements (#19561)
* Declare the correct types for cowboy rest requests

* Adding myself to the erlang team
2024-09-12 16:59:06 +08:00
Hidetoshi
ca378b424a [typescript-axios] fix: enum datatype jsdoc (#19570) (#19571)
* fix: enum dataType JSDoc

* chore: generate samples
2024-09-12 12:59:40 +08:00
Lili Shi
0e763b096e [swift5] Fix Xcode 16 compilation crash with Extensions.swift generation (#19564)
* Update Extensions template for Swift5 generation

* update samples
2024-09-11 08:59:23 +01:00
Julian Vennen
1658264261 Regenerate php-nextgen-sample (#19556)
* Regenerate php-nextgen-sample

* Add missing changes
2024-09-10 14:32:30 +08:00
Rory Schadler
8171648eb4 fix(python,asyncio): multipart form data serialization (#19302)
* fix: object serialization for multipart requests

This PR is essentially
<https://github.com/OpenAPITools/openapi-generator/pull/18140> but for
the asyncio client.

* fix: int serialization for multipart requests

urllib3 handles serializing ints in post params (ref 1), while asyncio
explicitly does not (ref 2).

ref 1: <9316764e90/src/urllib3/filepost.py (L75-L76)>
ref 2: <https://github.com/aio-libs/aiohttp/issues/920>

* test: new fake multipart endpoint with files and body

* test: regression test for stringified body params

* fix: mypy tweak

* fix: FILES regeneration

* feat: object, int serialization for multipart reqs

Extends previous commits (and #18140) to cover the python-pydantic-v1
client as well.

* fix: use async with in test

* test: regression test for pydantic-v1-aiohttp

* test: add regression test to pydantic-v1

Also brings the second test in line with the first, patching
`urllib3.PoolManager.urlopen`
2024-09-09 17:43:25 +08:00
Evgeny Shichenko
0026e15030 fix kotlin spring boot configuration conflict (#19515) 2024-09-09 11:03:18 +08:00
William Cheng
8511a533d6 add erlang-server-deprecated for fallback after refactoring (#19547) 2024-09-07 17:18:06 +08:00
Nelson Vides
596d446f54 Erlang server overhaul (#19465)
* Upgrade erlang-server code generation and fix is_authorized crashes

* Introduce structured logging

* Improve general formatting

* Update generated files

* Enable erlang server on CI

* Add echo-server testing to CI

* Require OTP27 explicitly in the generated rebar.config file

* Rework handler and API

With this work, json validation becomes optional, fully implemented in
the `_api` module as it was before, but without being forcibly called by
the `_handler`. It is instead left as optional for the user to take
advantage of the exposed callbacks. Jesse also chooses draft-06 as a
default, but these can be chosen manually by the user too, as long as
jesse implements them.

`_handler` also becomes lighter, it now handles all mime types
transparently by forwarding to a user-given module that must implement
`accept_callback/4` and `provide_callback/4` as described in the
`_logic_handler` callbacks. These will simply be the return values of
cowboy_rest's `content_types_accepted` and `content_types_provided`
respectively, and should simply comply with their defined APIs. They
only get two parameters extending the behaviour, so that the user-given
callback can pattern-match on them: the path prefix of the logic
handler, and the operationID of the call.

* Fix return types for provide_callbacks

* Upgrade jesse to incur no dependencies

The less dependencies the built code requires the better.

* Fix dialyzer errors in the generated code

* Apply stronger dialyzer checks
2024-09-07 16:45:42 +08:00
Kresten P. Vester
a98f45b4ac [Java][Spring]Update dependencies to remove vulnerability in org.springframework:spring-webmvc (#19533)
* Update dependencies to remove vulnerability in org.springframework:spring-webmvc

* Updated samples
2024-09-07 16:26:42 +08:00
Joscha Feth
14e691b9c9 docs: link to existing documentation for snapshot builds and locally built JARs (#19544)
Follow-up from https://github.com/OpenAPITools/openapi-generator/pull/19497 since https://github.com/OpenAPITools/openapi-generator-cli/pull/794 has been merged.
2024-09-07 16:12:24 +08:00
devhl-labs
195438d1e7 version bump (#19545) 2024-09-07 16:10:47 +08:00
William Cheng
a93a6d5a35 Add dotcom-monitor to the sponsor list (#19546)
* add dm to the sponsor list

* update
2024-09-07 16:06:21 +08:00
David Omid
2bc0e5f745 [typescript-fetch] Fixed issue where unique arrays (sets) of primitive values aren't initialized properly (#19521)
* Fix for https://github.com/OpenAPITools/openapi-generator/issues/19520

* Removed redundant Array<any> cast

* Fixed modelGeneric.mustache

* Updated samples
2024-09-05 15:43:34 +02:00
Tero Hagström
2f54a2fb11 Fix for #15736 [TYPESCRIPT-FETCH] Subclassing components using discri… (#19524)
* Fix for #15736 [TYPESCRIPT-FETCH] Subclassing components using discriminators fails to convert subclasses to JSON.
Added similar discriminator handling to ToJSON as was already in place for FromJSON.
The actual files changed are typescript-fetch/modelGeneric.mustache and typescript-fetch/apis.mustache.
Also, adjusted FromJSON a bit in an attempt to support multiple hierarchical levels of discriminators.
And fixed an issue with calling FromJSON from the map() function, which caused the index parameter getting inadvertently passed as the ignoreDiscriminator parameter.
Additionally, fixed failing "mvn integration-test -f samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/pom.xml"
Moreover, added forceConsistentCasingInFileNames:false into tsconfig.json to make tests compile on OsX.

* Rolled back the changes related to the map() function calls in favor of using ToJSONTyped instead, as that is in line with how FromJSON is already implemented.
2024-09-05 15:29:44 +02:00
William Cheng
e914c4098b update samples 2024-09-04 16:42:41 +08:00
Nicklas Wiegandt
e4112c5aca feat (JAVA SPRING RESTCLIENT) 19406: Add single request parameter for Spring RestClient (#19430)
* feat (JAVA SPRING RESTCLIENT) 19406: Add single request parameter for Spring RestClient

Closes #19406

* chore (JAVA SPRING RESTCLIENT) 19406: Add new sample to jdk 17 tests

* fix (JAVA SPRING RESTCLIENT) 19406: Fix sample build
2024-09-04 16:17:13 +08:00
Rugal Bernstein
f54b0e25a4 Remove appendRequestToHandler (#19500) 2024-09-04 16:03:31 +08:00
Horace Li
42d98e2526 [Java Libraries] Jakarta Validation API support useJakartaEe flag (#19469)
* Jakarta Validation API support useJakartaEe flag

* Jakarta Validation API support useJakartaEe flag
2024-09-04 15:57:55 +08:00
Joscha Feth
f40f72cea8 [typescript] fix: explode: true should yield appended query params (#19519)
* [typescript] fix: `explode: true` should yield appended `query` params

* fix: object keys should be `set`
2024-09-04 08:16:21 +02:00
Dan Goslen
8678ee8a1f [Typescript:Axios] Fix withInterfaces and usSingleRequestObjectParam (#19467)
* Support withSingleRequestParameter along with withInterfaces

* Add sample and config for combination

* Re-generate samples
2024-09-03 17:22:11 +02:00
Matteo Molinari
fb1c2f3483 [Bugfix][Java] Fixed jersey clients for multiple file upload (#19476)
* Fixed jersey3 client for multiple file upload

* Updated sample

* Fixed typo

* Fix

* Fix for jersey2
2024-09-02 17:25:54 +08:00
William Cheng
c733bb69a2 [typescript-angular] fix: when model property name is sanitized, use instead original property name within quotes in mustache template (#19508)
* fix: typescript-angular -> when model property name is sanitized, use instead original property name within quotes in mustache template

* fix: updated samples

* chore: added comment for hasSanitizedName

* add original tag, add dummy model for test

* update samples

---------

Co-authored-by: Davide Diaconu <davidediak@gmail.com>
2024-09-02 17:15:58 +08:00
jpfinne
b228133a20 [java] Fix issue #17472 when using schemaMapping for models in collections, not compilable code with @Valid is generated (#19093)
* Fix issue 17472

* Avoid cast exception
2024-09-02 17:03:08 +08:00
William Cheng
1776c000ed update C# restsharp to 112.0.0 (#19507) 2024-09-02 16:52:54 +08:00
Sobhan Sharifi
0643f526af Fix ObjectSerializer::isEmptyValue to not consider "0" as "" (#19472) 2024-09-02 16:03:36 +08:00
Chris McEvoy
5b96e85fd5 bugfix: use the correct key when generating auth example in readme (#19492) 2024-09-02 15:38:57 +08:00
Beppe Catanese
4ed8c70a92 Remove unused go-server-required (#19505) 2024-09-02 15:36:42 +08:00
Brenton Bostick
abd19dd253 fix typo woking -> working (#19498) 2024-09-02 15:34:42 +08:00
Joscha Feth
be618ec168 docs: add hints about how to use snapshot version of generator-cli (#19497)
* docs: add hints about how to use snapshot version of `generator-cli`

* docs: simplify

* style: indentation
2024-08-30 16:26:00 +02:00
Joscha Feth
7510e6bbf8 [Typescript] Generate oneOf schemas as type unions (#19494)
* Add oneOf model for Typescript generator

* Update import procces: For oneOfs only import $refs within the oneOf

* Remove new line after description

* Update samples

* Typescript: Update model.mustache

* Typescript: Remove emun from oneOf models

* Update samples

* Typescript oneOf: add discriminator and update deserialize procces

* Typescript: update tests

* Typescript oneOf: move type mapping to models

* Typescript: Update samples

* Typescript: Update type of mappig

* Typescript: Update type of mappig

* Typescript oneOf: update deserializing logic

* Typescript: Update samples

* Revert "[typescript] fix: `enum` can not receive stringified class name (#19481)"

This reverts commit 4238f17322.

* [typescript] chore: update fixtures

---------

Co-authored-by: ksvirkou-hubspot <ksvirkou@hubspot.com>
2024-08-30 16:20:18 +02:00
Joscha Feth
1518237c25 [typescript] fix: deno: type exports for isolatedModules (#19484) 2024-08-29 13:56:02 +02:00
Joscha Feth
4238f17322 [typescript] fix: enum can not receive stringified class name (#19481)
* fix: `enum` can not receive stringified class name

* chore: update generated code samples
2024-08-29 13:54:57 +02:00
Eric
dfc381c22f [Java] Add a new additional property to configure Jackson's failOnUnknownProperties (#19271)
* [Java] Add a new additional property to configure Jackson's `failOnUnknownProperties`

* Move `FAIL_ON_UNKNOWN_PROPERTIES` property to JavaClientCodegen

* Template `FAIL_ON_UNKNOWN_PROPERTIES` for other libraries beside retrofit2

* Default `failOnUnknownProperties` to false for all Java Client libraries

* Fix integration tests

Add the `failOnUnknownProperties: true` additional properties to generate the
expected mapper
2024-08-29 13:25:25 +08:00
Joscha Feth
082382cc1e [typescript] use const for middleware symbol (#19478)
* style: use const for `middleware`

* chore: update generated code samples
2024-08-28 17:52:26 +02:00
Anderson de Borba
85763cdb08 [java] Use @JsonFormat instead of @JsonSerialize for bigDecimalAsString property (#19322)
* [java] Use @JsonFormat instead of @JsonSerialize so that JsonGenerator.Feature.WRITE_BIGDECIMAL_AS_PLAIN is respected and generates a String using BigDecimal#toPlainString instead of BigDecimal#toString

* Only add Jackson @JsonFormat if properties serializeBigDecimalAsString and jackson are enabled

* Do not verify if jackson is available when mapping imports as the property is not evaluated yet

* Removed unused JsonSerialize and ToStringSerializer
2024-08-28 16:22:13 +08:00
William Cheng
e69fb86957 remove unused file 2024-08-28 15:46:06 +08:00
William Cheng
9579122945 Better handling of parameters in inline model resolver (#19460)
* add tests for parameter ref of oneOf

* update samples

* better handlding of parameters in inline model resolver
2024-08-28 15:31:04 +08:00
JP Moresmau
d6780e7d43 Remove extra bracket to fix compilation (#19464) 2024-08-28 15:30:15 +08:00
Matthias Schwarz
4330b2f46d [typescript-fetch] Add option to generate validation attributes of model properties (#19448) 2024-08-27 14:13:59 +02:00
dependabot[bot]
aae3ab3154 Bump micromatch from 4.0.5 to 4.0.8 in /website (#19444)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-27 17:19:11 +08:00
condorcorde
fe381e2199 Support multiple files (#19449) 2024-08-26 15:39:15 +08:00
aakash-dev-maersk
f13a11b53c Add support for global token based auth for k6 script generation (#19348)
* Add global token based auth support (basic, bearer) for k6

* config files and generated code files after the changes

* Handle empty or null auth at path level

* files changed after update with master and run build
2024-08-25 23:40:38 +08:00
Richard Whitehouse
2b40a2c058 [Rust Server] Add auto-generated CLI Client (#19392)
* [Rust Server] Add auto-generated CLI tool

* [Rust Server] Test multiple path parameters

* [Rust Server] Test boolean parameters and apostrophes

* [Rust Server] Test operation with two boolean parameters with same first letter

* [Rust Server] Test apostrophes in operation summary

* Update samples

* [Rust Server] Fix build errors with OpenSSL

* Update samples

* Update samples
2024-08-24 23:57:03 +08:00
ふぁ
69cce249f6 [python] fix content_type deserialize (#19317)
* [Python] fix: #19285

* [python] update sample

* [python] add test

* [python] remove test
2024-08-24 23:40:15 +08:00
Victor Mosin
7a7c8c19ab [Kotlin][okhttp] replace okhttpclient with callfactory (#19422) 2024-08-22 21:19:32 +01:00
William Cheng
0f294a5129 use gitHost in python pyproject template (#19421) 2024-08-22 16:09:53 +08:00
Martin Boos
ae069e6840 [Python] Update python-pydantic-v1 generator to respect the --git-host argument (#19404)
* Update pyproject.mustache

chore(pyproject): replace static `github.com` with variable `{{{gitHost}}}`

* chore: follow contribution guidelines
2024-08-22 15:52:36 +08:00
mohamuni
deb007b976 fix regex breakage in unmarshaljson function (#19410) 2024-08-22 15:12:54 +08:00
julianladisch
87704b28c0 Upgrade commons-io dependency to latest 2.16.1 (#19414) 2024-08-22 14:59:20 +08:00
Bruno Coelho
b3f74c7c4f [typescript][angular] move app description from license info to readme (#19397)
* [typescript][angular] move app description from header license info to readme

* [typescript][angular] move app description from header license info to readme
2024-08-21 13:51:39 +02:00
Richard Whitehouse
eda4547f15 [Rust Server] Fix up model generation (#19363)
* [Rust Server] Fix up model generation

- Correctly generate anyOf/oneOf models
- Fix up ToString / FromStr support
- Disable PartialOrd generation for anyOf/oneOf models
- Generate models for inline enums
- Support enums in headers, and vectors of models in headers

* [Rust Server] Add test for anyOf with additional properties

* Update samples

* [Rust Server] Tidy up logging
2024-08-21 15:14:52 +08:00
Rory Schadler
cc98333d87 feat(python): handle multiple file parameters (#19329)
* test: fix broken python test

* fix: handle multiple file parameters

Previously an array of files was not handled correctly, despite the type
annotation implying it was.

* feat: handle filename,filedata tuples in file param

This allows for users to pass filenames with their data in file params,
which is useful for multipart formdata requests. Without this, the list
of files added in the previous commit would have the same filename for
all files (the parameter name).
2024-08-21 15:09:10 +08:00
William Cheng
c2472b03b6 update doc to v7.8.0 2024-08-19 16:19:49 +08:00
William Cheng
91da2fd240 Prepare 7.9.0 snapshot (#19386)
* Revert "v7.8.0 release (#19385)"

This reverts commit 6bdc452f92.

* update samples for v7.9.0-snapshot
2024-08-19 16:14:51 +08:00
William Cheng
6bdc452f92 v7.8.0 release (#19385) 2024-08-19 14:01:58 +08:00
William Cheng
fc8b7d92c8 Fix Reactive Spring build.gradle.kts (#19382)
Co-authored-by: Erik VanderWerf <eski787@gmail.com>
2024-08-18 18:34:16 +08:00
Richard Whitehouse
df2b4210c9 [Rust Server] Sort operations so that the ones with fewest params come first (#19368)
* [Rust Server] Sort operations so that the ones with fewest params come first

This resolves things correctly per
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.3.md#pathsObject
- "When matching URLs, concrete (non-templated) paths would be matched
before their templated counterparts."

* Update samples

* [Rust Server] Fix tabs vs spaces

---------

Co-authored-by: Rob Day <Robert.Day@metaswitch.com>
2024-08-18 18:01:19 +08:00
Kensuke Taguchi
fd62e3897b [kotlin-client] Add @JsonEnumDefaultValue annotation to enum class (#19380) 2024-08-18 08:27:43 +01:00
Richard Whitehouse
0a5c99739a [Rust Server] Allow configuration of multipart/form attachment size limit (#19371)
* [Rust Server] Allow configuration of multipart/form attachment size limit

multipart 0.14+ imposes a 8MB size limit on multipart/form bodies.

This allows that limit to be configured. The default is left as is.

This also improves error messages produced when handling multipart/form bodies.

* Update samples
2024-08-17 16:02:20 +08:00
William Cheng
bb831dad9a Make the rust hyper client Send so it can be used in rust threads more easily (#19375)
* Add externCrateName property to rust hyper client

This is follows the lead of the rust hyper server generator and provides
an externCrateName. This is because the crate name used for importing
can be different from the package name, because dashes `-` get converted
to underscores `_`.

This allows us to write example code in rustdoc that compiles
successfully.

* Get the rustdoc examples to actually compile

* Make rust hyper client thread safe

* Fix compile time issue with reqwest client test

* Add a test for thread safety

* Generate rust hyper samples

* Use https for petstore api to fix client tests

http://petstore.swagger.io/v2 is 301 redirecting to
https://petstore.swagger.io/v2 and this is breaking posts to the API.
When the client recieves a redirect it does not resend the POST data,
instead it switches to GET. This is in line with how browsers behave
when encountering a 301 redirect on a POST request.

* Make rust hyper client structs `Sync` too

This trait is also helpful in making the api work well with threads.

* Use a getCrateName function instead of adding more state

* update samples

---------

Co-authored-by: Krishna Rajendran <krishna@emptybox.org>
2024-08-17 16:01:11 +08:00
Richard Whitehouse
172fafe674 [Rust Server] Fix server-writing docs for rust-server (#19367)
* Fix server-writing docs for rust-server

Fix broken link in generated README for rust-server.

* Update samples

---------

Co-authored-by: Keith Wansbrough <Keith.Wansbrough@metaswitch.com>
2024-08-17 15:33:58 +08:00
Richard Whitehouse
fbe6c11903 [Rust] Ensure all features build as part of CI / Upgrade to Frunk 0.4 (#19364)
* [Rust] [CI] Build all features as part of CI

* [Rust Server] Update to frunk 0.4

* Update samples
2024-08-17 14:17:36 +08:00
Richard Whitehouse
caeb83c845 [Rust Server] Fix homepage URL in Cargo.toml (#19365)
This fixes a missing quote in Cargo.toml, which causes validation errors
2024-08-17 14:16:25 +08:00
Aleksander Baranowski
ba1d7255d0 fix mixed indent + move do to same line as start of loop (#19373) 2024-08-17 14:15:00 +08:00
William Cheng
a6a75e3501 Better handling of backtick in pattern (#19358)
* use x-go-datatag in go client model template

* add logic to handle backtick
2024-08-16 18:04:47 +08:00
Tim Quinn
cd02426648 Suppress Pattern annotation on property of type byte array (#19346)
* Suppress Pattern annotation on property of type byte array

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

* Straggler files from generated samples

* Add new format test to workflows

---------

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
2024-08-15 17:09:44 +08:00
Richard Whitehouse
024bbb7784 [Rust Server] Improve RFC 13341 compliance for multipart/related (#19355)
* [Rust Server] Improve RFC 13341 compliance for multipart/related

* Update samples
2024-08-15 17:04:59 +08:00
Richard Whitehouse
be09f8a868 [Rust Server] Use swagger/multipart_related support (#19354)
* [Rust Server] Use swagger/multipart_related support

* Update samples
2024-08-15 17:03:59 +08:00
llendi
38ebf0bb4e [Java][OkHttp-Gson] fix: free form query parameters for okhttp-gson (#19226) 2024-08-15 17:02:59 +08:00
martin-mfg
05c10934ce docs: update versions, fix links, remove broken camel.xml, update download counts (#19356)
* manually update version in documentation, remove camel.xml

... because it has the wrong generator version, it has the wrong generator name (should be "java-camel"), the generated code doesn't compile - and then I didn't check further

* improve automatic version updating

* fix one more Readme link

* update docker stats again
2024-08-15 17:02:34 +08:00
Richard Whitehouse
daf52229e3 [Rust Server] Refactor Mustache templates for request/response body handling (#19347)
* [Rust Server] Refactor Mustache templates for request/response body handling

* Update samples
2024-08-14 15:25:08 +08:00
William Cheng
8f7354a2a2 revert gradle extension version (#19351) 2024-08-14 15:22:10 +08:00
Fei Wang
2bf2d9bb56 Include licenseInfo for all the generated java code files (#19273)
* Include license info for all the generated java code files

* Re-base generate
2024-08-14 15:13:42 +08:00
Richard Whitehouse
b8001323f6 [Core] Consolidate Operation ID generation (#19339)
* [Core] Consolidate Operation ID generation

* Update samples
2024-08-14 15:12:26 +08:00
martin-mfg
58dd0305ce [JAVA] use query parameter apikey if present (#19334)
* Fix #16362

* Update samples

* Undo formatting changes

* Revert whitespace changes in samples

* make it work

---------

Co-authored-by: Jason Boileau <jason@boileau.dk>
Co-authored-by: Jason Boileau <spraot@users.noreply.github.com>
2024-08-14 15:02:37 +08:00
Sylvain Joubert
d55525fbc4 [C++][Pistache] Fix 'unused-parameter' warning on Helpers.h file (#19315) 2024-08-14 14:34:11 +08:00
Sylvain Joubert
8af3ff2828 [C++][Pistache] Add error handlers overload taking the response object (#19314)
This allows overriders to have full access to the response object and
more finely control the error handling behavior.
For example, this enables the specification of a proper Content-Type in
case of custom format responses (application/json, ...)
2024-08-14 14:31:55 +08:00
condorcorde
e70a9564e0 [PowerShell] Fix missing Content-Type header on a 204 response (#19340)
* Allow for binary response content

* AllowNull for $ContentTypes

* Update PSApiClient.ps1
2024-08-13 15:20:46 +08:00
William Cheng
d340e15f1a update dart samples 2024-08-13 15:19:29 +08:00
Brenton Bostick
03d8c30183 fix invalid syntax in gitignore (#19341)
gitignore only supports line comments, not in-line comments
2024-08-13 15:11:30 +08:00
GeorgeFkd
2107e9ef8f Added support for openapi-normalizer in the online version. (#19336)
* Added support for openapi-normalizer in the online version with a minimal test.

* removed comments and formatted code
2024-08-12 17:49:34 +08:00
Gergely Imreh
fdd2dc9651 python-asyncio: update retry factors for actual exponential retries (#19337)
* python-asyncio: update retry factors for actual exponential retries

As per the `aiohttp-retry` library's code[^1], the timeout is

```python
timeout = self._start_timeout * (self._factor ** attempt)
```

This means the previous setting with "start_timeout=0.0" would have
always just retried right away (0 timeout) regardless of the "factor" value,
and also, "factor=0.0" would never have increased the timeout, rather it
would have resulted in a 0 timeout regardless of the value of "start_timeout".

This double-zeroing effectively rendered exponential backoff to nothing (rather than
"retries" number of retries in quick succession.

The update is a quick fix to set the same default as in `aiohttp-retry`. In
the future this should likely be configurable (through extra Configuration settings perhaps?),
as not all APIs are created equal, but this works as a quick fix for making retries more effective.

[^1]: ba2169891f/aiohttp_retry/retry_options.py (L38-L65)

* updated example
2024-08-12 17:35:00 +08:00
Franck Arnulfo
d1b9f9284a Fix issue https://github.com/OpenAPITools/openapi-generator/issues/19326 (#19328)
Try to fix issue https://github.com/OpenAPITools/openapi-generator/issues/19326
2024-08-12 15:26:11 +08:00
devhl-labs
5166765724 changed default sorting of samples (#19335) 2024-08-12 15:04:50 +08:00
devhl-labs
ad8a7d2a3c [csharp] Change sorting default (#18942)
* change sorting default

* implement sorting options for all libraries

* rebuild tests

* build samples
2024-08-12 00:33:18 +08:00
condorcorde
6da3dc5c10 Allow for binary response content (#19331) 2024-08-11 22:48:03 +08:00
Tim Quinn
07baddfe12 Minor change to Helidon version handling allowing snapshot versions (#19320)
* Minor change to Helidon version handling

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

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

Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>

* Review comments: fix typo in comment

---------

Signed-off-by: Tim Quinn <tim.quinn@oracle.com>
Co-authored-by: martin-mfg <2026226+martin-mfg@users.noreply.github.com>
2024-08-09 15:59:57 +08:00
Richard Whitehouse
ad7acc30eb [Rust/Rust Server] Fix example/test code (#19318)
* [Rust Server] Fix code so examples compile

Zero length arrays don't correctly type infer, so if we have no scopes, we need to not create a empty array

We need an authentication middleware - without it the code doesn't compile.

* Update samples

* [Rust Server] Remove trailing whitespace

* Update samples

* [Rust Server] [CI] Build all targets

* [Rust] Fix reqwest test
2024-08-09 15:54:58 +08:00
William Cheng
4b493358a8 update php samples 2024-08-07 18:09:11 +08:00
Stefan Koppier
aea536027c [bugfix][kotlin-wiremock] fix problems with range responses (#19309)
* [kotlin] Target correct library in jvm-spring-webclient sample

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

* [kotlin-wiremock] fixed issue 7193

* [kotlin-wiremock] fixed wrong implementation of fromResponse

* [kotlin-wiremock] forbidden API

* [kotlin-wiremock] fixed wrong workflow trigger
2024-08-07 18:04:05 +08:00
Pavel Miller
908eddea0b Issue-19220: processing schema name is added to the list with names checked at recursing processing, so it prevent to endless recursive execution (#19221) 2024-08-07 17:48:14 +08:00
Şerban Ghiţă
539aab05a7 [BUG] PHP Client - ObjectSerializer::buildQuery flattens array params resulting invalid URL params (param=a&param=b vs param[]=a&param[]=b) #19233 (#19236)
* [BUG] PHP Client - ObjectSerializer::buildQuery flattens array params resulting invalid URL params (param=a&param=b vs param[]=a&param[]=b) #19233

* Added tests (replaced old provider data). This looks like a breaking change

* Fix space

---------

Co-authored-by: Serban Ghita <serban.ghita@virta.global>
2024-08-07 17:15:59 +08:00
Lajos Szoke
edc60db531 Add ConfigCat to the Companies/Projects using OpenAPI Generator section (#19304)
* Add ConfigCat to the Companies/Projects using OpenAPI Generator section

* Adding ConfigCat to the users.yml and adding a logo
2024-08-07 17:07:24 +08:00
Bruno Coelho
b803af5ddf [typescript][angular] move api version from license info to readme (#19310)
* [typescript][angular] move api version from header license info to readme

* [typescript][angular] move api version from header license info to readme
2024-08-07 10:12:57 +02:00
congyuluo
f8a5051d9c Refactored Identifiers (#19270) 2024-08-05 18:20:54 +08:00
William Cheng
eff3e6df53 [cpp-qt] Add option for download progress, add test (#19297)
* add option for download progress, add test

* add cmake file

* remove test

* update
2024-08-05 16:06:36 +08:00
Jazzco
ffd03b7e51 [cpp-qt-client] Qt progress info (#18950)
* Update HttpRequest.cpp.mustache

Use stable 4-parameter connect

* add generated files

* Revert "add generated files"

This reverts commit 1d4e78aa0d.

* catch download progress in HttpRequest and pass it to api

* Update HttpRequest.cpp.mustache - clean mixed in changes

Removed additional changes from other PullRequest

* Update HttpRequest.cpp.mustache - replaced tabs by spaces

* Update api-header.mustache - replaced tabs by spaces

* Update HttpRequest.h.mustache - replaced tab by spaces

* ran step 3 from Linux

* changed downloadProgress to -nickname-DownloadProgress and added it to all regions where execution finish is connected

* ran step 3

* replaced tab by spaces

* ran step 3

* activate tracing to detect link issue

* removed redundant connects and encapsulated changes in {{addDownloadProgress}}

* added generated files from step 3

* remove cli-option for httprequest - this should be always there

* added files from step 3

* improved name

* Update samples-cpp-qt-client.yaml - fix parameter order

* Update samples-cpp-qt-client.yaml
2024-08-05 14:40:14 +08:00
William Cheng
25936b4198 Add route4me to the sponsor list (#19294)
* update samples

* add route4me to the sponsor list
2024-08-05 13:07:56 +08:00
Tim Quinn
8f1d59fb0a Support Helidon SE 4 generation (clients and servers) (#19150)
* Save work-in-progress

* Incoming param handling generating well exc. for file upload

* Revise generated test for v3 vs v4 differences

* Leave details of multi-part handling to the user for now

* change default version to use the highest version known

* SE client changes for Helidon 4

* A few fixes; add new v4 SE samples

* Fix v3/v4 routing prep

* Improve version handling if web site is inaccessible; add test

* Reworking parameter conversion and required and validation handling

* Add generation of a return value record per response for each operation

* Improvements to the result record generation

* More changes

* Remove change in whitespace in v3 output

* More progress on parameter handling

* WIP - refactor parameter-returning methods to inner class along with return records

* Reorg of op helpers

* Use no-op for handling map in path, query, header, cookie - need to revise later

* Binary form param handling

* Clean-up and consistency check bt useAbstractClass and not

* Improve result builders

* Add new samples files

* Fix a few issues

* Update samples after rebase; add build steps for v3 and v4 uac github actions

* Remove v3 se useAbstractClass test - creates some bad code

* Generated doc updates

* Fix missing newline

* Improve Javadoc for generated Result; add convenience Result.send method

* Add bean val. for body param if needed

* Restructure generated records for declared responses; add Generated annotation selectively

* Fix typo

* In sample generation, force a stable generatorVersion value to avoid confusing builds and up-to-date samples checking

* Fix up white space in older generation

* Generate PartsUtils only with useAbstractClass = true

* Adopt some review comments; more to come

* Review comments; notably, switch to using the first path segment to group operations rather than the tags items

* Improve status handling a bit

* Add new generated sample files

* Add missing new samples files

* Quite a few updates, esp. to generated samples

* New config file for sample

* Updates samples

* Add updates to .openapi-generator/FILES contents
2024-08-04 22:06:30 +08:00
Filipe Silva
af94bde2ce #19176 fix Task.Result directly blocks thread (#19231)
- async should never be blocked on the ApiClient
 To fix we invert the logic and use Task as base and keep consistency, we expect and wait result only on synchronous calls.
2024-08-04 18:33:33 +08:00
Daniel Seiler
2c2d6905cb fix: remove "hack" to skip schema-mapped models (#19191)
That method relied on the faulty assumption that toModelFilename does not consider mappings, which is not the case for multiple generators.
2024-08-04 18:16:50 +08:00
keenangraham
aa7c62abb7 [BUG] [Python] Fix autoset constants Python code for default query string value (#19138)
* _query_params is list, not dict

* Add test
2024-08-04 18:13:53 +08:00
devhl-labs
aaeed0f5bd use global keyword (#19257) 2024-08-04 17:55:57 +08:00
devhl-labs
2bc4a16af3 [csharp] Convert numbers to long when min/max is too big (#19290)
* convert numbers to long when min/max is too big

* handle exclusives
2024-08-04 17:50:54 +08:00
Tanmay Mohapatra
4c163fe4b0 [Go] Fix deepObject serialization that are anyOf (#19090)
* [Go] Fix deepObject serialization that are anyOf

Updates the go client generator to have the generated struct for anyOf types conform to `MappedNullable` interface.
Fixes query params serialization for deepObjects that are of `anyOf` type.

Implements the suggestion in https://github.com/OpenAPITools/openapi-generator/issues/19085

* check parameter style for deepObject serialization

* generate samples for go-echo-external-refs-test

* move test back to http port

* restrict to anyof models with discriminator

* update test

* add some tests

added some tests to `modules/openapi-generator/src/test/resources/3_0/go/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml` and regenerated the samples
2024-08-04 17:43:09 +08:00
Ivan Vasheka
e0f12e9bf4 [Kotlin] Update formParams.mustache to have List of MultipartBody.Part (#19287)
* [Kotlin] Update formParams.mustache to have List of MultipartBody.Part

* Update formParams.mustache

* chore: removes new line
2024-08-02 12:03:10 +01:00
Dieter Eickstaedt
484b87f22a fix: Template contains unconditional ": Serializable" which creates wrong derive clause on data classes which have a parent as well as are serializable. (#19283) 2024-08-01 14:18:46 +01:00
Emilien Escalle
7f551bb9a0 feat(php-nextgen-client): add support for streaming (#19192)
Signed-off-by: Emilien Escalle <emilien.escalle@escemi.com>
2024-07-31 17:32:10 +08:00
Stephen Zapp
4874a0bce7 [GO] fix generated variable names when no discriminator is used with 'oneOf' (#19183)
* fix oneOf var names when no discriminator is used

* add OneOfWithComplexType to Go petstore schema

- an array of strings variant should end up with the same valid name
whether `useOneOfDiscriminatorLookup` is `true` or `false`
2024-07-31 17:16:24 +08:00
condorcorde
4bf8e4a6ff Convert relative to absolute path (#19269) 2024-07-31 17:10:16 +08:00
Jim Schubert
28a902352c Remove from pingable lists (#19272)
I have not been active in the project for nearly 4 years, but remain
as a pingable maintainer on the readme. This is updating the readme to be
accurate. I only spend around 1-3 hours every other month lately on open-source,
so it's just an issue of time/availability.
2024-07-31 16:37:27 +08:00
William Cheng
9a18fc1857 update docstring in go client, better code format (#19268)
* update docstring in go client, better code format

* update samples
2024-07-30 21:17:21 +08:00
Vikrant Balyan
5d48d224d9 [Go] Set Default Values for Required Variables when a default is defined (#19232)
* use default values for required vars when available

* update tests to existing config file

* cleanup OAS test

* Remove setting value in Get.

* Use Pascal Case for variable naming in Getter Function

* add a CLI option

* add a CLI option

* add a CLI option
2024-07-30 18:32:54 +08:00
Adam Helbling
753502c255 Update ApiClient.mustache for retrofit2 + rxJava3 support to use official square implementation of rxJava3 adapter (#19266) 2024-07-30 18:30:50 +08:00
condorcorde
16b28118cc Conditionally force array context when converting to JSON (#19262) 2024-07-30 18:13:29 +08:00
Jérôme Prinet
d12cc0b63a Migrate from Gradle Enterprise to Develocity (#19264) 2024-07-30 00:47:45 +08:00
VelorumS
f082a35d2e [Python] fix object arrays giving mypy error "Incompatible types in assignment" in to_dict() (#19223)
* [python] mypy fix for multiple arrays of objects

* [python] mypy test for multiple arrays of objects
2024-07-29 16:34:27 +08:00
devhl-labs
755b2efee4 [csharp][generichost] Support response ranges (#19256)
* support response ranges

* revert unintended change

* update try deserialize methods
2024-07-29 16:33:27 +08:00
martin-mfg
2958107a6a [JAVA-CAMEL] revert broken xml change (#19259)
* revert problematic java-camel XML change

* generate samples
2024-07-29 16:32:33 +08:00
Bruno Coelho
42e8f762ac [Kotlin][Client] Encode default values with kotlinx serialization (#19253)
* [Kotlin][Client] Encode default values with kotlinx serialization

* [Kotlin][Client] Encode default values with kotlinx serialization
2024-07-29 08:42:57 +01:00
VelorumS
131fd518fb remove 3.7 in github python-pydantic-v1 workflow (#19239) 2024-07-27 23:30:08 +08:00
aspectivo GmbH
9cfd26e7a5 Adding user aspectivo (#19250)
* Update users.yml

Adding aspectivo  users.yml

* Add files via upload

Adding aspectivo logo file
2024-07-27 23:28:07 +08:00
Peter Storch
37afe57f0f [Kotlin][Spring] fix #19244 integer enum (#19248)
* [Kotlin][Spring] fix #19244 integer enum

* fix embedded array enum
2024-07-26 16:02:34 +01:00
Peter Storch
c93ec54a16 [Kotlin][Spring] fix build.gradle.kts and pom.xml for SpringBoot 2.x (#19246) 2024-07-26 14:06:26 +01:00
Venkatesh Dayananda
3c880719e1 [julia] Add support for style, explode in query params (#19238)
* set style and explode

* update client

* fix

* set the newer version
2024-07-26 17:01:14 +08:00
Makoto Aoyama
fb023b192b [swift5]Add array validation rule (#19242)
* Add ArrayRule

* Run ./bin/utils/export_docs_generators.sh

* Add ArrayValidationErrorKind

* Add validation method

* Run ./bin/generate-samples.sh

* Add array rule property

* Rename minItem and maxItem => minItems and maxItems

* Fix uniqueItems template

* Tweaks

* Add sample property

* Run ./bin/generate-samples.sh
2024-07-26 07:53:59 +01:00
Rick Lucassen
408706ef9d Add support for angular 18.1 with increased typescript and ngPackagr versions (#19228) 2024-07-25 11:18:58 +02:00
William Cheng
362d3b5aa1 [csharp] Add scope for oauth2 (#19234)
* feat: add scope for oauth2

* fix: add parameter AlwaysMultipartFormData

* fix: string to boolean

* fix: optional bool

* fix: null checks

* Optional string

* Remove all references to OAuthMultipartFormData

* Remove _multipartFormData = multipartFormData;

* Remove typo

* Run generate-samples and export_docs_generators

* Revert "Run generate-samples and export_docs_generators"

This reverts commit f051f268a5.

* Switch to string.IsNullOrEmpty, add langVersion 8

* Add langVersion 8 in ConditionalSerialization

* Use regular strings for netstandard2.0

* Remove references to langVersion 8

* Fix variable

* Use template engine to toggle nullable string

* Trigger tests

* Generate samples

* Trigger build

* Use {{nrt?}}

* update samples

---------

Co-authored-by: Morten Jansrud <morten.jansrud@snokam.no>
2024-07-24 21:15:12 +08:00
Bert Downs
9a673ea09a Rust: Support Integer enums using Serde_repr (#19199)
* rust: support repr(int) enum

* Regen APIS

* remove the extra lines

* merge most recent commits from master

* update tests to ensure that enum compiles correctly

* drop changes to kotlin files

---------

Co-authored-by: Jihyun Yu <yjh0502@gmail.com>
2024-07-24 17:14:17 +08:00
Paulo Darocha
8950892652 Fix ExtendedCodegenModel class access modifier to public (#10342) (#19230)
This commit updates the access modifier of the ExtendedCodegenModel class from its default (package-private) to public, allowing it to be accessible from outside its package.

Co-authored-by: Paulo Da Rocha Filho <paulo.darochafilho@wnco.com>
2024-07-24 09:10:20 +02:00
Sylvain Joubert
1c62c0385f [Kotlin][Spring] Add support for class and field extra annotation (#19202)
* [Kotlin][Spring] Document already supported vendor extensions

* [Kotlin][Spring] Add support for x-{class,field}-extra-annotation
2024-07-24 14:31:32 +08:00
Peter Storch
0e70d1f068 [Kotlin][Spring] use flag delegatePattern together with skipDefaultInterface (#19212)
* fix #19211 kotlin-spring flag delegatePattern together with skipDefaultInterface generates broken code

* add kotlin-springboot-delegate-nodefaults to the workflow

* fix Platform declaration clash

* move kotlin-springboot-delegate-nodefaults to the kotlin-server-jdk17 file

* fixed empty line
2024-07-23 18:41:14 +08:00
m-standfuss
6ad5864d28 Adding decimal support for python client generation (#19203)
* Adding decimal to template for Python generator

* Rerunning the build steps

* Add tests for decimal serialization and deserialization.

* Move test to python not legacy pydantic sample

* readd old imports

---------

Co-authored-by: Adam <abolfik@pollyex.com>
2024-07-23 16:16:23 +08:00
Kaido Iwamoto
fef84d956e [typescript-fetch] Fix code generation for oneOf cases without discriminator (#19219)
* Add samples using `oneOf` without discriminator

* Fix typescript-fetch code gen for `oneOf` without discriminator

* Return `{}` instead of original `json`
2024-07-23 08:59:16 +02:00
Julian Vennen
3e263ce3fc php: Fix typedoc comment for headers in ApiException (#19217) 2024-07-23 10:00:48 +08:00
Peter Storch
08e2653935 fix #18555 kotlin-spring generator flag appendRequestToHandler generates broken code when used with flag delegatePattern (#19206) 2024-07-22 08:32:31 +01:00
William Cheng
e40d3228aa Update CXF to newer version (#19210)
* update cxf to newer version

* better format
2024-07-22 00:30:51 +08:00
Christian Beikov
b5d5e572e0 Get rid of a bunch of Javadoc errors (#19209) 2024-07-21 18:48:18 +08:00
Nikita Vakula
e542b06869 [python-fastapi] return 500 if not implemented, added some unittests (#19196)
* [python-fastapi] Added some tests for FastAPI generator

1. Checks the generation of the implementation package.
2. Checks if the endpoints with and without descriptions generate correct
   output.

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Raise 500 if there is no implementation

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

---------

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2024-07-19 16:14:16 +08:00
Dimitar Tomov
f44bc30d20 [Kotlin][Spring] Fix RequestPart handling for multipart request (#19058)
* [Kotlin][Spring] Fix RequestPart handling for multipart request

* [Kotlin][Spring] Add sample spec for kotlin multipart request model

---------

Co-authored-by: dimitar.tomov <dimitar.tomov@scalefocus.com>
2024-07-19 00:58:51 +08:00
Erik Erbar
aaf3ea2528 [FIX][typescript-fetch] Fix duplicate imports for models with a discriminator (#19195)
* add new typescript-fetch self import issue sample

* add a new typescript-fetch self import issue config

* generate sample

* regenerate sample

* Prevent duplicate typescript imports

* Update generated samples

* Filter imports instead of discriminators mapped models

* Update generated samples

---------

Co-authored-by: GeroSchaarmann <Gero.S97@web.de>
2024-07-18 16:24:21 +02:00
Horace Li
e59a4ab8f8 Java libraries validation-api may use javax imports but dependency always uses jakarta namespace (#19171)
* java libraries bean validation use jakarta

* java libraries bean validation use jakarta

* java libraries bean validation use jakarta
2024-07-18 16:59:55 +08:00
Martin Schröder
ebf72a3772 adds support for x-pattern-message in kotlin-spring generator (#19134)
* adds support for x-pattern-message for patterns in kotlin-spring generator as known in java spring generator

* updates doc kotlin-spring
2024-07-18 16:22:18 +08:00
William Cheng
47abf82164 [java] update rest-assured, retrofit2, vertx to use junit 5 (#19185)
* update rest assured to use junit 5

* regenerate samples

* update junit from 4 to 5 for retrofit2, vertx

* update vertx test template
2024-07-18 16:16:27 +08:00
Nicklas Wiegandt
75cbebd2d2 test (JAVA SPRING RESTCLIENT) 18522: Add more JDK 17echo api tests & fix triggers (#19189) 2024-07-18 12:22:57 +08:00
Peter Storch
2f5529a184 fix #11353 use @get:JsonProperty instead of @field:JsonProperty (#19186) 2024-07-17 12:06:32 +01:00
Nicklas Wiegandt
045f4b6067 fix (JAVA SPRING RESTCLIENT) 19137: Fix missing imports when using withXml for Spring RestClient and fix its README (#19146) 2024-07-17 17:47:33 +08:00
Nikita Vakula
cfcc2c89d6 [python-fastapi] Fix api endpoint template (#19139)
* [python-fastapi] Fixed endpoint template

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Fixed base class methods definition

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

* [python-fastapi] Updated samples

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>

---------

Signed-off-by: Nikita Vakula <programmistov.programmist@gmail.com>
2024-07-17 12:31:25 +08:00
Nicklas Wiegandt
3dc3ee08bc test (JAVA SPRING RESTCLIENT) Add echo tests for the Spring 6 RestClient (#19145)
* test (JAVA SPRING RESTTEMPLATE) 17571: Add echo-api multipart form single file test

* feat (JAVA SPRING RESTCLIENT) 18522: Add RestClient to README

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo all of Pet test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body free form object response string test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body pet test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body pet response string test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body string enum test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo body tag response test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo form tests

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo header test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo path test

* test (JAVA SPRING RESTCLIENT) 18522: Add RestClient echo query tests

* feat (JAVA SPRING RESTCLIENT) 18522: Regenerasted API Clients for RestClient with fixed import indentation
2024-07-17 12:19:31 +08:00
dependabot[bot]
0177ceda56 Bump actions/setup-dotnet from 4.0.0 to 4.0.1 (#19182)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4...v4.0.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-17 11:40:10 +08:00
Jeremy Audet
1367a16d6d Update Python versions used for unit tests (#19124)
Python 3.7 is EOL, and Python 3.12 has been released.

See: https://devguide.python.org/versions/
2024-07-17 01:02:21 +08:00
William Cheng
a330a1f38e update samples 2024-07-17 00:27:17 +08:00
Liri S
0002f8c506 Support net8 in aspnetcore (#19051)
* Support net8 in aspnetcore

* gen

* typo

* more

* default swashbuckle

* gen

---------

Co-authored-by: Liri S <liri@ownid.com>
2024-07-17 00:02:41 +08:00
Jeremy Audet
c8587bb31d Run unittest tests with unittest (#19121)
The unit tests in the following directories are written to unittest, not
pytest:

* `samples/client/echo_api/python/`
* `samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent/`

If pytest is told to execute these tests, it will log warnings about
being unable to collect certain tests.
2024-07-16 23:52:56 +08:00
Giuseppe Tribulato
9ae8775987 Close #19129: java jersey2 and jersey3: Always cast path parameters to string similarly to okhttp-gson (#19161) 2024-07-16 18:09:05 +08:00
devhl-labs
c05bedb148 remove unnecessary code (#19159) 2024-07-16 17:59:49 +08:00
Sergey Vladimirov
875fdb50bd Fix issue https://github.com/OpenAPITools/openapi-generator/issues/18574 (#19173) 2024-07-16 17:58:55 +08:00
Martin Delille
49e33188cf [qt-cpp] Remove Qt support before Qt 5.15.2 (#19164) 2024-07-16 17:51:14 +08:00
Christian Beikov
94264e5598 Get rid of a bunch of Javadoc errors (#19162) 2024-07-16 17:49:21 +08:00
CirnoV (Sickle)
a81b736b24 Allow array items in TypeScript to be nullable (#19157)
* Allow array items in TypeScript to be nullable

* Regenerate samples

* Remove duplicate nullable array items codegen
2024-07-16 09:40:17 +02:00
Peter Storch
75e3be39cb fix #19156 @RestController annotation at Kotlin-Spring API interface (#19158) 2024-07-15 14:18:16 +01:00
Julian Kalinowski
304ff96577 [Swift] fix(#18074): correctly map OpenAPIDateWithoutTime to string in path (#18077) 2024-07-15 14:10:00 +01:00
Tolga Akkiraz
7f01a354a5 [Kotlin] Fix invalid gradlew.bat templates (#19165)
* Fix invalid gradlew.bat templates

* Update samples
2024-07-15 20:57:58 +08:00
William Cheng
b705972cad Upgrade rust-hyper to use hyper 1.0 (#19115)
* Upgrade to rust-hyper to use hyper 1.0

* Update rust-hyper samples for hyper 1.0 upgrade

* update cargo

* update samples

* update samples

* update doc

* Default client configuration for rust-hyper

---------

Co-authored-by: Krishna Rajendran <krishna@emptybox.org>
2024-07-14 22:11:08 +08:00
William Cheng
897a4e79d2 update elixir doc 2024-07-14 21:10:26 +08:00
Val Packett
3e6c13ede8 [Elixir] allow custom packageVersion (#19151) 2024-07-14 20:55:44 +08:00
Axel Rindle
75f4faae0c docs: add act coding to users (#19152) 2024-07-13 23:45:06 +08:00
Jeremy Audet
722be84cac Update call to assertDictContainsSubset() (#19122)
`TestCase.assertDictContainsSubset()` was deprecated in Python 3.2,
which went EOL in 2016. Rewrite the assertion to target Python 3.8+.

See: https://docs.python.org/3.2/library/unittest.html#unittest.TestCase.assertDictContainsSubset

See: https://devguide.python.org/versions/
2024-07-13 18:28:26 +08:00
Tim Grein
7b52da5d57 [go-server] Add information, where the server runs to generated README.md (#19141)
* Add information, where the server runs to README.md

* Update samples
2024-07-13 16:35:04 +08:00
Zane Pickett
8938f9dea1 [Ruby] Fix Content-Transfer-Encoding binary unpacking (#19132) 2024-07-11 14:52:38 +08:00
condorcorde
2940d3219c [PowerShell] Support ApiKeyPrefix (#19133)
* Support for ApiKeyPrefix

* Additional files after build
2024-07-11 14:38:16 +08:00
William Cheng
9948ed2cfa [dart-dio] fix JsonObject missing on a generated code #16585 (#19130)
* fix: issue 16261. JsonObject is missing on a generated code

* update samples

---------

Co-authored-by: toriumi0118 <toriumi0118@gmail.com>
2024-07-10 21:15:37 +08:00
Jeremy Audet
a4292c5db5 Update poetry lockfile (#19123)
Updated with `poetry lock`. This makes it possible to execute `poetry
run -- python -m unittest discover` and the like.
2024-07-10 17:22:01 +08:00
Wei Shih
42b0b20891 [k6] Add authentication variables in headers and cookies (#19060)
* Add global auth parsing including headers and cookies for k6.

* Add global auth statements.

* Generate samples.

* Revert "Generate samples."

This reverts commit b8cff8691b.

* Copy petstore-with-fake-endpoints-models-for-testing.yaml to a seperate k6 path as its example yaml file.

* Add global security statement in k6 example yaml instead of using the generic one.
2024-07-10 17:09:43 +08:00
William Cheng
5fdcd4857b [okhttp-gson] migrate to jakarta.ws.rs (#19113)
* javax.ws.rs:javax.ws.rs-api package was renamed on maven

* update dependencies for java okhttp pom, build.sbt

* update

* update dep

---------

Co-authored-by: Andres Aguilar <andresesfm@gmail.com>
2024-07-10 17:07:54 +08:00
Luke Tudge
005d5b0232 codegen: add == -> 'Double_Equal' to specialCharReplacements (#19125)
* codegen: add == -> 'Double_Equal' to specialCharReplacements

The double equal '==' is a common operator in a few contexts (specific use case for me is haystack operators). Currently if this value appears in an enum its name gets sanitized to empty and generates invalid syntax. Very similar to https://github.com/OpenAPITools/openapi-generator/pull/12801

* makes java underscore test more flexible

Given the name and purpose of this test, maybe it is better to test that the generated value is not an underscore rather than to test that it _is_ a specific (and possibly arbitrary) substitute value.
2024-07-10 17:02:48 +08:00
dependabot[bot]
ba056dbf10 Bump actions/setup-dotnet from 4.0.0 to 4.0.1 (#19126)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4.0.0...v4.0.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 11:13:24 +08:00
Clément Denis
705d853baa Update okhttp3 to 4.12.0 for Maven projects (#19118) 2024-07-10 11:12:57 +08:00
Doug Keen
011acc9950 [typescript-axios] add config parameter to specify custom axios version (#19103)
* feat(typescript-axios): allow configuration of axios version

* docs(typescript-axios): add readme docs for axiosVersion config option

* test(typescript-axios): add unit tests for custom axios version

* docs(typescript-axios): fix up typescript-axios generator docs
2024-07-09 10:52:48 +02:00
Paul Parenko
5612852fb6 Remove dependency scan for inputSpec (actually not required) (#19084)
* added test with external-ref ("external dependency" installed before actual usage)

* fixed test with resource on classpath

added test with resource on classpath with external-ref.

Test with profile 'resource' was wrong as it took JAR into account, but there was no 'petstore.yaml' on classpath.

* Remove dependency scan and do not modify inputSpec provided by user

It is still possible to provide JARs as inputSpec, however the user has to provide it by hand.

Providing dependencies in plugin section still allows correct inputSpec resolution on classpath.
2024-07-09 16:37:54 +08:00
William Cheng
039f0b85f6 Add BearerAuthInterceptor to dart-dio library exports (#19111)
* Update lib.mustache

Add missing export to dio template

* update samples

---------

Co-authored-by: Moshe Dicker <75931499+dickermoshe@users.noreply.github.com>
2024-07-09 16:26:15 +08:00
Cameron Koegel
1841f57863 [Ruby] Allow Overriding Accept Header (#19106)
* [Ruby] Allow Overriding Accept Header

* generate samples
2024-07-09 15:34:07 +08:00
Jeremy Audet
5da4f50dac Fix call to TestCase.assertEqual() (#19091)
`TestCase.assertEquals()` does not exist.
2024-07-09 02:06:22 +08:00
aaronforest-wf
8ab3bb491b Remove thread unsafe statusCode and responseHeaders instance variables from apache http ApiClient (#19054)
* remove thread unsafe statusCode and responseHeaders instance variables

* re-add status code and header getters for backwards compatibility

* add import

* whitespace cleanup

* use deprecated thread id getter for backwards compatibility with pre-19 java
2024-07-08 21:48:52 +08:00
DielN
a3912b7239 [Java][Microprofile] Fix #17526: enumOuterClass missing JSON-B (de)serializer (#18951)
* GH-17526/microprofile: Fix enumOuterClass missing JSON-B (de)serializer

* Add microprofile-rest-client-outer-enum to jdk17 samples workflow

* Regenerate samples
2024-07-08 18:30:22 +08:00
William Cheng
0820edee5d Add bytestring package to dependencies of generated haskell code (#19101)
* Add bytestring package to dependencies of generated haskell code

This broke in https://github.com/OpenAPITools/openapi-generator/pull/18047
where tvh introduced an import of Data.ByteString.Lazy. The added
bytestring package was available in some but not all cases.

* update workflow to test haskell servant ping

* update samples

---------

Co-authored-by: Bastian Senst <senst@cp-med.com>
2024-07-07 22:06:20 +08:00
Michael Hamburger
8f7cce716f Fix duplicate import javax.valid.Valid in resteasy generator (#19055)
* remove javax.valid.Valid import

* changes in samples
2024-07-07 18:48:04 +08:00
William Cheng
b84770af16 fix javadoc in various java files (#19099) 2024-07-07 18:27:23 +08:00
Vladislav Bauer
72cdb7020e Revert "[java-retrofit2] Support payload for DELETE method (#19056)" (#19100)
This reverts commit 9c4664a12c.
2024-07-07 18:23:57 +08:00
Tim Grein
7f6d2d8801 Fix docs for convertPropertyToTypeAndWriteBack and convertPropertyToStringAndWriteBack methods (#19072) 2024-07-07 16:58:24 +08:00
Martin Delille
aef9142c2c [cpp-qt-client] Stop using Qt 5.15.2 in the CI (#19049)
* [cpp-qt-client] Just for test

* Fix samples-cpp-qt-client github workflows

* Use only 6.7.1 in CI

* Revert "[cpp-qt-client] Just for test"

This reverts commit c7e19aeb6c.
2024-07-07 16:57:55 +08:00
Liri S
77737009e7 Speed up docker re-builds using mvn dependency:go-offline (#19078)
* go offline

* dup
2024-07-07 16:56:54 +08:00
Jean-François Côté
0b1b3f531e [ASPNETCORE] Fix having two "?" when not required and nullable = true (#19062)
* fix #18005: Prevent adding 2 times the "?" when not required and nullable = true

* fix #18005: Fix carriage return diff

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2024-07-06 21:56:22 +08:00
Not So Chiken
b897a99ebb Allow array items in kotlin to be nullable (#19080) 2024-07-06 16:29:49 +08:00
William Cheng
c8caa7cf49 remove 3.7 in github python workflow (#19098) 2024-07-06 16:17:22 +08:00
martin-mfg
4fa124b023 enable java-camel checks (#19074) 2024-07-06 15:19:49 +08:00
William Cheng
dab0a16621 update certifi to newer version (#19097) 2024-07-06 15:13:55 +08:00
Cas Cornelissen
add5c2eec7 Fix casts for typescript-fetch enum keys not working on number-based enums (#19075)
Co-authored-by: Cornelissen, Cas <cas.cornelissen@wartsila.com>
2024-07-04 14:07:40 +02:00
Bruno Coelho
21ad242ceb [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3 (#19064)
* [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3

* [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3

* [kotlin][client] fix temp file name and remove old deprecated jvm-okhttp3
2024-07-03 18:09:41 +01:00
Jacek Czerski
ff2e173de8 [Kotlin-Client][JVM-OkHttp] Override parameter enum's toString() method to use its value (#19053)
When using the JVM implementation of OkHttp with a Kotlin client, you may encounter issues with the toString() method of enum parameters. By default, the toString() method of an enum returns the name of the enum value, not its value.

To fix this issue, you can override the toString() method of your enum to return its value instead of its name.
2024-07-03 16:57:46 +08:00
dependabot[bot]
03beb3732e Bump s4u/setup-maven-action from 1.13.0 to 1.14.0 (#19045)
Bumps [s4u/setup-maven-action](https://github.com/s4u/setup-maven-action) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/s4u/setup-maven-action/releases)
- [Commits](https://github.com/s4u/setup-maven-action/compare/v1.13.0...v1.14.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-07-03 16:48:39 +08:00
Alexis Couvreur
59d799baa2 Add Alexis Couvreur as author of Java WireMock stub server (#19052) 2024-07-03 16:47:28 +08:00
Vladislav Bauer
9c4664a12c [java-retrofit2] Support payload for DELETE method (#19056) 2024-07-03 16:46:20 +08:00
John Arrandale
376505c25d [Typescript] Fix Issue Directly Publishing Package (#19004)
* Update package.mustache

* Updated typescript samples
2024-07-02 18:55:57 +02:00
Aron Wachter
5d61f71cdd [typescript-fetch] Fix API-generation of referenced enums for multipart/form-data (#19016)
* [typescript-fetch] Fix API-generation of referenced enums

* [typescript-fetch] re-generate samples
2024-07-02 15:07:33 +02:00
MarekBodingerBA
daa4886865 Change options from any to RawAxiosRequestConfig in typescript-axios and update samples (#18978)
Co-authored-by: Marek Bodinger <marek.bodinger@gmail.com>
2024-07-02 11:41:05 +02:00
Benedikt Radtke
860fd26449 Fix x-www-form-urlencoded date-time string parameters (#18898)
As mentioned in #13841, date-time parameters in request bodies are not ISO formatted, which breaks with certain webservers. This commit invokes `toISOString()` for date-time body parameters like it is done for queryParameters.

Fixes #13841.
2024-07-02 11:20:29 +02:00
William Cheng
20cfce0b4a Prepare v7.8.0 (#19048)
* Revert "v7.7.0 release"

This reverts commit f3dd32385e.

* prepare v7.8.0

* update readme

* update doc

* update samples
2024-07-02 16:45:53 +08:00
William Cheng
4eaac3d152 v7.7.0 release (#19046) 2024-07-02 15:44:37 +08:00
Dieter Eickstaedt
c9da04cb65 feat: x-enum-description support added to kotlin-server code generator (#19041) 2024-07-01 13:16:26 +01:00
Rodrigo de Almeida - RMA3
21d3cfe924 Fix Issue 18224 - Load x-field-extra-annotation in the operation parameter (#18967)
* fix issue 18959

* fix issue 18224

* fix issue 18224

* fix spaces

---------

Co-authored-by: Rodrigo Maciel de Almeida <rodrigo.almeida@wefin.com.br>
2024-06-30 16:27:14 +08:00
loicconan
fb17e5699d [PHP-SYMFONY] Debug Symfony version 7, enums ref, array of enums $ref and date assert (#19008)
* [PHP-SYMFONY] Debug for Symfony 7 support & debug enum ref & debug array enum ref & debug date assert

* [PHP-SYMFONY] Debug for Symfony 7 support & debug enum ref & debug array enum ref & debug date assert

* [PHP-SYMFONY] Debug for Symfony 7 support & debug enum ref & debug array enum ref & debug date assert
2024-06-30 10:11:26 +08:00
ksn-partisia
fa2b5750ce [Bug] [Java] Remove raw type compilation warnings when generating using jersey2 or jersey3 (#19033)
* Add type annotations to raw types for jersey2 and jersey3 templates

* Update samples

* Add type parameters to anyof_model.mustache and oneof_model.mustache

---------

Co-authored-by: Kasper S. Nielsen <kasper.s.nielsen@secata.com>
2024-06-30 10:06:12 +08:00
Cameron Koegel
53f1094765 [Python] Allow Overriding Accept Header (#19025)
* [Python] Allow Overriding Accept Header

* generate samples

* add tests
2024-06-28 19:27:10 +08:00
Val Packett
44e9ff58bd [android][volley] Remove unused robolectric test dependency (#19022)
Causes failures like:
Configuration `:debugUnitTestRuntimeClasspath` contains AndroidX dependencies, but the `android.useAndroidX` property is not enabled, which may cause runtime issues.
2024-06-27 09:51:56 +08:00
Val Packett
9c26848f11 [kotlin-client] Generate safe ?. access for optional enums (#18982) (#19023)
Fixes #18982
2024-06-26 15:53:56 +01:00
William Cheng
0c4bfe3ffe Add tests for anyof with discriminator (#19021)
* add tests for anyof with discriminator

* remove test

* update samples
2024-06-26 16:00:58 +08:00
qbuzzdaan
6b9d95be89 Tries to fix #18975 by changing how the deserializer interacts with its parent class (#18976)
* [JAVA] Fix for #18975, ensure static block of parent deser class loads

* Add sample spec with type with anyOf
2024-06-26 15:22:20 +08:00
Cameron Koegel
0d05ee35f0 [Python] Add Flag to Allow Ignoring Operation Servers (#18981)
* [Python] Add Flag to Allow Ignoring Operation Servers

* generate samples

* add tests
2024-06-26 15:08:13 +08:00
William Cheng
38d189b159 update kong URL (#19018) 2024-06-26 00:29:43 +08:00
martin-mfg
045b6012b3 [Spring] replace MultipartFile by Resource (#18509)
* replace MultiPartFile by Resource

* fix SpringCodegenTest

* new approach: small scoped fix

* move to JDK17 workflow

* update samples

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

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

* add check for ref to property in go abstract

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

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

---------

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

* re-generate Go samples

* re-generate Go samples again

* re-generate samples once more

* update go samples

---------

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

Add support for `str`

* update python samples

---------

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

* update samples

* fix compatibility with python 3.7

* always set Configuration.__debug

* update samples

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

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

* update samples

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

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

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

* update samples

* add tests

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

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

Fixes #18943

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

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

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

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

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

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

* Update docs

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

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

* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Use MUSTACHE_PARENT_CONTEXT in additionalProperties

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

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

* [android][volley] Exclude httpclient

As it is incompatible with Android

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

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

This fixes building with current Android Studio.

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

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

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

* Fix duplicate rendering of @Deprecated annotation on Builder methods

* Regenerate samples

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

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

Serves as an additional regression check for #12804

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

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

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

* Apply DRY refactoring

* Move newTempFolder helper method into TestUtils

* Fix typo `doesNotContains`

* Pluralize assertion classes that extend ListAssert

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

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

* Refactor tests, simplifying setup using CodegenConfigurator

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

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

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

* generate JAXB annotations for attributes and elements

* generate wrapper annotations (JAXB and Jackson)

* use XML config from items for annotations of containers

* Add test for Jackson XML wrapper correctness

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

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

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

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

* Harmonize spacing between Annotation attribute name and value

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

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

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

* Explicitly render `useWrapping = true` to @JacksonXmlElementWrapper

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

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

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

* Make test class name match class-under-test

This makes discovery & cross-navigation in IDE easier.

* Add complete xml annotations test for Java generators

* Fix Java PKMST generator not generating @JacksonXmlElementWrapper

* Fix Java microprofile generator missing @JacksonXmlRootElement

* Fix Java microprofile generator not using wrapper annotations and namespaces

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

* Fix Micronaut Client using wrong localName for @JacksonXmlElementWrapper

* Fix Micronaut client rendering @JacksonXmlProperty annotation twice

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

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

Closes #5989
Closes #3223
Relates to #9371

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

* Remove XML generation debug output from templates

* Remove redundant newline between XML class annotations and class

Brings the SpringCodegen in line with other Java Codegen's

* Remove redundant newline between XML setter annotations and setter

* Fix multiline JavaDoc block indentation and format

* Simplify / condense xml annotation template into single lines

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

* Harmonize spacing between Annotation attribute name and value

* Remove unused jackson_annotations partial

Was not referenced anywhere in java-helidon resources folder

---------

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

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

* remove option

* update workflow

---------

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

### PR checklist

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

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

* updated samples and test

* Removed async from ApiClient.mustache

Updated samples

* Revert change to CSharpClientDeepObjectTest.java

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

Updated samples

* Fix File IO namespace with using directive

* Improved comments on new methods

Added new DRY method DeserializeRestResponseFromPolicy

* Fix comments and parameters for new method DeserializeRestResponseFromPolicy

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

* HTTP_TRANSFER_CACHE_IN_OPTIONS for angular 17 as well

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

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

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

* Resource added for test

* Updated tests

---------

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

* add tests for anyof in go client

---------

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

* placed changes behind a switch

* bug fix

* minor revert

* use lombok.Setter

* addressed comment

* lint

* minor refactor

* massively improve csharp templates code

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

* updated test samples csharp

* removed async from ExecAsync (not needed here anymore)

* updated samples csharp

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

updated samples

* added options

* rebuild tests

* revert unintended commits

* rebuild samples

* rebuild samples

* rererebuild samples

* fix manual tests

---------

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

* Updated tests

---------

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

* update samples

---------

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

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

* remove java syntax in kotlin template

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

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

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

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

* Update Elixir reserved words

* Update Elixir generator docs

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

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

* Include additional reserved words and handle words with leading underscores

* Update samples and docs

* Uses dataType instead of baseType for non-struct types

* Generate elixir samples

* Fixes issue with AnyType in a list

* Generate elixir samples

* Removes normalizeTypeName for arrays as they correct by getTypeDeclaration

* CodeStyle

---------

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

* fix samples

* fix samples

* fix samples

* fix samples

---------

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

* placed changes behind a switch

* bug fix

* minor revert

* use lombok.Setter

* addressed comment

* lint

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

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

* Update enum handling for Python for enum references

* Remove unused method

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

* Address PR feedback and rebase main

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

This avoids an UnsupportedEncodingException by design.

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

This reverts commit 8d398719c9.

* update samples

* update pom

* set cxx 17

* Revert "set cxx 17"

This reverts commit 0cec8f725d.

* install clang 6.0

* Update CI/circle_parallel.sh

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

* fix include

---------

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

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

* [python] update sample

* [python] update test

* [python] remove type

* [python] fix test

* [python] add top level type test

* Update deserialize content_type parameter and quote

* [python] restore echo_api test

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

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

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

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

Fixes #4512 and #16489

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

* Fix deprecation warning on SimpleLocalRepositoryManagerFactory no-arg constructor

* Apply minor code cleanup

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

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

* Add templateData capture functionality to DryRunTemplateManager

* Replace MockDefaultGenerator with DryRunTemplateManager captures

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

* Regenerate doc page

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

* Remove duplicated database migration file from supportingFiles collection

* Activate AllGeneratorsTest.noDuplicateSupportingFiles

* Drop transitional test again

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

* Fix JavaDoc unresolved symbol

* Fix JavaDoc method link

* Remove unnecessary semicolon

* Remove method identical to super implementations

* Replace repetitive getter code with Lombok @Getter

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

* Replace repetitive setter code with Lombok @Setter

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

* Generate no-args constructor with Lombok

* Generate all-args constructor with Lombok

* Fix parameter naming

* Replace stubbed abstract class implementations with Mockito mocks

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

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

* Parameterizes query param values

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

* Remove extra empty line

* Adds support for header params

* Also fixes extra end of line bug.

* Fixing failing test

* Adding tests for query params

* Adding tests for header params

* Adding basic support for env file

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

* TODO : Add tests

* Adding tests for env generation

* Adding generated test files

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

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

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

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

* Refactor existing test to use @DataProvider and fluent assertion

* Remove extraneous cliOption definition for disallowAdditionalPropertiesIfNotPresent

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

Resolves #18810

* Avoid variable declaration & assignment when only used once

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

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

* Disable AllGeneratorsTest.noDuplicateSupportingFiles for the time being

Re-enable when #18831 is fixed

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

* build samples again

* rebuild tests

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

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

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

* Test for default serialization library fallback

* Convert repetitive tests to parameterized test

* Add regression test for #18515

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

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

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

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

* DRY refactor JavaClientCodegen test code, increase readability

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

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

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

* Reformat tests for readability

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

* Add sample output

* Update version number in new sample output

---------

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

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

Hence fixes #14949

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

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

* Update Jackson to v2.17.1

* Sync Jackson version used by Spring Boot with project version

* Sync jackson update to v2.17.1 with generator templates

* Regenerate samples with updated versions

* Adjust test to current exception msg behavior

* Add dependency mgmt to ensure matching version for transitive dependencies

* Update library descriptions with correct Jackson version number

* Update library descriptions with correct GSON and JSONB versions

* Update retrofit library description with correct version number

* Update retrofit description to include Jackson as an option

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

* Update remaining libary version descriptions with correct versions

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

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

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

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

* [cpp-restsdk] avoid deprecated CMake version warnings

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

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

* fix: remove inheritance due to template not overriding

---------

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

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

* Remove newline

* Remove another newline

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

Fixes #18803

* Regenerate fixed kotlin-spring samples

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

* Apply suggestions from code review

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

---------

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

* Remove org.reflections from the test stack

* Remove unused parameter

* Remove unused method

* Fix raw use of parameterized variable warning

* Use Files.readString instead of converting raw bytes

* Add test coverage for TestUtils.validatePomXmlFiles(List)

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

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

This reverts commit 2471ba2d2e.

* Make junit engine execute TestNG test cases

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

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

* Suppress error output from TestUtils

* Remove transitive junit4 dependency

* Sync guava-testlib version with guava version

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

* easer to understand diff

* build samples again

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

* add oneOf support

* various fixes, add tests

* minor fixes

* minor fixes

* update data class

* remove comments

* array support, add test

* update api client constructor

* add anyOf support

* add new files

* fix merge

* update

* update

* update

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

* revert upgrade to junit5

* fix kotlin-wiremock template folder

* fix/comment tests

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

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

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

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

* update samples

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

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

* Fix maven plugin config description for `withXml`

* Add basic test for global withXml setting

* Use global withXml setting if not configured in ConfigOptions

Resolves #3839 and #5764

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

* Reformat table for readability

* Remove global property `withXml` from generator and docs

* Move WITH_XML constant out of system constants block

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

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

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

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

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

* Update samples to reflect removed `withXml` property

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

* Remove unused local vars and parameters

* Avoid repetition using fluent assertions

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

* moved service api into shared source

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

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

---
updated-dependencies:
- dependency-name: s4u/setup-maven-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-26 17:54:31 +08:00
Jimmy Praet
6a9b10075e Make JAX-RS BuilderImpl class non-final to fix WELD-001503 issue (#18724)
Fixes #17875
2024-05-26 16:43:32 +08:00
cvkem
5e8b589bea Fix rust server auth (#18692)
* Added authentication via Bearer-token api_key and basic for server and client

* Improved errorhandling

* Added check on oAuth audience to example

* Updates of the petstore files for Rust-server

* Moved module import to prevent issue in callbacks

* updated samples

* Fix for unused-qualifications issue

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

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

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

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

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

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

* Remove Exception from signature that is never thrown

* Simplify assertions using AssertJ

* Replace stub implementation with abstract Mockito mock

* Cache flat parsed openapi results for faster test execution

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

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

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

* update samples

* update samples

* update samples

* update samples

* update samples

* clean up

* update samples

* update pom plugin version

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

* Fix java list validation

* Fix java list validation

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

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

* minor refactor to address a comment

* removed discriminator property

* update more manual tests

* update more manual tests

* added tests and bug fixes

* fixed allof

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

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

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

* [kotlin-wiremock] added generator and sample

* [kotlin-wiremock] First version with petstore

* [kotlin-wiremock] Small typo

* [kotlin-wiremock] Added echo-api test

* [kotlin-wiremock] Split stub and stub builder

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

* [kotlin-wiremock] Small default value fix

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

* [kotlin-wiremock] Added default artifact name

* [kotlin-wiremock] Added kotlin docs

* [kotlin-wiremock] Fixed capitalization in kotlin docs

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

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

* [kotlin-wiremock] Generated docs

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

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

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

This reverts commit 71e1c47def.

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

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

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

* Resolve and search COMPILE dependencies for inputSpec resource.

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

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

* Resources on the compilation classpath

in addition to the existing FILE test case.

* Check for inputSpecFile existence

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

* replaced deprecated usage

* use Unix separators when on win-os

* example with jar inputSpec

* Comment not required anymore

Was introduced with #7587 could be removed with #10544

* referenced same maven version

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

* updating maven dependencies to 3.9.6

---------

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

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

This reverts commit d76f9d32d1.

* prepare 7.7.0 snapshot in master

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

* Issue-18444: suppoting inheritance, but interfaces

* Issue-18444: build project instructions executed

* code review from wing328: tab-spaces removed

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

* fix

* extend description

---------

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

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

* [rust-axum] Fix: add samples output

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

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

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

* Adjust version ranges to keep tests passing.

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

* files changed after scripts run

* remove unused method

* move cloneSchema to ModelUtils

* imports

* changes after scripts run

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

* [GO] Update samples

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

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

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

* re-generate samples

* fix junit(DOT)version

* update tests for java microprofile server

* update samples

* update

* update

* update

* update

---------

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

* add changes in StringUtilTest

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

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

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

* revert removal of port 80 from test url

* udpate google api client tests

* update sha

* update comment

---------

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

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

* step 3

* Revert "step 3"

This reverts commit 73ba918d36.

* update mustache

* #

* isContainer

* step3

* ^

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

* regenerate samples

* update doc

---------

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

* Update examples

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

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

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

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

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

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

* Rerun samples generation trying to fix spring jobs

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

* Update copyright

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

* Correct the copyright notice

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

---------

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

* commit sample

* samples updated

* update CI file to test the changes

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

* update samples

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

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

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

* [html2] Fix compile error

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

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

* fix echo_api tests

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

* fix xml syntax error

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

* upgrade build.gradle, optimize imports

* upgrade gradle, re-generate samples

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

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

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

* fix nullable, better test (jaxrs-spec)

* Revert "update samples"

This reverts commit 2377d98de3.

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

* deref parameter, add null check

* Revert "update samples"

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

* Regen

* Fix incorrect change

* Fix handler issue

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

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

* test: Update examples and run integration test

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

* test: Add integration test

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

* test: Update examples and run integration test

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

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

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

* refactor: Add final to boolean

* fix: Bring str::FromStr optionally into scope

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

* test: Add integration test and its specification

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

* test: Update examples and run integration test

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

* add tests

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

* Regenerate samples & docs

* Add server generator

* Update client to set configKey by classname

* Remove debug remains and comments

* Adapt method override to upstream changes

* Regenerate samples

* Revert "Regenerate samples"

This reverts commit b5bcbdea90.

* Move additional 2xx response to dedicated OpenAPI document

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

* Make filename consistent with other files in the folder

* Regenerate Microprofile client and server samples

* Generate samples

* Update documentation

* Generate samples

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

* Regenerate samples

* Regenerated samples

* changed generator name to "java-microprofile"

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

* Renamed JavaMicroprofileServerCodegen.java

* regenerated samples

* only enable configKeyFromClassName if configKey is not set

* Updated documentation

* Change samples to use junit 4

* Fix junit 4 test classes

* run ensure up-to-date script

* fix kotlin test errors

---------

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

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

* Fix generation of remove method for map entries

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

---------

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

* Add tests to openapi doc

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

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

* refactor: Remove unnecessary qualification

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

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

This commit simply removes the qualification.

* test: Update examples and run integration test.

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

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

* [kotlin-client] Bump Gradle version

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

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

* [kotlin-client] Generated code

* [kotlin-client] Missed a generated sample

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

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

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

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

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

* [kotlin-client] Added previously missing generated file

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

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

* [typescript-fetch] Regenerate samples

* [typescript-fetch] Regenerate samples documentation

* [typescript-fetch] Add curly brackets

* [typescript-fetch] Regenerate samples

* [typescript-fetch] Use typed comparison

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

* [typescript-fetch] Regenerate samples

---------

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

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

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

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

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

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

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

https://sdkman.io/

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

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

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

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

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

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

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

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

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

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

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

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

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

* test (JAVA SPRING RESTTEMPLATE) 17571: Add tests

* feat (JAVA SPRING RESTTEMPLATE) 17571: Update doc

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

The minimum Java version of the used Spring Version is 17

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

* fix (JAVA SPRING RESTTEMPLATE) 17571: Regenerated samples

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

* fix (JAVA SPRING RESTTEMPLATE) 17571: Missing import

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

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

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

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

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

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

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

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

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

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

* update php feature

* update

---------

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

* Wrong copy over

* Missing new line

* tab vs space

* Fix new line between router and std go libs

* Add both use case, add samples to CI validation

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

* Remove leftover from builder pattern branch

* Rename generateConstructorWithAllArgs and use x- in vendorExtensions

* Test issue #18340

* Add evidences for allVars issue (#18340)

* remove eol

* update doc

---------

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

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

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

* chore: add useSingleRequestParameter option

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

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

* fix: refactor to remove code duplication

* fix: fixes test assertion encoding

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

* add tests and update samples

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

* Generate samples

* [java] Upgrade Gradle wrapper to 8.7

* Generate samples

* [Java] Add resttemplate-jakarta to CI

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

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

* Change CI machines to ubuntu-2004:2024.01.1

* [ruby] Update Gemfile.locks

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

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

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

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

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

* chore(typescript-angular): update examples

---------

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

* Append dart3 keywords

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

View File

@@ -141,7 +141,7 @@ commands: # a reusable command with parameters
jobs:
node0:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -154,7 +154,7 @@ jobs:
nodeNo: "0"
node1:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -167,7 +167,7 @@ jobs:
nodeNo: "1"
node2:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:
@@ -180,7 +180,7 @@ jobs:
nodeNo: "2"
node3:
machine:
image: ubuntu-2004:202201-02
image: ubuntu-2004:2024.01.1
working_directory: ~/OpenAPITools/openapi-generator
shell: /bin/bash --login
environment:

View File

@@ -0,0 +1 @@
RUN apt update && apt install -y maven

View File

@@ -26,8 +26,8 @@
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "/usr/local/sdkman/candidates/java/11.0.16.1-ms",
"sources": "/usr/local/sdkman/candidates/java/11.0.16.1-ms/lib/src.zip",
"path": "/usr/local/sdkman/candidates/java/current",
"sources": "/usr/local/sdkman/candidates/java/current/lib/src.zip",
"javadoc": "https://docs.oracle.com/en/java/javase/11/docs/api",
"default": true
}
@@ -50,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"
}
}

11
.github/CODEOWNERS vendored
View File

@@ -12,22 +12,11 @@ modules/openapi-generator-core/**/* @OpenAPITools/generator-core-team
# No need for auto-generated subdirectories (reduces noise)
docs/ @OpenAPITools/generator-core-team
## Individual interests
.github/**/* @jimschubert
scripts/**/* @jimschubert
website/**/* @jimschubert
bin/ci/**/* @jimschubert
## Build related
CI/**/* @OpenAPITools/build
.mvn/**/* @OpenAPITools/build
bin/utils/**/* @OpenAPITools/build
## Module-specific
modules/openapi-generator-cli/**/* @jimschubert
modules/openapi-generator-gradle-plugin/**/* @jimschubert
modules/openapi-generator-maven-plugin/**/* @jimschubert
# cpp-qt-client technical committee
modules/openapi-generator/src/main/resources/cpp-qt-client/**/* @ravinikam
samples/client/petstore/cpp-qt/**/* @ravinikam

View File

@@ -7,9 +7,9 @@
- [ ] Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community.
- [ ] Run the following to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
```
./mvnw clean package
./bin/generate-samples.sh ./bin/configs/*.yaml
./bin/utils/export_docs_generators.sh
./mvnw clean package || exit
./bin/generate-samples.sh ./bin/configs/*.yaml || exit
./bin/utils/export_docs_generators.sh || exit
```
(For Windows users, please run the script in [Git BASH](https://gitforwindows.org/))
Commit all changed files.
@@ -17,5 +17,5 @@
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`.
IMPORTANT: Do **NOT** purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
- [ ] 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)
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming `7.x.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

@@ -10,7 +10,7 @@ on:
- 'samples/client/petstore/java/**'
- 'samples/openapi3/client/petstore/java/**'
env:
GRADLE_VERSION: 7.2
GRADLE_VERSION: 8.7
jobs:
build:
@@ -29,6 +29,8 @@ jobs:
- samples/client/petstore/java/okhttp-gson
- samples/client/petstore/java/okhttp-gson-group-parameter
- samples/client/petstore/java/webclient-swagger2
- samples/client/petstore/java/native
- samples/client/petstore/java/native-jakarta
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4

View File

@@ -45,7 +45,7 @@ jobs:
${{ runner.os }}-gradle-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.12.0
uses: s4u/setup-maven-action@v1.16.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8
@@ -87,7 +87,7 @@ jobs:
- name: Check out code
uses: actions/checkout@v4
- name: Setup Maven
uses: s4u/setup-maven-action@v1.12.0
uses: s4u/setup-maven-action@v1.16.0
with:
java-version: 11
maven-version: 3.8.8

View File

@@ -39,6 +39,7 @@ jobs:
run: |
./mvnw clean install -DskipTests -Dmaven.javadoc.skip=true
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/java-client.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean install -f modules/openapi-generator-maven-plugin/examples/multi-module/sample-external-ref-schema/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/multi-module/pom.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/kotlin.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error
./mvnw --no-snapshot-updates --quiet clean compile -f modules/openapi-generator-maven-plugin/examples/spring.xml -Dorg.slf4j.simpleLogger.defaultLogLevel=error

View File

@@ -142,6 +142,8 @@ jobs:
path: modules/openapi-generator-cli/target
- name: Delete samples that are entirely generated
run: |
rm -rf samples/client/petstore/csharp/generichost/latest/Tags
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
@@ -151,7 +153,24 @@ jobs:
rm -rf samples/client/petstore/csharp/generichost/net8/Petstore
rm -rf samples/client/petstore/csharp/generichost/net8/SourceGeneration
rm -rf samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
rm -rf samples/client/petstore/csharp/generichost/standard2.0/Petstore
rm -rf samples/client/petstore/csharp/generichost/net4.8/AllOf
rm -rf samples/client/petstore/csharp/generichost/net4.8/AnyOf
rm -rf samples/client/petstore/csharp/generichost/net4.8/AnyOfNoCompare
rm -rf samples/client/petstore/csharp/generichost/net4.8/FormModels
rm -rf samples/client/petstore/csharp/generichost/net4.8/OneOf
rm -rf samples/client/petstore/csharp/generichost/net4.8/Petstore
rm -rf samples/client/petstore/csharp/generichost/net4.8/UseDateTimeForDate
rm -rf samples/client/petstore/csharp/generichost/net4.7/AllOf
rm -rf samples/client/petstore/csharp/generichost/net4.7/AnyOf
rm -rf samples/client/petstore/csharp/generichost/net4.7/AnyOfNoCompare
rm -rf samples/client/petstore/csharp/generichost/net4.7/FormModels
rm -rf samples/client/petstore/csharp/generichost/net4.7/OneOf
rm -rf samples/client/petstore/csharp/generichost/net4.7/Petstore
rm -rf samples/client/petstore/csharp/generichost/net4.7/UseDateTimeForDate
- name: Generate samples
run: |
bash bin/generate-samples.sh

View File

@@ -0,0 +1,34 @@
name: Samples C# .Net 8 FastEndpoints Server
on:
push:
paths:
- samples/server/petstore/aspnet/fastendpoints/**
- samples/server/petstore/aspnet/fastendpoints-*/**
pull_request:
paths:
- samples/server/petstore/aspnet/fastendpoints/**
- samples/server/petstore/aspnet/fastendpoints-*/**
jobs:
build:
name: Build .Net 8 FastEndpoints servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/aspnet/fastendpoints
- samples/server/petstore/aspnet/fastendpoints-useApiVersioning
- samples/server/petstore/aspnet/fastendpoints-useAuthentication
- samples/server/petstore/aspnet/fastendpoints-useProblemDetails
- samples/server/petstore/aspnet/fastendpoints-useRecords
- samples/server/petstore/aspnet/fastendpoints-useResponseCaching
- samples/server/petstore/aspnet/fastendpoints-useValidators
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln

View File

@@ -3,10 +3,10 @@ name: Samples cpp qt client
on:
push:
branches:
- 'samples/client/petstore/cpp-qt/**'
- "samples/client/petstore/cpp-qt*/**"
pull_request:
paths:
- 'samples/client/petstore/cpp-qt/**'
- "samples/client/petstore/cpp-qt*/**"
env:
GRADLE_VERSION: 6.9
@@ -16,9 +16,9 @@ jobs:
name: Build cpp qt client
strategy:
matrix:
qt-version:
- '5.15.2'
- '6.5.3'
sample:
- samples/client/petstore/cpp-qt
- samples/client/petstore/cpp-qt-addDownloadProgress
os:
- ubuntu-latest
- macOS-latest
@@ -27,10 +27,10 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Install Qt
uses: jurplel/install-qt-action@v3
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt-version }}
tools: ${{ matrix.tools }}
version: "6.7.1"
target: "desktop"
- name: Build
working-directory: "samples/client/petstore/cpp-qt"
run: cmake . && cmake --build .
working-directory: ${{ matrix.sample }}
run: cmake . && cmake --build . --verbose

View File

@@ -0,0 +1,42 @@
name: Samples C# .Net Framework Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/net4.7/**
- samples/client/petstore/csharp/generichost/net4.8/**
pull_request:
paths:
- samples/client/petstore/csharp/generichost/net4.7/**
- samples/client/petstore/csharp/generichost/net4.8/**
jobs:
build:
name: Build .Net projects
runs-on: windows-2019
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/net4.7/AllOf
- samples/client/petstore/csharp/generichost/net4.7/AnyOf
- samples/client/petstore/csharp/generichost/net4.7/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net4.7/FormModels
- samples/client/petstore/csharp/generichost/net4.7/OneOf
- samples/client/petstore/csharp/generichost/net4.7/Petstore
- samples/client/petstore/csharp/generichost/net4.7/UseDateTimeForDate
- samples/client/petstore/csharp/generichost/net4.8/AllOf
- samples/client/petstore/csharp/generichost/net4.8/AnyOf
- samples/client/petstore/csharp/generichost/net4.8/AnyOfNoCompare
- samples/client/petstore/csharp/generichost/net4.8/FormModels
- samples/client/petstore/csharp/generichost/net4.8/OneOf
- samples/client/petstore/csharp/generichost/net4.8/Petstore
- samples/client/petstore/csharp/generichost/net4.8/UseDateTimeForDate
steps:
- uses: actions/checkout@v4
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -28,7 +28,7 @@ jobs:
# - samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: 3.1.*
- name: Build

View File

@@ -3,12 +3,14 @@ name: Samples C# .Net 8 Clients
on:
push:
paths:
- samples/client/petstore/csharp/generichost/latest/**
- 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/generichost/latest/**
- samples/client/petstore/csharp/generichost/net8/**
- samples/client/petstore/csharp/httpclient/net8/**
- samples/client/petstore/csharp/restsharp/net8/**
@@ -21,6 +23,7 @@ jobs:
fail-fast: false
matrix:
sample:
- samples/client/petstore/csharp/generichost/latest/Tags
- samples/client/petstore/csharp/generichost/net8/AllOf
- samples/client/petstore/csharp/generichost/net8/AnyOf
- samples/client/petstore/csharp/generichost/net8/AnyOfNoCompare
@@ -34,7 +37,7 @@ jobs:
- samples/client/petstore/csharp/generichost/net8/UseDateTimeForDate
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: '8.0.x'
- name: Build

View File

@@ -19,7 +19,7 @@ jobs:
- samples/client/echo_api/csharp-restsharp/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: '6.0.x'
- name: Run echo server

View File

@@ -18,7 +18,7 @@ jobs:
- samples/client/petstore/csharp/restsharp/net6/ParameterMappings/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -25,7 +25,7 @@ jobs:
- samples/server/petstore/aspnetcore-6.0-useSwashBuckle
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.0.0
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: '6.0.x'
- name: Build

View File

@@ -0,0 +1,36 @@
name: Samples C# .Net 8 Server
on:
push:
paths:
- samples/server/petstore/aspnetcore-8.0/**
- samples/server/petstore/aspnetcore-8.0-*/**
pull_request:
paths:
- samples/server/petstore/aspnetcore-8.0/**
- samples/server/petstore/aspnetcore-8.0-*/**
jobs:
build:
name: Build .Net 8 servers
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/aspnetcore-8.0
- samples/server/petstore/aspnetcore-8.0-NewtonsoftFalse
- samples/server/petstore/aspnetcore-8.0-nullableReferenceTypes
- samples/server/petstore/aspnetcore-8.0-pocoModels
- samples/server/petstore/aspnetcore-8.0-project4Models
- samples/server/petstore/aspnetcore-8.0-useSwashBuckle
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4.1.0
with:
dotnet-version: '8.0.x'
- name: Build
working-directory: ${{ matrix.sample }}
run: dotnet build Org.OpenAPITools.sln
- name: Test
working-directory: ${{ matrix.sample }}
run: dotnet test Org.OpenAPITools.sln

View File

@@ -22,7 +22,7 @@ jobs:
- samples/openapi3/client/elm
steps:
- uses: actions/checkout@v4
- uses: jorelali/setup-elm@v5
- uses: jorelali/setup-elm@v6
with:
elm-version: 0.19.1
- name: Build

View File

@@ -3,33 +3,33 @@ name: Samples Erlang
on:
push:
paths:
# comment out due to errors
# ===> Compiling src/openapi_pet_handler.erl failed
# src/openapi_pet_handler.erl:278: function is_authorized/2 already defined
#- samples/server/petstore/erlang-server/**
- samples/server/echo_api/erlang-server/**
- samples/server/petstore/erlang-server/**
- samples/client/petstore/erlang-client/**
- samples/client/petstore/erlang-proper/**
pull_request:
paths:
#- samples/server/petstore/erlang-server/**
- samples/server/echo_api/erlang-server/**
- samples/server/petstore/erlang-server/**
- samples/client/petstore/erlang-client/**
- samples/client/petstore/erlang-proper/**
jobs:
build:
name: Build Erlang projects
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
sample:
#- samples/server/petstore/erlang-server/
- samples/server/echo_api/erlang-server/
- samples/server/petstore/erlang-server/
- samples/client/petstore/erlang-client/
- samples/client/petstore/erlang-proper/
steps:
- uses: actions/checkout@v4
- uses: erlef/setup-beam@v1
with:
otp-version: '22.2'
rebar3-version: '3.14.3'
otp-version: '27'
rebar3-version: '3.23.0'
- run: rebar3 compile
working-directory: ${{ matrix.sample }}

View File

@@ -1,4 +1,4 @@
name: Samples Go
name: Samples Go
on:
push:
@@ -6,15 +6,17 @@ on:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
- 'samples/server/others/go-server/no-body-path-params/**'
pull_request:
paths:
- 'samples/server/petstore/go-echo-server/**'
- 'samples/server/petstore/go-api-server/**'
- 'samples/server/petstore/go-chi-server/**'
- 'samples/server/others/go-server/no-body-path-params/**'
jobs:
build:
name: Build Go
name: Build Go
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -23,6 +25,7 @@ jobs:
- samples/server/petstore/go-echo-server/
- samples/server/petstore/go-api-server/
- samples/server/petstore/go-chi-server/
- samples/server/others/go-server/no-body-path-params/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
@@ -32,3 +35,27 @@ jobs:
- name: Run test
working-directory: ${{ matrix.sample }}
run: go test -mod=mod -v
verify:
name: Verify generated Go files with Go tests
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/go-api-server/
go-version:
- "1.18"
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
- name: Install Dependencies
working-directory: ${{ matrix.sample }}
run: |
go mod tidy
- name: Run tests
working-directory: ${{ matrix.sample }}
run: go test ./samples_tests -v

View File

@@ -5,11 +5,13 @@ on:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/server/others/haskell-servant-ping/**
- samples/client/petstore/haskell-http-client/**
pull_request:
paths:
- samples/server/petstore/haskell-yesod/**
- samples/server/petstore/haskell-servant/**
- samples/server/others/haskell-servant-ping/**
- samples/client/petstore/haskell-http-client/**
jobs:
build:
@@ -22,6 +24,7 @@ jobs:
# servers
- samples/server/petstore/haskell-yesod/
- samples/server/petstore/haskell-servant/
- samples/server/others/haskell-servant-ping/
- samples/client/petstore/haskell-http-client/
steps:
- uses: actions/checkout@v4

View File

@@ -43,4 +43,4 @@ jobs:
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,47 @@
name: Java Client (Echo API) JDK17
on:
push:
paths:
- samples/client/echo_api/java/**
pull_request:
paths:
- samples/client/echo_api/java/**
jobs:
build:
name: Build Java Client JDK17
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- 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
- samples/client/echo_api/java/restclient
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Setup node.js
uses: actions/setup-node@v4
- name: Run echo server
run: |
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -50,4 +50,4 @@ jobs:
(cd http-echo-server && npm install && npm start &)
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -11,10 +11,13 @@ on:
- 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/okhttp-gson-oneOf-array/**
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
- samples/client/others/java/webclient-useAbstractionForFiles/**
- samples/client/others/java/jersey2-oneOf-duplicates/**
- samples/client/others/java/jersey2-oneOf-Mixed/**
- samples/client/others/java/resttemplate-list-schema-validation/**
- samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/**
pull_request:
paths:
- 'samples/client/petstore/java/**'
@@ -25,10 +28,13 @@ on:
- 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/okhttp-gson-oneOf-array/**
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
- samples/client/others/java/webclient-useAbstractionForFiles/**
- samples/client/others/java/jersey2-oneOf-duplicates/**
- samples/client/others/java/jersey2-oneOf-Mixed/**
- samples/client/others/java/resttemplate-list-schema-validation/**
- samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/**
jobs:
build:
name: Build Java Client JDK11
@@ -57,12 +63,15 @@ jobs:
- samples/client/petstore/java/rest-assured
- samples/client/petstore/java/rest-assured-jackson
- samples/client/petstore/java/microprofile-rest-client
- samples/client/petstore/java/microprofile-rest-client-mutiny
- 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-3.0-mutiny
- samples/client/petstore/java/microprofile-rest-client-with-useSingleRequestParameter
- samples/client/petstore/java/apache-httpclient
- samples/client/petstore/java/feign
- samples/client/petstore/java/feign-no-nullable
- samples/client/petstore/java/okhttp-gson-awsv4signature
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters
- samples/openapi3/client/petstore/java/native
@@ -73,11 +82,14 @@ jobs:
- samples/client/petstore/java/resttemplate-swagger2/
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/
- samples/client/others/java/okhttp-gson-oneOf/
- samples/client/others/java/okhttp-gson-oneOf-array/
- samples/client/echo_api/java/okhttp-gson-user-defined-templates/
- samples/client/others/java/resttemplate-useAbstractionForFiles/
- samples/client/others/java/webclient-useAbstractionForFiles/
- samples/client/others/java/jersey2-oneOf-duplicates/
- samples/client/others/java/jersey2-oneOf-Mixed/
- samples/client/others/java/resttemplate-list-schema-validation/
- samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
@@ -94,4 +106,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -5,10 +5,12 @@ on:
paths:
- samples/client/petstore/java/resttemplate-jakarta/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/restclient-*/**
pull_request:
paths:
- samples/client/petstore/java/resttemplate-jakarta/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/restclient-*/**
jobs:
build:
name: Build Java Client JDK17
@@ -20,6 +22,10 @@ jobs:
# clients
- samples/client/petstore/java/resttemplate-jakarta
- samples/client/petstore/java/webclient-jakarta
- samples/client/petstore/java/restclient
- samples/client/petstore/java/restclient-nullable-arrays
- samples/client/petstore/java/restclient-swagger2
- samples/client/petstore/java/restclient-useSingleRequestParameter
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
@@ -34,9 +40,27 @@ jobs:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build with Maven
working-directory: ${{ matrix.sample }}
run: mvn clean package
- name: Build with Gradle
run: mvn clean package --no-transfer-progress
- name: Cache gradle dependencies
uses: actions/cache@v4
env:
cache-name: gradle-caches
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
- name: Cache gradle wrapper
uses: actions/cache@v4
env:
cache-name: gradle-wrapper
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: gradle clean build
run: ./gradlew build -x test

View File

@@ -0,0 +1,44 @@
name: Samples Java Helidon v3
on:
push:
paths:
- samples/client/petstore/java-helidon-client/v3/**
- samples/server/petstore/java-helidon-server/v3/**
- samples/server/others/java-helidon-server/v3/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/v3/**
- samples/server/petstore/java-helidon-server/v3/**
- samples/server/others/java-helidon-server/v3/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/v3/mp
- samples/client/petstore/java-helidon-client/v3/se
- samples/server/petstore/java-helidon-server/v3/mp
- samples/server/petstore/java-helidon-server/v3/se
- samples/server/others/java-helidon-server/v3/mp-format-test
version: [17]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -0,0 +1,45 @@
name: Samples Java Helidon v4
on:
push:
paths:
- samples/client/petstore/java-helidon-client/v4/**
- samples/server/petstore/java-helidon-server/v4/**
- samples/server/others/java-helidon-server/v4/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/v4/**
- samples/server/petstore/java-helidon-server/v4/**
- samples/server/others/java-helidon-server/v4/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/v4/mp
- samples/client/petstore/java-helidon-client/v4/se
- samples/server/petstore/java-helidon-server/v4/mp
- samples/server/petstore/java-helidon-server/v4/se
- samples/server/petstore/java-helidon-server/v4/se-uac
- samples/server/others/java-helidon-server/v4/mp-format-test
version: [21]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -1,41 +0,0 @@
name: Samples Java Helidon
on:
push:
paths:
- samples/client/petstore/java-helidon-client/**
- samples/server/petstore/java-helidon-server/**
pull_request:
paths:
- samples/client/petstore/java-helidon-client/**
- samples/server/petstore/java-helidon-server/**
jobs:
build:
name: Build Java Helidon
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/client/petstore/java-helidon-client/mp
- samples/client/petstore/java-helidon-client/se
- samples/server/petstore/java-helidon-server/mp
- samples/server/petstore/java-helidon-server/se
version: [17]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package

View File

@@ -44,4 +44,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -3,20 +3,19 @@ name: Samples Java Server
on:
push:
paths:
# java-camel is tested locally for the time being
#- 'samples/server/petstore/java-camel/**'
- 'samples/server/petstore/java-vertx-web/**'
- 'samples/server/petstore/java-inflector/**'
- 'samples/server/petstore/java-pkmst/**'
# test in circleci instead
- 'samples/server/petstore/java-undertow/**'
- 'samples/server/petstore/java-microprofile/**'
pull_request:
paths:
#- 'samples/server/petstore/java-camel/**'
- 'samples/server/petstore/java-vertx-web/**'
- 'samples/server/petstore/java-inflector/**'
- 'samples/server/petstore/java-pkmst/**'
#- 'samples/server/petstore/java-undertow/**'
- 'samples/server/petstore/java-microprofile/**'
jobs:
build:
name: Build Java Server
@@ -26,11 +25,11 @@ jobs:
matrix:
sample:
# servers
#- samples/server/petstore/java-camel/
- samples/server/petstore/java-vertx-web/
- samples/server/petstore/java-inflector/
- samples/server/petstore/java-pkmst/
#- samples/server/petstore/java-undertow/
- samples/server/petstore/java-microprofile/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
@@ -47,4 +46,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -32,4 +32,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -33,4 +33,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -53,4 +53,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -4,28 +4,36 @@ on:
paths:
# clients
- samples/openapi3/client/petstore/spring-cloud-3/**
- samples/client/petstore/java-helidon-client/mp/**
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/java-helidon-client/v3/mp/**
- samples/client/petstore/java-helidon-client/v3/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/spring-http-interface-reactive-noResponseEntity/**
- samples/client/petstore/spring-http-interface-noResponseEntity/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/microprofile-rest-client-outer-enum/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
- samples/server/petstore/java-helidon-server/se/**
- samples/server/petstore/java-camel/**
- samples/server/petstore/java-helidon-server/v3/mp/**
- samples/server/petstore/java-helidon-server/v3/se/**
pull_request:
paths:
# clients
- samples/openapi3/client/petstore/spring-cloud-3/**
- samples/client/petstore/java-helidon-client/mp/**
- samples/client/petstore/java-helidon-client/se/**
- samples/client/petstore/java-helidon-client/v3/mp/**
- samples/client/petstore/java-helidon-client/v3/se/**
- samples/client/petstore/spring-http-interface-reactive/**
- samples/client/petstore/spring-http-interface/**
- samples/client/petstore/spring-http-interface-reactive-noResponseEntity/**
- samples/client/petstore/spring-http-interface-noResponseEntity/**
- samples/client/petstore/java/webclient-jakarta/**
- samples/client/petstore/java/microprofile-rest-client-outer-enum/**
# servers
- samples/openapi3/server/petstore/springboot-3/**
- samples/server/petstore/java-helidon-server/mp/**
- samples/server/petstore/java-helidon-server/se/**
- samples/server/petstore/java-camel/**
- samples/server/petstore/java-helidon-server/v3/mp/**
- samples/server/petstore/java-helidon-server/v3/se/**
jobs:
build:
name: Build with JDK17
@@ -36,17 +44,19 @@ jobs:
sample:
# clients
- samples/openapi3/client/petstore/spring-cloud-3
- samples/client/petstore/java-helidon-client/mp
- samples/client/petstore/java-helidon-client/se
- samples/client/petstore/java-helidon-client/v3/mp/
- samples/client/petstore/java-helidon-client/v3/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
- samples/client/petstore/spring-http-interface-reactive-noResponseEntity
- samples/client/petstore/spring-http-interface-noResponseEntity
- samples/client/petstore/java/webclient-jakarta
- samples/client/petstore/java/microprofile-rest-client-outer-enum
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/java-helidon-server/mp
- samples/server/petstore/java-helidon-server/se
- samples/client/petstore/spring-http-interface-reactive
- samples/client/petstore/spring-http-interface
- samples/server/petstore/java-camel/
- samples/server/petstore/java-helidon-server/v3/mp/
- samples/server/petstore/java-helidon-server/v3/se
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
@@ -63,4 +73,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

49
.github/workflows/samples-jdk21.yaml vendored Normal file
View File

@@ -0,0 +1,49 @@
name: Samples JDK21
on:
push:
paths:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/**
- samples/client/petstore/java-helidon-client/v4/se/**
# servers
- samples/server/petstore/java-helidon-server/v4/mp/**
- samples/server/petstore/java-helidon-server/v4/se/**
pull_request:
paths:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/**
- samples/client/petstore/java-helidon-client/v4/se/**
# servers
- samples/server/petstore/java-helidon-server/v4/mp/**
- samples/server/petstore/java-helidon-server/v4/se/**
jobs:
build:
name: Build with JDK21
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/petstore/java-helidon-client/v4/mp/
- samples/client/petstore/java-helidon-client/v4/se/
# servers
- samples/server/petstore/java-helidon-server/v4/mp/
- samples/server/petstore/java-helidon-server/v4/se/
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.m2
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package --no-transfer-progress

View File

@@ -30,7 +30,7 @@ jobs:
# Using develop mode to install package so that it is easier to modify the package test files
julia -e "using Pkg; Pkg.develop(\"OpenAPI\");"
cd ~/.julia/dev/OpenAPI
git checkout v0.1.14
git checkout v0.1.25
cd $currdir
rm -rf ~/.julia/dev/OpenAPI/test/client/openapigenerator_petstore_v3/petstore
rm -rf ~/.julia/dev/OpenAPI/test/server/openapigenerator_petstore_v3/petstore

View File

@@ -10,9 +10,6 @@ on:
- 'samples/client/petstore/kotlin*/**'
- 'samples/client/others/kotlin-jvm-okhttp-parameter-tests/**'
env:
GRADLE_VERSION: 6.9
jobs:
build:
name: Build Kotlin client
@@ -23,6 +20,7 @@ jobs:
sample:
# client
- samples/client/petstore/kotlin
- samples/client/petstore/kotlin-explicit
- samples/client/petstore/kotlin-gson
- samples/client/petstore/kotlin-jackson
- samples/client/petstore/kotlin-model-prefix-type-mappings
@@ -65,7 +63,6 @@ jobs:
- 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:
@@ -73,7 +70,7 @@ jobs:
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 8
java-version: 11
- name: Cache maven dependencies
uses: actions/cache@v4
env:
@@ -85,7 +82,6 @@ jobs:
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build

View File

@@ -7,8 +7,7 @@ on:
pull_request:
paths:
- samples/client/echo_api/kotlin**
env:
GRADLE_VERSION: 7.4
jobs:
build:
name: Build Kotlin Client JDK17
@@ -37,7 +36,6 @@ jobs:
- 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

View File

@@ -1,34 +1,46 @@
name: Samples Kotlin server
name: Samples Kotlin server (jdk17)
on:
push:
branches:
paths:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-modelMutable/**'
- 'samples/server/petstore/kotlin-springboot-*/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
pull_request:
paths:
- 'samples/server/petstore/kotlin-springboot-3*/**'
- 'samples/server/petstore/kotlin-server/javalin/**'
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-modelMutable/**'
- 'samples/server/petstore/kotlin-springboot-*/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 7.4
GRADLE_VERSION: '8.10'
jobs:
build:
name: Build Kotlin server
name: Build Kotlin server (jdk17)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# server
- samples/server/petstore/kotlin-server-required-and-nullable-properties
- samples/server/petstore/kotlin-springboot-3
- samples/server/petstore/kotlin-springboot-request
- samples/server/petstore/kotlin-springboot-delegate-nodefaults
- samples/server/petstore/kotlin-springboot-request-cookie
- samples/server/petstore/kotlin-server/jaxrs-spec
- samples/server/petstore/kotlin-server/jaxrs-spec-mutiny
- samples/server/petstore/kotlin-server/javalin
- samples/server/petstore/kotlin-server/javalin-6
- samples/server/petstore/kotlin-server/ktor
# comment out due to gradle build failure
# - samples/server/petstore/kotlin-spring-default/
steps:

View File

@@ -0,0 +1,49 @@
name: Samples Kotlin server (jdk21)
on:
push:
paths:
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
pull_request:
paths:
- 'samples/server/petstore/kotlin-server/**'
- 'samples/server/petstore/kotlin-server-required-and-nullable-properties/**'
env:
GRADLE_VERSION: '8.10'
jobs:
build:
name: Build Kotlin server (jdk21)
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
- samples/server/petstore/kotlin-server/javalin-6
- samples/server/petstore/kotlin-server/ktor
- samples/server/petstore/kotlin-server-required-and-nullable-properties
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 21
- name: Cache maven dependencies
uses: actions/cache@v4
env:
cache-name: maven-repository
with:
path: |
~/.gradle
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Install Gradle wrapper
uses: eskatos/gradle-command-action@v3
with:
gradle-version: ${{ env.GRADLE_VERSION }}
build-root-directory: ${{ matrix.sample }}
arguments: wrapper
- name: Build
working-directory: ${{ matrix.sample }}
run: ./gradlew build -x test

View File

@@ -1,8 +1,8 @@
name: Samples Kotlin server
name: Samples Kotlin server (jdk8)
on:
push:
branches:
paths:
- samples/server/others/kotlin-server/jaxrs-spec/**
- 'samples/server/petstore/kotlin*/**'
- 'samples/server/others/kotlin-server/jaxrs-spec-array-response/**'
@@ -17,11 +17,11 @@ on:
# - samples/server/petstore/kotlin-spring-default/**
env:
GRADLE_VERSION: 6.9
GRADLE_VERSION: 7.6.4
jobs:
build:
name: Build Kotlin server
name: Build Kotlin server (jdk8)
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -29,6 +29,7 @@ jobs:
sample:
# server
- samples/server/petstore/kotlin-springboot
- samples/server/petstore/kotlin-springboot-multipart-request-model
- samples/server/petstore/kotlin-springboot-bigdecimal-default
- samples/server/petstore/kotlin-springboot-delegate
- samples/server/petstore/kotlin-springboot-modelMutable
@@ -43,6 +44,7 @@ jobs:
- samples/server/petstore/kotlin-server/javalin
- samples/server/others/kotlin-server/jaxrs-spec
- samples/server/others/kotlin-server/jaxrs-spec-array-response
- samples/server/petstore/kotlin-spring-cloud
# comment out due to gradle build failure
#- samples/server/petstore/kotlin-spring-default
# no build.gradle file

View File

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

View File

@@ -17,7 +17,7 @@ jobs:
# schema
- samples/schema/postman-collection
python-version:
- "3.11"
- "3.12"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5

View File

@@ -4,6 +4,7 @@ on:
pull_request:
paths:
- samples/client/echo_api/python/**
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent/**
- .github/workflows/samples-python-client-echo-api.yaml
jobs:
build:
@@ -17,11 +18,11 @@ jobs:
- samples/client/echo_api/python
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
@@ -41,7 +42,7 @@ jobs:
- name: Test
working-directory: ${{ matrix.sample }}
run: python -m pytest
run: python -m unittest discover
- name: mypy
working-directory: ${{ matrix.sample }}

View File

@@ -15,11 +15,11 @@ jobs:
fail-fast: false
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
sample:
- samples/openapi3/client/petstore/python-aiohttp
- samples/openapi3/client/petstore/python

View File

@@ -17,11 +17,11 @@ jobs:
# clients
- samples/client/echo_api/python-pydantic-v1/
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5

View File

@@ -15,11 +15,11 @@ jobs:
fail-fast: false
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
sample:
- samples/openapi3/client/petstore/python-pydantic-v1-aiohttp
- samples/openapi3/client/petstore/python-pydantic-v1

View File

@@ -21,7 +21,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.7'
python-version: '3.9'
- name: Test
working-directory: ${{ matrix.sample }}
run: make test-all

View File

@@ -34,4 +34,4 @@ jobs:
toolchain: stable
- name: Build
working-directory: ${{ matrix.sample }}
run: cargo build
run: cargo build --all-targets --all-features

View File

@@ -23,6 +23,7 @@ jobs:
- 'samples/client/petstore/java/okhttp-gson'
- samples/client/petstore/scalaz
- samples/client/petstore/scala-pekko
- samples/client/petstore/scala-http4s
#- samples/client/petstore/scala-sttp # won't pass while the same tests in circleci pass
# servers
- samples/server/petstore/scala-lagom-server

View File

@@ -4,11 +4,17 @@ on:
push:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
pull_request:
paths:
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
jobs:
build:
name: Build Java Spring (JDK17)
@@ -20,8 +26,10 @@ jobs:
# clients
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
# servers
- samples/openapi3/server/petstore/springboot-3
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-lombok-tostring
- samples/server/petstore/springboot-file-delegate-optional
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
@@ -38,4 +46,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -25,40 +25,40 @@ jobs:
sample:
# clients
- samples/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-auth
- samples/client/petstore/spring-cloud-date-time
- samples/client/petstore/spring-cloud-deprecated
- samples/client/petstore/spring-cloud-tags
- samples/openapi3/client/petstore/spring-cloud
- samples/openapi3/client/petstore/spring-cloud-async
- samples/openapi3/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-http-basic
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
- samples/openapi3/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs-skip-default-interface
- samples/openapi3/client/petstore/spring-cloud-async
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
- 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
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-reactive
- samples/server/petstore/springboot-reactive-noResponseEntity
- samples/server/petstore/springboot-implicitHeaders
- samples/openapi3/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-delegate
- samples/server/petstore/springboot-delegate-no-response-entity
- samples/openapi3/server/petstore/springboot-delegate
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/spring-boot-nullable-set
- samples/server/petstore/spring-boot-defaultInterface-unhandledException
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/springboot-virtualan
- samples/server/petstore/springboot
- samples/server/petstore/springboot-beanvalidation
- samples/server/petstore/springboot-delegate
- samples/server/petstore/springboot-delegate-no-response-entity
- samples/server/petstore/springboot-implicitHeaders
- samples/server/petstore/springboot-implicitHeaders-annotationLibrary
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-reactive
- samples/server/petstore/springboot-reactive-noResponseEntity
- samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8
- samples/server/petstore/springboot-spring-pageable-delegatePattern
- samples/server/petstore/springboot-spring-pageable-without-j8
- samples/server/petstore/springboot-spring-pageable
- samples/server/petstore/springboot-spring-provide-args
- samples/server/petstore/springboot-lombok-data
- samples/server/petstore/springboot-useoptional
- samples/server/petstore/springboot-virtualan
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
@@ -75,4 +75,4 @@ jobs:
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
- name: Build
working-directory: ${{ matrix.sample }}
run: mvn clean package
run: mvn clean package --no-transfer-progress

View File

@@ -1,50 +0,0 @@
name: Samples Swift
on:
push:
paths:
- samples/client/petstore/swift5/**
pull_request:
paths:
- samples/client/petstore/swift5/**
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [macos-latest]
sample:
- samples/client/petstore/swift5/alamofireLibrary
- samples/client/petstore/swift5/anycodableLibrary
- samples/client/petstore/swift5/asyncAwaitLibrary
- samples/client/petstore/swift5/combineLibrary
- samples/client/petstore/swift5/default
- samples/client/petstore/swift5/deprecated
- samples/client/petstore/swift5/frozenEnums
- samples/client/petstore/swift5/nonPublicApi
- samples/client/petstore/swift5/objcCompatible
- samples/client/petstore/swift5/oneOf
- samples/client/petstore/swift5/promisekitLibrary
- samples/client/petstore/swift5/readonlyProperties
- samples/client/petstore/swift5/resultLibrary
- samples/client/petstore/swift5/rxswiftLibrary
- samples/client/petstore/swift5/urlsessionLibrary
- samples/client/petstore/swift5/validation
# NOTE: disabled as vaporLibrary doesnt build when adding this CI config
#- samples/client/petstore/swift5/vaporLibrary
- samples/client/petstore/swift5/x-swift-hashable
include:
- os: ubuntu-latest
sample: samples/client/petstore/swift5/alamofireLibrary
name: Build Swift samples
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: swift-actions/setup-swift@v2
if: ${{ matrix.os == 'ubuntu-latest' }}
with:
swift-version: '5'
- name: Build
working-directory: ${{ matrix.sample }}
run: swift build

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

@@ -0,0 +1,44 @@
name: Samples Swift 5
on:
push:
paths:
- samples/client/petstore/swift5/**
pull_request:
paths:
- samples/client/petstore/swift5/**
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [macos-latest]
sample:
- samples/client/petstore/swift5/alamofireLibrary
- samples/client/petstore/swift5/asyncAwaitLibrary
- samples/client/petstore/swift5/combineLibrary
- samples/client/petstore/swift5/default
- samples/client/petstore/swift5/objcCompatible
- samples/client/petstore/swift5/oneOf
- samples/client/petstore/swift5/promisekitLibrary
- samples/client/petstore/swift5/resultLibrary
- samples/client/petstore/swift5/rxswiftLibrary
- samples/client/petstore/swift5/urlsessionLibrary
- samples/client/petstore/swift5/validation
# NOTE: disabled as vaporLibrary doesnt build when adding this CI config
#- samples/client/petstore/swift5/vaporLibrary
include:
- os: ubuntu-latest
sample: samples/client/petstore/swift5/alamofireLibrary
name: Build Swift samples
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: swift-actions/setup-swift@v2
if: ${{ matrix.os == 'ubuntu-latest' }}
with:
swift-version: '5'
- name: Build
working-directory: ${{ matrix.sample }}
run: swift build

View File

@@ -0,0 +1,37 @@
name: TypeScript Client (Encoding / Decoding Test)
on:
pull_request:
paths:
- samples/client/others/typescript/encode-decode/**
- .github/workflows/samples-typescript-encode-decode.yaml
jobs:
build:
name: Test TypeScript Encoding / Decoding
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/others/typescript/encode-decode/test
node-version:
- 16
- 18
- 20
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Install
working-directory: ${{ matrix.sample }}
run: |
npm run preinstall
npm i
- name: Test
working-directory: ${{ matrix.sample }}
run: npm test

View File

@@ -0,0 +1,37 @@
name: TypeScript Node Client (Encoding / Decoding Test)
on:
pull_request:
paths:
- samples/client/others/typescript-node/encode-decode/**
- .github/workflows/samples-typescript-node-encode-decode.yaml
jobs:
build:
name: Test TypeScript Node Encoding / Decoding
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
sample:
# clients
- samples/client/others/typescript-node/encode-decode/test
node-version:
- 16
- 18
- 20
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Install
working-directory: ${{ matrix.sample }}
run: |
npm run preinstall
npm i
- name: Test
working-directory: ${{ matrix.sample }}
run: npm test

View File

@@ -0,0 +1,26 @@
name: TypeScript clients type checks
on:
pull_request:
paths:
- samples/**
- bin/ts-typecheck-all.sh
- .github/workflows/samples-typescript-typecheck.yaml
jobs:
build:
name: Typecheck TypeScript samples
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version:
- 20
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Run type checker
run: ./bin/ts-typecheck-all.sh

View File

@@ -39,7 +39,7 @@ jobs:
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
- name: Setup Maven
uses: s4u/setup-maven-action@v1.12.0
uses: s4u/setup-maven-action@v1.16.0
with:
java-version: ${{ matrix.java }}
maven-version: 3.8.8

1
.gitignore vendored
View File

@@ -1,4 +1,5 @@
.mvn/.gradle-enterprise/
.mvn/.develocity/
.scannerwork/
.vscode
*.iml

45
.mvn/develocity.xml Normal file
View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Common develocity.xml configuration for Maven shared between CI agents and developers building locally.
The build cache credentials required for CI builds to write to the remote build cache are read from environment variables.
Possibly, the credentials are configured in Jenkins via Credentials plugin (https://plugins.jenkins.io/credentials/) and
Credentials Binding plugin (https://plugins.jenkins.io/credentials-binding/), or the credentials are injected using the
vendor-specific mechanism of the CI server running the build.
Note: In the XML configuration below, you need to adjust
- the server url of your Develocity server
- the name of the environment variable that reveals the build is running in a CI environment
- the names of the environment variables holding the build cache credentials
to the specifics of your CI server settings. -->
<develocity
xmlns="https://www.gradle.com/develocity-maven" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.gradle.com/develocity-maven https://www.gradle.com/schema/develocity-maven.xsd">
<server>
<url>https://ge.openapi-generator.tech/</url>
<allowUntrusted>false</allowUntrusted>
</server>
<buildScan>
<backgroundBuildScanUpload>#{isFalse(env['CI'])}</backgroundBuildScanUpload> <!-- adjust to your CI provider -->
<publishing>
<onlyIf>authenticated</onlyIf>
</publishing>
<obfuscation>
<!-- Use a redacted value.-->
<ipAddresses>#{{'0.0.0.0'}}</ipAddresses>
</obfuscation>
</buildScan>
<buildCache>
<local>
<enabled>true</enabled>
</local>
<remote>
<enabled>true</enabled>
<!-- Check credentials presence to avoid build cache errors on PR builds when credentials are not present -->
<storeEnabled>#{isTrue(env['CI']) and isTrue(env['GRADLE_ENTERPRISE_ACCESS_KEY'])}</storeEnabled>
</remote>
</buildCache>
</develocity>

View File

@@ -2,8 +2,8 @@
<extensions>
<extension>
<groupId>com.gradle</groupId>
<artifactId>gradle-enterprise-maven-extension</artifactId>
<version>1.20.1</version>
<artifactId>develocity-maven-extension</artifactId>
<version>1.21.6</version>
</extension>
<extension>
<groupId>com.gradle</groupId>

View File

@@ -1,45 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Common gradle-enterprise.xml configuration for Maven shared between CI agents and developers building locally.
The build cache credentials required for CI builds to write to the remote build cache are read from environment variables.
Possibly, the credentials are configured in Jenkins via Credentials plugin (https://plugins.jenkins.io/credentials/) and
Credentials Binding plugin (https://plugins.jenkins.io/credentials-binding/), or the credentials are injected using the
vendor-specific mechanism of the CI server running the build.
Note: In the XML configuration below, you need to adjust
- the server url of your Gradle Enterprise server
- the name of the environment variable that reveals the build is running in a CI environment
- the names of the environment variables holding the build cache credentials
to the specifics of your CI server settings. -->
<gradleEnterprise
xmlns="https://www.gradle.com/gradle-enterprise-maven" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.gradle.com/gradle-enterprise-maven https://www.gradle.com/schema/gradle-enterprise-maven.xsd">
<server>
<url>https://ge.openapi-generator.tech/</url> <!-- adjust to your GE server -->
<allowUntrusted>false</allowUntrusted> <!-- ensure a trusted certificate is configured -->
</server>
<buildScan>
<captureGoalInputFiles>true</captureGoalInputFiles>
<backgroundBuildScanUpload>#{isFalse(env['CI'])}</backgroundBuildScanUpload> <!-- adjust to your CI provider -->
<publish>ALWAYS</publish>
<publishIfAuthenticated>true</publishIfAuthenticated>
<obfuscation>
<!-- Use a redacted value.-->
<ipAddresses>#{{'0.0.0.0'}}</ipAddresses>
</obfuscation>
</buildScan>
<buildCache>
<local>
<enabled>true</enabled>
</local>
<remote>
<enabled>true</enabled>
<!-- Check credentials presence to avoid build cache errors on PR builds when credentials are not present -->
<storeEnabled>#{isTrue(env['CI']) and isTrue(env['GRADLE_ENTERPRISE_ACCESS_KEY'])}</storeEnabled>
</remote>
</buildCache>
</gradleEnterprise>

2
.sdkmanrc Normal file
View File

@@ -0,0 +1,2 @@
java=11.0.23-tem
maven=3.8.8

View File

@@ -201,16 +201,19 @@ after_success:
echo "Pushed to $DOCKER_CODEGEN_CLI_IMAGE_NAME";
fi;
fi;
# publish latest website, variables below are secure environment variables which are unavailable to PRs from forks.
#- if [ "$TRAVIS_BRANCH" = "master" ] && [ -z $TRAVIS_TAG ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
# cd website;
# git config --global user.name "${GH_NAME}";
# git config --global user.email "${GH_EMAIL}";
# echo "machine github.com login ${GH_NAME} password ${GH_TOKEN}" > ~/.netrc;
# yarn install;
# GIT_USER="${GH_NAME}" yarn run publish-gh-pages;
# fi;
## NOTE; we will do the followign manually instead as the page doesn't need to be updated in every single travis build
## publish latest website, variables below are secure environment variables which are unavailable to PRs from forks.
# - if [ "$TRAVIS_BRANCH" = "master" ] && [ -z $TRAVIS_TAG ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
# sed -i "s/Vector{UInt8}/Vector\&#123;UInt8\&#125;/g" docs/generators/julia-client.md;
# sed -i "s/Vector{UInt8}/Vector\&#123;UInt8\&#125;/g" docs/generators/julia-server.md;
# cd website;
# git config --global user.name "${GH_NAME}";
# git config --global user.email "${GH_EMAIL}";
# echo "machine github.com login ${GH_NAME} password ${GH_TOKEN}" > ~/.netrc;
# yarn install;
# GIT_USER="${GH_NAME}" yarn run publish-gh-pages;
# fi;
#
env:
- DOCKER_GENERATOR_IMAGE_NAME=openapitools/openapi-generator-online DOCKER_CODEGEN_CLI_IMAGE_NAME=openapitools/openapi-generator-cli NODE_ENV=test CC=gcc-5 CXX=g++-5

View File

@@ -39,10 +39,19 @@ elif [ "$NODE_INDEX" = "2" ]; then
export PATH="/usr/local/go1.18/go/bin:$PATH"
go version
# install cpprestsdk
sudo apt-get install libcpprest-dev
wget "https://github.com/aminya/setup-cpp/releases/download/v0.37.0/setup-cpp-x64-linux"
chmod +x ./setup-cpp-x64-linux
sudo ./setup-cpp-x64-linux --compiler llvm --cmake true --ninja true
source ~/.cpprc # activate cpp environment variables
# run go integration tests
(cd samples/client/petstore/go && mvn integration-test)
(cd samples/openapi3/client/petstore/go && mvn integration-test)
(cd samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false && mvn integration-test)
(cd samples/client/others/go/allof_multiple_ref_and_discriminator && mvn integration-test)
(cd samples/client/petstore/cpp-restsdk/client && mvn integration-test)
elif [ "$NODE_INDEX" = "3" ]; then
@@ -70,6 +79,7 @@ elif [ "$NODE_INDEX" = "3" ]; then
(cd samples/client/petstore/typescript-angular-v15-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v16-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v17-provided-in-root && mvn integration-test)
(cd samples/client/petstore/typescript-angular-v18-provided-in-root && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/default && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/tests/default && mvn integration-test)
(cd samples/openapi3/client/petstore/typescript/builds/jquery && mvn integration-test)
@@ -81,6 +91,7 @@ elif [ "$NODE_INDEX" = "3" ]; then
#(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/openapi3/client/petstore/typescript/builds/nullable-enum && 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)
@@ -89,6 +100,7 @@ elif [ "$NODE_INDEX" = "3" ]; then
(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/typescript-axios/tests/with-complex-headers && 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)
@@ -104,11 +116,13 @@ else
(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/petstore/java/jersey3-oneOf && mvn integration-test)
(cd samples/client/others/java/okhttp-gson-streaming && mvn integration-test)
(cd samples/client/petstore/java/okhttp-gson && mvn integration-test)
(cd samples/client/petstore/java/okhttp-gson-3.1 && mvn integration-test)
(cd samples/client/petstore/java/resteasy && mvn integration-test)
(cd samples/client/petstore/java-micronaut-client && mvn integration-test)
(cd samples/client/petstore/java/apache-httpclient && mvn integration-test)
(cd samples/client/petstore/java/resttemplate-jakarta && mvn integration-test)
fi

View File

@@ -10,6 +10,16 @@ COPY ./LICENSE ${GEN_DIR}
# Required to compile openapi-generator
COPY ./google_checkstyle.xml ${GEN_DIR}
# All poms are copied, then we go offline, to allow for better caching of code changes without fetching all dependencies each time
COPY ./modules/openapi-generator-gradle-plugin/pom.xml ${GEN_DIR}/modules/openapi-generator-gradle-plugin/
COPY ./modules/openapi-generator-maven-plugin/pom.xml ${GEN_DIR}/modules/openapi-generator-maven-plugin/
COPY ./modules/openapi-generator-online/pom.xml ${GEN_DIR}/modules/openapi-generator-online/
COPY ./modules/openapi-generator-cli/pom.xml ${GEN_DIR}/modules/openapi-generator-cli/
COPY ./modules/openapi-generator-core/pom.xml ${GEN_DIR}/modules/openapi-generator-core/
COPY ./modules/openapi-generator/pom.xml ${GEN_DIR}/modules/openapi-generator/
COPY ./pom.xml ${GEN_DIR}
RUN mvn dependency:go-offline
# Modules are copied individually here to allow for caching of docker layers between major.minor versions
COPY ./modules/openapi-generator-gradle-plugin ${GEN_DIR}/modules/openapi-generator-gradle-plugin
COPY ./modules/openapi-generator-maven-plugin ${GEN_DIR}/modules/openapi-generator-maven-plugin
@@ -17,7 +27,6 @@ COPY ./modules/openapi-generator-online ${GEN_DIR}/modules/openapi-generator-onl
COPY ./modules/openapi-generator-cli ${GEN_DIR}/modules/openapi-generator-cli
COPY ./modules/openapi-generator-core ${GEN_DIR}/modules/openapi-generator-core
COPY ./modules/openapi-generator ${GEN_DIR}/modules/openapi-generator
COPY ./pom.xml ${GEN_DIR}
# Pre-compile openapi-generator-cli
RUN mvn -B -am -pl "modules/openapi-generator-cli" package

View File

@@ -6,7 +6,7 @@
[![Stable releases in Maven Central](https://img.shields.io/maven-metadata/v/https/repo1.maven.org/maven2/org/openapitools/openapi-generator/maven-metadata.xml.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22)
[![Apache 2.0 License](https://img.shields.io/badge/License-Apache%202.0-orange)](./LICENSE)
[![Open Collective backers](https://img.shields.io/opencollective/backers/openapi_generator?color=orange&label=OpenCollective%20Backers)](https://opencollective.com/openapi_generator)
[![Join the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/zt-12jxxd7p2-XUeQM~4pzsU9x~eGLQqX2g)
[![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-2uoef5v0g-XGwo8~2oJ3EoziDSO1CmdQ)
[![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/recipes/openapi-generator)
@@ -15,7 +15,7 @@
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.6.0`):
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.10.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)
@@ -69,7 +69,10 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[<img src="https://openapi-generator.tech/img/companies/svix.png" width="128" height="128">](https://www.svix.com/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/litslink.png" width="128" height="128">](https://litslink.com/services/artificial-intelligence?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/designli.jpg" width="128" height="128">](https://designli.co?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/itm.png" width="128" height="128">](https://opensource.muenchen.de?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/kong.png" width="128" height="128">](https://konghq.com/products/kong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=openapi-generator)
[<img src="https://openapi-generator.tech/img/companies/route4me.png" width="128" height="128">](https://route4me.com/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
[<img src="https://openapi-generator.tech/img/companies/dm.png" width="128" height="128">](https://www.dotcom-monitor.com/sponsoring-open-source-projects/?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity
@@ -82,13 +85,13 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
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, 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**, **Postman Collection**, **Protocol Buffer**, **WSDL** |
| | Languages/Frameworks |
| -------------------------------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient 4.x, Apache HttpClient 5.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, Spring 6 RestClient, 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, 6.x), **Typescript** (AngularJS, Angular (9.x - 18.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs), **XoJo**, **Zapier** |
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, Azure Functions), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/), [Apache Camel](https://camel.apache.org/), [Helidon](https://helidon.io/)), **Julia**, **Kotlin** (Spring Boot, [Ktor](https://github.com/ktorio/ktor), [Vert.x](https://vertx.io/)), **PHP** ([Flight](https://docs.flightphp.com/), Laravel, Lumen, [Mezzio (fka Zend Expressive)](https://github.com/mezzio/mezzio), Slim, Silex, [Symfony](https://symfony.com/)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** ([rust-server](https://openapi-generator.tech/docs/generators/rust-server/)), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), [Cask](https://github.com/com-lihaoyi/cask), Scalatra) |
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML** |
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Postman Collection**, **Protocol Buffer**, **WSDL** |
## Table of contents
@@ -126,8 +129,9 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
| OpenAPI Generator Version | Release Date | Notes |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
| 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) |
| 7.10.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.10.0-SNAPSHOT/) | 07.11.2024 | Minor release with breaking changes (with fallback) |
| [7.9.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.9.0) (latest stable release) | 07.10.2024 | Minor release with breaking changes (with fallback) |
| [7.8.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.8.0) (latest stable release) | 19.08.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) |
@@ -190,16 +194,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.5.0/openapi-generator-cli-7.5.0.jar`
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.9.0/openapi-generator-cli-7.9.0.jar`
For **Mac/Linux** users:
```sh
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
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.9.0/openapi-generator-cli-7.9.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.5.0/openapi-generator-cli-7.5.0.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.9.0/openapi-generator-cli-7.9.0.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -260,7 +264,7 @@ To build from source, you need the following installed and available in your `$P
* [Java 11](https://adoptium.net/)
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/) (optional)
* [Apache Maven 3.8.8 or greater](https://maven.apache.org/) (optional)
After cloning the project, you can build it from source using [maven wrapper](https://maven.apache.org/wrapper/):
@@ -434,7 +438,7 @@ openapi-generator-cli version
To use a specific version of "openapi-generator-cli"
```sh
openapi-generator-cli version-manager set 7.0.1
openapi-generator-cli version-manager set 7.9.0
```
Or install it as dev-dependency:
@@ -443,6 +447,9 @@ Or install it as dev-dependency:
npm install @openapitools/openapi-generator-cli -D
```
<!-- /RELEASE_VERSION -->
You can use [locally built JARs](https://github.com/OpenAPITools/openapi-generator-cli?tab=readme-ov-file#use-locally-built-jar) or [`SNAPSHOT` versions](https://github.com/OpenAPITools/openapi-generator-cli?tab=readme-ov-file#use-nightly-snapshot-build) as well.
## [2 - Getting Started](#table-of-contents)
To generate a PHP client for [petstore.yaml](https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml), please run the following
@@ -458,7 +465,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.1/openapi-generator-cli-7.0.1.jar)
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.9.0/openapi-generator-cli-7.9.0.jar)
<!-- /RELEASE_VERSION -->
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
@@ -574,9 +581,9 @@ Please refer to [online.md](docs/online.md) on how to run and use the `openapi-g
### [3.4 - License information on Generated Code](#table-of-contents)
The OpenAPI Generator project is intended as a benefit for users of the Open API Specification. The project itself has the [License](#license) as specified. In addition, please understand the following points:
The OpenAPI Generator project is intended as a benefit for users of the Open API Specification. The project itself has the [License](#7---license) as specified. In addition, please understand the following points:
* The templates included with this project are subject to the [License](#license).
* The templates included with this project are subject to the [License](#7---license).
* Generated code is intentionally _not_ subject to the parent project license
When code is generated from this project, it shall be considered **AS IS** and owned by the user of the software. There are no warranties--expressed or implied--for generated code. You can do what you wish with it, and once generated, the code is your responsibility and subject to the licensing terms that you deem appropriate.
@@ -597,6 +604,7 @@ Here is a list of community-contributed IDE plug-ins that integrate with OpenAPI
Here are some companies/projects (alphabetical order) using OpenAPI Generator in production. To add your company/project to the list, please visit [README.md](README.md) and click on the icon to edit the page.
- [Aalborg University](https://www.aau.dk)
- [act coding](https://github.com/actcoding)
- [Adaptant Solutions AG](https://www.adaptant.io/)
- [adesso SE](https://www.adesso.de/)
- [Adyen](https://www.adyen.com/)
@@ -624,11 +632,13 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [CAM](https://www.cam-inc.co.jp/)
- [Camptocamp](https://www.camptocamp.com/en)
- [Carlsberg Group](https://www.carlsberggroup.com/)
- [CERN](https://home.cern/)
- [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/)
- [ConfigCat](https://configcat.com/)
- [cronn GmbH](https://www.cronn.de/)
- [Crossover Health](https://crossoverhealth.com/)
- [Cupix](https://www.cupix.com/)
@@ -715,6 +725,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- [Telstra](https://dev.telstra.com)
- [Tencent](https://www.tencent.com)
- [The University of Aizu](https://www.u-aizu.ac.jp/en/)
- [TINQIN](https://www.tinqin.com/)
- [Translucent ApS](https://www.translucent.dk)
- [TravelTime platform](https://www.traveltimeplatform.com/)
- [TribalScale](https://www.tribalscale.com)
@@ -930,6 +941,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 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-01-24 - [Comment générer des stubs wiremock avec openapi generator](https://www.youtube.com/watch?v=0jhONfBrcKw) by [Alexis Couvreur](https://github.com/acouvreur)
- 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)
@@ -938,7 +950,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
What's the design philosophy or principle behind OpenAPI Generator?
We focus on developer experience. The generators should produce code, config, documentation, and more that are easily understandable and consumable by users. We focused on simple use cases to start with (bottom-up approach). Since then the project and the community have grown a lot: 300k weekly downloads via NPM CLI wrapper, 20M downloads via openapi-generator-cli docker image just to highlight a few. We've gradually supported more features (e.g. oneOf, anyOf introduced in OpenAPI 3.0) in various generators and we will continue this approach to deliver something based on our understanding of user demand and what they want, and continue to add support of new features introduced in OpenAPI specification (such as v3.1 and future versions of the OpenAPI specification).
We focus on developer experience. The generators should produce code, config, documentation, and more that are easily understandable and consumable by users. We focused on simple use cases to start with (bottom-up approach). Since then the project and the community have grown a lot: 600k weekly downloads via NPM CLI wrapper, 30M downloads via openapi-generator-cli docker image just to highlight a few. We've gradually supported more features (e.g. oneOf, anyOf introduced in OpenAPI 3.0) in various generators and we will continue this approach to deliver something based on our understanding of user demand and what they want, and continue to add support of new features introduced in OpenAPI specification (such as v3.1 and future versions of the OpenAPI specification).
### [6.1 - OpenAPI Generator Core Team](#table-of-contents)
@@ -986,6 +998,7 @@ Here is a list of template creators:
* Groovy: @victorgit
* Go: @wing328 [:heart:](https://www.patreon.com/wing328)
* Go (rewritten in 2.3.0): @antihax
* Godot (GDScript): @Goutte [:heart:](https://liberapay.com/Goutte)
* Haskell (http-client): @jonschoning
* Java (Feign): @davidkiss
* Java (Retrofit): @0legg
@@ -994,6 +1007,7 @@ Here is a list of template creators:
* Java (okhttp-gson): @xhh
* Java (RestTemplate): @nbruno
* Java (Spring 5 WebClient): @daonomic
* Java (Spring 6 RestClient): @nicklas2751
* Java (RESTEasy): @gayathrigs
* Java (Vertx): @lopesmcc
* Java (Google APIs Client Library): @charlescapps
@@ -1035,10 +1049,12 @@ Here is a list of template creators:
* Scala (sttp): @chameleon82
* Scala (sttp4): @flsh86
* Scala (Pekko): @mickaelmagniez
* Scala (http4s): @JennyLeahy
* Swift: @tkqubo
* Swift 3: @hexelon
* Swift 4: @ehyche
* Swift 5: @4brunu
* Swift 6: @4brunu
* Swift Combine: @dydus0x14
* TypeScript (Angular1): @mhardorf
* TypeScript (Angular2): @roni-frantchi
@@ -1064,7 +1080,7 @@ Here is a list of template creators:
* C++ (Qt5 QHttpEngine): @etherealjoy
* C++ Pistache: @sebymiano
* C++ Restbed: @stkrwork
* Erlang Server: @galaxie
* Erlang Server: @galaxie @nelsonvides
* F# (Giraffe) Server: @nmfisher
* Go Server: @guohuang
* Go Server (refactored in 7.0.0): @lwj5
@@ -1082,6 +1098,7 @@ Here is a list of template creators:
* Java Vert.x: @lwlee2608
* Java Micronaut: @andriy-dmytruk
* Java Helidon: @spericas @tjquinno @tvallin
* Java WireMock: [@acouvreur](https://github.com/acouvreur)
* JAX-RS RestEasy: @chameleon82
* JAX-RS CXF: @hiveship
* JAX-RS CXF (CDI): @nickcmaynard
@@ -1091,6 +1108,7 @@ Here is a list of template creators:
* Kotlin (Spring Boot): @dr4ke616
* Kotlin (Vertx): @Wooyme
* Kotlin (JAX-RS): @anttileppa
* Kotlin WireMock: @stefankoppier
* NodeJS Express: @YishTish
* PHP Flight: @daniel-sc
* PHP Laravel: @renepardon
@@ -1173,7 +1191,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| Eiffel | @jvelilla (2017/09) |
| Elixir | @mrmstn (2018/12) |
| Elm | @eriktim (2018/09) |
| Erlang | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) |
| Erlang | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) @nelsonvides (2024/09) |
| F# | @nmfisher (2019/05) |
| Go | @antihax (2017/11) @grokify (2018/07) @kemokemo (2018/09) @jirikuncar (2021/01) @ph4r5h4d (2021/04) @lwj5 (2023/04) |
| GraphQL | @renepardon (2018/12) |
@@ -1184,7 +1202,7 @@ If you want to join the committee, please kindly apply by sending an email to te
| JMeter | @kannkyo (2021/01) |
| Jetbrains HTTP Client | @jlengrand (2023/01) |
| Julia | @tanmaykm (2023/01) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) @stefankoppier (2022/06) |
| Kotlin | @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) @4brunu (2019/11) @yutaka0m (2020/03) @stefankoppier (2022/06) @e5l (2024/10) |
| Lua | @daurnimator (2017/08) |
| N4JS | @mmews-n4 (2023/03) |
| Nim | |
@@ -1198,9 +1216,9 @@ If you want to join the committee, please kindly apply by sending an email to te
| R | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
| Ruby | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
| Rust | @frol (2017/07) @farcaller (2017/08) @richardwhiuk (2019/07) @paladinzh (2020/05) @jacob-pro (2022/10) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) @fish86 (2023/06) |
| Scala | @clasnake (2017/07), @shijinkui (2018/01), @ramzimaalej (2018/03), @chameleon82 (2020/03), @Bouillie (2020/04) @fish86 (2023/06) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @4brunu (2019/11) @dydus0x14 (2023/06) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) @davidgamero (2022/03) @mkusaka (2022/04) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) @davidgamero (2022/03) @mkusaka (2022/04) @joscha (2024/10) |
| Xojo | @Topheee (2023/04) |

View File

@@ -54,8 +54,25 @@ test_script:
- dotnet test samples\client\petstore\csharp\generichost\net8\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\SourceGeneration\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net8\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\standard2.0\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\AllOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\AnyOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\AnyOfNoCompare\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\FormModels\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\OneOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.8\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\AllOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\AnyOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\AnyOfNoCompare\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\FormModels\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\OneOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\generichost\net4.7\UseDateTimeForDate\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\httpclient\standard2.0\Petstore\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
- dotnet test samples\client\petstore\csharp\restsharp\net4.7\MultipleFrameworks\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints-useApiVersioning
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "false"
useRecords: "false"
useAuthentication: "false"
useValidators: "false"
useResponseCaching: "false"
useApiVersioning: "true"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{1EC59EB0-DA5B-40C0-8E49-A3E0829DBBFC}"
projectConfigurationGuid: "{9685C490-9B77-4EE2-BE4D-811F52665E8F}"

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints-useAuthentication
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "false"
useRecords: "false"
useAuthentication: "true"
useValidators: "false"
useResponseCaching: "false"
useApiVersioning: "false"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{10D45F9B-F270-480C-9DA9-720AA62526A4}"
projectConfigurationGuid: "{3FA19D58-AE7C-45E5-B00E-7482026D1816}"

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints-useProblemDetails
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "true"
useRecords: "false"
useAuthentication: "false"
useValidators: "false"
useResponseCaching: "false"
useApiVersioning: "false"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{EA9B735E-72CA-44C4-BB28-358BDECE60C8}"
projectConfigurationGuid: "{74D68BAC-36F5-43FC-BE9A-F3E660EECF5D}"

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints-useRecords
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "false"
useRecords: "true"
useAuthentication: "false"
useValidators: "false"
useResponseCaching: "false"
useApiVersioning: "false"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{C5D2BEB0-AB74-433F-BC14-DA66CAC82C10}"
projectConfigurationGuid: "{D465FD3B-3146-4661-BB50-522608AA3967}"

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints-useResponseCaching
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "false"
useRecords: "false"
useAuthentication: "false"
useValidators: "false"
useResponseCaching: "true"
useApiVersioning: "false"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{BC56C2A3-ACC5-4ED0-AD8F-CD1831B8A467}"
projectConfigurationGuid: "{5D19ACAB-8830-47FD-BAFA-C0985DF9F5F3}"

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints-useValidators
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "false"
useRecords: "false"
useAuthentication: "false"
useValidators: "true"
useResponseCaching: "false"
useApiVersioning: "false"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{C7818EE1-09E2-4349-9696-8B1A9119974A}"
projectConfigurationGuid: "{39B801D8-74AA-465D-A637-4A2FFB905378}"

View File

@@ -0,0 +1,16 @@
generatorName: aspnet-fastendpoints
outputDir: samples/server/petstore/aspnet/fastendpoints
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/aspnet-fastendpoints
additionalProperties:
hideGenerationTimestamp: "true"
useProblemDetails: "false"
useRecords: "false"
useAuthentication: "false"
useValidators: "false"
useResponseCaching: "false"
useApiVersioning: "false"
routePrefix: "api"
versionPrefix: "v"
solutionGuid: "{4BC03566-F5F9-4E45-A835-8FA3B2B524B9}"
projectConfigurationGuid: "{5F32A09C-5CB7-4917-83AB-CD7D1A04FF49}"

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,4 @@
generatorName: avro-schema
outputDir: samples/openapi3/schema/valid-enums/avro-schema-enum
inputSpec: modules/openapi-generator/src/test/resources/3_0/avro-schema/valid-enums.yaml
templateDir: modules/openapi-generator/src/main/resources/avro-schema

View File

@@ -2,3 +2,6 @@ generatorName: avro-schema
outputDir: samples/openapi3/schema/petstore/avro-schema
inputSpec: modules/openapi-generator/src/test/resources/3_0/avro-schema/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/avro-schema
additionalProperties:
useLogicalTypes: true
logicalTypeTimeQuantifier: nanos

View File

@@ -0,0 +1,7 @@
generatorName: cpp-pistache-server
outputDir: samples/server/petstore/cpp-pistache-everything
inputSpec: modules/openapi-generator/src/test/resources/3_0/issues-anytype-object-set-petstore-everything.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-pistache-server
additionalProperties:
useStructModel: "false"
addExternalLibs: "true"

View File

@@ -0,0 +1,7 @@
generatorName: cpp-pistache-server
outputDir: samples/server/petstore/cpp-pistache-nested-schema-refs
inputSpec: modules/openapi-generator/src/test/resources/3_0/nested-schema-refs.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-pistache-server
additionalProperties:
useStructModel: "false"
addExternalLibs: "true"

View File

@@ -0,0 +1,9 @@
generatorName: cpp-qt-client
outputDir: samples/client/petstore/cpp-qt-addDownloadProgress
inputSpec: modules/openapi-generator/src/test/resources/3_0/cpp-qt/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-qt-client
additionalProperties:
packageName: CppQtPetstoreClient
cppNamespace: test_namespace
modelNamePrefix: PFX
addDownloadProgress: true

View File

@@ -1,6 +1,6 @@
generatorName: cpp-restsdk
outputDir: samples/client/petstore/cpp-restsdk/client
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/cpp-restsdk/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/cpp-rest-sdk-client
additionalProperties:
packageName: CppRestPetstoreClient

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: false
equatable: true
targetFramework: net47
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: false
equatable: true
targetFramework: net47
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: false
equatable: true
targetFramework: net47
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,18 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: net47
skipFormModel: false
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical
inlineSchemaOptions:
RESOLVE_INLINE_ENUMS: true

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: false
equatable: true
targetFramework: net47
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,12 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: net47
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.7/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: net47
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.8/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: false
equatable: true
targetFramework: net48
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.8/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: false
equatable: true
targetFramework: net48
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,15 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.8/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: false
equatable: true
targetFramework: net48
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical

View File

@@ -0,0 +1,18 @@
# for csharp generichost
generatorName: csharp
outputDir: samples/client/petstore/csharp/generichost/net4.8/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: net48
skipFormModel: false
modelPropertySorting: alphabetical
operationParameterSorting: alphabetical
inlineSchemaOptions:
RESOLVE_INLINE_ENUMS: true

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