* Add Dart configuration flag to set new generator
* Change templates to add json_serializable generator
* Fix dart tests
* Add custom serialization for standard generator
* this change opens us a way to allow adding more than 2 generators
* Add sample project for json_serializer
* Use basename for json field name
* Update samples with basename as json key
* Update dart generator docs
* Create AbstractDartCodegen class
* Update docs, dart-dio and dart-jaguar dont get json_serializable yet
* Deduplicate method calls
* Dix dart-dio generation
* Revert formatting change in dart mustache
* Fix formatting changes again
* Improve dart serialization documentation
specify default serializer
* Better name for cli option
* Rename default dart generator to 'native'
* Another attempt to reduce whitespace noise
* Fix api-client and api-helper
* Rename default serialization mode to include word serialization
* Remove trailing whitespace in enums
* [dart-dio] Disable nullable fields by default
This is not in line with the OAS and will prevent future Dart nullabilty features (NNBD) from being useful as all types would be optional.
Users can still opt-in for this.
* [dart-dio] Properties are nullable when not required AND not nullable
* [dart][dart-dio] Support nullable/required fields
* properties in built_value need to be nullable when they are nullable in OAS or when they are not required in OAS
* built_value does not support serializing `null` values by default as it is based on a serialization format based on iterables/lists and not maps
* dart-dio uses the built_value json plugin to convert the built_value format to regular json
* by generating a custom serializer for each class we can add support for serializing `null` values if the property is required AND nullable in OAS
* this is a breaking change as not all properties in the models are nullable by default anymore
* Implement required/nullable for dart
* Changes for set types and enum names after rebase
* Add some comments and fix built_value fields with default being nullable
* More rebase changes and regenerate docs
* [REQ] Added enumClassPrefix option to go-gin-server. Used same approach as #7008 (go-server)
modified: docs/generators/go-gin-server.md
modified: modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoGinServerCodegen.java
modified: modules/openapi-generator/src/main/resources/go-gin-server/model.mustache
* Fixed CI error in docs
* [dart][dart-dio] Add support for set types
* copy `uniqueItems` usage from 2.0 fake spec to `3.0`
* add support for sets in parameters, responses and properties
* Regenerate all other samples
* Fix broken tests due to invalid cast
* Update documentation
* Regenerate samples
* update samples
Co-authored-by: William Cheng <wing328hk@gmail.com>
* [rust-server] Add support for Bearer auth
- Added bearer auth to the security features for rust server
- Supplemented the basic auth condition in the context template to handled basic auth and bearer auth separately.
- Repurpose an exising sample to confirm the code generation works as expected.
* Update docs
* Update readme for bearer tokens
* Add CORS support to python-flask server generator
* Documentation update and CORS support for other generators using the same base class
* Trivial sample changes
* [Core] Inline Model Resolution of Enums
Enums need to be named types, so handle them as part of inline model resolution
* [Rust Server] Handle models starting with a number correctly
* [Rust Server] Additional trace
* [Rust Server] Add support for oneOf/anyOf
* [Rust Server] Update supported features
* [Rust Server] General template tidy up
* [Rust Server] Implement IntoHeaderValue for wrapped data types
* [Rust Server] Convert from string correctly
* [Rust Server] Test for anyOf/oneOf
* Update samples
* Update docs
* feat: add providedIn for Angular 9+
Adding new option, providedIn, for generator typescript-angular
Keep providedInRoot for backward compatibility but mark as deprecated
for Angular 9+
fix: #6432
* doc: providedIn
infos about providedIn
Mark providedInRoot as deprecated
* doc: run generate-samples for typescript
using typescript-angular-v9-provided-in-any.yaml
* refactor: runned ensure-up-to-date locally
* refactor: api.module.mustache rely on providedIn too
* doc: re-generate samples
* first Commit parameterzied Server support
* fixed serverconfig classes
* Defautl constructor f. Config, fixed regex replace
* Polosihed Templates, Added MultiServer support
* Update Readme. Fixed MultiServer. Fixed def. Value
* Passing global Server to mustache. Small fixes
* Updated samples, fixed mustache for multi server
* added prefixes, removed unused imports
* added newly generated samples
* missing vendorExtension in mustache. Update smaple
* update doc
Co-authored-by: William Cheng <wing328hk@gmail.com>
* [dart][dart-dio] Prevent name clashes with existing dart types
Can not use dart import aliases for now as this is not supported by built_value. This means we need to add potentially clashing names/classes to an `additionalReservedWords` exclusion list. Starting with a basic list of some http/io classes.
Correctly use `importMapping` and `defaultIncludes` this time around. Improve reserved word checking.
This now successfully generates `ModelList`, `ModelFile` and `ModelClient` models which previously were not generated at all or were wrong types.
* Address review comment
* Update generator docs
* [dart] Configure and use import mapping
This prevents models from being generated which would clash with exisiting dart types, e.g. List.
* [dart] Fix decimal format not supported
* [dart-dio] Remove redundant modelToIgnore & ignore dart:core import
* modelToIgnore is now handled via importMappings the same way other generators do this
* choose not to import dart:core as this is available by default
* [dart-dio] EnumClass is a reserved word in built_value
* Review changes
* Fix regenerate docs
* Updated Eiffel code generator.
Added missing language reserved words.
Updated mustache templates to use the latest Eiffel rules to avoid obsolte
feature calls and Cat-Calls.
Updated Eiffel configuration files (ecf's)
Updated comments styles.
Updated Travis CI file to use the latest Eiffel compiler.
Updated EIffel sample to use https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml
* Added missing mapping decimal to REAL_64
Added Eiffel Kernel classes to importMapping to avoid generate models for
them.
Fixed issue with Eiffel feature name generation, updated toOperationId(String) method.
Simplified toInstantiationType method implementaetion.
Improved model.mustache to generate Eiffel models.
* Updated Eiffel sample.
* Removed unneeded tabs.
* Added AnyType mapping to ANY
Removed unneeded tab
Updated model name, remane models that starts with _.
* update doc
Co-authored-by: William Cheng <wing328hk@gmail.com>
* [dart-dio] Add basic integration test POM
This basically just fetches dependencies, runs the built_value generator and empty test cases. Even running empty test cases is more than is currently possible and at least finds compile errors.
There are compile errors atm which need to be fixed.
* [dart-dio] Fix missing BuiltSet import in models that use enums
* [dart-dio] Fix compile error when the return type is a Map
* the compile error was `serializerForType(Map<String, int>)` in `StoreApi` which needs to be `serializerForType(Map)`
* use final instead of var in response handling
* [dart-dio] Generate docs after changes
* [dart-dio] Add integration test to CI execution list
* fix async in java play generator
* add async operation option
* Remove the return null and replace with a return at the right place.
Co-authored-by: Jean-François Côté <jcote@stingray.com>
* python->python-legacy, python-experimental->python
* test with openjdk8
* test with openjdk11
* comment out rm
* move kotlin tests to circleci
* move kotlin tests
* move tests to circleci
* fix circleci
* rearrange test
* move tests
* use wrapper
Co-authored-by: Justin Black <justin.a.black@gmail.com>
* Add CLI options to remove runtime checks (serialization/deserialization).
* Update templates to support the new parameter
- Generates all the models in a same file to avoid import complexity
- Extract interfaces creator templates to reuse them
* Fix formatting and generate client examples
* Add documentation
* add option to return None instead of raising exception when accessing unset attribute
* update python samples
* reimplement getattr using getitem or get depending on attrNoneIfUnset
* move getattr and setattr to respective templates
* update docstrings, def get/setattr methods to have docstrings in them, use __dict__ to avoid recursion issues
* revert required_properties change
* add manual tests for .get method
* Move java specific import mappers to java specific code gen
* Use JVM specific import mappers in kotlin, scala, groovy
* Update generators docs
* Add autogenerated files
* Fix#7594: [BUG][Ada] Incorrect client Ada code generated
- Fix the identification of path parameters
- Fix the model and client to support FreeFormObject
* update doc
* fix errors, update samples
Co-authored-by: Stephane Carrez <Stephane.Carrez@gmail.com>