Skip to content

4.10.0 – Draft 6, Inline Option and enum via @JsonProperty

Compare
Choose a tag to compare
@CarstenWickner CarstenWickner released this 12 Apr 20:20

jsonschema-generator

Added

  • Official support for Draft 6 (via new SchemaVersion.DRAFT_6)
  • New Option.INLINE_ALL_SCHEMAS to enforce no definitions/$defs to be produced (throwing exception if there is at least one circular reference)
  • Offering also SchemaGenerationContext.createStandardDefinition(FieldScope, CustomPropertyDefinitionProvider)
  • Offering also SchemaGenerationContext.createStandardDefinition(MethodScope, CustomPropertyDefinitionProvider)
  • Alternative SchemaGenerationConfigPart.withInstanceAttributeOverride(InstanceAttributeOverrideV2) with access to SchemaGenerationContext

Changed

  • Enhance Option.ALLOF_CLEANUP_AT_THE_END to also reduce allOf if multiple parts have the same attributes but with equal values (except for if tags)
  • Providing access to the SchemaGenerationContext when invoking TypeAttributeOverrideV2 (potentially BREAKING change in case of lambda usage)

Deprecated

  • SchemaGenerationConfigPart.withInstanceAttributeOverride(InstanceAttributeOverride) without access to SchemaGenerationContext
  • InstanceAttributeOverride interface without access to SchemaGenerationContext
  • TypeAttributeOverride interface with only access to SchemaGenerationConfig and not SchemaGenerationContext
  • Ambiguous SchemaGeneratorConfigBuilder.with(CustomDefinitionProviderV2)
  • Ambiguous and outdated SchemaGeneratorConfigBuilder.with(TypeAttributeOverride)

jsonschema-module-jackson

Added

  • New JacksonOption.FLATTENED_ENUMS_FROM_JSONPROPERTY to allow enum serialization based on each constant's @JsonProperty value