Commit Graph

11793 Commits

Author SHA1 Message Date
William Cheng
a582c38aa1 [R] override print, lock classes (#13300)
* override print, add lock

* add print, lock class to anyof/oneof
2022-08-28 18:03:59 +08:00
William Cheng
0d68f29d71 [R] Better rdoc (#13275)
* better rdoc

* update doc

* update samples
2022-08-28 10:17:59 +08:00
William Cheng
66ecfb62c3 [R] minor bug fixes in oneOf, anyOf (#13298)
* update oneof to handle primitive types in r client

* add support for primitive type support in anyOf in r client

* remmove lock
2022-08-28 09:36:45 +08:00
Lukas Woodtli
d2e60f59b3 Cpp restbed server improvements (#13030)
* Keep old implementation of cpp-restbed generator as cpp-restbed-server-deprecated

* Refactor operation path processing

* Restructure samples directory to better allow writing tests

* Improve templates for cpp-restbed-server

Improve templates

* Add integration tests

* Improvement in templates for cpp-restbed-server

* Fix tests

* Improve cpp-restbed generator

* Improve cpp-restbed-server

* Add more tests

* Add suppoert for arrays of enums in query params

* Generate CMakeLists.txt

* Small improvements and example in Readme

* Add integration tests to maven project

* Update doc
2022-08-27 18:10:28 +08:00
William Cheng
40044a3007 update html2 samples 2022-08-27 13:47:51 +08:00
William Cheng
97946e421f fix protobuf variable name (#13296) 2022-08-27 13:31:24 +08:00
João Neto
62a0878bae Combine javascript and javascript-apollo generators (#13270)
* Combine javascript and javascript-apollo generator functionality

* Combine javascript and javascript-apollo templates

* update configs

* deprecate javascript-apollo generator

* bonus magic string deletion 

* update samples

* update generator docs

* fix: include .babelrc in apollo generation

* update samples

* update samples

* rename javascript-apollo to javascript-apollo-deprecated

* fix javascript apollo library template

Apollo library now uses the partial_model_generic template file from the ES6 library, as it includes many fixes and improvements (including handling models with ill-named attributes)

* update samples

* Create javascript-apollo-deprecated.md

* Updated javascript generator template's gitignore

Updates .gitignore with that from https://github.com/github/gitignore/blob/main/Node.gitignore

Main reason for the update is to ignore the 'dist' folder with compiled files by default.

* javascript generator: merge api_test template files

The only difference is that Apollo is not designed for browser, so having a "if(browser)" check is useless, but doesn't hurt.

* update docs

* cleanup

* avoid possible config clash

* update javascript-apollo sample

* update javascript-es6 sample

I kept the pom.xml from before

* update javascript-promise-es6 sample

kept pom.xml

* update samples
2022-08-27 13:29:35 +08:00
Justin Black
fe934dc1b4 [python-experimental] improves type hints (#13271)
* Templates updated, dict properties moved into Meta

* Fixes tests

* Renames _discriminator to discriminator

* Moves required vars into required

* Renames _additional_properties to additional_properties

* Adds MetaOapgTyped

* Adds type hints for MetaOapg to classes that neen it

* Adds StrMixin

* Adds DecimalMixin

* Adds BoolMixin

* Adds NoneMixin

* Adds TupleMixin

* Adds FrozenDictMixin

* Regenerates unit test samples

* Only quotes type hints if they are imported

* Moves _items into Meta

* Renames _items to items, various small type hint fixes

* Adds type hints for object model new signature

* Adds type hints for body schema primitive types

* Adds primitive types to all query/path/header/cookie params

* Samples regenerated for unit test api

* Version files fixed
2022-08-26 07:09:08 -07:00
snebjorn
50a9d3323a fix: [typescript-angular] .join does not exist on type Set (#13278)
fixes #11782
2022-08-26 12:47:58 +02:00
William Cheng
37c8a745c5 [protobuf] fix set, add tests (#13286)
* fix set, add tests for protobuf

* add new files

* update doc

* remove yaml
2022-08-26 18:25:16 +08:00
Jacob Halsey
dc7ae051b8 [rust] [rust-server] Add AbstractRustCodegen (#13231)
* Add AbstractRustCodegen

* Fix minor bug

* Fix copy-pasting mistake

* Simplify addApiNamePrefixAndSuffix
2022-08-26 12:11:19 +08:00
William Cheng
2e89004683 update go samples 2022-08-24 23:43:57 +08:00
João Neto
1a5d3926b3 Javascript Generator: two small sanitization changes 🦠 (#13268)
* Javascript Generator: small sanitization changes

Sanitize module name, do not sanitize description.

If we set the project name to "@myorg/mypackage" (scoped package[1]), running `npm test` will fail, as it will generate faulty code due to the module name including the '@' symbol, which is not a valid JS identifier.

Additionally, we don't need to sanitize the description - spaces and special characters are fine. We just need to make sure they are escaped, which we're already doing by invoking escapeText() on line 329

[1]anitize module name, do not sanitize description

* update JS samples
2022-08-24 23:18:30 +08:00
Christoph Linder
b9a6be0cba fixes #13131: support matrix parameters and other parameter styles in typescript-angular (#13132)
* fix TypescriptAngularPetstoreIntegrationTest

(since this has been abandoned for a long time: just copy the generated code the the "expected" directory)

* fix TypescriptAngularArrayAndObjectIntegrationTest

(since this has been abandoned for a long time: just copy the generated code the the "expected" directory)

* fix TypescriptAngularAdditionalPropertiesIntegrationTest

(since this has been abandoned for a long time: just copy the generated code the the "expected" directory)

* fixes #13131: add custom path parameter expansion to typescript-angular

* fixes #13131: add example for typescript-angular: paramExpansionStrategy=custom

* fixes #13131: document usage of paramExpansionStrategy=custom in README.mustache

* fixes #13131: fix unit tests and sample url for http-param-expander package

* fixes #13131: update samples

* fixes #13131: drop new cli parameter, handle encoding in template only

* fixes #13131: add TestNG groups to all Typescript tests

* fixes #13131: old angular/typescript does not understand type imports

* Apply suggestions from code review

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>

* fixes #13131: implement backwards-compatible behavior for format: 'date-time'

* fixes #13131: update typescript-angular integrationtests

* fixes #13131: review fixes + lots of documentation

* fixes #13131: update integrationtests

* fixes #13131: update docs/examples

* fixes #13131: update integrationtests

* fixes #13131: unify enums to union-types to make the api feel mora angular-ish

* fixes #13131: update examples

* fixes #13131: update docs/examples after merge of master

Co-authored-by: Christoph Linder <post@christoph-linder.ch>
Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
2022-08-24 09:35:40 +02:00
jtvmatos
4f94d449dc fix: Deepcopy fail for allOf schemas (#13130) 2022-08-23 23:07:37 -07:00
Justin Black
3f2b167360 [python-experimental] creates + uses MetaOapg cls to store non-properties schema keywords (#13256)
* Uses MetaOapg

* Fixes some tests

* Fixes tests

* Removes pass

* Generates unit test sample

* Samples regenerates

* Reverts version files

* Changes uniqueItems to Boolean type

* Samples regenerated

* Fixes code in addImportsForPropertyType

* Fixes codegenModel and codegenProperty

* Fixes CodegenParameter

* Adds getUniqueItemsBoolean/setUniqueItemsBoolean

* Updates template to use getUniqueItemsBoolean

* Adds printing of uniqueItemsBoolean in codegenModel

* Samples regenerated
2022-08-23 17:26:43 -07:00
William Cheng
8ee22b8e97 Better enum tests for scala-sttp (#13261)
* better petstore tests for scala-sttp

* test scala sttp in github workflow

* test with jdk 11

* comment test
2022-08-24 01:55:45 +08:00
Justin Black
d6fb08d837 [python-experimental] moves composed schemas into cls (#13255)
* Composed schemas moved into cls

* Fixes tests

* Other sample regenerated

* Reverts version files
2022-08-22 16:50:46 -07:00
Justin Black
fac576a2bf [python-experimental] move validations into cls (#13252)
* Adds null checks to validation properties

* Modifies the templates to move validations into the cls

* Regnerates unit test spec

* Template update to get rid of cls factory for validations

* Updates samples for unit test spec

* Moves SchemaValidator class

* Removes SchemaValidator

* Fixes 2 tests in v3 sample

* Reverts version files

* Reverts 2 files
2022-08-22 15:34:48 -07:00
William Cheng
e0c72702c3 update undertow to newer version (#13238) 2022-08-20 22:10:31 +08:00
Justin Black
640010ad38 [python-experimental] style + naming cleanup (#13234)
* Updates templates

* Samples update

* Other sample updated

* Removes unserscore prefix from Validators

* Samples regenerated
2022-08-19 21:09:57 -07:00
Justin Black
52eb13f662 Standardizes import gathering code (#13137)
* Uses the same util to add all imports

* Removes unneeded class variable definition

* Samples regenerated for Groovy

* Fixes imports in Lua so object import does not show up

* Fixes nim imports

* Fixes proto generation

* Removes accidental new protobuf sample

* Improves proto allOf test

* Controls import addition with parametersAndResponsesImportFromV3SpecLocations

* More import protection in fromFormProperty

* More test fixes

* Samples regenerated

* Do not import composed schemas if those features are not supported

* Samples regenerated

* Adds new param importContainerType

* Fixes tests

* Samples regenerated

* Turns off importContainerType in JavaMicronautAbstractCodegen and regens samples

* Reverts most import changes, puts original imports behind a constant check

* Samples regenerated

* Updates model imports, samples regenerated

* Removes typeMapping and instantiationMap types from getImports

* Reverts template and regens samples

* Revers generator java files

* Stops setting complexType on codegenParameter

* Adds missing import back in

* Reverts languageSpecificPrimitives changes

* Samples regenerated

* Regnerates samples

* Reverts proto files

* Removes hoistParameterArrayItemBaseTypeHigher

* Samples regen

* Reverts parameter property

* Turns off importContainerType in getContent

* Samples regenerated

* Uncomments java test

* Adds imports for codegenParameter.schema

* Changes property name to importFromV3SpecLocations

* Changes property name to addSchemaImportsFromV3SpecLocations

* Removes unused java codes

* Fixes javadoc

* Removes extra docs file
2022-08-19 16:37:02 -07:00
Nikos Epping
719f429107 [typescript-fetch] Serialize Set of primitives as array (#13195)
* [typescript-fetch] Fix array of primitive items where unique-items is true

* [typescript-fetch] Update examples

* [typescript-fetch] Split template into multiple lines
2022-08-19 17:44:40 +02:00
Jacob Halsey
6d82ac0806 [rust]: Remove unmaintained samples and specs (#13193)
* [rust]: Remove unmaintained samples and specs

* Fix checks

* move test file

* Fix test file
2022-08-19 15:45:48 +08:00
William Cheng
ed3666fbde [R] Minor improvements to the documentation (#13226)
* minor improvement to r doc

* better scopes
2022-08-19 14:59:01 +08:00
Nikos Epping
18bb5466bb [typescript-axios] Ignore unused imports when using 'withSeparateModelsAndApi' (#13204)
* Add typescript-axios/with-separate-models-and-api-inheritance sample as test for #13203

* [typescript-axios] Add // @ts-ignore to imports in models if withSeparateModelsAndApi is set

* [typescript-axios] Update samples
2022-08-18 20:23:51 +02:00
William Cheng
7e4f3c9b67 [R] Add fromJSONString method to oneOf/anyOf in R client (#13223)
* add fromJSONString method to oneOf/anyOf in R client

* update code samples
2022-08-19 01:39:02 +08:00
Justin Black
3239f28e09 [python-experimental] code quality improvements (#13221)
* Changes http to https

* Refactors method to be simpler, removes unused json encoder

* Samples regen, test fixed, consolidated redundant return

* Samples regenerated

* Updates composed model property names

* Samples regenerated using composed schema name update

* Samples regen, removed unused arg in __get_oneof_class
2022-08-18 09:41:50 -07:00
William Cheng
4916774a21 fix rdoc type (#13216) 2022-08-18 14:23:19 +08:00
Justin Black
b1dec24ae8 [python-experimental] improves docs, add migration guide (#13210)
* Adds comments and migration readme section

* Samples regenerated

* Samples regenerated
2022-08-17 14:27:02 -07:00
William Cheng
9f3fac53c1 [R] Fix warnings reported by r cmd check (#13205)
* fix warnings reported by r cmd check

* fix assignment
2022-08-17 20:17:30 +08:00
William Cheng
65d57a8bf1 [R] Add generateWrapper option (#13198)
* add generateWrapper option

* fix bug, add tests

* update doc
2022-08-17 15:05:57 +08:00
Zorp
904674c934 Add support for Angular v14 (#12901)
* Add support for Angular v14

- Support Angular 14
- Support rxjs 7.5.5, tsickle 0.46.3, ngPackagr 14.0.2, zonejs 0.11.5
- Requires typescript >= 4.6.0 and < 4.8.0

* Review comments

- Remove duplicate tests
- Added openapi-generator-ignore

* Update samples/client/petstore/typescript-angular-v14-provided-in-root/pom.xml

* Update samples/client/petstore/typescript-angular-v14-provided-in-root/pom.xml

* Update samples/client/petstore/typescript-angular-v14-provided-in-root/pom.xml

* Review comments

- Added typescript-angular-v14-provided-in-root test module to root pom.

* update samples

Co-authored-by: Esteban Gehring <esteban.gehring@gmail.com>
Co-authored-by: Esteban Gehring <esteban.gehring@bithost.ch>
2022-08-17 08:02:44 +02:00
Matthew Davis
01a9c55b6e Fix #6899 - python-flask now uses the pre-existing getter/setter validators (#6911)
* make python-flask set attributes via existing setter

* regenerate python-flask templates

Co-authored-by: Matthew Davis <Matthew.Davis.2@team.telstra.com>
Co-authored-by: Ubuntu <ubuntu@ip-172-31-5-110.ap-southeast-2.compute.internal>
2022-08-16 10:59:52 -07:00
antssilva96
7e5ee2142c Fixed regular expression in python client codegen that was removing any trailing chars instead of only expected ones (#13164)
* Fixed regular expression in python client codegen

The previous regular expression was too loose, including any last character in the second group. This commit fixes that, making sure we only remove leading forward slashes, trailing forward slashes or trailing `\i`.

This commit closes 13069.

* Added generated files

* Edit comment

* Add test cases

Co-authored-by: antonio.silva <antonio.silva@feedzai.com>
2022-08-16 09:06:53 -07:00
William Cheng
cfb35f97ef update samples 2022-08-16 15:35:01 +08:00
Noor Dawod
9d9e0a4335 Make "applyToParams" a Future + add "this." when decoding JSON (#13120)
* Bump jimschubert/query-tag-action from 1 to 2

Bumps [jimschubert/query-tag-action](https://github.com/jimschubert/query-tag-action) from 1 to 2.
- [Release notes](https://github.com/jimschubert/query-tag-action/releases)
- [Commits](https://github.com/jimschubert/query-tag-action/compare/v1...v2)

Signed-off-by: dependabot[bot] <support@github.com>

* Use a normal variable name inside a function, no need to make it private.

* Pass on authentication names because authentication implementations may need those!

* Generate Petstore samples.

* Allow authentication implementations to apply header and query parameters asynchronously.

* Allow inherited implementations to define a type for authentication class.

* Generate Petstore sources.

* Remove `authNames` from API client and authentication classes.

* Reference properties with `this.` in case one of them has the same name as a local variable.

* Regenerate Petstore source code.

* Revert adding a generic T in `ApiClient`.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-16 00:53:59 +08:00
devhl-labs
7e4fa70067 Update allOf to not always be nullable (#12861)
* added nonNullableVars

* added return property to operation

* added return property to operation

* build samples

* added inner enum

* build samples

* allOf no longer always nullable

* added a comment
2022-08-16 00:47:51 +08:00
Mostafa Aghajani
17f9a28093 Avro fix arrays with items as a ref to defined enum (#13162)
* avro-schema generation fix for arrays with ref to enum (or any non primitive type) to include modelPackage prefix

* sample scenario and generated outputs for avro-schema

* create avro-schema dedicated test file
2022-08-16 00:22:49 +08:00
Christian Bartolo Burlò
2a196ce362 Fixed scala-sttp generator (#11949)
* fixed scala-sttp generator

* pr checklist

* fixed issue with imports in scala-sttp

* fixed samples

* changed isUnit to isDefault

* fixed errors

* Update modules/openapi-generator/src/main/resources/scala-sttp/api.mustache

Co-authored-by: João Ferreira <jtjeferreira@gmail.com>

* updated samples

Co-authored-by: João Ferreira <jtjeferreira@gmail.com>
2022-08-15 18:42:06 +08:00
William Cheng
c4dd42e7a0 fix r model validations, add tests (#13181) 2022-08-15 00:27:10 +08:00
William Cheng
9e20b01b12 [R] allow oauth scopes customization, remove unused import (#13179)
* add oauth scopes, remove unused import

* fix null check
2022-08-14 22:50:36 +08:00
William Cheng
1f42b09b33 fix issues reported by roxygen in r client (#13176) 2022-08-13 12:23:49 +08:00
William Cheng
123f92d136 add validations to R models (#13157) 2022-08-12 17:09:36 +08:00
William Cheng
456d7d0159 Add tests to Rust (hyper, reqwest) clients (#13165)
* add tests to rust clients

* add new file
2022-08-12 13:50:32 +08:00
Justin Black
8cd0d38446 Adds $ref data to schema classes (#13163)
* Adds getRef/setRef

* Adds ref to CodegenModel

* Adds ref to CodegenProperty

* Adds ref to CodegenParameter

* Adds ref to CodegenResponse

* Sets ref on CodegenModel and CodegenProperty

* Samples regenerated
2022-08-11 12:57:00 -07:00
Ewoud Kohl van Wijngaarden
9abaa53db1 Replace use of deprecated Faraday::UploadIO (#13127)
Faraday 0.16.0 added Faraday::FilePart as an alias to Faraday::UploadIO
and deprecated Faraday::UploadIO. In Faraday 2.0 the deprecated UploadIO
was removed.

Fixes: e12100b033
2022-08-11 15:18:39 +08:00
Jacob Peterson
c987e75f92 Fix missing import in api.mustache for Typescript generator (#13105)
* Fix missing import in `api.mustache` for Typescript generator

This fixes issue OpenAPITools/openapi-generator#11288.

* Generate samples
2022-08-11 08:27:52 +02:00
William Cheng
c5a0374d2b [Ruby] add useAutoload option to use autoload instead of require (#13153)
* [Ruby] Use Ruby autoload to lower memory usage and load times

Fixes #12648

Requiring all models up front can be very expensive in both time and
memory if there are many models. In an example client with 6000 models,
this would consume nearly 400MB of memory and take about 7 seconds to
load. This is mostly unnecessary as most users of the client library
will only actually use a small percentage of the library.

The changes in this commit use Ruby's autoload capability to defer the
loading until the constant is actually used. In that same example client
with 6000 models, when initially requiring the library, the memory
usage dropped to ~20MB and loaded in 0.3 seconds. As the constants are
loaded on-demand, the memory would increase towards that 400MB ceiling,
but if only a few constants are actually used, then memory will never
actually hit that ceiling.

An additional side effect of using Ruby's autoload is that the order of
declaring the constants is not important, as Ruby will naturally load
them in the correct order when they are needed. Thus, this commit obviates
PR #9103 and fixes #4690.

* add option to use autoload in ruby client

* test ruby clients only

* add tests

* update samples

* Revert "test ruby clients only"

This reverts commit 0aaf71cd4c.

* update doc

Co-authored-by: Jason Frey <fryguy9@gmail.com>
2022-08-11 12:45:13 +08:00
William Cheng
5662d6136f update samples 2022-08-11 10:39:34 +08:00