dataforge_annotation 0.7.0-dev.0
dataforge_annotation: ^0.7.0-dev.0 copied to clipboard
Annotations for dataforge package to generate data classes with JSON serialization support.
0.7.0-dev.0 #
- Bump version to 0.7.0-dev.0.
0.6.2 #
Changed #
- Make generated
copyWithimplementation classes public (e.g.,_ClassNameCopyWith->ClassNameCopyWith). - Make
copyWithclass constructors public to allow instantiation across files for nestedcopyWithsupport.
0.6.1 #
Added #
- Error Callback API: New
DataforgeConfigandDataforgeInit.init()for registering error callbacks- Allows developers to capture and handle type conversion errors in
copyWith SafeCasteUtil.copyWithCastandSafeCasteUtil.copyWithCastNullablefor safe type conversion with error reporting
- Allows developers to capture and handle type conversion errors in
Changed #
- Initialization API Refinement:
DataforgeInitis now a class instead of an extension for better compatibility and discoverability. - Renamed Parameters: Parameter
onErrorrenamed toonCopyWithErrorinDataforgeInit.initfor clarity. - Internal Optimization: Refined
copyWithsingle-field update methods to use internalcall()method, ensuring all fields are correctly preserved.
Fixed #
- copyWith Null Safety: Improved null handling for non-nullable primitive types (String, int, double, bool) by providing safe defaults when null is incorrectly passed.
0.6.0 #
Added #
- Comprehensive Documentation: Complete README overhaul for all packages
- Detailed feature documentation with examples
- CLI tool usage and performance tips
- Advanced features guide (custom converters, generics, collections)
- Comparison table with json_serializable and freezed
- Migration guides and troubleshooting
- Chinese README fully synchronized
- Circular Dependency Detection: Automatic detection with clear warnings
- Structured Logging:
DataforgeLoggerwith debug/info/warning/error levels
Fixed #
- DateTime Converter: Fixed dangerous padding logic
- Correctly handles 10-digit seconds timestamps (Unix standard)
- Correctly handles 13-digit milliseconds timestamps
- Throws
FormatExceptionfor ambiguous lengths - Supports ISO 8601 date string parsing
- Type casting for
doublefields incopyWith(smart casting fromintvianum)
Changed #
- Updated all code examples with
@overrideannotations (required for mixin pattern) - Unified
analyzerdependency to ^8.1.1 across all packages - Performance optimizations with
@pragma('vm:prefer-inline')
Documentation #
- 25 new tests added (6 for circular dependencies, 19 for DateTime converter)
- README expanded from ~200 lines to 760+ lines with comprehensive guides
- All documentation properly synchronized between English and Chinese versions
0.6.0-dev.6 #
Added #
- Circular Dependency Detection: Automatic detection of circular references between Dataforge classes with clear warnings
- Structured Logging: New
DataforgeLoggerutility with debug/info/warning/error levels - Comprehensive test coverage: 25 new tests (6 for circular dependencies, 19 for DateTime converter)
Fixed #
- DateTime Converter: Fixed dangerous padding logic that produced incorrect dates
- Now correctly handles 10-digit seconds timestamps (Unix standard)
- Now correctly handles 13-digit milliseconds timestamps
- Throws
FormatExceptionfor ambiguous timestamp lengths - Supports ISO 8601 date string parsing
Changed #
- Unified
analyzerdependency to ^8.1.1 across all packages - Improved error handling with structured logging in dataforge_base
Documentation #
- Added CIRCULAR_DEPENDENCY_ISSUE.md with detailed problem explanation
- Added IMPROVEMENTS_REPORT.md with complete change summary
- Enhanced DateTime converter documentation with examples
0.6.0-dev.4 #
- Optimize generated code performance by adding
@pragma('vm:prefer-inline').
0.6.0-dev.2 #
- Bump version.
0.6.0-dev.1 #
- Fix
readObjectcall arguments to pass value directly instead of map and key.
0.6.0-dev.0 #
- Refine nested
copyWithAPI: use chained getter syntax (e.g.,.$address.street) and remove flat accessor syntax.
0.5.0-dev.5 #
- Add
readObjectandreadRequiredObjectmethods toSafeCasteUtilfor parsing nested objects with factory functions. - Add
parseObjectmethod for internal object parsing. - Rename
objectFromJsonto use new API pattern.
0.5.0-dev.3 #
- Initial development release.