dogs_core 9.4.0 dogs_core: ^9.4.0 copied to clipboard
universal object mapping and serialization library with a focus on dx.
9.4.0 #
- FEAT: add field serialization hook and the DefaultValue field annotation.
9.3.0 #
- FEAT: add native property annotation to retain field values during serialization and deserialization.
9.2.0 #
- FEAT: reimplement number primitive coercion and make it the default as a mitigation for common webserver interop problems.
9.1.0 #
Note: This release has breaking changes.
- REFACTOR: make the type discriminator codec configurable.
- REFACTOR: reformat dart code.
- REFACTOR: remove unused polymorphic converters which became obsolete with tree converters.
- REFACTOR: fix some linter warnings.
- REFACTOR: reformat code.
- REFACTOR: support serialization of nullable values.
- REFACTOR: move pagination objects from dogs_odm to dogs_core.
- REFACTOR: Use DogEngine.instance instead of dogs.
- REFACTOR: some small refactoring changes and more api docs.
- REFACTOR: apply prefer final locals.
- REFACTOR: use double quote for dogs_core and add more lints.
- REFACTOR: make projections use native serialization by default.
- REFACTOR: use fieldmap as fallback if toString() using graph serialization fails.
- REFACTOR: auto reformat.
- REFACTOR: improve error handling and add custom exceptions.
- REFACTOR: rename internal firstWhereOrNull to firstWhereOrNullDogs to not clash with collections.
- REFACTOR: reformat code.
- REFACTOR: Fix lints and reformatted code.
- REFACTOR: add @factory annotation.
- REFACTOR: append runtime time to error message for easier debugging.
- REFACTOR: use DogException instead of Exception.
- REFACTOR: export hooks.
- REFACTOR: reformat code and remove some unused variables.
- REFACTOR: update pubspec.yaml.
- REFACTOR: use passed DogEngine reference instead of the static one.
- REFACTOR: remove unused import.
- REFACTOR: use final more often, add some docs along the way.
- REFACTOR: use instance instead of internalInstance everywhere and refactor internalInstance.
- REFACTOR: make fields final and add some docs.
- REFACTOR: add EnumConverter mixin for better readability when used in external packages.
- REFACTOR: use structure harbinger for findConverter instead of the outdated legacy algorithm.
- REFACTOR: reformatted code and removed some unused imports.
- REFACTOR: Use DogEngine.instance instead of dogs.
- REFACTOR: move global dogs field to globals.dart.
- REFACTOR: move IterableKind to engine.
- REFACTOR: fix common code style issues.
- REFACTOR: move annotations to converter.
- REFACTOR: export lyell.
- REFACTOR: use the new mode factories in operation mode resolution.
- FIX: handle null as empty collection if the field is not nullable.
- FIX: use qualified type for native check, not the serial type.
- FIX: broken relative markdown link.
- FIX: replace the wrongly used typeMapping with converterMapping.
- FIX: pass on type argument.
- FIX: make projection not shallow by default.
- FIX: remove unused parameter.
- FIX: downgrade meta package.
- FIX: make the PolymorphicConverter not associated with dynamic by default.
- FIX: only query serial converters for native collections.
- FIX: handle null in serialization.
- FIX: dogs_core tests.
- FIX: add case for synthetic structures.
- FIX: remove dart ffi import.
- FIX: disable test that needs a rework.
- FIX: do not associate polymorphic converters with types anymore.
- FIX: engine ignoring isAssociated.
- FIX: findConverter extension now works as expected.
- FIX: add native to graph visitor.
- FIX: recursively visit entries of maps and lists.
- FIX: ups add trees back.
- FIX: add continue statement I accidentally deleted.
- FIX: nullable structure fields now allow for null values.
- FIX: add item type name to the name of polymorphic schema fields if a cast is specified.
- FIX: handle field visitor specified converters for api schema generation.
- FEAT: add RegExpConverter.
- FEAT: implement native coercion in codec.
- FEAT: add projection transformers and tests for them.
- FEAT: cleanup DogEngine, fully implement child converters.
- FEAT: add support for deeper polymorphic serialization involving primitive types.
- FEAT: dogs_orm and dogs_mongo_driver initial commit.
- FEAT: add constant 'positive' accessor annotation to restrict numbers to be positive or zero.
- FEAT: add serializable library.
- FEAT: add short and more uniform to
- FEAT(partial): add handler mechanism.
- FEAT: add simple createIterableFactory api method.
- FEAT: add annotations parameters.
- FEAT: add pre/post processors to native codec to clean up format implementations.
- FEAT: add metadata mixin and use it for the engine.
- FEAT: add mechanism for identifying and retrieving forked engine instances making them reusable.
- FEAT: add opmode factories for extending converter opmodes externally.
- FEAT: add annotations for validators in preparation for dogs_forms.
- FEAT: add pagination objects to dogs_core from dogs_odm.
- FEAT: add better error handling for projections.
- FEAT: initial commit.
- FEAT: add native serializer hooks.
- FEAT: adapt all formats to the new toFormat fromFormat scheme and actually make them pass all tests.
- FEAT: add openapi scheme generation for nargs and iterable converters.
- FEAT: add instantiateFromFieldMap to the structure extensions.
- FEAT: add findStructureByType.
- FEAT: add additional methods for encoding collections as json.
- FEAT: post rebuild hooks.
- FEAT: expand projection to allow for document projection.
- FEAT: add better error handling for api schema validation.
- FEAT: add DogEngine reference to validate calls.
- FEAT: add utils for non graph serializers.
- FEAT: add canSerializeNull for non-structure converters.
- FEAT: add SimpleDogConverter to reduce a bit of boilerplate code.
- DOCS: update polymorphic docs.
- DOCS: add some missing documentation.
- DOCS: add docs for structure proxy.
- DOCS: add documentation for default converters.
- DOCS: add example.md.
- DOCS: add docs comment.
- DOCS: update documentation for Validatable and Copyable.
- DOCS: add missing documentation.
- DOCS: add missing documentation for new methods.
- DOCS: add docs for SimpleDogConverter.
- DOCS: add more documentation to public members.
- DOCS: update example.md and remove empty main.dart.
- DOCS: add missing public member documentation and reformat code.
- BREAKING REFACTOR: change positive to exclude 0, add positiveOrNull, as well as negative versions.
- BREAKING REFACTOR: remove old non-operation methods.
- BREAKING REFACTOR: cleanup structure, modify projection algorithm.
- BREAKING REFACTOR: fix new projection algorithm, finish operation mode refactoring.
- BREAKING REFACTOR: Require explicit handling of polymorphic tree serialization.
- BREAKING REFACTOR: rename findConverterOrThrow.
- BREAKING FEAT: add new converter and polymorphic features.
- BREAKING FEAT: major rework and removed deprecations.
- BREAKING FEAT: prepare switch to operations.
- BREAKING FEAT: add simplified type tree system and remove old internal implementations.
- BREAKING FEAT: added validation, refactored library.
- BREAKING FEAT: switch to lyell generator utilities.
- BREAKING FEAT: fully remove the graph operation mode and other deprecations.
- BREAKING FEAT: extend structure, openapi schema, rework structure converter.
- BREAKING FEAT: polymorphic, serializer implementations, updated structure format.
- BREAKING FEAT: add notBlank and email validators.
9.0.0 #
Note: This release has breaking changes.
- REFACTOR: use DogException instead of Exception.
- REFACTOR: remove unused polymorphic converters which became obsolete with tree converters.
- FEAT: add pre/post processors to native codec to clean up format implementations.
- DOCS: add missing public member documentation and reformat code.
- DOCS: update example.md and remove empty main.dart.
- DOCS: add more documentation to public members.
- BREAKING FEAT: fully remove the graph operation mode and other deprecations.
8.5.0 #
- REFACTOR: reformat code.
- REFACTOR: support serialization of nullable values.
- REFACTOR: move pagination objects from dogs_odm to dogs_core.
- FIX: pass on type argument.
- FEAT: adapt all formats to the new toFormat fromFormat scheme and actually make them pass all tests.
- FEAT: add utils for non graph serializers.
- FEAT: add mechanism for identifying and retrieving forked engine instances making them reusable.
- FEAT: add canSerializeNull for non-structure converters.
- FEAT: add metadata mixin and use it for the engine.
- FEAT: add pagination objects to dogs_core from dogs_odm.
8.4.1 #
- FIX: ups add trees back.
8.4.0 #
- FEAT: add openapi scheme generation for nargs and iterable converters.
8.3.0 #
- FEAT: add better error handling for projections.
- FEAT: add projection transformers and tests for them.
- FEAT: post rebuild hooks.
8.2.0 #
- REFACTOR: some small refactoring changes and more api docs.
- REFACTOR: apply prefer final locals.
- REFACTOR: use double quote for dogs_core and add more lints.
- FIX: make projection not shallow by default.
- FEAT: add short and more uniform to
8.1.1 #
- REFACTOR: make projections use native serialization by default.
8.1.0 #
- REFACTOR: use fieldmap as fallback if toString() using graph serialization fails.
- REFACTOR: make the type discriminator codec configurable.
- FIX: downgrade meta package.
- FEAT: add RegExpConverter.
- FEAT: dogs_orm and dogs_mongo_driver initial commit.
8.0.2 #
- REFACTOR: improve error handling and add custom exceptions.
8.0.1 #
- REFACTOR: rename internal firstWhereOrNull to firstWhereOrNullDogs to not clash with collections.
8.0.0 #
Note: This release has breaking changes.
- REFACTOR: reformat code.
- REFACTOR: append runtime time to error message for easier debugging.
- REFACTOR: export hooks.
- FIX: use qualified type for native check, not the serial type.
- FEAT: add SimpleDogConverter to reduce a bit of boilerplate code.
- FEAT: add serializable library.
- FEAT: add simple createIterableFactory api method.
- FEAT: add native serializer hooks.
- DOCS: add docs for SimpleDogConverter.
- DOCS: add missing documentation for new methods.
- BREAKING FEAT: add simplified type tree system and remove old internal implementations.
7.2.2 #
- REFACTOR: reformat code and remove some unused variables.
7.2.1 #
- REFACTOR: update pubspec.yaml.
7.2.0 #
- REFACTOR: use the new mode factories in operation mode resolution.
- REFACTOR: use final more often, add some docs along the way.
- REFACTOR: make fields final and add some docs.
- REFACTOR: add EnumConverter mixin for better readability when used in external packages.
- FIX: replace the wrongly used typeMapping with converterMapping.
- FEAT: implement native coercion in codec.
- FEAT: cleanup DogEngine, fully implement child converters.
- FEAT: add opmode factories for extending converter opmodes externally.
- FEAT: add annotations for validators in preparation for dogs_forms.
- DOCS: add missing documentation.
- DOCS: add docs comment.
7.1.1 #
- FIX: remove unused parameter.
7.1.0 #
- REFACTOR: use structure harbinger for findConverter instead of the outdated legacy algorithm.
- FEAT: add instantiateFromFieldMap to the structure extensions.
- DOCS: add some missing documentation.
7.0.0 #
Note: This release has breaking changes.
- FIX: only query serial converters for native collections.
- FEAT: expand projection to allow for document projection.
- BREAKING REFACTOR: Require explicit handling of polymorphic tree serialization.
6.1.1 #
- FIX: handle null in serialization.
6.1.0 #
- FIX: broken relative markdown link.
- FEAT: add support for deeper polymorphic serialization involving primitive types.
6.0.3 #
- REFACTOR: reformatted code and removed some unused imports.
- DOCS: add example.md.
6.0.2 #
- FIX: dogs_core tests.
- FIX: add case for synthetic structures.
- FIX: remove dart ffi import.
6.0.1 #
- FIX: remove dart ffi import.
- FIX: disable test that needs a rework.
6.0.0 #
- incremental version
6.0.1 #
- FIX: disable test that needs a rework.
6.0.0 #
Note: This release has breaking changes.
- BREAKING REFACTOR: fix new projection algorithm, finish operation mode refactoring.
- BREAKING REFACTOR: cleanup structure, modify projection algorithm.
- BREAKING REFACTOR: remove old non-operation methods.
- BREAKING FEAT: prepare switch to operations.
5.0.3 #
- FIX: findConverter extension now works as expected.
5.0.2 #
- REFACTOR: fix common code style issues.
- FIX: add native to graph visitor.
5.0.1 #
- FIX: recursively visit entries of maps and lists.
- FIX: handle null as empty collection if the field is not nullable.
5.0.0 #
Note: This release has breaking changes.
- BREAKING FEAT: major rework and removed deprecations.
4.2.1 #
- FIX: add continue statement I accidentally deleted.
4.2.0 #
- REFACTOR: export lyell.
- FIX: nullable structure fields now allow for null values.
- FEAT: add findStructureByType.
- FEAT: add additional methods for encoding collections as json.
4.1.2 #
- FIX: add item type name to the name of polymorphic schema fields if a cast is specified.
4.1.1 #
- FIX: handle field visitor specified converters for api schema generation.
4.1.0 #
- FEAT: add better error handling for api schema validation.
4.0.0 #
Note: This release has breaking changes.
- BREAKING FEAT: add new converter and polymorphic features.
3.0.0 #
Note: This release has breaking changes.
- BREAKING REFACTOR: change positive to exclude 0, add positiveOrNull, as well as negative versions.
- BREAKING FEAT: add notBlank and email validators.
2.1.1 #
- REFACTOR: auto reformat.
- REFACTOR: remove unused import.
- FIX: do not associate polymorphic converters with types anymore.
2.1.0 #
- REFACTOR: move annotations to converter.
- REFACTOR: move IterableKind to engine.
- REFACTOR: move global dogs field to globals.dart.
- REFACTOR: Use DogEngine.instance instead of dogs.
- REFACTOR: Use DogEngine.instance instead of dogs.
- REFACTOR: use instance instead of internalInstance everywhere and refactor internalInstance.
- REFACTOR: use passed DogEngine reference instead of the static one.
- REFACTOR: add @factory annotation.
- FIX: make the PolymorphicConverter not associated with dynamic by default.
- FEAT: add annotations parameters.
- FEAT: add constant 'positive' accessor annotation to restrict numbers to be positive or zero.
- FEAT: add DogEngine reference to validate calls.
- DOCS: update polymorphic docs.
- DOCS: add docs for structure proxy.
- DOCS: add documentation for default converters.
- DOCS: update documentation for Validatable and Copyable.
2.0.0 #
Note: This release has breaking changes.
- REFACTOR: Fix lints and reformatted code.
- REFACTOR: fix some linter warnings.
- FIX: engine ignoring isAssociated.
- FEAT: add handler mechanism.
- BREAKING REFACTOR: rename findConverterOrThrow.
- BREAKING FEAT: added validation, refactored library.
- BREAKING FEAT: switch to lyell generator utilities.
- BREAKING FEAT: extend structure, openapi schema, rework structure converter.
1.0.0 #
Note: This release has breaking changes.
- BREAKING FEAT: polymorphic, serializer implementations, updated structure format.
1.0.0-alpha #
- Bump "dogs_core" to
1.0.0-alpha
.
1.0.0-alpha #
- REFACTOR: reformat dart code.
- FEAT: initial commit.
1.0.0-alpha #
- Bump "dogs" to
1.0.0-alpha
.
1.0.0 #
- REFACTOR: reformat dart code.
- FEAT: initial commit.
1.0.0 #
- Initial version.