1580 Commits

Author SHA1 Message Date
ksn-partisia
fa2b5750ce
[Bug] [Java] Remove raw type compilation warnings when generating using jersey2 or jersey3 (#19033)
* Add type annotations to raw types for jersey2 and jersey3 templates

* Update samples

* Add type parameters to anyof_model.mustache and oneof_model.mustache

---------

Co-authored-by: Kasper S. Nielsen <kasper.s.nielsen@secata.com>
2024-06-30 10:06:12 +08:00
Cameron Koegel
53f1094765
[Python] Allow Overriding Accept Header (#19025)
* [Python] Allow Overriding Accept Header

* generate samples

* add tests
2024-06-28 19:27:10 +08:00
William Cheng
0c4bfe3ffe
Add tests for anyof with discriminator (#19021)
* add tests for anyof with discriminator

* remove test

* update samples
2024-06-26 16:00:58 +08:00
Cameron Koegel
0d05ee35f0
[Python] Add Flag to Allow Ignoring Operation Servers (#18981)
* [Python] Add Flag to Allow Ignoring Operation Servers

* generate samples

* add tests
2024-06-26 15:08:13 +08:00
William Cheng
6aa825bcf7
[Go] Fix an issue causing int array reference translated to an invalid type []Integer (#19013)
* [Go] Fix an issue causing int array ref be converted into an invalid type, `[]Integer`

* Add test case: wrapped and referenced integer of an array to Go client samples

* add check for ref to property in go abstract

* Update modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java

Co-authored-by: Zhiwei <zhiwei.liang27@pm.me>

---------

Co-authored-by: Zhiwei Liang <zhi.wei.liang@outlook.com>
Co-authored-by: Zhiwei <zhiwei.liang27@pm.me>
2024-06-25 16:29:28 +08:00
Yannick Wiesner
c5daf8193b
dart - make the dependency on the http, collection and meta package less strict (#18952) 2024-06-24 12:02:30 +08:00
William Cheng
d5f42500ab
[Golang] Move utility functions from client.mustache to utils.mustache (#19001)
* [Golang] Move utility functions from client.mustache to utils.mustache

* re-generate Go samples

* re-generate Go samples again

* re-generate samples once more

* update go samples

---------

Co-authored-by: Martin Lakov <martin.lakov@ocado.com>
2024-06-24 11:58:57 +08:00
William Cheng
1064cb6a68
Allow to pass a str to the Python aiohttp client (#18985)
* see #18972

Add support for `str`

* update python samples

---------

Co-authored-by: David Riccitelli <david@wordlift.io>
2024-06-23 17:19:26 +08:00
Vito De Tullio
e5ae07c2b4
avoid setting debug property if not needed (#18872)
* avoid setting debug property if not needed

* update samples

* fix compatibility with python 3.7

* always set Configuration.__debug

* update samples

* check `Configuration` behavior when debug parameter is / is not set

* address PR requests
2024-06-20 18:23:34 +08:00
Cameron Koegel
9919c23267
[Ruby] Add Flag to Allow Ignoring Operation Servers (#18934)
* [Ruby] Add Flag to Allow Ignoring Operation Servers

* update samples

* add tests

* fix tests
2024-06-19 17:24:59 +08:00
Oleg Gromiak
c3a2fe0592
[Python] Add retries option to Configuration constructor (#18919)
* Python: add retries option to Configuration constructor

* Update autogenerated sample clients
2024-06-19 17:06:33 +08:00
jpfinne
129e4dc9c9
Fix #18715 [JAVA] ensure codegen fields and additionalProperties are not conflicting (#18935)
* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Java generators:  use codegen fields in mustable

* Use MUSTACHE_PARENT_CONTEXT in additionalProperties

* Fix link to mustache documentation
2024-06-17 11:35:40 +08:00
Philzen
6f9ad31df3
[JAVA-SPRING] Avoid broken code due to duplicate rendering of @Deprecated annotation with generateBuilders=true (#18917)
* Implement regression test for #12804

* Fix duplicate rendering of @Deprecated annotation on Builder methods

* Regenerate samples

* Sort entries so it's easier to parse if an entry already exists

* Add sample that uses generateBuilders=true to test build matrix

Serves as an additional regression check for #12804

* Add --no-transfer-progress to mvn build command to increase log legibility
2024-06-16 12:02:53 +08:00
Philzen
642b1a3a95
[JAVA] [SPRING] [PKMST] [MICRONAUT] XML wireformat: Fix Jackson useWrapping=false, JAXB+Jackson namespaces (#18870)
* Fix XML annotations on model properties (JavaSpring)

* generate JAXB annotations for attributes and elements

* generate wrapper annotations (JAXB and Jackson)

* use XML config from items for annotations of containers

* Add test for Jackson XML wrapper correctness

* Add additional test cases to cover all xml applications in spec

Test now covers all use cases described in
- https://web.archive.org/web/20240424203304/https://swagger.io/docs/specification/data-models/representing-xml/
- https://spec.openapis.org/oas/v3.0.0#xml-arrays

* Fix basename used instead of xmlName when items.xmlName is unset

See last example in spec: https://spec.openapis.org/oas/v3.0.0#xml-arrays

* Harmonize spacing between Annotation attribute name and value

* Refactor and group JAXB vs. Jackson XML annotations, only generate latter if enabled

This is in line with the way the class annotations in `xmlAnnotations.mustache`
are rendered – which only renders the `@Jackson`… xml annotations if
additionalProperty jackson is true.

Also reorder annotation attributes in the following order:
- localName/name
- namespace (optional)
- isAttribute/useWrapping (optional)

* Explicitly render `useWrapping = true` to @JacksonXmlElementWrapper

This was slightly inspired by @jzrebiec via PR #5371.

Wrapping is the default since Jackson 2.1 – so explicitly rendering
this will:
- make generated model work out-of-the-box in Jackson 2.0 for instance
- ensure the models still work if the local `XmlWrapper` was
  configured with `useXmlWrapper(false)`

* Move xml test spec to java resources folder (not spring specific)

* Make test class name match class-under-test

This makes discovery & cross-navigation in IDE easier.

* Add complete xml annotations test for Java generators

* Fix Java PKMST generator not generating @JacksonXmlElementWrapper

* Fix Java microprofile generator missing @JacksonXmlRootElement

* Fix Java microprofile generator not using wrapper annotations and namespaces

* Fix Java Micronaut Client creating invalid (unclosed) @XmlAttribute annotations

* Fix Micronaut Client using wrong localName for @JacksonXmlElementWrapper

* Fix Micronaut client rendering @JacksonXmlProperty annotation twice

* Make Java Micronaut render @JacksonXmlElementWrapper(useWrapping=false) for non-wrapped elements

* Fix Jackson element using `xml.name` when it should be `items.xml.name`

Closes #5989
Closes #3223
Relates to #9371

* Fix JAXB element using `baseName` instead of `xmlName` when items.xmlName is unset

* Remove XML generation debug output from templates

* Remove redundant newline between XML class annotations and class

Brings the SpringCodegen in line with other Java Codegen's

* Remove redundant newline between XML setter annotations and setter

* Fix multiline JavaDoc block indentation and format

* Simplify / condense xml annotation template into single lines

May look a bit more complex, but cuts out a lot of repetitiveness.
Also reorders annotation attributes in the following order:
- localName/name
- namespace (optional)
- isAttribute/useWrapping (optional)

* Harmonize spacing between Annotation attribute name and value

* Remove unused jackson_annotations partial

Was not referenced anywhere in java-helidon resources folder

---------

Co-authored-by: Christian Schuster <christian@dnup.de>
2024-06-15 23:02:32 +08:00
Max Lapshin
788fd6f725
Golang client can use pattern-based discriminator between oneOf (#18760)
* Enable reading schemas with pattern-based discriminator between oneOf for golang client #5311

* Codegen after changing to golang templates #5311
2024-06-13 16:31:36 +08:00
William Cheng
1765efc1ff
[Golang] Introduce 'lambda.type-to-name' in models_anyof.mustache (#18912)
* Update model_anyof.mustache

* add tests for anyof in go client

---------

Co-authored-by: Martin Lakov <85170913+martinlakov@users.noreply.github.com>
2024-06-13 16:01:58 +08:00
Dennis Melzer
7084e87140
Remove bean validation for uuid (#18900)
* Remove bean validation for uuid

* Add maxLenght to test the uuid validation
2024-06-12 11:53:14 +08:00
William Cheng
0cc9644120
Add enum default value tests to python clients (#18883)
* add enum default value tests to python clients

* add new files
2024-06-08 17:34:57 +08:00
Mike Welsh
a5a99585ef
[Python] Add enum support when building default values for model properties when using $ref (#18796)
* Add enum support when building default values for model properties

* Update enum handling for Python for enum references

* Remove unused method

* Update mustaches for FastAPI, Pydantic, and Python for default values

* Address PR feedback and rebase main

* Remove old 2_0 samples
2024-06-08 16:18:03 +08:00
ふぁ
6ae8a8f4c7
[python] fix deserialize on basic str fails (#18800)
* [python] fix #18774 Deserialize on basic str fails

* [python] update sample

* [python] update test

* [python] remove type

* [python] fix test

* [python] add top level type test

* Update deserialize content_type parameter and quote

* [python] restore echo_api test

* [python] add allow empty json in Response
2024-06-06 16:15:50 +08:00
Philzen
2b9949a66b
Bump Jackson to latest v2.17.1 and sync in templates (#18799)
* Drop separate version property

Not required as all Jackson packages usually tether on a version bump.

* Update Jackson to v2.17.1

* Sync Jackson version used by Spring Boot with project version

* Sync jackson update to v2.17.1 with generator templates

* Regenerate samples with updated versions

* Adjust test to current exception msg behavior

* Add dependency mgmt to ensure matching version for transitive dependencies

* Update library descriptions with correct Jackson version number

* Update library descriptions with correct GSON and JSONB versions

* Update retrofit library description with correct version number

* Update retrofit description to include Jackson as an option

This should have been done as part of in #16853.

* Update remaining libary version descriptions with correct versions

* Generate updated doc
2024-06-02 15:17:38 +08:00
Lars van Leeuwen
8783ad8a18
[Python] List enum members in docs (#18804)
* List enum values in docs

* Remove newline

* Remove another newline

* Generate samples
2024-06-01 17:00:11 +08:00
Renato Mameli
bfa26ea6be
Add missing underscores for PascalCase enum values #4837 (#18594)
Co-authored-by: Renato Mameli <renato.mameli@teamviewer.com>
2024-05-21 15:29:34 +08:00
William Cheng
741bf0c035
Prepare 7.7.0-SNAPSHOT (#18709)
* Revert "7.6.0 release"

This reverts commit d76f9d32d11a03be2b40ebff728ef0ff86332fcb.

* prepare 7.7.0 snapshot in master

* update samples
2024-05-20 17:27:17 +08:00
Gonzalo Gomez
ef0d10df8d
Use time.RFC3339Nano instead of time.RFC3339, do not want to loose the millisecond resolution. (#18673) 2024-05-19 17:53:51 +08:00
Vasiliy Ditsyak
3d15864eac
[dart-dio] Incorrect hashCode and == overide for fields withList (#18198)
* [dart-dio] Incorrect hashCode and == overide for fields withList

* fix

* extend description

---------

Co-authored-by: Vasiliy Ditsyak <vasilich6107@users.noreply.github.com>
2024-05-19 17:35:25 +08:00
RiccardoPetteruti-Onfido
8924083d73
Ruby: Fixed CodeQL polynomial regexp (#18699) 2024-05-19 17:28:04 +08:00
Jeffrey Yasskin
7e94c873f7
Add typescript 5.x as an allowed version. (#18674)
* Add typescript 5.x as an allowed version.

* Adjust version ranges to keep tests passing.

* Update the typescript-rxjs sample.
2024-05-15 22:09:55 +02:00
Aviv Levitski
affb6bc1f7
[GO] Add assert constraints checks for complex types in the model template (#18654)
* [GO] Add assert constraints checks for complex types in the model template

* [GO] Update samples

* [GO] revert AssertRecurseInterface naming
2024-05-15 16:59:35 +08:00
William Cheng
51ef8683fb
[java] implement #18032 add builder pattern to java client and spring generator (#18650)
* add builder pattern to java client and spring generator

* regenerate samples

* update doc

---------

Co-authored-by: jpfinne <jeanpaul@finne.be>
2024-05-14 11:38:30 +08:00
0xMattijs
365fcd3fb4
Fix the post processing of enums in the Python generator, such that it uses the proper variable namesfrom x-enum-varnames (#18566)
Remove sample
2024-05-12 00:40:06 +08:00
Ween Jiann
8f6a2860bf
[go-server] Fix: error handling and linting (#18550)
* Update error.go and fix lint

* Regen

* Fix incorrect change

* Fix handler issue

* Regenerate
2024-05-08 00:06:45 +08:00
rledisez
230e8ce887
[go-server] add field name in parsing error messages (#18533)
Currently when a parsing rule of a field is not respected (eg: min/max
value, required, ...), the api only returns an  error message without
providing the field name to help the user to fix the request. This commit
add the field name to the error message to help the user of the API.
2024-05-01 19:28:51 +08:00
William Cheng
2a1b4f90df
Add new option allArgConstructor for java client, spring generators (#18538)
* allArgConstructor for java

* Remove leftover from builder pattern branch

* Rename generateConstructorWithAllArgs and use x- in vendorExtensions

* Test issue #18340

* Add evidences for allVars issue (#18340)

* remove eol

* update doc

---------

Co-authored-by: jpfinne <jeanpaul@finne.be>
2024-05-01 18:10:35 +08:00
Zishun (Zack) Wei
81fab15a33
[PYTHON] Fix for failing to lookup discriminator value using AllOf and discriminator (#18498)
* fix issue 18495

* add tests and update samples

* update samples
2024-04-30 14:21:20 +08:00
Erko Risthein
bd02e65f88
[Java] Update Java version in GitHub actions (#18513)
* Update Java version in Github actions

* Generate samples

* [java] Upgrade Gradle wrapper to 8.7

* Generate samples

* [Java] Add resttemplate-jakarta to CI

* Upgrade CI machines to ubuntu-2204:2024.04.4 which use Java 21

* Change CI machines to ubuntu-2204:2024.01.1 which use Java 17

* Change CI machines to ubuntu-2004:2024.01.1

* [ruby] Update Gemfile.locks

* Use gradle wrapper for samples-java-client-jdk17
2024-04-30 13:57:01 +08:00
Tadas Krivickas
06ed7c8205
[dart] [dart-dio] Support Dart3 (#18001)
* Support both dart 2.x and 3.x

* Append dart3 keywords

* Update docs
2024-04-28 22:09:10 +08:00
William Cheng
807250a430
Prepare 7.6.0 (#18412)
* Revert "v7.5.0 release"

This reverts commit 1eafe2aebf33b13bee0ead66d62a6436e7db059d.

* update master to v7.6.0 snapshot

* update readme

* update samples
2024-04-17 19:05:37 +08:00
Kathryn DiPippo
0b3e6edb98
[python] Update docs/ Markdown files for Classes to fix _form_ typo and correct casing for class name when calling from_dict() (#18359)
* Update Python mustache templates to fix _form_ typo and correct casing for class name when calling from_dict()

* Results of 'build the project' checklist step
2024-04-12 12:29:20 +08:00
BaptisteSaves
6bcc28d06e
Python: Correctly serialize enum with its value (#18327) (#18328) 2024-04-10 21:12:37 +08:00
William Cheng
d6749f8a0e update samples 2024-04-09 20:49:23 +08:00
Joakim Holm
3cb3fc2898
Add Generated annotations to more classes (#17736) 2024-04-09 16:39:53 +08:00
Zishun (Zack) Wei
453facc81c
Fix 18271: Circular imports on AllOf generation with REFACTOR_ALLOF_WITH_PROPERTIES_ONLY=True (#18272)
* fix issue 18271

* the same update for python-pydantic-v1

* add test

* update samples

* update samples

* put properties under allOf for python client tests

* update samples

* add a test in test model
2024-04-08 19:01:01 +08:00
William Cheng
494d74ab82
remove duplicated (#18320) 2024-04-07 22:25:03 +08:00
Viswajith Venugopal
650e119f22
Update go-server template to include the conventional generated code line (#18304)
* Update go-server template to include the conventional generated code line

Follow the convention from https://pkg.go.dev/cmd/go#hdr-Generate_Go_files_by_processing_source.

The generated go client code already follows this: f357be480e/modules/openapi-generator/src/main/resources/go/partial_header.mustache (L18)

* gen files

* Move to top
2024-04-07 21:23:24 +08:00
William Cheng
2a39b29684
[python] Add field as a reserved word (#18279)
* add field as a reserved word

* remove tabs

* update
2024-04-03 16:43:51 +08:00
William Cheng
88204b247a
[Java] Sync jersey2 jersey3 template (#18281)
* sync jersey2 and 3 templates

* add deprecated

* update samples
2024-04-03 16:32:39 +08:00
B4ckslash
807aa5d3ae
[Java][jersey2] Fix generated client code for oneOf models if datatype includes arrays (#18042)
* Add java-jersey2 sample with mixed oneOf

* [java][jersey2]Fix client generation if oneOf contains an array type

Changes:
* Change jersey2/oneof_model template to use composed schema data
* Change adding of imports in AbstractJavaCodegen to use composed schema data
* Add escapedDataType property to CodegenProperty so that the data type
  may be part of identifiers (e.g. in getters)
* Update samples

* Add sample for multiple array in oneOf

* Fix generation of constructors with same erasures

* Update samples again

* Version bump

* Add new sample folders to CI

* Make primitive handling more explicit

* Replace escapedDataType property with Mustache lambda

* Update samples with new primitive handling and sanitization lambda
2024-03-30 21:08:41 +08:00
Dennis Melzer
309918d03e
Fix compile error in client properties configuration (#18232)
* Fix config

* Add tests

* Remove unused import

* Sort imports

* Add new workflow
2024-03-26 22:02:19 +08:00
Nick Cooper
8acf9b779d
Specify named param for field defaults in Python Pydantic V1 generator (#18187)
* Use named parameter

* Regenerate samples
2024-03-24 11:36:15 +08:00