* 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