- chore: migrate from
package:data_class_macro
topackage:data_class
- chore: initial version of
package:data_class
- feat: improve hash to use jenkins hash
- fix: support classes with static fields
- feat: simpler
copyWith
syntax - fix:
toString()
omits trailing comma when terminating with anull
field.
- refactor: simplify various macro implementations
- remove unnecessary de-duping
- improve internal performance
- extract shared logic
- tests: additional unit tests for
@Data
- fix:
@Data
inheritance compatibility - fix:
@Data
composability with other macros
- feat:
@Data
can be applied to subclasses - feat:
@Stringable()
(toString
) excludesnull
fields - tests: comprehensive unit tests
- feat: add
@Constructable
macro (const
constructor) - feat: add
@Equatable
macro (operator==
andhashCode
) - feat: add
@Stringable
macro (toString
) - feat: add
@Copyable
macro (copyWith
) - feat: make nullable fields optional constructor params
- feat: throw if a default constructor already exists
- chore: rename to
Data()
to avoid confusion
- deps: remove unnecessary dependency on
package:equatable
- docs: add topics to
pubspec.yaml
- feat:
copyWith
support for setting nullable fields tonull
- docs: improved example and
README.md
- feat: support for empty classes
- docs: improved example and
README.md
- tests: unit tests
- feat: generate named constructor
- feat: generate doc comments for
copyWith
- docs:
README.md
improvements
- fix:
Error: MacroImplementationExceptionImp
- chore: create package