Skip to content

Releases: ramsey/collection

2.0.0

31 Dec 22:08
2.0.0
a4b4876
Compare
Choose a tag to compare

Added

  • Add support for CollectionInterface::reduce() (#87)
  • All exceptions now implement a base CollectionException interface
  • Introduce Sort enum
  • Support column(), sort(), and where() on non-object collection types

Changed

  • Minimum PHP version supported is 8.1
  • Every method now has parameter and return type hints; if extending classes or implementing interfaces, you may need to change method signatures to upgrade
  • The second parameter of CollectionInterface::sort() now uses the new Sort enum instead of a string
  • Audit all template annotations and clean up Psalm and PHPStan types for correctness; if using static analysis in projects, this may require changes to your type annotations
  • ArrayInterface no longer extends \Serializable, and the serialize() and unserialize() methods have been removed from AbstractArray; however, AbstractArray still supports serialization through implementing __serialize() and __unserialize()

1.3.0

27 Dec 19:17
1.3.0
ad7475d
Compare
Choose a tag to compare

Fixed

  • Make type aliases compatible in diff, intersect, and merge (#111)
  • Use offsetUnset() method to remove from the collection in AbstractCollection (#104)
  • Use the correct base type of array-key for template K on AbstractTypedMap

Changed

  • Minimum PHP version supported is 7.4

1.2.2

10 Oct 03:04
1.2.2
cccc74e
Compare
Choose a tag to compare

Fixed

  • Merging of sets now excludes duplicates, since a set does not allow duplicate values.

1.2.1

06 Aug 03:44
1.2.1
eaca1dc
Compare
Choose a tag to compare

Fixed

  • Standardize template annotations and fix iterable types

1.2.0

05 Aug 14:55
1.2.0
4d85fbc
Compare
Choose a tag to compare

Added

  • Support PHP 8.1.0

Changed

  • Minimum PHP version supported is 7.3

1.1.4

30 Jul 01:00
1.1.4
ab22376
Compare
Choose a tag to compare

Fixed

  • Fixed incorrect callable type annotation on CollectionInterface::map().

1.1.3

21 Jan 17:41
1.1.3
28a5c4a
Compare
Choose a tag to compare

Fixed

  • Fixed incorrect callable type annotation on CollectionInterface::map().

1.1.2

21 Jan 02:14
1.1.2
a2a85f5
Compare
Choose a tag to compare

Fixed

  • Fixed Psalm annotations causing Psalm errors in downstream projects.
  • Fixed AbstractCollection::column() attempting to access a property or method on a non-object.

1.1.1

10 Sep 21:21
1.1.1
24d93ae
Compare
Choose a tag to compare

Fixed

  • Fixed broken AbstractCollection::map() implementation.

1.1.0

11 Aug 00:58
1.1.0
0441848
Compare
Choose a tag to compare

Fixed

  • Fixed AbstractCollection::diff(), AbstractCollection::intersect() and
    AbstractCollection::merge() when used with Generic collections.
  • Fixed AbstractCollection::diff() and AbstractCollection::intersect()
    returning inconsistent results when used on collections containing objects.
  • Removed warning about deprecated dependency when running composer install