From 04181baa2cc758b9e8f25ec800507d1b47465faa Mon Sep 17 00:00:00 2001 From: Steve Boyd Date: Wed, 23 Oct 2024 13:32:27 +1300 Subject: [PATCH] DOC Update changelog with list interface changes --- en/08_Changelogs/6.0.0.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/en/08_Changelogs/6.0.0.md b/en/08_Changelogs/6.0.0.md index ecf7513a..ad2e8716 100644 --- a/en/08_Changelogs/6.0.0.md +++ b/en/08_Changelogs/6.0.0.md @@ -28,6 +28,7 @@ title: 6.0.0 (unreleased) - [Changes to some extension hook names](#hooks-renamed) - [Strict typing for `Factory` implementations](#factory-strict-typing) - [Elemental `TopPage` class names changed](#elemental-top-page) + - [List interface changes](#list-interface-changes) - [General changes](#api-general) - [Other changes](#other-changes) - [MySQL 5 no longer supported](#mysql-5-support) @@ -715,6 +716,12 @@ The class names for the `TopPage` feature in [`dnadesign/silverstripe-elemental` If you reference any of these classes in your project or module, most likely in config if you have [`tractorcow/silverstripe-fluent`](https://github.com/tractorcow/silverstripe-fluent) installed, then you will need to update the references to the new class names. +### List interface changes {#list-interface-changes} + +The [`SS_List`](api:SilverStripe\Model\List\SS_List) interface now includes the methods from the `Filterable`, `Limitable`, and `Sortable` interfaces, which have now been removed. This means that any class that implements `SS_List` must now also implement the methods from those interfaces. + +Many of the methods on `SS_List` are now strongly typed, along with the classes that implement it. This means that you will need to ensure that any custom classes that implement `SS_List` have the correct types for the methods that they implement. + ### General changes {#api-general} - [`DataObject::write()`](api:SilverStripe\ORM\DataObject::write()) has a new boolean `$skipValidation` parameter. This can be useful for scenarios where you want to automatically create a new record with no data initially without restricting how developers can set up their validation rules.