* Spec regenerated with only allOf on
Sample regnerated
Fixes a bug where AnyType composed schemas omitted validations, Fixes a bug where properties in AnyType schemas were omitted, Stops storing multipleOf value in a list
Adds required variable info to AnyType classes
Samples regenerated
Turns all unit tests back on
* Samples regenerated
* Docs and models regenerated
* Added port definition to uriBuilder, since it was ignored before and couldn't be set even by supplying a custom client
* generated samples
* update samples
Co-authored-by: Matthias Lewen-Rieger | PROSPER X GmbH <matthias.lewen-rieger@prosper-x.de>
Co-authored-by: William Cheng <wing328hk@gmail.com>
Commit 1735ab9d27656171def2440fa75cfe0c80a510f5 added changes to set the `jakarta_annotation_version`.
I've recently noticed that when using retrofit2 library, the project builds fine with Maven but fails with Gradle.
The build fails due to `Could not get unknown property 'jakarta_annotation_version' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler`.
Digging into this, in the generated `build.gradle` the `jakarta_annotation_version` is never set.
Upon closer inspection, aforementioned commit seems to indeed set it differently for the Maven build configuration than the Gradle build configuration (same for SBT configuration) for that matter.
The issue is that due to human error the `jakarta_annotation_version` line is added within the `{{#usePlayWS}}` block, meaning it won't be generated when `usePlayWS` is false, even though it should.
This commit changes this to always generate it.
* add streaming option to r client
* support callback function to process data stream
* add stream test, minor bug fixes
* fix api client
* return void earlier if streaming, add tests
* [BUGFIX] model_generic.mustache: Display property name instead of its value, when throwing InvalidArgumentExeption() for values not respecting a given pattern
* [AUTOGENERATED] Generated files
* Bump the minimum version of Elixir supported
The previous minimum version of Elixir is several years EOL.
The current minimum version of Elixir is also EOL, but is the minimum
version required to support some upcoming changes to the config
templates.
* Bump the minimum version fo Tesla
Keep the dependencies up to date
* Add a default .formatter.exs
* Add two Elixir-specific mustache lambdas
- The `atom` lambda results in the proper quoting of an atom depending
on the safe contents of the atom text, per the Elixir language
specification. That is, `{{#atom}}foo{{/atom}}` will be turned into
`:foo` and `{{#atom}foo.bar{{/atom}}` will be turned into
`:"foo.bar"`.
- The `env_var` lambda results in the treatment of the identifier
provided being capitalized as an environment variable would be.
`{{#env_var}}apiVersion{{/env_var}}` would become `ENV_VAR`.
* Use modern Elixir configuration
- This includes runtime configuration
- It depends on the `env_var` lambda.
* Fix a Language Server Warning
This change is *optional*, but removes a LS warning that was raised.
* Regenerated openapi_petstore for Elixir
* Add ex_doc as a default dependency
Fixes#12484
* Refine the regular expression for atoms
The original regex incorrectly matched `123Number` (unquoted atoms
cannot begin with numbers) and would incorrectly quote atoms ending in
`?` or `!`. Through testing with `iex`, it also turns out that the atom
`:-` is legal.
The following atoms will now not be quoted that would have been
incorrectly quoted:
- `:-`
- `:declawed?`
- `:neutered!`
The following atoms will be quoted that were incorrectly unquoted:
- `:"123Number"`
* Improve regex (again), remove files not generated
- The previous commit resulted in a number of warnings that were still
present and so I played with the regular expression. This did not
solve the problem, but the resulting regular expression is *much*
better than the previous one, so I'm keeping it.
- The problem was that the configuration (`bin/configs/elixir.yaml`) is
generated using a 3.0 input spec:
```yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
```
Which means that there were 16 files committed which were no longer
being generated. When I tested with the 2.0 input spec:
```yaml
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
```
The files were generated again. I *believe* that the correct change
here is to switch back to the 2.0 input spec, as it tests more code
generation, but I wanted to check in before I did this.
The following files are deleted:
- `elixir/lib/openapi_petstore/model/additional_properties_any_type.ex`
- `elixir/lib/openapi_petstore/model/additional_properties_array.ex`
- `elixir/lib/openapi_petstore/model/additional_properties_boolean.ex`
- `elixir/lib/openapi_petstore/model/additional_properties_integer.ex`
- `elixir/lib/openapi_petstore/model/additional_properties_number.ex`
- `elixir/lib/openapi_petstore/model/additional_properties_object.ex`
- `elixir/lib/openapi_petstore/model/additional_properties_string.ex`
- `elixir/lib/openapi_petstore/model/big_cat.ex`
- `elixir/lib/openapi_petstore/model/big_cat_all_of.ex`
- `elixir/lib/openapi_petstore/model/inline_response_default.ex`
- `elixir/lib/openapi_petstore/model/special_model_name.ex`
- `elixir/lib/openapi_petstore/model/type_holder_default.ex`
- `elixir/lib/openapi_petstore/model/type_holder_example.ex`
- `elixir/lib/openapi_petstore/model/xml_item.ex`
- `elixir/pom.xml`
- `elixir/test/pet_test.exs`
In the interim, I have removed those files from the commit.
* Adds draft6 tests and python file reader
* Adds processing of multiple files
* Moves test examples into a different component so component schemas can be booleans
* Excludes boolean schema cases and some others that contain patternProperties
* Adds automatic test generation, template not quite working with indentation
* Turns on allOf tests, some failing
* Adds more generated components and tests
* Adds enum tests
* Turns on all of themissing tests
* Adds exclmax and min exclusion reasons
* Adds items test cases
* Adds maximum
* Adds maxItems
* Adds maxLength
* Adds maxProperties
* Adds minimum
* Adds minItems
* Adds minLength
* Adds minProperties
* Adds multipleOf
* Adds not
* Adds oneOf
* Adds pattern
* Adds patternProperties
* Working on properties examples, partial fix for escaped characters
* Further improves example string escaping
* Fixes properties test cases
* Adds draft6 test samples license
* Adds ref
* Finishes ref
* Adds remoteRef
* Adds required
* Improves required testing
* Fixes build error / javadoc warning
* Fixes uniqueItems bug in python-experimental
* Turns all tests back on
* Fixes 2 failing tests, all python tests pass
* Fixes java npe errors
* Fixes formatting of tests, indentation fixed
* Test fase name fixed to toTestCaseName, docstring added to ObjectWithTypeBooleans
* Fixes typo
* Adds test deletion to samples generation, samples regenerated
* Updates python-exp unit test sample, includes new ref examples