* add workflow to test clojure client;
* add file
* run tests
* remove server
* Revert "remove server"
This reverts commit bda91432197b0b62d928839f08d82b0e41673f3a.
* clean up circleci
The bash config is configured to generate with a scriptName of
petstore-cli. As such, it will never generate client.sh and related
files. This seems to be a leftover from before the bash config was
introduced, and is not needed.
* migrate tests from appveyor to github workflow
* test with dotnet 7
* test on windows
* set dotnet version
* Revert "set dotnet version"
This reverts commit 87af6a63ad04e12ad3d099193c6ed2e3a17aec02.
* use localhost
* update
* update
* update tets
* update
* remove appveyor
* feat(rust): add the native-tls (default) and rustls Cargo features for `reqwest`
* refactor(rust): rename the `rustls` Cargo feature to follow the ecosystem naming convention
Changes the logic of parsing of OneOf/AnyOf to fix incorrect type coercion
in OneOf/AnyOf contexts. The guard which checks whether typed_data is true-ish
fails for booleans. If the oneOf includes a boolean type and the data is false then
it will correctly parse this value as a boolean. However, the guard class will determine
that false is not true-ish and therefore returns nil. So the result of the type coercion
of false will be nil. This can result in problems when dealing with default true.
For example how a false can turn into a true with defaults:
1. The API returns false
2. The type coercion determines false becomes nil
3. When storing this retrieved record with a default of true for this column the stored value is suddenly true
while the API specifically returned false
This fix removes this guard and will rely on the exception raised to return nil when type coercion fails.
* Support normalizing anyof/oneof enum constraints to a single enum
* Add SIMPLIFY_ONEOF_ANYOF_ENUM to the documentation
* Process referenced schemas with oneof/enum as well
* Implement referenced enum merging from oneof/anyof
* Implement retaining the enum description as x-enum-desriptions for oneof enum
* Update samples and docs with oneOf enum normalization
* update samples to fix python tests
* fix test file name
* fix incorrect filename
---------
Co-authored-by: Pieter Bos <pieter.bos@nedap.com>
* Test Cases for more than two oneOf-Options (both passing, but important to narrow down observed bug)
* fix language-specific tests broken by adding a third fruit to oneOf test
* create reproducer unit test for java client codegen
* fix typo in test yaml
* fix ModelUtils.getParentName returning name of first element in composed schema instead of null when there are multiple elements and it is not clear which one should be parent
* rename test yaml and added tests for clarity
* update samples
* update samples again
The code for setting the form body parameters were wrong,
e.g. the key value pair (id, 12345) would be encoded as
id=%28id%2C12345%29
This commit adds a fix to the base client to correctly setting formBody values the previous pair will now be encoded as
id=12345
* typescript-fetch: Fix model date crash
Fix a runtime crash converting to json when a date or datetime is both nullable
AND required. There are 4 cases to account for:
| required | nullable | values |
|----------|----------|--------|
| f | f | string OR undefined |
| f | t | string OR null OR undefined |
| t | f | string |
| t | t | string OR null |
And importantly when required and nullable code that would crash on null was
being generated. additionally when required is false and nullable is true we
still want to allow consumers to be able to pass in `undefined` OR `null` and
pass that value to the server. Some servers treat null and undefined differently
for some operations so having that ability is pretty reasonable.
fix: https://github.com/OpenAPITools/openapi-generator/issues/21820
* Update typescript-fetch samples
./bin/generate-samples.sh ./bin/configs/*.yaml || exit
* [OCaml] Fix inconsistent oneOf primitive sample name
* [OCaml] Fix encoding/decoding for free-form required fields
* [OCaml] Change field comment to Odoc, move it after the field
As per Odoc documentation, record field documentation should be *after* the
field, not before.
See https://ocaml.github.io/odoc/odoc/odoc_for_authors.html#special_comments
type `my_record`
* [OCaml] Cleanup non-generated files for ocaml sample
* Add OCaml fake-petstore to test corner cases
* Prefix List functions with Stdlib as the fake petstore generates a List module
* Handle decimal and any types
* Indent to_json.mustache for easier maintenance
* Indent api-impl.mustache a bit more for readability before fix
* Fix: do not call `to_json` for free forms and byte arrays
Fixes https://github.com/OpenAPITools/openapi-generator/issues/21312
* Fix compilation for binary types
The implementation may not be correct, but at least it compiles. To be checked
if someday someone actually uses it/complains.
* Indent to_string.mustache
* Add support for exploded form-style object query params
Fixes https://github.com/OpenAPITools/openapi-generator/issues/21307
* Add ocaml-fake-petstore to CI
* Fix free-form body params
* Cohttp_lwt.Response is deprecated, use Cohttp.Response instead
* Safe Java code cleanup
* Split into model-record.mustache
* Add some support for oneOf/anyOf
* Re-generate all OCaml samples
* Fix: correctly mark non-required maps with default empty list
* Fix: Correctly encode/decode maps
* Refresh documentation
* Refresh after merging master
* [kotlin-client] Add support for integer enums with custom serializer for kotlinx
* [kotlin-client] Fix @SerialName annotation being used on non-string enums
* Format samples
* remove blank line
* add tests for kotlin client with integer enum
* add folders
---------
Co-authored-by: CHervaudBetclic <c.hervaud@betclicgroup.com>
* Exclude the discriminator field from getting a nullable_var_annotations
* Update samples
* Manually add annotations since the remote pipeline insists that they should be there
* Add description for why the discriminator does not have a nullability-annotation
* Update samples
* [Rust] fix: add location prefix to prevent parameter name collisions when escaping parameter names
* chore: update samples
* [Rust] fix: do not use locationSuffix if useSingleRequestParameter feature is enabled