386 lines
10 KiB
Markdown
386 lines
10 KiB
Markdown
|
# Changelog
|
||
|
|
||
|
All notable changes to this project will be documented in this file, in reverse chronological order by release.
|
||
|
|
||
|
## 3.2.1 - 2018-08-28
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#92](https://github.com/zendframework/zend-stdlib/pull/92) fixes serialization of `SplPriorityQueue` by ensuring its `$serial`
|
||
|
property is also serialized.
|
||
|
|
||
|
- [zendframework/zend-stdlib#91](https://github.com/zendframework/zend-stdlib/pull/91) fixes behavior in the `ArrayObject` implementation that was not
|
||
|
compatible with PHP 7.3.
|
||
|
|
||
|
## 3.2.0 - 2018-04-30
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- [zendframework/zend-stdlib#87](https://github.com/zendframework/zend-stdlib/pull/87) adds support for PHP 7.2.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- [zendframework/zend-stdlib#87](https://github.com/zendframework/zend-stdlib/pull/87) removes support for HHVM.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
## 3.1.1 - 2018-04-12
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- [zendframework/zend-stdlib#67](https://github.com/zendframework/zend-stdlib/pull/67) changes the typehint of the `$content` property
|
||
|
of the `Message` class to indicate it is a string. All known implementations
|
||
|
already assumed this.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#60](https://github.com/zendframework/zend-stdlib/pull/60) fixes an issue whereby calling `remove()` would
|
||
|
incorrectly re-calculate the maximum priority stored in the queue.
|
||
|
|
||
|
- [zendframework/zend-stdlib#60](https://github.com/zendframework/zend-stdlib/pull/60) fixes an infinite loop condition that can occur when
|
||
|
inserting an item at 0 priority.
|
||
|
|
||
|
## 3.1.0 - 2016-09-13
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- [zendframework/zend-stdlib#63](https://github.com/zendframework/zend-stdlib/pull/63) adds a new
|
||
|
`Laminas\Stdlib\ConsoleHelper` class, providing minimal support for writing
|
||
|
output to `STDOUT` and `STDERR`, with optional colorization, when the console
|
||
|
supports that feature.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- [zendframework/zend-stdlib#38](https://github.com/zendframework/zend-stdlib/pull/38) deprecates
|
||
|
`Laminas\Stdlib\JsonSerializable`, as all supported version of PHP now support
|
||
|
it.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
## 3.0.1 - 2016-04-12
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#59](https://github.com/zendframework/zend-stdlib/pull/59) fixes a notice
|
||
|
when defining the `Laminas\Json\Json::GLOB_BRACE` constant on systems using
|
||
|
non-gcc glob implementations.
|
||
|
|
||
|
## 3.0.0 - 2016-02-03
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- [zendframework/zend-stdlib#51](https://github.com/zendframework/zend-stdlib/pull/51) adds PHP 7 as a
|
||
|
supported PHP version.
|
||
|
- [zendframework/zend-stdlib#51](https://github.com/zendframework/zend-stdlib/pull/51) adds a migration
|
||
|
document from v2 to v3. Hint: if you use hydrators, you need to be using
|
||
|
laminas-hydrator instead!
|
||
|
- [zendframework/zend-stdlib#51](https://github.com/zendframework/zend-stdlib/pull/51) adds automated
|
||
|
documentation builds to gh-pages.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- [zendframework/zend-stdlib#33](https://github.com/zendframework/zend-stdlib/pull/33) - removed
|
||
|
deprecated classes
|
||
|
- *All Hydrator classes* see zendframework/zend-stdlib#22.
|
||
|
- `Laminas\Stdlib\CallbackHandler` see zendframework/zend-stdlib#35
|
||
|
- [zendframework/zend-stdlib#37](https://github.com/zendframework/zend-stdlib/pull/37) - removed
|
||
|
deprecated classes and polyfills:
|
||
|
- `Laminas\Stdlib\DateTime`; this had been deprecated since 2.5, and only
|
||
|
existed as a polyfill for the `createFromISO8601()` support, now standard
|
||
|
in all PHP versions we support.
|
||
|
- `Laminas\Stdlib\Exception\InvalidCallbackException`, which was unused since zendframework/zend-stdlib#33.
|
||
|
- `Laminas\Stdlib\Guard\GuardUtils`, which duplicated `Laminas\Stdlib\Guard\AllGuardsTrait`
|
||
|
to allow usage with pre-PHP 5.4 versions.
|
||
|
- `src/compatibility/autoload.php`, which has been dprecated since 2.5.
|
||
|
- [zendframework/zend-stdlib#37](https://github.com/zendframework/zend-stdlib/pull/37) - removed
|
||
|
unneeded dependencies:
|
||
|
- laminas-config (used only in testing ArrayUtils, and the test was redundant)
|
||
|
- laminas-serializer (no longer used)
|
||
|
- [zendframework/zend-stdlib#51](https://github.com/zendframework/zend-stdlib/pull/51) removes the
|
||
|
documentation for hydrators, as those are part of the laminas-hydrator
|
||
|
component.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
## 2.7.4 - 2015-10-15
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- [zendframework/zend-stdlib#35](https://github.com/zendframework/zend-stdlib/pull/35) deprecates
|
||
|
`Laminas\Stdlib\CallbackHandler`, as the one component that used it,
|
||
|
laminas-eventmanager, will no longer depend on it starting in v3.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
## 2.7.3 - 2015-09-24
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#27](https://github.com/zendframework/zend-stdlib/pull/27) fixes a race
|
||
|
condition in the `FastPriorityQueue::remove()` logic that occurs when removing
|
||
|
items iteratively from the same priority of a queue.
|
||
|
|
||
|
## 2.7.2 - 2015-09-23
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#26](https://github.com/zendframework/zend-stdlib/pull/26) fixes a subtle
|
||
|
inheritance issue with deprecation in the hydrators, and updates the
|
||
|
`HydratorInterface` to also extend the laminas-hydrator `HydratorInterface` to
|
||
|
ensure LSP is preserved.
|
||
|
|
||
|
## 2.7.1 - 2015-09-22
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#24](https://github.com/zendframework/zend-stdlib/pull/24) fixes an import in
|
||
|
`FastPriorityQueue` to alias `SplPriorityQueue` in order to disambiguate with
|
||
|
the local override present in the component.
|
||
|
|
||
|
## 2.7.0 - 2015-09-22
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- [zendframework/zend-stdlib#19](https://github.com/zendframework/zend-stdlib/pull/19) adds a new
|
||
|
`FastPriorityQueue` implementation. It follows the same signature as
|
||
|
`SplPriorityQueue`, but uses a performance-optimized algorithm:
|
||
|
|
||
|
- inserts are 2x faster than `SplPriorityQueue` and 3x faster than the
|
||
|
`Laminas\Stdlib\PriorityQueue` implementation.
|
||
|
- extracts are 4x faster than `SplPriorityQueue` and 4-5x faster than the
|
||
|
`Laminas\Stdlib\PriorityQueue` implementation.
|
||
|
|
||
|
The intention is to use this as a drop-in replacement in the
|
||
|
`laminas-eventmanager` component to provide performance benefits.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- [zendframework/zend-stdlib#20](https://github.com/zendframework/zend-stdlib/pull/20) deprecates *all
|
||
|
hydrator* classes, in favor of the new [laminas-hydrator](https://github.com/laminas/laminas-hydrator)
|
||
|
component. All classes were updated to extend their laminas-hydrator equivalents,
|
||
|
and marked as `@deprecated`, indicating the equivalent class from the other
|
||
|
repository.
|
||
|
|
||
|
Users *should* immediately start changing their code to use the laminas-hydrator
|
||
|
equivalents; in most cases, this can be as easy as removing the `Stdlib`
|
||
|
namespace from import statements or hydrator configuration. Hydrators will be
|
||
|
removed entirely from laminas-stdlib in v3.0, and all future updates to hydrators
|
||
|
will occur in the laminas-hydrator library.
|
||
|
|
||
|
Changes with backwards compatibility implications:
|
||
|
|
||
|
- Users implementing `Laminas\Stdlib\Hydrator\HydratorAwareInterface` will need to
|
||
|
update their `setHydrator()` implementation to typehint on
|
||
|
`Laminas\Hydrator\HydratorInterface`. This can be done by changing the import
|
||
|
statement for that interface as follows:
|
||
|
|
||
|
```php
|
||
|
// Replace this:
|
||
|
use Laminas\Stdlib\Hydrator\HydratorInterface;
|
||
|
// with this:
|
||
|
use Laminas\Hydrator\HydratorInterface;
|
||
|
```
|
||
|
|
||
|
If you are not using imports, change the typehint within the signature itself:
|
||
|
|
||
|
```php
|
||
|
// Replace this:
|
||
|
public function setHydrator(\Laminas\Stdlib\Hydrator\HydratorInterface $hydrator)
|
||
|
// with this:
|
||
|
public function setHydrator(\Laminas\Hydrator\HydratorInterface $hydrator)
|
||
|
```
|
||
|
|
||
|
If you are using `Laminas\Stdlib\Hydrator\HydratorAwareTrait`, no changes are
|
||
|
necessary, unless you override that method.
|
||
|
|
||
|
- If you were catching hydrator-generated exceptions, these were previously in
|
||
|
the `Laminas\Stdlib\Exception` namespace. You will need to update your code to
|
||
|
catch exceptions in the `Laminas\Hydrator\Exception` namespace.
|
||
|
|
||
|
- Users who *do* migrate to laminas-hydrator may end up in a situation where
|
||
|
their code will not work with existing libraries that are still type-hinting
|
||
|
on the laminas-stdlib interfaces. We will be attempting to address that ASAP,
|
||
|
but the deprecation within laminas-stdlib is necessary as a first step.
|
||
|
|
||
|
In the meantime, you can write hydrators targeting laminas-stdlib still in
|
||
|
order to guarantee compatibility.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
## 2.6.0 - 2015-07-21
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- [zendframework/zend-stdlib#13](https://github.com/zendframework/zend-stdlib/pull/13) adds
|
||
|
`Laminas\Stdlib\Hydrator\Iterator`, which provides mechanisms for hydrating
|
||
|
objects when iterating a traversable. This allows creating generic collection
|
||
|
resultsets; the original idea was pulled from
|
||
|
[PhlyMongo](https://github.com/phly/PhlyMongo), where it was used to hydrate
|
||
|
collections retrieved from MongoDB.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
## 2.5.2 - 2015-07-21
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#9](https://github.com/zendframework/zend-stdlib/pull/9) fixes an issue with
|
||
|
count incrementation during insert in PriorityList, ensuring that incrementation only
|
||
|
occurs when the item inserted was not previously present in the list.
|
||
|
|
||
|
## 2.4.4 - 2015-07-21
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Deprecated
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Nothing.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- [zendframework/zend-stdlib#9](https://github.com/zendframework/zend-stdlib/pull/9) fixes an issue with
|
||
|
count incrementation during insert in PriorityList, ensuring that incrementation only
|
||
|
occurs when the item inserted was not previously present in the list.
|