- chore: bump license year (#208)
- fix:
mapEqualswhen comparing maps with different keys and null values (#207)
- perf: improve equality comparison performance (#173)
- docs: improve snippet in
README(#184) - chore: upgrade example to Dart >=3.5.0
- chore: add funding and topics to
pubspec.yaml(#176) - chore: add performance benchmarks
- chore: fix typo in inline API docs (#170)
- refactor: simplify
toStringlogic (#140) - docs: add nullable props example to
README - refactor: update
analysis_options.yaml(#169) - fix: add
@immutabletoEquatableMixin(#154)
- fix: resolves
T not a subtype of type 'Comparable<dynamic>'when computinghashCode
- fix: use
SplayTreeSetto resolve inconsistenthashCodefor properties of typeSet(#142)
- fix: revert
EquatableMixin== to useObject(#122)
- fix:
Mapprop with non-comparable key
- fix:
hashCodeshould be the same for equal objects (Mapfix)
- BREAKING: opt into null safety
- feat!: upgrade Dart SDK constraints to
>=2.12.0-0 <3.0.0
- feat!: upgrade Dart SDK constraints to
- BREAKING: stringify prints "null" for null properties instead of ""
- feat:
EquatableConfig.stringifydefaults totruein debug mode. - fix: support legacy equality overrides with
EquatableMixin - fix: iterable equality comparisons (#101)
- fix: stringify instance with long properties (#94)
- chore: update dependencies
collection: ^1.15.0meta: ^1.3.0
- docs: minor updates to
READMEandexample
- feat:
EquatableConfig.stringifydefaults totruein debug mode. - fix: support legacy equality overrides with
EquatableMixin
- chore: update dependencies
collection: ^1.15.0meta: ^1.3.0
- BREAKING: stringify prints "null" for null properties instead of ""
- BREAKING: opt into null safety
- feat!: upgrade Dart SDK constraints to
>=2.12.0-0 <3.0.0 - docs: minor updates to
READMEandexample
- docs: dartdoc improvements (#80)
- docs: minor inline documentation improvements
- fix:
EquatableMixinstringify respectsEquatableConfig.stringify(#81)
- docs: inline, public documentation improvements (#78).
- refactor: stricter analysis/lint rules
- Documentation badge fixes and updates
- Fix
hashCodecomputation forIterables(#74) - Minor documentation improvements
- Added
EquatableConfigfor globalstringifyconfiguration (#69)
- Updates to
EquatableUtilsdocumentation
- Fix
hashCodeerror whenpropsisnull(#45) - Added
stringifyfeature (optionaltoStringoverride) (#45)
- Fix
hashCodecollisions for lists within props (#53)
- Fix internal lint warnings
- Fix
hashCodecollisions withMapproperties (#43)
- Update hashCode implementation to use
Jenkins Hash(#39) - Documentation Updates
- Minor documentation updates
- The
propsgetter override is required for bothEquatableandEquatableMixin - Performance Improvements
- Allow const constructors on
Equatableclass
- Removed
EquatableMixinBase(now covered byEquatableMixin). - Typed
EquatableMixinfromList<dynamic>toList<Object>to fix linter issues withimplicit-dynamic: false.
Update toString to default to runtimeType (#27)
Enforce Immutability (#25)
Improved support for collection types (#19)
Improved support for Iterable, List, Map, and Set props (#17)
Additional Minor Documentation Updates
Documentation Updates
Bug Fixes:
Equatableinstances that are equal now have the samehashCode(#8)
Update Dart support to >=2.0.0 <3.0.0
Add EquatableMixin and EquatableMixinBase
Enhancements to toString override
equatable has 0 dependencies
Support Iterable props
Added toString override
Documentation Updates
- Performance Tests
Additional Performance Optimizations & Documentation Updates
Performance Optimizations
Bug Fixes
Additional Updates to Documentation.
- Logo Added
Minor Updates to Documentation.
Initial Version of the library.
- Includes the ability to extend
Equatableand not have to override==andhashCode.