All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.4.51 - 2022-09-15
- Symbol rewrites using regular expressions
- Missing replaces in field names
0.4.50 - 2022-04-28
- Exhaustive boolean values elision in const block
0.4.49 - 2022-04-28
- Boolean values handling in enum/const block
0.4.48 - 2022-01-02
- Support for PHP 8.1
0.4.47 - 2022-01-02
- Code generation for AsyncAPI 2.1.0 schema
0.4.46 - 2021-08-29
- Infinite recursion with JSON Schema draft-07 reference in 3rd party schema.
0.4.45 - 2021-07-16
- Enum and const collision with type name.
0.4.44 - 2021-04-20
- Missing imports in generated code.
0.4.43 - 2021-04-20
- Invalid escaping of single quot.
- Type naming with schema title.
0.4.42 - 2020-12-12
- Lint issues
0.4.41 - 2020-12-12
- Properties embedding for
allOf
schemas that only serve plain properties.
0.4.40 - 2020-09-30
- Option to set additional field tags with property name.
- Redundant pointer type
*interface{}
on non-omitted fields.
0.4.39 - 2020-08-09
- Redundant
const
check for missing properties.
0.4.38 - 2020-04-30
- Rendering of nullable+omitempty slices and maps.
0.4.37 - 2020-04-29
- Rendering of required x-nullable fields.
0.4.36 - 2020-04-29
- Rendering of required nullable fields.
0.4.35 - 2020-04-28
- Option to disable
required
validation during unmarshal.
0.4.34 - 2020-04-12
- Rendering of type
["null", "object"]
. - Redundant
marshalUnion
call removed. - Byte slice preallocation with magic number removed in favor of dynamic allocation.
0.4.33 - 2020-04-08
- Field ensurer generation when fluent setters are enabled.
0.4.32 - 2020-04-04
- Support for simplified syntax of
x-go-type: foo-go::foo.Type
.
0.4.31 - 2020-04-03
- Skip generation of properties with
x-generate: false
. - Option to only generate properties with
x-generate: true
.
0.4.30 - 2020-03-30
- Argument to
MarshalingTestFunc
to avoid default additional properties in tests.
0.4.29 - 2020-03-17
- Option to rename generated symbol names.
0.4.28 - 2020-03-10
- Added support for schema logic resolution based on
oneOf
,anyOf
,required
,not
,additionalPrperties
. - Added helper to generate tests for entities.
0.4.27 - 2020-02-25
GoBuilder
option toignoreRequired
when deciding on pointer type or omitempty.- Improved receiver naming to use first char of type.
0.4.26 - 2020-02-18
- Few code style issues.
- Pointer and omitempty removed for required properties.
0.4.25 - 2020-02-04
- Fluent setter for map item in JSON schema generated structures.
0.4.24 - 2020-02-02
- Wrong field referencing of multi-type structures, introduced in
0.4.23
.
0.4.23 - 2020-02-02
- Missing fields for multi-type structures.
0.4.22 - 2020-01-26
- Early return in
MarshalJSON
if there are no additional properties to improve performance. - JSON Schema maker library updated.
0.4.21 - 2020-01-24
- Missing
encoding/json
import in some cases.
0.4.20 - 2020-01-04
- Fluent field setter template.
- Option to build fluent setters when generating structures from JSON schema.
- Missing arguments/results handling in func definition.
- Duplicated functions in struct.
- Variadic syntax in func argument.
0.4.19 - 2019-11-18
- Indentation of pattern properties loop.
- Removed
composer.lock
from exported distribution.
0.4.18 - 2019-11-16
- Optimized memory allocation efficiency in unmarshaling code.
0.4.17 - 2019-10-27
- Removed redundant marshaling helper type.
0.4.16 - 2019-10-25
- Redundant tabs in
marshalUnion
.
0.4.15 - 2019-10-25
- Redundant tabs in
marshalUnion
.
0.4.14 - 2019-10-23
- Redundant duplicated early return check.
0.4.13 - 2019-10-23
- Whitespace formatting for improved readability.
0.4.12 - 2019-10-22
- Names for logical branches are inherited from reference names where available.
- Option to
$inheritSchemaFromExamples
when type and properties are missing.
- Invalid property name when stripping parent prefix.
0.4.11 - 2019-10-15
- Dereference of
nil
*json.RawMessage
in additional and pattern properties.
0.4.10 - 2019-10-15
- Support for
x-omitempty
vendor extension. - Vendor extensions documentation in README.md.
0.4.9 - 2019-10-10
- Option to disable null
additionalProperties
rendering.
0.4.8 - 2019-10-09
- Constant/enum type names are prefixed with parent property if available.
- Constant/enum item names are prefixed with parent type instead of path.
- Schema title is used for struct name instead of path where available.
- Optional support for
x-nullable
(Swagger 2.0),nullable
(OpenAPI 3.0) properties to enable nullability.
- Type marker stripping from path was affecting regexps too.
0.4.7 - 2019-10-05
- Support for
x-go-type
as object (go-swagger
format). - Builder option
$ignoreXGoType
to disregardx-go-type
hints. - Builder option
$withZeroValues
to use pointer types to avoid zero-value ambiguity. - Builder option
$ignoreNullable
to enableomitempty
for nullable properties. - Automated API docs.
- Change log.
- Missing processing for
null
additionalProperties
. - Processing for nullable (
[null, <other>]
) types.
- Multi-type schemas are decomposed into multiple structures.
- Schema title is used for structure name if available.
0.4.6 - 2019-10-01
- More tests.
- CI upgrade.
- Code-style issues.
0.4.5 - 2019-07-11
- Type inference from enum values.
- Trivial nesting removed.
0.4.4 - 2019-07-08
- Removed unnecessary regexp dependency, #7.