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