This commit fixes an issue where the object mapper is not passed to the JacksonConverterFactory. The issue causing the serialization to fail when passing to the ApiClient a pre-configured mapper object (e.g. the primary bean of SpringBoot).
With this fix, the bean would be correctly passed to the factory, and the serialization would work "out of the box" for the pre-configured bean.
* Added option to mustache template that allows passing of non JSON request bodies
* Used linux terminal to run the generator scripts
---------
Co-authored-by: mHejlesen <mads.hejlesen@secata.com>
* Fixed invalid extraction of response body in kotlin-client jvm-spring-*
* Generated echo-api for kotlin-jvm-spring-3-restclient
* Specific echo-api for Kotlin without allOf/anyOf
* Specific echo-api for Kotlin without allOf/anyOf
* Generated all samples
* Added kotlin-jvm-spring-3-restclient sample to workflow
* Fixed syntax problem
* test(perl): Update test plan to use done_testing
close#14921
* fixup! test(perl): Update test plan to use done_testing
results of "./bin/generate-samples.sh ./bin/configs/perl.yaml"
* fixup! test(perl): Update test plan to use done_testing
regenerate samples
---------
Co-authored-by: William E Little Jr <13027375-bmodotdev@users.noreply.gitlab.com>
* feat: add `java-wiremock` generator
* remove text block usage for samples
this will allow more version of jav to be compatible with this
* fix extra parenthesis
* Add java-wiremock workflow
* chore: Remove leftover Github action file
This was probably added by mistake. A similar file is active in
.github/workflows/samples-python-pydantic-v1-petstore.yaml.
* chore: Remove leftover VERSION from old python-experimental sample
* ci: Stop running Python integration tests in Circle CI
These Python clients are all tested with Github Actions already, which
is faster, more cleanly separated and only runs on modifications.
I'm not cleaning up the pydantic-v1 client, I expect it to be removed soon anyway.
* chore: Remove true from sample folder name
python-disallowAdditionalPropertiesIfNotPresent-true
-> python-disallowAdditionalPropertiesIfNotPresent
* kotlin-server: Add support for Javalin
* kotlin-server: Add Javalin generated sample code
* Add output from build scripts
* Address MR feedback
* Update CI to include new Javalin sample
* Uses ParseQuery to check for malform paramater value pairs.
Runs ./mvnw clean package, ./bin/generate-samples.sh ./bin/configs/*.yaml, and ./bin/utils/export_docs_generators.sh.
* Adds missing import
* Only import url if hasQueryParams.
* Adds helper function to wrap url.ParseQuery.
* Fixes function return signature
Because the requirements file does not limit connexion version to below
3.0, with release of connexion 3.0 the openapi server startup sequence
runs into a module not found issue.
This contraint is preventing that.
The DefaultCodegen now iterates through all api operations.
This allows to access different examples based on the response per status code and content type.
When an example was specified for a property with the `date` format, it's example would be generated to something like `2024-01-01T00:00:00.000+00:00` or `Sat Jan 30 01:00:00 CET 2021`.
It's because the resolved type for a Date example is a DateSchema, and a DateSchema uses `java.util.Date` to represents the Date. Which gets printed using .toString() not in the YYYY-MM-dd format.
Fixes#17494#15342
* fix: ExampleGenerator correctly generates allOf composed schemas
Changes the previous behavior of generating `null` examples for allOf composed schemas.
Fixes#17497
* fix: ExampleGenerator correctly generates anyOf and oneOf composed schemas
Changes the previous behavior of generating `null` examples for anyOf and oneOf composed schemas.
To generate a oneOf/anyOf example, we generate the example using the first valid schema available. In case of a $ref, we use the first valid reference.
Fixes#17497
* python: adjust basic typing information
This is an initial pass to fix and adjust the typing information for the
generated client. This is enough to have mypy runnning without complains
on all the (modern) generated clients (Pydantic v1 code is not checked
for instance)
mypy is also now run directly in the CI, so further changes will also be
checked and thus, will need to be compliant with good typing
information.
Note that this doesn't *fully* type all the code: mypy is not run in
"strict" mode and there are still many functions/methods/attributes
which are still not fully typed, but it's a first good step in that
direction.
* ApiResponse's raw_data can't be None
* Fix indentation
* Revert test changes
* run mypy on tests/ directory
* don't forcefully convert the client response headers to dict
* override petstore ApiResponse model
* adjust type of 'any/one_of_schemas' fields
* fix #16797 and #15796 spring child constructor missing parent params
* root cause and update the DefaultCodegen.java to add missing property when with multi inheritance
* rollback SpringCodegen.java
* update samples
* rollback with master cause #16992 fixed this issue too
* still using orignal design
* catchup master
* catchup master
* catchup master
* fix
* add tests
---------
Co-authored-by: dabdirb <dabdirb@gmail.com>
in rest template, when the retry limits exceeded
rethrow the original exception
also add 429 (Too many requests) status code to the
retry logic
fix#17478
In #16624, I introduced a new mechanism to record imports to other
modules, instead of having specialized datetime/typing/pydantic objects
to manage imports for these modules.
This change reuses the mechanism from #16624 and replace the specialized
import managers by the generic one. Unused imports from various
.mustache templates are also cleaned up.
* also escape '$' and '\' in normal Kotlin strings, …
* rename `lambdaEscapeDoubleQuote` to `lambdaEscapeInNormalString`
* escape `$` and `\` in `@RequestMapping` annotation `value` property
* Fix decoding OpenAPIDateWithoutTime which in previous implementation only worked when used with CodableHelper, because it encoded to String, but tried to decode from Date afterwards
* update samples
* Update OpenAPIDateWithoutTime.mustache
* Update sample projects
---------
Co-authored-by: William Cheng <wing328hk@gmail.com>
Co-authored-by: Bruno Coelho <4brunu@users.noreply.github.com>
Co-authored-by: Bruno Coelho <4brunu@gmail.com>
* updating test to use the Java RESTEasy echo api client (#17367)
* regenerated samples
* set source and target to 1.8 to fix workflow failure, adapted parser
* update template for required field validation when additional properties are not allowed
* regenerate samples
* move bytes import from template to GoClientCodegen
* regenerate samples
* add test for model with required fields and additionalProperties: false
* Set remote build cache to push only if authenticated
* Bumped Gradle enterprise extension to 1.20 and CCUD extension to 1.12.5
* Removed duplicated <storeEnabled> line from gradle-enterprise.xml
* Removed addressed comment
* Add missing Jackson converter for Retrofit
This commit adds the missing configuration for a ApiClient so all Jackson serializations will start to work correctly.
* Add sample project code for Retrofit Jackson
* Add check for input if is Map type
* Update Pet samples
* Add PetApi support for filter by Pet property
* Clean up
* update samples
* remove manual test
---------
Co-authored-by: ameenhaq <ameenhaq79@gmail.com>
* fix(java): fix URI inner enum for gson
* fix(java): fix URI enum for gson
* fix(java): fix URI enum for microprofile
* fix(java): fix URI import for native enum
* fix(java): add tests for URI enum
* fix: change indent style to tab in the mustache to generate Go code
* docs: standardize the language names for code blocks
* docs: change indent style to tab in the code blocks
* update: regenerate samples
* `./bin/generate-samples.sh ./bin/configs/*.yaml`
* Ruby Client for Faraday: fix file downloading
In MR #16876, a bug was introduced that causes file downloading to fail
for the Faraday adapter.
This commit fixes the obvious missing parameter for the method
call to download_file() and the missing variable `request` for saving the
response value of the call to build_request().
Signed-off-by: Daniel Schnell <dschnell@grammatek.com>
* Add automatically generated changes.
---------
Signed-off-by: Daniel Schnell <dschnell@grammatek.com>
* Fix broken link to csharp-netcore generator
The example source URL of the csharp-netcore generator pointed to the master version of the repo, but the generator has been renamed or removed and the URL is broken. I updated the link to the latest pre 5.0.0 version, since the text talks about pre 5.0.0 version of the openapi generator.
* Update link to point to csharp generator
* Add optional parameter for request body
* Adapt Test
* Add test
* Format code
* Remove extra method
* Add optional for pojos
* Add optional for pojos
* Add bean validation for Optional
* Add default values + test
* Rename test
This was removed in #16802, but using a higher value than 1,
or at least making this configurable makes complete sense.
Without this, we get a lot of these log messages:
[ WARNING] Connection pool is full, discarding connection:
* [cpp-qt-client] pass QString by const reference instead of by value
* Add another signal instead of changing its signature
* Bump qt version
* Fix CODEOWNERS
* Try to fix workflow
* use v3
* Remove openssl from windows build
---------
Co-authored-by: William Cheng <wing328hk@gmail.com>
* check args to fn new for uniqueItems
* Added model with unique items for template testing
* build the project and update samples
* Removed testcase from fake petstore spec
* allow multiple auth methods of same type
* allow multiple auth methods of same type
* allow multiple headers to have api keys
* removed commneted code
* fixed all but standard
* fixed standard
* allow multiple auth methods of same type
* allow multiple auth methods of same type
* allow multiple headers to have api keys
* remove changes for another pr
* resolved conflicts, build samples
* fixed a casing issue
* fixed casing issue
* Adds basic retries to API requests
* This mimics the basic retries performed by urllib3 in the sync version
* update samples
* Only use retry client if number of retries is specified in the config
* Reorganize
* Remove class attribute
* close retry_client
---------
Co-authored-by: William Cheng <wing328hk@gmail.com>
Trying to generate Kotlin code for CookieAuth will result in a malformed
ApiClient.kt for function updateAuthParams. The code block has a closing
bracket too much.
Co-authored-by: Christian Bay <christian.bay@posteo.net>
* Delete sample folders of discontinued clients
* Remove duplicate python-flask server sample
The python-flask sample actually lives in samples/server/petstore/python-flask.
* Move hand-written test to "tests" folder
Now, "test" only contains generated stubs and all hand-written tests are in "tests".
* Delete left-over files in Python samples
These are not created by the generators (anymore) and not hand-written
for testing.
* Regenerate test file to fix import error
* Fix clippy errors (rustc 1.73.0)
* Add feature docker-in-docker
* Fix mapping of "date"
See issue #9769
The type
type: string
format: date
was mapped to DateTime<Utc> which violates the OpenAPI spec
see https://swagger.io/docs/specification/data-models/data-types/
* refactor: Clean up _response_types_map formatting
It matches black's behavior of having trailing commas now.
* test: Add test to reproduce #16967
* fix: deserialize responses even if no returnType
Closes#16967
* refactor: Simplify ApiException subclasses
* refactor: Move exception subtype choice to ApiException
* feat: Deserialize error responses and add to exceptions
* test: Add for error responses with model
For model classes with model_something fields, pydantic raises a warning by default:
`Field "model_something" has conflict with protected namespace "model_".`.
These warnings make no sense here, because most users of the generator have established APIs
that they cannot change to conform to pydantic's safety rules.
Pydantic will raise an error if we ever conflict with a current attribute like `model_dump`.
* Update base image of Dockerfile
* Make github workflow "Docker tests" manually triggerable
* Don't possibly downgrade TLS version
* Update Dockerimage in ``run-in-docker.sh``
* Use Maven's non interactive mode inside workflow
* Don't spam log
* Use java 17
because it won't compile with 21
* Removed hard memory limit
as memory should be controlled by the container
* Update hub dockerfiles
* If a form param is an array and isn't caught in the previous checks, treat it as a slice of strings.
* Add an example of a FormParam that is an array
* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)
* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)
* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)
* [PHP-SYMFONY] Support BackedEnum for enumm ref (16846)
* [PHP-SYMFONY] Support BackedEnum for enum ref (16846)
* [PHP-SYMFONY] Support BackedEnum for enum ref (16846)
* [PHP-SYMFONY] Support BackedEnum for enum ref (16846)
* New Test Case Added to AndroidClientCodegenTest
* New Test Case Added to GenApiControllerTest
* New Test Case Added to BirdAndCategoryTest
* New Test Case Added to WorkflowSettingsTest
* Modified GenApiControllerTest
* Added Test case in JavascriptClientCodegenTest
* Modified BirdAndCategoryTest
* Modified BirdAndCategoryTest
---------
Co-authored-by: Mann <mn906219@dal.ca>
* [Server][Spring] support interface and implementation classes for API controllers
* Omitted new string calls
* Added Log messages
* remove else
* Removed redundant if
* Update missed ;
* Bump up the dart version.
* Add toString on enum.
* [dart-dio/json_serializable] Fix enum converter for non-string.
* [dart-dio/json_serializable] Bump up the dart version only json_serializable.
* [dart-dio/json_serializable] Rename enum value.
* chore: add test to show python bool url params are not lower case
* fix: python parameters_to_url_query template to properly detect booleans
* fix: typo in test
* fix: typo in test
* chore: update test name to snake case and be more descriptive
* [typescript-axios] Fix Explode Query Parameters
* use `paramName` instead of `baseName`
* add config, workflow and tests for echo api
* generate echo api sample
* update test dependencies and add gitignore
* update space in package json and regenerate samples
* remove tsc in test package
* update samples
* undo samples
* regenerate samples
* regenerate samples again
The generated example code would clone the context. However as context
is a generic type and is not declared to implement Clone, a clone of a
reference is just a copy of the reference and therefore unnecessary.
This change removes the redundant call and therefore avoids the `cargo
clippy` warning.
* [ruby|client] Fix unmarshalling errors of enums inside other objects
Ruby|Client autogenerated model classes for Enums do not expose openapi_one_of
method. Instead they expose openapi_any_of method like:
# List of class defined in anyOf (OpenAPI v3)
def openapi_any_of
[
:String
]
end
Both types (objects and enums) do respond to build() method.
* Regenerate samples
Right now, if a developer uses `direnv` but does not use `nix`, an error
is reported whenever changing into the OpenAPI generator directory:
```console
$ cd ~/oss/forks/openapi-generator
direnv: loading ~/oss/forks/openapi-generator/.envrc
direnv: using flake
environment:1270: nix: command not found
```
This uses the `has()` function to check for `nix` to *conditionally* run
the `use_flake` function.
* [Ruby] Add support for gems metadata
This defaults to an empty hash, but can be overridden with any custom
object by the callers via the `gemMetadata` property.
* Regenerate samples
The gemspecs files will now include a metadata field
* Add support for DateTime objects in the Path, Query Params, and as a List
* Fix indentation
* Add an exaple that has dateTimes
Move the date parsing into a common util in the routers.go file.
* Fix compilation issue and regen
* Use the `RequiredError` to handle this case
* Only split on a "," and not an extra 'space' after the ",".
* fix(nestjs) fix import in api module template (16670)
* fix(nestjs) fix import in api module template (16670)
---------
Co-authored-by: Thomas Trapanese <thomas.trapanese@maggioli.it>
* Support for an endpoint returning a file to a client.
* Spaces to tabs conversion
* Add an example endpoint for download a file
* Regenerate after merging main
* Add support for Enums to be part of the Path and Query
Supports optional Query Enums and Lists of Enums as well
Add an example endpoint that covers the added scenarios
Added an import mapping for the GoServerCodegen for "fmt"
when a model is an enum.
Expanded the Enum Model for the Go Server to have validation.
Copied this logic from the Go Client Enum Model.
* Fix identation of examples
* Pre-allocate the capacity of the slice of Enums to be
the correct size.
* Formatting and updated examples
* Empty-Commit
* Switch to using a map to store the valid enum values
* Fixed pointer derefs missed from previous change in PR
* More fixing of pointer to not pointer
* Create a map for validation and a list of enums for messaging
* Add support for all +json and +xml suffixed media types to generated Go client
* Export JsonCheck and XmlCheck and add external tests
* Remove client_test.mustache
* Autoset constants (Required fields having single valid enum value) Python Implementation of #16547
* Fixing ``PythonClientCodegenTest.testHandleConstantParams`` for Windows platform.
This adds support to avoid generating go.mod and go.sum for Go client.
By default it is set to true to keep compatibility with previous version
of the tool.
It can be set to false using --additional-properties=withGoMod=false
* refactor: Use newlines in _with_http_info call
This prevents too-long lines and matches the style that
black would enforce.
* fix: Do not pydantic-validate function args twice
Closes#15757
* Avoid ClassCastException when getting headers (the header values are Collection<String> and not List<String>)
Delete unused classes
* Remove feign10x
* Add unit test
Refactor to avoid creating the headers map when ApiResponse is not used
* fix setup of body params (may be nil)
* fix httpx adapter issues
treating DNS resolution errors as ConnectionFailed; removing multipart header set by the openapi-generated code, as it does not contain boundary, and interferes with the generation from httpx, which appropriately deals with mime-types already
* upgrade spring-boot-starter-parent
* upgrade springdoc and swagger-ui
* upgrade v3 swagger-annotations
* generate samples
* upgrade jackson
* fix spring cloud, remove temp comment
Putting "8" instead of "1.8" should be ok, because Spring Boot 3 requires Java 17 anyway, so it should be able to understand that 8 is the same as 1.8.
* generate samples
* upgrade JUnit 5, remove commons-io dependency, remove outdated samples/client/petstore/java/feign/feign10x/ files, generate samples
commons-io dependency was introduced in https://github.com/OpenAPITools/openapi-generator/pull/8484, but I don't see why it would be needed now or back then.
* update gson, generate samples
* update logback
* update feign
* update scribejava
* generate samples
* update httpmime
* okhttp-gson: update commons-lang & okhttp & junit-platform, remove mockito; generate samples
It seems Mockito is not used at all there.
* okhttp-gson: remove unnecessary sample files, generate sample files
* upgrade google-api-client & jersey-common, restore ClientTest, generate samples
* misc. upgrades in jersey2 and jersey3
jersey 3.1.3 is available already, but IntelliJ reports security problems in 3.1.3 and 3.1.2, so I used 3.1.1 instead.
* align some gradle&sbt files with poms, generate samples
* whitespace fix
* support the ability to create apis and models templates in specify folders using the config settings (folder)
* support the ability to create apis and models templates in specify folders using the config settings (folder)
* python: type generated client using Self
This doesn't offer a clear win but this helps for:
* Using modern types and making the typing intent clearer
* Decreasing the need for `from __future__ import annotations`, since a
class can now refer to itself without using its name
* Using more `cls` to automatically refer to the class, instead of
respecifying the class name every time
Self is available from Python 3.11 and is provided in typing_extensions
(since 4.0.0) as a fallback for older versions
See: https://peps.python.org/pep-0673/
See: https://github.com/python/typing_extensions/blob/main/CHANGELOG.md#added-in-version-400
* generate code
* Add optional response middleware to go template
Also adds a request middleware which can return an error
* Re-adding newline to fix tests
* Fixing docs
* Add support for default scalar value of properties in php-symfony models. Default values now returns in getter-functions
* Revert nullable type-hinting. Move default values from getter to property initialize.
Made changes in __construct:
Now value of properties rewrites only if key exist in $data array.
The aenum dependency didn't provide any specific improvements over the
stdlib's enum module.
aenum also doesn't provide typing information at the moment.
This removes one dependency and will help for completing the typing of
the generated client.
* In samples/openapi3/client/petstore/python, this reduces the mypy errors from 435 to 178 errors
* In samples/openapi3/client/petstore/python-aiohttp, this reduces the mypy errors from 381 to 124 errors
* In samples/client/echo_api/python, this reduces the mypy errors from 131 to 25 errors
* add float as reserved world
* clean up
* update samples
* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonCodegen.java
Co-authored-by: Jonathan Ballet <jon@multani.info>
* update doc
* uncomment test
---------
Co-authored-by: Jonathan Ballet <jon@multani.info>
* [python] fix TypeError
Signed-off-by: ふぁ <yuki@yuki0311.com>
* [python] update Private model attributes to Class vars
Signed-off-by: ふぁ <yuki@yuki0311.com>
* [python] rename the List of test cases to ListClass
Signed-off-by: ふぁ <yuki@yuki0311.com>
* [python] update samples
Signed-off-by: ふぁ <yuki@yuki0311.com>
* [python] rename the List of v1 test cases to ListClass
Signed-off-by: ふぁ <yuki@yuki0311.com>
* [python] rename the List of v1-aiohttp test cases to ListClass
Signed-off-by: ふぁ <yuki@yuki0311.com>
* update samples
---------
Signed-off-by: ふぁ <yuki@yuki0311.com>
Co-authored-by: William Cheng <wing328hk@gmail.com>
* python: improve type generation with more specific typing
* Annotate function parameters
* Remove unused imports
* remove unused files
* remove temporary hack
* remove lock file
* fix Annotated import
* support Python 3.7
* Regenerate code with typing-extensions
* Fix setup.py
* More Pydantic v2 compatibility
* depend on pydantic v2
* fix client_echo tests
* fix JSON serialization
* Fix references
* Skip circular dependency tests for now
* Temporarily hide the "float" property
The "float" property aliases the "float" type and completely breaks the
model: all the properties that were "float" now become the type of the
"float" property instead.
* Fix errors
* Import Literal from typing_extensions
* Fix GitHub Action workflows
* Fix Python 3.7 failure
* Fix quotes
* Apply suggestions from code review
* Fix tests
* split model imports from other modules imports
* fix workflow
* Comment the array unique items convertion, remove set translation
* Replace alias usage
* Introduced Jersey3 to JavaJerseyServerCodgen and its test class
* Added date ParamConverterProvider to new jersey3 resource directory
* Copied and adjusted jaxrs-jersey2 directory to jaxrs-jersey3
* Added unit tests for Jersey2 (jakarta|javax) and jersey3 (jakarta only)
* Added Jersey3 to markdown documentation
* Added several mustache files for Jersey3
* Further adjustments in JavaJerseyServerCodegen for Jersey3
* Removed tabs from JavaJerseyServerCodegen
* Further improvements in pom and web template
* Changed to swagger-jaxrs2-servlet-initializer-v2 within the projects pom
* Changed servlet-initializer to jakarta version
* Removed tabs in JavaJerseyServerCodegenTest.java
* Removed tabs from JavaJerseyServerCodegen
* Out commented Swagger 1.x part in api.mustache (see ApiImplicitParams)
* Exchanged import of javax* by jakarta* in file verify.groovy
* Changed Parameter annotations to Schema annotations
* Added web.mustache for jersey3
According to the 'Swagger 2.X Integration and Configuration' doc at
https://github.com/swagger-api/swagger-core/wiki/Swagger-2.X---Integration-and-Configuration
* Adjusted README to point to ./openapi.json instead of ./swagger.json
* Added ./bin/configs/jaxrs-jersey-jersey3.yaml as requested
* Added new jersey3 example (see ./samples/server/petstore/jaxrs/jersey3
* Corrected formParams.mustache exchanged @FormParam by QueryParam
* Resolved ModelValidationException for Map query parameter
* Improved api.mustache (layout and deprecated class instantiation )
* Updated jersey3 example under ./samples/server/petstore/jaxrs/jersey3
* fix tests
* add jeresey3 to github workflow test
* add new workflow
* remove jersey3
---------
Co-authored-by: CDerksen <christian.derksen@uni-due.de>
* prioritize mapped discriminators over generated
* update samples with new ordering
* explain reason behind discriminator prioritization
* add new samples
* prioritize explicit mapping over any generated mappings
* update examples to reflect new logic
* update tests to reflect explicit mappings
* Copy the current Python generator into a "pydantic v1" generator
This generator will be deprecated over time and the normal generator will
focus on Pydantic v2.
* add missing doc
* WIP: implement strict types
* Add parameter and return types to API methods
* Cleanup imports and some code, fix some phpdoc
* Add toDefaultValue override
* Support file abstraction for WebClient responses
Issue-16589
* Fix issue flagged by tests. Yay tests!
Issue-16589
* Update generation of test file too
* Fix generated tests for webclient, resttemplate
* add spring support for SSE conform specs
see https://github.com/OpenAPITools/openapi-generator/issues/6123 for the ongoing discussion
* extend generator option documentation
* applied review suggestions
* regenerated samples
* regenerated docu
* fix code style: removed tabs
* [dotnetcore] Implement QueryParameter deepObject style is missing for async function
* Add some csharp-restsharp tests
* add and fix tests
* restore missing files
* remove test with datetime problem
---------
Co-authored-by: Oliver Krug <Oliver.Krug@ptvgroup.com>
* python: remove non-async code path from the aiohttp generator
This removes all the non-async code from the aiohttp generator:
* all the methods that should be asynchronous are marked as `async`
* the `async_req` parameter is gone; calls are directly awaitables now
* the async calls into a thread pool are gone and the thread pool is
gone too (now useless)
Closes: #15824Closes: #5539
Related: #763
Related: #3696
* Fix empty line
* remove more
(For Windows users, please run the script in [Git BASH](https://gitforwindows.org/))
Commit all changed files.
This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit as it would merge with master.
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`.
For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
IMPORTANT: Do **NOT** purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming 7.1.0 minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
- [ ] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.
<enabled>true</enabled><!-- must be true for this experiment -->
<storeEnabled>#{env['CI'] != null}</storeEnabled><!-- adjust to an env var that is always present only in your CI environment -->
<!-- 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_CACHE_USERNAME']) and isTrue(env['GRADLE_ENTERPRISE_CACHE_PASSWORD'])}</storeEnabled>
[](https://join.slack.com/t/openapi-generator/shared_invite/zt-12jxxd7p2-XUeQM~4pzsU9x~eGLQqX2g)
[](https://twitter.com/oas_generator)
[](https://gitpod.io/#https://github.com/OpenAPITools/openapi-generator)
[](https://ge.openapi-generator.tech/scans)
[](https://ge.openapi-generator.tech/scans)
:star::star::star: If you would like to contribute, please refer to [guidelines](CONTRIBUTING.md) and a list of [open tasks](https://github.com/openapitools/openapi-generator/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22).:star::star::star:
:star::star::star: If you would like to contribute, please refer to [guidelines](CONTRIBUTING.md) and a list of [open tasks](https://github.com/openapitools/openapi-generator/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22).:star::star::star:
:bangbang: To migrate from Swagger Codegen to OpenAPI Generator, please refer to the [migration guide](docs/migration-from-swagger-codegen.md) :bangbang:
@@ -60,20 +60,26 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS and Checkly for sponsoring the API monitoring
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity
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:
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.
- 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)
## [6 - About Us](#table-of-contents)
@@ -990,6 +1001,7 @@ Here is a list of template creators:
* Kotlin (MultiPlatform): @andrewemery
* Kotlin (Volley): @alisters
* Kotlin (jvm-spring-webclient): @stefankoppier
* Kotlin (jvm-spring-restclient): @stefankoppier
* Lua: @daurnimator
* N4JS: @mmews-n4
* Nim: @hokamoto
@@ -1004,12 +1016,14 @@ Here is a list of template creators:
* Python (refactored in 7.0.0): @wing328
* R: @ramnov
* Ruby (Faraday): @meganemura@dkliban
* Ruby (HTTPX): @honeyryderchuck
* Rust: @farcaller
* Rust (rust-server): @metaswitch
* Scala (scalaz & http4s): @tbrown1979
* Scala (Akka): @cchafer
* Scala (sttp): @chameleon82
* Scala (sttp4): @flsh86
* Scala (Pekko): @mickaelmagniez
* Swift: @tkqubo
* Swift 3: @hexelon
* Swift 4: @ehyche
@@ -1166,7 +1180,7 @@ If you want to join the committee, please kindly apply by sending an email to te
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.