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.
- Add $flags to unique, default to SORT_REGULAR
- Add
Ar::splice - Drop support for php 7
- Add types to callable parameters and return.
- Fix wrong ArFluent return types.
- Fix php 8.1 deprecation messages.
- Use generic PHPdoc everywhere using
@Template. This should allow for correct type interference in static analysers like PHPStan, Psalm.
- Changed behaviour of
Ar::filterandAr::uniqueValuesto automatically preserve keys only when logical based on the newarray_is_listfunction. A polyfill for this function is loaded for lower PHP versions.
- Removed
Ar::filterValuesuseAr::filter - Removed
Ar::uniqueValuesuseAr::unique - Removed
Ar::newuseAr::wrap - Removed PHP 7.2 support
- Use
iterabletypehint everywhere - Add
Ar::merge.
- Add
Ar::unique. - Add
Ar::uniqueValues.
- Require PHP version 7.2 minimum
- Add
Ar::first. - Add
Ar::last. - Add
Ar::unshift. - Add
Ar::push.
- Add
Ar::unique. - Add
Ar::wrapas the preferred syntax instead ofAr::new, as it's nice and symmetric with->unwrap().
- Throw ArgumentException when not passing in an array or iterable.
- Add
implode - Add
filterValues - Add
keys - Add
values
- 100% code coverage in tests
- Allow iterable everywhere.
- Make ArFluent immutable.
- Improve tests.
- Allow iterable everywhere.
- Make ArFluent immutable.
- Improve tests.
- Initial release