* [cpp][pistache-server] Add extraction and forwarding of credentials for HTTP Basic protected endpoints.
* [cpp][pistache-server] Change HTTP Basic credentials to be contained on a struct instead of two std::strings
* [cpp][pistache-server] Add callbacks to authenticate http basic credentials.
* [cpp][pistache-server] Add `void* userdata` to HttpBasicCredentials.
This allows for data ft be passed on from the authenticator to the
handler implementation. For example a userid that has already been
looked up
* [cpp][pistache-server] Add support for HTTP Bearer authentication.
* [cpp][pistache-server] Add new file `api-base-source.mustache`
`api-base-source.mustache` contain implementations of security
related methods and also the empty constructor.
* [cpp][pistache-server] Add re-generated samples.
* Fix PR 19978: Updated indentation levels and fixed test problems
---------
Co-authored-by: Morten Winkler <morten@winkler.dk>
Passing `stringEnums=false` was incorrectly treated as `true`. This went unnoticed since the default behavior works as expected. Made the logic consistent with `typescript-axios`.
* fix(java): add header parameter handling for google-api-client
Header parameters defined in OpenAPI specs were being accepted as method
parameters but never actually added to the HTTP request.
Fixes#22457
* update samples
* minor enhancement
---------
Co-authored-by: artnan <artn@outlook.com>
* [kotlin] Make API classes open (non-final) unless nonPublicApi is used
By making those classes open, AspectJ can be used to enhance their
behavior.
I'm not changing kotlin-multiplatform templates, where 'open' was
already present before my changes.
Closes#22271
* Fail Kotlin sample compilation if API classes stop to be public
Serves as a 'regression test'.
* Generate skeleton for new integration test
* Typescript-angular: Move query param deep-object test
* typescript-angular: Add query param JSON test
* Typescript-angular: Add query param form test
* Test for #20998
* typescript-angular: Reimplement query param serialisation
This notably fixes:
- JSON query param serialisation
- array serialisation with style=form and explode=true
As the class HttpParams from Angular is specially designed for the
mimetype: `application/x-www-form-urlencoded` it does not support
the range of query parameters defined by the OpenAPI specification.
To workaround this issue, this patch introduces a custom
`OpenAPIHttpParams` class which supports a wider range of query param
styles.
Note that as `HttpClient` is used afterwards, the class
`OpenApiHttpParams` has a method to convert it into a `HttpParams` from
Angular with a no-op HttpParameterCodec to avoid double serialisation of
the query parameters.
* update samples
---------
Co-authored-by: Vladimir Svoboda <vsvoboda@forkoder.eu>
* fix: do not add dependency on urllib3 if not required
* update samples
* remove import
---------
Co-authored-by: Sascha Kreutz <saschakreutz@hotmail.de>
* remove "async" and "responseWrapper" from template as these are not supported by kotlin-spring generator
* try to force pipelines rerun
* force pipelines rerun
* fix mustache to keep generated code identical
* Revert "fix mustache to keep generated code identical"
This reverts commit c573b43401.
* Reapply "fix mustache to keep generated code identical"
This reverts commit 2c3b065c5c.
* Add support for 'useResponseEntity' in kotlin-spring. Consolidate with the separate flag 'declarativeInterfaceWrapResponses' as these can now be controlled both by one flag. Default to true.
* fix status annotation and add compile-test samples
* satisfy samples-up-to-date check
* add unit tests covering both reactive and non-reactive
* fix template to avoid unnecessary empty line
* fix template to avoid unnecessary empty line
* put method params (if present) on separate lines to improve readability
* put method params (if present) on separate lines to improve readability; fix double spaces, spaces before comma, incorrect spaces
* fix test
* store PATHs as accesible strings in companion objects.
* fix missing import
* fix incorrect import
* fix fallback to nested placeholders.
* this allows pushing client jar to local maven repository gradle -i clean jar publishToMavenLocal; also generates jar with sources;
* this allows pushing client jar to local maven repository gradle -i clean jar publishToMavenLocal; also generates jar with sources;
* replace headers with same caseinsensitive key to match http spec
* regenerate samples
* regenerate samples
* enable test for header case-insensitive replacement
* reduce redundant test comments
* Nim Generator Fixes
* remove test that is tested via yaml anyway
* Only include required parameters or non-empty optional parameters in URLs, support oneOf/anyOf via nim object variants, optional field support
* snapshot
* docs gen
* Improved handling of enums
* feat(typescript-rxjs): Add @deprecated tag to generated API operations
This commit introduces the JSDoc @deprecated tag to API operations in the typescript-rxjs generator when the operation is marked as deprecated in the OpenAPI specification.
This ensures that IDEs (like VS Code or WebStorm) correctly flag the method as deprecated, providing better developer experience and warning consumers about upcoming removals or changes.
* minor updates
---------
Co-authored-by: Dirk Niemeier <dirk.niemeier@cgi.com>
* Generate wrappers for oneOf with discriminator when using kotlinx.serialization
* Add spec with oneOf using discriminator
* Add config to generate samples
* Generate samples
* Update samples
* Change naming of wrapper classes
* Fix empty model test
* Update GH workflow with new samples
* Add CLI option
* Add dep to generated Cargo.toml
* Add new `Error::SerdePathToError` error type
* Add `serde_path_to_error` invocation to API layer
* Add sample for serde-path-to-error
* Add arg & docstring to cliOptions as well
* Fix sample