95 lines
2.9 KiB
Markdown
95 lines
2.9 KiB
Markdown
|
CHANGELOG
|
||
|
=========
|
||
|
|
||
|
7.0
|
||
|
---
|
||
|
|
||
|
* Add method `isNullSafe()` to `PropertyPathInterface`
|
||
|
* Require explicit argument when calling `PropertyAccessorBuilder::setCacheItemPool()`
|
||
|
|
||
|
6.3
|
||
|
---
|
||
|
|
||
|
* Allow escaping `.` and `[` with `\` in `PropertyPath`
|
||
|
|
||
|
6.2
|
||
|
---
|
||
|
|
||
|
* Deprecate calling `PropertyAccessorBuilder::setCacheItemPool()` without arguments
|
||
|
* Added method `isNullSafe()` to `PropertyPathInterface`, implementing the interface without implementing this method
|
||
|
is deprecated
|
||
|
* Add support for the null-coalesce operator in property paths
|
||
|
|
||
|
6.0
|
||
|
---
|
||
|
|
||
|
* make `PropertyAccessor::__construct()` accept a combination of bitwise flags as first and second arguments
|
||
|
|
||
|
5.3.0
|
||
|
-----
|
||
|
|
||
|
* deprecate passing a boolean as the second argument of `PropertyAccessor::__construct()`, expecting a combination of bitwise flags instead
|
||
|
|
||
|
5.2.0
|
||
|
-----
|
||
|
|
||
|
* deprecated passing a boolean as the first argument of `PropertyAccessor::__construct()`, expecting a combination of bitwise flags instead
|
||
|
* added the ability to disable usage of the magic `__get` & `__set` methods
|
||
|
|
||
|
5.1.0
|
||
|
-----
|
||
|
|
||
|
* Added an `UninitializedPropertyException`
|
||
|
* Linking to PropertyInfo extractor to remove a lot of duplicate code
|
||
|
|
||
|
4.4.0
|
||
|
-----
|
||
|
|
||
|
* deprecated passing `null` as `$defaultLifetime` 2nd argument of `PropertyAccessor::createCache()` method,
|
||
|
pass `0` instead
|
||
|
|
||
|
4.3.0
|
||
|
-----
|
||
|
|
||
|
* added a `$throwExceptionOnInvalidPropertyPath` argument to the PropertyAccessor constructor.
|
||
|
* added `enableExceptionOnInvalidPropertyPath()`, `disableExceptionOnInvalidPropertyPath()` and
|
||
|
`isExceptionOnInvalidPropertyPath()` methods to `PropertyAccessorBuilder`
|
||
|
|
||
|
4.0.0
|
||
|
-----
|
||
|
|
||
|
* removed the `StringUtil` class, use `Symfony\Component\Inflector\Inflector`
|
||
|
|
||
|
3.1.0
|
||
|
-----
|
||
|
|
||
|
* deprecated the `StringUtil` class, use `Symfony\Component\Inflector\Inflector`
|
||
|
instead
|
||
|
|
||
|
2.7.0
|
||
|
------
|
||
|
|
||
|
* `UnexpectedTypeException` now expects three constructor arguments: The invalid property value,
|
||
|
the `PropertyPathInterface` object and the current index of the property path.
|
||
|
|
||
|
2.5.0
|
||
|
------
|
||
|
|
||
|
* allowed non alpha numeric characters in second level and deeper object properties names
|
||
|
* [BC BREAK] when accessing an index on an object that does not implement
|
||
|
ArrayAccess, a NoSuchIndexException is now thrown instead of the
|
||
|
semantically wrong NoSuchPropertyException
|
||
|
* [BC BREAK] added isReadable() and isWritable() to PropertyAccessorInterface
|
||
|
|
||
|
2.3.0
|
||
|
------
|
||
|
|
||
|
* added PropertyAccessorBuilder, to enable or disable the support of "__call"
|
||
|
* added support for "__call" in the PropertyAccessor (disabled by default)
|
||
|
* [BC BREAK] changed PropertyAccessor to continue its search for a property or
|
||
|
method even if a non-public match was found. Before, a PropertyAccessDeniedException
|
||
|
was thrown in this case. Class PropertyAccessDeniedException was removed
|
||
|
now.
|
||
|
* deprecated PropertyAccess::getPropertyAccessor
|
||
|
* added PropertyAccess::createPropertyAccessor and PropertyAccess::createPropertyAccessorBuilder
|