Releases: springdoc/springdoc-openapi
Releases · springdoc/springdoc-openapi
v2.7.0-RC1
What's Changed
- Add Encoding to multiple files and JSON payloads request test case. Fixes #2649 by @buzzerrookie in #2650
- Trim indent apply schema description by @e-build in #2653
- fix: typo in SpringSecurityLoginEndpointCustomizer method name by @YunByungil in #2659
- fix: Update Response Code by @YunByungil in #2660
- Refactor Replace hardcoded schema prefix length by @zinzoddari in #2664
- Replace swagger urls in
org.springdoc.core.properties.AbstractSwaggerUiConfigProperties#urls
only if url is changed. Test to check if the issue is fixed. Fixes #2509. by @dgswan in #2668 - Fix SpringDocApp193Test for Java 21 and above. Fixes #2442. by @dgswan in #2669
- Ensure default media type order is preserved using LinkedHashSet in mergeArrays. Fixes #2671 by @limehee in #2672
- fix: Missing descriptions on Kotlin ByteArray fields by @GeorgEchterling in #2711
- Display nullable request body with map type by @granddaifuku in #2727
- fix for issue #2733 by @kamilkrzywanski in #2734
- issue #2733 second change for only check response entity type by @kamilkrzywanski in #2736
- Readme.md add gradle import by @divinenickname in #2746
- Added support for RequestBody as a meta-annotation by @edudar in #2760
Added
- #2649 - Add Encoding to multiple files and JSON payloads request test case
- #2653 - Trim indent apply schema description
- #2664 - Refactor Replace hardcoded schema prefix length
- #2509, #2668 - Replace swagger urls in org.springdoc.core.properties.AbstractSwaggerUiConfigProperties#urls only if url is changed
- #2727 - Display nullable request body with map type
- #2746 - Readme.md add gradle import
- #2760 - Added support for RequestBody as a meta-annotation
- #2703 - Display nullable request body with map type
- #2657 - Add support for OAS v3.1 webhooks
Changed
- Upgrade spring-boot to 3.4.0-RC1
- Upgrade swagger-core to 2.2.25
- Upgrade swagger-ui to 5.18.1
- Upgrade spring-cloud-function to 4.2.0-M1
- Upgrade spring-security-oauth2-authorization-server to 1.4.0-M2
Fixed
- #2752 - Swagger doesn't work after custom annotation replacing request parameters
- #2747 - Move to webjars-locator-lite, in preparation for spring-boot 3.4 GA
- #2705 - @Schema oneOf config is ignored when generate the api-docs
- #2744 - SpringDocUI doest add Javadoc into swagger from abstract class
- #2708 - Spring Boot (Webflux) - Swagger UI - redirect URI does not include Gateway Prefix
- #2725 - Serialization to openapi of org.springframework.data.domain.Sort is wrong for Spring Boot >2.x
- #2740 - Swagger-ui ignores property springdoc.swagger-ui.supported-submit-methods
- #2733 - Bad schema return type when created a generic wrapper class for response entity
- #2687 - Failed to load api definition after spring boot 3.4.0-M2
- #2642 - Calling Swagger UI via different context paths fails
- #2709 - Annotation @hidden on rest controller class level doesn't work due to spring default proxying mechanism CGLIB
- #2642 - Calling Swagger UI via different context paths fails
- #2663 - Content definition in @ApiResponse remove schema generated based on the returned value
- #2646 - The operationId is unnecessarily deduplicated for a requestBody with multiple content types
- #2643 - UpperSnakeCaseStrategy is not working with spring boot and ParameterObject
- #2640 - @JsonUnwrapped is ignored when PolymorphicConverter is enabled
- #2638 - Boolean Parameter with @Schema Annotation Changes Type to string in OpenAPI Documentation
- #2659 - Fix typo in SpringSecurityLoginEndpointCustomizer method name
- #2660 - Update Response Code
- #2442, #2669 - Fix SpringDocApp193Test for Java 21 and above
- #2671 - Ensure default media type order is preserved using LinkedHashSet in mergeArrays
- #2711 - Missing descriptions on Kotlin ByteArray fields
- #2733 - Bad schema return type when created a generic wrapper class for response entity
New Contributors
- @buzzerrookie made their first contribution in #2650
- @YunByungil made their first contribution in #2659
- @dgswan made their first contribution in #2668
- @limehee made their first contribution in #2672
- @GeorgEchterling made their first contribution in #2711
- @granddaifuku made their first contribution in #2727
- @kamilkrzywanski made their first contribution in #2734
- @divinenickname made their first contribution in #2746
- @edudar made their first contribution in #2760
Full Changelog: v2.6.0...v2.7.0-RC1
springdoc-openapi v2.6.0 released!
What's Changed
- NPE occurs when outputting an OpenAPI document since 2.5.0 by @footaku in #2561
- Fix missing exception response types in OpenAPI spec by @mschout in #2577
- fix: add support for leading tab characters with
trim-kotlin-indent
. by @testersen in #2579 - pass HttpRequest to ServerBaseUrlCustomizer by @mshima in #2589
- Fix consumes and produces calculation. Fixes #2596 by @jakvbs in #2600
- Replace
Page
schema withPagedModel
whenpageSerializationMode
is set toVIA_DTO
by @EvaristeGalois11 in #2626 - Ensure compatibility with previous version of spring data by @EvaristeGalois11 in #2627
New Contributors
- @footaku made their first contribution in #2561
- @mschout made their first contribution in #2577
- @testersen made their first contribution in #2579
- @jakvbs made their first contribution in #2600
- @EvaristeGalois11 made their first contribution in #2626
Added
- #2561 - NPE occurs when outputting an OpenAPI document since 2.5.0
- #2579 - Add support for leading tab characters with trim-kotlin-indent.
- #2589 - Pass HttpRequest to ServerBaseUrlCustomizer
- #2596, #2600 - consumes and produces calculation. Fixes
- #2625, #2626 - Replace Page schema with PagedModel when pageSerializationMode is set to VIA_DTO
- #2627 - Ensure compatibility with previous version of spring data
- #2576 - GroupedApi orders by displayName instead of name.
- #2584 - Dynamically define ApiGroups does not work.
- #2595 - Spring security support of @RegisteredOAuth2AuthorizedClient
Changed
- Upgrade spring-boot to 3.3.0
- Upgrade swagger-core to 2.2.22
- Upgrade swagger-ui to 5.17.14
- Upgrade spring-cloud-function to 4.1.2
- Upgrade spring-security-oauth2-authorization-server to 1.3.0
Fixed
- #2577 - Fix missing exception response types in OpenAPI spec
- #2591 - When an entity class contains fields of Class<?> type, an infinite loop.
- #2603 - PolymorphicModelConverter only handles direct subtypes and misses indirect.
- #2606 - Spring Authorization Server Metadata Endpoint not compatible.
- #2621 - Content-type for POST endpoints with multipart/form-data does not work since v2.4.0.
- #2622 - Kotlin enums are always marked as required if used in Java controllers.
- #2601 - Multiple Superclasses Are Not Mapped To Multiple allOf If Used In Different Services.
- #2597 - Polymorphic fields on polymorphic parents don't get correct oneOf docs generated.
Full Changelog: v2.5.0...v2.6.0
springdoc-openapi v2.5.0 released!
What's Changed
- Fix typo in SpringRepositoryRestResourceProvider.java by @codespearhead in #2540
- Add 'springdoc.trim-kotlin-indent' property to handle Kotlin multiline string indentation by @e-build in #2535
- Fix README.md by @zinzoddari in #2549
- [issues#2318]Add Info to GroupedOpenAPI properties by @23557544 in #2551
- Showcase Issue #2553 by @EAlf91 in #2552
- Remove duplicate words from comments by @zinzoddari in #2554
- Upgrade spring-boot to 3.2.4
- Upgrade swagger-core to 2.2.21
- Upgrade swagger-ui to 5.13.0
Added
- #2318 - Add Info to GroupedOpenAPI properties
- #2554 - Remove duplicate words from comments
- #2418 - Improve support for externalizing strings in generated openapi
- #2535 - Add 'springdoc.trim-kotlin-indent' property to handle Kotlin multiline string indentation
Fixed
- #2525 - Inherited Methods Not Included in Swagger Documentation with @RouterOperation in Spring Boot WebFlux Application
- #2526 - SpringDoc bean naming conflict error with GraphQL Spring boot starter
- #2540 - Fix typo in SpringRepositoryRestResourceProvider.java
- #2549 - Fix README.md
New Contributors
- @codespearhead made their first contribution in #2540
- @e-build made their first contribution in #2535
- @23557544 made their first contribution in #2551
- @EAlf91 made their first contribution in #2552
Full Changelog: v2.4.0...v2.5.0
springdoc-openapi v2.4.0 released!
What's Changed
- Respect schema annotations when using spring mvc with kotlin by @viktor-berglund-mw in #2443
- Fix CODE_OF_CONDUCT.md links by @danrose499 in #2453
- Fix typo by @zinzoddari in #2454
- Update Swagger Core API version to 2.2.20 by @lbruun in #2463
- Update JavadocPropertyCustomizer.java by @cnhnwt in #2472
- Support dynamic evaluation of description field in the RequestBody by @BokoEnos in #2492
- Fix broken links in README and CONTRIBUTING by @garrettgrimsley in #2495
- bug fix when "exported" is set to false in RestResource annotation by @SimonCardaire in #2501
- Fix typo in Constants by @sunshiningsoo in #2507
- Add support for externalizing strings in generated openapi schema via… by @tkachenkoas in #2418
Changed
- Upgrade spring-boot to 3.2.3
- Upgrade swagger-core to 2.2.20
- Upgrade swagger-ui to 5.11.8
Fixed
- #2443 - Respect schema annotations when using spring mvc with kotlin
- #2492, #2488 - Support dynamic evaluation of description field in the RequestBody
- #2510 - Option to disable root api-docs path when using groups
- #2453 - Fix CODE_OF_CONDUCT.md links
- #2454 - Fix typo in SwaggerWelcomeWebMvc
- #2507 - Fix typo in Constants
- #2472 - Update JavadocPropertyCustomizer.java
- #2495 - Fix broken links in README and CONTRIBUTING
- #2501 - bug fix when "exported" is set to false in RestResource annotation
- #2447 - Serialization to openapi of org.springframework.data.domain.Sort is not done correctly
- #2449 - Extensions in subobjects of OpenAPI no longer work
- #2461 - Springdoc OpenApi Annotations @ExtensionProperty Not Evaluating Properties from application.yml
- #2469 - Pom contains invalid organizationUrl
- #2518 - Duplicate GroupConfigs in SpringDocConfigProperties
- #2506 - Springdoc breaks (Unexpected value: TRACE) when a spring-cloud-starter-gateway-mvc universal gateway is configured.
- #2519 - Request parameter parsing error after using @notblank from type interface field
- #2516 - Spring Data REST fails when setting version to openapi_3_1
- #2509 - ArrayIndexOutOfBoundsException in SwaggerUiConfigParameters
- #2484 - JavaDoc integration not working with SnakeCaseStrategy property naming
- #2483 - Controller advice documents ApiResponse on every operation, even if the operation does not annotate the exception to be thrown
- #2477 - buildApiResponses ignores produced ContentType in case of many @operation
New Contributors
- @zinzoddari made their first contribution in #2454
- @lbruun made their first contribution in #2463
- @cnhnwt made their first contribution in #2472
- @BokoEnos made their first contribution in #2492
- @garrettgrimsley made their first contribution in #2495
- @SimonCardaire made their first contribution in #2501
- @sunshiningsoo made their first contribution in #2507
- @tkachenkoas made their first contribution in #2418
Full Changelog: v2.3.0...v2.4.0
springdoc-openapi v1.8.0 released!
Added
- #2189 - Add support for swagger-ui.url property
- #2200 - Support schema.requiredMode() on ParameterObject
- #2309 - Added function to preload by specifying locale
- #2332 - Group name cannot be null or empty
- #2281 - Initial Virtual thread support
- #2311 - Enhance springdoc-ui to support spring.mvc.servlet.path
- #2340 - Add support OIDC with Spring Authorization Server
- #2345 - Support Schema added in OpenAPI Specification v3.1
- #2387 - Support get javadoc description from getter method
- #2404 - Update condition to register links schema customizer
- #2359 - Update condition to register links schema customizer
- #2348 - Enhance resource path processing
- #2438, #2315 - Support for @JsonProperty with Javadoc Change in springdoc-openapi
- #2443 - Respect schema annotations when using spring mvc with kotlin
- #2492, #2488 - Support dynamic evaluation of description field in the RequestBody
- #2510 - Option to disable root api-docs path when using groups
Changed
- Upgrade spring-boot to 2.7.18
- Upgrade swagger-core to 2.2.20
- Upgrade swagger-ui to 5.11.8
Fixed
- #2199 - Fix Schema get condition of ArraySchema.
- #2194 - Fix Swagger UI with provided spec
- #2213 - Using both generated and configured specs stoped working in 1.6.5
- #2222 - String Index Out of Bounce Exception Fix when deployed on Azure
- #2243, #2235 - Fix StringIndexOutOfBoundsException when path is same webjar
- #2291 - Fix default-flat-param-object doesn't work when using http body
- #2310 - Change bean name of objectMapperProvider
- #2207 - swagger-initializer.js is sent endcoded in the JVM's default charset
- #2271, #2280 - Fix loop when response inherits generic class fixes
- #2239 - Swagger UI not accessible when FormattingConversionService is a CGLIB proxy
- #2366 - Fix the failed test due to hardcoded file separators
- #2370, #2371 - No empty description for polymorphic subtypes
- #2373 - SchemaProperty.array Schema is ignored in /api-docs or api-docs.yaml
- #2366 - Refactoring AbstractSwaggerResourceResolver.findWebJarResourcePath
- #2320 - javadoc for class attribute ignored when in EntityModel.
- #2347 - Not working if a property of entity contains generic parameters.
- #2399 - SpringdocRouteBuilder.onError is overriding last route defined.
- #2426 - StackOverflowError when using @ParameterObject on groovy class.
- #2453 - Fix CODE_OF_CONDUCT.md links
- #2454 - Fix typo in SwaggerWelcomeWebMvc
- #2507 - Fix typo in Constants
- #2472 - Update JavadocPropertyCustomizer.java
- #2495 - Fix broken links in README and CONTRIBUTING
- #2501 - bug fix when "exported" is set to false in RestResource annotation
- #2447 - Serialization to openapi of org.springframework.data.domain.Sort is not done correctly
- #2449 - Extensions in subobjects of OpenAPI no longer work
- #2461 - Springdoc OpenApi Annotations @ExtensionProperty Not Evaluating Properties from application.yml
- #2469 - Pom contains invalid organizationUrl
- #2518 - Duplicate GroupConfigs in SpringDocConfigProperties
- #2506 - Springdoc breaks (Unexpected value: TRACE) when a spring-cloud-starter-gateway-mvc universal gateway is configured.
- #2519 - Request parameter parsing error after using @notblank from type interface field
- #2516 - Spring Data REST fails when setting version to openapi_3_1
- #2509 - ArrayIndexOutOfBoundsException in SwaggerUiConfigParameters
- #2484 - JavaDoc integration not working with SnakeCaseStrategy property naming
- #2483 - Controller advice documents ApiResponse on every operation, even if the operation does not annotate the exception to be thrown
- #2477 - buildApiResponses ignores produced ContentType in case of many @operation
springdoc-openapi v2.3.0 released!
What's Changed
- feat: support OIDC by @uc4w6c in #2340
- Support Schema added in OpenAPI Specification v3.1 by @uc4w6c in #2345
- Add more test for OpenAPI Specification v3.1 by @xiaoxiangmoe in #2353
- Fix the failed test due to hardcoded file separators by @wnineg in #2366
- No empty description for polymorphic subtypes by @westse in #2371
- Support get javadoc description from getter method by @eshizhan in #2387
- Fix arrayschema by @uc4w6c in #2403
- Update condition to register links schema customizer, fixes #2359 by @mathieu-amblard in #2404
- Bump swagger-core to version 2.2.19. Fixes #2360 by @viktor-berglund-mw in #2437
- #2359 - Update condition to register links schema customizer
- #2348 - Enhance resource path processing
- #2438, #2315 - Support for @JsonProperty with Javadoc Change in springdoc-openapi
- Upgrade spring-boot to 3.2.0
- Upgrade swagger-core to 2.2.19
- Upgrade swagger-ui to 5.10.3
Fixed
- #2366 - Fix the failed test due to hardcoded file separators
- #2370, #2371 - No empty description for polymorphic subtypes
- #2373 - SchemaProperty.array Schema is ignored in /api-docs or api-docs.yaml
- #2366 - Refactoring AbstractSwaggerResourceResolver.findWebJarResourcePath
- #2320 - javadoc for class attribute ignored when in EntityModel.
- #2347 - Not working if a property of entity contains generic parameters.
- #2399 - SpringdocRouteBuilder.onError is overriding last route defined.
- #2426 - StackOverflowError when using @ParameterObject on groovy class.
New Contributors
- @xiaoxiangmoe made their first contribution in #2353
- @wnineg made their first contribution in #2366
- @eshizhan made their first contribution in #2387
- @mathieu-amblard made their first contribution in #2404
- @viktor-berglund-mw made their first contribution in #2437
Full Changelog: v2.2.0...v2.3.0
springdoc-openapi v2.2.0 released!
Added
- #2189 - Add support for swagger-ui.url property
- #2200 - Support schema.requiredMode() on ParameterObject
- #2309 - Added function to preload by specifying locale
- #2332 - Group name cannot be null or empty
- #2281 - Initial Virtual thread support
Changed
- Upgrade spring-boot to 3.1.2
- Upgrade swagger-core to 2.2.15
- Upgrade swagger-ui to 5.2.0
Fixed
- #2199 - Fix Schema get condition of ArraySchema.
- #2194 - Fix Swagger UI with provided spec
- #2213 - Using both generated and configured specs stoped working in 1.6.5
- #2222 - String Index Out of Bounce Exception Fix when deployed on Azure
- #2243, #2235 - Fix StringIndexOutOfBoundsException when path is same webjar
- #2291 - Fix default-flat-param-object doesn't work when using http body
- #2310 - Change bean name of objectMapperProvider
- #2207 - swagger-initializer.js is sent endcoded in the JVM's default charset
- #2271, #2280 - Fix loop when response inherits generic class fixes
- #2312 - Spec for @ParameterObject disappears if building native-images
- #2326 - @QuerydslPredicate(root = X.class) annotation at Controller Method level not getting documented in Spring Boot 3
New Contributors
- @smou made their first contribution in #2189
- @kauegatto made their first contribution in #2296
Full Changelog: v2.1.0...v2.2.0
springdoc-openapi v2.1.0 released!
What's Changed
- Add request parameter for token endpointg by @uc4w6c in #2168
- Fixed DefaultFlatParamObject to work with annotated parameters. Fixes… by @uc4w6c in #2184
Added
- #2152 - Detect directions in default sort values
- #2167 #2166 - Add request parameter for token endpoint
- #2188 - Support of {*param} path patterns
Changed
- Upgrade spring-boot to 3.0.5
- Upgrade swagger-core to 2.2.9
- Upgrade swagger-ui to 4.18.2
- #2173 - Remove webjars-locator-core
Fixed
- #2122 - Super tiny fix typo
- #2131 - Fixed a bug that javadoc of record class parameters was not recognized.
- #2140 - Javadoc record class parameters not recognized
- #2123 #2141 - fix spring authorization server response.
- #2148 - Fix properties show-oauth2-endpoints and SpringDocConfigProperties#showOauth2Endpoint properties name mismatch
- #2149 - Request parameters with default values are marked as required.
- #2155 - openApi.getServers() is null in OpenApiCustomiser when using different locales.
- #2152 - Redundant(wrong) direction appended to @PageableDefault.
- #2181 #2183 - Fixed DefaultFlatParamObject to work with annotated parameters.
- #2170 #2187 - All request parameters marked as required for Java controllers in mixed projects in 2.0.3
- #2165 - Custom Converters are not excluded if not registered for Http Message Converter.
- #2185 - Fix behaviour of required flag for schema class fields.
- #2139 - SpringDocSecurityConfiguration class not sufficiently constrained.
- #2142 - SpringDocJacksonModuleConfiguration is loaded even though there is no ObjectMapperProvider when springdoc.api-docs.enabled = false.
Full Changelog: v2.0.4...v2.1.0
springdoc-openapi v1.7.0 released!
What's Changed
- Super tiny fix typo by @fzyzcjy in #2121
- Fixed a bug that javadoc of record class parameters was not recognize… by @uc4w6c in #2140
- Fix spring authorization server response. Fixes #2123 by @uc4w6c in #2141
- bug: Fix properties
show-oauth2-endpoints
andSpringDocConfigProperties#showOauth2Endpoint
properties name mismatch by @Hccake in #2148 - Add failing test with multiple locales and customizing servers by @harsel in #2156
- Request parameters with default values are marked as required. Fixes #2149 by @tobiberger in #2158
- [#2152] Detect directions in default sort values by @onacit in #2159
- Add request parameter for token endpoint by @uc4w6c in #2167
- Fixed DefaultFlatParamObject to work with annotated parameters. Fixes… by @uc4w6c in #2183
Added
- #2152 - Detect directions in default sort values
- #2167 #2166 - Add request parameter for token endpoint
- #2188 - Support of {*param} path patterns
Changed
- Upgrade spring-boot to 2.7.10
- Upgrade swagger-core to 2.2.9
- Upgrade swagger-ui to 4.18.2
- Spring Native is now superseded by Spring Boot 3 official
- #2173 - Remove webjars-locator-core
Fixed
- #2122 - Super tiny fix typo
- #2131 - Fixed a bug that javadoc of record class parameters was not recognized.
- #2140 - Javadoc record class parameters not recognized
- #2123 #2141 - fix spring authorization server response.
- #2148 - Fix properties show-oauth2-endpoints and SpringDocConfigProperties#showOauth2Endpoint properties name mismatch
- #2149 - Request parameters with default values are marked as required.
- #2155 - openApi.getServers() is null in OpenApiCustomiser when using different locales.
- #2152 - Redundant(wrong) direction appended to @PageableDefault.
- #2181 #2183 - Fixed DefaultFlatParamObject to work with annotated parameters.
- #2170 #2187 - All request parameters marked as required for Java controllers in mixed projects in 2.0.3
- #2165 - Custom Converters are not excluded if not registered for Http Message Converter.
- #2185 - Fix behaviour of required flag for schema class fields.
New Contributors
- @harsel made their first contribution in #2156
- @tobiberger made their first contribution in #2158
- @onacit made their first contribution in #2159
Full Changelog: v1.6.15...v1.7.0
springdoc-openapi v2.0.4 released!
What's Changed
- Super tiny fix typo (in v2 branch as requested) by @fzyzcjy in #2122
- fix spring authorization server response. Fixes #2123 by @uc4w6c in #2124
- Fixed a bug that javadoc of record class parameters was not recognize… by @uc4w6c in #2136
Changed
- Upgrade swagger-ui to 4.18.1
Fixed
- #2123 - Fix spring authorization server response
- #2131 - Fixed a bug that javadoc of record class parameters was not recognized.
- #2114 - Exception during WebFlux tests: NoClassDefFoundError: KotlinModule$Builder
Full Changelog: v2.0.3...v2.0.4