Skip to content

Latest commit

 

History

History
46 lines (34 loc) · 1.65 KB

CHANGELOG.md

File metadata and controls

46 lines (34 loc) · 1.65 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Added

  • ArrayShapeRule - allows processing of arrays with predefined keys
  • ArgsFieldContext - args validation context which adds access to the property's default value

Changed

  • Composer
    • Allow PHP 8.4
    • Allow benmorel/weakmap-polyfill:^0.5.0
  • Metadata
    • Improved accuracy of metadata-related error messages
    • ReflectorMetaSource is marked as @internal
    • Check that Callback returns correct Args class type
  • Rule
    • resolveArgs() accepts ArgsFieldContext instead of ArgsContext
    • all rules initialize Type lazily (performance optimization)
  • ArrayOfRule
    • check during metadata parsing that default value is an array when mergeDefaults is enabled
  • FieldContext, MappedObjectContext
    • initializes Type lazily (performance optimization)
  • ArrayShapeType
    • getFields() always returns the same instances

0.2.0 - 2024-06-22

Added

  • Allow PHP 8.3
  • Ensure metadata are defined in scope of MappedObject
  • Conflicting field name exception reports error in source property instead of context property
  • Conflicting field name exception reports in which class did the conflict occur
  • Check that Rule returns expected type of Args

0.1.0 - 2023-07-07

Initial release