7908 Commits

Author SHA1 Message Date
Elton H.Y. Chou
8e66294bfe
[python-experimental] Enhance octet-stream deserialize (#13402)
* [python-experimental] Enhance octet-stream deserialization

When the headers didn't provide the filename, use the url of response to
extract filename.

* [python-experimental] Remove todo comment.

* [python-experimental] Fix test code.

* Update samples

* [python-experimental] Refined the method and the test

+ Early return when the url is empty or `None`.
+ Removed unused f-string prefix.

* [python-experimental] Comapre url is None explicitly.

* Update samples.
2022-09-12 12:04:14 -07:00
Austin Ziegler
194d421d83
Further Elixir Client Improvements (#12775)
* Further Elixir Client Improvements

Resolves #12731 and is the completion of the work that I started with
#12751.

The changes here are extensive and likely resolve an issue that I have
seen with the Ory SDK (ory/sdk#194). I have also been unable to run the
integration suite for Elixir as I am (trying) to run everything in
Docker (`./run-in-docker.sh`) as I *do not* have a suitable Java
development environment set up, and do not do enough Java work to really
justify it.

- Updated the README for Elixir projects. Aside from some improved
  readability of the template by use of link references instead of
  inline links, I have also fixed the examples:

  - The `deps` example should have been putting a version constraint
    related to `appVersion`.

  - The `config` example should have been using `packageName` instead of
    `appName`. This particular issue repeats.

- In all Elixir files:

  - Changed the function `@docs` formatting:

    - changed the ehading level for `Parameters` and `Returns` to h3
      (`###` instead of `##`). This will make somewhat better looking
      documentation that does not over-emphasize these details (which
      are *not* documented in a normal Elixir way, but this is somewhat
      to be expected with a code generator.) It may be desirable, after
      testing, to change this to `h4` instead of `h3`.

    - Put parameter names and most return types in in-line code blocks
      (`` `hello` ``).

    - Put return types, when there are multiple types, in a Markdown
      list.

  - Fixed a lot of the spacing. Most files will be *closer* to Elixir
    standard formatting than they were. Because of the limitations of
    Mustache, it is still recommended that people who generate Elixir
    clients run `mix format` at least once on their codebase.

- `api.mustache`:

  - Removed an awkward function pipeline call. If we specified at least
    Elixir 1.12 (something that I do not recommend as we have recently
    jumped from requiring Elixir 1.6 to Elixir 1.10), there is a better
    way to specify this now with `Kernel.then/2`. In the meantime,
    assigning the constructed request structure to a variable and then
    making a separate pipeline for the request execution and handling
    makes for *much* easier to read generated code.

  - Fixed the extra space issue with `evaluate_response` call tuple
    values; `{{=<% %>=}}` changes the tag types, so this change is
    intentional.

- In `config.exs.mustache`, `runtime.exs.mustache`, `mix.exs.mustache`,
  and `connection.ex.mustache`, use `packageName` instead of `appName`
  for configuration specification. If `packageName` and `appName`
  differed, we would end up with cases like ory/sdk#194.

- `connection.ex.mustache` has been almost entirely rewritten. The
  changes started in order to eliminate a `@doc` compile-time warning,
  but shifted to remove the old way of building Tesla client structs
  with `use Tesla`. It works, but is no longer the recommended way of
  building Tesla clients.

  - The *recommended* way of building a Tesla Client would now be
    `Tesla.client(Connection.middleware(), Connection.adapter())`.

  - Exposed both `Connection.adapter/0` and `Connection.middleware/1`
    for use. `Connection.middleware/1` has special handling for the
    cases where OAuth2 or HTTP Basic Auth are defined in the
    application, but do not currently handle any other auth methods.

- `deserializer.ex.mustache` has mostly been reformatted. There are
  things that I do not like about it (I do not like pipelines with one
  line), and I have expanded one function capture into an anonymous
  function for readability.

- `request_builder.ex.mustache` has been updated with better
  function and parameter descriptions and names. Please note that if
  `request |> method(:delete) |> method(:post)` is supposed to produce
  a `POST` operation, we will need to change from `Map.put_new/3` to
  `Map.put/3`.

  - Reordered `evaluate_response/2` so that it is the function documented,
    and made `decode/2` and `response_mapping/3` private functions. As
    far as I can tell, I have *not* changed the functionality.

* Address issues found in code review

- The example dependency code in the README had dropped the opening
  brace for the tuple. This has been resolved.

- The default formatting of the API pipelines has been adjusted to
  minimize possible changes from `mix format`.

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

Co-authored-by: Michael Ramstein <633688+mrmstn@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/elixir/connection.ex.mustache

Co-authored-by: Michael Ramstein <633688+mrmstn@users.noreply.github.com>

* Update modules/openapi-generator/src/main/resources/elixir/connection.ex.mustache

Co-authored-by: Michael Ramstein <633688+mrmstn@users.noreply.github.com>

* Update templates based on review comments

Co-authored-by: Michael Ramstein <633688+mrmstn@users.noreply.github.com>
2022-09-12 19:00:58 +08:00
William Cheng
928070c57a
Prepare 6.1.1 SNAPSHOT version (#13399)
* prepare v6.1.1

* update samples

* update doc
2022-09-11 19:08:23 +08:00
William Cheng
43dbb5ff9c
6.1.0 release (#13398) 2022-09-11 17:16:07 +08:00
Segev Finer
9753086bcb
Fix #13369: kotlin-client with okhttp doesn't escape path parameters with slashes correctly (#13370)
* Fix #13369

* Regenarate samples

* Fix support for okhttp3
2022-09-09 16:31:31 +08:00
kmaginot
0b6604504c
[Java][Feign] convert expirationTimeSeconds to milliseconds (#13361) 2022-09-09 00:00:17 +08:00
William Cheng
f98753aa8b
[R] support explode (true/false) in query array parameters (#13364)
* fix query parameters (explode or not) in r client

* add tests
2022-09-07 12:21:13 +08:00
William Cheng
a91201d4ed update ts samples 2022-09-06 23:28:51 +08:00
William Ghelfi
86d6511449
Mark overrides in typescript-fetch and typescript-rxjs (#13322)
* feat(typescript-fetch): mark overrides

fix #12948

* feat(typescript-rxjs): mark overrides

fix #12948
2022-09-06 09:31:43 +02:00
William Cheng
6c9421684a
escape % in description in r model @field (#13353) 2022-09-05 11:37:24 +08:00
William Cheng
f0d8c3e735
fix query parameter in r client (#13348) 2022-09-05 03:44:22 +08:00
William Cheng
c81c103572
[R] Remove obsolete importMapping code, add tests (#13345)
* remove import obsolete code, add tests

* remove man fodler

* update .gitignore
2022-09-05 00:21:52 +08:00
mm's
ef6d383433
Feature/update kotlin dependecies template (#12966)
* update Kotlin & Ktor versions

* update samples

* fix gradle version

* update the ktor client templates and project samples

* update the ktor client templates and project samples

* revert multiplatform upgrade

* update kotlin multiplatform

* upload kotlin Multiplatform samples

* fix gson ktor sample

* update samples

* fix: unused imports

* fix imports of ApiClient

* update kotlin samples
2022-09-04 23:27:24 +08:00
Bill Collins
f6be1d07bc
Do not generate new models for readonly schema references (#13303)
* Add example of nested schema issue

* Add failing test case

* Special case properties with a single allOf and readonly

* Remove rogue file from FILES
2022-09-04 18:01:55 +08:00
Sergey Prytkov
2a007b3465
Fix generation of default array values for kotlin client (#13243)
* Fix generation of default array values for kotlin client

* rerun generation scripts

* replace list of enum with list of string
2022-09-04 17:43:09 +08:00
Michael Edgar
afd357be8a
fix: ensure Resteasy JAX-RS Response object closed (#13333)
Signed-off-by: Michael Edgar <medgar@redhat.com>

Signed-off-by: Michael Edgar <medgar@redhat.com>
2022-09-03 23:40:13 +08:00
William Cheng
2bfbb87862
move print to public method, leave commented code to lock, unlock the class (#13342) 2022-09-03 14:03:03 +08:00
William Cheng
b6576d1173
[R] Update fromJSON to handle additional properties (#13331)
* update fromJSON to handle additional properties

* update RoxygenNote to newer version
2022-09-02 09:46:56 +08:00
Jonas Reichert
fea42b547e
[swift5] distinguish (un-)authenticated requests (#13321)
* add isRequestAuthenticated to request builder

* update samples

* improve samples
2022-09-01 09:18:22 +01:00
William Cheng
d1f44e8a7e
fix http basc auth in R client (#13330) 2022-09-01 14:14:08 +08:00
Jonas Reichert
7af9f9c7e7
[swift5] explode query params only if necessary (#13202)
* propagate explode option to mapValuesToQueryItems

* regenerate swift5 samples
2022-08-31 20:50:25 +08:00
William Cheng
cebdbb6a11
add additional properties support in r client (#13317) 2022-08-31 15:06:40 +08:00
Jaemin Park
9b9d3200a8
[cpp-ue4] Support UE5 version of FTickerObjectBase (#13304)
Co-authored-by: nullbus <nullbus@nm-fc.com>
2022-08-29 21:27:35 +08:00
Julian Kalinowski
2c0d886a1d
[swift]: support uuid in FormDataEncoding (#13228) 2022-08-29 18:43:47 +08:00
Savitha M R
522a5df24a
[csharp-netcore] To support Secret API key input as string (#13276)
* To support api secret key to take input as string.

* To support Secret API key input as string

Co-authored-by: Savitha M R <savitha.m@maplelabs.com>
2022-08-29 18:17:30 +08:00
William Cheng
b55fa261f3
add oneOf discriminator lookup support (#13301) 2022-08-29 01:24:01 +08:00
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
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
snebjorn
50a9d3323a
fix: [typescript-angular] .join does not exist on type Set (#13278)
fixes #11782
2022-08-26 12:47:58 +02: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
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
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
William Cheng
4916774a21
fix rdoc type (#13216) 2022-08-18 14:23:19 +08: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
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
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
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