All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- add @ApiAllowedRoles
- add 'scanSecurityAnnotations' option to automatically scan security annotations for roles
- update dependencies
- update dependencies
- add handling for spring's @BindParam
- extend @ApiRequestEntity to enable usage with query params
- correctly use description from @CookieDefinition
- better support for documenting cookies
- fix handling of special characters in json property names on expandable fields
- fix handling of recursive request/response classes
- parse getters and ctor for request and response entity classes in different order
- fix usage of multiple @ApiAllowedValue on parameter in interface
- compile with jdk 17
- add support for jakarta.ws.rs
- add support for jakarta.validation annotations
- fix schema for @FormParam parameters without container
- add handling for jakarta.xml.bind annotations
- ignore getters in records
- append apiBasePath to server url
- don't handle byte[] as collection type
- fix openApi types
- better support for java records
- update jackson-databind to 2.13.2.2
- fix handling of nested getter & ctor DTOs
- fix allowedValues in @ApiParameter
- allow usage of primitive types for parameters
- enable @ApiAllowedValue & javax constraints on type arguments
- fix handling of empty return body
- add @ApiFormParam to allow usage of @RequestParam for form parameters
- fix @ApiRequestEntity when using MultiValueMap for form parameters
- fix wrong popover contents after switching to a different resource
- allow same path to be used by different resources with different httpMethods
- fix @ApiType for form params
- make Accept header in curl optional for methods that don't need it
- upgrade to bootstrap 5
- pull most regex escaping to json
- revert to js-based fontawesome
- add option to use @ApiLabel to rename classes
- add scrollbar to OperationsTOC on overflow
- fix display of multiple methods for same path
- refactor filterbox
- use fontawesome via webfonts
- add another way to use list entities via custom interface
- add enclosing class name to references to avoid conflicts
- add support for markdown and asciidoc markup
- change word-wrap for .btn and .allowed-value
- introduce @ApiRequired, give @ApiOptional and @ApiRequired precedence over framework annotations
- process @link to other method for normal description as well
- parse 'name' from springweb parameter annotations, parse 'required' from @RequestHeader
- allow omitted path for springweb mapping annotations
- escape backticks in js-json output
- collect @ApiCommonResponse(s) from all interfaces instead of just the first
- use first content-type of method if unset in @ApiRequestEntity
- fix possible NPE in JavaDocUtils.getReferencedElement
- validate 'consumes' contentType is set for methods with body
- add special name handling for array types
- add class javadoc to nested collection & map elements
- include class javadoc as fallback description for @ApiEntity entityClass
- remove excessive dot in logged paths
- replace/escape all non-alphanumeric characters in operation references
- fix excessive newline in descriptions
- rewrite parsers with new doclet Api
- rewrite frontend with svelte & openApiV3
- switch to Java 11
- spring-webmvc: add missing handling for @DeleteMapping
- add @ApiIgnore to exclude a request parameter, DTO field or a whole REST method from documentation
- spring-webmvc: parse 'required' attribute also from annotations
- spring-webmvc: skip method parameters without known annotations
- add basic validation of parsed RestMethodData
- replace webfont version of fontawesome with svg + js
- fix toString() issues after j2html upgrade
- include constraints from other fields via @see tag
- add optional indicators to response values
- fix allowedValues for custom parameters
- parse javax.validation constraints also for top level parameters
- add @ApiOptional to mark optional parameters
- parse javax.validation constraints as allowedValueHint
- allow @ApiAllowedValues on fields, methods and parameters
- replace glyphicons with fontawesome
- use auto placement for template popovers
- support for @FormParam
- always show type of parameter and responseValue
- add slash between rootPath and methodPath, if missing
- skip template generation for unsupported media types
- don't append charset to Content-Type in curl if already present
- ignore charset when checking the media type
- First release