Commit Graph

1803 Commits

Author SHA1 Message Date
Anakael 1fbf7220ec [CS] refactor: update github actions (#17666)
* feat: DateOnly for client

* fix: generated doc for csharp

* doc: fix generators README for csharp

* add DateOnly option for aspnet

* refactor: update csharp docs

* refactor: fix typo

* finish

* finish

* finish

* regenerate

* rebuild and regenerate

* fix build error

* finish

* revert path

* regenerate

* remove exceed samples

* regenerate

* add DateOnly to nullable

* remove obsolete file from list

* update test files list

* remove obsolete sample build

* revert manual tests

* revert samples to master and regenerate

* remove new samples

* remove eol

* remove eol

* add new specs

* try fix test

* update tests

* update files

* remove eol

* revert

* remove eol

* regenerate

* add net6+ support to aspnetcore

* add jobs

* update actions

* regenerate

* delete exceed file

* remove rexeg
2024-02-28 15:56:48 +08:00
Artem Medvedev 6f01a7ad82 fix(rust): wrong path to model used as parameter of api (#17968)
* fix(rust): wrong path to mode used as parameter of api

Closes #16974

* fix: re-build samples
2024-02-28 14:56:03 +08:00
Artem Medvedev 4b04e17751 feat(rust): support ability to disable boxed models in client (#17931)
* feat(client): support ability to disable boxed models

Add new additional property `avoidBoxedModels` which can be configured to avoid `Box<..>` of models.

It's very nice to have such config, because it doesn't make a lot of sense for really simple models.

* test: rollback config of existed test
2024-02-28 11:22:18 +08:00
Stefan Koppier 2a4e60ccbb [Kotlin] Fix default values (#17937)
* Fixed invalid extraction of response body in kotlin-client jvm-spring-*

* Generated echo-api for kotlin-jvm-spring-3-restclient

* Specific echo-api for Kotlin without allOf/anyOf

* Specific echo-api for Kotlin without allOf/anyOf

* Generated all samples

* Added kotlin-jvm-spring-3-restclient sample to workflow

* Fixed syntax problem

* [kotlin] Fixed multiple problems with default values

* [kotlin] Removed old commented code

* [kotlin] Generated new samples after merge with master

* [kotlin] ensure-up-to-date
2024-02-28 11:20:27 +08:00
Artem Medvedev 518b29d089 fix(rust): oneOf generation for client (#17915)
* fix(rust): discriminator mapping to serde rename

Discriminator mapping has been ignored in some cases.
Even existing samples had wrong definition in some cases

This PR addresses this

* fix(rust): `oneOf` generation for client

Solves #17869 and #17896 and also includes unmerged $17898

Unfortunately it affects quite a lot of code, but we can see that only client-side models were affected by re-generation.
I tried to split this PR to several, but they're really coupled and hard to create a chain of PRs.

* fix: indentation in `impl Default`

* missing fixes

* fix: correct typeDeclaration with unaliased schema

* style: improve indentation for models

* fix: user toModelName for aliases of oneOf

* refactor: unify `getTypeDeclaration` for rust

* cover the case when `mapping` has the same `ref` for different mapping names

* test: add test for previous change

* style: remove extra qualified path to models

* add some comments

* fix(build): use method of `List` instead of specific for `LinkedList`
2024-02-24 23:41:30 +08:00
Mehmet Fatih Ercik 48565ae5be Generate API files as interfaces for go-gin server (#17784)
* add feature to generate only interface files

* generate sample

* add workflow file foe go gin service

* add workflow file foe go gin service

* add workflow file foe go gin service

* update samples
2024-02-20 15:37:44 +08:00
Nathan Shaaban 76d743b63b fix(rust): simplify new function optional logic (#17865)
* fix(rust): simplify None logic

Used to be a code path (where isFreeFormObject and something else) where we could end up with two `: None` `: None`'s

This does add the None for the !required && !isArray && !isMap && !isNullable case (where nothing would have been printed before.

Above for the type on the individual vars inside the struct definition the logic is simply if not required then it's optional.
If it's optional we want a None when creating a new struct.

* ci: add tests for failure
2024-02-19 22:26:29 +08:00
William Cheng 7d539bcb78 Remove deprecated library (jvm-okhttp3) in kotlin client generator (#17884)
* remove deprecated library in kotlin client generator

* update workflow
2024-02-18 17:16:23 +08:00
Nathan Shaaban c30d3696b0 [rust] basic oneOf support (#13970)
* [rust] basic oneOf support

Suport oneOf as a rust struct enum.

Details:

Enum without a discriminator is untagged being
"untagged" simply means serde won't attempt to
store the name of the enum inside the serialized
object. See
https://serde.rs/enum-representations.html#untagged
for more

Also check to make sure the mapping values
are not an empty object (aka null).

Co-authored-by: Nikita Puzankov <git@bshn.rs>

* refactor: fix clippy lints

No longer needed as of reqwest 0.10, it now takes the response as owned instead of mut ref.

Is not empty is more clear

* fix: discriminator and oneof case

Will show as a struct enum when there are additional fields, otherwise will be a tuple enum.

not sure the purpose of x-mapped-models, perhaps legacy code? mappedModels appears to do the same thing.

Also add default implementation for quality of life

* chore: update samples

---------

Co-authored-by: Nikita Puzankov <git@bshn.rs>
2024-02-13 19:21:51 +08:00
William Cheng 5bcdc25645 update test file sha256 2024-02-08 11:20:05 +08:00
Charles Treatman d0ed25a06d [Go] fix unused bytes import for anyOf and oneOf models (#17775)
* add sample spec for oneof and anyof with required properties

* omit bytes import for oneOf and anyOf models

* generate sample client for new spec
2024-02-06 17:05:39 +08:00
Charles Treatman 6e137bb61d Add sample spec to catch external file reference issues in swagger-parser (#17773)
* add a sample that catches swagger-parser issues with external refs

* generate samples for new test spec
2024-02-06 16:22:41 +08:00
William Cheng 7c7634dda9 add operation id option (#17750) 2024-02-01 17:21:49 +08:00
dabdirb 66a6af5ca4 add lombok model support on spring (#17622)
* add lombok model support on spring

* use regex to adapt annotation with parenthesis

* add ut case

* add samples

* add samples

* fix github workflow

* fix github workflow
2024-01-27 10:45:44 +08:00
Laith Hussein a7439e456e feat(typescript-angular): add support for v17 of angular (#17685)
- Add support for `transferCache` property in request options

Refs: [#17301]

Co-authored-by: Laith Hussein <laith.hussein@beno.com>
2024-01-26 09:21:48 +01:00
William Cheng dccb147055 Fix allOf with a single item in inline model resolver (#17683)
* fix inline model resolver for allof with 1 item

* add files

* update sha

* more checks
2024-01-23 23:37:39 +08:00
William Cheng 659e21a4bf Update perl tests (#17670)
* update perl tests

* add more tests
2024-01-22 17:59:49 +08:00
Stefan Koppier 227c8602f7 [kotlin-client][jvm-spring-*] Fix runtime error in endpoints of type Unit (#17664)
* Fixed invalid extraction of response body in kotlin-client jvm-spring-*

* Generated echo-api for kotlin-jvm-spring-3-restclient

* Specific echo-api for Kotlin without allOf/anyOf

* Specific echo-api for Kotlin without allOf/anyOf

* Generated all samples

* Added kotlin-jvm-spring-3-restclient sample to workflow

* Fixed syntax problem
2024-01-22 10:57:40 +08:00
William Cheng d810d7c534 R echo client tests (#17629)
* add r echo api client sample

* add r workflow

* fix

* add env

* set r version

* install curl

* install dep

* fix

* comment out installation
2024-01-18 09:05:35 +08:00
Alexis Couvreur 092463a513 feat: add java-wiremock generator (#17614)
* feat: add `java-wiremock` generator

* remove text block usage for samples

this will allow more version of jav to be compatible with this

* fix extra parenthesis

* Add java-wiremock workflow
2024-01-16 11:40:13 +08:00
Robert Schweizer a0418c2855 [python][client] Clean up samples and CI (#17509)
* chore: Remove leftover Github action file

This was probably added by mistake. A similar file is active in
.github/workflows/samples-python-pydantic-v1-petstore.yaml.

* chore: Remove leftover VERSION from old python-experimental sample

* ci: Stop running Python integration tests in Circle CI

These Python clients are all tested with Github Actions already, which
is faster, more cleanly separated and only runs on modifications.

I'm not cleaning up the pydantic-v1 client, I expect it to be removed soon anyway.

* chore: Remove true from sample folder name

python-disallowAdditionalPropertiesIfNotPresent-true
-> python-disallowAdditionalPropertiesIfNotPresent
2024-01-16 10:34:04 +08:00
Dennis Ameling 13edc5d494 kotlin-server: Add support for Javalin (#17596)
* kotlin-server: Add support for Javalin

* kotlin-server: Add Javalin generated sample code

* Add output from build scripts

* Address MR feedback

* Update CI to include new Javalin sample
2024-01-15 20:22:20 +08:00
Linh Tran Tuan 6429711a58 [Rust] [Axum] Format ops-v3 sample (#17599) 2024-01-12 10:37:14 +08:00
William Cheng 987a52cf0f move rust axum configs to bin/configs/manual 2024-01-12 10:28:07 +08:00
mikkka 455add6d80 Implement scala http4s server generator (#17430)
* Implement scala http4s server generator

* Fix types and auth

* Add proper handling of various responses

* Fix configs

* Drop null values in json encoder

* Add sample files

---------

Co-authored-by: m.tkachev <m.tkachev@tinkoff.ru>
2024-01-10 11:40:31 +08:00
Anakael 11caad92df [CSharp] feat!: add useDateOnly flag (#17471)
* feat: DateOnly for client

* fix: generated doc for csharp

* doc: fix generators README for csharp

* add DateOnly option for aspnet

* refactor: update csharp docs

* refactor: fix typo

* finish

* finish

* finish

* regenerate

* rebuild and regenerate

* fix build error

* finish

* revert path

* regenerate

* remove exceed samples

* regenerate

* add DateOnly to nullable

* remove obsolete file from list

* update test files list

* remove obsolete sample build

* revert manual tests

* revert samples to master and regenerate

* remove new samples

* remove eol

* remove eol

* add new specs

* try fix test

* update tests

* update files

* remove eol

* revert

* remove eol

* regenerate

* add net6+ support to aspnetcore

* add jobs
2024-01-10 11:34:14 +08:00
Rugal Bernstein 1e0e8fe0eb Add ability to append ServerHttpRequest for kotlin-spring generator (#17158)
* Add ability to append ServerHttpRequest for kotlin-spring generator

* Add generated doc & sample
2024-01-10 11:11:23 +08:00
Thomas Kläger 69a4a65bc7 fix spring generator dto annotations (#17054) 2024-01-09 16:47:10 +08:00
Linh Tran Tuan 9827098057 [Rust] [Server] New generator bases on Axum (#17549)
* Rust Server - Axum based (#5)

* Fix typo

* Address comment

* Address comment
2024-01-09 11:38:54 +08:00
Jonathan Ballet 22a0fc1727 python: adjust basic typing information (#17511)
* python: adjust basic typing information

This is an initial pass to fix and adjust the typing information for the
generated client. This is enough to have mypy runnning without complains
on all the (modern) generated clients (Pydantic v1 code is not checked
for instance)

mypy is also now run directly in the CI, so further changes will also be
checked and thus, will need to be compliant with good typing
information.

Note that this doesn't *fully* type all the code: mypy is not run in
"strict" mode and there are still many functions/methods/attributes
which are still not fully typed, but it's a first good step in that
direction.

* ApiResponse's raw_data can't be None

* Fix indentation

* Revert test changes

* run mypy on tests/ directory

* don't forcefully convert the client response headers to dict

* override petstore ApiResponse model

* adjust type of 'any/one_of_schemas' fields
2024-01-06 15:40:42 +08:00
William Cheng 5c571b0e1f add enum name mapping support to ruby generators (#17537) 2024-01-05 15:00:52 +08:00
ken_tunc 1105759a6f [kotlin-client][jackson] Add support for unknown default enum value (#17404)
* [kotlin-client][jackson] Enable @JsonEnumDefaultValue

* Update samples
2023-12-26 16:36:44 +00:00
William Cheng c215bc681d better java resteasy echo api client tests (#17473) 2023-12-26 10:25:55 +08:00
Milad 8c014372aa [Java RESTEasy client] updating test to use the Java RESTEasy echo api client (#17367) (#17470)
* updating test to use the Java RESTEasy echo api client (#17367)

* regenerated samples

* set source and target to 1.8 to fix workflow failure, adapted parser
2023-12-26 09:32:51 +08:00
Mickael Magniez 38c33b92fe Add scala-pekko client generator (#17417)
* feat: add scala-pekko client generator

* feat: add scala-pekko client to CI
2023-12-22 10:58:27 +08:00
Milad 106047980b [Java RESTEasy client] added filename directive for Java RESTEasy file uploads (#17367) (#17435)
* added filename directive for Java RESTEasy file uploads (#17367)

* regenerated samples
2023-12-21 19:34:30 +08:00
Yonatan Karp-Rudin 5435b44e40 Fix missing convertor for jackson in retrofit (#17418)
* Add missing Jackson converter for Retrofit

This commit adds the missing configuration for a ApiClient so all Jackson serializations will start to work correctly.

* Add sample project code for Retrofit Jackson
2023-12-19 10:29:50 +08:00
Stefan Koppier 7f05c1f41d [kotlin-client] New generator: kotlin-jvm-spring-restclient (#17366)
* Created kotlin jvm spring restclient

* Fixed kotlin jvm-spring-restclient

* Fixed earlier problems

* Fixed earlier problems

* Updated kotlin.md
2023-12-11 12:49:36 +08:00
William Cheng 10da7a3c5a [Ruby] add file download tests (#17362)
* add new ruby echo api clients

* add tests for ruby faraday file download

* add file download test to ruby Typhoeus

* add ruby workflow, add tests for ruby httpx

* update

* fix
2023-12-09 22:05:27 +08:00
William Cheng 2c9fbf81a7 add enum name mapping to ada codegen (#17299) 2023-12-06 17:50:03 +08:00
Viktor Szépe 39d5b4ebf9 Replace stray TAB characters with spaces (#17311)
* Replace stray TAB characters with spaces

* update samples

---------

Co-authored-by: William Cheng <wing328hk@gmail.com>
2023-12-05 18:01:25 +08:00
William Cheng cdb020d044 add enum name mapping option to swift generators (#17297) 2023-12-05 15:06:31 +08:00
William Cheng bbd0ce38be add enum mapping option to dart generators (#17298) 2023-12-04 12:32:36 +08:00
William Cheng ac45e3ddab add enum name mapping feature to the rust generators (#17290) 2023-12-04 10:53:11 +08:00
William Cheng b19bc59c6a add enum name mapping feature to go generators (#17289) 2023-12-04 10:52:58 +08:00
William Cheng f834519aeb move config file to unmaintained to avoid samples outdated errors 2023-12-01 11:29:09 +08:00
William Cheng f033b11408 Update JAX-RS client samples (#17262)
* update jaxrs client samples

* move configs
2023-11-30 21:39:42 +08:00
William Cheng e2a8118c86 add enum name mapping support to php generators (#17195) 2023-11-27 20:26:28 +08:00
William Cheng ac687657ba add enum name mapping feature to C# generators (#17194) 2023-11-27 20:26:12 +08:00
William Cheng a117dd55f1 add enum name mapping feature to kotlin generators (#17193) 2023-11-27 20:25:15 +08:00