Skip to content

Releases: tiny-blocks/mapper

v2.0.4

21 Apr 21:58
f9c1e79

Choose a tag to compare

  • Add export-ignore entries for additional dev config files (PHPUnit, PHPStan, PHPCS, Infection).
  • Expand .gitattributes to cover both *.dist and non-*.dist variants where applicable.

v2.0.3

21 Apr 21:39
8087d80

Choose a tag to compare

  • Reworked .gitignore to ignore common IDE/OS artifacts, Composer vendor output, and PHPUnit/coverage artifacts.
  • Simplified .gitattributes and added export-ignore rules intended to exclude dev-only files from Packagist archives.

v2.0.2

21 Apr 11:31
cce9081

Choose a tag to compare

  • Update ObjectBuilder to treat “missing key” differently from “explicit null”, preserving null while still applying defaults when keys are absent.
  • Replace enum casting via reflection with BackedEnum::tryFrom() for backed enums and ::cases() name matching for pure enums.
  • Add new test fixtures and PHPUnit coverage for union-typed parameters, explicit-null vs missing-key defaults, and pure-enum case-name hydration; plus repo/tooling housekeeping (composer normalize, editorconfig, gitattributes, CI action bumps, new .claude rule docs).

v2.0.1

10 Feb 01:03
03184f3

Choose a tag to compare

  • Fixed mapping for Traversable objects in IterableExtractor, ensuring that iterator_to_array is correctly applied directly to the object when it implements Traversable, preserving the keys and structure defined by getIterator() instead of falling back to reflection-based property extraction.

v2.0.0

09 Feb 23:48
27df0f6

Choose a tag to compare

  • Implement fromIterable() for bidirectional object-array mapping.
  • Support private constructors via reflection-based instantiation.
  • Automatic type casting with extensible CasterHandler architecture.
  • Recursive mapping for nested objects and collections.
  • Extracted MappabilityBehavior trait to eliminate code duplication between ObjectMappability and IterableMappability
    toJson() and toArray() implementations now shared via composition.
  • Improved architecture, enhanced caster layer with instanceof guards to prevent unnecessary object reconstruction, centralized reflection logic, and eliminated code duplication across mapping strategies.

v1.4.0

13 Jan 02:32
882c334

Choose a tag to compare

  • Upgraded minimum PHP requirement from 8.3 to 8.5 and updated Docker image accordingly.
  • Refactored CI workflow to use artifact caching and added a help system to the Makefile.

v1.3.0

07 Jan 14:12
eef33fb

Choose a tag to compare

  • Updates project dependencies and GitHub Actions workflows.

v1.2.0

07 Jan 12:56
7e31b54

Choose a tag to compare

  • Updates project dependencies and GitHub Actions workflows.

v1.1.1

07 Jan 12:10
51dec9a

Choose a tag to compare

  • Fixes composer.json.

v1.1.0

07 Jan 03:00
28cd57b

Choose a tag to compare

  • Fixes composer.json.