Skip to content

Latest commit

 

History

History
40 lines (28 loc) · 2.46 KB

CHANGELOG.adoc

File metadata and controls

40 lines (28 loc) · 2.46 KB

Changelog

This document provides a high-level view of the changes introduced in Kotlin Data Model Processor by release. For an even more detailed look at what has changed, refer to the {uri-repo}/commits/master[commit history].

This project utilizes semantic versioning.

Next version 1.3.0 (TBD)

New features and improvements:

  • Nested arrays support

Next version 1.2.0 (TBD)

New features and improvements:

  • New ImplementModel annotation arguments: templateSuffix, defaults to Template.

  • Immutable ObjectModel interface can be generated either from ObjectTemplate interface or skipped so Template itself can be ImmutableModel.

  • GeneratedClass hints processor about properties of types that are generated from Template but not inherited from it.

  • Comparable implementation, see ImplementComparable Annotation

  • Option to completely disable default class (and DSL initializer) generation.

  • Option to generate abstract class (with no DSL initializer).

  • hashCode / equals implementations, see ImplementHashCode Annotation and ImplementEquals Annotation to overcome Limitations on Data Classes

  • Basic support of TypeScript data model generation by partial rewriting of ts-generator to make it work on top of kotlinpoet.

  • Generate multiple implementations with annotation Implementations.

  • Enforce to use named arguments in implementation class constructors, setting is ignored for data classes.

1.1.0 (2021.07.12)

New features and improvements:

  • Support nested inheritance.

  • ConstructorInitializer annotation allows to use custom constructor initializers.

  • PreventOverride annotation allows to mark certain properties of interface to be excluded from model implementations.

  • Better type handling of kotlin classes.