Releases: timeoutdigital/docless
Docless 0.4.0
This release improves library support of the swagger spec and corrects the serialisation of Scala options into Json schema definitions.
Support for Swagger Security schemes
Contributed by Alvaro Delgado @algd
We have reworked the types modelling security schemes and implemented JSON serialisation for them. Through our own internal use of the library, we have also verified that the basic security scheme is now handled correctly by swagger UI.
Fixed JsonSchema option encoding
The implementation of JsonSchema[Option[A]]
has been amended so that:
- The schema definition is inlined only if
A
is a primitive. Otherwise, a reference to A's definition is rendered - The fully qualified name of A is used for the definition id instead of mistakenly using
scala.Option
No import tax on Swagger codecs
JSON codecs were previously kept in the com.timeout.docless.encoders
package, which the end-user to import them explicitly. We have now moved them into the swagger.ApiSchema
companion object, thus the import is not needed anymore.
Docless 0.3.0
Version 0.3.0
So far, the validations performed as part of the PathGroup.aggregate
were only checking for top-level definitions. This PR introduces a new schema error (MissingDefinition) aimed at covering cases where nested field definitions are omitted. In order to make this possible, JsonSchema.Definition
has been refactored into a sealed trait, allowing for both named definitions (for case class fields) and unnamed ones (for coproducts).