* Ensure temp directories are deleted after test execution
* Implement test that external $ref changes are reflected in checksum
* Generate hash checksum from actual resolved spec instead of inputSpec file
Otherwise regeneration will not happen when skipIfSpecIsUnchanged is enabled,
although formally the spec content has changed.
Fixes#4512 and #16489
* Use try-with-resources to ensure stream is closed properly on exit
* Fix deprecation warning on SimpleLocalRepositoryManagerFactory no-arg constructor
* Apply minor code cleanup
- use fluent setters where possible
- remove undocumented @throws from JavaDoc
- use List.of() instead of Arrays.asList() for single-element-collection
(more memory efficient)
- fix some grammar issues in comments and JavaDoc
* Use non-blocking java.nio API for file existence checks
* Make DryRunStatus path field final
* Add templateData capture functionality to DryRunTemplateManager
* Replace MockDefaultGenerator with DryRunTemplateManager captures
* Remove MockDefaultGenerator
* Implement dedicated transitional test for #18831 bugfix
* Remove duplicated database migration file from supportingFiles collection
* Activate AllGeneratorsTest.noDuplicateSupportingFiles
* Drop transitional test again
* Simplify truthy assertions
* Adds basic support for query params.
* Need to parameterize them
* Need to add tests
* Need to add option to skip, maybe
* Need to add support for header params too
* Parameterizes query param values
* Need to add tests
* Need to add option to skip, maybe
* Need to add support for header params too
* Remove extra empty line
* Adds support for header params
* Also fixes extra end of line bug.
* Fixing failing test
* Adding tests for query params
* Adding tests for header params
* Adding basic support for env file
* Add support for env file for path variables and custom header variables
* TODO : Add tests
* Adding tests for env generation
* Adding generated test files
* Fix namefile
* Implement regression test for bigDecimalAsString annotations
* Ensure @JsonSerialize and @JsonDeserialize is only generated when Jackson enabled
Fixes#6496
These are not used by any generator implementation, hence there's no
point in bundling them into every release we're shipping.
In case someday it is decided that a retrofit v1 generator will be needed
again, this commit can simply be reverted.
* Implement test for uniqueness of CliOptions across all generators
* Refactor existing test to use @DataProvider and fluent assertion
* Remove extraneous cliOption definition for disallowAdditionalPropertiesIfNotPresent
This is already defined (matching exactly in all aspects) in DefaultCodegen.
Resolves#18810
* Avoid variable declaration & assignment when only used once
* Add additional uniqueness tests for all DefaultCodegen List<> members
Test uniqueness for lists of:
- supportingFiles
- supportedLibraries
- supportedVendorExtensions
* Disable AllGeneratorsTest.noDuplicateSupportingFiles for the time being
Re-enable when #18831 is fixed
* Generate updated python-fastapi docs
* Partially revert "replace deprecated ISO8601Utils with StdDateFormat (#17052)"
This partially reverts commit 76560e34c9aacd9d7593ac45bd204e2edf38abd9, namely anything
related to generators and samples using GSON instead of Jackson.
Changes to Jackson-only generation and generator-online regarding RFC3339DateFormat
are not being reverted.
* Test for default serialization library fallback
* Convert repetitive tests to parameterized test
* Add regression test for #18515
* [FEIGN] Only include <jackson-databind-version> property in pom.xml when required
* [RETROFIT2] Only include jackson-databind in gradle file when actually required
* [FEIGN] Don't include jackson dep's in sbt file when GSON is selected
* [FEIGN] Don't include jackson dep's in gradle file when GSON is selected
* DRY refactor JavaClientCodegen test code, increase readability
- use fluent assertions
- use helper method newTempFolder()
- use Java 9 static factory methods for maps
- don't declare variables that are only used once
- group declarations and usages
- use non-blocking java.nio.file API wherever possible
* Regenerate samples
* Reactivate tests
Contrary to Junit5, classes containing TestNG tests need to have
public visibility, otherwise the tests will not be discovered and run.
* Reformat tests for readability
* Rewrite tests using fluent assertions
* Fix the bug + add test case
* Add sample output
* Update version number in new sample output
---------
Co-authored-by: Gerwin Jansen <gerwinjansen@users.noreply.github.com>
* Update springdoc-openapi-starter-* to v2.2.0 in gradle build
This brings it in sync with the maven pom. Brings swagger-annotations
version 2.2.15 as transitive dependency, implements the @Schema annotation
property `requiredMode`.
Hence fixes#14949
* Update kotlin-server samples
* 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
* [cpp-restsdk] add support for oneOf via std::variant
* [cpp-restsdk] detect the latest supported C++ standard in CMake
* [cpp-restsdk] add test with oneOf support for cpprest
* [cpp-restsdk] avoid warnings because of implicit this capture
* [cpp-restsdk] avoid deprecated CMake version warnings
* [cpp-restsdk] build the test into the build directory - parallel build
* [cpprest-sdk] use absolute source path for cmake + debug build
* fix: remove inheritance due to template not overriding
---------
Co-authored-by: William Cheng <wing328hk@gmail.com>
Solving this issue has for goal to reduce the amount of work required to resolve the [[C++] Error making the cpprestsdk generated files](https://github.com/OpenAPITools/openapi-generator/issues/6726)
and to put the `cpp-pistache-server` generator a the "same compilation problems" level than the `cpp-restsdk` generator in font of the #6726.
* Fix kotlin-spring not building when `interfaceOnly=true`
Fixes#18803
* Regenerate fixed kotlin-spring samples
* Include sample kotlin-springboot-request-cookie in CI build check
* Apply suggestions from code review
Co-authored-by: Stefan Koppier <stefan.koppier@outlook.com>
---------
Co-authored-by: Stefan Koppier <stefan.koppier@outlook.com>
* Specify exact relative path to parent pom.xml
* Remove org.reflections from the test stack
* Remove unused parameter
* Remove unused method
* Fix raw use of parameterized variable warning
* Use Files.readString instead of converting raw bytes
* Add test coverage for TestUtils.validatePomXmlFiles(List)
* Reimplement TestUtils.validatePomXmlFiles(List) with Jackson XML mapper
* Remove maven-rewrite dependency
* Revert "Revert back to junit4 (#18786)"
This reverts commit 2471ba2d2e96261941d21eb10648f3d70e969423.
* Make junit engine execute TestNG test cases
* Fix failing test and use tempDir's for test code generation
* Make test fail with helpful info in case generator throws exception
* Suppress error output from TestUtils
* Remove transitive junit4 dependency
* Sync guava-testlib version with guava version
* Add hint regarding alternative for guava-testlib's FakeTicker
* Mention that Golang generator also supports XML annotations
Looking at src/main/resources/go/model_simple.mustache and
src/main/java/org/openapitools/codegen/languages/GoClientCodegen.java
the GoLang seems to cater for withXml=true
* Fix maven plugin config description for `withXml`
* Add basic test for global withXml setting
* Use global withXml setting if not configured in ConfigOptions
Resolves#3839 and #5764
* Don't generate metadata or other files when only Models are tested
* Reformat table for readability
* Remove global property `withXml` from generator and docs
* Move WITH_XML constant out of system constants block
Currently there is only a single reference to this value in the whole
codebase (GoClientOptionsProvider). Maybe we should re-think how this
file is organised (i.e. provide a clearer split / mapping / understanding
what are system properties vs. global properties vs. configOptions and
where to put them).
* Remove global option `withXml` from Maven plugin (Breaking change)
This is a "soft" breaking change: Plugin will no longer execute if
user have this option – which is good, b/c it never worked as expected.
We may want to hint this in the 8.0 release notes.
* Remove global property `withXml` from Gradle plugin (Breaking change)
This is a "soft" breaking change: Plugin will no longer execute if
user have this option – which is good, b/c it never worked as expected.
We may want to hint this in the 8.0 release notes, so they can add it
to the `configOptions` map if required, or simply delete it
* Update samples to reflect removed `withXml` property
* Move `withXml` option into ConfigOptions for Java Microprofile sample
* Remove unused local vars and parameters
* Avoid repetition using fluent assertions
* Remove extraneous debug output
* moved service api into shared source
* moved service api into shared source
* This Scala cask change makes the service traits available to
Both JVM and JS platforms.
It does this by moving the api interfaces into the cross-platform
Shared sources
* Added authentication via Bearer-token api_key and basic for server and client
* Improved errorhandling
* Added check on oAuth audience to example
* Updates of the petstore files for Rust-server
* Moved module import to prevent issue in callbacks
* updated samples
* Fix for unused-qualifications issue
* updated sampmles
* Even with .nil? typecheck, compiler still fails due to .empty? call on nillable type. This appears a poor implementation issue by crystal-lang, but this explicit try avoids the issue for now.
* Made call more succinct.