diff --git a/en/00_Getting_Started/00_Server_Requirements.md b/en/00_Getting_Started/00_Server_Requirements.md index e6c558169..023f53a90 100644 --- a/en/00_Getting_Started/00_Server_Requirements.md +++ b/en/00_Getting_Started/00_Server_Requirements.md @@ -277,7 +277,7 @@ table may be of use: | 5.2 + | 8.1 - 8.3 | | 5.0 - 5.1 | 8.1 - 8.2 | -From Silverstripe CMS 5 onwards, the [Silverstripe CMS major release policy](/project_governance/major_release_policy#php-support-commitments) guides which PHP versions are supported by which Silverstripe CMS release. +The [Silverstripe CMS major release policy](/project_governance/major_release_policy#php-support-commitments) guides which PHP versions are supported by which Silverstripe CMS release. ## CMS browser requirements diff --git a/en/00_Getting_Started/02_Composer.md b/en/00_Getting_Started/02_Composer.md index ea8b0da37..890db646a 100644 --- a/en/00_Getting_Started/02_Composer.md +++ b/en/00_Getting_Started/02_Composer.md @@ -54,10 +54,10 @@ This will get all the code that you need. As long as your web server and databas visit the site in your web browser and the installation process will be completed. You can also specify a constraint to download explicit versions or set boundary conditions for what versions Composer is allowed to install. -For example, this will download the latest patch of the `4.13` release: +For example, this will download the latest patch of the `6.0` release: ```bash -composer create-project silverstripe/installer ./my-project ^4.13 +composer create-project silverstripe/installer ./my-project ^6.0 ``` Learn more about Composer constraints in [the official composer documentation](https://getcomposer.org/doc/articles/versions.md#writing-version-constraints) @@ -74,21 +74,21 @@ You can find thousands of Silverstripe CMS modules on [Packagist](https://packag Installing a module can be done with [the require command](https://getcomposer.org/doc/03-cli.md#require-r): ```bash -composer require silverstripe/blog +composer require dnadesign/silverstripe-elemental ``` -This will install the `silverstripe/blog` module in the latest compatible version. If you know the specific version you -want to install already (such as `^2`), you can add it after the package name as +This will install the `dnadesign/silverstripe-elemental` module in the latest compatible version. If you know the specific version you +want to install already (such as `^6`), you can add it after the package name as a [version constraint](https://getcomposer.org/doc/articles/versions.md#writing-version-constraints): ```bash -composer require silverstripe/blog ^2 +composer require dnadesign/silverstripe-elemental ^6 ``` > [!WARNING] > **Version constraints:** `master` or `main` is not a legal version string - it's a branch name. These are different things. The > version string that would get you the branch is `dev-main`. The version string that would get you a numeric branch is -> a little different. The version string for the `5` branch is `5.x-dev`. +> a little different. The version string for the `6` branch is `6.x-dev`. ## Updating dependencies @@ -150,12 +150,12 @@ things in order to be able to do this: The first two steps are done as part of the initial create project using additional arguments. ```bash -composer create-project --keep-vcs silverstripe/installer ./my-project 5.x-dev --prefer-source +composer create-project --keep-vcs silverstripe/installer ./my-project 6.x-dev --prefer-source ``` The process will take a bit longer, since all modules are checked out as full git repositories which you can work on. -The command checks out from the 5.x release line. If you are providing a patch to fix a bug, replace `5.x-dev` with the -latest minor branch instead, e.g. `5.1.x-dev` if the latest minor release was for CMS 5.1. +The command checks out from the 6.x release line. If you are providing a patch to fix a bug, replace `6.x-dev` with the +latest minor branch instead, e.g. `6.1.x-dev` if the latest minor release was for CMS 6.1. The `--keep-vcs` flag will make sure you have access to the git history of the installer and the requirements. @@ -184,14 +184,14 @@ file. It will appear in your project root, and by default, it will look somethin "description": "The SilverStripe Framework Installer", "require": { "php": "^8.3", - "silverstripe/recipe-plugin": "^2", - "silverstripe/vendor-plugin": "^2", - "silverstripe/recipe-cms": "~5.0.0@stable", - "silverstripe-themes/simple": "~3.2.0", - "silverstripe/login-forms": "~5.0.0@stable" + "silverstripe/recipe-plugin": "~2.0.1@stable", + "silverstripe/vendor-plugin": "~2.0.3@stable", + "silverstripe/recipe-cms": "~6.0.0@stable", + "silverstripe-themes/simple": "~3.2.0@stable", + "silverstripe/login-forms": "~6.0.0@stable" }, "require-dev": { - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^11.3" }, "extra": { "project-files-installed": [ @@ -249,13 +249,13 @@ This is a two step process. First you get Composer to start a project based on t silverstripe/installer ```bash -composer create-project silverstripe/installer ./my-project 5.x-dev +composer create-project silverstripe/installer ./my-project 6.x-dev ``` -Or for the latest development version in the 5.0.x minor release (i.e. if you're developing a bug fix) +Or for the latest development version in the 6.0.x minor release (i.e. if you're developing a bug fix) ```bash -composer create-project silverstripe/installer ./my-project 5.0.x-dev +composer create-project silverstripe/installer ./my-project 6.0.x-dev ``` ### Working with project forks and unreleased modules @@ -325,12 +325,12 @@ the ["Repositories" chapter of the Composer documentation](https://getcomposer.o #### Forks and branch names For simplicity, you should keep using the same pattern of branch names as the main repositories does. If your version is a -fork of 5.0, then call the branch `5.0`, not `5.0-myproj` or `myproj`. Otherwise, the dependency resolution gets +fork of 6.0, then call the branch `6.0`, not `6.0-myproj` or `myproj`. Otherwise, the dependency resolution gets confused. Sometimes, however, this isn't feasible. For example, you might have a number of project forks stored in a single repository, such as your personal GitHub fork of a project. Or you might be testing/developing a feature branch. Or it -might just be confusing to other team members to call the branch of your modified version `5.0`. +might just be confusing to other team members to call the branch of your modified version `6.0`. In this case, you need to use Composer's aliasing feature to specify how you want the project branch to be treated, when it comes to dependency resolution. @@ -341,15 +341,15 @@ Open `composer.json`, and find the module's `require`. Then put `as (core versio { "require": { "php": "^8.3", - "silverstripe/recipe-cms": "~5.0.0@stable", - "silverstripe/framework": "dev-myproj as 5.0.0", + "silverstripe/recipe-cms": "~6.0.0@stable", + "silverstripe/framework": "dev-myproj as 6.0.0", "silverstripe-themes/simple": "~3.2.0" } } ``` What this means is that when the `myproj` branch is checked out into a project, this will satisfy any dependencies -that `5.0.0` would meet. So, if another module has `"silverstripe/framework": "^5.0.0"` in its dependency list, it +that `6.0.0` would meet. So, if another module has `"silverstripe/framework": "^6.0.0"` in its dependency list, it won't get a conflict. Both the version and the alias are specified as Composer versions, not branch names. For the relationship between diff --git a/en/02_Developer_Guides/01_Templates/02_Common_Variables.md b/en/02_Developer_Guides/01_Templates/02_Common_Variables.md index 7c5c41f66..233d55290 100644 --- a/en/02_Developer_Guides/01_Templates/02_Common_Variables.md +++ b/en/02_Developer_Guides/01_Templates/02_Common_Variables.md @@ -115,18 +115,18 @@ on a per-page basis. > [!WARNING] > If you don’t want to include the title tag use `$MetaTags(false)`. -By default `$MetaTags` renders (assuming 5.1.0 is the current version of `silverstripe/framework`): +By default `$MetaTags` renders (assuming 6.0.0 is the current version of `silverstripe/framework`): ```html Title of the Page - + ``` `$MetaTags(false)` will render ```html - + ``` diff --git a/en/02_Developer_Guides/05_Extending/00_Modules.md b/en/02_Developer_Guides/05_Extending/00_Modules.md index 6bb824114..0d9760d13 100644 --- a/en/02_Developer_Guides/05_Extending/00_Modules.md +++ b/en/02_Developer_Guides/05_Extending/00_Modules.md @@ -34,12 +34,12 @@ enables you to install modules from specific versions, checking for compatibilit to track development branches of them. To install modules using this method, you will first need to setup Silverstripe CMS with [Composer](../../getting_started/composer). -Each module has a unique identifier, consisting of a vendor prefix and name. For example, the "blog" module has the -identifier `silverstripe/blog` as it is published by *Silverstripe*. To install, use the following command executed in +Each module has a unique identifier, consisting of a vendor prefix and name. For example, the "linkfield" module has the +identifier `silverstripe/linkfield` as it is published by *Silverstripe*. To install, use the following command executed in the project root folder: ```bash -composer require silverstripe/blog +composer require silverstripe/linkfield ``` This will fetch the latest compatible stable version of the module. @@ -76,7 +76,7 @@ You can either edit the file directly in GitHub, or you can clone the repository using this directory to update the `composer.json` file. Once that's updated in the repository, you'll use Composer to include your module in a Silverstripe CMS project and do your development from there. -Here is an example for a module that builds on the functionality provided by the `silverstripe/blog` module, so it has that module as a dependency: +Here is an example for a module that builds on the functionality provided by the `silverstripe/linkfield` module, so it has that module as a dependency: ```json { @@ -84,9 +84,9 @@ Here is an example for a module that builds on the functionality provided by the "description": "Short module description", "type": "silverstripe-vendormodule", "require": { - "silverstripe/framework": "^5.0", - "silverstripe/cms": "^5.0", - "silverstripe/blog": "^5.0" + "silverstripe/framework": "^6.0", + "silverstripe/cms": "^6.0", + "silverstripe/linkfield": "^5.0" } } ``` @@ -170,7 +170,7 @@ which the Silverstripe CMS project applies to the modules it creates and maintai - `tests/` (for `*Test.php` test files), and; - `_config/` (for `.yml` config files) - The module is a Composer package. -- All Composer dependencies are bound to a single major release (e.g. `^5.0` not `>=5` or `*`) unless there are obvious reasons not to for some specific dependency. +- All Composer dependencies are bound to a single major release (e.g. `^6.0` not `>=6`) unless there are obvious reasons not to for some specific dependency. - There is a level of test coverage. - Uses strong typing where appropriate. - A clear [public API](/project_governance/public_api/) documented in the docblock tags. diff --git a/en/02_Developer_Guides/05_Extending/How_Tos/01_Publish_a_Module.md b/en/02_Developer_Guides/05_Extending/How_Tos/01_Publish_a_Module.md index 57f089b20..770dd2d81 100644 --- a/en/02_Developer_Guides/05_Extending/How_Tos/01_Publish_a_Module.md +++ b/en/02_Developer_Guides/05_Extending/How_Tos/01_Publish_a_Module.md @@ -37,8 +37,8 @@ For more information about what your `composer.json` file should include, consul "issues": "https://github.com/my-vendor/my-module/issues" }, "require": { - "silverstripe/cms": "^5", - "silverstripe/framework": "^5" + "silverstripe/cms": "^6", + "silverstripe/framework": "^6" }, "autoload": { "psr-4": { @@ -77,19 +77,19 @@ By using Composer, this is made easy for developers by allowing them to specify version of your module should be a separate branch in your version control and each branch should have a `composer.json` file explicitly defining what versions of Silverstripe CMS you support. -Say you have a module which supports Silverstripe CMS 5.0. A new release of this module takes advantage of new features -in Silverstripe CMS 5.1. In this case, you would create a new branch for the 5.0 compatible code base of your module. This +Say you have a module which supports Silverstripe CMS 6.0. A new release of this module takes advantage of new features +in Silverstripe CMS 6.1. In this case, you would create a new branch for the 6.0 compatible code base of your module. This allows you to continue fixing bugs on this older release branch. Other branches should be created on your module as needed if they're required to support specific Silverstripe CMS releases. -You can have an overlap in supported versions, e.g two branches in your module both support Silverstripe CMS 5.0. In this +You can have an overlap in supported versions, e.g two branches in your module both support Silverstripe CMS 6.0. In this case, you should explain the differences in your `README.md` file. Here's some common values for your `require` section (see [getcomposer.org](https://getcomposer.org/doc/01-basic-usage.md#package-versions) for details): -- `5.0.*`: Version `5.0`, including `5.0.1`, `5.0.2` etc, excluding `5.1` -- `~5.0`: Version `5.0` or higher, including `5.0.1` and `5.1` etc, excluding `6.0` -- `~5.0,<5.2`: Version `5.0` or higher, up until `5.2`, which is excluded -- `~5.0,>5.0.4`: Version `5.0` or higher, starting with `5.0.4` +- `6.0.*`: Version `6.0`, including `6.0.1`, `6.0.2` etc, excluding `6.1` +- `~6.0`: Version `6.0` or higher, including `6.0.1` and `6.1` etc, excluding `7.0` +- `~6.0,<6.2`: Version `6.0` or higher, up until `6.2`, which is excluded +- `~6.0,>6.0.4`: Version `6.0` or higher, starting with `6.0.4` diff --git a/en/02_Developer_Guides/20_Deprecations/index.md b/en/02_Developer_Guides/20_Deprecations/index.md index aa6b7b054..bdc3be4af 100644 --- a/en/02_Developer_Guides/20_Deprecations/index.md +++ b/en/02_Developer_Guides/20_Deprecations/index.md @@ -19,7 +19,7 @@ going to be removed and how they need to update their code. - Add a `@deprecated` item to the docblock tag, with the version when the code was deprecated and a message indicating what to use instead. - Update the deprecated code to throw a [Deprecation::notice()](api:SilverStripe\Dev\Deprecation::notice()) warning. - Both the docblock and error message should contain the **version** where the functionality is deprecated from. - So, if you're committing the change to a *4.12* minor release, the version will be *4.12.0*. + So, if you're committing the change to a *1.2* minor release, the version will be *1.2.0*. - Make sure that the old deprecated method works by calling the new function where possible - avoid duplicated code. - Deprecated APIs can be removed only after developers have had sufficient time to react to the changes. Hence, deprecated APIs should be removed in major releases only. Between major releases, leave the code in place with a deprecation warning. @@ -28,21 +28,21 @@ going to be removed and how they need to update their code. When deprecating a method: -- Add the following docblock `@deprecated 1.2.3 Use anotherMethod() instead` -- `Deprecation::notice('1.2.3', 'Use anotherMethod() instead');` to the top of the method +- Add the following docblock `@deprecated 1.2.0 Use anotherMethod() instead` +- `Deprecation::notice('1.2.0', 'Use anotherMethod() instead');` to the top of the method - Wrap `Deprecation::notice()` with `Deprecation::withSuppressedNotice()` if there's no replacement for that deprecated method and it's not feasible to wrap all calls to the method When deprecating a class: -- Add the following docblock `@deprecated 1.2.3 Use AnotherClass instead` -- Add `Deprecation::notice('1.2.3', 'Use AnotherClass instead', Deprecation::SCOPE_CLASS);` to the top of `__construct()` +- Add the following docblock `@deprecated 1.2.0 Use AnotherClass instead` +- Add `Deprecation::notice('1.2.0', 'Use AnotherClass instead', Deprecation::SCOPE_CLASS);` to the top of `__construct()` - Wrap `Deprecation::notice()` with `Deprecation::withSuppressedNotice()` if there's no replacement for that deprecated class and it's not feasible to wrap all instantiations of the class ```php namespace App; /** - * @deprecated 4.12.0 Will be removed without equivalent functionality + * @deprecated 1.2.0 Will be removed without equivalent functionality */ class MyDeprecatedClass extends AnotherClass { @@ -50,7 +50,7 @@ When deprecating a class: { Deprecation::withSuppressedNotice(function () { Deprecation::notice( - '4.12.0', + '1.2.0', 'Will be removed without equivalent functionality', Deprecation::SCOPE_CLASS ); @@ -62,11 +62,11 @@ When deprecating a class: When deprecating config: -- Add the following docblock `@deprecated 1.2.3 Use different_config instead` +- Add the following docblock `@deprecated 1.2.0 Use different_config instead` When deprecating some behaviour, combination of configuration values, parameters, etc: -- Add `Deprecation::notice('1.2.3', 'Using x with y is deprecated. Do [other thing] instead', Deprecation::SCOPE_GLOBAL);` +- Add `Deprecation::notice('1.2.0', 'Using x with y is deprecated. Do [other thing] instead', Deprecation::SCOPE_GLOBAL);` - It may not be immediately clear where this type of deprecation warning should go. In that case, add it to the `HTTPApplication::warnAboutDeprecatedSetups()` method. - It may be appropriate to link to some documentation in the message for this type of deprecation warning. @@ -123,18 +123,18 @@ class Director /** * Returns true if your are in development mode - * @deprecated 4.12.0 Use SilverStripe\Core\Env::is_dev() instead. + * @deprecated 1.2.0 Use SilverStripe\Core\Env::is_dev() instead. */ public function isDev() { - Deprecation::notice('4.12.0', 'Use SilverStripe\Core\Env::is_dev() instead'); + Deprecation::notice('1.2.0', 'Use SilverStripe\Core\Env::is_dev() instead'); return Env::is_dev(); } } ``` -This change could be committed to a minor release like *4.12.0*, and remains deprecated in all subsequent minor releases -(e.g. *4.13.0*), until a new major release (e.g. *5.0.0*), at which point it gets removed from the codebase. +This change could be committed to a minor release like *1.2.0*, and remains deprecated in all subsequent minor releases +(e.g. *1.3.0*), until a new major release (e.g. *2.0.0*), at which point it gets removed from the codebase. ## Enabling deprecation warnings diff --git a/en/06_Upgrading/01_Keeping_projects_up_to_date.md b/en/06_Upgrading/01_Keeping_projects_up_to_date.md index a2bfe28c0..633334c6c 100644 --- a/en/06_Upgrading/01_Keeping_projects_up_to_date.md +++ b/en/06_Upgrading/01_Keeping_projects_up_to_date.md @@ -29,13 +29,13 @@ Assuming your project is using one of the [supported recipes](/getting_started/r To upgrade your code, open the root `composer.json` file. Find the lines that reference the recipes, like `silverstripe/recipe-cms` and change the referenced versions to what has been reference in the changelog (as well as any other modules that have a new version). -For example, assuming that you are currently on version `~5.0.0@stable`, if you wish to upgrade to 5.1.0 you will need to modify your `composer.json` file to explicitly specify the new release branch, here `~5.1.0`: +For example, assuming that you are currently on version `~6.0.0@stable`, if you wish to upgrade to 6.1.0 you will need to modify your `composer.json` file to explicitly specify the new release branch, here `~6.1.0`: ```json { ... "require": { - "silverstripe/recipe-cms": "~5.1.0" + "silverstripe/recipe-cms": "~6.1.0" }, ... } @@ -45,7 +45,7 @@ You now need to pull in new dependencies and commit the lock file: ```bash composer update -git commit composer.* -m "Upgrade to recipe 5.1.0" +git commit composer.* -m "Upgrade to recipe 6.1.0" ``` Push this commit to your remote repository, and continue with your deployment workflow. diff --git a/en/06_Upgrading/07_Deprecations.md b/en/06_Upgrading/07_Deprecations.md index 6a2c9e59e..526d8b95a 100644 --- a/en/06_Upgrading/07_Deprecations.md +++ b/en/06_Upgrading/07_Deprecations.md @@ -33,7 +33,7 @@ Deprecation::enable(); Once you have resolved all of the deprecation warnings you can, it is recommended to turn off deprecation warnings again. -Not all API that gets deprecated will have an equivalent replacement API in that same major version; some of the API is only available from the next major release. A good example of this is the upgrade for what powered the `SilverStripe\Control\Email\Email` class from `swiftmailer` in CMS 4 to `symfony/mailer` in CMS 5. In these cases, you'll need to upgrade to the new major version before you can access the replacement API. +Not all API that gets deprecated will have an equivalent replacement API in that same major version; some of the API is only available from the next major release. In these cases, you'll need to upgrade to the new major version before you can access the replacement API. Some code that has been deprecated with no immediate replacement will not emit deprecation notices by default. If you wish to also see notices for deprecated code with no immediate replacement, add the following line to you project's `app/_config.php` file: diff --git a/en/06_Upgrading/index.md b/en/06_Upgrading/index.md index 4c48a8bfb..d95349d46 100644 --- a/en/06_Upgrading/index.md +++ b/en/06_Upgrading/index.md @@ -1,12 +1,12 @@ --- title: Upgrading -summary: The following guides will help you upgrade your project or module to Silverstripe CMS 5. +summary: The following guides will help you upgrade your project or module to Silverstripe CMS 6. --- # Upgrading The following guides will help you upgrade your project. -There are also key points to help you upgrade your project or module to Silverstripe CMS 5. Upgrading a module is very similar to upgrading a Project. The module upgrade guide assumes familiarity with the project upgrade guide. +There are also key points to help you upgrade your project or module to Silverstripe CMS 6. Upgrading a module is very similar to upgrading a Project. The module upgrade guide assumes familiarity with the project upgrade guide. [CHILDREN includeFolders] diff --git a/en/08_Changelogs/5.0.0.md b/en/08_Changelogs/5.0.0.md deleted file mode 100644 index 2d1055c90..000000000 --- a/en/08_Changelogs/5.0.0.md +++ /dev/null @@ -1,3239 +0,0 @@ ---- -title: 5.0.0 ---- - -# 5.0.0 - -Silverstripe CMS 5.0.0 is the first major release since November 2017. It's also the first major release since the adoption of a formal [Major Release Policy](/project_governance/major_release_policy). - -This release contains many breaking changes and dependency upgrades. We tried our best to minimise upgrades woes, but you should allocate additional time to account for regression testing. - -This changelog provides a list of changes between Silverstripe CMS 4.13 and 5.0. - -## Overview - -- [Change to commercially supported modules](#supported-modules) - - [Modules with upgrade guides](#modules-with-upgrade-guides) - - [Modules not supported going forward](#modules-not-supported-going-forward) -- [Fixed dependencies](#fixed-dependencies) -- [Dependency changes](#dependency-changes) - - [General changes](#dep-general) - - [Composer](#composer) - - [TinyMCE upgraded from 4 to 6](#tinymce6) -- [Front-end build stack upgrades](#front-end) - - [Webpack config](#webpack-config) - - [Updated JavaScript dependencies](#updated-javascript-dependencies) - - [Common upgrade patterns](#common-upgrade-patterns) - - [Breaking changes in *our* JavaScript components or API](#js-api) -- [Other Breaking Changes](#other-breaking-changes) - - [URLs generated by Silverstripe CMS don't include a trailing slash by default](#trailing-slash) - - [CWP Agency Extensions](#cwp-agency-extensions) - - [silverstripe/security-extensions module is folded into core](#security-extensions-is-core) -- [Features and enhancements](#features-and-enhancements) - - [Extension changes](#extension-changes) - - [Other new features](#other-features) -- [Environment variable changes](#environment-variable-changes) -- [Bug fixes](#bug-fixes) -- [API changes](#api-changes) - - [General changes](#api-general) - - [Email](#api-email) - - [ORM](#api-orm) - - [Dynamic properties](#dynamic-properties) - - [Templates](#templates) -- [Full list of removed and changed API (by module, alphabetically)](#api-removed-and-changed) -- [Full commits list](#full-commits-list) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.0.0 | -| bringyourownideas/silverstripe-maintenance | 3.0.0 | -| colymba/gridfield-bulk-editing-tools | 4.0.0 | -| cwp/agency-extensions | 3.0.0 | -| cwp/cwp | 3.0.0 | -| cwp/cwp-core | 3.0.0 | -| cwp/cwp-search | 2.0.0 | -| cwp/starter-theme | 4.0.0 | -| cwp/watea-theme | 4.0.0 | -| dnadesign/silverstripe-elemental | 5.0.0 | -| dnadesign/silverstripe-elemental-userforms | 4.0.0 | -| silverstripe/admin | 2.0.0 | -| silverstripe/asset-admin | 2.0.0 | -| silverstripe/assets | 2.0.0 | -| silverstripe/auditor | 3.0.0 | -| silverstripe/blog | 4.0.0 | -| silverstripe/campaign-admin | 2.0.0 | -| silverstripe/ckan-registry | 2.0.0 | -| silverstripe/cms | 5.0.0 | -| silverstripe/comment-notifications | 3.0.0 | -| silverstripe/comments | 4.0.0 | -| silverstripe/config | 2.0.0 | -| silverstripe/content-widget | 3.0.0 | -| silverstripe/contentreview | 5.0.0 | -| silverstripe/crontask | 3.0.0 | -| silverstripe/developer-docs | 5.0.0 | -| silverstripe/documentconverter | 3.0.0 | -| silverstripe/dynamodb | 5.0.0 | -| silverstripe/elemental-bannerblock | 3.0.0 | -| silverstripe/elemental-fileblock | 3.0.0 | -| silverstripe/environmentcheck | 3.0.0 | -| silverstripe/errorpage | 2.0.0 | -| silverstripe/externallinks | 3.0.0 | -| silverstripe/framework | 5.0.0 | -| silverstripe/fulltextsearch | 4.0.0 | -| silverstripe/graphql | 5.0.0 | -| silverstripe/gridfieldqueuedexport | 3.0.0 | -| silverstripe/hybridsessions | 3.0.0 | -| silverstripe/iframe | 3.0.0 | -| silverstripe/installer | 5.0.0 | -| silverstripe/ldap | 2.0.0 | -| silverstripe/login-forms | 5.0.0 | -| silverstripe/lumberjack | 3.0.0 | -| silverstripe/mfa | 5.0.0 | -| silverstripe/mimevalidator | 3.0.0 | -| silverstripe/realme | 5.0.0 | -| silverstripe/recipe-authoring-tools | 2.0.0 | -| silverstripe/recipe-blog | 2.0.0 | -| silverstripe/recipe-ccl | 3.0.0 | -| silverstripe/recipe-cms | 5.0.0 | -| silverstripe/recipe-collaboration | 2.0.0 | -| silverstripe/recipe-content-blocks | 3.0.0 | -| silverstripe/recipe-core | 5.0.0 | -| silverstripe/recipe-form-building | 2.0.0 | -| silverstripe/recipe-kitchen-sink | 5.0.0 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.0.0 | -| silverstripe/recipe-services | 2.0.0 | -| silverstripe/recipe-solr-search | 3.0.0 | -| silverstripe/registry | 3.0.0 | -| silverstripe/reports | 5.0.0 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.0.0 | -| silverstripe/segment-field | 3.0.0 | -| silverstripe/session-manager | 2.0.0 | -| silverstripe/sharedraftcontent | 3.0.0 | -| silverstripe/siteconfig | 5.0.0 | -| silverstripe/sitewidecontent-report | 4.0.0 | -| silverstripe/spamprotection | 4.0.0 | -| silverstripe/staticpublishqueue | 6.0.0 | -| silverstripe/subsites | 3.0.0 | -| silverstripe/tagfield | 3.0.0 | -| silverstripe/taxonomy | 3.0.0 | -| silverstripe/textextraction | 4.0.0 | -| silverstripe/totp-authenticator | 5.0.0 | -| silverstripe/userforms | 6.0.0 | -| silverstripe/vendor-plugin | 2.0.0 | -| silverstripe/versioned | 2.0.0 | -| silverstripe/versioned-admin | 2.0.0 | -| silverstripe/versionfeed | 3.0.0 | -| silverstripe/webauthn-authenticator | 5.0.0 | -| silverstripe/widgets | 3.0.0 | -| symbiote/silverstripe-advancedworkflow | 6.0.0 | -| symbiote/silverstripe-gridfieldextensions | 4.0.0 | -| symbiote/silverstripe-multivaluefield | 6.0.0 | -| symbiote/silverstripe-queuedjobs | 5.0.0 | -| tractorcow/silverstripe-fluent | 7.0.0 | - -
- -## Change to supported modules {#supported-modules} - -Some Silverstripe CMS modules are commercially supported. Silverstripe commits to looking after those modules for the duration of the Silverstripe CMS 5 lifecycle. - -Review the list of [Commercially Supported Modules for Silverstripe CMS 5](/project_governance/supported_modules). - -### Modules with upgrade guides - -`silverstripe/graphql` and `tractorcow/silverstripe-fluent` each have multiple major release lines which are compatible with Silverstripe CMS 4. If you use either of these modules, you should upgrade to the latest CMS 4 compatible version *before* upgrading to CMS 5. - -- [Upgrade guide for `silverstripe/graphql`](https://docs.silverstripe.org/en/4/upgrading/upgrading_to_graphql_4) -- [Upgrade guide for `tractorcow/silverstripe-fluent`](https://docs.silverstripe.org/en/4/upgrading/upgrading_fluent) - -### Modules not supported going forward - -Some modules that were commercially supported in Silverstripe CMS 4 are not supported in Silverstripe CMS 5. Some of those modules provide CMS5-compatible versions. Others have been dropped altogether. - -Just because a module is not "commercially supported", doesn't mean that you shouldn't be using it. Community supported modules are maintained on a "best-effort" basis. You should take this into consideration when choosing to install a community supported module in your project. - -Email [community@silverstripe.org](mailto:community@silverstripe.org) if you are keen to help maintain some of the modules that are no longer commercially supported. - -Module | Status | Notes --- | -- | -- -[bringyourownideas/silverstripe-composer-security-checker](https://packagist.org/packages/bringyourownideas/silverstripe-composer-security-checker) | Dropped | Underlying service has been discontinued. -[composer/installers](https://packagist.org/packages/composer/installers) | Removed | Calling Composer a "supported module" was nonsensical. The Silverstripe CMS development team has no access to manage Composer or the underlying Packagist service. Composer is a development tool required to build Silverstripe CMS sites, not a module maintained by Silverstripe. | -[cwp-themes/default](https://packagist.org/packages/cwp-themes/default) | Dropped | -[cwp/cwp](https://packagist.org/packages/cwp/cwp) | CMS5 compatible without commercial support | -[cwp/cwp-core](https://packagist.org/packages/cwp/cwp-core) | CMS5 compatible without commercial support | -[cwp/cwp-pdfexport](https://packagist.org/packages/cwp/cwp-pdfexport) | Dropped | -[cwp/cwp-search](https://packagist.org/packages/cwp/cwp-search) | CMS5 compatible without commercial support | -[dnadesign/silverstripe-elemental-subsites](https://packagist.org/packages/dnadesign/silverstripe-elemental-subsites) | Dropped | Elemental works fine with Subsite out-of-the-box. -[hafriedlander/phockito](https://packagist.org/packages/hafriedlander/phockito) | Dropped | -[hafriedlander/silverstripe-phockito](https://packagist.org/packages/hafriedlander/silverstripe-phockito) | Dropped | -[lekoala/silverstripe-debugbar](https://packagist.org/packages/lekoala/silverstripe-debugbar) | CMS5 compatible without commercial support | Debug bar is a development tool that should not be installed in production. -[silverstripe/activedirectory](https://packagist.org/packages/silverstripe/activedirectory) | Dropped | This module was split into two separate modules. Use the [silverstripe/saml](https://github.com/silverstripe/silverstripe-saml) and/or [silverstripe/ldap](https://github.com/silverstripe/silverstripe-ldap) modules depending on your needs. Note that the `silverstripe/saml` module is not commercially supported. | -[silverstripe/akismet](https://packagist.org/packages/silverstripe/akismet) | Dropped | The parent library is outdated and there are better alternatives like [UndefinedOffset/silverstripe-nocaptcha](https://packagist.org/packages/undefinedoffset/silverstripe-nocaptcha) -[silverstripe/behat-extension](https://packagist.org/packages/silverstripe/behat-extension) | CMS5 compatible without commercial support | -[silverstripe/ckan-registry](https://packagist.org/packages/silverstripe/ckan-registry) | CMS5 compatible without commercial support | -[silverstripe/comment-notifications](https://packagist.org/packages/silverstripe/comment-notifications) | CMS5 compatible without commercial support | -[silverstripe/comments](https://packagist.org/packages/silverstripe/comments) | CMS5 compatible without commercial support | -[silverstripe/content-widget](https://packagist.org/packages/silverstripe/content-widget) | CMS5 compatible without commercial support | -[silverstripe/fulltextsearch](https://packagist.org/packages/silverstripe/fulltextsearch) | CMS5 compatible without commercial support | -[silverstripe/graphql-devtools](https://packagist.org/packages/silverstripe/graphql-devtools) | CMS5 compatible without commercial support | -[silverstripe/html5](https://packagist.org/packages/silverstripe/html5) | Folded back in core | -[silverstripe/postgresql](https://packagist.org/packages/silverstripe/postgresql) | CMS5 compatible without commercial support | -[silverstripe/recipe-ccl](https://packagist.org/packages/silverstripe/recipe-ccl) | CMS5 compatible without commercial support | -[silverstripe/recipe-solr-search](https://packagist.org/packages/silverstripe/recipe-solr-search) | CMS5 compatible without commercial support | -[silverstripe/security-extensions](https://packagist.org/packages/silverstripe/security-extensions) | Folded back in core | -[silverstripe/spellcheck](https://packagist.org/packages/silverstripe/spellcheck) | Dropped | -[silverstripe/sqlite3](https://packagist.org/packages/silverstripe/sqlite3) | CMS5 compatible without commercial support | -[silverstripe/widgets](https://packagist.org/packages/silverstripe/widgets) | CMS5 compatible without commercial support | -[tijsverkoyen/akismet](https://packagist.org/packages/tijsverkoyen/akismet) | Dropped | -[tractorcow/classproxy](https://packagist.org/packages/tractorcow/classproxy) | CMS5 compatible without commercial support | -[tractorcow/silverstripe-proxy-db](https://packagist.org/packages/tractorcow/silverstripe-proxy-db) | CMS5 compatible without commercial support | -[undefinedoffset/sortablegridfield](https://packagist.org/packages/undefinedoffset/sortablegridfield) | CMS5 compatible without commercial support | [symbiote/silverstripe-gridfieldextensions](https://packagist.org/packages/symbiote/silverstripe-gridfieldextensions) provides equivalent functionality. - -## Fixed dependencies - -Silverstripe CMS relies on third party dependencies to implement many features. We have defined several *fixed dependencies* to provide certainty to Silverstripe CMS project owners and minimise the risk of composer conflicts. These dependencies will not be upgraded to new major versions within the Silverstripe CMS 5 release line. - -Review [Silverstripe CMS 5 fixed dependencies](/project_governance/fixed_dependencies) for more details. - -## Dependency changes - -### General changes {#dep-general} - -- `swiftmailer/swiftmailer` has been removed and replaced with `symfony/mailer` -- Various Symfony dependencies have been upgraded from 4.x to 6.x. A small number of code changes were made in `silverstripe/framework` to work with the symfony 6.x dependencies. -- `silverstripe/graphql` v3 is no longer supported. It is recommended that you ensure you are using `silverstripe/graphl` v4 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. - - Review the [`silverstripe/graphql` v4 upgrade documentation](https://docs.silverstripe.org/en/4/upgrading/upgrading_to_graphql_4/) for more details. -- PHPUnit 5.7 is no longer supported. It is recommended that you ensure your tests are running with PHPUnit 9 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. - - Review the [PHPUnit 9 documentation](https://docs.silverstripe.org/en/4/upgrading/phpunit9/) for more details. -- `masterminds/html5` is now used to parse HTML content instead of `DomDocument::loadHTML()`. This may cause slight changes in rendered content if the content being saved contains invalid HTML. The `silverstripe/html5` module is no longer required for rendering HTML 5 content and should be removed from your project. - -### Composer - -Silverstripe CMS 5 requires Composer 2. - -If your hosting provider runs Composer commands for you on deployment, you'll need to make sure they are using Composer 2 before attempting to deploy. For Silverstripe Cloud and Silverstripe Cloud Public Sector customers, make sure your stack is using Code Builder version 2. - -### TinyMCE upgraded from 4 to 6 {#tinymce6} - -TinyMCE has been upgraded up two major versions from 4 to 6. The API for [`HTMLEditorConfig`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorConfig) and [`TinyMCEConfig`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig) haven't changed at all, but there have been some changes to plugins and options which may affect your projects. Here are some notable changes: - -- The `styleselect` option for selecting a CSS style has changed to `styles`. -- The `spellchecker` plugin is now a premium "[Spell Checker Pro](https://www.tiny.cloud/docs/tinymce/6/introduction-to-tiny-spellchecker/)" plugin through TinyMCE cloud (though the `browser_spellcheck` options still works and is enabled by default). -- The *paste from Microsoft Word* functionality is now part of a premium "[PowerPaste](https://www.tiny.cloud/docs/tinymce/6/introduction-to-powerpaste/)" plugin through TinyMCE cloud. - - There is an [open call for maintainers](https://github.com/tinymce/tinymce/discussions/7487) for converting the old functionality into a new open source plugin. -- The UI API has changed, which will affect any custom plugins you may be using. Notably: - - most `addX()` functions have been moved from `editor` to `editor.ui.registry` - e.g. `editor.addButton()` is now `editor.ui.registry.addButton()`. - - `onclick` functions on buttons have been changed to `onAction`. - -There were a lot more changes than just those, so you may want to also check out the following resources: - -- [Docs for upgrading from 4 to 5](https://www.tiny.cloud/docs/migration-from-4x/) -- [Docs for upgrading from 5 to 6](https://www.tiny.cloud/docs/tinymce/6/migration-from-5x/) -- [List of open source plugins for TinyMCE 6](https://www.tiny.cloud/docs/tinymce/6/plugins/#open-source-plugins) -- [List of toolbar buttons available for TinyMCE 6](https://www.tiny.cloud/docs/tinymce/6/available-toolbar-buttons/) -- [Create a plugin](https://www.tiny.cloud/docs/tinymce/6/creating-a-plugin/) - -## Front-end build stack upgrades {#front-end} - -> [!NOTE] -> "Front-end" in this section refers to the JavaScript and CSS in the CMS. It doesn't have any impact on your website's public-facing front-end. - -We've upgraded the front-end build stack for the CMS, along with most of the JavaScript dependencies. - -### Webpack config - -The [`@silverstripe/webpack-config`](https://www.npmjs.com/package/@silverstripe/webpack-config) and [`@silverstripe/eslint-config`](https://www.npmjs.com/package/@silverstripe/eslint-config) NPM libraries, along with the build stack for all supported modules, have been updated to be compatible with node 18 and webpack 5. This will only impact you if your module or project uses one or both of those NPM packages - you will need to make sure you update your own dependencies to be compatible with them, along with the dependencies listed below if you use them. - -`@silverstripe/webpack-config` has a new optional abstracted API to declare the webpack config for transpiling the JavaScript and CSS for your CMS customisations. - -Review the [`@silverstripe/webpack-config` read me](https://github.com/silverstripe/webpack-config#readme) to get the list of new APIs and usage documentation. - -You can continue to use the old API if you want to, but you will need to account for the following breaking changes: - -- The `UglifyJsPlugin` is no longer used to remove comments from transpiled code. Refer to the `optimisation` config in [the abstracted JavascriptWebpackConfig class](https://github.com/silverstripe/webpack-config/blob/2/configMeta/javascriptWebpackConfig.js) instead. -- `script-loader`, `file-loader`, and `url-loader` have all been replaced with the relevant [webpack assets](https://webpack.js.org/guides/asset-modules/) configuration. -- `ExtractTextPlugin` and its associated configuration has been replaced with `MiniCssExtractPlugin`. -- Supported browser configuration has been replaced with setting an appropriate [browserslist](https://browsersl.ist) configuration in your `package.json` file. - -### Updated JavaScript dependencies - -The following JavaScript dependencies (which are used in the CMS, and may impact your customisations) have been updated to new major versions, or replaced: - -|old package and version|new package and version|upgrade guide| -|---|---|---| -|apollo-client `^2.3.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-cache-inmemory `^1.2.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link `^1.2.2`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-batch-HTTP `^1.2.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-error `^1.0.9`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-HTTP `^1.5.4`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-state `^0.4.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|GraphQL `^14.0.0`|GraphQL `^16.6.0`|[GitHub changelog][graphql-changelog]| -|merge `^1.2.1`|merge `^2.1.1`|N/A| -|react `^16.6.1`|react `^18.2.0`|[upgrade guide][react-guide]| -|react-apollo `^2.1.0`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|react-redux `^5.0.7`|react-redux `^8.0.5`|[GitHub changelog][react-redux-changelog]| -|react-router `^4.4.0`|react-router `^6.7`|[upgrade guide][react-router-guide]| -|react-router-config `^4.4.0`|react-router `^6.7`|[upgrade guide][react-router-guide]| -|react-router-dom `^4.4.0`|react-router-dom `^6.7`|[upgrade guide][react-router-guide]| -|react-select `^1.3`|react-select `^5.5.8`|[upgrade guides][react-select-guide]| -|redux-form `^7.4.2`|redux-form `^8.3.8`|[GitHub changelogs][react-form-changelog]| -|validator `^6.1.0`|validator `^13.7.0`|[changelog][validator-changelog]| -|dropzone `^5.7.2`|dropdown `^6.0.0-beta.2`|[changelog][dropzone-changelog]| - -[apollo-guide]: https://www.apollographql.com/docs/react/migrating/apollo-client-3-migration -[graphql-changelog]: https://github.com/graphql/graphql-js/releases/tag/v16.0.0 -[react-guide]: https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html -[react-router-guide]: https://github.com/remix-run/react-router/blob/main/docs/upgrading/v5.md -[react-select-guide]: https://react-select.com/upgrade -[react-form-changelog]: https://github.com/redux-form/redux-form/releases/tag/v8.0.0 -[validator-changelog]: https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md -[dropzone-changelog]: https://github.com/dropzone/dropzone/blob/main/CHANGELOG.md -[react-redux-changelog]: https://github.com/reduxjs/react-redux/releases - -### Common upgrade patterns - -While upgrading core modules, there were a few common patterns we found that might be useful for you. Those are listed here for your convenience. - -#### `ReactDOM.render()` replaced with `ReactDOM.createRoot().render()` - -If you are injecting a React component in a section of the CMS that uses entwine, you likely have something like this: - -```js -import React from 'react'; -import ReactDOM from 'react-dom'; - -$('.grid-field').entwine({ - onmatch() { - ReactDOM.render(, this[0]); - }, - - onunmatch() { - const container = this[0]; - if (container) { - ReactDOM.unmountComponentAtNode(container); - } - }, -}); -``` - -Instead of using `ReactDOM.render()`, you should now call `ReactDOM.createRoot().render()` - but if you try to use `createRoot()` multiple times on the same element, react will complain, so you'll want to keep a reference to the root you made the first time. The above example turns into this: - -```js -import React from 'react'; -import ReactDOM from 'react-dom'; - -$('.grid-field').entwine({ - ReactRoot: null, - - onmatch() { - let root = this.getReactRoot(); - if (!root) { - root = ReactDOM.createRoot(this[0]); - } - root.render(); - this.setReactRoot(root); - }, - - onunmatch() { - const root = this.getReactRoot(); - if (root) { - root.unmount(); - this.setReactRoot(null); - } - }, -}); -``` - -#### React route paths are now relative to their parent routes - -The update to `react-router` has changed the paths for routes in react-only sections of the CMS (such as /admin/assets) to be relative to the parent routes. If you have a custom react CMS section, you'll need to make sure you're using the relative path. This is included as `reactRoutePath` in the array returned by [`LeftAndMain::getClientConfig()`](api:SilverStripe\Admin\LeftAndMain::getClientConfig()) by default, but you may need to double check your custom admin section is returning the correct value. - -Then, in your JavaScript implementation where you are adding your route to the `ReactRouteRegister`, simply change your route's path from using the `url` key to use the new `reactRoutePath` key. - -```diff - import ConfigHelpers from 'lib/Config'; - import reactRouteRegister from 'lib/ReactRouteRegister'; - import MyAdmin from './MyAdmin'; - - document.addEventListener('DOMContentLoaded', () => { - const sectionConfig = ConfigHelpers.getSection('MyAdmin'); - reactRouteRegister.add({ -- path: sectionConfig.url, -+ path: sectionConfig.reactRoutePath, - component: MyAdminComponent, - }); - }); -``` - -#### `react-router` no longer has a `withRouter` HOC - -In the old version of `react-router`, the `withRouter` Higher Order Component could be used to wrap your component which needs access to the router and its functionality. - -This has been removed. The ideal way to upgrade is to rewrite your components to work with the new API as per the upgrade guide referenced in the table above. - -If you don't have time or resources to rewrite your components, we do have a temporary solution for you - but bear in mind that this is just kicking the can down the road. You *will* have to upgrade to use the new react-router API eventually. - -Silverstripe CMS 5 includes a replacement `withRouter` Higher Order Component that you can use until you have the resources necessary to upgrade properly. It passes different props than the old one did, so you will still need to make some changes. For example: - -```js -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; -import { withRouter } from 'react-router-dom'; - -class MyAdmin extends Component { - // Your implementation here -} - -MyAdmin.propTypes = { - location: PropTypes.shape({ - pathname: PropTypes.string, - query: PropTypes.object, - search: PropTypes.string, - }), - match: PropTypes.shape({ - params: PropTypes.shape({ - view: PropTypes.string, - id: PropTypes.number, - }), - }), - // eslint-disable-next-line react/no-unused-prop-types - history: PropTypes.object, -}; - -export default withRouter(MyAdmin); -``` - -The above expects the `match` and `history` props from the `withRouter` HOC. These are no longer passed. What's more, you don't have to declare your own proptypes, we've exported that for you. The above now becomes this: - -```js -import React, { Component } from 'react'; -import withRouter, { routerPropTypes } from 'lib/withRouter'; - -class MyAdmin extends Component { - // Your implementation here -} - -MyAdmin.propTypes = { - // eslint-disable-next-line react/no-unused-prop-types - router: routerPropTypes, -}; - -export default withRouter(MyAdmin); -``` - -Our new `withRouter` HOC passes in a single prop called `router` which has the following `PropTypes` definition: - -```js -PropTypes.shape({ - location: PropTypes.shape({ - pathname: PropTypes.string, - query: PropTypes.object, - search: PropTypes.string, - }), - navigate: PropTypes.func, - params: PropTypes.object, -}); -``` - -`router.params` is a one-to-one replacement for the old `match.params`, and `router.location` is a one-to-one replacement for the old `location` prop. - -Refer to the upgrade guide from the table above to learn how to replace the old `history` prop with the new `router.navigate` prop. - -### Breaking changes in *our* JavaScript components or API {#js-api} - -For the most part, we were able to retain our existing API and not make any drastic changes to our react components through upgrading our dependencies, but there was one notable exception. - -To conform with the API changes in the new version of `react-select`, the `TreeDropdownField` component has changed considerably, and the `TreeDropdownFieldMenu` component has been removed entirely. - -If you were customising the `TreeDropdownField` React component at all or injecting a custom version of `TreeDropdownFieldMenu`, you will want to take a look at the source code for the `TreeDropdownField` component and maybe have a look at the upgrade guides for `react-select` referenced in the table above to see what changes you need to make. - -Some of the CSS classes related to `TreeDropdownField` have also changed, as a result of the upgrade to `react-select`. - -## Other breaking changes - -### URLs generated by Silverstripe CMS don't include a trailing slash by default {#trailing-slash} - -The URLs generated by Silverstripe CMS have previously been inconsistent as to whether a trailing slash is included or not. This lead to the creation of [at least one module](https://github.com/axllent/silverstripe-trailing-slash) which normalises the trailing slash at the end of URLs. - -By default, all URLs created by Silverstripe CMS do *not* end with a slash. You can configure this to instead explicitly add a trailing slash to all URLs with the following YML configuration: - -```yml -SilverStripe\Control\Controller: - add_trailing_slash: true -``` - -> [!WARNING] -> Because this can be controlled with configuration, it is best practice to avoid explicitly expecting a trailing slash to either be present or be omitted. -> -> In PHP, you can use methods like [`Controller::join_links()`](api:SilverStripe\Control\Controller::join_links()) or [`Controller::normaliseTrailingSlash()`](api:SilverStripe\Control\Controller::normaliseTrailingSlash()). -> -> For JavaScript in your CMS customisations, we recommend using the `joinUrlPaths()` utility function from `silverstripe/admin`. You can access this method with `import { joinUrlPaths } from 'lib/urls;` if your project uses [@silverstripe/webpack-config](https://www.npmjs.com/package/@silverstripe/webpack-config). -> -> In your templates, you should use appropriate methods from your controller or model such as [`SiteTree::Link()`](api:SilverStripe\CMS\Model\SiteTree::Link()) which uses `Controller::join_links()` under the hood. - -By default, the [`CanonicalURLMiddleware`](api:SilverStripe\Control\Middleware\CanonicalURLMiddleware) redirects traffic to include or omit the trailing slash according to the above configuration. This means that traffic directed to `/about-us/` will be redirected to `/about-us`. You can disable this behaviour with the following YML configuration: - -```yml -SilverStripe\Core\Injector\Injector: - SilverStripe\Control\Middleware\CanonicalURLMiddleware: - properties: - enforceTrailingSlashConfig: false -``` - -> [!NOTE] -> Redirects will not be performed for any route starting with `admin/` or `dev/` by default. You can configure this, as well as exclude specific user agents from being redirected, with the following YML configuration: -> -> ```yml -> SilverStripe\Core\Injector\Injector: -> SilverStripe\Control\Middleware\CanonicalURLMiddleware: -> properties: -> enforceTrailingSlashConfigIgnorePaths: -> - 'my-ajax-controller/' -> enforceTrailingSlashConfigIgnoreUserAgents: -> - 'my-dev-user-agent' -> ``` - -### CWP agency extensions - -The [cwp/agency-extensions](https://github.com/silverstripe/cwp-agencyextensions) module used to provide a Font Awesome v4 plugin for TinyMCE 4. This plugin is not compatible with TinyMCE 6 and we couldn't see an appropriate alternative plugin to use instead. We have opted to remove this plugin without replacing it. - -If your project has no content which used the Font Awesome plugin provided by this module, you don't need to make any changes - though you can remove the `CWP_AGENCY_DISABLE_FONTAWESOME_PLUGIN` environment variable from your `.env` file if it was set. - -If your project does have some content which contains Font Awesome icons from that plugin, you will need to set `CWP_AGENCY_ENABLE_FONTAWESOME_STYLES` to true in your environment variables. This will allow you to see the existing icons in the TinyMCE field in the CMS, as well as ensuring that they will not be removed when you save content. The front-end will not be impacted, as you already had to inject an appropriate stylesheet into the front-end for the icons to appear there. - -If you cannot set environment variables in your project, you can set the following configuration manually in your project: - -```php -// app/_config.php -use SilverStripe\Forms\HTMLEditor\TinyMCEConfig; - -TinyMCEConfig::get('cwp')->setOption( - 'extended_valid_elements', - $cwpEditor->getOption('extended_valid_elements') - . ',span[class|align|style|aria-hidden]' -); -``` - -```yml -# app/_config/font-awesome.yml -SilverStripe\Forms\HTMLEditor\TinyMCEConfig: - editor_css: - - "https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" -``` - -If you need the ability to add icons in your content, a suitable alternative may be the [emoticons plugin for TinyMCE 6](https://www.tiny.cloud/docs/plugins/opensource/emoticons/). You can compare the icons provided by that plugin with the [icons in Font Awesome v4](https://fontawesome.com/v4/icons/) to see if it would be a suitable replacement for your project. - -### `silverstripe/security-extensions` module is folded into core {#security-extensions-is-core} - -The functionality from [silverstripe/security-extensions](https://github.com/silverstripe/silverstripe-security-extensions) has been folded into the core modules. You no longer need to install that module to benefit from the features it provided - and indeed there will not be a CMS 5 compatible version of that module. If you have `silverstripe/security-extensions` as a dependency in your composer.json file, you will need to remove it. - -With this change you now have access to the following features: - -#### Require password change on next log in - -Administrators with the ability to administer members can see a *Requires password change on next log in* checkbox in the CMS under the area to set the member's password. Checking this box will set the password expiry to the current date. The next time the member logs in, they will be required to choose a new password for their account. - -No change is made when setting this field and the password expiry has already been set to a past date. Similarly, no change is made when unchecking the field and the password expiry date is in the future. The checkbox is for immediately requiring a new password on the *next* log in. - -See the [secure coding section](/developer_guides/security/secure_coding/#other-options) for information about setting the password expiry itself, or the ["Changing and managing users" user help guide](https://userhelp.silverstripe.org/en/5/managing_your_website/changing_and_managing_users/#changing-a-user-s-password) to see how this appears to the user. - -#### Sudo mode - -Sudo mode represents a heightened level of permission in that you are more certain that the current user is actually the person whose account is logged in. This is performed by re-validating that the account's password is correct, and will then last for a certain amount of time (configurable) until it will be checked again. - -Out of the box, this is currently only used by the [silverstripe/mfa](https://github.com/silverstripe/silverstripe-mfa) module - see [Managing your MFA settings](https://userhelp.silverstripe.org/en/5/optional_features/multi-factor_authentication/user_manual/managing_your_mfa_settings/#managing-your-mfa-settings) - but you can use it in your own projects as well. Read the [Sudo Mode documentation](/developer_guides/security/sudo_mode/) to find out how. - -Note that as part of this change, the namespaces of several classes changed. Refer to the table below if you were referencing these classes (e.g. to set configuration values or replace classes via dependency injection). - -|Old namespace|New namespace| -|---|---| -|`SilverStripe\SecurityExtensions\Control\SudoModeController`|[`SilverStripe\Admin\SudoModeController`](api:SilverStripe\Admin\SudoModeController)| -|`SilverStripe\SecurityExtensions\Service\SudoModeService`|[`SilverStripe\Security\SudoMode\SudoModeService`](api:SilverStripe\Security\SudoMode\SudoModeService)| -|`SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface`|[`SilverStripe\Security\SudoMode\SudoModeServiceInterface`](api:SilverStripe\Security\SudoMode\SudoModeServiceInterface)| - -## Features and enhancements {#features-and-enhancements} - -### Extension changes - -[Extension](api:SilverStripe\Core\Extension) classes don't expose `protected` methods, but they *can* be used for extension hooks. This reduces the surface of methods exposed from your extensions into `Extensible` classes. For example, you might have a `protected function updateCMSFields()` method which is called after writing some `DataObject` - but because this method is `protected`, it *cannot* be accessed directly from the `DataObject` instances. You can still expose some method from the `Extension` by making it `public` - and that method *can* be accessed directly from the `DataObject` instances. - -When invoking an extension hook (e.g. via `extend()`), methods prefixed with "extend" take precedence. i.e. if an `Extension` class has a `onAfterWrite()` method and an `extendOnAfterWrite()` method and you call `$this->extend('onAfterWrite')` - the `extendOnAfterWrite()` method on that `Extension` will be called, and `onAfterWrite()` will not. -This empowers advanced `Extension` functionality such as [Versioned::canPublish()](api:SilverStripe\Versioned\Versioned::canPublish()) which invokes `$owner->extendedCan('canPublish')` but doesn't result in a cycle, because the same class also implements [extendCanPublish()](api:SilverStripe\Versioned\Versioned::extendCanPublish()). - -### Other new features {#other-features} - -- [`DataObject::get_one()`](api:SilverStripe\ORM\DataObject::get_one()) can now be called directly from subclasses of `DataObject` without passing in a class as the first argument (e.g. `SiteTree::get_one(filter: ['Title:startsWith' => 'About'])`). -- Strings returned from the [getSummary()](api:DNADesign\Elemental\Models\BaseElement::getSummary()) method in elemental blocks are automatically displayed as the summary for the element in the [ElementalArea](api:DNADesign\Elemental\Models\ElementalArea) - this no longer needs to be manually added in [provideBlockSchema()](api:DNADesign\Elemental\Models\BaseElement::provideBlockSchema()). -- The elemental [TopPage DataExtension](api:DNADesign\Elemental\TopPage\DataExtension) is applied to [`BaseElement`](api:DNADesign\Elemental\Models\BaseElement) and [`ElementalArea`](api:DNADesign\Elemental\Models\ElementalArea) by default, and the corresponding [`SiteTreeExtension`](api:DNADesign\Elemental\TopPage\SiteTreeExtension) is applied to [`SiteTree`](api:SilverStripe\CMS\Model\SiteTree) by default. This allows you to use `$TopPage` in your elemental block templates as a more performant alternative to `$Page` when referring to the page the element belongs to. -- Void HTML elements such as `` are no longer rendered as self-closing tags e.g. `bar` is now rendered, previously `bar` was rendered. -- It’s now possible to hook into `FormField` validation via the `updateValidationResult` extension hook. Module authors releasing form fields should opt-in to this functionality by calling the new `extendValidationResult` method to enable developers to extend and customise validation. See the [form validation documentation](/developer_guides/forms/validation/#extensions) for more information. - -## Environment variable changes - -- `SS_MANIFESTCACHE` can no longer use the now removed `symfony/cache` 4.x "Simple" cache classes e.g. `Symfony\Component\Cache\Simple\PhpFilesCache`. Instead, use the corresponding "Adapter" class e.g. `Symfony\Component\Cache\Adapter\PhpFilesAdapter`. -- `APP_SMTP_USERNAME` and `APP_SMTP_PASSWORD` have been removed. Use a `MAILER_DSN` environment variable instead to configure SMTP email (see [the email documentation](/developer_guides/email/) for more details). -- `MySQLPDODatabase` is no longer a valid option for the `SS_DATABASE_CLASS` environment variable. Use `MySQLDatabase` instead. - -## Bug fixes - -- If a page which is a child of a root-level page gets archived, and then its former parent is removed, it can only be restored if `can_be_root` for that page's class is true. - -## API changes {#api-changes} - -This is a major release and contains many breaking API changes. Deprecation warnings have been added to the Silverstripe CMS 4.13 release to advise you of APIs that have been removed in Silverstripe CMS 5. - -[Enable deprecation warnings](/upgrading/deprecations) prior to upgrading to Silverstripe CMS 5 to see if your project relies on APIs that are no longer available. - -### General changes {#api-general} - -- [`SecurityAdmin`](api:SilverStripe\Admin\SecurityAdmin) is a [`SilverStripe\Admin\ModelAdmin`](api:SilverStripe\Admin\ModelAdmin). - - Previous extension hook implementations of `SecurityAdmin::updateEditForm($form)` still works as the extension hook is called in [`ModelAdmin::getEditForm()`](api:SilverStripe\Admin\ModelAdmin::getEditForm()). - - The *Users*, *Groups* and *Roles* tabs no longer share the `/admin/security` path and instead have their own dedicated paths. e.g. `/admin/security/users` -- `isDev` and `isTest` query string arguments have been removed due to security concerns (see [ss-2018-005](https://www.silverstripe.org/download/security-releases/ss-2018-005/)). -- The `updateRelativeLink()` extension hook for updating the result of [SiteTree::RelativeLink()](api:SilverStripe\CMS\Model\SiteTree::RelativeLink()) has changed signature, allowing you to update the resultant link itself instead of just the component parts. If you are using this extension hook, you will need to update the method signature and logic to match. See [SiteTreeExtension::updateRelativeLink()](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) for more details. -- The default value for the `RESOURCES_DIR` const has been changed to "_resources" - - The `Library::DEFAULT_RESOURCES_DIR` constant in `silverstripe/vendor-plugin` has been changed to match. - - This can still be customised using `extra.resources-dir` in your `composer.json` file (see the [configuring your project exposed folders](/developer_guides/templates/requirements/#configuring-your-project-exposed-folders) documentation). - - If your `composer.json` file has its `extra.resources-dir` key set to `_resources`, you can remove that now. - - If your `composer.json` file already does not have an `extra.resources-dir` key and you want to keep your resources in the `resources` directory, you can set `extra.resources-dir` to `resources`. - - If your `composer.json` file already does not have an `extra.resources-dir` key and you want to use the new default `_resources` directory, you may need to check that your code and templates don't assume the directory name for those resources. In your templates, it is preferred to [use `$resourePath()` or `$resourceURL()`](/developer_guides/templates/requirements/#direct-resource-urls) to get paths for resources. -- The use of the `public/` directory for the public web root is now mandatory. This was introduced as the default for new projects in CMS 4.1.0. If you are still not using the `public/` directory as your web root, follow the [instructions in the Silverstripe CMS 4.1.0 changelog](https://docs.silverstripe.org/en/4/changelogs/4.1.0#public-folder/). -- The legacy file resolution strategy introduced in CMS 4.4.0 is no longer available. If you still use the legacy file resolution strategy, follow the [file migration instructions](https://docs.silverstripe.org/en/4/developer_guides/files/file_migration/) and then change your file resolution configuration to match the defaults in [the assets.yml file in silverstripe/installer](https://github.com/silverstripe/silverstripe-installer/blob/4/app/_config/assets.yml). -- Removed the `HTMLValue` injection "shorthand", use the fully qualified [`HTMLValue`](api:SilverStripe\View\Parsers\HTMLValue) instead. -- In `silverstripe/staticpublishqueue`, the class [`SilverStripe\StaticPublishQueue\Dev\StaticPublisherState`](api:SilverStripe\StaticPublishQueue\Dev\StaticPublisherState) is no longer enabled by default and can be enabled via opt-in. There are opt-in instructions in the [`README.md` of the module](https://github.com/silverstripe/silverstripe-staticpublishqueue#readme). -- [`SiteTree`](api:SilverStripe\CMS\Model\SiteTree) no longer automatically detects the controller if the controller name is `_Controller` - it must be `Controller` or be declared in the `SiteTree.controller_name` configuration property. See [Connecting Pages to ContentControllers](/developer_guides/controllers/introduction/#connecting-pages-to-contentcontrollers) for more details. - -### Email {#api-email} - -- In CMS 4, email messages were sent using [SwiftMailer](https://swiftmailer.symfony.com/docs/introduction.html), which has since [gone End Of Life](https://symfony.com/blog/the-end-of-swiftmailer). In CMS 5, this has been replaced with [symfony/mailer](https://symfony.com/doc/current/mailer.html). `symfony/mailer` is the currently maintained email package from Symfony. It's a more flexible email system that allows easier integration with third-party email providers. -- In CMS 4, the [`SilverStripe\Control\Email\Email`](api:SilverStripe\Control\Email\Email) class subclassed [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData). In CMS 5, it subclasses `Symfony\Component\Mime\Email`. -- `MailTransport`, which used the PHP native `mail()` function, is no longer present in CMS 5. This is because [Symfony considers `mail()` to be insecure](https://github.com/swiftmailer/swiftmailer/issues/866#issuecomment-289291228). -- If your site has a custom email configuration e.g. SMTP configuration, this will need to be updated, as the configuration has changed from Silverstripe yml to a much more flexible and standardised [DSN string](https://symfony.com/doc/current/mailer.html#transport-setup). See [the email documentation](/developer_guides/email/) for more details. The configuration for email has changed completely - read the updated documentation carefully. -- The following return types were changed on the following methods in [`SilverStripe\Control\Email\Email`](api:SilverStripe\Control\Email\Email). - - Used to return a `string`, now returns an nullable [`Address`](https://symfony.com/doc/current/mailer.html#email-addresses) object. - - `getReturnPath()` - - `getSender()` - - Used to return an array of strings, now returns an array of `Address` objects. - - `getFrom()` - - `getTo()` - - `getBCC()` - note - changed casing to `getBcc()` - - `getCC()` - note - changed casing to `getCc()` - - Used to return `bool`, now return `void`: - - [`send()`](api:SilverStripe\Control\Email\Email::send()) - - [`sendPlain()`](api:SilverStripe\Control\Email\Email::sendPlain()) - - Catch [`TransportExceptionInterface`](https://github.com/symfony/symfony/blob/6.2/src/Symfony/Component/Mailer/Exception/TransportExceptionInterface.php) from Symfony Mailer to handle failure to send email. - - Various other methods have added strong typing to parameter and return types. Also, some parameter names have changed. - -### ORM {#api-orm} - -- [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) no longer accepts raw SQL. A new [`DataList::orderBy()`](api:SilverStripe\ORM\DataList::orderBy()) method has been created which accepts raw SQL, though it's recommended to continue using [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) if possible to reduce the risk of SQL injection vulnerabilities. -- Passing `null` to [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) i.e. `sort(null)` now clears any existing sort values on a DataList. Passing an empty string (i.e. `sort('')` or array i.e. `sort([])`) now causes an `InvalidArgumentException` to be thrown. -- Prior to 5.0.0, when using [`SQLSelect::setFrom()`](api:SilverStripe\ORM\Queries\SQLSelect::setFrom()) or [`SQLSelect::create('*', $from)`](api:SilverStripe\ORM\Queries\SQLSelect::create) to set table or subselect definitions, their aliases (applied by setting a string key for the array) were being ignored. This bug has been fixed - if you were working around this by manually setting the alias e.g. in a join, you can remove those workarounds. -- [`Query`](api:SilverStripe\ORM\Connect\Query) now implements `IteratorAggregate` instead of `Iterator`. This means `seek()` and other iterator methods are no longer available on this class and its subclasses. Use `getIterator()` instead. -- [`DataList`](api:SilverStripe\ORM\DataList), its subclasses, [`Map`](api:SilverStripe\ORM\Map), and [`ArrayList`](api:SilverStripe\ORM\ArrayList) all now return generators from `getIterator()`. This reduces memory usage when looping over large result sets. As a result of this, `getGenerator()` has been removed as it is no longer needed. Note that [`DataList::chunkedFetch()`](api:SilverStripe\ORM\DataList::chunkedFetch()) has not been removed, as it may still be useful for very large result sets to fetch results in smaller chunks at a time. -- [`Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) is now strongly typed. Calling `limit()` with a `0` or `false` length now limits the list to 0 entry. In Silverstripe CMS 4, any "falsy" value would unset the limit. To unset a list's limit in Silverstripe CMS 5, call `limit()` with an explicit `null`. This affects [`DataList`](api:SilverStripe\ORM\DataList), [`ArrayList`](api:SilverStripe\ORM\ArrayList) and all other classes implementing [`Limitable`](api:SilverStripe\ORM\Limitable). - - In Silverstripe CMS 4, calling [`SQLSelect::setLimit()`](api:SilverStripe\ORM\Queries\SQLSelect::setLimit()) with `0` as argument would unset the limit. In Silverstripe CMS 5, it sets a limit of `0` causing the query to return no results. Call `setLimit()` with `null` to unset the limit. -- [`ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) in Silverstripe CMS 5 throws an `InvalidArgumentException` when called with a negative `$length` or `$offset`. -- PDO database connector support has been fully removed. Update the `SS_DATABASE_CLASS` environment variable to use a regular connector instead. For instance, change `MySQLPDOConnector` to `MySQLDatabase`. - -### Dynamic properties - -- PHP Dynamic properties were deprecated in PHP 8.2 to minimise the confusion caused by having API that was not explicitly declared. -- To support backwards compatibility with project and module code, the magic methods `__get()` and `__set()` on [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData) will simulate dynamic properties by writing values to an array stored as a private property. -- This functionality may not work if subclasses override any of the following methods: `__get()`, `__set()`, `getField()`, `setField()`, `hasField()`. -- If these method overrides don't call the parent methods, they may need access to the dynamic data. The private property array that stores the values can be accessed with via the following methods: [`SilverStripe\View\ViewableData::getDynamicData()`](api:SilverStripe\View\ViewableData::getDynamicData()), [`SilverStripe\View\ViewableData::setDynamicData()`](api:SilverStripe\View\ViewableData::setDynamicData()), [`SilverStripe\View\ViewableData::hasDynamicData()`](api:SilverStripe\View\ViewableData::hasDynamicData()) - -### Templates - -#### Loop and with scope changes - -`<% loop %>` and `<% with %>` now only ever result in one new scope level. See [Template Syntax](/developer_guides/templates/syntax#up) for more details. - -For example, `<% loop $Pages.Limit(5) %>{$Up.Up.Title}<% end_loop %>` previously would go up once to the `$Pages` scope (out of the `$Pages.limit(5)` scope), then up a second time to the parent scope. Now there is only the parent scope and the `$Pages.limit(5)` scope - there is no implied `$Pages` scope. - -You may need to do a search for `$Up.Up` in your templates to resolve situations where you have worked around this - with the example above, you would need to rewrite it to `$Up.Title` (removing the second `Up`). - -#### `$First` and `$Last` removed from the loop scope - -In templates it's common to want to check if an item is the first or last item in a loop. This used to be done with `$First` and `$Last`, but these methods have been removed to avoid clashes with other methods with the same name. Use `$IsFirst` and `$IsLast` instead. - -```diff - <% loop $MyList %> -- <% if $First %> -+ <% if $IsFirst %> - <%-- do something --%> - <% end_if %> - <% end_loop %> -``` - -#### Primitive values can be passed into method calls - -Numeric, boolean and null values passed to methods in templates now preserve their type, rather than always being cast to strings. E.g. `$Foo(true)` would previously pass a string argument `'true'` to the `Foo()` method, but now passes an actual boolean. - -You may need to check for situations where you were working around this limitation, such as checking in PHP code for `$param === 'false'` if you were passing `false` into some method from a template. - -#### `$ThemeDir` has been replaced - -[`$ThemeDir`](api:SilverStripe\View\ViewableData::ThemeDir()) has been removed. Depending on your use case, you should use one of the following replacements instead: - -If you want to get a resource using cascading themes, use [`$themedResourceURL()`](api:SilverStripe\View\ThemeResourceLoader::themedResourceURL()): - -```ss - - -``` - -If you want to get a resource for a *specific* theme or from somewhere that is not a theme (your app directory or a module), use [`$resourceURL()`](api:SilverStripe\Core\Manifest\ModuleResourceLoader::resourceURL()): - -```ss - - - - -``` - -## Full list of removed and changed API (by module, alphabetically) {#api-removed-and-changed} - -This sections contains the full list of APIs that have been changed or removed between Silverstripe CMS 4.13 and 5.0. You most likely don't need to read the entire list. But it can be a useful reference to have open when upgrading a project or module. - -
-Reveal full list of API changes - -### `colymba/gridfield-bulk-editing-tools` - -- Removed deprecated method `Colymba\BulkTools\HTTPBulkToolsResponse::shutdown()` without equivalent functionality to replace it - -### `cwp/cwp` - -- Removed deprecated class `CWP\CWP\Extensions\CwpSiteSummaryExtension` without equivalent functionality to replace it - -### `cwp/cwp-core` - -- Removed deprecated class `CWP\Core\Extension\CWPVersionExtension` without equivalent functionality to replace it - -### `cwp/cwp-search` - -- Removed deprecated class `CWP\Search\Solr\CwpSolrConfigStore` - use `SilverStripe\FullTextSearch\Solr\Stores\SolrConfigStore_Post` in `silverstripe/fulltextsearch` instead - -### `dnadesign/silverstripe-elemental` - -- Removed deprecated class `DNADesign\Elemental\Search\ElementalSolrIndex` - use a custom index instead -- Removed deprecated class `DNADesign\Elemental\TopPage\TestState` without equivalent functionality to replace it -- Removed deprecated method `DNADesign\Elemental\Extensions\ElementalAreaUsedOnTableExtension::updateUsage()` - use [`DNADesign\Elemental\Extensions\ElementalAreaUsedOnTableExtension::updateUsageExcludedClasses()`](api:DNADesign\Elemental\Extensions\ElementalAreaUsedOnTableExtension::updateUsageExcludedClasses()) instead -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::disableTopPageUpdate()` without equivalent functionality to replace it -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::enableTopPageUpdate()` without equivalent functionality to replace it -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::getTopPageUpdate()` without equivalent functionality to replace it -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::withTopPageUpdate()` without equivalent functionality to replace it -- Changed return type for [`DNADesign\Elemental\TopPage\DataExtension::getTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::getTopPage()) from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed return type for [`DNADesign\Elemental\TopPage\DataExtension::getTopPageFromCachedData()`](api:DNADesign\Elemental\TopPage\DataExtension::getTopPageFromCachedData()) from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed parameter type in [`DNADesign\Elemental\TopPage\DataExtension::assignTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::assignTopPage()) for `$page` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\DataExtension::setTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::setTopPage()) for `$page` from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed parameter type in [`DNADesign\Elemental\TopPage\FluentExtension::assignTopPage()`](api:DNADesign\Elemental\TopPage\FluentExtension::assignTopPage()) for `$page` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::initDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::initDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::onAfterDuplicate()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::onAfterDuplicate()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::onBeforeDuplicate()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::onBeforeDuplicate()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::processDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::processDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::writeDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::writeDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) - -### `silverstripe/admin` - -- Class [`SilverStripe\Admin\SecurityAdmin`](api:SilverStripe\Admin\SecurityAdmin) now extends [`SilverStripe\Admin\ModelAdmin`](api:SilverStripe\Admin\ModelAdmin) instead of [`SilverStripe\Admin\LeftAndMain`](api:SilverStripe\Admin\LeftAndMain) -- Removed deprecated class `SilverStripe\Admin\GroupImportForm` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Admin\MemberImportForm` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\LeftAndMain::menu_title_for_class()` - use [`SilverStripe\Admin\LeftAndMain::menu_title()`](api:SilverStripe\Admin\LeftAndMain::menu_title()) instead -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::getSearchContext()` - use [`SilverStripe\Forms\GridField\GridFieldFilterHeader`](api:SilverStripe\Forms\GridField\GridFieldFilterHeader) instead -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::SearchForm()` - use [`SilverStripe\Forms\GridField\GridFieldFilterHeader`](api:SilverStripe\Forms\GridField\GridFieldFilterHeader) instead -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::SearchSummary()` - use [`SilverStripe\Forms\GridField\GridFieldFilterHeader`](api:SilverStripe\Forms\GridField\GridFieldFilterHeader) instead -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::Backlink()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::groupimport()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::GroupImportForm()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::groups()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::memberimport()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::MemberImportForm()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::roles()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::users()` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\Admin\LeftAndMain.help_link` - use `SilverStripe\Admin\LeftAndMain.help_links` instead -- Removed deprecated config `SilverStripe\Admin\SecurityAdmin.subitem_class` without equivalent functionality to replace it -- Removed deprecated parameter in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) named `$request` -- Changed return type for [`SilverStripe\Admin\AdminRootController::handleRequest()`](api:SilverStripe\Admin\AdminRootController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::batchaction()`](api:SilverStripe\Admin\CMSBatchAction::batchaction()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::response()`](api:SilverStripe\Admin\CMSBatchAction::response()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::run()`](api:SilverStripe\Admin\CMSBatchAction::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSMenu::getIterator()`](api:SilverStripe\Admin\CMSMenu::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::getResponseNegotiator()`](api:SilverStripe\Admin\LeftAndMain::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::getSchemaResponse()`](api:SilverStripe\Admin\LeftAndMain::getSchemaResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::handleRequest()`](api:SilverStripe\Admin\LeftAndMain::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::index()`](api:SilverStripe\Admin\LeftAndMain::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::schema()`](api:SilverStripe\Admin\LeftAndMain::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::show()`](api:SilverStripe\Admin\LeftAndMain::show()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::index()`](api:SilverStripe\Admin\LeftAndMain::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::schema()`](api:SilverStripe\Admin\LeftAndMain::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::show()`](api:SilverStripe\Admin\LeftAndMain::show()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -### `silverstripe/asset-admin` - -- Removed deprecated class `SilverStripe\AssetAdmin\Model\EmbedResource` - use [`SilverStripe\View\Embed\EmbedContainer`](api:SilverStripe\View\Embed\EmbedContainer) instead -- Removed deprecated interface `SilverStripe\AssetAdmin\Model\Embeddable` - use [`SilverStripe\View\Embed\Embeddable`](api:SilverStripe\View\Embed\Embeddable) instead -- Removed deprecated method `SilverStripe\AssetAdmin\Extensions\UsedOnTableExtension::updateUsage()` - use `updateUsageExcludedClasses()` instead -- Changed return type for [`SilverStripe\AssetAdmin\BatchAction\DeleteAssets::run()`](api:SilverStripe\AssetAdmin\BatchAction\DeleteAssets::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()) for `$record` from dynamic to [`SilverStripe\Assets\File`](api:SilverStripe\Assets\File) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$doPublish` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -### `silverstripe/assets` - -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\FileMigrationHelper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\FolderMigrationHelper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\LegacyThumbnailMigrationHelper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\NormaliseAccessMigrationHelper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\SecureAssetsMigrationHelper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\TagsToShortcodeHelper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\TagsToShortcodeTask` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\VersionedFilesMigrationTask` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\Dev\VersionedFilesMigrator` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Assets\FilenameParsing\LegacyFileIDHelper` - legacy file names are not supported in Silverstripe CMS 5 -- Removed deprecated class `SilverStripe\Dev\Tasks\FixFolderPermissionsHelper` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Assets\File::ini2bytes()` - use [`SilverStripe\Core\Convert::memstring2bytes()`](api:SilverStripe\Core\Convert::memstring2bytes()) instead -- Removed deprecated method `SilverStripe\Assets\File::RelativeLink()` - use [`SilverStripe\Assets\File::getURL()`](api:SilverStripe\Assets\File::getURL()) instead -- Removed deprecated method `SilverStripe\Assets\Filesystem::fixfiles()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::cleanFilename()` - use [`SilverStripe\Assets\FilenameParsing\FileIDHelper::cleanFilename()`](api:SilverStripe\Assets\FilenameParsing\FileIDHelper::cleanFilename()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFilesystem()` - use [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::findVariants()` - use [`SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::findVariants()`](api:SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::findVariants()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getFilesystemFor()` - use `SilverStripe\Assets\Flysystem\FlysystemAssetStore::applyToFileIDOnFilesystem()` instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getOriginalFilename()` - use [`SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()`](api:SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()) and [`SilverStripe\Assets\FilenameParsing\ParsedFileID::getFilename()`](api:SilverStripe\Assets\FilenameParsing\ParsedFileID::getFilename()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getStreamSHA1()` - use [`SilverStripe\Assets\Storage\FileHashingService::computeFromStream()`](api:SilverStripe\Assets\Storage\FileHashingService::computeFromStream()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getVariant()` - use [`SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()`](api:SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()) and [`SilverStripe\Assets\FilenameParsing\ParsedFileID::getVariant()`](api:SilverStripe\Assets\FilenameParsing\ParsedFileID::getVariant()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFilesystems()` - use `moveBetweenFileStore()` instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::parseFileID()` - use [`SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()`](api:SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::removeVariant()` - use [`SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()`](api:SilverStripe\Assets\FilenameParsing\FileResolutionStrategy::parseFileID()) and [`SilverStripe\Assets\FilenameParsing\ParsedFileID::setVariant()`](api:SilverStripe\Assets\FilenameParsing\ParsedFileID::setVariant()) instead -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::useLegacyFilenames()` - legacy file names are not supported in Silverstripe CMS 5 -- Removed deprecated method `SilverStripe\Assets\Shortcodes\FileLinkTracking::ImageTracking()` - use [`SilverStripe\Assets\Shortcodes\FileLinkTracking::FileTracking()`](api:SilverStripe\Assets\Shortcodes\FileLinkTracking::FileTracking()) instead -- Removed deprecated config `SilverStripe\Assets\Flysystem\FlysystemAssetStore.legacy_filenames` - legacy file names are not supported in Silverstripe CMS 5 -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::current()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::current()) from dynamic to `string` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::key()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::key()) from dynamic to `int` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::next()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::rewind()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::valid()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::valid()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::cleanFilename()`](api:SilverStripe\Assets\Dev\TestAssetStore::cleanFilename()) for `$filename` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::getFilesystemFor()`](api:SilverStripe\Assets\Dev\TestAssetStore::getFilesystemFor()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::getOriginalFilename()`](api:SilverStripe\Assets\Dev\TestAssetStore::getOriginalFilename()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::parseFileID()`](api:SilverStripe\Assets\Dev\TestAssetStore::parseFileID()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::removeVariant()`](api:SilverStripe\Assets\Dev\TestAssetStore::removeVariant()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::createResponseFor()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::createResponseFor()) for `$flysystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()) for `$fs` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()) for `$from` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()) for `$to` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::setProtectedFilesystem()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::setProtectedFilesystem()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::setPublicFilesystem()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::setPublicFilesystem()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::truncateDirectory()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::truncateDirectory()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\GeneratedAssets::setFilesystem()`](api:SilverStripe\Assets\Flysystem\GeneratedAssets::setFilesystem()) for `$store` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) - -### `silverstripe/auditor` - -- Removed deprecated method `SilverStripe\Auditor\AuditHook::bind_manipulation_capture()` - use `ProxyDBExtension` with the `tractorcow/silverstripe-proxy-db` module instead -- Removed deprecated method `SilverStripe\Auditor\AuditHook::onBeforeInit()` - use `tractorcow/silverstripe-proxy-db` instead -- Changed parameter type in [`SilverStripe\Auditor\RealIPProcessor::__invoke()`](api:SilverStripe\Auditor\RealIPProcessor::__invoke()) for `$record` from `array` to `Monolog\LogRecord` - -### `silverstripe/behat-extension` - -- Removed deprecated method `SilverStripe\BehatExtension\Context\BasicContext::iAttachTheFileTo()` - use `SilverStripe\BehatExtension\Context\BasicContext::iAttachTheFileToTheField()` instead -- Changed return type for `SilverStripe\BehatExtension\Utility\TestMailer::clearEmails()` from dynamic to `void` -- Changed return type for `SilverStripe\BehatExtension\Utility\TestMailer::findEmail()` from dynamic to `array|null` -- Changed parameter type in `SilverStripe\BehatExtension\Utility\TestMailer::findEmail()` for `$to` from dynamic to `string` -- Changed parameter type in `SilverStripe\BehatExtension\Utility\TestMailer::findEmail()` for `$from` from dynamic to `string|null` -- Changed parameter type in `SilverStripe\BehatExtension\Utility\TestMailer::findEmail()` for `$subject` from dynamic to `string|null` -- Changed parameter type in `SilverStripe\BehatExtension\Utility\TestMailer::findEmail()` for `$content` from dynamic to `string|null` -- Changed parameter type in `SilverStripe\BehatExtension\Utility\TestMailer::saveEmail()` for `$data` from dynamic to `array` -- Changed parameter name in `SilverStripe\BehatExtension\Context\BasicContext::iAddToTheTagField()` from `$locator` to `$selector` - -### `silverstripe/campaign-admin` - -- Removed deprecated method `SilverStripe\CampaignAdmin\AddToCampaignHandler::handle()` - use [`SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()`](api:SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()) or [`SilverStripe\CampaignAdmin\AddToCampaignHandler::Form()`](api:SilverStripe\CampaignAdmin\AddToCampaignHandler::Form()) directly instead -- Changed return type for [`SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()`](api:SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -### `silverstripe/cms` - -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigator` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed [`SilverStripe\Admin\Navigator\SilverStripeNavigator`](api:SilverStripe\Admin\Navigator\SilverStripeNavigator) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed [`SilverStripe\Admin\Navigator\SilverStripeNavigatorItem`](api:SilverStripe\Admin\Navigator\SilverStripeNavigatorItem) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_Unversioned` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed [`SilverStripe\Admin\Navigator\SilverStripeNavigatorItem_Unversioned`](api:SilverStripe\Admin\Navigator\SilverStripeNavigatorItem_Unversioned) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_ArchiveLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_ArchiveLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_ArchiveLink) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_LiveLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_LiveLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_LiveLink) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_StageLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_StageLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_StageLink) -- Removed deprecated class `SilverStripe\CMS\Controllers\CMSPageHistoryController` - use [`SilverStripe\VersionedAdmin\Controllers\CMSPageHistoryViewerController`](api:SilverStripe\VersionedAdmin\Controllers\CMSPageHistoryViewerController) instead -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFileExtension` - use [`SilverStripe\Assets\Shortcodes\FileLinkTracking`](api:SilverStripe\Assets\Shortcodes\FileLinkTracking) instead -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension` - use [`SilverStripe\Admin\Forms\UsedOnTable`](api:SilverStripe\Admin\Forms\UsedOnTable) instead -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFolderExtension` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\CMS\Tasks\MigrateSiteTreeLinkingTask` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\CMS\Tasks\RemoveOrphanedPagesTask` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\CMS\Tasks\SiteTreeMaintenanceTask` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\CMS\Controllers\CMSMain::publishall()` - use custom logic instead -- Removed deprecated method `SilverStripe\CMS\Model\SiteTree::creatableChildren()` - use [`SilverStripe\CMS\Model\SiteTree::creatableChildPages()`](api:SilverStripe\CMS\Model\SiteTree::creatableChildPages()) instead -- Removed deprecated method `SilverStripe\CMS\Model\VirtualPage::updateImageTracking()` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\CMS\Controllers\CMSMain.subitem_class` - do not use this option -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Archive::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Archive::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Publish::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Publish::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Restore::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Restore::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Unpublish::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Unpublish::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::childfilter()`](api:SilverStripe\CMS\Controllers\CMSMain::childfilter()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::duplicate()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicate()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::getResponseNegotiator()`](api:SilverStripe\CMS\Controllers\CMSMain::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::getsubtree()`](api:SilverStripe\CMS\Controllers\CMSMain::getsubtree()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::index()`](api:SilverStripe\CMS\Controllers\CMSMain::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::savetreenode()`](api:SilverStripe\CMS\Controllers\CMSMain::savetreenode()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()`](api:SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\ContentController::handleRequest()`](api:SilverStripe\CMS\Controllers\ContentController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::controller_for()`](api:SilverStripe\CMS\Controllers\ModelAsController::controller_for()) from dynamic to [`SilverStripe\CMS\Controllers\ContentController`](api:SilverStripe\CMS\Controllers\ContentController) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::getNestedController()`](api:SilverStripe\CMS\Controllers\ModelAsController::getNestedController()) from dynamic to [`SilverStripe\CMS\Controllers\ContentController`](api:SilverStripe\CMS\Controllers\ContentController) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::handleRequest()`](api:SilverStripe\CMS\Controllers\ModelAsController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\RootURLController::handleRequest()`](api:SilverStripe\CMS\Controllers\RootURLController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::childfilter()`](api:SilverStripe\CMS\Controllers\CMSMain::childfilter()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::duplicate()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicate()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::getsubtree()`](api:SilverStripe\CMS\Controllers\CMSMain::getsubtree()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::index()`](api:SilverStripe\CMS\Controllers\CMSMain::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::savetreenode()`](api:SilverStripe\CMS\Controllers\CMSMain::savetreenode()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()`](api:SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\OldPageRedirector::onBeforeHTTPError404()`](api:SilverStripe\CMS\Controllers\OldPageRedirector::onBeforeHTTPError404()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter name in [`SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()`](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) from `$base` to `$link` -- Changed parameter name in [`SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()`](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) from `$action` to `$base` - -### `silverstripe/comments` - -- Removed deprecated class `SilverStripe\Comments\Admin\CommentsGridFieldAction` - use `SilverStripe\Comments\Admin\CommentsGridFieldApproveAction` or `SilverStripe\Comments\Admin\CommentsGridFieldSpamAction` instead -- Removed deprecated class `SilverStripe\Comments\Admin\CommentsGridFieldBulkAction\Handler` - use `SilverStripe\Comments\Admin\CommentsGridFieldBulkAction\SpamHandler` or `SilverStripe\Comments\Admin\CommentsGridFieldBulkAction\ApproveHandler` instead -- Removed deprecated method `SilverStripe\Comments\Model\Comment::getParent()` - use `SilverStripe\Comments\Model\Comment::Parent()` instead -- Changed return type for `SilverStripe\Comments\Controllers\CommentingController::redirectBack()` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) - -### `silverstripe/config` - -- Removed deprecated method `SilverStripe\Config\Collections\DeltaConfigCollection::unserialize()` - use [`SilverStripe\Config\Collections\DeltaConfigCollection::__unserialize()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::__unserialize()) instead -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::serialize()` - use [`SilverStripe\Config\Collections\MemoryConfigCollection::__serialize()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::__serialize()) instead -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::unserialize()` - use [`SilverStripe\Config\Collections\MemoryConfigCollection::__unserialize()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::__unserialize()) instead -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::update()` - use [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) instead -- Removed deprecated method `SilverStripe\Config\Middleware\MiddlewareCommon::serialize()` - use [`SilverStripe\Config\Middleware\MiddlewareCommon::__serialize()`](api:SilverStripe\Config\Middleware\MiddlewareCommon::__serialize()) instead -- Removed deprecated method `SilverStripe\Config\Middleware\MiddlewareCommon::unserialize()` - use [`SilverStripe\Config\Middleware\MiddlewareCommon::__unserialize()`](api:SilverStripe\Config\Middleware\MiddlewareCommon::__unserialize()) instead -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) from dynamic to `static` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$data` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$metadata` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$data` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$metadata` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$metadata` from dynamic to `array` - -### `silverstripe/crontask` - -- Removed deprecated method `SilverStripe\CronTask\Controllers\CronTaskController::setQuiet()` - use [`SilverStripe\CronTask\Controllers\CronTaskController::setVerbosity()`](api:SilverStripe\CronTask\Controllers\CronTaskController::setVerbosity()) instead -- Removed deprecated property `SilverStripe\CronTask\Controllers\CronTaskController::$quiet` - use `SilverStripe\CronTask\Controllers\CronTaskController.verbosity` instead - -### `silverstripe/environmentcheck` - -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_email_results()` - use config API instead -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_from_email_address()` - use config API instead -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_to_email_address()` - use config API instead -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_email_results()` - use config API instead -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_from_email_address()` - use config API instead -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_to_email_address()` - use config API instead - -### `silverstripe/errorpage` - -- Changed return type for [`SilverStripe\ErrorPage\ErrorPageController::handleRequest()`](api:SilverStripe\ErrorPage\ErrorPageController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) - -### `silverstripe/framework` - -- Removed deprecated class `SilverStripe\Control\Email\SwiftMailer` - use `symfony/mailer` instead -- Removed deprecated class `SilverStripe\Control\Email\SwiftPlugin` - use `symfony/mailer` instead -- Removed deprecated class `SilverStripe\Control\RequestProcessor` - use [`SilverStripe\Control\Middleware\HTTPMiddleware`](api:SilverStripe\Control\Middleware\HTTPMiddleware) directly instead. -- Removed deprecated class `SilverStripe\Core\Startup\AbstractConfirmationToken` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Core\Startup\ConfirmationTokenChain` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Core\Startup\ErrorControlChain` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Core\Startup\ErrorControlChainMiddleware` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Core\Startup\ErrorDirector` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Core\Startup\ParameterConfirmationToken` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Core\Startup\URLConfirmationToken` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Dev\CSVParser` - use `League\Csv\Reader` instead -- Removed deprecated class `SilverStripe\Dev\InstallerTest` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Dev\SapphireInfo` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Dev\Tasks\MigrateFileTask` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Dev\TestSession_STResponseWrapper` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\Forms\GridField\GridFieldVersionedState` - use [`SilverStripe\Versioned\VersionedGridFieldState\VersionedGridFieldState`](api:SilverStripe\Versioned\VersionedGridFieldState\VersionedGridFieldState) instead -- Removed deprecated class `SilverStripe\Forms\HTMLEditor\TinyMCEGZIPGenerator` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\ORM\Connect\PDOConnector` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\ORM\Connect\PDOQuery` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\ORM\Connect\PDOStatementHandle` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\ORM\Map_Iterator` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\View\Embed\EmbedResource` - use [`SilverStripe\View\Embed\EmbedContainer`](api:SilverStripe\View\Embed\EmbedContainer) instead -- Removed deprecated class `SilverStripe\View\Parsers\Diff` - use [`SilverStripe\View\Parsers\HtmlDiff`](api:SilverStripe\View\Parsers\HtmlDiff) instead -- Removed deprecated class `SilverStripe\View\Parsers\HTML4Value` - use [`SilverStripe\View\Parsers\HTMLValue`](api:SilverStripe\View\Parsers\HTMLValue) instead -- Removed deprecated interface `SilverStripe\Control\Email\Mailer` - use `symfony/mailer` instead -- Removed deprecated interface `SilverStripe\Control\RequestFilter` - use [`SilverStripe\Control\Middleware\HTTPMiddleware`](api:SilverStripe\Control\Middleware\HTTPMiddleware) instead -- Removed deprecated interface `SilverStripe\View\Requirements_Minifier` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Controller::disableBasicAuth()` - add this controller's URL to Silverstripe\Security\BasicAuthMiddleware.URLPatterns injected property instead -- Removed deprecated method `SilverStripe\Control\Director::isManifestFlushed()` - use [`SilverStripe\Core\CoreKernel::isFlushed()`](api:SilverStripe\Core\CoreKernel::isFlushed()) instead -- Removed deprecated method `SilverStripe\Control\Email\Email::BaseURL()` - use [`SilverStripe\Control\Email\Email::getData()`](api:SilverStripe\Control\Email\Email::getData()) instead -- Removed deprecated method `SilverStripe\Control\Email\Email::debug()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::findPlainPart()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::generatePlainPartFromBody()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::getFailedRecipients()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::getSwiftMessage()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::hasPlainPart()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::invalidateBody()` - use [`SilverStripe\Control\Email\Email::html()`](api:SilverStripe\Control\Email\Email::html()) instead -- Removed deprecated method `SilverStripe\Control\Email\Email::IsEmail()` - use [`SilverStripe\Control\Email\Email::getData()`](api:SilverStripe\Control\Email\Email::getData()) instead -- Removed deprecated method `SilverStripe\Control\Email\Email::mergeConfiguredEmails()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::render()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::setFailedRecipients()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\Email\Email::setSwiftMessage()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\HTTP::add_cache_headers()` - headers are added automatically by [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware) instead. -- Removed deprecated method `SilverStripe\Control\HTTP::augmentState()` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware) instead -- Removed deprecated method `SilverStripe\Control\HTTP::get_cache_age()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\HTTP::gmt_date()` - use native PHP function [`gmdate()`](https://www.php.net/manual/en/function.gmdate.php) instead -- Removed deprecated method `SilverStripe\Control\HTTP::register_etag()` - use [`SilverStripe\Control\Middleware\ChangeDetectionMiddleware`](api:SilverStripe\Control\Middleware\ChangeDetectionMiddleware) instead -- Removed deprecated method `SilverStripe\Control\HTTP::register_modification_date()` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::registerModificationDate()`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::registerModificationDate()) instead -- Removed deprecated method `SilverStripe\Control\HTTP::register_modification_timestamp()` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::registerModificationDate()`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::registerModificationDate()) instead -- Removed deprecated method `SilverStripe\Control\HTTP::set_cache_age()` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::setMaxAge()`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::setMaxAge()) instead -- Removed deprecated method `SilverStripe\Control\HTTPRequest::detect_method()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Control\SimpleResourceURLGenerator::resolveUnsecuredResource()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Core\BaseKernel::getIgnoredCIConfigs()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Core\BaseKernel::sessionEnvironment()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Core\ClassInfo::baseDataClass()` - use [`SilverStripe\ORM\DataObjectSchema::baseDataClass()`](api:SilverStripe\ORM\DataObjectSchema::baseDataClass()) -- Removed deprecated method `SilverStripe\Core\ClassInfo::table_for_object_field()` - use [`SilverStripe\ORM\DataObjectSchema::tableForField()`](api:SilverStripe\ORM\DataObjectSchema::tableForField()) -- Removed deprecated method `SilverStripe\Core\Config\Config_ForClass::update()` - use [`SilverStripe\Core\Config\Config_ForClass::merge()`](api:SilverStripe\Core\Config\Config_ForClass::merge()) instead -- Removed deprecated method `SilverStripe\Core\Config\Configurable::set_stat()` - use `config()->set()` instead -- Removed deprecated method `SilverStripe\Core\Config\Configurable::stat()` - use `config()->get()` instead -- Removed deprecated method `SilverStripe\Core\Convert::array2json()` - use [`json_encode()`](https://www.php.net/manual/en/function.json-encode.php) instead -- Removed deprecated method `SilverStripe\Core\Convert::json2array()` - use [`json_decode()`](https://www.php.net/manual/en/function.json-decode.php) instead -- Removed deprecated method `SilverStripe\Core\Convert::json2obj()` - use [`json_decode()`](https://www.php.net/manual/en/function.json-decode.php) instead -- Removed deprecated method `SilverStripe\Core\Convert::raw2json()` - use [`json_encode()`](https://www.php.net/manual/en/function.json-encode.php) instead -- Removed deprecated method `SilverStripe\Core\Convert::recursiveXMLToArray()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Core\Convert::xml2array()` - use a dedicated XML library instead -- Removed deprecated method `SilverStripe\Core\CustomMethods::findMethodsFromExtension()` - use `SilverStripe\Core\CustomMethods::findMethodsFrom()` instead -- Removed deprecated method `SilverStripe\Core\Extensible::constructExtensions()` - extensions and methods are now lazy-loaded -- Removed deprecated method `SilverStripe\Core\Injector\Injector::hasService()` - use [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) instead -- Removed deprecated method `SilverStripe\Core\Manifest\ClassLoader::classExists()` - use [`SilverStripe\Core\ClassInfo::exists()`](api:SilverStripe\Core\ClassInfo::exists()) instead -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getCIConfig()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getRelativeResourcePath()` - use `getResource($path)->getRelativePath()` instead -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getResourcePath()` - use `getResource($path)->getPath()` instead -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getResourceURL()` - use `getResource($path)->getURL()` instead -- Removed deprecated method `SilverStripe\Core\Manifest\Module::hasResource()` - use `getResource($path)->exists()` instead -- Removed deprecated method `SilverStripe\Core\Manifest\Module::serialize()` - use [`SilverStripe\Core\Manifest\Module::__serialize()`](api:SilverStripe\Core\Manifest\Module::__serialize()) instead -- Removed deprecated method `SilverStripe\Core\Manifest\Module::unserialize()` - use [`SilverStripe\Core\Manifest\Module::__unserialize()`](api:SilverStripe\Core\Manifest\Module::__unserialize()) instead -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::getNewSplitFileName()` - name files yourself instead -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::processChunk()` - process rows individually instead -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::splitFile()` - process files using a stream instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeError()` - use [`SilverStripe\Dev\DebugView::renderError()`](api:SilverStripe\Dev\DebugView::renderError()) instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeFooter()` - use [`SilverStripe\Dev\DebugView::renderFooter()`](api:SilverStripe\Dev\DebugView::renderFooter()) instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeHeader()` - use [`SilverStripe\Dev\DebugView::renderHeader()`](api:SilverStripe\Dev\DebugView::renderHeader()) instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeInfo()` - use [`SilverStripe\Dev\DebugView::renderInfo()`](api:SilverStripe\Dev\DebugView::renderInfo()) instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeSourceFragment()` - use [`SilverStripe\Dev\DebugView::renderSourceFragment()`](api:SilverStripe\Dev\DebugView::renderSourceFragment()) instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeTrace()` - use [`SilverStripe\Dev\DebugView::renderTrace()`](api:SilverStripe\Dev\DebugView::renderTrace()) instead -- Removed deprecated method `SilverStripe\Dev\DebugView::writeVariable()` - use [`SilverStripe\Dev\DebugView::renderVariable()`](api:SilverStripe\Dev\DebugView::renderVariable()) instead -- Removed deprecated method `SilverStripe\Dev\Deprecation::dump_settings()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Dev\Deprecation::get_calling_module_from_trace()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Dev\Deprecation::get_enabled()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Dev\Deprecation::notification_version()` - use [`SilverStripe\Dev\Deprecation::enable()`](api:SilverStripe\Dev\Deprecation::enable()) instead -- Removed deprecated method `SilverStripe\Dev\Deprecation::restore_settings()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Dev\Deprecation::set_enabled()` - use [`SilverStripe\Dev\Deprecation::enable()`](api:SilverStripe\Dev\Deprecation::enable()) instead -- Removed deprecated method `SilverStripe\Dev\FunctionalTest::get_use_draft_site()` - use `?stage=Stage` in your request's querystring instead -- Removed deprecated method `SilverStripe\Dev\FunctionalTest::useDraftSite()` - use `?stage=Stage` in your request's querystring instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSAllMatch()` - use [`SilverStripe\Dev\SapphireTest::assertListAllMatch()`](api:SilverStripe\Dev\SapphireTest::assertListAllMatch()) instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSContains()` - use [`SilverStripe\Dev\SapphireTest::assertListContains()`](api:SilverStripe\Dev\SapphireTest::assertListContains()) instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSEquals()` - use [`SilverStripe\Dev\SapphireTest::assertListEquals()`](api:SilverStripe\Dev\SapphireTest::assertListEquals()) instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertNotDOSContains()` - use [`SilverStripe\Dev\SapphireTest::assertListNotContains()`](api:SilverStripe\Dev\SapphireTest::assertListNotContains()) instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::getFixtureFactory()` - use [`SilverStripe\Dev\State\FixtureTestState`](api:SilverStripe\Dev\State\FixtureTestState) instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::loadFixture()` - use [`SilverStripe\Dev\State\FixtureTestState`](api:SilverStripe\Dev\State\FixtureTestState) instead -- Removed deprecated method `SilverStripe\Dev\SapphireTest::setFixtureFactory()` - use [`SilverStripe\Dev\State\FixtureTestState`](api:SilverStripe\Dev\State\FixtureTestState) instead -- Removed deprecated method `SilverStripe\Dev\TestKernel::getIgnoredCIConfigs()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Dev\TestKernel::setIgnoredCIConfigs()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Dev\TestMailer::saveEmail()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Forms\FieldList::collateDataFields()` - use [`SilverStripe\Forms\FieldList::dataFields()`](api:SilverStripe\Forms\FieldList::dataFields()) or [`SilverStripe\Forms\FieldList::saveableFields()`](api:SilverStripe\Forms\FieldList::saveableFields()) instead -- Removed deprecated method `SilverStripe\Forms\Form::formHtmlContent()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Forms\GridField\GridFieldFilterHeader::__construct()` -- Removed deprecated method `SilverStripe\Forms\GridField\GridFieldFilterHeader::getLegacyFilterHeader()` - use search field instead -- Removed deprecated method `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getAdminModule()` - set `base_dir` or `editor_css` config instead -- Removed deprecated method `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getTinyMCEPath()` - use [`SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getTinyMCEResourcePath()`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getTinyMCEResourcePath()) instead -- Removed deprecated method `SilverStripe\Forms\TextField::InternallyLabelledField()` - use [`SilverStripe\Forms\TextField::setValue()`](api:SilverStripe\Forms\TextField::setValue()) instead -- Removed deprecated method `SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::serialize()` - use [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::__serialize()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::__serialize()) instead -- Removed deprecated method `SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::unserialize()` - use [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::__unserialize()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::__unserialize()) instead -- Removed deprecated method `SilverStripe\Logging\MonologErrorHandler::getLogger()` - use [`SilverStripe\Logging\MonologErrorHandler::getLoggers()`](api:SilverStripe\Logging\MonologErrorHandler::getLoggers()) instead -- Removed deprecated method `SilverStripe\Logging\MonologErrorHandler::setLogger()` - use [`SilverStripe\Logging\MonologErrorHandler::pushLogger()`](api:SilverStripe\Logging\MonologErrorHandler::pushLogger()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLQuery::nextRecord()` - use [`SilverStripe\ORM\Connect\MySQLQuery::getIterator()`](api:SilverStripe\ORM\Connect\MySQLQuery::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLQuery::seek()` - use [`SilverStripe\ORM\Connect\MySQLQuery::getIterator()`](api:SilverStripe\ORM\Connect\MySQLQuery::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLStatement::nextRecord()` - use [`SilverStripe\ORM\Connect\MySQLStatement::getIterator()`](api:SilverStripe\ORM\Connect\MySQLStatement::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLStatement::seek()` - use [`SilverStripe\ORM\Connect\MySQLStatement::getIterator()`](api:SilverStripe\ORM\Connect\MySQLStatement::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::current()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::first()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::key()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::next()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::nextRecord()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::rewind()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::seek()` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated method `SilverStripe\ORM\Connect\Query::valid()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\ORM\DatabaseAdmin::updateLegacyClassNames()` - use [`SilverStripe\ORM\DatabaseAdmin::updateLegacyClassNameField()`](api:SilverStripe\ORM\DatabaseAdmin::updateLegacyClassNameField()) instead -- Removed deprecated method `SilverStripe\ORM\DataExtension::unload_extra_statics()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\ORM\DataList::getGenerator()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\ORM\DataObject::doValidate()` - use [`SilverStripe\ORM\DataObject::validate()`](api:SilverStripe\ORM\DataObject::validate()) instead -- Removed deprecated method `SilverStripe\ORM\DataObject::duplicateManyManyRelations()` - use [`SilverStripe\ORM\DataObject::duplicateRelations()`](api:SilverStripe\ORM\DataObject::duplicateRelations()) instead -- Removed deprecated method `SilverStripe\ORM\DB::getConn()` - use [`SilverStripe\ORM\DB::get_conn()`](api:SilverStripe\ORM\DB::get_conn()) instead -- Removed deprecated method `SilverStripe\ORM\FieldType\DBClassName::clear_classname_cache()` - use [`SilverStripe\ORM\FieldType\DBEnum::flushCache()`](api:SilverStripe\ORM\FieldType\DBEnum::flushCache()) instead -- Removed deprecated method `SilverStripe\ORM\ValidationResult::serialize()` - use [`SilverStripe\ORM\ValidationResult::__serialize()`](api:SilverStripe\ORM\ValidationResult::__serialize()) instead -- Removed deprecated method `SilverStripe\ORM\ValidationResult::unserialize()` - use [`SilverStripe\ORM\ValidationResult::__unserialize()`](api:SilverStripe\ORM\ValidationResult::__unserialize()) instead -- Removed deprecated method `SilverStripe\Security\Member::checkPassword()` - use [`SilverStripe\Security\Authenticator::checkPassword()`](api:SilverStripe\Security\Authenticator::checkPassword()) instead -- Removed deprecated method `SilverStripe\Security\Member::create_new_password()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Security\Member::currentUser()` - use [`SilverStripe\Security\Security::getCurrentUser()`](api:SilverStripe\Security\Security::getCurrentUser()) instead -- Removed deprecated method `SilverStripe\Security\Member::currentUserID()` - use [`SilverStripe\Security\Security::getCurrentUser()`](api:SilverStripe\Security\Security::getCurrentUser()) instead -- Removed deprecated method `SilverStripe\Security\Member::default_admin()` - use [`SilverStripe\Security\DefaultAdminService::findOrCreateDefaultAdmin()`](api:SilverStripe\Security\DefaultAdminService::findOrCreateDefaultAdmin()) instead -- Removed deprecated method `SilverStripe\Security\Member::logged_in_session_exists()` - use [`SilverStripe\Security\Security::getCurrentUser()`](api:SilverStripe\Security\Security::getCurrentUser()) instead -- Removed deprecated method `SilverStripe\Security\Member::logIn()` - use [`SilverStripe\Security\Security::setCurrentUser()`](api:SilverStripe\Security\Security::setCurrentUser()) or [`SilverStripe\Security\IdentityStore::logIn()`](api:SilverStripe\Security\IdentityStore::logIn()) instead -- Removed deprecated method `SilverStripe\Security\Member::logOut()` - use [`SilverStripe\Security\Security::setCurrentUser(null)`](api:SilverStripe\Security\Security::setCurrentUser()) or an [`SilverStripe\Security\IdentityStore::logOut()`](api:SilverStripe\Security\IdentityStore::logOut()) instead -- Removed deprecated method `SilverStripe\Security\Member::set_title_columns()` - use `SilverStripe\Security\Member.title_format` config instead -- Removed deprecated method `SilverStripe\Security\PasswordValidator::characterStrength()` - use [`SilverStripe\Security\PasswordValidator::setMinTestScore()`](api:SilverStripe\Security\PasswordValidator::setMinTestScore()) and [`SilverStripe\Security\PasswordValidator::setTestNames()`](api:SilverStripe\Security\PasswordValidator::setTestNames()) instead -- Removed deprecated method `SilverStripe\Security\PasswordValidator::checkHistoricalPasswords()` - use [`SilverStripe\Security\PasswordValidator::setHistoricCount()`](api:SilverStripe\Security\PasswordValidator::setHistoricCount()) instead -- Removed deprecated method `SilverStripe\Security\PasswordValidator::minLength()` - use [`SilverStripe\Security\PasswordValidator::setMinLength()`](api:SilverStripe\Security\PasswordValidator::setMinLength()) instead -- Removed deprecated method `SilverStripe\Security\Permission::get_declared_permissions_list()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Security\Permission::get_label_for_permission()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Security\Permission::traverse_declared_permissions()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Security\RandomGenerator::generateEntropy()` - use native PHP function [`random_bytes()`](https://www.php.net/manual/en/function.random-bytes) instead -- Removed deprecated method `SilverStripe\Security\Security::check_default_admin()` - use [`SilverStripe\Security\DefaultAdminService::isDefaultAdminCredentials()`](api:SilverStripe\Security\DefaultAdminService::isDefaultAdminCredentials()) instead -- Removed deprecated method `SilverStripe\Security\Security::clear_default_admin()` - use [`SilverStripe\Security\DefaultAdminService::clearDefaultAdmin()`](api:SilverStripe\Security\DefaultAdminService::clearDefaultAdmin()) instead -- Removed deprecated method `SilverStripe\Security\Security::default_admin_password()` - use [`SilverStripe\Security\DefaultAdminService::getDefaultAdminPassword()`](api:SilverStripe\Security\DefaultAdminService::getDefaultAdminPassword()) instead -- Removed deprecated method `SilverStripe\Security\Security::default_admin_username()` - use [`SilverStripe\Security\DefaultAdminService::getDefaultAdminUsername()`](api:SilverStripe\Security\DefaultAdminService::getDefaultAdminUsername()) instead -- Removed deprecated method `SilverStripe\Security\Security::findAnAdministrator()` - use [`SilverStripe\Security\DefaultAdminService::findOrCreateDefaultAdmin()`](api:SilverStripe\Security\DefaultAdminService::findOrCreateDefaultAdmin()) instead -- Removed deprecated method `SilverStripe\Security\Security::getLoginForms()` - use `delegateToMultipleHandlers()` instead -- Removed deprecated method `SilverStripe\Security\Security::has_default_admin()` - use [`SilverStripe\Security\DefaultAdminService::hasDefaultAdmin()`](api:SilverStripe\Security\DefaultAdminService::hasDefaultAdmin()) instead -- Removed deprecated method `SilverStripe\Security\Security::setDefaultAdmin()` - use [`SilverStripe\Security\DefaultAdminService::setDefaultAdmin()`](api:SilverStripe\Security\DefaultAdminService::setDefaultAdmin()) instead -- Removed deprecated method `SilverStripe\View\Requirements_Backend::getMinifier()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\View\Requirements_Backend::getMinifyCombinedFiles()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\View\Requirements_Backend::setMinifier()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\View\Requirements_Backend::setMinifyCombinedFiles()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\View\Shortcodes\EmbedShortcodeProvider::embedForTemplate()` - use [`SilverStripe\View\Shortcodes\EmbedShortcodeProvider::embeddableToHtml()`](api:SilverStripe\View\Shortcodes\EmbedShortcodeProvider::embeddableToHtml()) instead -- Removed deprecated method `SilverStripe\View\SSViewer::set_theme()` - use [`SilverStripe\View\SSViewer::set_themes()`](api:SilverStripe\View\SSViewer::set_themes()) instead -- Removed deprecated method `SilverStripe\View\SSViewer_BasicIteratorSupport::First()` - use [`SilverStripe\View\SSViewer_BasicIteratorSupport::IsFirst()`](api:SilverStripe\View\SSViewer_BasicIteratorSupport::IsFirst()) instead -- Removed deprecated method `SilverStripe\View\SSViewer_BasicIteratorSupport::Last()` - use [`SilverStripe\View\SSViewer_BasicIteratorSupport::IsLast()`](api:SilverStripe\View\SSViewer_BasicIteratorSupport::IsLast()) instead -- Removed deprecated method `SilverStripe\View\ViewableData::ThemeDir()` - use [`SilverStripe\Core\Manifest\ModuleResourceLoader::resourcePath()`](api:SilverStripe\Core\Manifest\ModuleResourceLoader::resourcePath()) or [`SilverStripe\Core\Manifest\ModuleResourceLoader::resourceURL()`](api:SilverStripe\Core\Manifest\ModuleResourceLoader::resourceURL()) instead -- Removed deprecated config `SilverStripe\Control\Director.alternate_public_dir` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\Control\HTTP.cache_ajax_requests` -- Removed deprecated config `SilverStripe\Control\HTTP.cache_control` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware) instead -- Removed deprecated config `SilverStripe\Control\HTTP.disable_http_cache` - use `SilverStripe\Control\Middleware\HTTPCacheControlMiddleware.defaultState` or `SilverStripe\Control\Middleware\HTTPCacheControlMiddleware.defaultForcingLevel` instead -- Removed deprecated config `SilverStripe\Control\HTTP.vary` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware) instead -- Removed deprecated config `SilverStripe\Forms\GridField\GridFieldFilterHeader.force_legacy` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\i18n\Data\Sources.module_priority` - use `SilverStripe\Core\Manifest\ModuleManifest.module_priority` instead -- Removed deprecated config `SilverStripe\Security\Permission.declared_permissions` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\Security\Permission.declared_permissions_list` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\Security\Security.word_list` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\View\Shortcodes\EmbedShortcodeProvider.attribute_whitelist` without equivalent functionality to replace it -- Removed deprecated config `SilverStripe\View\SSViewer.theme` - use [`SilverStripe\View\SSViewer.themes`](api:SilverStripe\View\SSViewer.themes) config instead -- Removed deprecated constant `SilverStripe\Core\Manifest\ManifestFileFinder::RESOURCES_DIR` - use global `RESOURCES_DIR` instead. -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_PHPUNIT_FIVE` without equivalent functionality to replace it -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_PHPUNIT_NINE` without equivalent functionality to replace it -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_UNKNOWN` without equivalent functionality to replace it -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::TRIM_CHARS` - use [`SilverStripe\Core\Path::normalise()`](api:SilverStripe\Core\Path::normalise()) instead -- Removed deprecated property `SilverStripe\Control\Controller::$basicAuthEnabled` - add this controller's URL to `SilverStripe\Security\BasicAuthMiddleware.URLPatterns` injected property instead of setting false -- Removed deprecated property `SilverStripe\Control\HTTP::$cache_age` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::setMaxAge()`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware::setMaxAge()) instead -- Removed deprecated property `SilverStripe\Control\HTTP::$etag` - use [`SilverStripe\Control\Middleware\ChangeDetectionMiddleware`](api:SilverStripe\Control\Middleware\ChangeDetectionMiddleware) instead -- Removed deprecated property `SilverStripe\Control\HTTP::$modification_date` - use [`SilverStripe\Control\Middleware\HTTPCacheControlMiddleware`](api:SilverStripe\Control\Middleware\HTTPCacheControlMiddleware) instead -- Removed deprecated property `SilverStripe\Dev\Deprecation::$enabled` - use `SilverStripe\Dev\Deprecation.currentlyEnabled` instead -- Removed deprecated property `SilverStripe\Dev\Deprecation::$module_version_overrides` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Dev\Deprecation::$notice_level` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Dev\Deprecation::$version` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Dev\FunctionalTest::$use_draft_site` - use `?stage=Stage` in your request's querystring instead -- Removed deprecated property `SilverStripe\Dev\TestMailer::$emailsSent` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$updateSearchContextCallback` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$updateSearchFormCallback` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$useLegacyFilterHeader` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$currentRecord` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$queryHasBegun` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$rowNum` - use [`SilverStripe\ORM\Connect\Query::getIterator()`](api:SilverStripe\ORM\Connect\Query::getIterator()) instead -- Removed deprecated property `SilverStripe\ORM\DataObject::$destroyed` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\ORM\Search\SearchContext::$connective` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\Security\LoginForm::$authenticator_class` - use [`SilverStripe\Security\LoginForm::getAuthenticatorClass()`](api:SilverStripe\Security\LoginForm::getAuthenticatorClass()) or [`SilverStripe\Security\LoginForm::setAuthenticatorClass()`](api:SilverStripe\Security\LoginForm::setAuthenticatorClass()) instead -- Removed deprecated property `SilverStripe\View\Requirements_Backend::$minifier` without equivalent functionality to replace it -- Removed deprecated property `SilverStripe\View\Requirements_Backend::$minifyCombinedFiles` without equivalent functionality to replace it -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a2` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a3` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a4` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a5` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a6` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a7` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a2` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a3` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a4` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a5` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a6` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a7` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassLoader::init()`](api:SilverStripe\Core\Manifest\ClassLoader::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassManifest::init()`](api:SilverStripe\Core\Manifest\ClassManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassManifest::regenerate()`](api:SilverStripe\Core\Manifest\ClassManifest::regenerate()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleLoader::init()`](api:SilverStripe\Core\Manifest\ModuleLoader::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleManifest::init()`](api:SilverStripe\Core\Manifest\ModuleManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleManifest::regenerate()`](api:SilverStripe\Core\Manifest\ModuleManifest::regenerate()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLContains()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLContains()) named `$checkForObjectIdentity` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$delta` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$maxDepth` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$canonicalize` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLNotContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLNotContains()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLNotContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLNotContains()) named `$checkForObjectIdentity` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\Database::transactionEnd()`](api:SilverStripe\ORM\Connect\Database::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\NullDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\NullDatabase::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\Security\Member::generateAutologinTokenAndStoreHash()`](api:SilverStripe\Security\Member::generateAutologinTokenAndStoreHash()) named `$lifetime` -- Removed deprecated parameter in [`SilverStripe\View\Requirements::add_i18n_javascript()`](api:SilverStripe\View\Requirements::add_i18n_javascript()) named `$langOnly` -- Removed deprecated parameter in [`SilverStripe\View\ThemeManifest::init()`](api:SilverStripe\View\ThemeManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\View\ThemeManifest::regenerate()`](api:SilverStripe\View\ThemeManifest::regenerate()) named `$ignoredCIConfigs` -- Class [`SilverStripe\Dev\FunctionalTest`](api:SilverStripe\Dev\FunctionalTest) is now abstract -- Class [`SilverStripe\Dev\MigrationTask`](api:SilverStripe\Dev\MigrationTask) is now abstract -- Class [`SilverStripe\Dev\SapphireTest`](api:SilverStripe\Dev\SapphireTest) is now abstract -- Method `SilverStripe\Control\Email\Email::addBCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addFrom()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addReplyTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getBCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getBody()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getFrom()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getPriority()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getReplyTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getReturnPath()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getSender()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getSubject()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Dev\SapphireTest::assertContains()` is now defined in `PHPUnit\Framework\Assert` with a different method signature -- Method `SilverStripe\Dev\SapphireTest::assertNotContains()` is now defined in `PHPUnit\Framework\Assert` with a different method signature -- Changed return type for [`SilverStripe\Control\Controller::getResponse()`](api:SilverStripe\Control\Controller::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::handleRequest()`](api:SilverStripe\Control\Controller::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::setRequest()`](api:SilverStripe\Control\Controller::setRequest()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) from dynamic to `string|bool` -- Changed return type for [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::getBCCAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getBCCAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getCCAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getCCAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getData()`](api:SilverStripe\Control\Email\Email::getData()) from dynamic to [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData) -- Changed return type for [`SilverStripe\Control\Email\Email::getHTMLTemplate()`](api:SilverStripe\Control\Email\Email::getHTMLTemplate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::getPlainTemplate()`](api:SilverStripe\Control\Email\Email::getPlainTemplate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::getSendAllEmailsFrom()`](api:SilverStripe\Control\Email\Email::getSendAllEmailsFrom()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getSendAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getSendAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::send()`](api:SilverStripe\Control\Email\Email::send()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\Email\Email::sendPlain()`](api:SilverStripe\Control\Email\Email::sendPlain()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setBody()`](api:SilverStripe\Control\Email\Email::setBody()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setHTMLTemplate()`](api:SilverStripe\Control\Email\Email::setHTMLTemplate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setPlainTemplate()`](api:SilverStripe\Control\Email\Email::setPlainTemplate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setPriority()`](api:SilverStripe\Control\Email\Email::setPriority()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setReturnPath()`](api:SilverStripe\Control\Email\Email::setReturnPath()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setSubject()`](api:SilverStripe\Control\Email\Email::setSubject()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetExists()`](api:SilverStripe\Control\HTTPRequest::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetGet()`](api:SilverStripe\Control\HTTPRequest::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetUnset()`](api:SilverStripe\Control\HTTPRequest::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\HTTPResponse_Exception::getResponse()`](api:SilverStripe\Control\HTTPResponse_Exception::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\PjaxResponseNegotiator::getResponse()`](api:SilverStripe\Control\PjaxResponseNegotiator::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\PjaxResponseNegotiator::respond()`](api:SilverStripe\Control\PjaxResponseNegotiator::respond()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::redirectBack()`](api:SilverStripe\Control\RequestHandler::redirectBack()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::setRequest()`](api:SilverStripe\Control\RequestHandler::setRequest()) from dynamic to `static` -- Changed return type for [`SilverStripe\Core\BaseKernel::isFlushed()`](api:SilverStripe\Core\BaseKernel::isFlushed()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) from dynamic to `Psr\SimpleCache\CacheInterface` -- Changed return type for [`SilverStripe\Core\CoreKernel::isFlushed()`](api:SilverStripe\Core\CoreKernel::isFlushed()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Core\DatabaselessKernel::isFlushed()`](api:SilverStripe\Core\DatabaselessKernel::isFlushed()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Dev\BulkLoader_Result::Count()`](api:SilverStripe\Dev\BulkLoader_Result::Count()) from dynamic to `int` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::checkIfItemEvaluatesRemainingMatches()`](api:SilverStripe\Dev\Constraint\SSListContains::checkIfItemEvaluatesRemainingMatches()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::evaluate()`](api:SilverStripe\Dev\Constraint\SSListContains::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::getStubForToString()`](api:SilverStripe\Dev\Constraint\SSListContains::getStubForToString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::toString()`](api:SilverStripe\Dev\Constraint\SSListContains::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::evaluate()`](api:SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::toString()`](api:SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\ViewableDataContains::evaluate()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\ViewableDataContains::toString()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\DevBuildController::build()`](api:SilverStripe\Dev\DevBuildController::build()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Dev\FunctionalTest::setUp()`](api:SilverStripe\Dev\FunctionalTest::setUp()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Dev\FunctionalTest::tearDown()`](api:SilverStripe\Dev\FunctionalTest::tearDown()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::setUp()`](api:SilverStripe\Dev\SapphireTest::setUp()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::setUpBeforeClass()`](api:SilverStripe\Dev\SapphireTest::setUpBeforeClass()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::tearDown()`](api:SilverStripe\Dev\SapphireTest::tearDown()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::tearDownAfterClass()`](api:SilverStripe\Dev\SapphireTest::tearDownAfterClass()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestMailer::clearEmails()`](api:SilverStripe\Dev\TestMailer::clearEmails()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) from dynamic to `array|null` -- Changed return type for [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestSession::lastPage()`](api:SilverStripe\Dev\TestSession::lastPage()) from dynamic to `Symfony\Component\DomCrawler\Crawler` -- Changed return type for [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField)`|bool` -- Changed return type for [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField)`|bool` -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::getAjaxErrorResponse()`](api:SilverStripe\Forms\FormRequestHandler::getAjaxErrorResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::getValidationErrorResponse()`](api:SilverStripe\Forms\FormRequestHandler::getValidationErrorResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::redirectBackToForm()`](api:SilverStripe\Forms\FormRequestHandler::redirectBackToForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()) from dynamic to `bool` -- Changed return type for [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) from dynamic to `Symfony\Component\Translation\MessageCatalogue` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::getDefaultFormatter()`](api:SilverStripe\Logging\HTTPOutputHandler::getDefaultFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::getFormatter()`](api:SilverStripe\Logging\HTTPOutputHandler::getFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::write()`](api:SilverStripe\Logging\HTTPOutputHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\Logging\PreformattedEchoHandler::write()`](api:SilverStripe\Logging\PreformattedEchoHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ArrayList::count()`](api:SilverStripe\ORM\ArrayList::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\ArrayList::getIterator()`](api:SilverStripe\ORM\ArrayList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetExists()`](api:SilverStripe\ORM\ArrayList::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetGet()`](api:SilverStripe\ORM\ArrayList::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetUnset()`](api:SilverStripe\ORM\ArrayList::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\Connect\Database::transactionEnd()`](api:SilverStripe\ORM\Connect\Database::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\Connect\NullDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\NullDatabase::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\DataList::count()`](api:SilverStripe\ORM\DataList::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\DataList::getIterator()`](api:SilverStripe\ORM\DataList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataList::offsetExists()`](api:SilverStripe\ORM\DataList::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\DataList::offsetGet()`](api:SilverStripe\ORM\DataList::offsetGet()) from dynamic to [`SilverStripe\ORM\DataObject`](api:SilverStripe\ORM\DataObject)`|null` -- Changed return type for [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\DataList::offsetUnset()`](api:SilverStripe\ORM\DataList::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) from dynamic to [`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::Count()`](api:SilverStripe\ORM\ListDecorator::Count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\ListDecorator::getIterator()`](api:SilverStripe\ORM\ListDecorator::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\ListDecorator::getList()`](api:SilverStripe\ORM\ListDecorator::getList()) from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetExists()`](api:SilverStripe\ORM\ListDecorator::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetGet()`](api:SilverStripe\ORM\ListDecorator::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetUnset()`](api:SilverStripe\ORM\ListDecorator::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ListDecorator::setList()`](api:SilverStripe\ORM\ListDecorator::setList()) from dynamic to `self` -- Changed return type for [`SilverStripe\ORM\Map::count()`](api:SilverStripe\ORM\Map::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\Map::getIterator()`](api:SilverStripe\ORM\Map::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\Map::offsetExists()`](api:SilverStripe\ORM\Map::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\Map::offsetGet()`](api:SilverStripe\ORM\Map::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\Map::offsetUnset()`](api:SilverStripe\ORM\Map::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\PaginatedList::getIterator()`](api:SilverStripe\ORM\PaginatedList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\UnsavedRelationList::getIterator()`](api:SilverStripe\ORM\UnsavedRelationList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\Security\Member::isPasswordExpired()`](api:SilverStripe\Security\Member::isPasswordExpired()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Security\Member::mapInCMSGroups()`](api:SilverStripe\Security\Member::mapInCMSGroups()) from dynamic to [`SilverStripe\ORM\Map`](api:SilverStripe\ORM\Map) -- Changed return type for [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Security\Security::permissionFailure()`](api:SilverStripe\Security\Security::permissionFailure()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\View\ViewableData::getIterator()`](api:SilverStripe\View\ViewableData::getIterator()) from dynamic to `Traversable` -- Changed parameter type in [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\Controller::setRequest()`](api:SilverStripe\Control\Controller::setRequest()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) for `$relativeParent` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$from` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$to` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$subject` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$body` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$cc` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$bcc` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$returnPath` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$alias` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$mime` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$mime` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) for `$nameOrData` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\Email\Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) for `$email` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) for `$method` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::removeData()`](api:SilverStripe\Control\Email\Email::removeData()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBody()`](api:SilverStripe\Control\Email\Email::setBody()) for `$body` from dynamic to `Symfony\Component\Mime\Part\AbstractPart|string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setData()`](api:SilverStripe\Control\Email\Email::setData()) for `$data` from dynamic to [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData)`|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setHTMLTemplate()`](api:SilverStripe\Control\Email\Email::setHTMLTemplate()) for `$template` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setPlainTemplate()`](api:SilverStripe\Control\Email\Email::setPlainTemplate()) for `$template` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setPriority()`](api:SilverStripe\Control\Email\Email::setPriority()) for `$priority` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReturnPath()`](api:SilverStripe\Control\Email\Email::setReturnPath()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSubject()`](api:SilverStripe\Control\Email\Email::setSubject()) for `$subject` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetExists()`](api:SilverStripe\Control\HTTPRequest::offsetExists()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetGet()`](api:SilverStripe\Control\HTTPRequest::offsetGet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetUnset()`](api:SilverStripe\Control\HTTPRequest::offsetUnset()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) for `$dest` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\PjaxResponseNegotiator::__construct()`](api:SilverStripe\Control\PjaxResponseNegotiator::__construct()) for `$response` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Control\PjaxResponseNegotiator::setResponse()`](api:SilverStripe\Control\PjaxResponseNegotiator::setResponse()) for `$response` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\RequestHandler::setRequest()`](api:SilverStripe\Control\RequestHandler::setRequest()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) for `$args` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\Constraint\SSListContains::__construct()`](api:SilverStripe\Dev\Constraint\SSListContains::__construct()) for `$matches` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\Constraint\ViewableDataContains::__construct()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::__construct()) for `$match` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\DevBuildController::build()`](api:SilverStripe\Dev\DevBuildController::build()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$formID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$button` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$to` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$from` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$subject` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$content` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) for `$message` from dynamic to `Symfony\Component\Mime\RawMessage` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$formID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$button` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$item` from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField) -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$appendIfMissing` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$item` from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField) -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$appendIfMissing` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()) for `$timestamp` from dynamic to `int` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$resource` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$locale` from dynamic to `string` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$domain` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Logging\DebugViewFriendlyErrorFormatter::format()`](api:SilverStripe\Logging\DebugViewFriendlyErrorFormatter::format()) for `$record` from `array` to `array|Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\DetailedErrorFormatter::format()`](api:SilverStripe\Logging\DetailedErrorFormatter::format()) for `$record` from `array` to `array|Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\HTTPOutputHandler::write()`](api:SilverStripe\Logging\HTTPOutputHandler::write()) for `$record` from `array` to `Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\PreformattedEchoHandler::write()`](api:SilverStripe\Logging\PreformattedEchoHandler::write()) for `$record` from `array` to `Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetExists()`](api:SilverStripe\ORM\ArrayList::offsetExists()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetGet()`](api:SilverStripe\ORM\ArrayList::offsetGet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetUnset()`](api:SilverStripe\ORM\ArrayList::offsetUnset()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetExists()`](api:SilverStripe\ORM\DataList::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetGet()`](api:SilverStripe\ORM\DataList::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetUnset()`](api:SilverStripe\ORM\DataList::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) for `$relations` from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) for `$limit` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::__construct()`](api:SilverStripe\ORM\ListDecorator::__construct()) for `$list` from [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List) to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetExists()`](api:SilverStripe\ORM\ListDecorator::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetGet()`](api:SilverStripe\ORM\ListDecorator::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetUnset()`](api:SilverStripe\ORM\ListDecorator::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::setList()`](api:SilverStripe\ORM\ListDecorator::setList()) for `$list` from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$joinClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$localKey` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$foreignKey` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$foreignClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$parentClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetExists()`](api:SilverStripe\ORM\Map::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetGet()`](api:SilverStripe\ORM\Map::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetUnset()`](api:SilverStripe\ORM\Map::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Security\Member::mapInCMSGroups()`](api:SilverStripe\Security\Member::mapInCMSGroups()) for `$groups` from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)`|array|null` -- Changed parameter type in [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter name in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) from `$name` to `$nameOrData` -- Changed parameter name in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) from `$a1` to `$arguments` and modified it to accept variable arguments using the splat operator -- Changed parameter name in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) from `$a1` to `$arguments` and modified it to accept variable arguments using the splat operator -- Changed parameter name in [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) from `$email` to `$message` -- Changed parameter name in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\ORM\DataObject::get_one()`](api:SilverStripe\ORM\DataObject::get_one()) from `$orderby` to `$sort` -- Changed parameter name in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\View\Parsers\HTMLValue::setContent()`](api:SilverStripe\View\Parsers\HTMLValue::setContent()) from `$fragment` to `$content` -- Changed parameter name in [`SilverStripe\View\ViewableData::cachedCall()`](api:SilverStripe\View\ViewableData::cachedCall()) from `$field` to `$fieldName` -- Changed parameter name in [`SilverStripe\View\ViewableData_Customised::cachedCall()`](api:SilverStripe\View\ViewableData_Customised::cachedCall()) from `$field` to `$fieldName` - -### `silverstripe/fulltextsearch` - -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_MySQLDatabase` - use `tractorcow/silverstripe-proxy-db` to proxy the database connector instead -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_PostgreSQLDatabase` - use `tractorcow/silverstripe-proxy-db` to proxy the database connector instead -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_SQLite3Database` - use `tractorcow/silverstripe-proxy-db` to proxy the database connector instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::exclude()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::addExclude()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::filter()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::addFilter()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::fuzzysearch()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::addFuzzySearchTerm()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::inClass()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::addClassFilter()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::limit()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::setLimit()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::page()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::setPageSize()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::search()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::addSearchTerm()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::start()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::setStart()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range::end()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::setEnd()` instead -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range::start()` - use `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::setStart()` instead -- Changed return type for `SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::current()` from dynamic to `mixed` -- Changed return type for `SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::key()` from dynamic to `mixed` -- Changed return type for `SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::next()` from dynamic to `void` -- Changed return type for `SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::rewind()` from dynamic to `void` -- Changed return type for `SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::valid()` from dynamic to `bool` -- Changed return type for `SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()` from dynamic to `void` -- Changed return type for `SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::current()` from dynamic to `mixed` -- Changed return type for `SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::key()` from dynamic to `mixed` -- Changed return type for `SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::next()` from dynamic to `void` -- Changed return type for `SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::rewind()` from dynamic to `void` -- Changed return type for `SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::valid()` from dynamic to `bool` -- Changed parameter type in `SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()` for `$record` from `array` to `Monolog\LogRecord` - -### `silverstripe/graphql` - -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::alert()`](api:SilverStripe\GraphQL\Schema\Logger::alert()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::critical()`](api:SilverStripe\GraphQL\Schema\Logger::critical()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::debug()`](api:SilverStripe\GraphQL\Schema\Logger::debug()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::emergency()`](api:SilverStripe\GraphQL\Schema\Logger::emergency()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::error()`](api:SilverStripe\GraphQL\Schema\Logger::error()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::info()`](api:SilverStripe\GraphQL\Schema\Logger::info()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::log()`](api:SilverStripe\GraphQL\Schema\Logger::log()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::notice()`](api:SilverStripe\GraphQL\Schema\Logger::notice()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::warning()`](api:SilverStripe\GraphQL\Schema\Logger::warning()) from dynamic to `void` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::alert()`](api:SilverStripe\GraphQL\Schema\Logger::alert()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::critical()`](api:SilverStripe\GraphQL\Schema\Logger::critical()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::debug()`](api:SilverStripe\GraphQL\Schema\Logger::debug()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::emergency()`](api:SilverStripe\GraphQL\Schema\Logger::emergency()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::error()`](api:SilverStripe\GraphQL\Schema\Logger::error()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::info()`](api:SilverStripe\GraphQL\Schema\Logger::info()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::log()`](api:SilverStripe\GraphQL\Schema\Logger::log()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::notice()`](api:SilverStripe\GraphQL\Schema\Logger::notice()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::warning()`](api:SilverStripe\GraphQL\Schema\Logger::warning()) for `$message` from dynamic to `Stringable|string` - -### `silverstripe/hybridsessions` - -- Removed deprecated class `SilverStripe\HybridSessions\Crypto\McryptCrypto` - use [`SilverStripe\HybridSessions\Crypto\OpenSSLCrypto`](api:SilverStripe\HybridSessions\Crypto\OpenSSLCrypto) instead -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::close()`](api:SilverStripe\HybridSessions\HybridSession::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::destroy()`](api:SilverStripe\HybridSessions\HybridSession::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::gc()`](api:SilverStripe\HybridSessions\HybridSession::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::getHandlers()`](api:SilverStripe\HybridSessions\HybridSession::getHandlers()) from dynamic to `array` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::is_enabled()`](api:SilverStripe\HybridSessions\HybridSession::is_enabled()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::read()`](api:SilverStripe\HybridSessions\HybridSession::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::setHandlers()`](api:SilverStripe\HybridSessions\HybridSession::setHandlers()) from dynamic to `static` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::setKey()`](api:SilverStripe\HybridSessions\HybridSession::setKey()) from dynamic to `void` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::getKey()) from dynamic to `string|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getLifetime()`](api:SilverStripe\HybridSessions\Store\BaseStore::getLifetime()) from dynamic to `int` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getNow()`](api:SilverStripe\HybridSessions\Store\BaseStore::getNow()) from dynamic to `int` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::setKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::setKey()) from dynamic to `void` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::canWrite()`](api:SilverStripe\HybridSessions\Store\CookieStore::canWrite()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::close()`](api:SilverStripe\HybridSessions\Store\CookieStore::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::destroy()`](api:SilverStripe\HybridSessions\Store\CookieStore::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::gc()`](api:SilverStripe\HybridSessions\Store\CookieStore::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::getCrypto()`](api:SilverStripe\HybridSessions\Store\CookieStore::getCrypto()) from dynamic to [`SilverStripe\HybridSessions\Crypto\CryptoHandler`](api:SilverStripe\HybridSessions\Crypto\CryptoHandler)`|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::read()`](api:SilverStripe\HybridSessions\Store\CookieStore::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()) from dynamic to `string|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()) from dynamic to `string` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::close()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::destroy()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::gc()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::isDatabaseReady()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::isDatabaseReady()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::read()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::destroy()`](api:SilverStripe\HybridSessions\HybridSession::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::gc()`](api:SilverStripe\HybridSessions\HybridSession::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::init()`](api:SilverStripe\HybridSessions\HybridSession::init()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::read()`](api:SilverStripe\HybridSessions\HybridSession::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::setHandlers()`](api:SilverStripe\HybridSessions\HybridSession::setHandlers()) for `$handlers` from dynamic to `array` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::setKey()`](api:SilverStripe\HybridSessions\HybridSession::setKey()) for `$key` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) for `$session_data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\BaseStore::setKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::setKey()) for `$key` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::destroy()`](api:SilverStripe\HybridSessions\Store\CookieStore::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::gc()`](api:SilverStripe\HybridSessions\Store\CookieStore::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::getCrypto()`](api:SilverStripe\HybridSessions\Store\CookieStore::getCrypto()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::read()`](api:SilverStripe\HybridSessions\Store\CookieStore::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) for `$session_data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()) for `$text` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()) for `$data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::destroy()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::gc()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::read()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) for `$session_data` from dynamic to `string` - -### `silverstripe/ldap` - -- Removed deprecated method `SilverStripe\LDAP\Extensions\LDAPMemberExtension::memberLoggedIn()` without equivalent functionality to replace it - -### `silverstripe/mfa` - -- Removed deprecated method `SilverStripe\MFA\Report\EnabledMembers::formatDefaultMethodColumn()` - use [`SilverStripe\MFA\Extension\MemberExtension::getDefaultRegisteredMethodName()`](api:SilverStripe\MFA\Extension\MemberExtension::getDefaultRegisteredMethodName()) instead -- Removed deprecated method `SilverStripe\MFA\Report\EnabledMembers::formatMethodsColumn()` - use [`SilverStripe\MFA\Extension\MemberExtension::getRegisteredMethodNames()`](api:SilverStripe\MFA\Extension\MemberExtension::getRegisteredMethodNames()) instead -- Removed deprecated method `SilverStripe\MFA\Store\SessionStore::serialize()` - use [`SilverStripe\MFA\Store\SessionStore::__serialize()`](api:SilverStripe\MFA\Store\SessionStore::__serialize()) instead -- Removed deprecated method `SilverStripe\MFA\Store\SessionStore::unserialize()` - use [`SilverStripe\MFA\Store\SessionStore::__unserialize()`](api:SilverStripe\MFA\Store\SessionStore::__unserialize()) instead -- Changed return type for [`SilverStripe\MFA\RequestHandler\BaseHandlerTrait::getSudoModeService()`](api:SilverStripe\MFA\RequestHandler\BaseHandlerTrait::getSudoModeService()) from `SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface` to [`SilverStripe\Security\SudoMode\SudoModeServiceInterface`](api:SilverStripe\Security\SudoMode\SudoModeServiceInterface) - -### `silverstripe/recipe-plugin` - -- Removed deprecated method `SilverStripe\RecipePlugin\RecipeInstaller::rewriteFilePath()` without equivalent functionality to replace it - -### `silverstripe/registry` - -- Removed deprecated parameter in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) named `$request` -- Changed return type for [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -### `silverstripe/securityreport` - -- Removed deprecated class `SilverStripe\SecurityReport\Subsites\SubsiteSecurityReport` without equivalent functionality to replace it - -### `silverstripe/sharedraftcontent` - -- Removed deprecated method `SilverStripe\ShareDraftContent\Controllers\ShareDraftController::getRenderedPageByURLSegment()` - use [`SilverStripe\ShareDraftContent\Controllers\ShareDraftController::getRenderedPageByURL()`](api:SilverStripe\ShareDraftContent\Controllers\ShareDraftController::getRenderedPageByURL()) instead - -### `silverstripe/subsites` - -- Removed deprecated class `SilverStripe\Subsites\Tasks\SubsiteMigrateFileTask` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Subsites\Extensions\SiteTreeSubsites::alternatePreviewLink()` - use [`SilverStripe\Subsites\Extensions\SiteTreeSubsites::updatePreviewLink()`](api:SilverStripe\Subsites\Extensions\SiteTreeSubsites::updatePreviewLink()) instead -- Removed deprecated method `SilverStripe\Subsites\Model\Subsite::currentSubsiteID()` - use [`SilverStripe\Subsites\State\SubsiteState::getSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteId()) instead -- Removed deprecated property `SilverStripe\Subsites\Model\Subsite::$force_subsite` - use [`SilverStripe\Subsites\State\SubsiteState::withState()`](api:SilverStripe\Subsites\State\SubsiteState::withState()) instead. -- Changed return type for [`SilverStripe\Subsites\Controller\SubsiteXHRController::getResponseNegotiator()`](api:SilverStripe\Subsites\Controller\SubsiteXHRController::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteId()) from dynamic to `int|null` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getSubsiteIdWasChanged()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteIdWasChanged()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::getUseSessions()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::reset()`](api:SilverStripe\Subsites\State\SubsiteState::reset()) from dynamic to `void` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::resetState()`](api:SilverStripe\Subsites\State\SubsiteState::resetState()) from dynamic to `void` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::setSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::setSubsiteId()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::setUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::setUseSessions()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::withState()`](api:SilverStripe\Subsites\State\SubsiteState::withState()) from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) for `$manyMany` from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\Subsites\State\SubsiteState::setSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::setSubsiteId()) for `$id` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\Subsites\State\SubsiteState::setUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::setUseSessions()) for `$useSessions` from dynamic to `bool|null` - -### `silverstripe/tagfield` - -- Removed deprecated config `SilverStripe\TagField\StringTagField.immediate_write_enabled` without equivalent functionality to replace it - -### `silverstripe/userforms` - -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField::EffectiveDisplayRules()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField::getEscapedTitle()` - use `$Title` directly instead -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField\EditableOption::getEscapedTitle()` - use `$Title` in templates instead -- Changed return type for [`SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()`](api:SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) from dynamic to `static` -- Changed parameter type in [`SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()`](api:SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) for `$relations` from dynamic to `array|null` -- Changed parameter name in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) from `$manyMany` to `$relations` - -### `silverstripe/vendor-plugin` - -- Removed deprecated class `SilverStripe\VendorPlugin\VendorModule` - use `SilverStripe\VendorPlugin\Library` instead -- Removed deprecated method `SilverStripe\VendorPlugin\Console\VendorExposeCommand::getAllModules()` - use `SilverStripe\VendorPlugin\Console\VendorExposeCommand::getAllLibraries()` instead -- Removed deprecated method `SilverStripe\VendorPlugin\Library::installedIntoVendor()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\VendorPlugin\Library::publicPathExists()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\VendorPlugin\VendorPlugin::getVendorModule()` - use `SilverStripe\VendorPlugin\VendorPlugin::getLibrary()` instead -- Removed deprecated constant `SilverStripe\VendorPlugin\Library::RESOURCES_PATH` - use `SilverStripe\VendorPlugin\Library::getResourcesDir()` instead -- Removed deprecated constant `SilverStripe\VendorPlugin\VendorPlugin::MODULE_FILTER` without equivalent functionality to replace it -- Removed deprecated constant `SilverStripe\VendorPlugin\VendorPlugin::MODULE_TYPE` without equivalent functionality to replace it - -### `silverstripe/versioned` - -- Removed deprecated method `SilverStripe\Versioned\Versioned::allVersions()` - use [`SilverStripe\Versioned\Versioned::Versions()`](api:SilverStripe\Versioned\Versioned::Versions()) instead -- Removed deprecated method `SilverStripe\Versioned\Versioned::doPublish()` - use [`SilverStripe\Versioned\Versioned::publishRecursive()`](api:SilverStripe\Versioned\Versioned::publishRecursive()) instead -- Removed deprecated method `SilverStripe\Versioned\Versioned::doRollbackTo()` - use [`SilverStripe\Versioned\Versioned::rollbackRecursive()`](api:SilverStripe\Versioned\Versioned::rollbackRecursive()) instead -- Removed deprecated method `SilverStripe\Versioned\Versioned::getLastEditedForVersion()` - use [`SilverStripe\Versioned\Versioned::getLastEditedAndStageForVersion()`](api:SilverStripe\Versioned\Versioned::getLastEditedAndStageForVersion()) instead -- Removed deprecated method `SilverStripe\Versioned\Versioned::migrateVersion()` - use [`SilverStripe\Versioned\Versioned::setMigratingVersion()`](api:SilverStripe\Versioned\Versioned::setMigratingVersion()) instead -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRevertToLive()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRollback()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\Versioned\Versioned::publish()` - use [`SilverStripe\Versioned\Versioned::copyVersionToStage()`](api:SilverStripe\Versioned\Versioned::copyVersionToStage()) instead -- Removed deprecated method `SilverStripe\Versioned\Versioned::VersionsList()` - use [`SilverStripe\Versioned\Versioned::allVersions()`](api:SilverStripe\Versioned\Versioned::allVersions()) instead -- Removed deprecated parameter in [`SilverStripe\Versioned\Versioned::copyVersionToStage()`](api:SilverStripe\Versioned\Versioned::copyVersionToStage()) named `$createNewVersion` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::clear()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::clear()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()) from dynamic to `iterable` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::prune()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::prune()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()) from dynamic to `bool` -- [`SilverStripe\Versioned\Versioned::__construct()`](api:SilverStripe\Versioned\Versioned::__construct()) now explicitly only accepts `$mode` as a single argument. -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()) for `$keys` from dynamic to `iterable` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()) for `$keys` from dynamic to `iterable` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()) for `$items` from dynamic to `iterable` - -### `silverstripe/versioned-admin` - -- Removed deprecated class `SilverStripe\VersionedAdmin\Controllers\HistoryControllerFactory` without equivalent functionality to replace it -- Removed deprecated class `SilverStripe\VersionedAdmin\Extensions\CMSMainExtension` without equivalent functionality to replace it -- Changed return type for [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::generateSchemaForForm()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::generateSchemaForForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -### `silverstripe/versionfeed` - -- Removed deprecated method `SilverStripe\VersionFeed\VersionFeed::getDiffedChanges()` - use [`SilverStripe\VersionFeed\VersionFeed::getDiffList()`](api:SilverStripe\VersionFeed\VersionFeed::getDiffList()) instead - -### `silverstripe/webauthn-authenticator` - -- Removed deprecated method `SilverStripe\WebAuthn\BaseHandlerTrait::getDecoder()` without equivalent functionality to replace it -- Removed deprecated method `SilverStripe\WebAuthn\CredentialRepository::serialize()` - use [`SilverStripe\WebAuthn\CredentialRepository::__serialize()`](api:SilverStripe\WebAuthn\CredentialRepository::__serialize()) instead -- Removed deprecated method `SilverStripe\WebAuthn\CredentialRepository::unserialize()` - use [`SilverStripe\WebAuthn\CredentialRepository::__unserialize()`](api:SilverStripe\WebAuthn\CredentialRepository::__unserialize()) instead -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationObjectLoader()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationObjectLoader()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationStatementSupportManager()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationStatementSupportManager()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getPublicKeyCredentialLoader()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getPublicKeyCredentialLoader()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) named `$store` -- Changed parameter type in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) for `$store` from `CBOR\Decoder` to [`SilverStripe\MFA\Store\StoreInterface`](api:SilverStripe\MFA\Store\StoreInterface) -- Changed parameter name in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) from `$decoder` to `$store` - -### `symbiote/silverstripe-advancedworkflow` - -- Removed deprecated property `Symbiote\AdvancedWorkflow\Extensions\WorkflowEmbargoExpiryExtension::$showTimePicker` without equivalent functionality to replace it - -### `symbiote/silverstripe-queuedjobs` - -- Removed deprecated method `Symbiote\QueuedJobs\Jobs\DoormanQueuedJobTask::serialize()` - use [`Symbiote\QueuedJobs\Jobs\DoormanQueuedJobTask::__serialize()`](api:Symbiote\QueuedJobs\Jobs\DoormanQueuedJobTask::__serialize()) instead -- Removed deprecated method `Symbiote\QueuedJobs\Jobs\DoormanQueuedJobTask::unserialize()` - use [`Symbiote\QueuedJobs\Jobs\DoormanQueuedJobTask::__unserialize()`](api:Symbiote\QueuedJobs\Jobs\DoormanQueuedJobTask::__unserialize()) instead -- Removed deprecated method `Symbiote\QueuedJobs\Tasks\Engines\DoormanRunner::getNextJobDescriptorWithoutMutex()` - use [`Symbiote\QueuedJobs\Services\QueuedJobService::getNextPendingJob()`](api:Symbiote\QueuedJobs\Services\QueuedJobService::getNextPendingJob()) instead -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::getDefaultFormatter()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::getDefaultFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::handleBatch()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::handleBatch()) from dynamic to `void` -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::write()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::write()) from dynamic to `void` -- Changed parameter type in [`Symbiote\QueuedJobs\Services\QueuedJobHandler::write()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::write()) for `$record` from `array` to `Monolog\LogRecord` - -### `tractorcow/silverstripe-fluent` - -- Removed deprecated method `TractorCow\Fluent\Extension\FluentExtension::getLinkingMode()` - use [`TractorCow\Fluent\Extension\FluentExtension::LocaleInformation()`](api:TractorCow\Fluent\Extension\FluentExtension::LocaleInformation()) instead -- Removed deprecated method `TractorCow\Fluent\Extension\FluentExtension::LocaleLink()` - use [`TractorCow\Fluent\Extension\FluentExtension::LocaleInformation()`](api:TractorCow\Fluent\Extension\FluentExtension::LocaleInformation()) instead - -
- -## Full commits list - -This release includes a number of changes to improve a broad range of areas. Check the change logs for full details of these updates split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -
-Reveal full list of commits - - - - -### Features and enhancements - -- silverstripe/installer (4.13.0 -> 5.0.0) - - 2023-02-23 [c9bfb0e](https://github.com/silverstripe/silverstripe-installer/commit/c9bfb0e2a6d739628ba457e7594b35836588ff7a) Remove duplicated configuration (Guy Sartorelli) - - 2022-08-05 [1f718dc](https://github.com/silverstripe/silverstripe-installer/commit/1f718dcf544ba6068b27442d2a59d29e99c4a7dc) Remove resources-dir config from composer.json (#330) (Guy Sartorelli) - -- silverstripe/vendor-plugin (1.7.0 -> 2.0.0) - - 2022-08-03 [b9ca004](https://github.com/silverstripe/vendor-plugin/commit/b9ca004d85f14f01e61240632cef72806b57c5f1) Set the default resources dir to "_resources" (Guy Sartorelli) - -- silverstripe/recipe-cms (4.13.0 -> 5.0.0) - - 2022-08-05 [b61004e](https://github.com/silverstripe/recipe-cms/commit/b61004ebe1a6fb6190f8ba9f039b798a59d70d5a) Remove resources-dir config from composer.json (#59) (Guy Sartorelli) - -- silverstripe/recipe-core (4.13.0 -> 5.0.0) - - 2022-12-15 [9745b0d](https://github.com/silverstripe/recipe-core/commit/9745b0da2e7048a71172551e7ae558e750a12093) Pull .htaccess file when required as a dependency (#83) (Guy Sartorelli) - - 2022-08-05 [e6fb2d6](https://github.com/silverstripe/recipe-core/commit/e6fb2d67a32078fb6c404004891768126a7ee64c) Remove resources-dir config from composer.json (#76) (Guy Sartorelli) - -- silverstripe/assets (1.13.0 -> 2.0.0) - - 2023-02-23 [28cd27e](https://github.com/silverstripe/silverstripe-assets/commit/28cd27e68f2726c5a2df7637beb1f0cb20ef3418) Use the optimal file resolution strat by default (Guy Sartorelli) - - 2022-12-12 [dfc3919](https://github.com/silverstripe/silverstripe-assets/commit/dfc391912e3120a618e7213c5c282c961dd2bfb4) PHP 8.2 support (Steve Boyd) - - 2022-10-03 [a730c06](https://github.com/silverstripe/silverstripe-assets/commit/a730c06283e19d5e241adb2a774c08dae48adee9) Check canViewFile permissions before automatically grant Session access to the file (#517) (Sabina Talipova) - -- silverstripe/framework (4.13.0 -> 5.0.0) - - 2023-04-12 [bdcb57ec2](https://github.com/silverstripe/silverstripe-framework/commit/bdcb57ec2b22b335a526d5e303c4705cac6b3290) Add a cascading theme version of $resourceURL (Guy Sartorelli) - - 2023-02-21 [0075bf6e4](https://github.com/silverstripe/silverstripe-framework/commit/0075bf6e49973ac357a56a55d1053b86497fe98b) Access dynamic data inside ViewableData (Steve Boyd) - - 2023-02-08 [9a5ccdba5](https://github.com/silverstripe/silverstripe-framework/commit/9a5ccdba51db811926ea9503a285adc89fa24976) Protect against possible unexpected values (Guy Sartorelli) - - 2023-01-30 [af72f4ada](https://github.com/silverstripe/silverstripe-framework/commit/af72f4adade243b25d1b43c47d292861a5820ba7) Add translations from security-extensions module (Guy Sartorelli) - - 2023-01-29 [fecb7ba4d](https://github.com/silverstripe/silverstripe-framework/commit/fecb7ba4d8341e21c8d95d6cfe7bbf1095281645) Add sudo mode service (Guy Sartorelli) - - 2023-01-29 [0f4014650](https://github.com/silverstripe/silverstripe-framework/commit/0f4014650c33b08264d4ed529953023d7f32457f) Add easy way to dismiss all toasts in behat (#10661) (Guy Sartorelli) - - 2023-01-26 [8ddedb038](https://github.com/silverstripe/silverstripe-framework/commit/8ddedb038ea0866917ea7b39a853a6ab21a2373c) Allow admins to require password reset for members (Guy Sartorelli) - - 2023-01-18 [d1e0e1e30](https://github.com/silverstripe/silverstripe-framework/commit/d1e0e1e305d3276b8f2b1dfe8ed6af97f1274c44) Make limit method return no results when zero is provided (Maxime Rainville) - - 2023-01-17 [d7ddb0025](https://github.com/silverstripe/silverstripe-framework/commit/d7ddb00254ac21be78c3b227b59bd8bc61d9b0f9) Use masterminds/html5 for HTMLValue (Steve Boyd) - - 2023-01-17 [1a59bf50d](https://github.com/silverstripe/silverstripe-framework/commit/1a59bf50d1db6878b821e26ca84d460efb815000) Remove unused Translatable code (Steve Boyd) - - 2022-12-21 [c1a773310](https://github.com/silverstripe/silverstripe-framework/commit/c1a773310d088b22bea7ae1a6e1930050f0a33e2) PHP 8.2 support (Steve Boyd) - - 2022-11-04 [97f7be502](https://github.com/silverstripe/silverstripe-framework/commit/97f7be502fa48ad27e27fdd5dc7b34e1e1dbb914) Add extension hook for field-specific validation (Loz Calver) - - 2022-10-21 [df1d4a4b9](https://github.com/silverstripe/silverstripe-framework/commit/df1d4a4b9abe855a75bd70fb1d6c11804e545d79) Move email to data conversion to protected method (Steve Boyd) - - 2022-10-19 [2e85674cc](https://github.com/silverstripe/silverstripe-framework/commit/2e85674cccc1586b8ee7085d0d277a0528b7c918) Migrate from swiftmailer/swiftmailer to symfony/mailer (Steve Boyd) - - 2022-08-03 [ee4144fc3](https://github.com/silverstripe/silverstripe-framework/commit/ee4144fc359d3a0226c19b33420ec4a8c0269f03) Set the default resources dir to "_resources" (Guy Sartorelli) - - 2020-03-26 [a666814a8](https://github.com/silverstripe/silverstripe-framework/commit/a666814a80d7e97c43afe71ea36762c82dd1a62e) CSV BOM stripping is now handled internally by league/csv (Dan Hensby) - - 2018-10-05 [4339e4d02](https://github.com/silverstripe/silverstripe-framework/commit/4339e4d02c9b1c61140a9995dc9280f4ed68ed84) Add support for native nulls as template lookup arguments (Loz Calver) - - 2017-11-06 [156f63bce](https://github.com/silverstripe/silverstripe-framework/commit/156f63bce38a6b95d0f117eedbeb8819eb51d1b7) shorten auto-generated table names (Christopher Joe) - - 2017-01-17 [77c7552c3](https://github.com/silverstripe/silverstripe-framework/commit/77c7552c3fc2c53b08cc774c3734e3243b07c4e4) ORM’ Query is a generator-based IteratorAggregate (Sam Minnee) - - 2017-01-16 [6c136c9cf](https://github.com/silverstripe/silverstripe-framework/commit/6c136c9cf24223748db122c817b09e6cbd0e9472) Iterate ArrayList via a generator (Sam Minnee) - - 2017-01-12 [1b8f60102](https://github.com/silverstripe/silverstripe-framework/commit/1b8f601023a7a705b9fd22146e31f5addd15868a) Make DataList::getIterator a generator (Loz Calver) - -- silverstripe/admin (1.13.0 -> 2.0.0) - - 2023-04-18 [4ce8b6d7](https://github.com/silverstripe/silverstripe-admin/commit/4ce8b6d7f7c560d74b922e5185d6e481efa62e65) Remove GraphQL v3 compatability in mutation templates (Guy Sartorelli) - - 2023-03-26 [e7d45a80](https://github.com/silverstripe/silverstripe-admin/commit/e7d45a8063a73ec03b05e1fb8878bb830d3f740b) Default GraphQL abstractions to gql v5 style (Guy Sartorelli) - - 2023-01-29 [8aa9b0c3](https://github.com/silverstripe/silverstripe-admin/commit/8aa9b0c3e68963f8fcfc224ed0782fdd8b6805c4) Add HOC to provide sudo mode to child components (Guy Sartorelli) - - 2023-01-29 [ec6567c0](https://github.com/silverstripe/silverstripe-admin/commit/ec6567c05e9d0988c97b725495a493260821129b) Add new circular loading react component (Guy Sartorelli) - - 2023-01-29 [3c63b6d1](https://github.com/silverstripe/silverstripe-admin/commit/3c63b6d127d12fd263c0f31d479f24d7cd15c840) Add sudo mode controller (Guy Sartorelli) - - 2023-01-26 [29f70676](https://github.com/silverstripe/silverstripe-admin/commit/29f70676d7f7544ffdeab865cf1be2bcae533bdf) Remove unnecessary JS imports. (Guy Sartorelli) - - 2023-01-20 [54b29aff](https://github.com/silverstripe/silverstripe-admin/commit/54b29affec34a8a8093914b0dba42ee070ce7c04) Allow base URL to not have trailing slash (#1438) (Guy Sartorelli) - - 2023-01-17 [dc2c4522](https://github.com/silverstripe/silverstripe-admin/commit/dc2c45222f82f6c806093edfe01f4eb7bb192f5c) Remove unused Translatable code (Steve Boyd) - - 2023-01-11 [828ef08e](https://github.com/silverstripe/silverstripe-admin/commit/828ef08e16e0e0c47fce43cfefcc68bd33b74c1f) Expose ApolloClient for other modules to use (Guy Sartorelli) - - 2023-01-09 [af2b8c82](https://github.com/silverstripe/silverstripe-admin/commit/af2b8c82256c0bd5178404bdd7b33363bf52998b) Export emotion cache provider. (Guy Sartorelli) - - 2022-09-29 [6b1496fb](https://github.com/silverstripe/silverstripe-admin/commit/6b1496fb5d897d4e1185f523c415589739f43d04) Implement our TinyMCE skin for TinyMCE 6 (Guy Sartorelli) - - 2022-09-14 [2d2985c4](https://github.com/silverstripe/silverstripe-admin/commit/2d2985c433a7f895a45c9e715b77147fb22ba1a1) Records can be made previewable with an extension (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0 -> 2.0.0) - - 2023-02-13 [2590c822](https://github.com/silverstripe/silverstripe-asset-admin/commit/2590c8229a65d5a0cf9eb5e167f92f1519c720b9) Add delete buttons for images/embeds in wysiwyg (#1331) (Guy Sartorelli) - - 2023-01-12 [447beaa0](https://github.com/silverstripe/silverstripe-asset-admin/commit/447beaa0a89c1b9cf7bd79f353d29d0fee5a408f) Allow URLs without trailing slashes (Guy Sartorelli) - - 2022-11-04 [15c4c024](https://github.com/silverstripe/silverstripe-asset-admin/commit/15c4c024a170a8ffce5d8222aece713188f4878d) Add extension hook for field-specific validation (Loz Calver) - - 2022-08-31 [6c9f9ecc](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c9f9eccde979b4aa0943c8ea99f75ef725bf461) Don't call deprecated constructExtensions method (#1290) (Guy Sartorelli) - -- silverstripe/campaign-admin (1.13.0 -> 2.0.0) - - 2023-01-12 [a2a95ae](https://github.com/silverstripe/silverstripe-campaign-admin/commit/a2a95aec84051ac0044dfd9b2a9d203b63b1b098) Allow URLs without trailing slashes (Guy Sartorelli) - -- silverstripe/versioned-admin (1.13.0 -> 2.0.0) - - 2023-03-28 [20588d7](https://github.com/silverstripe/silverstripe-versioned-admin/commit/20588d72c53682aa1ec29e3fc8bd7873c75b4a2d) Do not use deprecated lifecycle methods (Steve Boyd) - - 2022-09-01 [8ee61fd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/8ee61fd184bbcc7c9584af7baeceeca0325af2de) Remove deprecated HistoryControllerFactory. (#251) (Guy Sartorelli) - -- silverstripe/cms (4.13.0 -> 5.0.0) - - 2023-01-18 [b57d557b](https://github.com/silverstripe/silverstripe-cms/commit/b57d557bc7a6529e58ad40137ae5f87dd564743d) Remove unused Translatable code (Steve Boyd) - - 2023-01-11 [ef4122da](https://github.com/silverstripe/silverstripe-cms/commit/ef4122da04ba38e5b5a563beea276fe45277adc4) Use the EmotionCssCacheProvider component (Guy Sartorelli) - - 2022-09-14 [6ff98c42](https://github.com/silverstripe/silverstripe-cms/commit/6ff98c42012c58bd790dae9eea3e8962b881f21d) Records can be made previewable via an extension (Guy Sartorelli) - - 2022-08-29 [adcea213](https://github.com/silverstripe/silverstripe-cms/commit/adcea213a27b73d57c59077349f6dad714e3f724) Remove CSS for CMSPageHistoryController. (Guy Sartorelli) - -- silverstripe/siteconfig (4.13.0 -> 5.0.0) - - 2022-10-07 [458f5dd4](https://github.com/silverstripe/silverstripe-siteconfig/commit/458f5dd4059b05a836bfa21bce8e52bbeefbad9e) Let SiteConfig be previewable (Guy Sartorelli) - -- silverstripe/documentconverter (2.5.0 -> 3.0.0) - - 2023-01-19 [34d3c29](https://github.com/silverstripe/silverstripe-documentconverter/commit/34d3c293b059997c34884a411a6db4fcb3e61b1d) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/iframe (2.4.0 -> 3.0.0) - - 2023-01-19 [ad4342f](https://github.com/silverstripe/silverstripe-iframe/commit/ad4342f1d064bbb10587f777e93be5776c7e0cb7) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/tagfield (2.11.0 -> 3.0.0) - - 2023-02-22 [8b8bd13](https://github.com/silverstripe/silverstripe-tagfield/commit/8b8bd1309710864df98f184fe54dd9a5c145c26a) Add extension hooks for field-specific validation (Loz Calver) - -- silverstripe/widgets (2.4.0 -> 3.0.0) - - 2023-01-20 [28d16bf](https://github.com/silverstripe/silverstripe-widgets/commit/28d16bfdc974f8eb321140b2488237010e490ba4) Fix linting issues (Guy Sartorelli) - - 2023-01-20 [4f04dd8](https://github.com/silverstripe/silverstripe-widgets/commit/4f04dd8b9bd37c7634c7231f3e792eefc31eeb66) Use frontend build stack (Guy Sartorelli) - -- silverstripe/comments (3.10.0 -> 4.0.0) - - 2023-01-19 [71a09ea](https://github.com/silverstripe/silverstripe-comments/commit/71a09eaecacfdee3eda409e23b4270a54631307c) Update regex to most recent jQuery.validate (Guy Sartorelli) - -- silverstripe/contentreview (4.7.0 -> 5.0.0) - - 2023-04-11 [36d3718](https://github.com/silverstripe/silverstripe-contentreview/commit/36d3718581280cfcbbdcc3d35fcb42dd07b2439d) Add Exception with list of invilid emails (Sabina Talipova) - -- bringyourownideas/silverstripe-maintenance (2.7.0 -> 3.0.0) - - 2023-03-14 [ec027ab](https://github.com/bringyourownideas/silverstripe-maintenance/commit/ec027ab3ff166607b5d47305af0c89c9512113c5) Work with official list of supported modules (Steve Boyd) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0) - - 2023-03-09 [1de1631](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/1de1631386bb57febcd3a1b307eb9f6e3e9ef8cb) Make UI strings translatable (#68) (Guy Sartorelli) - - 2022-04-26 [ab967ee](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/ab967ee9cd8e1f56f529a575deb22b4dcf7e8bad) Use composer 2 (#62) (Steve Boyd) - -- dnadesign/silverstripe-elemental (4.11.0 -> 5.0.0) - - 2021-11-20 [57b508a](https://github.com/silverstripe/silverstripe-elemental/commit/57b508a5c688f303e57ae86e3ca3be12774839f8) Include summary in elemental area by default (Michael van Schaik) - -- silverstripe/fulltextsearch (3.12.0 -> 4.0.0) - - 2023-01-19 [723ff53](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/723ff530dd6e51060a998faf93094472781bd7a0) PHP 8.2 compatibility (Steve Boyd) - -- cwp/cwp-core (2.12.0 -> 3.0.0) - - 2023-01-19 [5887669](https://github.com/silverstripe/cwp-core/commit/588766969031a98620124e8210a77d37b7bf1f5d) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/subsites (2.8.0 -> 3.0.0) - - 2023-02-22 [05f775a](https://github.com/silverstripe/silverstripe-subsites/commit/05f775a78dff42d679f4b7623a96c2adb8aa9859) Add extension hook for field-specific validation (Loz Calver) - - 2023-01-24 [f397ab3](https://github.com/silverstripe/silverstripe-subsites/commit/f397ab352bf28a3dd955f3a02b397f2c9c121f29) Prepare correct JS/CSS structure to use webpack (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0) - - 2023-03-27 [179f92d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/179f92de7ce21a254060818dedd2265acc83e256) Update translations (Steve Boyd) - - 2022-03-24 [182c95e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/182c95e4da1cf932d53270c35fb243cda141a979) GitHub workflows setup. (Mojmir Fendek) - - 2022-03-09 [4bdabcb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4bdabcbcb3201f4f497825fb567c7501dbc33c72) Locale performance / extensibility enhancements. (Mojmir Fendek) - - 2022-02-08 [9cb3ff5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9cb3ff5afc53f871eb6fab8c1e109b6f535f1a9c) More granular permissions for GridField actions. (Mojmir Fendek) - - 2022-01-27 [708ff73](https://github.com/tractorcow-farm/silverstripe-fluent/commit/708ff73fa7246f20a988bfbfd0138c7e4d05a609) Copy to locale enhancements. (Mojmir Fendek) - - 2021-05-20 [f8f8845](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f8f88456a6917e7a715874bfc8de6e4250f27396) Locale fallback configuration enhancement. (Mojmir Fendek) - - 2021-04-22 [f5c8dce](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f5c8dcef5da29711d5766f68ea3a58897d7d1b75) Allow isolated items to appear in the CMS if conditionally queried by ID / FK explicitly (configurable) (Damian Mooyman) - - 2021-02-26 [9db534e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9db534e82e6725d6a16dd25c42687fbf80c3143f) Clickable links on page info for localisation tab. (Vivienne Tubbs) - - 2021-01-13 [2b6ca3f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2b6ca3f6a6644791588a85ecaefa292cb6f7a5a4) Initial page localisation task (for single language sites import). (Mojmir Fendek) - - 2020-11-11 [87c4652](https://github.com/tractorcow-farm/silverstripe-fluent/commit/87c46529134b5801de422438d7bf9ad6e8a03a61) If changing locales in the CMS, ensure that 404 errors redirect to the CMS home page (Damian Mooyman) - - 2020-06-22 [4363d9e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4363d9e0f8967d92b7c68582df6bb8fb9e2eba77) Localisation manager UI improvements. (Mojmir Fendek) - -- silverstripe/dynamodb (4.1.0 -> 5.0.0) - - 2023-02-13 [c96e48a](https://github.com/silverstripe/silverstripe-dynamodb/commit/c96e48ab586128ad36c0880ac6e069db3ac4162c) Replace deprecated doctrine/cache (Guy Sartorelli) - -### Bugfixes - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-12-14 [f003b8d](https://github.com/silverstripe/recipe-plugin/commit/f003b8d56d6e62e7828782f3263f9769232dcf8f) Always put public resources in a public/ dir (#31) (Guy Sartorelli) - -- silverstripe/assets (1.13.0 -> 2.0.0) - - 2022-12-08 [459d421](https://github.com/silverstripe/silverstripe-assets/commit/459d421ddcb253bf86ce0904c52692781fb6cf7c) Cast absoluteUrl() argument to string (Steve Boyd) - -- silverstripe/framework (4.13.0 -> 5.0.0) - - 2023-03-27 [84273b804](https://github.com/silverstripe/silverstripe-framework/commit/84273b80451cb85f14d5b35a40516cb93d7468bf) Remove legacy filter icon (Steve Boyd) - - 2023-03-01 [e3a94b9d1](https://github.com/silverstripe/silverstripe-framework/commit/e3a94b9d10790c66b0ac247f3dc2f258b57c0aaa) Ensure getters and setters are respected (#10708) (Guy Sartorelli) - - 2023-02-20 [e455aa5c5](https://github.com/silverstripe/silverstripe-framework/commit/e455aa5c5ef1aed8dda9f1f3fde8e829563e60e8) Handle null returns in GridFieldDetailForm_ItemRequest::getNumPages() (Steve Boyd) - - 2023-02-01 [738ca487a](https://github.com/silverstripe/silverstripe-framework/commit/738ca487ac7ebc037d9bff9d2f5b9b417797df26) Allow public extension getter methods to work (#10676) (Guy Sartorelli) - - 2023-02-01 [826028082](https://github.com/silverstripe/silverstripe-framework/commit/826028082bc1295af0a1b3969cdfdf570d13e174) Sort without specifying a table name (#10675) (Guy Sartorelli) - - 2023-01-31 [dca4e0bcb](https://github.com/silverstripe/silverstripe-framework/commit/dca4e0bcb85d71574c391895e37700674ad06521) Remove unused action from allowed_actions (#10672) (Guy Sartorelli) - - 2023-01-30 [14a449fea](https://github.com/silverstripe/silverstripe-framework/commit/14a449feaa1b142152593c3c131b34d957d46309) Don't try to access private properties/methods (Guy Sartorelli) - - 2023-01-11 [6d4542561](https://github.com/silverstripe/silverstripe-framework/commit/6d4542561bcb279a21d935095c2381baf40f8be4) Check is_callable parent methods before invoke (#10637) (Sabina Talipova) - - 2022-12-13 [700288d5c](https://github.com/silverstripe/silverstripe-framework/commit/700288d5cae473b9f6a887708220a64218438148) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-09-19 [ef8a02dfd](https://github.com/silverstripe/silverstripe-framework/commit/ef8a02dfdcbc82c82f7fe02d750a9b986101ae6d) Update config to support tinymce6 (Guy Sartorelli) - - 2022-09-13 [a2028a281](https://github.com/silverstripe/silverstripe-framework/commit/a2028a28175afc7f6af1e29e0a1f887ec25b9c55) Pass PSR6 caches to ChainAdapter (Steve Boyd) - - 2022-09-09 [e140c3786](https://github.com/silverstripe/silverstripe-framework/commit/e140c3786c96ac146127a92e08dee470c6c6682c) Ensure consistent behaviour with repeat iterations (Guy Sartorelli) - - 2022-09-08 [62ee63706](https://github.com/silverstripe/silverstripe-framework/commit/62ee63706f7d97bdd96faffed44db65b6090b280) PHP 8.1 compatability for iterators. (Guy Sartorelli) - - 2022-08-31 [89a0f59ef](https://github.com/silverstripe/silverstripe-framework/commit/89a0f59ef189e8c7b99b0f973768dc41106e0397) Remove accidental deprecation warnings. (Guy Sartorelli) - - 2022-08-17 [d55683d02](https://github.com/silverstripe/silverstripe-framework/commit/d55683d02b08f368263771c354661e9de73e1244) Ensure PHP 8.1 compatible version of oscarotero/html-parser is installed (Steve Boyd) - - 2022-08-11 [bf331072d](https://github.com/silverstripe/silverstripe-framework/commit/bf331072df0c9c3f3b941a4405c1c9de5f58315c) Don't try to call count() on an iterator (Guy Sartorelli) - - 2019-05-06 [e07671a89](https://github.com/silverstripe/silverstripe-framework/commit/e07671a8903870b7c7f2d24e446963f9460ef68c) Fix SQLConditionalExpression::getJoins so it always adds explicit aliases (Serge Latyntcev) - - 2018-10-05 [3a6c48cdd](https://github.com/silverstripe/silverstripe-framework/commit/3a6c48cddbccf1f467993e2838daaa1d6602d41b) template parser erroring on strings partially matching true/false/null (Loz Calver) - - 2018-10-05 [d6e822935](https://github.com/silverstripe/silverstripe-framework/commit/d6e822935205c44534054a2a96a31df2fbe40a09) Fix type preservation in <% include %> arguments (Loz Calver) - - 2018-02-20 [f2211d690](https://github.com/silverstripe/silverstripe-framework/commit/f2211d690f292886a29e1a5d4117cd9cdc7fe840) Fix extend() failing on protected extend-prefixed methods (Damian Mooyman) - - 2017-11-28 [b36a01a8f](https://github.com/silverstripe/silverstripe-framework/commit/b36a01a8fd7d83aa5abaa09dd76778c8b6c1db7d) Fix table name test (Christopher Joe) - - 2017-06-28 [9eb9e1307](https://github.com/silverstripe/silverstripe-framework/commit/9eb9e1307103e3c758dad58fcf24195c88eba0dc) Re-set finalisedQuery to allow recreation of iterator. (Sam Minnee) - - 2017-06-28 [8e0e797b4](https://github.com/silverstripe/silverstripe-framework/commit/8e0e797b402b1b2ca8916594a9c9a27b22f6a6d1) Fix code style (Loz Calver) - - 2017-01-17 [6ef5785fc](https://github.com/silverstripe/silverstripe-framework/commit/6ef5785fc5338eac1213af8feddf9f407e7ff43f) pre-cache loop content within SSViewer. (Sam Minnee) - - 2017-01-17 [d8735633a](https://github.com/silverstripe/silverstripe-framework/commit/d8735633a765d19fcd8261a99310a1093d398506) Don’t call PaginatedList::getIterator() directly. (Sam Minnee) - - 2017-01-17 [1efe2b46f](https://github.com/silverstripe/silverstripe-framework/commit/1efe2b46ffcd524cbe0e5cbc1593be47e2de589a) Fix PaginatedList::toArray() (Sam Minnee) - -- silverstripe/admin (1.13.0 -> 2.0.0) - - 2023-04-12 [a3c91584](https://github.com/silverstripe/silverstripe-admin/commit/a3c91584c1ec0ae0621a89d91d31612bbbecd383) Ensure page router can handle base URL in subfolder (Guy Sartorelli) - - 2023-03-27 [76609055](https://github.com/silverstripe/silverstripe-admin/commit/766090551a2937606210ca47760696079f1cd40e) Action Edit button UI (#1485) (Sabina Talipova) - - 2023-03-27 [f793831b](https://github.com/silverstripe/silverstripe-admin/commit/f793831b45d86f95d7b4fba8c82b9a2ab48c2db6) Use v1 of popper.js for thirdparty bootstrap (Steve Boyd) - - 2023-03-27 [61ba6ab9](https://github.com/silverstripe/silverstripe-admin/commit/61ba6ab945ab6c950d4d5cf770109e343a4f74f2) Translation merge-up (Steve Boyd) - - 2023-03-15 [cc63942a](https://github.com/silverstripe/silverstripe-admin/commit/cc63942affd4485cd1850f29981e9970d013b33e) Update CSS after PR (Sabina Talipova) - - 2023-03-10 [a396a90c](https://github.com/silverstripe/silverstripe-admin/commit/a396a90c486efc4c0a0983a174a678cd32aa8604) React warnings (Sabina Talipova) - - 2023-03-09 [cef56c38](https://github.com/silverstripe/silverstripe-admin/commit/cef56c3864af711f2c50a8680229c3c564a0df4b) TagList prop type tags.key is invalid (Sabina Talipova) - - 2023-03-08 [349fc385](https://github.com/silverstripe/silverstripe-admin/commit/349fc385f5bbff0bba9412bf6998807383daf926) Styles warnings (Sabina Talipova) - - 2023-03-07 [a5f74a30](https://github.com/silverstripe/silverstripe-admin/commit/a5f74a3039e45a91c631c3f45a502e1905b88ae2) Changed import for createRoot function (Sabina Talipova) - - 2023-02-27 [2cfc4012](https://github.com/silverstripe/silverstripe-admin/commit/2cfc4012dcd82496f571dd24c07d7604a2a1ddaa) Reinstate unsaved changes dialog (#1458) (Guy Sartorelli) - - 2023-02-09 [dbe8ada6](https://github.com/silverstripe/silverstripe-admin/commit/dbe8ada66c9eb817ffafca79a33860a650ea5618) Remove redundant memoisation (Guy Sartorelli) - - 2023-01-19 [4a1b488a](https://github.com/silverstripe/silverstripe-admin/commit/4a1b488ad06668f5aa7ca67f5f5d5e5ff6429609) Reuse emotion cache to avoid conflicts (Guy Sartorelli) - - 2023-01-19 [edb97adc](https://github.com/silverstripe/silverstripe-admin/commit/edb97adc9807054c7dfe79082537d599f7e3a1c4) Expose sublibraries of dependencies (Guy Sartorelli) - - 2023-01-08 [118681ad](https://github.com/silverstripe/silverstripe-admin/commit/118681ada4317694375d3e36b2b97c1907c67ef1) Set the value correctly when passed as prop. (Guy Sartorelli) - - 2022-12-08 [ce799e55](https://github.com/silverstripe/silverstripe-admin/commit/ce799e559abc6da6ae40f521892600f98f8cbe4b) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-12-01 [8d6c1acb](https://github.com/silverstripe/silverstripe-admin/commit/8d6c1acb4dfac5e0f6106fe99a75da2350e5a91e) Rebuild JS bundles (#1401) (Sabina Talipova) - - 2022-10-11 [3f30aa21](https://github.com/silverstripe/silverstripe-admin/commit/3f30aa214a7f3d41edb47def11e15e53c2d331c2) Set name of TinyMCE i18n file to be correct (Guy Sartorelli) - - 2022-10-07 [e5badb5d](https://github.com/silverstripe/silverstripe-admin/commit/e5badb5db705cc3a1c99cd0b29acf669e11dd356) Let admins get navigators for their own records (Guy Sartorelli) - - 2022-09-30 [7b3ac231](https://github.com/silverstripe/silverstripe-admin/commit/7b3ac2317e44650cf8b8f680edce32ebf6a8f79e) Use correct TinyMCE selection logic (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0 -> 2.0.0) - - 2023-04-25 [1e35a0c4](https://github.com/silverstripe/silverstripe-asset-admin/commit/1e35a0c4a69d4a425e061c7a7fe8bcddba5ffbe6) Ensure fresh options are passed to dropzone (Steve Boyd) - - 2023-03-13 [45e7461a](https://github.com/silverstripe/silverstripe-asset-admin/commit/45e7461a549ae858999eacd8d11eaeb4bbe13515) CSS warnings (Sabina Talipova) - - 2023-03-13 [bd6da03b](https://github.com/silverstripe/silverstripe-asset-admin/commit/bd6da03b4d321a9850994a2040b59302f93db88a) Replaced deprecated React functions (Sabina Talipova) - - 2023-02-13 [f800799a](https://github.com/silverstripe/silverstripe-asset-admin/commit/f800799aba673a52dd8d56ae5ae8215587f1c6f1) Get JS tests passing again (#1330) (Guy Sartorelli) - - 2023-02-08 [1bb852ea](https://github.com/silverstripe/silverstripe-asset-admin/commit/1bb852ea198e6c1bfbab40e79a8321943612a227) Don't enter infinite loop when saving form (#1329) (Guy Sartorelli) - - 2023-01-29 [0dfc61e0](https://github.com/silverstripe/silverstripe-asset-admin/commit/0dfc61e0cfa23720824fb1317edb94d62e13ffad) update react render (#1322) (Guy Sartorelli) - - 2023-01-10 [ba67f151](https://github.com/silverstripe/silverstripe-asset-admin/commit/ba67f1518fa7dd5e2aa3665720d011e2daaebde3) Correctly reset file details after bulk publish (Guy Sartorelli) - - 2022-12-08 [379ddb52](https://github.com/silverstripe/silverstripe-asset-admin/commit/379ddb52f863a4b40fb84853ded0e79684dbc262) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-09-30 [46a25f15](https://github.com/silverstripe/silverstripe-asset-admin/commit/46a25f15c13623db941cca6e6e6a353c580d4a22) Use correct selection logic for TinyMCE (Guy Sartorelli) - - 2022-09-30 [c29a14b4](https://github.com/silverstripe/silverstripe-asset-admin/commit/c29a14b416b23f5d73c7874094276d5aac68535f) Publish assets in WYSIWYG when publishing page. (Guy Sartorelli) - - 2022-09-19 [67d6966c](https://github.com/silverstripe/silverstripe-asset-admin/commit/67d6966c1a64944187e878d53394438a250aca55) Update plugins to work with TinyMCE 6 (Guy Sartorelli) - -- silverstripe/campaign-admin (1.13.0 -> 2.0.0) - - 2023-03-13 [4cce0ff](https://github.com/silverstripe/silverstripe-campaign-admin/commit/4cce0ffb57ef98637a21a264279145007be0b618) Replaced deprecated CSS and React functions (Sabina Talipova) - -- silverstripe/versioned-admin (1.13.0 -> 2.0.0) - - 2023-03-22 [ebca186](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ebca186bd86050783231327a5b176789c1dc413b) ESLint, SASS-Lint warnings (Sabina Talipova) - - 2023-02-02 [90ee112](https://github.com/silverstripe/silverstripe-versioned-admin/commit/90ee112a1432cc6575171299f6b44599068cd39e) Use the new HtmlDiff class (Guy Sartorelli) - - 2023-01-29 [5ad5cd4](https://github.com/silverstripe/silverstripe-versioned-admin/commit/5ad5cd42bee4ca5823a2da73ef04e8a471f0b807) Remove unused import (#270) (Guy Sartorelli) - -- silverstripe/cms (4.13.0 -> 5.0.0) - - 2023-02-08 [93f57d23](https://github.com/silverstripe/silverstripe-cms/commit/93f57d2300809c6c9f2bcc61f58b40df4ec3eaed) Replace Diff class with HtmlDiff (Sabina Talipova) - - 2023-01-09 [b9115f3f](https://github.com/silverstripe/silverstripe-cms/commit/b9115f3f6d9037c0ada8d07788f141d6d1420f56) Fix anchor select field component (Guy Sartorelli) - - 2022-12-08 [605daf50](https://github.com/silverstripe/silverstripe-cms/commit/605daf5026164c0f80876ce853bff5dec11f1524) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-12-05 [3186e0e1](https://github.com/silverstripe/silverstripe-cms/commit/3186e0e129777ec463a5c7612be4e08b48d23cf4) Use orderBy() instead of sort() (Steve Boyd) - - 2022-10-19 [af1a482d](https://github.com/silverstripe/silverstripe-cms/commit/af1a482d20c32dfe20718861d3b5edb5dcfd905d) Loosen config order to allow "after: '*'" in framework (#2793) (Guy Sartorelli) - - 2022-09-30 [bedd6455](https://github.com/silverstripe/silverstripe-cms/commit/bedd64554f0d6786a7f033c328b0bb7a657e4358) Use correct TinyMCE selection logic (Guy Sartorelli) - - 2022-09-19 [7368df87](https://github.com/silverstripe/silverstripe-cms/commit/7368df875730eb176c8223bef636e917c12842b1) Fix link plugins to support tinymce6 (Guy Sartorelli) - - 2022-08-25 [803b4add](https://github.com/silverstripe/silverstripe-cms/commit/803b4add7bc6efa5a249b15d16aec22e44d9362c) Resolve CI failure (Guy Sartorelli) - - 2018-05-01 [b46876b8](https://github.com/silverstripe/silverstripe-cms/commit/b46876b8a8959b15274bef9163530be3a6e2d678) Don't offer to restore to root if can_be_root is false (Mike Cochrane) - -- silverstripe/siteconfig (4.13.0 -> 5.0.0) - - 2023-01-23 [4155b889](https://github.com/silverstripe/silverstripe-siteconfig/commit/4155b889fcc3fcfe042936846e2f223df3804d72) Bring back empty _config.PHP file (Maxime Rainville) - -- silverstripe/versioned (1.13.0 -> 2.0.0) - - 2023-03-02 [04344c7](https://github.com/silverstripe/silverstripe-versioned/commit/04344c7ddabed7a679b3326896ec04a33c1dd480) Remove diff code (Steve Boyd) - - 2023-02-13 [54a0bac](https://github.com/silverstripe/silverstripe-versioned/commit/54a0bac13d7bda8efc7c589abc443bd12c27b70e) Null value in HtmlDiff::compareHtml() (#394) (Sabina Talipova) - - 2023-02-02 [4796ab4](https://github.com/silverstripe/silverstripe-versioned/commit/4796ab4d29e915626d03c575b0c54f9eeb049d3e) Use the new HtmlDiff class (Guy Sartorelli) - - 2022-12-15 [20e681d](https://github.com/silverstripe/silverstripe-versioned/commit/20e681d721bc83c844f35eb75cc4f9e6cdb89d63) Handle a bool return type from DateTime::getLastErrors() (Steve Boyd) - - 2022-12-05 [76fbb52](https://github.com/silverstripe/silverstripe-versioned/commit/76fbb521b1ec5b6b222df7112f1d6c5dfdcac2ac) Ensure sort is not empty (Steve Boyd) - -- silverstripe/graphql (4.3.0 -> 5.0.0) - - 2022-09-12 [a52cabd](https://github.com/silverstripe/silverstripe-graphql/commit/a52cabd4a041527f82e935a7dba65906e5f53540) Use symfony6 cache classes (Steve Boyd) - -- silverstripe/recipe-authoring-tools (1.13.0 -> 2.0.0) - - 2022-12-18 [0bc9677](https://github.com/silverstripe/recipe-authoring-tools/commit/0bc967735ec0d18e2b49d923e176863970021828) Revert wrong merge (#25) (Sabina Talipova) - -- silverstripe/tagfield (2.11.0 -> 3.0.0) - - 2023-04-17 [158bc00](https://github.com/silverstripe/silverstripe-tagfield/commit/158bc006a5b72ea64445caa8c77dab7dfd074b49) Format value to string for readonly transformation (Guy Sartorelli) - -- silverstripe/recipe-blog (1.13.0 -> 2.0.0) - - 2022-12-18 [8b61de9](https://github.com/silverstripe/recipe-blog/commit/8b61de96515a0b717254084dcfb5441767dd36b4) Revert wrong merge (#39) (Sabina Talipova) - -- silverstripe/comments (3.10.0 -> 4.0.0) - - 2023-01-19 [5c2552e](https://github.com/silverstripe/silverstripe-comments/commit/5c2552e4c994c5abdff102f02477538ed5d90b48) Parameter order (Steve Boyd) - - 2023-01-19 [0048a7a](https://github.com/silverstripe/silverstripe-comments/commit/0048a7abb9c1e73d9e6357d594a7bc39a61af629) Resolve linting issues (Guy Sartorelli) - -- silverstripe/recipe-collaboration (1.13.0 -> 2.0.0) - - 2022-12-18 [880c4b5](https://github.com/silverstripe/recipe-collaboration/commit/880c4b53520bd9e869f2aa9b40025e11cb5a607d) Revert wrong merge (#22) (Sabina Talipova) - -- silverstripe/contentreview (4.7.0 -> 5.0.0) - - 2023-03-31 [24766e4](https://github.com/silverstripe/silverstripe-contentreview/commit/24766e4e5ab91a82ae7f6ed5b8d8d24a552151ba) Notification job marked as broken (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (5.9.0 -> 6.0.0) - - 2023-03-14 [a9f1f6c](https://github.com/symbiote/silverstripe-advancedworkflow/commit/a9f1f6c15f09a83ecb667d32599567c2eb13d876) CSS and JS warnings (Sabina Talipova) - -- silverstripe/recipe-form-building (1.13.0 -> 2.0.0) - - 2022-12-18 [d56ed8b](https://github.com/silverstripe/recipe-form-building/commit/d56ed8b17edd214be68120383b9cc17a1abc33a6) Revert wrong merge (#24) (Sabina Talipova) - -- silverstripe/recipe-reporting-tools (1.13.0 -> 2.0.0) - - 2022-12-18 [11965af](https://github.com/silverstripe/recipe-reporting-tools/commit/11965af8f80b29b3bd7e79d94d02023b88afb31f) Revert wrong merge (#33) (Sabina Talipova) - -- silverstripe/externallinks (2.4.0 -> 3.0.0) - - 2023-03-24 [fe056b5](https://github.com/silverstripe/silverstripe-externallinks/commit/fe056b5e24fda21a2ccdc9e53aea47cabc522e86) ESLint warnings (Sabina Talipova) - - 2023-03-06 [ef0ee30](https://github.com/silverstripe/silverstripe-externallinks/commit/ef0ee302f60a3cfd8ba69afa978013a508106183) Reload External broken links report content when new report was generated (Sabina Talipova) - - 2023-01-17 [8456e46](https://github.com/silverstripe/silverstripe-externallinks/commit/8456e46f836c4b4265373ec218a41ccd90336b31) Use HTMLValue::class (Steve Boyd) - -- silverstripe/versionfeed (2.4.0 -> 3.0.0) - - 2023-02-13 [002fbf7](https://github.com/silverstripe/silverstripe-versionfeed/commit/002fbf766c516ba272590ded4dea467ceb67bd00) Replace Diff class to HtmlDiff (#80) (Sabina Talipova) - -- silverstripe/recipe-content-blocks (2.13.0 -> 3.0.0) - - 2022-12-18 [ccf7737](https://github.com/silverstripe/recipe-content-blocks/commit/ccf7737622faf05aecdd4316e2294dee69883f28) Revert wrong merge (#29) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.11.0 -> 5.0.0) - - 2023-01-26 [c552d2e](https://github.com/silverstripe/silverstripe-elemental/commit/c552d2e70de0cd4102d3e4b943dc02cb2341e42d) Don't refer to removed class (Guy Sartorelli) - - 2022-12-08 [4cf4027](https://github.com/silverstripe/silverstripe-elemental/commit/4cf4027e9b3a0ec6b63ec02c582ae6f9439266b6) Cast possibly null link to string (Steve Boyd) - - 2022-08-29 [ce8a102](https://github.com/silverstripe/silverstripe-elemental/commit/ce8a102b69f33d67b01510b856725cfd9291dfa4) Use correct return type for permission checks (Guy Sartorelli) - -- cwp/cwp-search (1.8.0 -> 2.0.0) - - 2023-03-02 [eaece08](https://github.com/silverstripe/cwp-search/commit/eaece08591b865cc54a71f128922486b3f70e3dc) Add slash before search action in Search form URL (Sabina Talipova) - -- silverstripe/fulltextsearch (3.12.0 -> 4.0.0) - - 2023-02-15 [72dc54b](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/72dc54b0f852e9384b6e75dd33336dc5e997b208) Always use ?int for subsite state (#341) (Guy Sartorelli) - - 2023-02-15 [4f92bcd](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/4f92bcdbf507c374e5109ea1b9a6f4691b01923d) Broken builds (Sabina Talipova) - -- symbiote/silverstripe-queuedjobs (4.12.0 -> 5.0.0) - - 2023-04-27 [acc4752](https://github.com/symbiote/silverstripe-queuedjobs/commit/acc47524d5ed8ff55fdc92424284cfaaf602acc1) Broken TaskLink & QueueLink (Sabina Talipova) - - 2022-12-14 [0c18b40](https://github.com/symbiote/silverstripe-queuedjobs/commit/0c18b401a5cd3c14b66e30a67c2c9d66c840948f) Use record() instead of first() (Steve Boyd) - -- silverstripe/hybridsessions (2.7.0 -> 3.0.0) - - 2023-02-20 [6365414](https://github.com/silverstripe/silverstripe-hybridsessions/commit/63654146346c058fde0f8f3c810acf368b110287) Always return something (Steve Boyd) - - 2023-02-15 [7aede67](https://github.com/silverstripe/silverstripe-hybridsessions/commit/7aede67440c4e6a0a3fa9b0711de98366e9c5af3) Return an emtpy string instead of false from HybridSession::read() (Steve Boyd) - -- silverstripe/developer-docs (4.13.0 -> 5.0.0) - - 2023-02-08 [a69490b4](https://github.com/silverstripe/developer-docs/commit/a69490b479fc24b5a6a621db6a874d40ef7edccf) Fix a bunch of API links (Maxime Rainville) - - 2023-02-08 [5cc10ba8](https://github.com/silverstripe/developer-docs/commit/5cc10ba8063c6d20561bfc01ac9352ced42d53a3) Fix bad GitHub link by poiting to packagist instead. (Maxime Rainville) - - 2022-09-15 [81f4565d](https://github.com/silverstripe/developer-docs/commit/81f4565d4b579a6c0ee949360252df3e939d5d67) Show alpha directory (#89) (Guy Sartorelli) - -- silverstripe/registry (2.6.0 -> 3.0.0) - - 2023-02-13 [97987d7](https://github.com/silverstripe/silverstripe-registry/commit/97987d734246c90aaa91a6f354f9a6ac273aae3a) Implement support new league/flysystem v3 (Sabina Talipova) - -- silverstripe/mfa (4.8.0 -> 5.0.0) - - 2023-03-30 [a2ea054](https://github.com/silverstripe/silverstripe-mfa/commit/a2ea05470209d4d33fc9436ec9702edea87a6103) Issue regeneratorRuntime is not defined (#491) (Sabina Talipova) - - 2023-02-07 [fa5b8dc](https://github.com/silverstripe/silverstripe-mfa/commit/fa5b8dc0a9c3f5a254a54c8ba918cc929f717ba0) Add back in sudo mode activation on login (Steve Boyd) - - 2023-01-17 [34af8cd](https://github.com/silverstripe/silverstripe-mfa/commit/34af8cd73cc03bd7427b59fc1544e1eb685e69b3) Update SecurityAdminExtension::sendResetEmail() to account new returned type for Email::send() (Maxime Rainville) - - 2023-01-16 [8482176](https://github.com/silverstripe/silverstripe-mfa/commit/84821769219f2b73ae0cf59969c553ba9f7d2689) Change the AJAX endpoint to reset the MFA set up for a user (Maxime Rainville) - -- silverstripe/ckan-registry (1.7.0 -> 2.0.0) - - 2023-03-13 [bc77572](https://github.com/silverstripe/silverstripe-ckan-registry/commit/bc77572eaa6d5f82d28bda726c10b0128725a34b) CSS warnings (Sabina Talipova) - -- silverstripe/webauthn-authenticator (4.7.0 -> 5.0.0) - - 2023-04-27 [eb16b15](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/eb16b158405fffb141a5581a5cee38f72570c04b) Encode authenticatorData as base64 URL safe (Steve Boyd) - - 2023-02-07 [0523fed](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/0523fed85f2813852b903bc20e1663e3ebcb6972) Remove padding to work with web-auth/webauthn-lib 4.1.0+ (Steve Boyd) - -- silverstripe/subsites (2.8.0 -> 3.0.0) - - 2023-01-26 [80eb9ec](https://github.com/silverstripe/silverstripe-subsites/commit/80eb9ec15a2e29af688e56e8bfe5da9eb8fc1c4b) Remove wildcard from config (Steve Boyd) - - 2023-01-19 [f50cd3e](https://github.com/silverstripe/silverstripe-subsites/commit/f50cd3e348155acde224d79f5760a047be4e658c) Parameter order (Steve Boyd) - -- silverstripe/lumberjack (2.3.0 -> 3.0.0) - - 2023-01-19 [fccf95e](https://github.com/silverstripe/silverstripe-lumberjack/commit/fccf95edf52606540c7804ce85eaa85e9986200f) Parameter order (Steve Boyd) - -- cwp/starter-theme (3.3.0 -> 4.0.0) - - 2023-01-29 [4ddc59c](https://github.com/silverstripe/cwp-starter-theme/commit/4ddc59c6450c10dfaa04b4db860317ca6592f29b) Remove reference to empty CSS file. (#219) (Guy Sartorelli) - -- cwp/agency-extensions (2.8.0 -> 3.0.0) - - 2023-04-03 [8d5bbab](https://github.com/silverstripe/cwp-agencyextensions/commit/8d5bbab5396ef7326eb0cdfe71a922a207d67dc6) Do not expose directory that was removed (Steve Boyd) - -- cwp/cwp (2.11.0 -> 3.0.0) - - 2023-05-01 [d112b07](https://github.com/silverstripe/cwp/commit/d112b076a16e07432a4745e21e4a4e6d4e99b985) Update TinyMCE config for v6 compatibility (#331) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (3.6.0 -> 4.0.0) - - 2023-04-05 [17f92d0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/17f92d08bad15f91289b7385430ca6ca70eb687a) Handle arrays in default_sort (Steve Boyd) - - 2023-01-18 [fd24736](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/fd24736b52f7ac18f08d813f042da3e18aa9c278) Use DataList::orderBy() (#353) (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0) - - 2023-02-01 [563f253](https://github.com/colymba/GridFieldBulkEditingTools/commit/563f253f36af93cf6680d515f2c669cf10f21dcf) Don't use removed method. (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0) - - 2023-02-07 [d77907f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d77907fcec3dcbe2b0dd419492f05714cd1ae3b7) fix: update master alias to new major version 7 (Damian Mooyman) - - 2023-01-26 [bb4891d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb4891d883064b17e00b7b2653cbb0ceb4814463) Don't use removed API (Guy Sartorelli) - - 2023-01-18 [820e1f5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/820e1f51b44bb84ea40edd8ebc5704c08c6b55b5) Get fluent to dev/build (Steve Boyd) - - 2023-01-13 [4531289](https://github.com/tractorcow-farm/silverstripe-fluent/commit/45312894e7885273646fb2732ad514e668071ab9) GitHub actions setup (linting). (Mojmir Fendek) - - 2022-03-27 [b22973f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b22973f3ab2f4c767b19b7f91c2cb617bec6b8d0) Legacy permissions migration fix. (Mojmir Fendek) - - 2022-03-27 [4a1f86d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4a1f86db6324412ff73bcfde0586e019edfd37bb) Explicit PHP version for scrutinizer.. (Mojmir Fendek) - - 2022-03-25 [56337af](https://github.com/tractorcow-farm/silverstripe-fluent/commit/56337af2373ea141cba679fd53dc6e5677454f43) PHP 8 compatibility patch. (Mojmir Fendek) - - 2022-03-10 [c2d0abe](https://github.com/tractorcow-farm/silverstripe-fluent/commit/c2d0abea14625768e289e72c6401335eb28bf36c) fix: issue with "all CMS sections" permission erroneously handling fluent permissions (Damian Mooyman) - - 2022-03-01 [33ac317](https://github.com/tractorcow-farm/silverstripe-fluent/commit/33ac31727d3a478a064a887ff8ac4ce092c9948f) Fix missing locale in callback signature (Rens Korswagen) - - 2022-02-10 [7353136](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7353136113fb9618169df5a231498ec1e9e49663) SiteTree item styles should not trickle down the sub-tree. (Mojmir Fendek) - - 2022-02-03 [32452fb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/32452fb31d85acad8ed9960863bf90b1298766b4) Localisation manager / Live state flag and stages differ correction. (Mojmir Fendek) - - 2022-01-13 [cc1116c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cc1116c13023d6de05956e8998bcbb3e14f1c3e7) Localisation manager / Locale link fix for AJAX requests. (Mojmir Fendek) - - 2021-11-08 [a49afa4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a49afa4ca910d8ff27f7e31fc7db86c0bb53ac3c) Fix fallback locales chain (Mikhail Shchedrakov) - - 2021-10-20 [6e248c1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6e248c1d775fec26083828d7c0383c5c63736286) Fix for FluentAdminTraitTest. (Mojmir Fendek) - - 2021-06-18 [d9e12b3](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d9e12b3e8600617c50ac7bf91f9f6bbc60c3d778) Missing version tables related indexes. (Mojmir Fendek) - - 2021-06-09 [15611e0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/15611e0480fcf86bc17e088fbbc04b860266f46a) Localised copy support for ClassName changes. (Mojmir Fendek) - - 2021-05-20 [18d3899](https://github.com/tractorcow-farm/silverstripe-fluent/commit/18d3899581f287e3490eb899716d74fa19f78c3d) Fix issue with apply_isolated_locales_to_byid = false not respecting many_many joins (Damian Mooyman) - - 2021-04-29 [1666329](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1666329c0254cb74ce3aaf80e77ddaeb08b872ff) GridField buttons UI improvements for versioned models. (Mojmir Fendek) - - 2021-03-01 [12196e3](https://github.com/tractorcow-farm/silverstripe-fluent/commit/12196e33894dce8d555c83af38a723a9062c8150) Fix Travis setup to run with correct requirements. (Mojmir Fendek) - - 2021-02-08 [74aa604](https://github.com/tractorcow-farm/silverstripe-fluent/commit/74aa6042994eddff4b13383fd0d248109b352a66) Stages differ in locale correction, Copy-to localise buttons restored. (Mojmir Fendek) - - 2020-09-02 [fa58ad7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fa58ad79f81af945ac1ea7ec8a4bd22a381ba671) Resolve regression in middleware behaviour breaking routing bootstrapping (Damian Mooyman) - - 2020-07-29 [2062c0d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2062c0dff1520d8a666365b8d4ccab2394ddacac) Fix invalid test namespaces (Damian Mooyman) - - 2020-07-28 [1cd753a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1cd753a76ac901c3fd87dcd88d829b958dd3a885) Fix test namespaces (Damian Mooyman) - - 2020-07-28 [d7466ef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d7466ef00d93d1092e7d7265c1f69628e3c659a8) Fix composer notice on invalid psr-4 path for test files (Damian Mooyman) - - 2020-07-06 [2577a34](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2577a341340b66f673d66b30bb6c9131c46405d6) fix issue with member permissions erroring before fluent state is initialised (Damian Mooyman) - - 2020-06-18 [81eff09](https://github.com/tractorcow-farm/silverstripe-fluent/commit/81eff09f554551d8a9999c6c64f0286d18c5dbcb) Fix from / to (Damian Mooyman) - - 2020-05-20 [8c8af6e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8c8af6e497c9e1b6aa964040a1f7c95a0367251f) Fix sitemap x-default reference (Damian Mooyman) - - 2020-05-20 [381a351](https://github.com/tractorcow-farm/silverstripe-fluent/commit/381a351057fc6c8235f3efebc12b900c265299f9) Properly handle x-default for home page tags (Damian Mooyman) - - 2020-05-12 [3b1bd95](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3b1bd9521cd08bbc0b401dde3afb40fc879b768f) Fix linting issues (Damian Mooyman) - - 2020-05-12 [a93ad8f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a93ad8f54012cc63953c8cba49f871d702233dfd) Fix unit tests (Damian Mooyman) - - 2020-05-12 [7e5fe14](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7e5fe149d6a709501476301f1f7c8cf4ae2c3a49) Fix issue where gridfield has no Actions column (Damian Mooyman) - - 2020-05-11 [5f67c66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5f67c660b1fb2643f55ed1085cb8788350b2ac10) Fix tests (Damian Mooyman) - - 2020-05-11 [a41b319](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a41b319141239cdbd223dd1fce3f0ded773e3728) Fix hreflang case issue (Damian Mooyman) - - 2020-04-09 [ec6340a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ec6340a1bb5d22de836d95a2775259c8b94eaa4c) Fix UnpublishAction using incorrect locale (Damian Mooyman) - - 2020-03-10 [01972dc](https://github.com/tractorcow-farm/silverstripe-fluent/commit/01972dc636a56cadefe51bca4b0ecea977070730) fix issue where rows were not written to _Localised tables (Damian Mooyman) - - 2020-02-10 [d864f5b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d864f5b6b5662fd00711633b8f3ae4f39dc8c287) Fix unit tests for updates to extensions and middleware (Damian Mooyman) - - 2020-02-10 [a8b05ad](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a8b05ad14ce9caa66695b57fcc3d6cbea82a406d) Fix unit tests (Damian Mooyman) - - 2020-02-09 [44cbe21](https://github.com/tractorcow-farm/silverstripe-fluent/commit/44cbe21c75977bbedbb1ff493788f09fd6c80b4f) Fix unit tests for badge trait (Damian Mooyman) - - 2020-02-07 [ce6eea9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ce6eea912cb3d03c4c977bec88103ef9b5c593ae) Fix crash on logout (Damian Mooyman) - - 2019-11-21 [68a32aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/68a32aab25c533821d87455b382bdfb63ae21ba6) Fix issue with gridfield actions (Damian Mooyman) - - 2019-11-20 [4a78844](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4a78844a0ae840d37c3e3f9c1e9afa15fc2b5332) Fix visibility logic issues with versioned records (Damian Mooyman) - - 2019-11-19 [0e87761](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0e877615bfcf341748eb45d51ce3a95bdc5bdad0) Fix dependency constraints (Damian Mooyman) - - 2019-11-13 [780d4f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/780d4f4579c43d3270ffcb6aec4da8bc29ae0dc5) Fix issue with slashes in prefix (Damian Mooyman) - - 2019-11-13 [ee951cc](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ee951cc2942441f862f789004ab0fc21a6393142) Fix unit tests (Damian Mooyman) - - 2019-11-12 [0d2ab8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0d2ab8cb632ecf1ffd066ef75e55bb03a99412f1) Fix invalid variable name (Damian Mooyman) - -### API changes - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-12-07 [cb22983](https://github.com/silverstripe/recipe-plugin/commit/cb22983fa804607d88b8fc47c4e7a122c80ee18c) Remove deprecated code (#30) (Sabina Talipova) - - 2022-10-25 [e5dceb4](https://github.com/silverstripe/recipe-plugin/commit/e5dceb4546f9eed0cd346beed3dab5af63b1869c) Update deprecations (#27) (Steve Boyd) - -- silverstripe/vendor-plugin (1.7.0 -> 2.0.0) - - 2022-12-14 [86600ce](https://github.com/silverstripe/vendor-plugin/commit/86600cead02300885e2020929126a2d95cb246e5) Make the public folder mandatory (#64) (Guy Sartorelli) - - 2022-12-07 [4e2135f](https://github.com/silverstripe/vendor-plugin/commit/4e2135f3c6f9354d87bed147b4e87c953fe7bde8) Remove deprecated code (#63) (Sabina Talipova) - - 2022-08-03 [ddbf19a](https://github.com/silverstripe/vendor-plugin/commit/ddbf19a9d54fb030e036affeaf8e1deb73c7ad9c) Remove deprecated Library::RESOURCES_PATH const (Guy Sartorelli) - -- silverstripe/assets (1.13.0 -> 2.0.0) - - 2023-01-16 [9a1e094](https://github.com/silverstripe/silverstripe-assets/commit/9a1e0941f93d876b5d6e188cb669512490ff13f4) Use more specific return type than those mandated by the interface (Maxime Rainville) - - 2023-01-10 [0784372](https://github.com/silverstripe/silverstripe-assets/commit/0784372755c8201284faaa4b08cd976ba6e3abb3) Removed ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-12-07 [3495084](https://github.com/silverstripe/silverstripe-assets/commit/349508447b66591671b8930a25cd3fc1f78fb97e) Remove deprecated code (#530) (Sabina Talipova) - -- silverstripe/config (1.6.0 -> 2.0.0) - - 2022-12-07 [c0cd27a](https://github.com/silverstripe/silverstripe-config/commit/c0cd27a330a52e222c4b41da6348dd0a0ac3cd4b) Restore nullable params (Steve Boyd) - - 2022-12-07 [3e7097e](https://github.com/silverstripe/silverstripe-config/commit/3e7097e27971187b80c89c97b00a6d826804be6c) Remove deprecated code (#75) (Sabina Talipova) - -- silverstripe/framework (4.13.0 -> 5.0.0) - - 2023-03-21 [b4f330d73](https://github.com/silverstripe/silverstripe-framework/commit/b4f330d7340da3655364c99cb0fe483a17a24a33) Remove configurability of attributes (Steve Boyd) - - 2023-03-06 [6d239d0b8](https://github.com/silverstripe/silverstripe-framework/commit/6d239d0b88d8e40a1273e8e81c69ce696f05306e) Remove deprecated code (Steve Boyd) - - 2023-02-01 [603723e8f](https://github.com/silverstripe/silverstripe-framework/commit/603723e8f388d0a5e697527bb7c3783ee2597644) Rename Diff to HtmlDiff (Guy Sartorelli) - - 2023-01-26 [ec4a8b88e](https://github.com/silverstripe/silverstripe-framework/commit/ec4a8b88e5df07303dd6707c79f3d1b6a1fad801) Allow array style email addresses (Steve Boyd) - - 2023-01-10 [99dc6df38](https://github.com/silverstripe/silverstripe-framework/commit/99dc6df38adf0a80ab43e8871c3994e0da5417ca) Replace thirdparty difflib with maintained lib (Guy Sartorelli) - - 2023-01-10 [944722f34](https://github.com/silverstripe/silverstripe-framework/commit/944722f34fd4980874485c2670ad1ada014715e6) Removed #[\ReturnTypeWillChange] annotations (Maxime Rainville) - - 2022-12-14 [b14de847a](https://github.com/silverstripe/silverstripe-framework/commit/b14de847a55f8f82779bd878b8c623a87e8f7eda) Make the public directory mandatory (#10617) (Guy Sartorelli) - - 2022-12-07 [53c0147f1](https://github.com/silverstripe/silverstripe-framework/commit/53c0147f112a011f8cbdfb964a92dc4eb81a8b7f) Remove deprecated code (#10594) (Sabina Talipova) - - 2022-12-06 [ae4d7fa09](https://github.com/silverstripe/silverstripe-framework/commit/ae4d7fa0909c6846bbc4ab72549020fa0d44a87a) Create orderBy() method to handle raw SQL (Steve Boyd) - - 2022-11-30 [7860e461e](https://github.com/silverstripe/silverstripe-framework/commit/7860e461ed99cb192f2656170f87f731bf5737c0) Remove deprecated CIConfig functionality (Steve Boyd) - - 2022-10-17 [a57c7315a](https://github.com/silverstripe/silverstripe-framework/commit/a57c7315a28bafbcf41a84f38a35d5dfda041516) Strongly-type action method signatures (Steve Boyd) - - 2022-10-10 [fbcf7dc3e](https://github.com/silverstripe/silverstripe-framework/commit/fbcf7dc3e7484f2d55dcb323ed6e2ba9b7dd5de9) Normalise trailing slashes for all paths (Florian Thoma) - - 2022-09-19 [433926fc1](https://github.com/silverstripe/silverstripe-framework/commit/433926fc11f1c0226310f07c26e595cf27672fe5) Remove deprecated TinyMCE generator class (Guy Sartorelli) - - 2022-09-15 [03b929dd3](https://github.com/silverstripe/silverstripe-framework/commit/03b929dd331f87b3a36f3c021c813a24529e29cc) Remove support for PDO (#10499) (Guy Sartorelli) - - 2022-09-07 [a87a65736](https://github.com/silverstripe/silverstripe-framework/commit/a87a657367aed051c945ba1d674a4c39137c38f3) Update translation to use symfony 6 (Steve Boyd) - - 2022-09-07 [c9bc01473](https://github.com/silverstripe/silverstripe-framework/commit/c9bc01473cd16d195073147e9841dd06828a0d6b) Update caching to use symfony 6 (Steve Boyd) - - 2022-09-01 [1bf86cf39](https://github.com/silverstripe/silverstripe-framework/commit/1bf86cf39f9451787b3a4e92545442f59f1ee00b) Revert shorten auto-generated table names (#10482) (Guy Sartorelli) - - 2022-08-22 [a4521a734](https://github.com/silverstripe/silverstripe-framework/commit/a4521a734812186c697b557dad317c88e6a31e24) Undeprecate table warning message (Guy Sartorelli) - - 2022-08-11 [a76fa32a3](https://github.com/silverstripe/silverstripe-framework/commit/a76fa32a390064b7571a2b318cda48357d918eb8) Remove unnecessary `getGenerator()` method. (Guy Sartorelli) - - 2022-08-09 [3284c0670](https://github.com/silverstripe/silverstripe-framework/commit/3284c067030c37ed79c4ac8412c0a095a939ef61) Remove PHPUnit 5.7 compatability hacks (Guy Sartorelli) - - 2022-08-03 [37dc0daac](https://github.com/silverstripe/silverstripe-framework/commit/37dc0daacc11e5f7c7ce1dfd7b15660a07c1f0e1) Remove deprecated ManifestFileFinder::RESOURCES_DIR const (Guy Sartorelli) - - 2020-03-16 [e42ed95be](https://github.com/silverstripe/silverstripe-framework/commit/e42ed95be180145af1a20c657ce0626ccff2d25a) Update MigrationTask class to be an abstract class (Michal Kleiner) - - 2018-10-15 [f2de39162](https://github.com/silverstripe/silverstripe-framework/commit/f2de39162dc1f197de2fcf8e2c8e2947acdb3754) Allow dataobject get_one without passing a class (Andrew Aitken-Fincham) - - 2018-06-08 [4cda967ea](https://github.com/silverstripe/silverstripe-framework/commit/4cda967eae203126668b95008a549aff9aededf0) Preserve variable types in template lookup args (Loz Calver) - - 2018-06-07 [47337782a](https://github.com/silverstripe/silverstripe-framework/commit/47337782a2d23bc91ff0ba940b79ce3102962e97) <% loop %> and <% with %> only ever create one new scope level (Loz Calver) - - 2018-04-08 [08d1cd383](https://github.com/silverstripe/silverstripe-framework/commit/08d1cd3834fd97293d85b164e63023435a5f92fa) Remove isDev / isTest querystring arguments (Damian Mooyman) - - 2018-03-01 [2c102c61a](https://github.com/silverstripe/silverstripe-framework/commit/2c102c61a9d5837dc74fd731c92df4dc3834d37e) TestCase classes should be abstract to prevent warnings (Daniel Hensby) - - 2018-01-12 [76fc8f159](https://github.com/silverstripe/silverstripe-framework/commit/76fc8f1596f5d9e82acbf5b81a5eebb2e868a5dd) Only expose public extension methods (Damian Mooyman) - -- silverstripe/admin (1.13.0 -> 2.0.0) - - 2023-01-10 [f4633cae](https://github.com/silverstripe/silverstripe-admin/commit/f4633caebad05e64836a6457b1fff3b820f35cad) Remove ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-12-07 [33a80f1c](https://github.com/silverstripe/silverstripe-admin/commit/33a80f1cc44911565af06a1eeb204edd98407406) Remove deprecated code (#1393) (Sabina Talipova) - - 2022-10-17 [a1e70ed0](https://github.com/silverstripe/silverstripe-admin/commit/a1e70ed05a7c8370a8647b756bcdb16d695c358d) Strongly-type action method signatures (Steve Boyd) - - 2022-09-19 [48108c1b](https://github.com/silverstripe/silverstripe-admin/commit/48108c1b31952b250f1d8c3192e49c05cfc6fa48) Convert SecurityAdmin to be a ModelAdmin (Steve Boyd) - - 2022-08-06 [981d5a93](https://github.com/silverstripe/silverstripe-admin/commit/981d5a93405b45a47cdc2c14dc680696b1e928d6) Migrate SilverStripeNagivator (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0 -> 2.0.0) - - 2022-12-07 [38328d8b](https://github.com/silverstripe/silverstripe-asset-admin/commit/38328d8b08107a9629d8759a191f1f5300d48f48) Remove deprecated code (#1307) (Sabina Talipova) - - 2022-10-18 [a6eba071](https://github.com/silverstripe/silverstripe-asset-admin/commit/a6eba071052cb7e88190050f4919e33f9e35dbed) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/campaign-admin (1.13.0 -> 2.0.0) - - 2022-12-07 [426db3e](https://github.com/silverstripe/silverstripe-campaign-admin/commit/426db3e4e14f7800910754f7a9b077b7a07453a0) Remove deprecated code (#249) (Sabina Talipova) - - 2022-10-17 [af7f3ec](https://github.com/silverstripe/silverstripe-campaign-admin/commit/af7f3ecaa49cd9736352a46648c78526e3acce7a) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/versioned-admin (1.13.0 -> 2.0.0) - - 2022-12-07 [bb10c07](https://github.com/silverstripe/silverstripe-versioned-admin/commit/bb10c072869fc27f5f761f1e062dfcb063e73ca8) Remove deprecated code (#265) (Sabina Talipova) - - 2022-10-17 [a80b368](https://github.com/silverstripe/silverstripe-versioned-admin/commit/a80b368f3ab6d454131f449dc7e9a8455493d7d7) Strongly-type action method signatures (Steve Boyd) - - 2022-09-14 [99e50c2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/99e50c20a4c8ba4bb47f7fb0f0647d7cdbdae8c8) Migrate SilverStripeNagivator (Guy Sartorelli) - -- silverstripe/cms (4.13.0 -> 5.0.0) - - 2023-01-17 [97fdff4b](https://github.com/silverstripe/silverstripe-cms/commit/97fdff4bb236498b9ccd3b758dc7930c89b3445d) Remove deprecated CMSMain::$subitem_class config (#2821) (Maxime Rainville) - - 2023-01-16 [1bd578fc](https://github.com/silverstripe/silverstripe-cms/commit/1bd578fc969fc40149d523ccde346122f49a74d6) Remove legacy tasks (Steve Boyd) - - 2022-12-07 [0e5428b7](https://github.com/silverstripe/silverstripe-cms/commit/0e5428b78beaaa228709b7771a908e094907f922) Remove deprecated code (#2800) (Sabina Talipova) - - 2022-10-18 [6e19ae73](https://github.com/silverstripe/silverstripe-cms/commit/6e19ae737feb0e820d60e1628aabc0cefda6f609) Strongly-type action method signatures (Steve Boyd) - - 2022-08-31 [1711c0c8](https://github.com/silverstripe/silverstripe-cms/commit/1711c0c88eeaf24c4170a2ab511398e719c57f89) Move updateRelativeLink hook after concatination (#2770) (Florian Thoma) - - 2022-08-26 [18cb6d49](https://github.com/silverstripe/silverstripe-cms/commit/18cb6d499df3b5adfcf7d118d8a25491be0e2ff8) Normalise trailing slashes in links (Florian Thoma) - - 2022-08-06 [d7857ebb](https://github.com/silverstripe/silverstripe-cms/commit/d7857ebbe001f20de59e29902089108f2a8bf465) Migrate SilverStripeNagivator classes (Guy Sartorelli) - - 2019-07-12 [cda7857e](https://github.com/silverstripe/silverstripe-cms/commit/cda7857e129b05d8d1b11c738d481203b375e6c1) Remove deprecated CMSPageHistoryViewer (Aaron Carlino) - -- silverstripe/errorpage (1.13.0 -> 2.0.0) - - 2022-10-10 [f89cd0b](https://github.com/silverstripe/silverstripe-errorpage/commit/f89cd0bf3d0c9f66d4aa69d7fdc48ee5abc77c5b) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/versioned (1.13.0 -> 2.0.0) - - 2022-12-07 [561275b](https://github.com/silverstripe/silverstripe-versioned/commit/561275bc110790aa25d670cf52d9ded90940cee8) Remove deprecated code (#381) (Sabina Talipova) - - 2022-09-01 [e2924d2](https://github.com/silverstripe/silverstripe-versioned/commit/e2924d2ed1905c4c1c01240fb005317f19c5f554) Symfony 6 compatibility (Steve Boyd) - - 2018-01-12 [9eb2aee](https://github.com/silverstripe/silverstripe-versioned/commit/9eb2aee199778276cd8b31932fee5f12785cdfea) Support new extend*() format for extension methods (Damian Mooyman) - -- silverstripe/graphql (4.3.0 -> 5.0.0) - - 2022-12-07 [f80bdec](https://github.com/silverstripe/silverstripe-graphql/commit/f80bdec41fae8ab2b61e6d1ca174e65a8e76325b) Remove deprecated code (#510) (Sabina Talipova) - - 2022-10-20 [14d9ef2](https://github.com/silverstripe/silverstripe-graphql/commit/14d9ef2897776ec8dfa5ce703c8118be501413be) Support of upgrading installer dependencies (#499) (Sabina Talipova) - -- silverstripe/tagfield (2.11.0 -> 3.0.0) - - 2023-01-25 [6f203a3](https://github.com/silverstripe/silverstripe-tagfield/commit/6f203a36af3535190ac171faf44d44743f442ff7) Remove deprecated code (#228) (Sabina Talipova) - -- silverstripe/comments (3.10.0 -> 4.0.0) - - 2023-01-17 [ff3ce69](https://github.com/silverstripe/silverstripe-comments/commit/ff3ce6978bd6d58ec573fbf2d1e4ddab2bbbc189) Remove deprecated code (Sabina Talipova) - -- silverstripe/sharedraftcontent (2.9.0 -> 3.0.0) - - 2023-01-25 [c2ceb88](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/c2ceb880aa326d12e476441ba265f8c88ea25940) Remove deprecated code (#183) (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (5.9.0 -> 6.0.0) - - 2023-01-25 [99559c5](https://github.com/symbiote/silverstripe-advancedworkflow/commit/99559c5f8fcee06ada972860e5a97fb595fe66e5) Remove deprecated code (#476) (Sabina Talipova) - -- silverstripe/userforms (5.15.0 -> 6.0.0) - - 2023-01-25 [1ea2b8e](https://github.com/silverstripe/silverstripe-userforms/commit/1ea2b8e87f197b5c726d8b3815890f388a684bc8) Remove deprecated code (#1185) (Sabina Talipova) - -- silverstripe/securityreport (2.6.0 -> 3.0.0) - - 2023-01-25 [b2c7a99](https://github.com/silverstripe/silverstripe-securityreport/commit/b2c7a9975d2ed02d29c58688f5509fef274ac457) Remove deprecated code (#60) (Sabina Talipova) - -- silverstripe/versionfeed (2.4.0 -> 3.0.0) - - 2023-01-25 [a753712](https://github.com/silverstripe/silverstripe-versionfeed/commit/a753712806dbaa336fc6e7e9695c4288ef1d039c) Remove deprecated code (#78) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.11.0 -> 5.0.0) - - 2023-01-25 [f6e0266](https://github.com/silverstripe/silverstripe-elemental/commit/f6e0266eea523e7c9d283009b261e946923622bf) Remove deprecated code (#1034) (Sabina Talipova) - - 2022-11-21 [9f0df28](https://github.com/silverstripe/silverstripe-elemental/commit/9f0df28608e1e9fe34952212f232c21ba391b6c0) Apply TopPage extensions by default. (#1010) (Guy Sartorelli) - - 2019-08-02 [005f8a9](https://github.com/silverstripe/silverstripe-elemental/commit/005f8a9f13a4c0c75b6c5cd0a1e0a6424471320d) Remove ElementalSolrIndex (Ingo Schommer) - -- cwp/cwp-search (1.8.0 -> 2.0.0) - - 2023-01-25 [d7fb9db](https://github.com/silverstripe/cwp-search/commit/d7fb9db5e881102ec81d1ee7c71e084bd76bcffc) Remove deprecated code (#52) (Sabina Talipova) - -- silverstripe/fulltextsearch (3.12.0 -> 4.0.0) - - 2023-01-25 [3663996](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/36639967aed7fd1b810ce27e4f0a25b39f88e726) Remove deprcated code (#336) (Sabina Talipova) - - 2023-01-20 [35340d4](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/35340d40057f1533687268997262185fdcff9084) Strongly type iterator classes and remove ReturnTypeWillChange annotation (Maxime Rainville) - -- symbiote/silverstripe-queuedjobs (4.12.0 -> 5.0.0) - - 2023-03-06 [40e869c](https://github.com/symbiote/silverstripe-queuedjobs/commit/40e869cf2c6ae2cd92d38f3e8c634c9de092957e) Remove deprecated code (Steve Boyd) - - 2022-10-26 [952727e](https://github.com/symbiote/silverstripe-queuedjobs/commit/952727e06ab2a339b2c30465abc96cfa7ef40f8e) Use correct typing for new version of monolog (Guy Sartorelli) - -- cwp/cwp-core (2.12.0 -> 3.0.0) - - 2023-01-25 [b8a6e11](https://github.com/silverstripe/cwp-core/commit/b8a6e11c1e1c547935b11e1acd21200deb1997c2) Remove deprecated code (#115) (Sabina Talipova) - -- silverstripe/auditor (2.6.0 -> 3.0.0) - - 2023-01-25 [c20c342](https://github.com/silverstripe/silverstripe-auditor/commit/c20c3428eaa6e94afda1f0d23397c6a5f3ca32f2) Remove deprecated code (#48) (Sabina Talipova) - -- silverstripe/environmentcheck (2.7.0 -> 3.0.0) - - 2023-01-25 [56b3753](https://github.com/silverstripe/silverstripe-environmentcheck/commit/56b37530d68b4aa90f7b3d655cf5c829916ca1dc) Remove deprecated code (#83) (Sabina Talipova) - -- silverstripe/hybridsessions (2.7.0 -> 3.0.0) - - 2023-01-17 [67bc3bd](https://github.com/silverstripe/silverstripe-hybridsessions/commit/67bc3bd8933d80688ed9572f49c99e1b9ccfd311) Remove deprecated code (Sabina Talipova) - - 2023-01-13 [443a927](https://github.com/silverstripe/silverstripe-hybridsessions/commit/443a92749d05c5ce3ea8aab6d9cbb8e67cde5b1b) Remove ReturnTypeWillChange annotation (Maxime Rainville) - -- silverstripe/registry (2.6.0 -> 3.0.0) - - 2022-12-08 [1ff8d18](https://github.com/silverstripe/silverstripe-registry/commit/1ff8d1837d69b8d076b9c662ce0141ca66b473ac) Update import() signature (Steve Boyd) - -- silverstripe/mfa (4.8.0 -> 5.0.0) - - 2023-01-25 [096ea96](https://github.com/silverstripe/silverstripe-mfa/commit/096ea96600a17e0c301dee505b458ce20ee6a261) Remove deprecated code (#480) (Sabina Talipova) - -- silverstripe/crontask (2.6.0 -> 3.0.0) - - 2023-01-25 [412cfeb](https://github.com/silverstripe/silverstripe-crontask/commit/412cfeb4cdb775941103783ad0d3fca6d9cc4a59) Remove deprecated code (#73) (Sabina Talipova) - -- silverstripe/ldap (1.6.0 -> 2.0.0) - - 2023-01-25 [b9c070e](https://github.com/silverstripe/silverstripe-ldap/commit/b9c070e467950f9027087eca2978852e093e594a) Remove deprecated code (#47) (Sabina Talipova) - - 2023-01-20 [c71c2f0](https://github.com/silverstripe/silverstripe-ldap/commit/c71c2f0ee7cb4e9eada3588279d143226da6388a) Remove ReturnTypeWillChange annotation (Maxime Rainville) - -- silverstripe/webauthn-authenticator (4.7.0 -> 5.0.0) - - 2023-02-07 [724925d](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/724925daf0e1994b0689ee03d94b102a3c1a9b7d) Remove deprecated code (#125) (Sabina Talipova) - -- silverstripe/subsites (2.8.0 -> 3.0.0) - - 2023-03-06 [1336c7e](https://github.com/silverstripe/silverstripe-subsites/commit/1336c7e48db59bab0057eb76148a7f497d2b3ba7) Remove deprecated code (Steve Boyd) - - 2023-01-26 [d4bc28e](https://github.com/silverstripe/silverstripe-subsites/commit/d4bc28e65cf211c92a1471921b74f51cfca26047) Remove deprecated code (Steve Boyd) - -- cwp/cwp (2.11.0 -> 3.0.0) - - 2023-03-09 [0d1927e](https://github.com/silverstripe/cwp/commit/0d1927e3d26af678bc1165df1fb1e2117b402e23) Remove CwpSiteSummaryExtension (Steve Boyd) - - 2023-01-25 [dec2a6f](https://github.com/silverstripe/cwp/commit/dec2a6f77cd7ddbc108bbe9f60176b411f267e0e) Remove deprecated code (#318) (Sabina Talipova) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0) - - 2023-01-25 [2f7109a](https://github.com/colymba/GridFieldBulkEditingTools/commit/2f7109ac5224b9e9b6afa3e7d7a1064c6b7ca75c) Remove deprecated code (#230) (Sabina Talipova) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0) - - 2023-02-16 [1af962f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1af962fc34eada5e8830b1ad23c680c2afa0abdf) Remove deprecated methods. (Guy Sartorelli) - - 2020-03-19 [cf3b646](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cf3b6468f5c8eb5590204c06f8175a5e0da19271) Add FluentIsolatedExtension for objects which only belong to a single locale (Damian Mooyman) - -- silverstripe/dynamodb (4.1.0 -> 5.0.0) - - 2023-02-13 [ebc58bf](https://github.com/silverstripe/silverstripe-dynamodb/commit/ebc58bf666cc81bab675935e40a5877d720ff501) Add strong typing and update code syntax (Guy Sartorelli) - -### Dependencies - -- silverstripe/recipe-kitchen-sink (4.13.0 -> 5.0.0) - - 2023-02-21 [202ccae](https://github.com/silverstripe/recipe-kitchen-sink/commit/202ccae2ab807a69078ec4b4810b44c33dc314b8) Stop using the fork of fluent (Guy Sartorelli) - - 2023-02-14 [eb33da1](https://github.com/silverstripe/recipe-kitchen-sink/commit/eb33da1637e61251da90e99f8359a9c151fe9f75) Add silverstripe/dynamodb (Steve Boyd) - - 2023-02-08 [fea0e62](https://github.com/silverstripe/recipe-kitchen-sink/commit/fea0e62f99b090a9cab32844f8e4dc20c1005a93) Add more modules (Steve Boyd) - - 2023-02-08 [36483f4](https://github.com/silverstripe/recipe-kitchen-sink/commit/36483f4a13b75ba852c8c7df68cb0755a82c8b7a) Use caret for silverstripe/recipe-plugin (Steve Boyd) - - 2023-01-29 [3979d78](https://github.com/silverstripe/recipe-kitchen-sink/commit/3979d7840b050abdaef6ad5c7bbb3874734eb230) Remove silverstripe/security-extensions (Guy Sartorelli) - - 2023-01-18 [6701348](https://github.com/silverstripe/recipe-kitchen-sink/commit/67013489e4d50f89d043f7e0336540a97b698322) remove cwp/cwp-pdfexport (Steve Boyd) - - 2022-12-19 [cd343c3](https://github.com/silverstripe/recipe-kitchen-sink/commit/cd343c3a60684074433cce756a5de8fa6f32812c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-10-26 [b81b640](https://github.com/silverstripe/recipe-plugin/commit/b81b640235d5b18e99278268af4c39df30787dd3) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [e0aeb69](https://github.com/silverstripe/recipe-plugin/commit/e0aeb694a91fc2aea056ea9421adcadc0d146d39) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/installer (4.13.0 -> 5.0.0) - - 2023-02-07 [7b49f0e](https://github.com/silverstripe/silverstripe-installer/commit/7b49f0e12980b0ed1560f3f04380765d1e7584a8) Use caret for plugins (Steve Boyd) - - 2022-12-14 [406ee71](https://github.com/silverstripe/silverstripe-installer/commit/406ee71a48d0dc05dde81fbebafbe41876f7d9af) Require dev branches for composer plugins (#340) (Guy Sartorelli) - - 2022-08-04 [8ca19d5](https://github.com/silverstripe/silverstripe-installer/commit/8ca19d5eb778e62aff776b585f77054a7e9fcac3) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/vendor-plugin (1.7.0 -> 2.0.0) - - 2022-10-26 [6d322f9](https://github.com/silverstripe/vendor-plugin/commit/6d322f944312caed0135dec87c802f512c011bb3) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [c2e1c7f](https://github.com/silverstripe/vendor-plugin/commit/c2e1c7f451d27f4f6b1ae44105d01ac78364cbab) Require composer/installers ^2 (Steve Boyd) - - 2022-08-04 [de85c78](https://github.com/silverstripe/vendor-plugin/commit/de85c7817947656b40efcefc69bc632ccfbf796d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-cms (4.13.0 -> 5.0.0) - - 2022-08-04 [6e7dce8](https://github.com/silverstripe/recipe-cms/commit/6e7dce8f2e0574737b3ff3b114f39c1d6a6c3d06) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-core (4.13.0 -> 5.0.0) - - 2022-08-09 [7716a27](https://github.com/silverstripe/recipe-core/commit/7716a27a70adbf2048a7004edf51102a15e4a3e9) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5a447f9](https://github.com/silverstripe/recipe-core/commit/5a447f93b30951916b0d846c1cb494a427c60438) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/assets (1.13.0 -> 2.0.0) - - 2022-10-31 [a2733b9](https://github.com/silverstripe/silverstripe-assets/commit/a2733b90fae4f441ded07ce526621e13822c6ae8) Upgrade legue/flysystem to version 3.0 (#524) (Sabina Talipova) - - 2022-09-01 [32dd083](https://github.com/silverstripe/silverstripe-assets/commit/32dd083867d71ad26494f61fe15c607c8c17cc5d) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [22ab6c3](https://github.com/silverstripe/silverstripe-assets/commit/22ab6c3101f212df9cc4d5a736e1b7f44c3cea2c) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [35fd723](https://github.com/silverstripe/silverstripe-assets/commit/35fd723748f7bd6cd4dd4ed06639f52316051c54) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/config (1.6.0 -> 2.0.0) - - 2022-10-25 [48b1336](https://github.com/silverstripe/silverstripe-config/commit/48b1336f7b4c78daec794dc2f448dd95cd35e409) Upgrade dependencies CMS5 (Sabina Talipova) - - 2022-09-01 [6ec9ca3](https://github.com/silverstripe/silverstripe-config/commit/6ec9ca350fbb4984803db9b089b556c54e6add19) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [b00bfbc](https://github.com/silverstripe/silverstripe-config/commit/b00bfbccdfae47e81a69a64610a53d0fae33d954) Require latest patch versions of dependencies (Steve Boyd) - - 2022-08-04 [52a9dd5](https://github.com/silverstripe/silverstripe-config/commit/52a9dd572a8052d484e2dc5fd6adf1445d6c0fbb) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/framework (4.13.0 -> 5.0.0) - - 2023-05-01 [f7a155194](https://github.com/silverstripe/silverstripe-framework/commit/f7a15519468502ce91b23fc1e6decd3bbb427a78) Conflict with symfony/process if not PHP 8.1 compatible (#10764) (Guy Sartorelli) - - 2023-03-02 [9868eca7e](https://github.com/silverstripe/silverstripe-framework/commit/9868eca7eb29ff89cc90d9263f74e762cb9f8233) Bump masterminds/html5 to 2.7.6 to fix deperaction warning (#10714) (Maxime Rainville) - - 2023-01-16 [05fc1df89](https://github.com/silverstripe/silverstripe-framework/commit/05fc1df8965be69582e0b3391f707303792d396f) Allow psr/container ^1.1 or ^2.0 (Steve Boyd) - - 2023-01-11 [7c20ade54](https://github.com/silverstripe/silverstripe-framework/commit/7c20ade5488f2347fbb6559cf066a27191aeacd7) Replace thirdparty simpletest with symfony domcrawler (Guy Sartorelli) - - 2023-01-10 [3f3772dc6](https://github.com/silverstripe/silverstripe-framework/commit/3f3772dc660add611902ad4949997ce3c160847e) Remove unnecessary bramus/monolog-colored-line-formatter (Guy Sartorelli) - - 2022-12-21 [156c6ca59](https://github.com/silverstripe/silverstripe-framework/commit/156c6ca59501b2435787da51a4f1f446c66c36ae) Update minimum version of oscarotero/html-parser (Steve Boyd) - - 2022-10-20 [3601b7ab8](https://github.com/silverstripe/silverstripe-framework/commit/3601b7ab8b506e6aaa41e1e89078df99ca484942) Upgrade installer dependencies (#10534) (Sabina Talipova) - - 2022-09-01 [e6fb9634b](https://github.com/silverstripe/silverstripe-framework/commit/e6fb9634b5c7b233538b3ecb3db703e58af9242b) Revert change to dependency that was made during a merge-up (#10479) (Guy Sartorelli) - - 2022-08-09 [470753194](https://github.com/silverstripe/silverstripe-framework/commit/470753194c837a8db9a7b00634c5f23ecce7dbfc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [eb62db6db](https://github.com/silverstripe/silverstripe-framework/commit/eb62db6dba91f87941404360f6d6acfa6afbe33d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/mimevalidator (2.5.0 -> 3.0.0) - - 2022-10-26 [d0982dc](https://github.com/silverstripe/silverstripe-mimevalidator/commit/d0982dca4f8c52a3c806c5edf119123ebd1328b7) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [19251bf](https://github.com/silverstripe/silverstripe-mimevalidator/commit/19251bfd2f1cea32183f6c0ffafb42496bc5cfe2) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c8916a3](https://github.com/silverstripe/silverstripe-mimevalidator/commit/c8916a307d7ce42a07916cadf985742b9d7fea67) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/admin (1.13.0 -> 2.0.0) - - 2022-12-18 [2b8f53e9](https://github.com/silverstripe/silverstripe-admin/commit/2b8f53e9bc3729b6ce05776c5e559c1586212170) Upgrade front-end build stack (#1389) (Guy Sartorelli) - - 2022-09-19 [e8f3f353](https://github.com/silverstripe/silverstripe-admin/commit/e8f3f353782f99303acbc5fc22b3b4b94e4bf115) Upgrade TinyMCE from 4 to 6 (Guy Sartorelli) - - 2022-08-09 [5fc5071c](https://github.com/silverstripe/silverstripe-admin/commit/5fc5071c49b3f70302560804c17a2129ce6c0ae1) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c80be4ee](https://github.com/silverstripe/silverstripe-admin/commit/c80be4ee7e41b3e36f2ab8b1c4ffe1496a127ba8) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/asset-admin (1.13.0 -> 2.0.0) - - 2022-12-18 [6b95cde8](https://github.com/silverstripe/silverstripe-asset-admin/commit/6b95cde82e3cff1f7d1b94fdb2258db4826674e7) Upgrade build stack (#1303) (Guy Sartorelli) - - 2022-08-09 [c12dcfe4](https://github.com/silverstripe/silverstripe-asset-admin/commit/c12dcfe4fdcf3f837eb2b96a137c4c86185d8c7a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [1ad9dcd2](https://github.com/silverstripe/silverstripe-asset-admin/commit/1ad9dcd2db3d0596ddb9a0035a6422d10a46e731) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/campaign-admin (1.13.0 -> 2.0.0) - - 2022-12-18 [708e384](https://github.com/silverstripe/silverstripe-campaign-admin/commit/708e384671671ebc7db5e6e4d64b404fcc43d3af) Upgrade build stack (#248) (Guy Sartorelli) - - 2022-08-09 [45b4b3c](https://github.com/silverstripe/silverstripe-campaign-admin/commit/45b4b3cff6026ea22b4f0bed828566ae9309db30) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7c949f2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7c949f2030325d7c6309b23112e4dbdfa8584ef3) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned-admin (1.13.0 -> 2.0.0) - - 2022-12-18 [afc0dbd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afc0dbd8411dd3ff0f70015f3305cf44acbd724b) Upgrade webpack build stack (#263) (Guy Sartorelli) - - 2022-10-26 [c26a921](https://github.com/silverstripe/silverstripe-versioned-admin/commit/c26a921f59d93dc57989591b10b7311c8d974b8f) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [6c60865](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6c60865978c54f651922563d01ed1e35dae3f811) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/cms (4.13.0 -> 5.0.0) - - 2022-12-18 [5e843d26](https://github.com/silverstripe/silverstripe-cms/commit/5e843d26194ddfbac7d1bdb760b8de73901f6b28) Upgrade build stack (#2795) (Guy Sartorelli) - - 2022-08-09 [7381de15](https://github.com/silverstripe/silverstripe-cms/commit/7381de15e87d4f6feaada2ec7e9d4124b058506d) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [72f8e5f7](https://github.com/silverstripe/silverstripe-cms/commit/72f8e5f71db0d0ae8390206156a3a2170284f5cd) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/errorpage (1.13.0 -> 2.0.0) - - 2022-08-09 [f5a177c](https://github.com/silverstripe/silverstripe-errorpage/commit/f5a177ca97a665ceebd96dc35f3ebd25863ba05a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5700408](https://github.com/silverstripe/silverstripe-errorpage/commit/57004082dac802d74e3aa328e67228d416ab9566) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/reports (4.13.0 -> 5.0.0) - - 2022-10-26 [23786e5d](https://github.com/silverstripe/silverstripe-reports/commit/23786e5daffcb3167dbce162e9a53ad261cacc8d) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [65bc353f](https://github.com/silverstripe/silverstripe-reports/commit/65bc353f43165a81c7c6295ece2c13465cbf8241) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/siteconfig (4.13.0 -> 5.0.0) - - 2022-10-26 [30197074](https://github.com/silverstripe/silverstripe-siteconfig/commit/30197074e97c0b30e9161d8030d94e131416e415) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [400b82c4](https://github.com/silverstripe/silverstripe-siteconfig/commit/400b82c48b62b3c92b80a42998c56ca51fe4871a) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned (1.13.0 -> 2.0.0) - - 2022-10-26 [3f55378](https://github.com/silverstripe/silverstripe-versioned/commit/3f5537817d7711a9e439726d3a43d4042656191c) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [c9dbdd6](https://github.com/silverstripe/silverstripe-versioned/commit/c9dbdd63f886039873484b46b7b8b27d6d5d941c) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/graphql (4.3.0 -> 5.0.0) - - 2023-01-13 [1149129](https://github.com/silverstripe/silverstripe-graphql/commit/11491291871068f9e9e115cce089e860aad61d9b) Use webonyx/graphq-PHP 15 (Steve Boyd) - - 2022-10-26 [32d25c7](https://github.com/silverstripe/silverstripe-graphql/commit/32d25c79a368d4c03034a3e1acde2d2315fb382d) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [5b5971f](https://github.com/silverstripe/silverstripe-graphql/commit/5b5971fdafb12703b7e9697d21b27662bb61942b) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e63d41d](https://github.com/silverstripe/silverstripe-graphql/commit/e63d41d8db4cbe1d07092eece5e096a0be2c21ad) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/session-manager (1.5.0 -> 2.0.0) - - 2022-12-18 [4043291](https://github.com/silverstripe/silverstripe-session-manager/commit/4043291c197567bf9d931fcb93660890229b8a86) Upgrade build stack (#123) (Guy Sartorelli) - - 2022-08-17 [8712b4b](https://github.com/silverstripe/silverstripe-session-manager/commit/8712b4b52ca6f7008c3ca61ee79173c6e374578e) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e0092bf](https://github.com/silverstripe/silverstripe-session-manager/commit/e0092bf2aa912840c0906cb78bd177f322243762) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/login-forms (4.9.0 -> 5.0.0) - - 2022-12-18 [4f4e68e](https://github.com/silverstripe/silverstripe-login-forms/commit/4f4e68e9f016875c013b7889a5c79f7fdc49e44e) Upgrade build stack (#128) (Guy Sartorelli) - - 2022-08-09 [89769f4](https://github.com/silverstripe/silverstripe-login-forms/commit/89769f4e90a0694362fb284705ac66f6bf280bbc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7948d1e](https://github.com/silverstripe/silverstripe-login-forms/commit/7948d1ecc6d88c63e710690567be4855e8f614ab) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-authoring-tools (1.13.0 -> 2.0.0) - - 2022-12-18 [3ec9b66](https://github.com/silverstripe/recipe-authoring-tools/commit/3ec9b666cd1738dd2469c145ecdbcd33cde1ed7e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/documentconverter (2.5.0 -> 3.0.0) - - 2023-01-31 [fc23e53](https://github.com/silverstripe/silverstripe-documentconverter/commit/fc23e53084ad7040ae037704bcdb9b8468304d25) Upgrade frontend build stack (#38) (Guy Sartorelli) - - 2022-12-18 [5bbaed1](https://github.com/silverstripe/silverstripe-documentconverter/commit/5bbaed1a4b1ad998165efbb9d8aab25aad13558b) PHP Support in CMS5 (#35) (Sabina Talipova) - -- silverstripe/iframe (2.4.0 -> 3.0.0) - - 2023-01-10 [031d47c](https://github.com/silverstripe/silverstripe-iframe/commit/031d47ce207b8b5e886ad446cb3c31e6ae7e0ef0) PHP Support in CMS5 (#63) (Sabina Talipova) - -- silverstripe/tagfield (2.11.0 -> 3.0.0) - - 2023-02-01 [249842f](https://github.com/silverstripe/silverstripe-tagfield/commit/249842fab884d33e4fc3177ebe42c65bb648c164) Upgrade frontend build stack (#229) (Guy Sartorelli) - - 2022-12-18 [08d1646](https://github.com/silverstripe/silverstripe-tagfield/commit/08d1646e4c7b09558f94255c5f572dd3b1e0a305) PHP Support in CMS5 (#224) (Sabina Talipova) - -- silverstripe/taxonomy (2.5.0 -> 3.0.0) - - 2022-12-18 [95a13ed](https://github.com/silverstripe/silverstripe-taxonomy/commit/95a13edd6445c94ba1208a6f3a52252ba38dc969) PHP Support in CMS5 (#85) (Sabina Talipova) - -- silverstripe/recipe-blog (1.13.0 -> 2.0.0) - - 2022-12-18 [3e5a612](https://github.com/silverstripe/recipe-blog/commit/3e5a61232ebb99b3c1fdb555cb083089921f99a0) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/blog (3.12.0 -> 4.0.0) - - 2023-02-07 [ffea8ac](https://github.com/silverstripe/silverstripe-blog/commit/ffea8acb0e7e2bb4ed571c1ba9bf1dd3621b8599) Upgrade frontend build stack (#697) (Guy Sartorelli) - - 2022-12-09 [29f0b39](https://github.com/silverstripe/silverstripe-blog/commit/29f0b392717295091b212826091170a6e3bd3e2c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/widgets (2.4.0 -> 3.0.0) - - 2023-01-09 [9df1794](https://github.com/silverstripe/silverstripe-widgets/commit/9df179450eb56a98a62452a571dca8ece5c55dbe) PHP Support in CMS5 (#193) (Sabina Talipova) - -- silverstripe/content-widget (2.4.0 -> 3.0.0) - - 2022-12-18 [0b65d10](https://github.com/silverstripe/silverstripe-content-widget/commit/0b65d105c3e23782c8bb85afdeefe617fd5a92a6) PHP Support in CMS5 (#35) (Sabina Talipova) - -- silverstripe/spamprotection (3.4.0 -> 4.0.0) - - 2022-12-13 [d669b42](https://github.com/silverstripe/silverstripe-spamprotection/commit/d669b42cc96af2920cc021f99bb5ffc7334a2eef) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/comments (3.10.0 -> 4.0.0) - - 2023-01-20 [3aee737](https://github.com/silverstripe/silverstripe-comments/commit/3aee7377a94b952363bc48214b7a6bdcebc87483) Upgrade frontend build stack (Guy Sartorelli) - - 2022-12-09 [d6b44f2](https://github.com/silverstripe/silverstripe-comments/commit/d6b44f2385db141a428c35a48b3bf6c17f85e43c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/comment-notifications (2.4.0 -> 3.0.0) - - 2023-02-07 [11528c7](https://github.com/silverstripe/comment-notifications/commit/11528c7adf36cb095a5f9d4f48233339858a55de) Explicitly require framework (Steve Boyd) - - 2022-12-09 [5fed9b2](https://github.com/silverstripe/comment-notifications/commit/5fed9b29007e9933651839d33c17051f3a642bc8) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-collaboration (1.13.0 -> 2.0.0) - - 2023-01-10 [30038f1](https://github.com/silverstripe/recipe-collaboration/commit/30038f199dbf6933b780103b2735f149fab74a0d) PHP Support in CMS5 (#21) (Sabina Talipova) - -- silverstripe/contentreview (4.7.0 -> 5.0.0) - - 2023-01-30 [dc66fe8](https://github.com/silverstripe/silverstripe-contentreview/commit/dc66fe86c9c95731651b927b7b09859205211403) Upgrade frontend build stack (#182) (Guy Sartorelli) - - 2023-01-09 [f4b409e](https://github.com/silverstripe/silverstripe-contentreview/commit/f4b409e0d32fe6c5f1951ded11e4da5322475ea4) PHP Support in CMS5 (#178) (Sabina Talipova) - -- silverstripe/sharedraftcontent (2.9.0 -> 3.0.0) - - 2023-01-30 [2ae00a0](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/2ae00a014657eec6777ba4f5bb56e185fd5bc821) Upgrade build stack (#186) (Guy Sartorelli) - - 2022-12-18 [ecb33ba](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/ecb33ba101ca7a746301fd4515a4ae377eeb5057) PHP Support in CMS5 (#181) (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (5.9.0 -> 6.0.0) - - 2023-02-07 [6f8b057](https://github.com/symbiote/silverstripe-advancedworkflow/commit/6f8b057ad4c1815ec6c34e796861233b04eaa611) Upgrade frontend build stack (#478) (Guy Sartorelli) - - 2023-01-10 [579fbb0](https://github.com/symbiote/silverstripe-advancedworkflow/commit/579fbb0f05275acdd3cfc3f11b41a2ecad8e1d0f) PHP Support in CMS5 (#474) (Sabina Talipova) - -- silverstripe/recipe-form-building (1.13.0 -> 2.0.0) - - 2022-12-18 [317c7c2](https://github.com/silverstripe/recipe-form-building/commit/317c7c219a24c98c08c8e0ad5e64b6ef082c739e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/segment-field (2.8.0 -> 3.0.0) - - 2023-01-31 [e431f24](https://github.com/silverstripe/silverstripe-segment-field/commit/e431f243ea9803273c4126a919af1edc17df4b7b) Upgrade frontend build stack (#74) (Guy Sartorelli) - - 2022-12-18 [c820963](https://github.com/silverstripe/silverstripe-segment-field/commit/c820963a9f4667150b05c0946355028c5a4b7dc2) PHP Support in CMS5 (#72) (Sabina Talipova) - -- silverstripe/userforms (5.15.0 -> 6.0.0) - - 2023-01-30 [1c0dd09](https://github.com/silverstripe/silverstripe-userforms/commit/1c0dd0944515b4f20011c8ff7fd1b2064775148a) Upgrade frontend build stack (#1191) (Guy Sartorelli) - - 2022-12-13 [2b9d983](https://github.com/silverstripe/silverstripe-userforms/commit/2b9d9833b3c706a56a54b7c725f42afca90674a5) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-reporting-tools (1.13.0 -> 2.0.0) - - 2022-12-18 [adcb4e1](https://github.com/silverstripe/recipe-reporting-tools/commit/adcb4e1fb15623f43d04863a743888f9fb8aaeaa) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/externallinks (2.4.0 -> 3.0.0) - - 2023-01-30 [8ce91fb](https://github.com/silverstripe/silverstripe-externallinks/commit/8ce91fb84f98f4987084ba5bf750307209d1ad95) Upgrade frontend build stack (#90) (Guy Sartorelli) - - 2022-12-18 [fc8f9d5](https://github.com/silverstripe/silverstripe-externallinks/commit/fc8f9d55c77eb273f4bd5fb47b4cc0863f045526) PHP Support in CMS5 (#87) (Sabina Talipova) - -- silverstripe/securityreport (2.6.0 -> 3.0.0) - - 2023-01-10 [731da75](https://github.com/silverstripe/silverstripe-securityreport/commit/731da7578aadbfb7df8633b16803277960b19e02) PHP Support in CMS5 (#59) (Sabina Talipova) - -- silverstripe/sitewidecontent-report (3.4.0 -> 4.0.0) - - 2023-01-30 [5e5ab46](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/5e5ab46b9764c73d927737fcf4126e9ab8908b1a) Upgrade frontend build stack (#59) (Guy Sartorelli) - - 2023-01-10 [8b12ef8](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/8b12ef857e58f696e33ee1116c0a93bdc734725e) PHP Support in CMS5 (#57) (Sabina Talipova) - -- bringyourownideas/silverstripe-maintenance (2.7.0 -> 3.0.0) - - 2023-01-31 [1ecb60e](https://github.com/bringyourownideas/silverstripe-maintenance/commit/1ecb60eb4db38599552d1a8b5c22bee685106c5e) Upgrade frontend build stack (#187) (Guy Sartorelli) - - 2022-12-08 [9cadfaf](https://github.com/bringyourownideas/silverstripe-maintenance/commit/9cadfaf7448cbea8b2c6a66dff55b1146f5ed47b) PHP Support in CMS5 (Sabina Talipova) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0) - - 2022-12-08 [3c9044b](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/3c9044b7c57839c90875cdc5665f5f115f80a81c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-services (1.13.0 -> 2.0.0) - - 2023-01-10 [4ff9f8c](https://github.com/silverstripe/recipe-services/commit/4ff9f8c931569c13b3f57e6229f5f0c50646cd47) PHP Support in CMS5 (#23) (Sabina Talipova) - -- silverstripe/restfulserver (2.6.0 -> 3.0.0) - - 2022-12-18 [d788f5d](https://github.com/silverstripe/silverstripe-restfulserver/commit/d788f5dcd01e4195d488741d2e615b745578bdbd) PHP Support in CMS5 (#102) (Sabina Talipova) - -- silverstripe/versionfeed (2.4.0 -> 3.0.0) - - 2023-01-10 [9b92ba8](https://github.com/silverstripe/silverstripe-versionfeed/commit/9b92ba8d6c9f5b8ba0bf8c4f305322d4e591724e) PHP Support in CMS5 (#77) (Sabina Talipova) - -- silverstripe/recipe-content-blocks (2.13.0 -> 3.0.0) - - 2023-01-17 [522442c](https://github.com/silverstripe/recipe-content-blocks/commit/522442c5a0bc4b65e26d509f6dde4d6ad11043c0) PHP Support in CMS5 (#28) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.11.0 -> 5.0.0) - - 2023-01-13 [bfed1ab](https://github.com/silverstripe/silverstripe-elemental/commit/bfed1abbe9d75bdeea99939545481a6ffacd29e2) Upgrade front-end build stack (Guy Sartorelli) - - 2022-08-10 [02c3ed0](https://github.com/silverstripe/silverstripe-elemental/commit/02c3ed06d305e23dd9845a15fb4373b56cff2e7f) Update dependencies for CMS 5 (Steve Boyd) - -- silverstripe/elemental-fileblock (2.5.0 -> 3.0.0) - - 2022-12-12 [405c688](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/405c68842fc42617e1400e24c9fb1a88aa74e304) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/elemental-bannerblock (2.7.0 -> 3.0.0) - - 2023-01-30 [91190b8](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/91190b85eccee6893015e85a5da6c3611fca15f6) Upgrade frontend build stack (#98) (Guy Sartorelli) - - 2023-01-16 [732f442](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/732f442b835d187bb97d904111edd33f00bc5b57) Loosen the elemental constrain to avoid conflicts on other PRs (Maxime Rainville) - - 2022-12-12 [e9cac1b](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/e9cac1b3d2aded9892bb9fb60017c7a8a20a6fa9) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-solr-search (2.13.0 -> 3.0.0) - - 2022-12-18 [bf4c9ab](https://github.com/silverstripe/recipe-solr-search/commit/bf4c9abe34b93bed4afe57c7959c48ba7cda026b) PHP Support in CMS5 (Sabina Talipova) - -- cwp/cwp-search (1.8.0 -> 2.0.0) - - 2023-01-17 [c47f5a4](https://github.com/silverstripe/cwp-search/commit/c47f5a45af87f843c4480697822d463f15dfa2bc) PHP Support in CMS5 (#51) (Sabina Talipova) - -- silverstripe/fulltextsearch (3.12.0 -> 4.0.0) - - 2022-12-12 [525eb9a](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/525eb9aa24d5006264e3e511c7cec955e1790b01) PHP Support in CMS5 (Sabina Talipova) - -- symbiote/silverstripe-queuedjobs (4.12.0 -> 5.0.0) - - 2022-08-10 [4db7317](https://github.com/symbiote/silverstripe-queuedjobs/commit/4db73170a5c4eb07be75c21e41924040bde856ee) Update dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-ccl (2.13.0 -> 3.0.0) - - 2023-01-17 [9f43099](https://github.com/silverstripe/recipe-ccl/commit/9f430997893405cb657f63e765470fa0cce662da) PHP Support in CMS5 (#7) (Sabina Talipova) - -- cwp/cwp-core (2.12.0 -> 3.0.0) - - 2023-01-17 [0e416b0](https://github.com/silverstripe/cwp-core/commit/0e416b001ac8d047c2242ef7589b6dbb6d550568) PHP Support in CMS5 (#114) (Sabina Talipova) - -- silverstripe/auditor (2.6.0 -> 3.0.0) - - 2023-01-17 [e5162c8](https://github.com/silverstripe/silverstripe-auditor/commit/e5162c86be7156cb1bd966cf076a9dcaf6429a96) PHP Support in CMS5 (#47) (Sabina Talipova) - -- silverstripe/environmentcheck (2.7.0 -> 3.0.0) - - 2022-12-18 [d038843](https://github.com/silverstripe/silverstripe-environmentcheck/commit/d03884338bf26fe2e021a2d5328e52900ea1eacd) PHP Support in CMS5 (#82) (Sabina Talipova) - -- silverstripe/hybridsessions (2.7.0 -> 3.0.0) - - 2022-12-12 [495ebfb](https://github.com/silverstripe/silverstripe-hybridsessions/commit/495ebfb45cf71b14307987f8164534b5fa29b80f) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/registry (2.6.0 -> 3.0.0) - - 2022-08-04 [212ad7d](https://github.com/silverstripe/silverstripe-registry/commit/212ad7d5d75c6eba12bc199d655cfa46d6780d69) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/totp-authenticator (4.6.0 -> 5.0.0) - - 2023-03-08 [0973c8c](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/0973c8c829ceffdf06eac1a207eeb0aa8b6badff) Require spomky-labs/otphp ^11.1 (Steve Boyd) - - 2023-01-30 [2518a69](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/2518a6978bdf62d38e80610ce4e9bbbdc78d3ec7) Upgrade frontend build stack (#109) (Guy Sartorelli) - - 2023-01-17 [113f966](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/113f96614405256283378c7a7065afe013de6ac8) PHP Support in CMS5 (#107) (Sabina Talipova) - -- silverstripe/mfa (4.8.0 -> 5.0.0) - - 2023-01-30 [9859c77](https://github.com/silverstripe/silverstripe-mfa/commit/9859c775a8c49d0a247c16fb9a057f203708ad05) Remove silverstripe/security-extensions dependency (Guy Sartorelli) - - 2023-01-30 [a86914c](https://github.com/silverstripe/silverstripe-mfa/commit/a86914cef92de2ef38bebe7f3e531233002aadc0) Upgrade frontend build stack (#481) (Guy Sartorelli) - - 2022-12-13 [99b454b](https://github.com/silverstripe/silverstripe-mfa/commit/99b454bdb9363ccdc3131c3128d7766ec910cb0a) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/crontask (2.6.0 -> 3.0.0) - - 2022-12-18 [463023e](https://github.com/silverstripe/silverstripe-crontask/commit/463023edafd14128904137ebef84e9cc36104bf5) PHP Support in CMS5 (#72) (Sabina Talipova) - -- silverstripe/gridfieldqueuedexport (2.8.0 -> 3.0.0) - - 2023-01-31 [65963b5](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/65963b5ac327d55d9716d8a0ec8b7252c61e75e2) Upgrade frontend build stack (#71) (Guy Sartorelli) - - 2022-12-18 [7cd8e1d](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/7cd8e1d465dd0822c28c6fda03cc59033854ec84) PHP Support in CMS5 (#69) (Sabina Talipova) - -- silverstripe/ldap (1.6.0 -> 2.0.0) - - 2022-12-12 [5b77ab8](https://github.com/silverstripe/silverstripe-ldap/commit/5b77ab8e03b9fb1272a1bf973a4efd3e59f08b41) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/textextraction (3.5.0 -> 4.0.0) - - 2022-12-13 [862fb81](https://github.com/silverstripe/silverstripe-textextraction/commit/862fb811bc97b7896bfcf7153c632eef5df057b5) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/realme (4.4.0 -> 5.0.0) - - 2023-01-31 [aae6510](https://github.com/silverstripe/silverstripe-realme/commit/aae6510af0e6f4dc575ec9f0fde40fff8edd71e2) Upgrade frontend build stack (#94) (Guy Sartorelli) - - 2022-12-18 [3fd94ed](https://github.com/silverstripe/silverstripe-realme/commit/3fd94ed75b27ee0e51aeedea5ddb6bb646d2ac11) PHP Support in CMS5 (#92) (Sabina Talipova) - -- silverstripe/ckan-registry (1.7.0 -> 2.0.0) - - 2023-01-29 [5b2ded4](https://github.com/silverstripe/silverstripe-ckan-registry/commit/5b2ded4f7b6716142613d75b07bd86a1f9b4cde2) Upgrade frontend build stack (#281) (Guy Sartorelli) - - 2022-12-09 [1d70aa5](https://github.com/silverstripe/silverstripe-ckan-registry/commit/1d70aa5697971cec74d60de6b9f1ea5a4404071e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/webauthn-authenticator (4.7.0 -> 5.0.0) - - 2023-01-30 [1e8cfb3](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/1e8cfb31e6d7ba30aa2b3ac0ab46a4912a64d76e) Upgrade frontend build stack (#126) (Guy Sartorelli) - - 2022-12-13 [33d4507](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/33d45072f592cb7789774c88e270f964e58a4ce6) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/subsites (2.8.0 -> 3.0.0) - - 2023-01-24 [47e293b](https://github.com/silverstripe/silverstripe-subsites/commit/47e293bdeb4c475e3d51fc57b2b625e0f85570f3) Upgrade frontend build stack (Guy Sartorelli) - - 2023-01-10 [a67b7ef](https://github.com/silverstripe/silverstripe-subsites/commit/a67b7ef45f54f92a035ef7274d9dfca93a7b424c) PHP Support in CMS5 (#497) (Sabina Talipova) - -- silverstripe/lumberjack (2.3.0 -> 3.0.0) - - 2023-01-31 [7a953b0](https://github.com/silverstripe/silverstripe-lumberjack/commit/7a953b0ac4ef5808204bddef8a73e806f169d916) Upgrade frontend build stack (#117) (Guy Sartorelli) - - 2022-12-18 [e238865](https://github.com/silverstripe/silverstripe-lumberjack/commit/e238865074dfaa50b9f310bc26aa84eb19de54fe) PHP Support in CMS5 (#114) (Sabina Talipova) - -- silverstripe/staticpublishqueue (5.3.0 -> 6.0.0) - - 2022-12-18 [5432813](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/5432813d961c077f3eee6c90e63a102df8e097e8) PHP Support in CMS5 (#157) (Sabina Talipova) - -- cwp/starter-theme (3.3.0 -> 4.0.0) - - 2022-12-18 [a12e58a](https://github.com/silverstripe/cwp-starter-theme/commit/a12e58a9e7b851eb0545eaaab77c3a2446618361) PHP Support in CMS5 (#216) (Sabina Talipova) - -- cwp/agency-extensions (2.8.0 -> 3.0.0) - - 2023-01-31 [8e40f56](https://github.com/silverstripe/cwp-agencyextensions/commit/8e40f5621a7356bdc946cc29d655b5c025161b11) Upgrade frontend build stack (#82) (Guy Sartorelli) - - 2023-01-17 [3d1ae3d](https://github.com/silverstripe/cwp-agencyextensions/commit/3d1ae3d3080f26c73cc847813ec0275960e5c83e) PHP Support in CMS5 (#81) (Sabina Talipova) - -- cwp/watea-theme (3.2.0 -> 4.0.0) - - 2022-12-18 [0b71677](https://github.com/silverstripe/cwp-watea-theme/commit/0b71677b8ef1288429048e2cc0611c0247069c2a) PHP Support in CMS5 (#159) (Sabina Talipova) - -- cwp/cwp (2.11.0 -> 3.0.0) - - 2023-01-17 [ac2a374](https://github.com/silverstripe/cwp/commit/ac2a374ef0e1eb92ae932c41b18f79292ba8c48c) PHP Support in CMS5 (#317) (Sabina Talipova) - -- dnadesign/silverstripe-elemental-userforms (3.3.0 -> 4.0.0) - - 2022-12-09 [98ebc6f](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/98ebc6f3b135d30c4a5cc411af814e02b46e6427) PHP Support in CMS5 (Sabina Talipova) - -- symbiote/silverstripe-multivaluefield (5.4.0 -> 6.0.0) - - 2023-01-31 [95b8cea](https://github.com/symbiote/silverstripe-multivaluefield/commit/95b8ceadddef2a22a2fa903761bba6df22b20575) Upgrade frontend build stack (#88) (Guy Sartorelli) - - 2022-12-18 [ab0bf06](https://github.com/symbiote/silverstripe-multivaluefield/commit/ab0bf06ba3ea222cc34cda82afaf381558c0b97c) PHP Support in CMS5 (#86) (Sabina Talipova) - -- symbiote/silverstripe-gridfieldextensions (3.6.0 -> 4.0.0) - - 2022-08-10 [d0c0cc0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/d0c0cc08f0d6a337db7b033063694cf10662c769) Update dependencies for CMS 5 (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0) - - 2023-01-18 [dfcc4ce](https://github.com/colymba/GridFieldBulkEditingTools/commit/dfcc4ce48293cb83fbcfb92231ed2091c5b624c9) Upgrade frontend build stack (Guy Sartorelli) - - 2022-12-18 [1ec807c](https://github.com/colymba/GridFieldBulkEditingTools/commit/1ec807ccbe4371110c2b694ce99cc06ddd1382c8) PHP Support in CMS5 (#228) (Sabina Talipova) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0) - - 2023-01-26 [e85e5b8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e85e5b82daf904374628d87fbc9a15c319acf435) Upgrade frontend build stack (Guy Sartorelli) - - 2023-01-18 [0d9fc05](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0d9fc0593b56d0e319028885ce1475b7269c6acd) Upgrade dependencies for CMS 5 compatibility (Maxime Rainville) - - 2020-12-14 [f31e2c0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f31e2c0e82b094b65218e8b4445f21dd46d322e4) Bump ini from 1.3.4 to 1.3.7 (#661) (dependabot[bot]) - - 2020-09-04 [da92793](https://github.com/tractorcow-farm/silverstripe-fluent/commit/da927936e644894235b681feb8cb303222dbcece) Bump node-sass from 4.6.0 to 4.14.1 (dependabot[bot]) - - 2020-09-04 [6371f64](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6371f643708d5bc58ee6798325bbb5749a4bd062) Bump is-my-json-valid from 2.16.1 to 2.20.5 (dependabot[bot]) - - 2020-09-04 [7e51d10](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7e51d10b0e4cfeec8ede8d60b02067a70fe4de4d) Bump lodash.mergewith from 4.6.0 to 4.6.2 (dependabot[bot]) - - 2020-07-30 [4588efd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4588efdaf5ecc773745f9f90c326c0431ed5de09) Bump elliptic from 6.4.0 to 6.5.3 (dependabot[bot]) - - 2020-04-30 [5906b6c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5906b6c66f8ca499688db3b114f39b6be33e4080) Bump jQuery from 3.2.1 to 3.5.0 (dependabot[bot]) - -- silverstripe/dynamodb (4.1.0 -> 5.0.0) - - 2023-02-12 [1f8e3b4](https://github.com/silverstripe/silverstripe-dynamodb/commit/1f8e3b4d490654a08800b27cbbb4b980d75471be) Upgrade dependencies for CMS 5 compatability (Guy Sartorelli) - -### Documentation - -- silverstripe/installer (4.13.0 -> 5.0.0) - - 2023-04-19 [a5e2f36](https://github.com/silverstripe/silverstripe-installer/commit/a5e2f36ab88dded66702e27286e83288e2cb2273) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/assets (1.13.0 -> 2.0.0) - - 2023-04-19 [be8161b](https://github.com/silverstripe/silverstripe-assets/commit/be8161b3436880bcdeebb97961c349c22124f2a9) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/config (1.6.0 -> 2.0.0) - - 2023-04-19 [5b9fb93](https://github.com/silverstripe/silverstripe-config/commit/5b9fb93a8300450bc93e36511ed2249adb0b5d53) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/framework (4.13.0 -> 5.0.0) - - 2023-04-19 [9a6414a84](https://github.com/silverstripe/silverstripe-framework/commit/9a6414a840f24c4d8a8bcbb841affb28938ae989) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/mimevalidator (2.5.0 -> 3.0.0) - - 2023-04-19 [a63f0d0](https://github.com/silverstripe/silverstripe-mimevalidator/commit/a63f0d06f6751fc7b39cebbf626e156520e3ba40) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/admin (1.13.0 -> 2.0.0) - - 2023-04-19 [1efa5248](https://github.com/silverstripe/silverstripe-admin/commit/1efa52486f0219b33b744d012399759ead041da8) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0 -> 2.0.0) - - 2023-04-19 [210ce7c6](https://github.com/silverstripe/silverstripe-asset-admin/commit/210ce7c62fa3b83f0682074afcba488383dcc0b0) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/campaign-admin (1.13.0 -> 2.0.0) - - 2023-04-19 [1e15d76](https://github.com/silverstripe/silverstripe-campaign-admin/commit/1e15d76f3f67c95f65bf5e9459f52eb5ff48e4fe) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/versioned-admin (1.13.0 -> 2.0.0) - - 2023-04-19 [8f588cb](https://github.com/silverstripe/silverstripe-versioned-admin/commit/8f588cba53de5f30bc6d04787f957c61799044ed) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/cms (4.13.0 -> 5.0.0) - - 2023-04-19 [cfc48fad](https://github.com/silverstripe/silverstripe-cms/commit/cfc48fad0a002faff4f10ed1b90ebdbace98d359) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/errorpage (1.13.0 -> 2.0.0) - - 2023-04-19 [d72193f](https://github.com/silverstripe/silverstripe-errorpage/commit/d72193f379d1d45ecd0a3e64649e124581bbc0b6) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/reports (4.13.0 -> 5.0.0) - - 2023-04-19 [53a2bcc9](https://github.com/silverstripe/silverstripe-reports/commit/53a2bcc998f19fe1b3fee66fb2a16549f590109c) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/siteconfig (4.13.0 -> 5.0.0) - - 2023-04-19 [c2be6ee3](https://github.com/silverstripe/silverstripe-siteconfig/commit/c2be6ee3b3682db8cc3b8b6fb357238b80e8c912) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/versioned (1.13.0 -> 2.0.0) - - 2023-04-19 [0370ab3](https://github.com/silverstripe/silverstripe-versioned/commit/0370ab37d614cc395d514c69c16793b66f071fd8) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/graphql (4.3.0 -> 5.0.0) - - 2023-04-19 [e4a2cc0](https://github.com/silverstripe/silverstripe-graphql/commit/e4a2cc083ed84f593b608614ac58cb426c1f9f05) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/session-manager (1.5.0 -> 2.0.0) - - 2023-04-19 [a9dac8d](https://github.com/silverstripe/silverstripe-session-manager/commit/a9dac8de4c9ccfeaca0c4937e2689129a027224f) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/login-forms (4.9.0 -> 5.0.0) - - 2023-04-19 [3dc041d](https://github.com/silverstripe/silverstripe-login-forms/commit/3dc041d64d2f8954ef9f04fac5340f4d140245e2) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-authoring-tools (1.13.0 -> 2.0.0) - - 2023-04-19 [f9d3f82](https://github.com/silverstripe/recipe-authoring-tools/commit/f9d3f8226069c1cfb455f19c6232d48cdbd6e24d) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/documentconverter (2.5.0 -> 3.0.0) - - 2023-04-19 [91c243e](https://github.com/silverstripe/silverstripe-documentconverter/commit/91c243e7669797d2827ad9ae3f5b438e91ec2d8b) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/iframe (2.4.0 -> 3.0.0) - - 2023-04-19 [29211f5](https://github.com/silverstripe/silverstripe-iframe/commit/29211f58b8e584af236c39b3534bf59ea9dba517) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/tagfield (2.11.0 -> 3.0.0) - - 2023-04-19 [242f6bb](https://github.com/silverstripe/silverstripe-tagfield/commit/242f6bbb57158792887d0b25ed0b4764cfb3485d) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/taxonomy (2.5.0 -> 3.0.0) - - 2023-04-19 [adb43f1](https://github.com/silverstripe/silverstripe-taxonomy/commit/adb43f196985f8123e75218be85444d5caf2c495) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-blog (1.13.0 -> 2.0.0) - - 2023-04-19 [7bdd983](https://github.com/silverstripe/recipe-blog/commit/7bdd983464a252cc4306936101a77c41a6f40a35) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/blog (3.12.0 -> 4.0.0) - - 2023-04-19 [05ed7e3](https://github.com/silverstripe/silverstripe-blog/commit/05ed7e3be7bac9f3f30c5991fcf1c3b04045b37e) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/widgets (2.4.0 -> 3.0.0) - - 2023-04-19 [7e6ee59](https://github.com/silverstripe/silverstripe-widgets/commit/7e6ee59822bd689b3123e242fd49136821e8963e) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/content-widget (2.4.0 -> 3.0.0) - - 2023-04-19 [66bfe73](https://github.com/silverstripe/silverstripe-content-widget/commit/66bfe73eefe0373f5e4a4e13bb653634b01f1e34) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/spamprotection (3.4.0 -> 4.0.0) - - 2023-04-19 [00869b6](https://github.com/silverstripe/silverstripe-spamprotection/commit/00869b67554d6afb279d2e14239a2189348a806d) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/comments (3.10.0 -> 4.0.0) - - 2023-04-19 [1a07811](https://github.com/silverstripe/silverstripe-comments/commit/1a078113103efc85a6aa7921e34992e73ce76a41) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/comment-notifications (2.4.0 -> 3.0.0) - - 2023-04-19 [6263013](https://github.com/silverstripe/comment-notifications/commit/6263013582d049e9171fb0b08dab04048be4a5e4) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-collaboration (1.13.0 -> 2.0.0) - - 2023-04-19 [5c3423f](https://github.com/silverstripe/recipe-collaboration/commit/5c3423f1aac07e6c43a987dabc1f8df8209a93a0) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/contentreview (4.7.0 -> 5.0.0) - - 2023-04-19 [7a7e930](https://github.com/silverstripe/silverstripe-contentreview/commit/7a7e930d402c77e60942855578888c41819f4d62) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/sharedraftcontent (2.9.0 -> 3.0.0) - - 2023-04-19 [c042fcc](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/c042fcc5086592b8988628258e8eebf7a609ce61) Update README.md for CMS 5 (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (5.9.0 -> 6.0.0) - - 2023-04-19 [697b28d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/697b28d3209582fa546da7f503360f7edba4cf71) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-form-building (1.13.0 -> 2.0.0) - - 2023-04-19 [d4ee441](https://github.com/silverstripe/recipe-form-building/commit/d4ee441eef24cafc5a58719fef4b02b1e1ae4458) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/segment-field (2.8.0 -> 3.0.0) - - 2023-04-19 [5693c65](https://github.com/silverstripe/silverstripe-segment-field/commit/5693c65bec79fd069ace203097df800e0e17fb7c) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/userforms (5.15.0 -> 6.0.0) - - 2023-04-19 [c021ac1](https://github.com/silverstripe/silverstripe-userforms/commit/c021ac1bb617c1fa914267bd7beb6e9b7c84c64d) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-reporting-tools (1.13.0 -> 2.0.0) - - 2023-04-19 [1d3defb](https://github.com/silverstripe/recipe-reporting-tools/commit/1d3defb32ee21b806b06c144d437609712dde614) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/externallinks (2.4.0 -> 3.0.0) - - 2023-04-19 [bb4bee7](https://github.com/silverstripe/silverstripe-externallinks/commit/bb4bee791489ea73a6ce47cbdb36ef483f453b7e) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/securityreport (2.6.0 -> 3.0.0) - - 2023-04-19 [15d5398](https://github.com/silverstripe/silverstripe-securityreport/commit/15d53984eba488c208ebfdded73a366786fbd8cc) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/sitewidecontent-report (3.4.0 -> 4.0.0) - - 2023-04-19 [5e7a3d7](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/5e7a3d7f6a07e948cacfdba59701fa29f371c2f3) Update README.md for CMS 5 (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (2.7.0 -> 3.0.0) - - 2023-04-19 [35bd009](https://github.com/bringyourownideas/silverstripe-maintenance/commit/35bd0099c299799ec8a546eda1f4056d7056cd58) Update README.md for CMS 5 (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0) - - 2023-04-19 [7489f09](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/7489f095ce3c64abd2302b273b7b86823ef743a4) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-services (1.13.0 -> 2.0.0) - - 2023-04-19 [e1ad49c](https://github.com/silverstripe/recipe-services/commit/e1ad49ca3811a554791b27ffe245a694333c8eb2) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/restfulserver (2.6.0 -> 3.0.0) - - 2023-04-19 [39614ba](https://github.com/silverstripe/silverstripe-restfulserver/commit/39614ba6e189c7c9155a337c836dfe065e9d4589) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/versionfeed (2.4.0 -> 3.0.0) - - 2023-04-19 [a51c30f](https://github.com/silverstripe/silverstripe-versionfeed/commit/a51c30fb0fc727d389ae3661a9421a3dfc9f0bc5) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-content-blocks (2.13.0 -> 3.0.0) - - 2023-04-19 [e2c0891](https://github.com/silverstripe/recipe-content-blocks/commit/e2c0891da02df6746100c1c758557526a45581a8) Update README.md for CMS 5 (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (4.11.0 -> 5.0.0) - - 2023-04-19 [0670885](https://github.com/silverstripe/silverstripe-elemental/commit/06708851162651e8c32032afc23b08a2acf56eef) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/elemental-fileblock (2.5.0 -> 3.0.0) - - 2023-04-19 [e3aef36](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/e3aef3657ebe6ced301a3859258761508bb36135) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/elemental-bannerblock (2.7.0 -> 3.0.0) - - 2023-04-19 [174ac79](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/174ac799b11d3041a4fec2086d082d539fe628bb) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-solr-search (2.13.0 -> 3.0.0) - - 2023-04-19 [c8af273](https://github.com/silverstripe/recipe-solr-search/commit/c8af273b29cecceccf5e2fa5a9f8883a3f56e94c) Update README.md for CMS 5 (Guy Sartorelli) - -- cwp/cwp-search (1.8.0 -> 2.0.0) - - 2023-04-19 [e3f5bd2](https://github.com/silverstripe/cwp-search/commit/e3f5bd22963745e5283b149ad9d21aa9c35654f4) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/fulltextsearch (3.12.0 -> 4.0.0) - - 2023-04-19 [6245ec9](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/6245ec97f84af28e6524604a94106d42775a2733) Update README.md for CMS 5 (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (4.12.0 -> 5.0.0) - - 2023-04-19 [0d7ab04](https://github.com/symbiote/silverstripe-queuedjobs/commit/0d7ab049c5ce3a36904ff4c16fb1d3d6b439bfd5) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/recipe-ccl (2.13.0 -> 3.0.0) - - 2023-04-19 [3d9c07e](https://github.com/silverstripe/recipe-ccl/commit/3d9c07e6e376619b64826bd606fee55783abbeda) Update README.md for CMS 5 (Guy Sartorelli) - -- cwp/cwp-core (2.12.0 -> 3.0.0) - - 2023-04-19 [1e41ed2](https://github.com/silverstripe/cwp-core/commit/1e41ed262f26d132bff17652da2b313f6ecf1a20) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/auditor (2.6.0 -> 3.0.0) - - 2023-04-19 [f7c9b84](https://github.com/silverstripe/silverstripe-auditor/commit/f7c9b8408034f6258baa464dccacb54bb04f1044) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/environmentcheck (2.7.0 -> 3.0.0) - - 2023-04-19 [b459172](https://github.com/silverstripe/silverstripe-environmentcheck/commit/b459172b8b6ccf2754101d70541ab767d94ece10) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/hybridsessions (2.7.0 -> 3.0.0) - - 2023-04-19 [ad602b2](https://github.com/silverstripe/silverstripe-hybridsessions/commit/ad602b292359522782fb947a72ef277d1a0aac00) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/developer-docs (4.13.0 -> 5.0.0) - - 2023-05-03 [e9b50eaa](https://github.com/silverstripe/developer-docs/commit/e9b50eaa556cf33f61b6ae4fd55b58856e82a7ad) Tweak changelog language (Maxime Rainville) - - 2023-05-03 [cc12919a](https://github.com/silverstripe/developer-docs/commit/cc12919a14cc690a39155eb11d818309a98cc903) Update changelog API changes to include fqns (Sabina Talipova) - - 2023-05-02 [a612bc13](https://github.com/silverstripe/developer-docs/commit/a612bc13b99a3ddf4beba82a13d5838e71bd77d3) Tweak from peer review feedback (Maxime Rainville) - - 2023-05-02 [aad933cb](https://github.com/silverstripe/developer-docs/commit/aad933cb1b1a9fbf906f5f7c72a8cdfe07b2e691) Hide Full API change and commit list in accordions (Maxime Rainville) - - 2023-05-02 [721672d1](https://github.com/silverstripe/developer-docs/commit/721672d15c900513bc9a9e9f6718f044d1eb617b) Final update for CMS5.0 changelog (Maxime Rainville) - - 2023-04-26 [91551914](https://github.com/silverstripe/developer-docs/commit/91551914320c698e8028d1257ef08bbae3f7f329) Update changelog API changes to include reasons (Guy Sartorelli) - - 2023-04-24 [479af42b](https://github.com/silverstripe/developer-docs/commit/479af42bedd2a938b21184df0160421e59f2acfe) Be more explicit about web vs project roots (#251) (Guy Sartorelli) - - 2023-04-18 [544871a3](https://github.com/silverstripe/developer-docs/commit/544871a31d353f2161ca4ee582fccf89166dbc92) Update react injector GraphQL example for CMS 5 (Guy Sartorelli) - - 2023-04-17 [e4f7bc7b](https://github.com/silverstripe/developer-docs/commit/e4f7bc7bac515d6a5368752efb844862ad92548b) Update Controllers section (#206) (Guy Sartorelli) - - 2023-04-17 [ced97592](https://github.com/silverstripe/developer-docs/commit/ced97592b441bbe4cc47c8f9f1dd88e6162ad9f0) Update templates section (#198) (Guy Sartorelli) - - 2023-04-17 [b77a59a7](https://github.com/silverstripe/developer-docs/commit/b77a59a7c3a0dae8afcb7fa6caf1a9647509f18c) Update Getting Started and ORM sections (#189) (Guy Sartorelli) - - 2023-04-12 [bf375d35](https://github.com/silverstripe/developer-docs/commit/bf375d3586452fc904e987dcdad8f883ba30b72a) Review documentation for common errors (#188) (Guy Sartorelli) - - 2023-04-12 [83dd34c5](https://github.com/silverstripe/developer-docs/commit/83dd34c582ba0ebfe8ee0046f4bf5d9f98c759f0) Clearly document the replacement for $ThemeDir (Guy Sartorelli) - - 2023-04-09 [1b53ae29](https://github.com/silverstripe/developer-docs/commit/1b53ae2965ea268e302b3640bc7b00c584ba29e3) Remove former core committers (Maxime Rainville) - - 2023-03-26 [77ce46df](https://github.com/silverstripe/developer-docs/commit/77ce46df71770e1fe2c883c4268cfaa6d3e63f7d) Update history viewer GraphQL examples for CMS 5 (Guy Sartorelli) - - 2023-03-21 [d00ef6bd](https://github.com/silverstripe/developer-docs/commit/d00ef6bd5a7db723d9944045a3f7263fbbcec0d0) Handle email send exceptions (Steve Boyd) - - 2023-03-20 [9f8e25e2](https://github.com/silverstripe/developer-docs/commit/9f8e25e27b5563967a390736c8d2125d7847abeb) Remove references to PDO (Steve Boyd) - - 2023-03-13 [682e8de5](https://github.com/silverstripe/developer-docs/commit/682e8de5823ad1432312ed3ab96b8e45216ae146) Document setting summary by default (#93) (Guy Sartorelli) - - 2023-03-13 [f0f83591](https://github.com/silverstripe/developer-docs/commit/f0f83591ab201564c349c05f99f0b59da9898d02) Document changes to the updateRelativeLink (#75) (Guy Sartorelli) - - 2023-03-13 [c58bac41](https://github.com/silverstripe/developer-docs/commit/c58bac4131eea03177a40e6f64d838de38c7af23) Fix preview docs link and info (#99) (Guy Sartorelli) - - 2023-03-08 [5ce64db4](https://github.com/silverstripe/developer-docs/commit/5ce64db4891edfb8b8684e578703f6009b6eb095) Add fluent changes and upgrade guides (#176) (Guy Sartorelli) - - 2023-02-27 [367a4b09](https://github.com/silverstripe/developer-docs/commit/367a4b094d98a2c70f6efe6bd734b5defa6a0042) Change react-router constraint in 5.0 changelog (#168) (Guy Sartorelli) - - 2023-02-24 [915e19f8](https://github.com/silverstripe/developer-docs/commit/915e19f8ef303f75c76a9f0df9d874f0704940ef) Document some behaviours that aren't supported anymore (Guy Sartorelli) - - 2023-02-24 [58480822](https://github.com/silverstripe/developer-docs/commit/58480822eba6fa5edd2ba09d3f107726388ceb09) Move templates to where it should be. (Guy Sartorelli) - - 2023-02-24 [9fee07d8](https://github.com/silverstripe/developer-docs/commit/9fee07d83e7bbcd389cb2aa31b03f3411f9a5535) Remove 4.x alpha changelogs (Guy Sartorelli) - - 2023-02-23 [32ca3d0e](https://github.com/silverstripe/developer-docs/commit/32ca3d0ea8fc50600553748be0834b39df72134c) Clarification for some removed deprecated class and methods in 5.0.0 and 5.0.0-beta1 (Sabina Talipova) - - 2023-02-21 [b9f820dd](https://github.com/silverstripe/developer-docs/commit/b9f820dd9afb551c0da3dc0cd3f9abf42c9db2f4) DBComposite dynamic data (Steve Boyd) - - 2023-02-16 [42aac1fe](https://github.com/silverstripe/developer-docs/commit/42aac1fe2af7cffdfcdaeb2431a3c641b51fd838) StaticPublishQueue is now opt-in (Steve Boyd) - - 2023-02-14 [1782bef5](https://github.com/silverstripe/developer-docs/commit/1782bef5cc99741f9c149460ebe3917265970167) Update docs for deprecations (#160) (Guy Sartorelli) - - 2023-02-09 [282c839d](https://github.com/silverstripe/developer-docs/commit/282c839d09d3de5c88886c489b8c098ee5d48d61) Rearrange 5.0.0-beta1 changelog (Steve Boyd) - - 2023-02-09 [4cfe9d1c](https://github.com/silverstripe/developer-docs/commit/4cfe9d1c2fe07528e3fd837eae6e7fc8ed1496db) Update 5.0.0-beta1 changelog (Steve Boyd) - - 2023-02-08 [f9fed249](https://github.com/silverstripe/developer-docs/commit/f9fed24913bd58a14597515e135d849e38e56dad) Last changes for the changelog before beta release (#154) (Guy Sartorelli) - - 2023-02-08 [8b5ac996](https://github.com/silverstripe/developer-docs/commit/8b5ac9964baece9263b0dc3c9dfb6ee896d4d853) 5.0.0 changelog removed and changed API (Steve Boyd) - - 2023-02-01 [1c427090](https://github.com/silverstripe/developer-docs/commit/1c427090caf0bae7179b214f37fe5418994d5c73) Add supported module (Maxime Rainville) - - 2023-01-30 [a2e18b5a](https://github.com/silverstripe/developer-docs/commit/a2e18b5adbd49bfec075b28a8777c083b9ddf1e0) New limit behaviour (Maxime Rainville) - - 2023-01-30 [a9a435ea](https://github.com/silverstripe/developer-docs/commit/a9a435ea93d5de898d073b8d5cb175a9bdabc7de) Document features from security-extensions (Guy Sartorelli) - - 2023-01-30 [ac19d46f](https://github.com/silverstripe/developer-docs/commit/ac19d46f094db6f37863cf3995f62fc69277a4d5) Document changes required to upgrade build stack (#137) (Guy Sartorelli) - - 2023-01-26 [23e2e6a8](https://github.com/silverstripe/developer-docs/commit/23e2e6a80f6663fb3d5ab1e6e1089f09781fe534) Update docs to include new FormField validation hook (Loz Calver) - - 2023-01-26 [6bef21e2](https://github.com/silverstripe/developer-docs/commit/6bef21e244c9703fd21a3171e88eb806da73fb46) Update Email docs (Steve Boyd) - - 2023-01-20 [77c8932b](https://github.com/silverstripe/developer-docs/commit/77c8932bbdd9b8a6f421d55958d45585244d0cca) Define what can be merge post beta (Maxime Rainville) - - 2023-01-19 [67aa583d](https://github.com/silverstripe/developer-docs/commit/67aa583db1c8e8b7d0d23751a9be32e2fa4261a1) parameter order (Steve Boyd) - - 2023-01-17 [9482f5ed](https://github.com/silverstripe/developer-docs/commit/9482f5ed9a21c4066ce77bde59b074c7eeeeccc6) Document changes to trailing slash in URLs (Guy Sartorelli) - - 2023-01-17 [9270e025](https://github.com/silverstripe/developer-docs/commit/9270e0252519893fe0ec69b67cdb28232160f4de) Removed HTMLValue shorthand (Steve Boyd) - - 2023-01-17 [05178763](https://github.com/silverstripe/developer-docs/commit/051787638d15f437088ce9c07b5329ebd90d20db) Mark the removal of subitem_class config (Maxime Rainville) - - 2023-01-16 [035c139d](https://github.com/silverstripe/developer-docs/commit/035c139d3774b615a83a4b34af47fd738187c593) masterminds/html5 (Steve Boyd) - - 2023-01-16 [4f1ad36f](https://github.com/silverstripe/developer-docs/commit/4f1ad36fdcb0230264533b0bfdbdf6d78d479c2e) List which classes had ReturnTypeWillChange annotation removed (Maxime Rainville) - - 2022-12-20 [995b414e](https://github.com/silverstripe/developer-docs/commit/995b414eb7dc66869aa95b2f3eb29853bb6d6f93) Update changelog with breaking JS changes (Guy Sartorelli) - - 2022-12-20 [2252967e](https://github.com/silverstripe/developer-docs/commit/2252967e7e3baea4b4fb3e1d02a396ace7c8c29a) Update JavaScript docs (Guy Sartorelli) - - 2022-12-20 [deb228b3](https://github.com/silverstripe/developer-docs/commit/deb228b39341bed54d8ddba0f650b02cc78f7dfb) Update entwine docs to match current behaviour (Guy Sartorelli) - - 2022-12-20 [3d26b219](https://github.com/silverstripe/developer-docs/commit/3d26b219c3d3226106cf4bcb364374bbce523204) Add entwine docs from readme (Guy Sartorelli) - - 2022-12-05 [c0599764](https://github.com/silverstripe/developer-docs/commit/c0599764f126e3dbc1ff493544358efc01eed613) DataList::sort() and orderBy() (Steve Boyd) - - 2022-11-21 [ef798631](https://github.com/silverstripe/developer-docs/commit/ef798631264cd9665d2cecf12352a58736752809) Document adding TopPage extensions by default (#94) (Guy Sartorelli) - - 2022-10-18 [a44164ab](https://github.com/silverstripe/developer-docs/commit/a44164ab21936798a8c496bb544c95f45a65d25e) Updates for symfony/mailer (Steve Boyd) - - 2022-10-18 [aeded78b](https://github.com/silverstripe/developer-docs/commit/aeded78b08fe08e524e22ef29c31457e85ac1811) Document controller method signatures (Steve Boyd) - - 2022-09-27 [6d057eb6](https://github.com/silverstripe/developer-docs/commit/6d057eb6380a991bbc0e2d0e117acfe5c0f6cb1f) Document upgrading to TinyMCE 6 (Guy Sartorelli) - - 2022-09-19 [11123b44](https://github.com/silverstripe/developer-docs/commit/11123b44e02c61dce1cc1f81c2f18a224e405da2) Document SecurityAdmin extending ModelAdmin (Steve Boyd) - - 2022-09-15 [ebe0e9dc](https://github.com/silverstripe/developer-docs/commit/ebe0e9dcc6bf6ff934acfaf7f19c97a34c5eca06) Document breaking changes to template syntax (#81) (Guy Sartorelli) - - 2022-09-15 [4363fbfa](https://github.com/silverstripe/developer-docs/commit/4363fbfa1fdfd003adf1cfc4352e813cc210bf22) Changelog for 5.0.0-alpha1 (Steve Boyd) - - 2022-09-14 [e4b01832](https://github.com/silverstripe/developer-docs/commit/e4b018321a3ed04176cd4fce896f9b30b41d9c22) Fix links from upgrade docs (#66) (Guy Sartorelli) - - 2022-09-14 [b58b556d](https://github.com/silverstripe/developer-docs/commit/b58b556dc38fb32c8a1a842ff62c927a73f5093f) Document making models previewable via extensions (Guy Sartorelli) - - 2022-09-14 [db79fc5b](https://github.com/silverstripe/developer-docs/commit/db79fc5b0a84ca2105aa3a3bb0e125c5d77b020c) Move upgrade docs into changelog for 5.0.0 (#84) (Guy Sartorelli) - - 2022-09-07 [1f87c415](https://github.com/silverstripe/developer-docs/commit/1f87c415139ff46c16d921ea3b862655a5e963c5) Document symfony 6 dependency changes (Steve Boyd) - - 2022-09-01 [09472a53](https://github.com/silverstripe/developer-docs/commit/09472a532f8f31b7d8d38ecdadd698216ed29216) Document removal of HistoryControllerFactory (#71) (Guy Sartorelli) - - 2022-09-01 [b497e270](https://github.com/silverstripe/developer-docs/commit/b497e27061363519d734317196d9ead35ae86c9f) Document reverting a change to table names (#78) (Guy Sartorelli) - - 2022-08-31 [a1d8a3fe](https://github.com/silverstripe/developer-docs/commit/a1d8a3fe00bedf659b393301e9a1a0032775b493) Document changes in various rescued master commits (#70) (Guy Sartorelli) - - 2022-08-10 [9ca7cee9](https://github.com/silverstripe/developer-docs/commit/9ca7cee979e6335bbd238357204c9d323b75cb33) Document removing deprecated support for PHPUnit 5.7 (Guy Sartorelli) - - 2022-08-08 [e933bcef](https://github.com/silverstripe/developer-docs/commit/e933bcef102f7652b7b23f301e98a866d80fcff5) Document breaking changes for updating resources dir (#58) (Guy Sartorelli) - - 2022-08-07 [c9cd71e0](https://github.com/silverstripe/developer-docs/commit/c9cd71e073b1883f3575b3694149c77987013e48) Document SilverStripeNavigator for front-end use (Guy Sartorelli) - - 2022-08-07 [168a8c7f](https://github.com/silverstripe/developer-docs/commit/168a8c7fff09ed238a022e15bc21b8ac83b5f284) Document breaking changes from migrating SilverStripeNavigator (Guy Sartorelli) - - 2022-08-05 [79dcb6ae](https://github.com/silverstripe/developer-docs/commit/79dcb6aedbd243ffd288e6f3fbfe40cd05818fe8) Remove references to GraphQL v3 (Guy Sartorelli) - - 2022-07-21 [c8dc5b9c](https://github.com/silverstripe/developer-docs/commit/c8dc5b9cfba056c1cc66eac164fa8b21a4e5c3d3) Update references to CMS 3 and 4 (Guy Sartorelli) - -- silverstripe/registry (2.6.0 -> 3.0.0) - - 2023-04-19 [5a5412d](https://github.com/silverstripe/silverstripe-registry/commit/5a5412d1a116d8336fade331fe1a404e68615b71) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/totp-authenticator (4.6.0 -> 5.0.0) - - 2023-04-19 [2f57d0f](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/2f57d0f717a36bf2ad2a811f7b9514d478b5cf8a) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/mfa (4.8.0 -> 5.0.0) - - 2023-04-19 [17f2774](https://github.com/silverstripe/silverstripe-mfa/commit/17f2774ec7d2b7aa4356d00a70f61ced85325b42) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (2.8.0 -> 3.0.0) - - 2023-04-19 [e398882](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/e39888221b6e88f38966fc2a9bdee532f34659d7) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/ldap (1.6.0 -> 2.0.0) - - 2023-04-19 [800ee3d](https://github.com/silverstripe/silverstripe-ldap/commit/800ee3dd0add33b4d68b7aaca167cb3ccc81a1cb) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/textextraction (3.5.0 -> 4.0.0) - - 2023-04-19 [0f3cebc](https://github.com/silverstripe/silverstripe-textextraction/commit/0f3cebc94dd2e3897d23d56dd8a1067300bdbe79) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/realme (4.4.0 -> 5.0.0) - - 2023-04-19 [964386d](https://github.com/silverstripe/silverstripe-realme/commit/964386daecba32194cbc26becf4f86f002dec94d) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/ckan-registry (1.7.0 -> 2.0.0) - - 2023-04-19 [7642587](https://github.com/silverstripe/silverstripe-ckan-registry/commit/764258705f66bc7dfed8a2c218dde49a25ec03e4) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/webauthn-authenticator (4.7.0 -> 5.0.0) - - 2023-04-19 [e759886](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/e7598868de8d1eaac45faebb68a1c75e3bedc4c4) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/subsites (2.8.0 -> 3.0.0) - - 2023-04-19 [5189a26](https://github.com/silverstripe/silverstripe-subsites/commit/5189a26a3987ecf2c66384678931b754ccbce7c0) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/lumberjack (2.3.0 -> 3.0.0) - - 2023-04-19 [3248baa](https://github.com/silverstripe/silverstripe-lumberjack/commit/3248baaa8775b474f1aef3e8d409b0921dd73f98) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/staticpublishqueue (5.3.0 -> 6.0.0) - - 2023-04-19 [402596a](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/402596a336c477fa864b2ee7682716c5f42f88f8) Update README.md for CMS 5 (Guy Sartorelli) - -- cwp/starter-theme (3.3.0 -> 4.0.0) - - 2023-04-19 [d2dee3d](https://github.com/silverstripe/cwp-starter-theme/commit/d2dee3de3b0880d2bda3c3c65ccde4edcd97c2e4) Update README.md for CMS 5 (Guy Sartorelli) - -- cwp/agency-extensions (2.8.0 -> 3.0.0) - - 2023-04-19 [c599c0c](https://github.com/silverstripe/cwp-agencyextensions/commit/c599c0c39ef1a7cee4ac4432eed3176662ab0867) Update README.md for CMS 5 (Guy Sartorelli) - -- cwp/watea-theme (3.2.0 -> 4.0.0) - - 2023-04-19 [d4cee11](https://github.com/silverstripe/cwp-watea-theme/commit/d4cee11b0ca7a713a63f12901d0d6356f85e3010) Update README.md for CMS 5 (Guy Sartorelli) - -- cwp/cwp (2.11.0 -> 3.0.0) - - 2023-04-19 [dc1dd10](https://github.com/silverstripe/cwp/commit/dc1dd1065f16e92c7e562798d84d66542316dc7e) Update README.md for CMS 5 (Guy Sartorelli) - -- dnadesign/silverstripe-elemental-userforms (3.3.0 -> 4.0.0) - - 2023-04-19 [5ff7177](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/5ff71772a7d25b8217e6dc2f1ca7e03dd3c286f3) Update README.md for CMS 5 (Guy Sartorelli) - -- symbiote/silverstripe-multivaluefield (5.4.0 -> 6.0.0) - - 2023-04-19 [fc7c4ae](https://github.com/symbiote/silverstripe-multivaluefield/commit/fc7c4ae40f8e8229ec3fc151f9d114f3fa3cff31) Update README.md for CMS 5 (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (3.6.0 -> 4.0.0) - - 2023-04-19 [4961634](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/4961634dced4a1cf03c89ea60eb69e8d17f42244) Update README.md for CMS 5 (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0) - - 2023-04-19 [f7f15e9](https://github.com/colymba/GridFieldBulkEditingTools/commit/f7f15e9903f11e1a8f00f31859b3561cdd89ae53) Update README.md for CMS 5 (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0) - - 2023-04-19 [e7dca32](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e7dca322b6d96f924791957bae10a9eefffc1c99) Update README.md for CMS 5 (Guy Sartorelli) - -### Other changes - -- silverstripe/framework (4.13.0 -> 5.0.0) - - 2023-02-22 [c82d11ef7](https://github.com/silverstripe/silverstripe-framework/commit/c82d11ef70b59daeabd386e16cf871bb25e5bb70) Add isFlushed() to Kernel interface (Chris Penny) - - 2023-02-22 [0633f2ed0](https://github.com/silverstripe/silverstripe-framework/commit/0633f2ed0d298985927805685be81bb6ae8d305e) Add kitchensink fields to formfield validation test (Loz Calver) - - 2022-09-01 [06b13e0fa](https://github.com/silverstripe/silverstripe-framework/commit/06b13e0fa621be58c7a9f43ffdc86c071d262fe4) Revert "Merge pull request #10450 from creative-commoners/pulls/5/rescue-master-generators" (#10483) (Guy Sartorelli) - - 2017-06-28 [81beddc16](https://github.com/silverstripe/silverstripe-framework/commit/81beddc161e7e1696b6f65b72df79617cd65dede) Add deprecated method to make CMS tests work (Sam Minnee) - - 2017-06-28 [9c7ecb1f7](https://github.com/silverstripe/silverstripe-framework/commit/9c7ecb1f798f56f9b485d7cbad6e0d57805e9801) Further work on Loz’ solution (Sam Minnee) - - 2017-06-28 [850482138](https://github.com/silverstripe/silverstripe-framework/commit/850482138b721690ddd6104a8e1cbcae5e0d1ed9) Proposed solution for caching template generator counts (Loz Calver) - - 2017-06-28 [749405170](https://github.com/silverstripe/silverstripe-framework/commit/749405170ccbcc4e8a36cd4c171a1d9991c6e5cb) Update MySQLDatabaseTest to work with new query iterators (Loz Calver) - - 2017-01-16 [2ead3746d](https://github.com/silverstripe/silverstripe-framework/commit/2ead3746d62de8df64c671a32762b52cc360710a) Replace Map_Iterator with a generator. (Sam Minnee) - -- silverstripe/cms (4.13.0 -> 5.0.0) - - 2023-01-29 [b02beba7](https://github.com/silverstripe/silverstripe-cms/commit/b02beba7babad15a66f9bc91b76872d8496783e6) Resolve a couple of behat issues (#2830) (Guy Sartorelli) - - 2022-11-21 [003f9ba7](https://github.com/silverstripe/silverstripe-cms/commit/003f9ba750212a73027e1b07b09fb9139571f78c) Revert "Merge branch '4' into 5" (Guy Sartorelli) - -- silverstripe/errorpage (1.13.0 -> 2.0.0) - - 2023-04-14 [4d42b16](https://github.com/silverstripe/silverstripe-errorpage/commit/4d42b164ff6271f0ec69c08ce8b676f750f35e53) Remove `$` from install command (Ed Wilde) - -- silverstripe/sharedraftcontent (2.9.0 -> 3.0.0) - - 2023-04-18 [144eb54](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/144eb54c799e775a4255cd6896ceb7065b1a07c9) Remove `$` from install command (Ed Wilde) - -- dnadesign/silverstripe-elemental (4.11.0 -> 5.0.0) - - 2023-03-06 [27f2622](https://github.com/silverstripe/silverstripe-elemental/commit/27f2622ca3bb2bb6b9684cabdedf4e1fdbd2bf5a) Prevent mapStateToProps re-rendering on formstate changes (Bernie Hamlin) - -- silverstripe/developer-docs (4.13.0 -> 5.0.0) - - 2023-02-08 [52afbd06](https://github.com/silverstripe/developer-docs/commit/52afbd06e99b65f98d6a6b1c794a95814def9c43) Last bit of feedback (Maxime Rainville) - - 2023-02-08 [d2b83aed](https://github.com/silverstripe/developer-docs/commit/d2b83aed81845b71381cbece0743387f28bfb278) Tweak spacing (Maxime Rainville) - - 2023-02-08 [1d6c051c](https://github.com/silverstripe/developer-docs/commit/1d6c051c59dd81223bb1ec9c56fc5f0739e82598) Replace references to "official support" with "commercial support" (Maxime Rainville) - - 2023-02-08 [2e2518fc](https://github.com/silverstripe/developer-docs/commit/2e2518fcc03e4fc441c4adf3875e8f59edc03759) Add a bigger explanation about composer/installer (Maxime Rainville) - - 2023-02-08 [2f5f3e49](https://github.com/silverstripe/developer-docs/commit/2f5f3e490a9b3c2b6124df961b80c6cc50413da3) Clarify expectation for testing of community supported module (Maxime Rainville) - - 2023-02-08 [79570c2a](https://github.com/silverstripe/developer-docs/commit/79570c2ab9665e69e8bea0280317c849e07ba8a6) Better last step for converting a module (Maxime Rainville) - - 2023-02-08 [1fa3b6b0](https://github.com/silverstripe/developer-docs/commit/1fa3b6b0801f8fed04b558d5aa3240cbca94e330) Remove failded builds that are now green. (Maxime Rainville) - - 2023-02-08 [283fb693](https://github.com/silverstripe/developer-docs/commit/283fb693ed64fa192b23d60d7b1e9984843e0b01) Link to contribution guideline. (Maxime Rainville) - - 2023-02-08 [e6f9da37](https://github.com/silverstripe/developer-docs/commit/e6f9da373e9a04752ec9ae5b73ae587462383830) Add missing backticks (Maxime Rainville) - - 2023-02-08 [428d5a41](https://github.com/silverstripe/developer-docs/commit/428d5a416bf045a99761bfaa3dc670f721a1a75a) Bring back line pointing the call for maintainers for some old TinyMCE plugin. (Maxime Rainville) - - 2023-02-08 [4ff1354a](https://github.com/silverstripe/developer-docs/commit/4ff1354abdd485292efe8648e82cdefbc9150341) Mark beta changelog as unreleased. (Maxime Rainville) - - 2023-02-07 [fa9fe88c](https://github.com/silverstripe/developer-docs/commit/fa9fe88ce44e92d10cd47457cc9d4f43459df0c4) Tweaks (Maxime Rainville) - - 2023-02-07 [6059447c](https://github.com/silverstripe/developer-docs/commit/6059447cc6b7da566959580976ed7b07ea70a70f) Clean up a bunch of class references (Maxime Rainville) - - 2023-02-07 [c4f1aa5a](https://github.com/silverstripe/developer-docs/commit/c4f1aa5af59243cfa0ec27f3e5bb0884899915b4) Apply feedback from peer review (Maxime Rainville) - - 2023-01-31 [84e48277](https://github.com/silverstripe/developer-docs/commit/84e48277008ba7a2224f15b69140cf263dab1a03) Apply suggestions from code review (Maxime Rainville) - - 2023-01-22 [c021f5b3](https://github.com/silverstripe/developer-docs/commit/c021f5b3d7451a659cbe3b72a6c9d6a0060b7ec9) Apply suggestions from code review (Maxime Rainville) - -- silverstripe/staticpublishqueue (5.3.0 -> 6.0.0) - - 2023-03-30 [2546677](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/25466779d93cdcc78efca62b827be54993a82006) Bugfix: Use copy() and unlink() instead of rename() (Chris Penny) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0) - - 2023-02-07 [b3e55b9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b3e55b97acf8f1996ed1b6bbad183917ba44f129) chore: remove redundant alias (Damian Mooyman) - - 2022-04-28 [37b5e16](https://github.com/tractorcow-farm/silverstripe-fluent/commit/37b5e16c2b294e822caeeab7bba5ced089ebaf44) Minor grammatical correction (Fred Condo) - - 2022-03-25 [bb46d9d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb46d9d2c50c31d8fc03b812129b0aa135ab033f) Lowering minimum PHP version to see if we can support it. (Mojmir Fendek) - - 2022-03-25 [bf37abb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bf37abbb7fcde233ce9dec387ecec0a970b97e31) Fixes. (Mojmir Fendek) - - 2022-03-10 [10131cd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/10131cd6b04c09c58be2b117ef62fde1940a32d0) chore: update 5 alias to 5.2 (Damian Mooyman) - - 2022-02-28 [98db572](https://github.com/tractorcow-farm/silverstripe-fluent/commit/98db5720a687b517c223dacdee033ddfa1b6ae7d) Update FluentAdminTrait.PHP (Rens Korswagen) - - 2021-11-04 [9ac7305](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9ac7305f6924b4da80217a255637f72252a5874b) allow PHP 8 (bumbus) - - 2021-10-18 [7acbe4e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7acbe4eb043ebf71aeec53e9dcdd11d84b6d35c9) feat(locale admin): add hook to update fluent locales (Oliver) - - 2021-10-04 [5384deb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5384debf24226ceff4af4acc3a50a098bb65ac91) Italian translation (Giancarlo Di Massa) - - 2021-07-12 [e120dce](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e120dcea17d6527171041eb37810381697ed362b) feat(site tree extension): add option to disable locale prepend to link (norden-oliver) - - 2021-06-30 [d68e490](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d68e490abf4ea07e5a9998e54f4e20a1db10f411) Update src/Extension/FluentExtension.PHP (Damian Mooyman) - - 2021-06-27 [37aec66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/37aec669fcf459b3bf1af8cc0cd7f0864076b595) Consolidate some redundant logic in code (Damian Mooyman) - - 2021-06-18 [4d386be](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4d386be31f61d849e8aecfef3028e0fcecee7d46) PR fixes. (Mojmir Fendek) - - 2021-06-16 [0cb3b6c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0cb3b6ca6dffc256a4f6e3e4646fd2d6ef509e5a) PR fixes. (Mojmir Fendek) - - 2021-05-23 [cd9279d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cd9279db1a0b85ed52a29d73b2f2e11e54600053) Unit tests for locale switching (Damian Mooyman) - - 2021-05-23 [31528e2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/31528e2e9c06629b761371be127fcbedee2b26e4) Remove redundant phpdoc (Damian Mooyman) - - 2021-05-23 [810bcef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/810bcefb9e571ccebb4c74f30835ed1017b7d0b9) Implement unit tests (Damian Mooyman) - - 2021-05-23 [f0043fd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f0043fd62e6a0180aac156ea535830ee14580d1c) Adjust setters / getters (Damian Mooyman) - - 2021-05-21 [a281899](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a28189977ddc862da2baa70b7d5bd1bc9b4652ec) FEATURE: Add timezone field to CMS to allow dates to be shown in local timezone (Damian Mooyman) - - 2021-05-20 [e9720c2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e9720c250292be959f5a59aa8fd983c505917292) PR fixes. (Mojmir Fendek) - - 2021-04-23 [67b472a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/67b472ab78424a1dd880c55e19d08a1bfc267b99) Revert default to prevent to same as 5.0 to prevent semver breakage (Damian Mooyman) - - 2021-04-20 [1e5f1e0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1e5f1e0decdb64eab264e34acb3ba39ea446cf4d) Add missing CRUD permissions for Locale dataobject (Damian Mooyman) - - 2021-04-16 [8a6b778](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8a6b7781eb505b960be9a5a50234992719f3241a) Bugfix for version history viewer (Vivienne Tubbs) - - 2021-04-08 [bb7ec0c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb7ec0c2fefa81e1f850e0cecf3ee9dcc2af1ee4) Remove outdated link (Damian Mooyman) - - 2021-03-22 [8d4a32d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8d4a32d05b082a0ad5df7dd34373cb4b3412bc6e) Escape query string (Vivienne Tubbs) - - 2021-03-16 [3ea287a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3ea287afb7c1394a9db84894baf9c45744a00a1c) Import namespace for Convert (Vivienne Tubbs) - - 2021-03-16 [8b552db](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8b552dbe26ee141eba2c735a11e8e938d1457880) Add PR changes (Vivienne Tubbs) - - 2021-02-26 [ca2759d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ca2759de0d8d5516dc71c99674b4b9c83f9c2bf5) Pair programming fixes. (Mojmir Fendek) - - 2021-01-10 [a656714](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a656714ef0cbe7ad760a9b2b665585e00aadae92) Localised versioned history (#639) (Mojmir Fendek) - - 2020-10-06 [97d83d6](https://github.com/tractorcow-farm/silverstripe-fluent/commit/97d83d6a25af5d92e95d56805d032cb8508a7a95) Added extension point to FluentDirectorExtension (innomedia) - - 2020-10-01 [8a5300e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8a5300e8713cfdc841cea72064215f2c8c10e126) Translation to Slovenian (sl.yml) (Tomasz Pirc) - - 2020-09-10 [5145156](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5145156728d7481557871c6a30eb578455a84674) Update branch aliases (Damian Mooyman) - - 2020-08-26 [b7e40f7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b7e40f750cc563447a9f08331d876b1dff6c3b61) Wrap middleware state mutations inside state helpers (Damian Mooyman) - - 2020-07-22 [cddb95c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cddb95c9d54e60451fa70c5851dea87916efd4a7) Site Tree status flags localised. (Mojmir Fendek) - - 2020-07-20 [0b57ecf](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0b57ecf17f6672b1ccaca5626ca68586703dcdee) Add BC for old config with deprecation notice (cpenny) - - 2020-07-20 [93bf32f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/93bf32f5fe230bd17778a1e541afcc5a2b400c59) Encoding configuration documentation. (Mojmir Fendek) - - 2020-07-17 [af11a3b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/af11a3b39ce9f5f2e1608ea6c2f8a33bc9558545) Source locale lookup correction. (Mojmir Fendek) - - 2020-07-16 [31029f9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/31029f9371aee6f9f6437be04319ae3d61ce3d46) Rename CMS publish required config (cpenny) - - 2020-07-16 [0243e71](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0243e713f26a880fbbce1b08eb4d27af3bbeb420) Localised copy config changed to flat list, extension points improvements. (Mojmir Fendek) - - 2020-07-14 [2fb7945](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2fb79450246216c0237cdef362476469fc1b9927) Locale detection improvements. (Mojmir Fendek) - - 2020-07-13 [bb8838a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb8838a0a107017a0c3fd9f7c8eb9617ec3a9b14) Global state for localised copy feature. (Mojmir Fendek) - - 2020-07-13 [6981075](https://github.com/tractorcow-farm/silverstripe-fluent/commit/69810754dba393afa4e093643cde45574b7599f0) Global localised copy state removed. (Mojmir Fendek) - - 2020-07-12 [35f64cd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/35f64cd5410c343159ae594a3c3a937588914e77) Localised copy trait changed into an extension approach. (Mojmir Fendek) - - 2020-07-09 [cfc1925](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cfc1925437cc97d9cbd8458b1b0683712627c111) Source locale lookup correction. (Mojmir Fendek) - - 2020-07-07 [0a21272](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0a21272d160cc2bd9b8f9f62a84438967f464d49) Localised copy trait (Mojmir Fendek) - - 2020-07-06 [79c248b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/79c248babb08a1fe1da006daa96c84ded9b25ca4) PR fixes. (Mojmir Fendek) - - 2020-07-02 [ef88e32](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ef88e3274df97bc3ba320fbcd6c4252c46bbc5f2) Added a tooltip for Unlocalise action. (Mojmir Fendek) - - 2020-06-29 [9432cf9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9432cf985ac8d3f0f9e9d9c896163e5a45d5a186) Non-versioned UI improvements (Mojmir Fendek) - - 2020-06-26 [f5bce7e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f5bce7ec57cab19f8d4d8c5226fada0e5c8aa5f0) Publish state related fixes (Mojmir Fendek) - - 2020-06-25 [21ff3ff](https://github.com/tractorcow-farm/silverstripe-fluent/commit/21ff3ff91b406dfe23c0809a277dc1f9ed88412c) PR fixes (Mojmir Fendek) - - 2020-06-25 [5a162c8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5a162c8b7090fc073e22eb9aecedf595ea17d915) Badges UI improvements (Mojmir Fendek) - - 2020-06-18 [5092db1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5092db1245f8ada32debd6debdc69a5d34b60bc3) Copy locale action extension points. (Mojmir Fendek) - - 2020-06-18 [d3abe50](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d3abe508e5094894fe2507933705949c166335af) Redundant copy locale actions prevented. (Mojmir Fendek) - - 2020-05-15 [6182ea0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6182ea00a2b03e7e66300b66b696ccd4bc108af3) Ensure the domain detection only returns the locale if it is unambiguous (Danae Miller-Clendon) - - 2020-05-12 [7c8e8c8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7c8e8c8e2aa345ad60e85a4243af60090f201dfd) Don't treat /graphql as admin (Damian Mooyman) - - 2020-05-12 [2a79a28](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a79a2820a307518c65d781879c26f9eab2563d8) Update locale detection to include cloudflare logic (Damian Mooyman) - - 2020-05-12 [f68d9db](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f68d9db397b0d3ee3b9b1c245e96a191ef92c73a) more translations DE (Bumbus) - - 2020-05-12 [aff053c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/aff053cf78fd52c17d9d7d31fc293b07c5b39ac1) added missing translation keys; added de translation (Bumbus) - - 2020-05-11 [3d71d8d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3d71d8daf3dc39c206dc0cab1608fc331f674322) Bump documented versions (Damian Mooyman) - - 2020-05-11 [33f5175](https://github.com/tractorcow-farm/silverstripe-fluent/commit/33f5175be0d5ac5552b460af349702609eb15311) Run fluent isolated extension on requireDefaultRecords to prevent needing to dev/build twice (Damian Mooyman) - - 2020-03-24 [98806ad](https://github.com/tractorcow-farm/silverstripe-fluent/commit/98806ad430917426171ae8d627c5c0cd3943a928) Add migration helper for isolated extension (Damian Mooyman) - - 2020-03-24 [1ffab0d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1ffab0dd9b83625439aef6a2a20af6618810cd0d) Add extra hide / show action if filtering (Damian Mooyman) - - 2020-03-23 [6da52eb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6da52ebf5108a7e33df58da6ec03fa578fcec829) Refactor updateFluentLocalisedFields so it can be called from third party extensions (Damian Mooyman) - - 2020-03-19 [90fc945](https://github.com/tractorcow-farm/silverstripe-fluent/commit/90fc94559850ac9638ae86a781ba7050af7258d0) Adjust description on UseDefaultCode field (Damian Mooyman) - - 2020-03-19 [59148bb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/59148bb76311b7e6a8e3752f2a1f271deaf1749f) Update src/Model/Locale.PHP (Damian Mooyman) - - 2020-02-27 [74a68f7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/74a68f7a2352d1ee8e452e0f5f8d14ba03a0d4e5) Enable FluentBadgeTrait for filtered-only records (Damian Mooyman) - - 2020-02-14 [f55a0ea](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f55a0ead4ebf78aee824e9312bf89e647e1556d3) Support x-default locale code for SEO (Damian Mooyman) - - 2020-02-10 [b6c2a8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b6c2a8c5ed0c7540ad69e88e525ce46d761e4ebc) Add tests for delete (Damian Mooyman) - - 2020-02-10 [7e388fe](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7e388fe99c8989ce3380681224c330b5577c03ce) Add unit tests for admin actions. Bugfixing some versioned localisation issues. (Damian Mooyman) - - 2020-02-09 [2a6a8a6](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a6a8a6b90056d23bb3755bac2ab661f5b0ed407) Don't show disallowed locales in CMS admin section (Damian Mooyman) - - 2020-02-07 [afa0048](https://github.com/tractorcow-farm/silverstripe-fluent/commit/afa0048cfa01a77aa8c27566d3c77be3182b8b39) Remove redundant provider (Damian Mooyman) - - 2020-02-07 [318e7a9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/318e7a9b8f8c9019033d8977e21f96701ef45185) Test and bugfix locale-specific CMS access (Damian Mooyman) - - 2020-02-07 [f437f8b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f437f8b1862750647cd54bd10c49e67aa21bf6d8) Reenable copy from / copy to actions (Damian Mooyman) - - 2020-02-07 [75cbb9c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/75cbb9c3e43c6084508c4ab5155699e8559d6d3a) Add permission check to global actions (Damian Mooyman) - - 2020-02-05 [ecaf135](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ecaf135a0e942f576fe961a0ab324d284ad99b3b) Simplify (Damian Mooyman) - - 2020-02-05 [2217a6a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2217a6af8f37990afc059a471292f694153c0264) Switch to using real permissions for each locale (Damian Mooyman) - - 2020-02-03 [074f7ca](https://github.com/tractorcow-farm/silverstripe-fluent/commit/074f7ca637d59925563cf780e5f248bc45635709) Add permission model base extensions (Damian Mooyman) - - 2020-01-12 [ea8619a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ea8619a5d24280b14fbf47716bd6a34a0860500f) Don't show unpublished / hidden pages in meta tag alternate links (Damian Mooyman) - - 2019-12-12 [27041ac](https://github.com/tractorcow-farm/silverstripe-fluent/commit/27041ac1f46f4c5029b1d331c3480d63abbc37b6) MINOR: update of example in scenarios (Peter Thaleikis) - - 2019-12-02 [c8818bc](https://github.com/tractorcow-farm/silverstripe-fluent/commit/c8818bce77ca9860c2c8ae19dcd3e6b50efeeb4d) Break out updateCMSFields into a callable helper method (Damian Mooyman) - - 2019-11-20 [5404ed7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5404ed74e7f5d260b573ad18335cdd5c18999902) Build dist files (Damian Mooyman) - - 2019-11-20 [3eed100](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3eed1008b5acc16a4d47486dd3e334173fab7e8b) Update styles (Damian Mooyman) - - 2019-11-19 [967715b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/967715bc08f27fc8aa5159cb157f472a78962383) Add extra useful gridfield components for localised records (Damian Mooyman) - - 2019-11-19 [773c1d5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/773c1d59896f1603a4155d9ad9a75ceb716216ca) Prevent FluentDirectorExtension erroring when CMS module is not installed (Damian Mooyman) - - 2019-11-19 [facdac3](https://github.com/tractorcow-farm/silverstripe-fluent/commit/facdac34a1b7017fc5388b3db0958b5b3b98c5d0) Feature: CMS module is optional (Damian Mooyman) - - 2019-11-14 [34ab9c2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/34ab9c20492c59f1a46cc2f4217f65cf3d8e1893) Drop PHP 7.0 test (Damian Mooyman) - - 2019-11-14 [665e1aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/665e1aa27c24f0b7a49574781876dc98ab6371f7) Add deleteFluent for non-versioned records (Damian Mooyman) - - 2019-11-14 [b9dcbe1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b9dcbe13f8c9107d997a223fbb45599c8f7ccdd7) Move menu before RightGroup so that in the GridField Detail Form view, the menu doesn’t get cropped. (Danae Miller-Clendon) - - 2019-11-13 [88d5d57](https://github.com/tractorcow-farm/silverstripe-fluent/commit/88d5d57558939c0341fe0cfcfc313ce3e5e3c6f4) Wrap writeToStage() in an extension check in copyFluent (should not depend on Versioned) (Danae Miller-Clendon) - - 2019-11-13 [ec1f802](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ec1f802737e8426d05ef590f6b7a9466df049049) Drop PHP 5 support, fix linting issues (Damian Mooyman) - - 2019-11-13 [5dfc1a8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5dfc1a80361ccb30253a3e15ea444b1bbfbb669d) Add colours, fix missing "save" in save and publish (Damian Mooyman) - - 2019-11-12 [9f6c755](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9f6c7550f4b6365c083ea093f0a7429b065698fc) Work on actions (Damian Mooyman) - - 2019-11-12 [ae6469c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ae6469c6654c9e94611d4014b9d173bd477085c3) Wrap actions in Versioned extension check (Danae Miller-Clendon) - - 2019-11-12 [c19a44e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/c19a44e08e45244b044ac1967029f8fa7aebfd76) Clean up issues with unpublish action (Damian Mooyman) - - 2019-11-12 [ac421b7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ac421b7dc4bd53758da5efbf86298ea15c9c945c) Following on from Damian’s suggestions. TODO: Test and implement for GridField (Danae Miller-Clendon) - - 2019-11-12 [03fc69d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/03fc69d821f3ffac20aa8148148e71e7cb7b76a5) Handle the actions from Localisation menus: (Danae Miller-Clendon) - - 2019-11-11 [2761cd8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2761cd8890ad3af3a3343acc4d572730bbe0059e) Adjust scope of 5.0.0 beta release (Damian Mooyman) - - 2019-11-06 [1bcb462](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1bcb462fa63d61ec923fa2d9d6c8eabe575931fb) Initial commit of gridfield actions (Damian Mooyman) - - 2019-11-04 [b2f4bce](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b2f4bce62f33f8fa901b0ddb4b5c9d36ee5597f5) Remove hasMethod / hasExtension bindings (Damian Mooyman) - - 2019-11-04 [63a2c04](https://github.com/tractorcow-farm/silverstripe-fluent/commit/63a2c047de7bec37bb7db9b3ebfd4b4285363cbc) Clean up and refactor extension classes (Damian Mooyman) - - 2019-11-04 [1e2841d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1e2841d1f8badfe7712de44a28248372634da848) Clean up menu (Damian Mooyman) - - 2019-11-03 [1d48882](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1d488822326280a13642bd270981b7f6d5e9e34c) Alias master as next major version (Damian Mooyman) - - 2019-10-30 [fd8c5b5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fd8c5b580ff2637b19e849c6588e4ae0dc845290) Add descriptions to menu layout (Damian Mooyman) - - 2019-10-29 [b62b671](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b62b6710e6ef90458a1faafca8a193134fb5461f) WIP Initial commit of new localisation menu (Damian Mooyman) - - - -
diff --git a/en/08_Changelogs/5.1.0.md b/en/08_Changelogs/5.1.0.md deleted file mode 100644 index 54b4a9979..000000000 --- a/en/08_Changelogs/5.1.0.md +++ /dev/null @@ -1,1163 +0,0 @@ -# 5.1.0 - -## Overview - -A full list of module versions included in CMS Recipe 5.1.0 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/recipes/). - -- [Security considerations](#security-considerations) -- [Features and enhancements](#features-and-enhancements) - - [New logo](#new-logo) - - [Eager loading](#eager-loading) - - [ArrayList improvements](#arraylist-improvements) - - [Improvement to page search performance with Elemental](#cms-search-performance) - - [New `InheritedPermissions` option - only these members](#only-these-members) - - [Optimised queries when filtering against IDs](#filter-by-ids) - - [Session manager changes](#session-manager) - - [Static publish queue related page regeneration](#staticpublishqueue-regeneration) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Dependency changes](#dependency-changes) -- [Bug fixes](#bug-fixes) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.0.0 | -| bringyourownideas/silverstripe-maintenance | 3.0.1 | -| cwp/agency-extensions | 3.1.0 | -| cwp/starter-theme | 4.0.0 | -| cwp/watea-theme | 4.0.0 | -| dnadesign/silverstripe-elemental | 5.1.0 | -| dnadesign/silverstripe-elemental-userforms | 4.1.0 | -| silverstripe-themes/simple | 3.3.0 | -| silverstripe/admin | 2.1.0 | -| silverstripe/asset-admin | 2.1.0 | -| silverstripe/assets | 2.1.0 | -| silverstripe/auditor | 3.0.0 | -| silverstripe/blog | 4.1.0 | -| silverstripe/campaign-admin | 2.1.0 | -| silverstripe/cms | 5.1.0 | -| silverstripe/config | 2.1.0 | -| silverstripe/contentreview | 5.1.0 | -| silverstripe/crontask | 3.0.2 | -| silverstripe/documentconverter | 3.1.0 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.1.0 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.1 | -| silverstripe/errorpage | 2.1.0 | -| silverstripe/externallinks | 3.1.0 | -| silverstripe/framework | 5.1.0 | -| silverstripe/graphql | 5.1.0 | -| silverstripe/gridfieldqueuedexport | 3.1.0 | -| silverstripe/hybridsessions | 3.0.2 | -| silverstripe/iframe | 3.1.0 | -| silverstripe/installer | 5.1.0 | -| silverstripe/ldap | 2.1.0 | -| silverstripe/login-forms | 5.1.0 | -| silverstripe/lumberjack | 3.0.2 | -| silverstripe/mfa | 5.1.0 | -| silverstripe/mimevalidator | 3.0.0 | -| silverstripe/realme | 5.2.0 | -| silverstripe/recipe-authoring-tools | 2.1.0 | -| silverstripe/recipe-blog | 2.1.0 | -| silverstripe/recipe-cms | 5.1.0 | -| silverstripe/recipe-collaboration | 2.1.0 | -| silverstripe/recipe-content-blocks | 3.1.0 | -| silverstripe/recipe-core | 5.1.0 | -| silverstripe/recipe-form-building | 2.1.0 | -| silverstripe/recipe-kitchen-sink | 5.1.0 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.1.0 | -| silverstripe/recipe-services | 2.1.0 | -| silverstripe/registry | 3.1.0 | -| silverstripe/reports | 5.1.0 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.0.0 | -| silverstripe/segment-field | 3.1.0 | -| silverstripe/session-manager | 2.1.0 | -| silverstripe/sharedraftcontent | 3.1.0 | -| silverstripe/siteconfig | 5.1.0 | -| silverstripe/sitewidecontent-report | 4.1.0 | -| silverstripe/spamprotection | 4.1.0 | -| silverstripe/staticpublishqueue | 6.1.0 | -| silverstripe/subsites | 3.1.0 | -| silverstripe/tagfield | 3.1.0 | -| silverstripe/taxonomy | 3.1.0 | -| silverstripe/textextraction | 4.0.0 | -| silverstripe/totp-authenticator | 5.1.0 | -| silverstripe/userforms | 6.1.0 | -| silverstripe/vendor-plugin | 2.0.1 | -| silverstripe/versioned | 2.1.0 | -| silverstripe/versioned-admin | 2.1.0 | -| silverstripe/versionfeed | 3.1.0 | -| silverstripe/webauthn-authenticator | 5.1.0 | -| symbiote/silverstripe-advancedworkflow | 6.1.0 | -| symbiote/silverstripe-gridfieldextensions | 4.0.3 | -| symbiote/silverstripe-multivaluefield | 6.0.2 | -| symbiote/silverstripe-queuedjobs | 5.0.2 | -| tractorcow/silverstripe-fluent | 7.0.0 | - -
- -## Security considerations {#security-considerations} - -This release includes several security fixes. Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2023-40180 - DDOS Vulnerability on GraphQL due to lack of protection against recursive queries](https://www.silverstripe.org/download/security-releases/cve-2023-40180) Severity: High - -### Released on july 31 2023 - -A patch for the following security vulnerability was released on July 31 2023. You can learn more about this in the [blog post about this patch](https://www.silverstripe.org/blog/silverstripe-cms-security-patches/). Note that there was also a patch for a vulnerability that only affected Silverstripe CMS 4 released on the same day, which you can read about in that blog post. - -- [CVE-2023-32302 - Members with no password can be created and bypass custom login forms](https://www.silverstripe.org/download/security-releases/cve-2023-32302) Severity: None - -## Features and enhancements - -### New logo - -Silverstripe CMS has a new logo! It will be rolling out on our web presence as we find instances of the old one and now you can see it in this release of Silverstripe CMS. A new logo provides a clearer distinction between Silverstripe (the company) and Silverstripe CMS. - -### Eager loading - -When looping over nested relationships the ORM is prone to the N + 1 query problem where excessive database calls are made. Eager loading has been introduced via the new [`DataList::eagerLoad()`](api:SilverStripe\ORM\DataList::eagerLoad()) method which alleviates the N + 1 problem by querying the nested relationship tables before they are needed using a single large `WHERE ID in ($ids)` SQL query instead of many `WHERE RelationID = $id` queries. - -Imagine the following example where there is a `Team` model with 20 records, with a `has_many` relation "Players" - -```php -// Regular ORM usage without eager loading -// This would result in 21 SQL SELECT queries, 1 for Teams and 20 for Players -$teams = Team::get(); - -// Using the `eagerLoad()` method to eager load data from nested models (up to 3 relations deep) -// This will result in only 2 SQL SELECT queries, 1 for Teams and 1 for Players -$teams = Team::get()->eagerLoad('Players'); - -foreach ($teams as $team) { - foreach ($team->Players() as $player) { - echo $player->FirstName; - } -} -``` - -In a test setup with looping through 100 DataObjects each with 100 related DataObjects for a total of 10,000 records per test run, the following performance improvements were observed for different types of relations (eager-loading vs not eager-loading): - -- HasOne - 3227% faster (0.0078s vs 0.2595s) -- HasMany - 25% faster (0.1453s vs 0.1819s) -- ManyMany - 25% faster (0.1664s vs 0.2083s) -- ManyManyThrough - 16% faster (0.6586s vs 0.7681s) - -Note that those observations were made using MySQL. - -Read more about [eager loading](/developer_guides/model/relations/#eager-loading) including its limitations in the developer docs. - -### `ArrayList` improvements {#arraylist-improvements} - -#### `ArrayList` now supports `SearchFilter` syntax for filtering {#arraylist-improvements-searchfilter} - -You can now use [`SearchFilter` syntax](/developer_guides/model/searchfilters/) when calling any of the filter or exclude methods on [`ArrayList`](api:SilverStripe\ORM\ArrayList). For example: - -```php -use SilverStripe\ORM\ArrayList; - -$list = ArrayList::create([ - [ - 'Title' => 'Silverstripe CMS is awesome', - ], - [ - 'Title' => 'ArrayList is now more powerful than ever', - ], -]); - -// This will contain only the item with the title "Silverstripe CMS is awesome" -$filteredList = $list->filter('Title:PartialMatch', 'CMS'); -``` - -For backwards compatibility, `ArrayList` filters are explicitly case sensitive by default. This differs from `DataList` which uses the database configuration to determine its default case sensitivity. See [search filter modifiers](/developer_guides/model/searchfilters/#modifiers) for more details including how to configure this for your project. - -#### New `ArrayList::excludeAny()` method {#arraylist-improvements-excludeany} - -[`ArrayList`](api:SilverStripe\ORM\ArrayList) now has an [`excludeAny()`](api:SilverStripe\ORM\ArrayList::excludeAny()) method, which mirrors the [`DataList::excludeAny()`](api:SilverStripe\ORM\DataList::excludeAny()) method. - -### Improvement to page search performance with elemental {#cms-search-performance} - -- The CMS search has been optimised to reduce the number of database queries made when searching for pages with elemental content blocks. This has resulted in a small performance improvement. In our test environment, with 1,000 pages each with 5 content blocks we observed a 9% performance improvement using MySQL. Performance will vary with your environment. -- A new opt-in behaviour is available that makes a very large difference to performance when using elemental content blocks. In testing, this behaviour was more than 100% faster (i.e. halving the response time) of the sitetree search request. The opt-in feature disables the default behaviour of rendering all content blocks for CMS search. Instead, it simply extracts the database contents of the elements from its text and html fields. There is a downside to consider which is that any related content not directly on the element will not be matched against the search query. Note this does not use the `$searchable_fields` config. To opt-in to this behaviour, use the following config: - -```yml -DNADesign\Elemental\Controllers\ElementSiteTreeFilterSearch: - render_elements: false -``` - -If `render_elements` is set to `false` then individual fields on elements can be excluded from search by adding them to a config array: - -```yml -App\MyElement: - fields_excluded_from_cms_search: - - MyFieldToExclude - - AnotherFieldToExclude -``` - -### New `InheritedPermissions` option - only these members {#only-these-members} - -Applying the [`InheritedPermissionsExtension`](api:SilverStripe\Security\InheritedPermissionsExtension) to a `DataObject` class gives you the ability to declare that only users in certain groups can view or edit those records. This extension is applied by default to the [`File`](api:SilverStripe\Assets\File) and [`SiteTree`](SilverStripe\CMS\Model\SiteTree) classes. - -A new permission has been added to [`InheritedPermissions`](api:SilverStripe\Security\InheritedPermissions), which powers that extension. The new permission (`InheritedPermissions::ONLY_THESE_MEMBERS`) allows you to define which specific `Member` records should have access to your records, regardless of which groups those members belong to. - -In the CMS, this new permission is available for files and pages by setting "Who can view/edit this page/file" to "Only these users". - -### Optimised queries when filtering against iDs {#filter-by-ids} - -`DataList` queries filtering against a list of IDs have been optimised when all of the following criteria are met: - -- the column being filtered is a [`DBPrimarykey`](api:SilverStripe\ORM\FieldType\DBPrimaryKey) or a [`DBForiegnKey`](api:SilverStripe\ORM\FieldType\DBForiegnKey) -- the values being filtered are all either integers or valid integer strings -- using placeholders for integer ids has been configured off, which is the default config value. - -If you want to disable this optimisation you can do so with this configuration: - -```yml -SilverStripe\ORM\DataList: - use_placeholders_for_integer_ids: true -``` - -The following performance improvements were measured in a test setup where 10,000 record IDs were passed into a direct call to the methods indicated below: - -- DataList::byIDs() - 198% faster - (0.0608s vs 0.1812s) -- RelationList::foreignIDFilter() - - HasManyList::foreignIDFilter() - 108% faster (0.1584s vs 0.3304s) - - ManyManyList::foreignIDFilter() - 108% faster (0.1529s vs 0.3119s) - - ManyManyThroughList::foreignIDFilter() - 27% faster (0.6901s vs 0.8766s) - -Please note that this *does not* mean that your `has_many` relation queries will be 108% faster for example, as those queries do not typically pass a large number of IDs to the `foreignIDFilter()` method. - -Note that these observations were made using MySQL. - -### Session manager changes {#session-manager} - -#### Anonymize stored IP addresses {#session-manager-ip} - -A configuration option has been added to [Session Manager](https://github.com/silverstripe/silverstripe-session-manager/) to anonymize stored IP addresses for enhanced privacy and compliance. - -If you want to anonymize stored IP addresses then use the following configuration: - -```yml -SilverStripe\SessionManager\Models\LoginSession: - anonymize_ip: true -``` - -#### `GarbageCollectionService` can remove data in batches {#session-manager-gc} - -A configuration option has been added to [`GarbageCollectionService`](api:SilverStripe\SessionManager\Services\GarbageCollectionService) to limit the number of items it removes each time you run garbage collection on session data. It will not be limited by default but you can optionally limit the number of items it will remove in a single run by setting the following YAML configuration: - -```yml -SilverStripe\SessionManager\Services\GarbageCollectionService: - batch_remove_limit: 1000 -``` - -See [garbage collection](/developer_guides/cookies_and_sessions/managing_sessions/#garbage-collection) for more details. - -#### Threshold for updating `LastAccessed` in `LoginSession` {#session-manager-last-accessed} - -[`LoginSession`](api:SilverStripe\SessionManager\Models\LoginSession) used to write to the database on every request to update the `LastAccessed` field for the logged in user. This adds a bit of overhead to every request that adds up. - -A timed threshold (with a default of 300 seconds, or 5 minutes) is now used. The `LastAccessed` value will only be updated and written to the database if the last time the user made a request to the server was longer than this threshold. You can change the threshold to meet the requirements of your auditing with the following YAML configuration: - -```yml -SilverStripe\SessionManager\Models\LoginSession: - last_accessed_threshold: 150 -``` - -### Static publish queue related page regeneration {#staticpublishqueue-regeneration} - -New configuration options have been added to [Static Publish Queue](https://github.com/silverstripe/silverstripe-staticpublishqueue) to force regeneration of related pages after publishing or unpublishing a related page. You can enable this with the following configuration: - -```yml -SilverStripe\CMS\Model\SiteTree: - regenerate_children: recursive - regenerate_parents: recursive -``` - -Available options are: - -- `none`: Do not regenerate any parent or child hierarchy -- `direct`: Regenerate only one level above or below (direct parent or children, but not grandparent or grandchildren) -- `recursive`: Regenerate the entire parent or child hierarchy - -Read more about new [configuration options](https://github.com/silverstripe/silverstripe-staticpublishqueue/blob/6/docs/en/basic_configuration.md#control-when-childparent-pages-are-regenerated-in-cache-actions). - -### Other new features - -- You can now exclude specific `DataObject` models from the check and repair step of `dev/build` - see [ORM Performance](/developer_guides/performance/orm/#skip-check-and-repair) for more information. -- You can change what `SearchFilter` the `TreeDropdownField` uses with YAML configuration - see [ORM Performance](/developer_guides/performance/orm/#treedropdownfield) for more information. -- The [`i18nTextCollector`](api:SilverStripe\i18n\TextCollection\i18nTextCollector) now collects strings for ORM properties (e.g. `$db` fields) in `DataObject` and `Extension` classes, and from themes. See [i18n - collecting text](/developer_guides/i18n/#collecting-text) for more details. -- Extensions which modify permissions for [`Group`](api:SilverStripe\Security\Group) records which return `true` will be respected, the same as when modifying permissions for any other `DataObject` record. -- The [`ListboxField`](api:SilverStripe\Forms\ListboxField) now has a react component, and can be used in react-powered contexts such as within elemental blocks -- A new [`FieldsValidator`](api:SilverStripe\Forms\FieldsValidator) class has been added, which simply calls [`validate()`](api:SilverStripe\Forms\FormField::validate()) on all data fields in the form to ensure fields have valid values. Functionally equivalent to an empty [`RequiredFields`](api:SilverStripe\Forms\RequiredFields) validator. -- In your GraphQL schemas, you can now define the pagination limit at a schema level. See [limiting pagination](/developer_guides/graphql/working_with_dataobjects/query_plugins/#limiting-pagination) in the GraphQL documentation for more details. -- The `silverstripe/staticpublishqueue` module now allows you to define specific status codes that *should not* be statically cached. See [the documentation in the GitHub repository](https://github.com/silverstripe/silverstripe-staticpublishqueue/blob/6/docs/en/basic_configuration.md#excluding-page-types) for details. - -## API changes - -### `silverstripe/framework` {#api-changes-framework} - -- [`BuildTask`](api:SilverStripe\Dev\BuildTask) now has boolean `is_enabled` configuration option which has precedence over the existing `BuildTask::enabled` protected class property. The `BuildTask::enabled` property has been marked as deprecated and will be removed in CMS 6 if favour of using `is_enabled` instead. -- Passing an argument for `$limit` that is not `array|string|null` in [`SilverStripe\ORM\Search\SearchContext::getQuery()`](api:SilverStripe\ORM\Search\SearchContext::getQuery()) will throw a deprecation warning. In CMS 6 the parameter type will be changed from dynamic to `array|string|null`. -- You can now declare the default case sensitivity used by `SearchFilter` implementations, which power the `DataList` filtering functionality. See [search filter modifiers](/developer_guides/model/searchfilters/#modifiers) for more details. - -### `silverstripe/elemental-fileblock` {#api-changes-fileblock} - -- The [`FileBlock::getSummaryThumbnail()`](api:SilverStripe\ElementalFileBlock\Block\FileBlock::getSummaryThumbnail()) method has been marked as deprecated and will be removed in CMS 6 without equivalent functionality to replace it, as it is no longer required for the elemental block's preview summary. - -## Dependency changes - -- The unsupported modules `silverstripe/widgets` and `silverstripe/content-widget` were removed from `silverstripe/recipe-blog`. They were accidentally included in the `2.0.0` release of `silverstripe/recipe-blog`. The `silverstripe/widgets` and `silverstripe/content-widget` modules are CMS-5-compatible though unsupported. If your project relies on `silverstripe/widgets` or `silverstripe/content-widget`, manually update your project's `composer.json` file to explicitly require these modules. - -## Bug fixes - -- [`DataList::filterAny()`](api:SilverStripe\ORM\DataList::filterAny()) queries on many-many relations that use an aggregate `HAVING` clause now correctly use an `OR` conjunction rather than an incorrect `AND` conjunction. -- At some point shortly before the release of Silverstripe CMS 4.0.0, SSL support for database connections was accidentally removed. This has now been reinstated - see [Using SSL in database connections](/developer_guides/security/secure_coding#using-ssl-in-database-connections) for more information. -- The `cascade_duplicates` property was added to the [`InheritedPermissionsExtension`](api:SilverStripe\Security\InheritedPermissionsExtension) class so that now when duplicating any object that has the `InheritedPermissionsExtension` applied, the `GroupID` values in the `ViewerGroups` and `EditGroups` mapping tables will also be duplicated so that new object retains the same viewer and editor groups as the original. -- Any fields added to a model's `$summary_fields` configuration which are *not* backed by database fields (such as method calls) will no longer be pulled through when `searchableFields()` calls back on it (i.e. because `$searchable_fields` configuration has not been explicitly declared). This means you do not need to explicitly declare `$searchable_fields` for models which should only use the summary fields to filter by. -- The [Storybook pattern library](https://silverstripe.github.io/silverstripe-pattern-lib/) for Silverstripe CMS wasn't working when we released Silverstripe CMS 5.0.0, but that has now been fixed. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - -## Change log - -### Security - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-05-12 [7b21b38ac](https://github.com/silverstripe/silverstripe-framework/commit/7b21b38ac4532d06565dfcefad50540ebd2b50f4) Require password field to be non-empty (Steve Boyd) - See [cve-2023-32302](https://www.silverstripe.org/download/security-releases/cve-2023-32302) - -- silverstripe/graphql (5.0.0 -> 5.1.0) - - 2023-10-16 [f6d5976](https://github.com/silverstripe/silverstripe-graphql/commit/f6d5976ec4608e51184b0db1ee5b9e9a99d2501c) Add protection against recursive queries (#558) (Guy Sartorelli) - See [cve-2023-40180](https://www.silverstripe.org/download/security-releases/cve-2023-40180) - -### Features and enhancements {#changelog-enhancements} - -- silverstripe/installer (5.0.0 -> 5.1.0) - - 2023-08-18 [fc510dd](https://github.com/silverstripe/silverstripe-installer/commit/fc510dd3e8c7915ad8e6dc73f49a88f7752ab06b) Change favicon to reflect new logo (Maxime Rainville) - -- silverstripe/assets (2.0.0 -> 2.1.0) - - 2023-08-21 [53e8331](https://github.com/silverstripe/silverstripe-assets/commit/53e8331750008be7f9a9ec0caed05f62cdcbdaa1) Update translations (#570) (Guy Sartorelli) - - 2023-08-17 [a67cc24](https://github.com/silverstripe/silverstripe-assets/commit/a67cc24cc2f8448dd9120ef7bbd9d46a090d8b06) Update translations (#569) (Guy Sartorelli) - - 2023-06-15 [47fa6c6](https://github.com/silverstripe/silverstripe-assets/commit/47fa6c648163ad40f6ad585fde98fc132c37a2e9) add check for specific user inherited permission (Andrew Paxley) - - 2023-06-14 [f83706e](https://github.com/silverstripe/silverstripe-assets/commit/f83706eb1f864c74357f9b1a5405a8dab3a5054f) Update translations (Steve Boyd) - - 2023-06-14 [05732c0](https://github.com/silverstripe/silverstripe-assets/commit/05732c00ff0b1bd662db8feaef4f41b979280951) Update translations (Steve Boyd) - - 2023-05-30 [7c0cc54](https://github.com/silverstripe/silverstripe-assets/commit/7c0cc54028ac818479e4d07b028617edc8b9dc33) Update translations (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-08-29 [d01ae8029](https://github.com/silverstripe/silverstripe-framework/commit/d01ae8029e00aa3f836bbd22bfccb22676ef87d2) Update logo (#10922) (Maxime Rainville) - - 2023-08-29 [b4463d905](https://github.com/silverstripe/silverstripe-framework/commit/b4463d90509fc1602714f949fbf7589a8b1fbf72) Enable ArrayList and EagerLoadedList to use search filters (#10925) (Guy Sartorelli) - - 2023-08-21 [3e72f5e69](https://github.com/silverstripe/silverstripe-framework/commit/3e72f5e6946b00301f326cee2f6b63fece0e2081) Update translations (#10920) (Guy Sartorelli) - - 2023-08-17 [8745890d8](https://github.com/silverstripe/silverstripe-framework/commit/8745890d842b488d4ce999efcd297630c82dbce8) Update translations (#10918) (Guy Sartorelli) - - 2023-08-08 [358cbc9ee](https://github.com/silverstripe/silverstripe-framework/commit/358cbc9ee56ff70cd50342746082ff07c7c2bf0b) Do not use placeholders by default for foreignIDFilter() (Steve Boyd) - - 2023-08-07 [5a52484d8](https://github.com/silverstripe/silverstripe-framework/commit/5a52484d881e2fedeb344f1461c3208086afc9e2) Add FieldsValidator to ensure fields get validated (Guy Sartorelli) - - 2023-08-03 [ae49e134a](https://github.com/silverstripe/silverstripe-framework/commit/ae49e134a9ee7282c991b8ea3dc4ffd0f4d7f051) Use custom list for eagerloaded relations (#10869) (Guy Sartorelli) - - 2023-07-25 [672396880](https://github.com/silverstripe/silverstripe-framework/commit/672396880d1d7d9555e8b6aa787fcfded0750549) Do not use placeholders for int ID filters (Steve Boyd) - - 2023-07-21 [93acba053](https://github.com/silverstripe/silverstripe-framework/commit/93acba053552006f7001192fc25cd895500fdda2) Update translations (Steve Boyd) - - 2023-07-05 [85e503d01](https://github.com/silverstripe/silverstripe-framework/commit/85e503d0125d0f975a05f8be1b4806d935261a23) Refactor eagerloading fetch into separate methods (Guy Sartorelli) - - 2023-07-04 [6fa71bbf5](https://github.com/silverstripe/silverstripe-framework/commit/6fa71bbf513fc7cafbfceb16b3c6fbcd8ef5cb52) avoid multiple calls to records->count() In PermissionCheckboxSetField (#10839) (Thomas Portelange) - - 2023-06-28 [e1d10a0b4](https://github.com/silverstripe/silverstripe-framework/commit/e1d10a0b4ce55f8d62d931d9ace9f8d2179e1c9a) ListboxField react field schema (Andrew Paxley) - - 2023-06-27 [46d793048](https://github.com/silverstripe/silverstripe-framework/commit/46d7930489d6f27f5dc3157530c0e8938050d843) Cache DataObject::getSchema() (Steve Boyd) - - 2023-06-27 [ed0730370](https://github.com/silverstripe/silverstripe-framework/commit/ed07303703842032b01602d040c7fafd49435be2) Cache $item->ID for eager loading (Steve Boyd) - - 2023-06-14 [2ea66922c](https://github.com/silverstripe/silverstripe-framework/commit/2ea66922cdf8026048e569e0af8b4008468351e3) Update translations (Steve Boyd) - - 2023-06-14 [34019426d](https://github.com/silverstripe/silverstripe-framework/commit/34019426dd82f3c2eace241e7cef9152d8d8653e) add OnlyTheseMembers Inherited Permission type (Andrew Paxley) - - 2023-06-14 [76e9b78b0](https://github.com/silverstripe/silverstripe-framework/commit/76e9b78b0c2a8782cc86f2964d9220752bce50e8) Update translations (Steve Boyd) - - 2023-06-07 [246735101](https://github.com/silverstripe/silverstripe-framework/commit/246735101a52ad6091cc66daa0d55e078dd6e6f6) ORM eager loading (Steve Boyd) - - 2023-05-30 [6b49b6cdb](https://github.com/silverstripe/silverstripe-framework/commit/6b49b6cdb68d70d00f9fe0bce038095db539e577) Update translations (Steve Boyd) - - 2023-04-04 [2c874a1e9](https://github.com/silverstripe/silverstripe-framework/commit/2c874a1e945e4c017dcb44b571491b9b7d3f6cc7) Exclude a list of models for checking and repairs (#10746) (Guy Sartorelli) - - 2023-03-26 [280354df0](https://github.com/silverstripe/silverstripe-framework/commit/280354df08f3a28e487ede1f58b9bdc14b7de7ae) Allow different search filters on TreeDropdownField (elliot sawyer) - -- silverstripe/admin (2.0.0 -> 2.1.0) - - 2023-09-05 [4dd12690](https://github.com/silverstripe/silverstripe-admin/commit/4dd1269029d8e614b55cb9bdaa7cb03d1af20058) Do not show loading spinner when there was a loading error (Steve Boyd) - - 2023-09-04 [105b5ce5](https://github.com/silverstripe/silverstripe-admin/commit/105b5ce52bee19f19e04e5f697559039432bcd3d) Allow disabling of help_links (Steve Boyd) - - 2023-08-21 [f5e11e41](https://github.com/silverstripe/silverstripe-admin/commit/f5e11e41ace678a69d71d8bdd99afd5d2c1f6030) Update translations (#1552) (Guy Sartorelli) - - 2023-08-17 [66242e7a](https://github.com/silverstripe/silverstripe-admin/commit/66242e7a7530dbddd5dc679775e34a81306448a6) Update translations (#1550) (Guy Sartorelli) - - 2023-06-28 [e03bc329](https://github.com/silverstripe/silverstripe-admin/commit/e03bc329f7d79ae8ce38aee6dea46ae865c215db) add ListboxField react component (Andrew Paxley) - - 2023-06-23 [4f2c5e26](https://github.com/silverstripe/silverstripe-admin/commit/4f2c5e263bb7009eecfdbd1b8de27e2a02300a36) hide permission fields we arent using (Andrew Paxley) - - 2023-06-19 [a4729ba0](https://github.com/silverstripe/silverstripe-admin/commit/a4729ba0b0bdc3e1eebef5fd45a813a59b54300a) Update JS Translations (Steve Boyd) - - 2023-06-14 [ae0952b1](https://github.com/silverstripe/silverstripe-admin/commit/ae0952b1985f5588c9afb8ef4b1d72e5642fae0c) Storybook Doc Blocks (Sabina Talipova) - - 2023-06-14 [bae6d7a1](https://github.com/silverstripe/silverstripe-admin/commit/bae6d7a1054dd4bf3f8713236d21a5a57dc095f8) Update translations (Steve Boyd) - - 2023-06-14 [868b2655](https://github.com/silverstripe/silverstripe-admin/commit/868b2655b74bbae6111fc676fd3a3d76d218fd13) Update translations (Steve Boyd) - - 2021-08-31 [a802828f](https://github.com/silverstripe/silverstripe-admin/commit/a802828f7bb2705fe9f49fd572dca3c3d84ee9c5) Pass form validation result to client (Steve Boyd) - - 2020-04-25 [b001d487](https://github.com/silverstripe/silverstripe-admin/commit/b001d487118801ceaec388a0c22ec42840ce4e80) Make CMSProfileController use required_permission_codes (mattclegg) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0) - - 2023-08-21 [6c318880](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c3188805ad13050d15a3c6fa03c05b429bee14c) Update translations (#1386) (Guy Sartorelli) - - 2023-08-08 [fa0fef24](https://github.com/silverstripe/silverstripe-asset-admin/commit/fa0fef240dc04955e25d90709d8ad8c57097f7d3) Use archive text when file archiving is enabled (Steve Boyd) - - 2023-06-15 [d48f81d5](https://github.com/silverstripe/silverstripe-asset-admin/commit/d48f81d57bbee151b2529dade7176113b2141b2f) update CMS fields to allow user-specific permissions (Andrew Paxley) - - 2023-06-14 [d278be60](https://github.com/silverstripe/silverstripe-asset-admin/commit/d278be605883144d3260c53cd2f6fe806b9f2673) Update translations (Steve Boyd) - - 2023-06-14 [be112c2e](https://github.com/silverstripe/silverstripe-asset-admin/commit/be112c2e6276ad04651b1c03d1168af42a75d647) Update translations (Steve Boyd) - - 2023-06-13 [71a622d8](https://github.com/silverstripe/silverstripe-asset-admin/commit/71a622d8453cc99f93a17e6834d90b68fa449e6c) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/campaign-admin (2.0.0 -> 2.1.0) - - 2023-08-21 [d62c2c3](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d62c2c3fa243be56c0904a2f9f6564fb86d7caea) Update translations (#276) (Guy Sartorelli) - - 2023-06-14 [3b5b372](https://github.com/silverstripe/silverstripe-campaign-admin/commit/3b5b372274848c882c40a354c14bb01b4518d6d5) Update translations (Steve Boyd) - - 2023-06-14 [42e5db4](https://github.com/silverstripe/silverstripe-campaign-admin/commit/42e5db44a581b71f419b156c87594dbec6bd7d0f) Update translations (Steve Boyd) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0) - - 2023-08-21 [7b61f6a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/7b61f6a3e71c053fa051aa913327637fb1358721) Update translations (#304) (Guy Sartorelli) - - 2023-08-07 [addd992](https://github.com/silverstripe/silverstripe-versioned-admin/commit/addd992bc242d3b0817797920508eb1f46e16466) Allow File.keep_archived_assets to show files archive tab (Steve Boyd) - - 2023-06-14 [afcf911](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afcf911059ccb0965b026c63451153f3050fec7c) Update translations (Steve Boyd) - - 2023-06-14 [33880e7](https://github.com/silverstripe/silverstripe-versioned-admin/commit/33880e7658290fb0c1c82bdb993182fd27a3d0f1) Update translations (Steve Boyd) - -- silverstripe/cms (5.0.0 -> 5.1.0) - - 2023-08-21 [14037a77](https://github.com/silverstripe/silverstripe-cms/commit/14037a776fb10f04b78a7e5de3f5fa9af5680d19) Update translations (#2874) (Guy Sartorelli) - - 2023-08-17 [6decb069](https://github.com/silverstripe/silverstripe-cms/commit/6decb06909badbb8ab47ef9f5f17e929a6173882) Update translations (#2873) (Guy Sartorelli) - - 2023-06-15 [14eb767c](https://github.com/silverstripe/silverstripe-cms/commit/14eb767c9c7b83146c70cbd075288506c94a1e6e) update SiteTree permissions in CMS (Andrew Paxley) - - 2023-06-14 [d9b6f7ac](https://github.com/silverstripe/silverstripe-cms/commit/d9b6f7acadedb0ff82015ecd0ebb02085704042c) Update translations (Steve Boyd) - - 2023-06-14 [cdd6e54f](https://github.com/silverstripe/silverstripe-cms/commit/cdd6e54fce6fa4ea3f638da038758a47db15ffbc) Update translations (Steve Boyd) - - 2023-05-30 [204ccd20](https://github.com/silverstripe/silverstripe-cms/commit/204ccd20b7df8d68fce4d1e13c4e7fbcec9d3bd3) Update translations (Steve Boyd) - -- silverstripe/errorpage (2.0.0 -> 2.1.0) - - 2023-08-21 [c0062cc](https://github.com/silverstripe/silverstripe-errorpage/commit/c0062cc391b9d3e562c8263ce30bbe8b5ee239ad) Update translations (#87) (Guy Sartorelli) - - 2023-06-14 [4225210](https://github.com/silverstripe/silverstripe-errorpage/commit/42252106e8e51fa7e467675abbe7764ff0c2f5c0) Update translations (Steve Boyd) - - 2023-06-14 [6fb1a24](https://github.com/silverstripe/silverstripe-errorpage/commit/6fb1a24e9c6c9c36b4fd715f3da951231b11bc6c) Update translations (Steve Boyd) - -- silverstripe/reports (5.0.0 -> 5.1.0) - - 2023-08-21 [03869a75](https://github.com/silverstripe/silverstripe-reports/commit/03869a7535bded903e23a0f1618af1480cb4a1e8) Update translations (#167) (Guy Sartorelli) - - 2023-06-14 [f6aee12f](https://github.com/silverstripe/silverstripe-reports/commit/f6aee12f07f506e370cb7ae3aa159476da46d35a) Update translations (Steve Boyd) - - 2023-06-14 [d2a5d6ea](https://github.com/silverstripe/silverstripe-reports/commit/d2a5d6ea535b866182534f5f438efaa17cdd44c3) Update translations (Steve Boyd) - -- silverstripe/siteconfig (5.0.0 -> 5.1.0) - - 2023-08-21 [bd825dce](https://github.com/silverstripe/silverstripe-siteconfig/commit/bd825dce7dc88d87b97d5fdbcc92c12f1ab6fd74) Update translations (#143) (Guy Sartorelli) - - 2023-06-14 [e51a7aa8](https://github.com/silverstripe/silverstripe-siteconfig/commit/e51a7aa8be33d5481f2ba5a51687fce9679ca836) Update translations (Steve Boyd) - - 2023-06-14 [014a428e](https://github.com/silverstripe/silverstripe-siteconfig/commit/014a428e9d82dcb5449e4989f7de3ec4cb529df1) Update translations (Steve Boyd) - -- silverstripe/versioned (2.0.0 -> 2.1.0) - - 2023-08-21 [302aa4c](https://github.com/silverstripe/silverstripe-versioned/commit/302aa4c36a9383caa4d079e3f589315dc78bacf6) Update translations (#411) (Guy Sartorelli) - - 2023-06-14 [afb4517](https://github.com/silverstripe/silverstripe-versioned/commit/afb4517a9673194dd82ba5bd4868367e678dfd77) Update translations (Steve Boyd) - - 2023-06-14 [5bae587](https://github.com/silverstripe/silverstripe-versioned/commit/5bae5877f879adfe104b14b51832148afb7056cb) Update translations (Steve Boyd) - -- silverstripe/graphql (5.0.0 -> 5.1.0) - - 2023-06-27 [d8435c5](https://github.com/silverstripe/silverstripe-graphql/commit/d8435c5f1c90e8e7ff50b5a0a22fcb68995b74b9) Enable storing GraphQL schema in `silverstripe-cache/` (#534) (Guy Sartorelli) - -- silverstripe/session-manager (2.0.0 -> 2.1.0) - - 2023-08-21 [845aa34](https://github.com/silverstripe/silverstripe-session-manager/commit/845aa3400679b94a93e23178450e0f523fbfb3a4) Update translations (#166) (Guy Sartorelli) - - 2023-08-16 [c82efd9](https://github.com/silverstripe/silverstripe-session-manager/commit/c82efd989b83e8f2f23fa02b6e193b153d6018ef) Don't update LastAccessed if some threshold hasn't been reached (#156) (Thomas Portelange) - - 2023-08-11 [d31ab95](https://github.com/silverstripe/silverstripe-session-manager/commit/d31ab95d30489efcea065a8d282a41bd506490ca) Add option to anonymize ip requests (#161) (Thomas Portelange) - - 2023-07-04 [ad7265d](https://github.com/silverstripe/silverstripe-session-manager/commit/ad7265d6525e15d8cd592dbac6bd7e77fb5e2295) get cached Member in LoginSession (#152) (Thomas Portelange) - - 2023-07-04 [c7a59f2](https://github.com/silverstripe/silverstripe-session-manager/commit/c7a59f29c7a3d67f05fd0264e5d46d583e2f21b0) get cached Member in SessionManagerField (#151) (Thomas Portelange) - - 2023-06-14 [cb90e70](https://github.com/silverstripe/silverstripe-session-manager/commit/cb90e70e850d7bffb75e4144f6bbca54fb4973b9) Update translations (Steve Boyd) - - 2023-06-14 [f9d423e](https://github.com/silverstripe/silverstripe-session-manager/commit/f9d423e9bf043b1b1c79fb29e70832c3e610a194) Update translations (Steve Boyd) - - 2023-06-13 [65d74c9](https://github.com/silverstripe/silverstripe-session-manager/commit/65d74c95f0be810a697ae39d4aac8abf219d4f6f) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/login-forms (5.0.0 -> 5.1.0) - - 2023-08-18 [8aeb6e9](https://github.com/silverstripe/silverstripe-login-forms/commit/8aeb6e9280c7d6c673026d68ec0b4c7f36b44b10) Include new logo (Maxime Rainville) - -- silverstripe/documentconverter (3.0.0 -> 3.1.0) - - 2023-08-21 [729c9eb](https://github.com/silverstripe/silverstripe-documentconverter/commit/729c9ebf47fcbea9f7ca3f850ec4bbc592d102b2) Update translations (#56) (Guy Sartorelli) - - 2023-06-14 [f0c5641](https://github.com/silverstripe/silverstripe-documentconverter/commit/f0c5641956ca97c80283418a8d9f88a23e5b2b04) Update translations (Steve Boyd) - - 2023-06-14 [d12916b](https://github.com/silverstripe/silverstripe-documentconverter/commit/d12916b8cd9b259bbfe5e365a11dbf5b7581b1e5) Update translations (Steve Boyd) - -- silverstripe/iframe (3.0.0 -> 3.1.0) - - 2023-08-21 [9890370](https://github.com/silverstripe/silverstripe-iframe/commit/98903708cd2aecc1b323489b60502631a2eff67e) Update translations (#74) (Guy Sartorelli) - - 2023-06-14 [ef07ff3](https://github.com/silverstripe/silverstripe-iframe/commit/ef07ff3a568f1fcd8ac8815a8e1e7adbf49c60f9) Update translations (Steve Boyd) - - 2023-06-14 [7070529](https://github.com/silverstripe/silverstripe-iframe/commit/70705292023a6f37297c39f752f0a55e92692f79) Update translations (Steve Boyd) - -- silverstripe/tagfield (3.0.0 -> 3.1.0) - - 2023-06-13 [f667020](https://github.com/silverstripe/silverstripe-tagfield/commit/f6670206780db4525e8709ec3d6cc01ef55ecda5) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/taxonomy (3.0.0 -> 3.1.0) - - 2023-08-21 [b76ce97](https://github.com/silverstripe/silverstripe-taxonomy/commit/b76ce9782f8096a8cc6795359c7be709cfcba638) Update translations (#95) (Guy Sartorelli) - - 2023-06-14 [050cb00](https://github.com/silverstripe/silverstripe-taxonomy/commit/050cb006804a070efde629dbe807e63e1722eef0) Update translations (Steve Boyd) - - 2023-06-14 [6baddb9](https://github.com/silverstripe/silverstripe-taxonomy/commit/6baddb9af915964fba932b23424810defdd490a3) Update translations (Steve Boyd) - -- silverstripe/blog (4.0.0 -> 4.1.0) - - 2023-08-21 [9d3a398](https://github.com/silverstripe/silverstripe-blog/commit/9d3a398901cb9207a707591c7342dd90845d444f) Update translations (#723) (Guy Sartorelli) - - 2023-08-17 [e9390c3](https://github.com/silverstripe/silverstripe-blog/commit/e9390c3525141ae8fb9769db50732a702c032525) Update translations (#722) (Guy Sartorelli) - - 2023-06-14 [cf4452f](https://github.com/silverstripe/silverstripe-blog/commit/cf4452f5e06b0df2e1604a07b184642df0ad14e1) Update translations (Steve Boyd) - - 2023-06-14 [7cbeb90](https://github.com/silverstripe/silverstripe-blog/commit/7cbeb902809278113ca0e1269d8cd0ec14eb3083) Update translations (Steve Boyd) - - 2023-05-30 [09e79fd](https://github.com/silverstripe/silverstripe-blog/commit/09e79fd8a87325dcd9bb624d0a1647706553f756) Update translations (Steve Boyd) - -- silverstripe/spamprotection (4.0.0 -> 4.1.0) - - 2023-08-21 [19603c3](https://github.com/silverstripe/silverstripe-spamprotection/commit/19603c31bc452fb4264e80b1bbcb7059a408dbcf) Update translations (#101) (Guy Sartorelli) - - 2023-06-14 [afbcf59](https://github.com/silverstripe/silverstripe-spamprotection/commit/afbcf59ec4decaa054f78681026be654812b29bb) Update translations (Steve Boyd) - - 2023-06-14 [e08ac10](https://github.com/silverstripe/silverstripe-spamprotection/commit/e08ac1065811db19d8183ab5556f68e0ff87c8d8) Update translations (Steve Boyd) - -- silverstripe/contentreview (5.0.0 -> 5.1.0) - - 2023-08-21 [20d61d7](https://github.com/silverstripe/silverstripe-contentreview/commit/20d61d7d87582a919350974be2d4257838ef7a56) Update translations (#208) (Guy Sartorelli) - - 2023-06-14 [b6e00e9](https://github.com/silverstripe/silverstripe-contentreview/commit/b6e00e9528eb35ba06862a0a798757605109f420) Update translations (Steve Boyd) - - 2023-06-14 [91fa889](https://github.com/silverstripe/silverstripe-contentreview/commit/91fa889d8d935b9ccbff07afc75b5e8c24789af0) Update translations (Steve Boyd) - -- silverstripe/sharedraftcontent (3.0.0 -> 3.1.0) - - 2023-08-21 [bfeb2bd](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/bfeb2bdc4e5c3f485e70af4179438353c436e512) Update translations (#207) (Guy Sartorelli) - - 2023-08-18 [f1a5836](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/f1a58367c02280b3326f17c5f9b2beaa96a27c29) Use new logo (Maxime Rainville) - - 2023-06-14 [bfc5909](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/bfc5909cce70b2aaf00ccedb4eeea3270c53934f) Update translations (Steve Boyd) - - 2023-06-14 [b336507](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/b336507f474cbd3e110af64fc4ba28d27b92cc51) Update translations (Steve Boyd) - - 2023-05-30 [d13d77d](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/d13d77df1d2be288cbabaac676203cb23b52ac3e) Update translations (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0) - - 2023-08-21 [af03d8d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/af03d8d0d154447e7c76a6f617da16523a4cf777) Update translations (#501) (Guy Sartorelli) - - 2023-08-17 [09e3019](https://github.com/symbiote/silverstripe-advancedworkflow/commit/09e3019be8ce050cab46297da9ab07c0729bcea1) Update translations (#500) (Guy Sartorelli) - - 2023-06-14 [e9fd460](https://github.com/symbiote/silverstripe-advancedworkflow/commit/e9fd460183abb01489657a8477db6163ab818851) Update translations (Steve Boyd) - - 2023-06-14 [0e7caa8](https://github.com/symbiote/silverstripe-advancedworkflow/commit/0e7caa8eace59dfb3c9630afb29e671158d8d135) Update translations (Steve Boyd) - -- silverstripe/userforms (6.0.0 -> 6.1.0) - - 2023-08-21 [c0eb6d6](https://github.com/silverstripe/silverstripe-userforms/commit/c0eb6d61e8d6595e5a1cca90fcdf68b190bbeb15) Update translations (#1231) (Guy Sartorelli) - - 2023-06-14 [c562d13](https://github.com/silverstripe/silverstripe-userforms/commit/c562d138dfdc3a0de20af4d23089aba6fece626d) Update translations (Steve Boyd) - - 2023-06-14 [95d3cee](https://github.com/silverstripe/silverstripe-userforms/commit/95d3ceec3be741cbaf30b6b183d5a0057404e546) Update translations (Steve Boyd) - - 2023-05-30 [ae34301](https://github.com/silverstripe/silverstripe-userforms/commit/ae34301f6a59168f3a74c86bf18a24ad3529c0b7) Update translations (Steve Boyd) - -- silverstripe/externallinks (3.0.0 -> 3.1.0) - - 2023-08-21 [20c2231](https://github.com/silverstripe/silverstripe-externallinks/commit/20c2231bff459bf3a58eb919bdf2c0c86093bf23) Update translations (#106) (Guy Sartorelli) - - 2023-06-14 [2560888](https://github.com/silverstripe/silverstripe-externallinks/commit/2560888df057645b7be08dd889336785a497057f) Update translations (Steve Boyd) - - 2023-06-14 [61b99e8](https://github.com/silverstripe/silverstripe-externallinks/commit/61b99e881cce49806856b75ee69df51d95e6b721) Update translations (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.0.0 -> 4.1.0) - - 2023-08-21 [720336d](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/720336dd78c0242a6ea79ec8fb22c32a00fc4fa8) Update translations (#70) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.0.0 -> 3.0.1) - - 2023-06-14 [17cd10c](https://github.com/bringyourownideas/silverstripe-maintenance/commit/17cd10cc627102f7505fcec507e0dc154e27c25a) Update translations (Steve Boyd) - -- silverstripe/versionfeed (3.0.0 -> 3.1.0) - - 2023-08-21 [d082606](https://github.com/silverstripe/silverstripe-versionfeed/commit/d082606ded9c73b98fc858c66c634952a6e68d6e) Update translations (#88) (Guy Sartorelli) - - 2023-06-14 [b11db96](https://github.com/silverstripe/silverstripe-versionfeed/commit/b11db96d7a93d28dc9a0852262ff3ce496c3754f) Update translations (Steve Boyd) - - 2023-06-14 [2450e85](https://github.com/silverstripe/silverstripe-versionfeed/commit/2450e85c874f29d9f2558e14b0578b08ba4fa842) Update translations (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0) - - 2023-08-21 [4b19889](https://github.com/silverstripe/silverstripe-elemental/commit/4b19889771a5846ce53054f7077cfe354a9d181b) Update translations (#1083) (Guy Sartorelli) - - 2023-07-04 [46fd44a](https://github.com/silverstripe/silverstripe-elemental/commit/46fd44ad07fd1f8443388e0b3ac39cd7c58b6091) Optimise site search (Steve Boyd) - - 2023-06-14 [d6c0bbf](https://github.com/silverstripe/silverstripe-elemental/commit/d6c0bbf4f615cf6071b6bb33b942f31937322f6f) Update translations (Steve Boyd) - - 2023-06-14 [34d9faf](https://github.com/silverstripe/silverstripe-elemental/commit/34d9faff47db47d6de03ba68ffd0ed8491090b5e) Update translations (Steve Boyd) - - 2023-03-13 [ddc3c32](https://github.com/silverstripe/silverstripe-elemental/commit/ddc3c32878f5bbdf74a74d16b058548fbae04c09) Include summary in elemental area by default (#948) (Michael van Schaik) - -- silverstripe/elemental-fileblock (3.0.0 -> 3.1.0) - - 2023-06-14 [d7ffcd8](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/d7ffcd829fea3eea29f040c97c533f81a60fe3df) Update translations (Steve Boyd) - - 2023-06-14 [8c15457](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/8c154578d73157f23c3e4797fa08fe89c65e7c44) Update translations (Steve Boyd) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0) - - 2023-06-14 [cf0fcf6](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/cf0fcf656f223cf5244b2a5090b662d45cf749c5) Update translations (Steve Boyd) - - 2023-06-14 [060b065](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/060b065bd727a29fc9229f45ab4c6f93888da138) Update translations (Steve Boyd) - -- silverstripe/hybridsessions (3.0.0 -> 3.0.2) - - 2023-08-18 [3df783e](https://github.com/silverstripe/silverstripe-hybridsessions/commit/3df783e81b7c2a863f3c4afdedcbba004ed053b8) Update translations (Guy Sartorelli) - - 2023-05-30 [87087ff](https://github.com/silverstripe/silverstripe-hybridsessions/commit/87087ffae20037ff61415d7ab868e162ff829063) Update translations (Steve Boyd) - -- silverstripe/registry (3.0.0 -> 3.1.0) - - 2023-08-21 [a2b05fa](https://github.com/silverstripe/silverstripe-registry/commit/a2b05faf3575c5fa89399f2ee705deb5ac562685) Update translations (#87) (Guy Sartorelli) - - 2023-06-14 [6c319fc](https://github.com/silverstripe/silverstripe-registry/commit/6c319fc0449de538f566fdf5c58d7a8da64bd516) Update translations (Steve Boyd) - - 2023-06-14 [55a748f](https://github.com/silverstripe/silverstripe-registry/commit/55a748fec1874925e943dae1a88c5b0e1c0779be) Update translations (Steve Boyd) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0) - - 2023-08-21 [736c2ad](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/736c2ad7c332bbeae1b9a21c95f54cd3d5cdbfbf) Update translations (#133) (Guy Sartorelli) - - 2023-06-14 [9ea2fa1](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/9ea2fa1cf2ee7c4066695575c8dc259762116fef) Update translations (Steve Boyd) - -- silverstripe/mfa (5.0.0 -> 5.1.0) - - 2023-06-15 [febbf9d](https://github.com/silverstripe/silverstripe-mfa/commit/febbf9d8977ba6e818bad4248bc67af085b1480c) Update translations (Steve Boyd) - - 2023-06-14 [48277a9](https://github.com/silverstripe/silverstripe-mfa/commit/48277a9cc0524192c255d2c43516959b159a1ab8) Update translations (Steve Boyd) - -- silverstripe/crontask (3.0.0 -> 3.0.2) - - 2023-08-21 [9a381d0](https://github.com/silverstripe/silverstripe-crontask/commit/9a381d0288129754b10f1d8755963b5650a5275a) Update translations (#81) (Guy Sartorelli) - - 2023-05-30 [8764d5d](https://github.com/silverstripe/silverstripe-crontask/commit/8764d5dbc9830a6dad6a1d83a9260313ce950fc7) Update translations (Steve Boyd) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0) - - 2023-08-21 [488ee05](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/488ee052f8e2a6e6dcce27aa5676bf8f379b681a) Update translations (#88) (Guy Sartorelli) - -- silverstripe/ldap (2.0.0 -> 2.1.0) - - 2023-08-21 [59d639a](https://github.com/silverstripe/silverstripe-ldap/commit/59d639aaa0f047bb7b849ae8c972a3930919e81e) Update translations (#60) (Guy Sartorelli) - - 2023-06-14 [30b22b8](https://github.com/silverstripe/silverstripe-ldap/commit/30b22b8724572531d8ae4730bd4a1dbc8a25485b) Update translations (Steve Boyd) - - 2023-06-14 [d5c18e0](https://github.com/silverstripe/silverstripe-ldap/commit/d5c18e0fc820098976f36c0b9987873acd38f201) Update translations (Steve Boyd) - -- silverstripe/realme (5.0.0 -> 5.2.0) - - 2023-08-21 [d84abc3](https://github.com/silverstripe/silverstripe-realme/commit/d84abc3a771625dff3943a064910029f835cc523) Update translations (#118) (Guy Sartorelli) - - 2023-06-26 [5dfdf4f](https://github.com/silverstripe/silverstripe-realme/commit/5dfdf4f43fff543df16bb1e72024f8add7697feb) Update styles to match new RealME branding (#113) (Guy Sartorelli) - - 2023-06-14 [d14d24b](https://github.com/silverstripe/silverstripe-realme/commit/d14d24bb3e68f477750ab1e90d6d033af7824326) Update translations (Steve Boyd) - - 2023-06-14 [193486d](https://github.com/silverstripe/silverstripe-realme/commit/193486d8615e5334d7d2dbdc98b77920ab1c4b87) Update translations (Steve Boyd) - - 2023-05-30 [3cdc32f](https://github.com/silverstripe/silverstripe-realme/commit/3cdc32f371cb4cf234a6aff69285d54bc409564f) Update translations (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0) - - 2023-06-14 [4e6b717](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/4e6b7172868e05a982cfbda6c944e11a46c31d98) Update translations (Steve Boyd) - -- silverstripe/subsites (3.0.0 -> 3.1.0) - - 2023-08-21 [178b521](https://github.com/silverstripe/silverstripe-subsites/commit/178b521c54c4f8bc8ba99cfcc84c9b9dd54c6670) Update translations (#534) (Guy Sartorelli) - - 2023-06-14 [c847f3e](https://github.com/silverstripe/silverstripe-subsites/commit/c847f3e1d84b88b46f2c2f145db509a4590e5e9a) Update translations (Steve Boyd) - - 2023-06-14 [6a8b57b](https://github.com/silverstripe/silverstripe-subsites/commit/6a8b57b72e41caf9ea71471aa7fbf224db4ba42f) Update translations (Steve Boyd) - -- silverstripe/lumberjack (3.0.0 -> 3.0.2) - - 2023-08-21 [bd35b14](https://github.com/silverstripe/silverstripe-lumberjack/commit/bd35b1412d175f34b7cad6b3f8c9ee130081b1f4) Update translations (#131) (Guy Sartorelli) - - 2023-05-30 [f26bb8c](https://github.com/silverstripe/silverstripe-lumberjack/commit/f26bb8c0108ffbe9c9d6ad8bbe50943ab994a0bd) Update translations (Steve Boyd) - -- cwp/agency-extensions (3.0.0 -> 3.1.0) - - 2023-08-21 [0f68e50](https://github.com/silverstripe/cwp-agencyextensions/commit/0f68e50c3f083c8f84359961eedeb0781322d876) Update translations (#100) (Guy Sartorelli) - - 2023-06-14 [36bdf4e](https://github.com/silverstripe/cwp-agencyextensions/commit/36bdf4e9511ce789706ef323bec2e21c6d28cf73) Update translations (Steve Boyd) - - 2023-06-14 [0eb21e7](https://github.com/silverstripe/cwp-agencyextensions/commit/0eb21e75071045fb7f86e8867f5179c67b079e08) Update translations (Steve Boyd) - - 2023-05-30 [1f403f3](https://github.com/silverstripe/cwp-agencyextensions/commit/1f403f315797481561b0bdae28b92d46527d5298) Update translations (Steve Boyd) - -- dnadesign/silverstripe-elemental-userforms (4.0.0 -> 4.1.0) - - 2023-08-21 [9ab97a3](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/9ab97a3bd01272e169713e0d6232223c148a254d) Update translations (#79) (Guy Sartorelli) - - 2023-06-14 [f9cce50](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/f9cce50d8c2a241daaa42e566368ad1492d8a007) Update translations (Steve Boyd) - - 2023-06-14 [5dc8b52](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/5dc8b523cf25ce25d687b8b8182ba034dbee0ff9) Update translations (Steve Boyd) - - 2023-05-30 [4b6191e](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/4b6191ee807d9e3336f0670d15bcbed071a3d5c8) Update translations (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.0 -> 4.0.3) - - 2023-08-21 [1e5a1e8](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1e5a1e8056a7f82bb3d3c7442e5036c83d7103a8) Update translations (#373) (Guy Sartorelli) - - 2023-06-14 [665d231](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/665d23170b461f78af13263ab2d61f4cacdaab4c) Update translations (Steve Boyd) - - 2023-05-30 [89a7301](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/89a7301b670b8b1ddbfd2a9b91a6d9051144ff84) Update translations (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (5.0.0 -> 5.0.2) - - 2023-08-21 [6e0c8df](https://github.com/symbiote/silverstripe-queuedjobs/commit/6e0c8dfca578da0ede3b0f5a5e5a83896f74a665) Update translations (#410) (Guy Sartorelli) - - 2023-06-14 [083763e](https://github.com/symbiote/silverstripe-queuedjobs/commit/083763e6467adc01a96857a37d57862089b44f48) Update translations (Steve Boyd) - - 2023-06-14 [bed9514](https://github.com/symbiote/silverstripe-queuedjobs/commit/bed951439d1c68f990c6f72cd939be339da8f2a7) Update translations (Steve Boyd) - -### Bugfixes - -- silverstripe/installer (5.0.0 -> 5.1.0) - - 2023-09-27 [a3f8e7e](https://github.com/silverstripe/silverstripe-installer/commit/a3f8e7ef3e1587a674715e3ea87668b2ed6aea8a) Add padding to favicon (Guy Sartorelli) - - 2023-06-04 [ab3d7bc](https://github.com/silverstripe/silverstripe-installer/commit/ab3d7bc206a7f71c5533053c5eb7aec372130d94) Fix link to V5 Docs (minimalic) - -- silverstripe/assets (2.0.0 -> 2.1.0) - - 2023-08-15 [4c04531](https://github.com/silverstripe/silverstripe-assets/commit/4c0453128d58c6647dcc567e793d9cb316333454) Ensure filenames are not duplicated when moving (Steve Boyd) - - 2023-08-10 [16ab3fa](https://github.com/silverstripe/silverstripe-assets/commit/16ab3fae648a5b7d36282666f8500487a94cb3a3) Double encoding image shortcode attributes (Sabina Talipova) - - 2023-08-07 [8597eae](https://github.com/silverstripe/silverstripe-assets/commit/8597eae2efac7df9cbe2b121cdf7bc26a7e4eff9) Fix for vips intervention image backend (#539) (Niklas Forsdahl) - - 2023-08-07 [d560dd4](https://github.com/silverstripe/silverstripe-assets/commit/d560dd4c76f0e72a2097488564c2a393b2e69f12) Multi HTML entities in image shortcodes (Sabina Talipova) - - 2023-07-11 [7f8057e](https://github.com/silverstripe/silverstripe-assets/commit/7f8057ea9af1a11fc8e4dbc3e24fdae84f97dc8b) (Sabina Talipova) - - 2023-07-11 [69cc7ed](https://github.com/silverstripe/silverstripe-assets/commit/69cc7edae15165ed5051d7587ac5219f84ec8e58) (Sabina Talipova) - - 2023-07-11 [bd9ebb7](https://github.com/silverstripe/silverstripe-assets/commit/bd9ebb72a0fb91ed2ca3d977f5b88efd6d0f7740) getCachedMarkup returns NULL instead of string if file doesn't exist (Sabina Talipova) - - 2023-05-18 [ae5b661](https://github.com/silverstripe/silverstripe-assets/commit/ae5b661dda468af9d0addb0afe490af6f0e06a7d) Use 0775 permissions for directories (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-09-25 [7bb72eb7c](https://github.com/silverstripe/silverstripe-framework/commit/7bb72eb7c589ab48d1815039de583ea929667b75) Ensure all fixed fields are added (Guy Sartorelli) - - 2023-09-13 [58696e3ed](https://github.com/silverstripe/silverstripe-framework/commit/58696e3ed5105e81245c30ddb7d04c3560ac2148) Set tableName on DBField before calling addToQuery (#10946) (Guy Sartorelli) - - 2023-09-05 [17c33231c](https://github.com/silverstripe/silverstripe-framework/commit/17c33231c4d08ae65491970cbb46f9e17e772471) Call Textarea validation extension (Steve Boyd) - - 2023-09-05 [7ea25bf9e](https://github.com/silverstripe/silverstripe-framework/commit/7ea25bf9e1b9e2af12f10fe794a5abb88f220b70) Call addToQuery on all DBFields (#10936) (Guy Sartorelli) - - 2023-08-31 [374771d4d](https://github.com/silverstripe/silverstripe-framework/commit/374771d4d71f649a63f5258f4546415a5b30d3b4) Correctly implement backwards compatible null comparisons (#10935) (Guy Sartorelli) - - 2023-08-21 [57cb55d6a](https://github.com/silverstripe/silverstripe-framework/commit/57cb55d6ae8038ed7c919c210096a1eb4102861a) Typo in CheckboxSetFieldMultiEnumTest class name (closes #10689) (Loz Calver) - - 2023-08-21 [1fd495449](https://github.com/silverstripe/silverstripe-framework/commit/1fd495449b80c13b06b0ea60620208b66617eee0) Stop ManyManyThroughList join records incorrectly showing as changed (fixes #10821) (Loz Calver) - - 2023-08-14 [c7cd26299](https://github.com/silverstripe/silverstripe-framework/commit/c7cd26299a3945de0d3635bdfa845bb771cd95a6) Fix ArrayList canFilterBy to work with ArrayData (#10915) (Guy Sartorelli) - - 2023-08-09 [8da4aa863](https://github.com/silverstripe/silverstripe-framework/commit/8da4aa86379a94cffe51e3dc5f7eb0af8549234c) Regression with include argument (fixes #10911) (Loz Calver) - - 2023-08-08 [f34564648](https://github.com/silverstripe/silverstripe-framework/commit/f3456464810ec0e9d4cffbf2d22886ee41a807fc) Allow subclasses of ManyMany lists in EagerLoadedList (#10905) (Guy Sartorelli) - - 2023-08-07 [037168a4f](https://github.com/silverstripe/silverstripe-framework/commit/037168a4fe9759b7f464ee8403dab612a570bab6) Multi HTML entities in shortcodes (Sabina Talipova) - - 2023-08-04 [c9f48089c](https://github.com/silverstripe/silverstripe-framework/commit/c9f48089c9a8ce8d220b4ad42c32b8b56b0d87d1) Ensure DataList::eagerLoad() returns a clone (#10899) (Guy Sartorelli) - - 2023-08-04 [3628cec1f](https://github.com/silverstripe/silverstripe-framework/commit/3628cec1f33494632b492db51866b3a517514e93) Empty relations don't have extra DB calls with eager-loading (#10886) (Guy Sartorelli) - - 2023-07-31 [c58bc0a7f](https://github.com/silverstripe/silverstripe-framework/commit/c58bc0a7ffb94d969119da21f62534e202185f51) Use TransportFactory to prevent infinite config loop (Steve Boyd) - - 2023-07-29 [909bee810](https://github.com/silverstripe/silverstripe-framework/commit/909bee810194ec630f440fb610a45999acebd921) fix cache key (Thomas Portelange) - - 2023-07-29 [359cb1427](https://github.com/silverstripe/silverstripe-framework/commit/359cb1427afee373ea9ff00f8aea148fdd6ec9ed) include Silverstripe core files into roots (Thomas Portelange) - - 2023-07-24 [d24095aba](https://github.com/silverstripe/silverstripe-framework/commit/d24095aba8de6e3328859953f00e1c6a4ac00db3) Image in summaryfields breaks search (Sabina Talipova) - - 2023-07-20 [642321db6](https://github.com/silverstripe/silverstripe-framework/commit/642321db61b9790400a4c2c593092cab4c3ae6f2) Trigger eagerloading for first() and last() (#10875) (Guy Sartorelli) - - 2023-07-20 [7daa3fdb0](https://github.com/silverstripe/silverstripe-framework/commit/7daa3fdb0807a6360bd320eebecfc542a735bf8a) Short-array syntax for Enum (Steve Boyd) - - 2023-07-10 [3bf845a9e](https://github.com/silverstripe/silverstripe-framework/commit/3bf845a9e6c8ec2e38b3144626b0a7708d5cd6ea) Protect against loading incorrect eager-loaded relations. (Guy Sartorelli) - - 2023-07-10 [95d1c674a](https://github.com/silverstripe/silverstripe-framework/commit/95d1c674a289224e7e4b6da1ce906479cc6d6286) Allow multiple iterations of eager-loaded DataLists (Guy Sartorelli) - - 2023-07-07 [8c3ba8105](https://github.com/silverstripe/silverstripe-framework/commit/8c3ba810524f7bbcba92c36deb4194f84a0d075f) PHP 8.1 support in MySQLiConnector::query errors (#10570) (Dylan Wagstaff) - - 2023-07-06 [a03d0fdf6](https://github.com/silverstripe/silverstripe-framework/commit/a03d0fdf684e00d388b67af6ce9bdc99877709af) ListboxField entwine submissions (Andrew Paxley) - - 2023-07-06 [d0ca9cfdd](https://github.com/silverstripe/silverstripe-framework/commit/d0ca9cfdde01ae9c169decf59a95aae5b6acfa72) many_many extraFields and join records weren't in eagerloading (Guy Sartorelli) - - 2023-07-05 [612f7e734](https://github.com/silverstripe/silverstripe-framework/commit/612f7e734ff29b5a988d6840f0b90cead125bf97) Allow repeated iterations of predicated query result (#10857) (Guy Sartorelli) - - 2023-07-03 [7af0fe245](https://github.com/silverstripe/silverstripe-framework/commit/7af0fe245c1dcf45467c0c8cc0d6cf2c59c28f61) Resolve problems with eagerloading performance (Guy Sartorelli) - - 2023-06-26 [bb5378e17](https://github.com/silverstripe/silverstripe-framework/commit/bb5378e177b8924527a8a27607fc07979a2e795a) Gridfiled pagination missing after search (#10828) (Sabina Talipova) - - 2023-06-21 [ad9df9762](https://github.com/silverstripe/silverstripe-framework/commit/ad9df97626f0cba772a1f6066feb059f08f13938) LastPage method returns true if TotalPages equals 0 (Sabina Talipova) - - 2023-06-13 [35a8d79f6](https://github.com/silverstripe/silverstripe-framework/commit/35a8d79f624623527682eb3920327ca8aeb0b5cf) Show correct default value (Steve Boyd) - - 2023-06-12 [f4e0c768b](https://github.com/silverstripe/silverstripe-framework/commit/f4e0c768bdeeb3c2a379320eb219a6020c80ce08) Handle **TRAIT** in i18nTextCollector (Steve Boyd) - - 2023-06-12 [f88b7c3c2](https://github.com/silverstripe/silverstripe-framework/commit/f88b7c3c2be6fde3d02d7f1f88ffacfe89c45072) Duplicate page keeps original pages canView and canEdit permission (#10806) (Sabina Talipova) - - 2023-06-09 [33c62033f](https://github.com/silverstripe/silverstripe-framework/commit/33c62033fea1408d58721e7264725ffb65b9e04e) Fix translation key for DataObject.GENERALSEARCH (#10805) (Bram de Leeuw) - - 2023-06-07 [95eceb8d9](https://github.com/silverstripe/silverstripe-framework/commit/95eceb8d9e3652a5bc4c5b8f9f8fe74e87fffb0a) Ensure dir exists before scanning it (Steve Boyd) - - 2023-06-06 [face94371](https://github.com/silverstripe/silverstripe-framework/commit/face94371ee7fcccbe93cc5a522fc220eeaa8424) Passing 0 as first argument breaks template (dominik) - - 2023-05-22 [c4b8d9a24](https://github.com/silverstripe/silverstripe-framework/commit/c4b8d9a246c270c9bf1c4cd95a2bbbbfef79b4fa) Add back missing SSL support for database connections (#10784) (Guy Sartorelli) - - 2023-05-21 [f815a9cf2](https://github.com/silverstripe/silverstripe-framework/commit/f815a9cf2ab40921b1936b2ae76f21c89e793f7c) Provide correct replacement suggestion in deprecation message (Michal Kleiner) - - 2023-05-16 [696fe79dd](https://github.com/silverstripe/silverstripe-framework/commit/696fe79dd6f600bb35daff3cfa48182a19433252) Use OR conjuctive in filterAny aggregate queries (Steve Boyd) - - 2023-05-16 [2afb01463](https://github.com/silverstripe/silverstripe-framework/commit/2afb01463b6a116f4a1f99576b203c8837e384b8) Don't redirect admin URLs regardless of trailing slash (#10781) (Guy Sartorelli) - - 2023-05-16 [ef3b91417](https://github.com/silverstripe/silverstripe-framework/commit/ef3b91417a47fa48ece5a3499ce405a37eb05376) Get ApcuCacheFactory and MemcachedCacheFactory working again (Steve Boyd) - - 2023-05-11 [675ba9028](https://github.com/silverstripe/silverstripe-framework/commit/675ba90280e61b471dd4a77e39bcc724cd8c0009) fix issue where member without valid email can not be saved (Nicolaas / Sunny Side Up) - - 2023-05-08 [01808a831](https://github.com/silverstripe/silverstripe-framework/commit/01808a8316b182a438dfc5365cec8fffdb096c8e) Don't assume searchableFields() exists in gridfield filter (Guy Sartorelli) - - 2021-06-09 [5bb5ef80e](https://github.com/silverstripe/silverstripe-framework/commit/5bb5ef80ede8d75f2de05c8aaf367925269a14de) Form::defaultAction() didn't work if actions were in CompositeFields (fixes #9975) (Loz Calver) - -- silverstripe/admin (2.0.0 -> 2.1.0) - - 2023-09-27 [8c205f2d](https://github.com/silverstripe/silverstripe-admin/commit/8c205f2d4052077bff3a2f2bd8d0cad5915dfdf0) Validation error message with ValidationResult::addError (Sabina Talipova) - - 2023-09-19 [f9a151f3](https://github.com/silverstripe/silverstripe-admin/commit/f9a151f300c8887491a527fc0ca63d78f990b019) Clear filter from URL state (Steve Boyd) - - 2023-09-11 [8c89bb32](https://github.com/silverstripe/silverstripe-admin/commit/8c89bb32609509144cf8825511902c6163cf4f9e) Allow wrapping an image in a link (#1579) (Guy Sartorelli) - - 2023-09-06 [c9913dc3](https://github.com/silverstripe/silverstripe-admin/commit/c9913dc3a7477882b79ed7f8e9f7db90119bad52) Allow wrapping an image in a link (#1577) (Guy Sartorelli) - - 2023-08-29 [8c71ef1d](https://github.com/silverstripe/silverstripe-admin/commit/8c71ef1d87e070380f7e17a97f24b502ed988980) Focus on first search field (Sabina Talipova) - - 2023-08-29 [baf4f501](https://github.com/silverstripe/silverstripe-admin/commit/baf4f5018d286cb9be5c8e8c1ada87fabec2843b) Update TinyMCE CSS files (Steve Boyd) - - 2023-08-28 [886a626c](https://github.com/silverstripe/silverstripe-admin/commit/886a626c7dc21e729d40dc1c6f9ded8fcf53b3f3) Don't use state unnecessarily (Guy Sartorelli) - - 2023-08-03 [ee30f31e](https://github.com/silverstripe/silverstripe-admin/commit/ee30f31ec430c10e6aaa9bc1355c1a4a35004e5c) Popover toggle (Steve Boyd) - - 2023-06-14 [d6a3c470](https://github.com/silverstripe/silverstripe-admin/commit/d6a3c47023d1bff6985bdae0be0612c2dce0b031) Don't load a second TinyMCE instance from react (#1525) (Guy Sartorelli) - - 2023-06-13 [f12d38a8](https://github.com/silverstripe/silverstripe-admin/commit/f12d38a89abdd29052e162ef1bf07f889b84c3b9) Set current locale based on actual defined dictionaries (#1523) (Guy Sartorelli) - - 2023-06-13 [5697904a](https://github.com/silverstripe/silverstripe-admin/commit/5697904aafc683a9b95768f80f49f9b039857a13) Eslint and Storybook errors (Sabina Talipova) - - 2023-06-12 [83e6bc29](https://github.com/silverstripe/silverstripe-admin/commit/83e6bc291b9fdf563ed5f255d752a57c64c6b5e9) Replace 4 space indent with 2 spaces (Sabina Talipova) - - 2023-06-02 [fdad7a87](https://github.com/silverstripe/silverstripe-admin/commit/fdad7a87e3cba7e55ac029e065cf2b00c0cb75fa) Syntax error TinyMC when using special characters (#1517) (Sabina Talipova) - - 2023-05-19 [7738c603](https://github.com/silverstripe/silverstripe-admin/commit/7738c6035cce8407e48fda7846be0f36a70024d9) fix: update docs and user help urls (Izzudin Anuar) - - 2023-05-01 [7849e187](https://github.com/silverstripe/silverstripe-admin/commit/7849e1878cbdd3d152b317c1f3498731839ff332) TinyMCE custom config issue (Sabina Talipova) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0) - - 2023-09-25 [13b0155d](https://github.com/silverstripe/silverstripe-asset-admin/commit/13b0155da95c20208bbeb925e65195eec2fe3a20) Insert file link text is required (#1403) (Sabina Talipova) - - 2023-09-11 [66f307b2](https://github.com/silverstripe/silverstripe-asset-admin/commit/66f307b23e17943ce4df7af21ad9a33107120c79) Allow wrapping an image in a link (#1398) (Guy Sartorelli) - - 2023-09-07 [03973f98](https://github.com/silverstripe/silverstripe-asset-admin/commit/03973f987a3a0b56890c5013af02899528ebab18) Image tag is converted to shortcode even if it doesn't have parent node (#1395) (Sabina Talipova) - - 2023-09-06 [8a6ee41d](https://github.com/silverstripe/silverstripe-asset-admin/commit/8a6ee41d1f5f163548b6797bedd003eea37dd2e9) Allow wrapping an image in a link (#1397) (Guy Sartorelli) - - 2023-07-06 [3281ee87](https://github.com/silverstripe/silverstripe-asset-admin/commit/3281ee873fba1705853d409e11f88897fa803658) ESLint issues (#1371) (Sabina Talipova) - - 2023-06-19 [4be853dd](https://github.com/silverstripe/silverstripe-asset-admin/commit/4be853dd4a5f85c5d86b8e1ff9d84d8c86f7a8f9) Upload files issue in AssetDropzone (#1368) (Sabina Talipova) - - 2023-06-12 [8bfff8ee](https://github.com/silverstripe/silverstripe-asset-admin/commit/8bfff8eefdef7395ee55e96086aa6c57e0b86c58) Replace 4 space indent with 2 spaces (Sabina Talipova) - - 2023-05-10 [206cb48a](https://github.com/silverstripe/silverstripe-asset-admin/commit/206cb48a9e5590eca850a636d4a15a009f8aa32d) Broken Insert Image behat test (Sabina Talipova) - - 2023-05-04 [b5b16f02](https://github.com/silverstripe/silverstripe-asset-admin/commit/b5b16f02f6ae6221ec8c4d7e27e3867e04828654) Update deprecation notice with correct message (Sabina Talipova) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0) - - 2023-06-15 [73cc19d](https://github.com/silverstripe/silverstripe-versioned-admin/commit/73cc19da03bdef5a7002bac546bcee8ccd50a223) Handle no trailing slash in other tab of archive admin (Steve Boyd) - -- silverstripe/cms (5.0.0 -> 5.1.0) - - 2023-09-14 [061517ac](https://github.com/silverstripe/silverstripe-cms/commit/061517ac451766e21f668a4555bfdc9fd06581de) Regression issue UI URLSegment buttons (Sabina Talipova) - - 2023-09-11 [4a92f5eb](https://github.com/silverstripe/silverstripe-cms/commit/4a92f5eb64b7442e27ea79c96098912c03d9abeb) Allow wrapping an image in a link (#2884) (Guy Sartorelli) - - 2023-09-06 [ba578cfc](https://github.com/silverstripe/silverstripe-cms/commit/ba578cfc0673ee4a98dff6a01ac0ba045a862638) Allow wrapping an image in a link (#2883) (Guy Sartorelli) - - 2023-08-31 [269eb5d7](https://github.com/silverstripe/silverstripe-cms/commit/269eb5d70ce0266100288025c99c2904d8e66c2c) SiteTree::DependentPages method returns non-SiteTree instance (Sabina Talipova) - - 2023-06-12 [39fe63db](https://github.com/silverstripe/silverstripe-cms/commit/39fe63db8a2bdfbd649ce7f3e59e27366db5783c) Duplicate page keeps original pages canView and canEdit permission (#2859) (Sabina Talipova) - - 2023-05-08 [55eabd66](https://github.com/silverstripe/silverstripe-cms/commit/55eabd669459734f1661983dd8f6d1ff66102342) Don't require jQuery on the frontend (#2854) (Guy Sartorelli) - -- silverstripe/reports (5.0.0 -> 5.1.0) - - 2023-09-20 [a25d0432](https://github.com/silverstripe/silverstripe-reports/commit/a25d0432c42f8d76fdea9e14b088719c3a46626b) broken URL builder when using MultiSelectFields as parameters (Will Rossiter) - -- silverstripe/versioned (2.0.0 -> 2.1.0) - - 2023-06-14 [f98b817](https://github.com/silverstripe/silverstripe-versioned/commit/f98b8170bba1fa1bd5dab03d2db28f7c6e23e338) Return diff in ChangedFields() (#406) (Guy Sartorelli) - -- silverstripe/graphql (5.0.0 -> 5.1.0) - - 2023-08-21 [c74fa1c](https://github.com/silverstripe/silverstripe-graphql/commit/c74fa1cb7be7c642588b89fee2a323ddfa6dc0a8) Handle using injected subclasses (Steve Boyd) - - 2023-07-04 [2981640](https://github.com/silverstripe/silverstripe-graphql/commit/2981640b96bb9e2cfa41232b48f8a0b61e02fc5f) fix(SortPlugin): amend sorting to all fields (Chris Joe) - - 2023-05-25 [6c8d0d7](https://github.com/silverstripe/silverstripe-graphql/commit/6c8d0d743500a07ed80cc783e9872ecaaee70393) NestedInputBuilder doesn't work with nested '*' (mason) - -- silverstripe/session-manager (2.0.0 -> 2.1.0) - - 2023-08-11 [5b82124](https://github.com/silverstripe/silverstripe-session-manager/commit/5b821243461a7c81e2bda903bedfde195f55e468) fix missing variables (Thomas Portelange) - - 2023-08-10 [7ea28df](https://github.com/silverstripe/silverstripe-session-manager/commit/7ea28df5d9a6f22e4ec8a0ebe525637dede9f236) fix conflict (Thomas) - - 2023-06-12 [b731fab](https://github.com/silverstripe/silverstripe-session-manager/commit/b731faba88cab8daa1c02e717449e2ff23335dd7) Replace 4 space indent with 2 spaces (Sabina Talipova) - -- silverstripe/tagfield (3.0.0 -> 3.1.0) - - 2023-07-17 [efeb8b2](https://github.com/silverstripe/silverstripe-tagfield/commit/efeb8b224d34659eb903d354123729e855b898be) TagField triggers edit form change without changes (Sabina Talipova) - - 2023-06-12 [a2b1a82](https://github.com/silverstripe/silverstripe-tagfield/commit/a2b1a827347779e375025bb05cd09a96deefab94) Replace 4 space indent with 2 spaces (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0) - - 2023-05-10 [f8b2057](https://github.com/symbiote/silverstripe-advancedworkflow/commit/f8b205748756073963f3c0ebfa5d6408c9de4db0) Fix typo in userguide (Michal Kleiner) - - 2023-05-10 [788caf5](https://github.com/symbiote/silverstripe-advancedworkflow/commit/788caf5a99f3cd17cac266f3598e982c483b9413) Fix typo (Ed Wilde) - - 2021-07-08 [8bc9a24](https://github.com/symbiote/silverstripe-advancedworkflow/commit/8bc9a24d8197bb103d9d6c7b109f52849b470c08) Don't remove jobs when processing via publish job (Will Rossiter) - -- silverstripe/userforms (6.0.0 -> 6.1.0) - - 2023-09-11 [a7625eb](https://github.com/silverstripe/silverstripe-userforms/commit/a7625eb674634dfd905dea1781ad0bcb43185644) fix typo in translation key (Bauke Zwaan) - - 2023-09-05 [f1510dc](https://github.com/silverstripe/silverstripe-userforms/commit/f1510dca9e8527c3df65d14ac5a707124aa1cb1b) Renable email link to submitted file (Steve Boyd) - - 2023-08-17 [cf9a109](https://github.com/silverstripe/silverstripe-userforms/commit/cf9a109d3823472e54171bec29e961a5891189c0) Tighten routing rule for userforms ping action (#1224) (Tyler Trout) - - 2023-08-08 [60717e5](https://github.com/silverstripe/silverstripe-userforms/commit/60717e5c04cf3aa496b3a9838a4cd1851ef139e0) Use absolute URL for submitted file links in emails (#1226) (Guy Sartorelli) - - 2023-05-31 [bf49cab](https://github.com/silverstripe/silverstripe-userforms/commit/bf49cab67818552df3252daef4667757243a2b20) Prevent infinite recursion when field display rules are co-dependent (Steve Boyd) - - 2023-05-17 [7af0009](https://github.com/silverstripe/silverstripe-userforms/commit/7af0009321bbc7d910066cb317eb3245c5f792e2) Passing array to setReplyTo method instead of string (#1208) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0) - - 2023-10-11 [6e3180c](https://github.com/silverstripe/silverstripe-elemental/commit/6e3180c0b438fa32d185f1e6f66e737a8b4d2138) Apply multiupload auto-detection for upload fields (#1108) (Guy Sartorelli) - - 2023-10-10 [c205889](https://github.com/silverstripe/silverstripe-elemental/commit/c20588923bd62e6ad85963e1240ac33031475ecf) fix form submission, when form block is inside another block (sukhwinder-somar) - - 2023-09-20 [0af0645](https://github.com/silverstripe/silverstripe-elemental/commit/0af064530ea2c139f7fd81a503b141ad6d94d30b) Element::getPage returning the wrong page (Will Rossiter) - - 2023-08-21 [e17dbf1](https://github.com/silverstripe/silverstripe-elemental/commit/e17dbf10486e1a397fe2586c7ab002fc28167191) Save repeated database queries to fetch elemental area name (fixes #928) (Loz Calver) - - 2021-09-01 [fc19dc9](https://github.com/silverstripe/silverstripe-elemental/commit/fc19dc914cfbb51ff480f4f5c6158597f22a8e67) Retain value that failed validation on client side (Steve Boyd) - -- silverstripe/elemental-fileblock (3.0.0 -> 3.1.0) - - 2023-07-10 [2f06274](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/2f06274d2978d7a80b7f375199f6ef82a618ba01) HTML showing in inline preview (Sabina Talipova) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0) - - 2023-07-10 [450666c](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/450666cc5b7c06ccfd86889c639670de3df30b1a) HTML showing in inline preview (Sabina Talipova) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0) - - 2023-05-10 [2639d5a1](https://github.com/silverstripe/developer-docs/commit/2639d5a16b2f9f11526067cb93a3ddffd78b9a5b) Broken icon (#264) (Sabina Talipova) - -- silverstripe/environmentcheck (3.0.0 -> 3.0.1) - - 2023-05-19 [28ca036](https://github.com/silverstripe/silverstripe-environmentcheck/commit/28ca03634535a3cded21dc57406fb186818a14c8) Fix arguments order in SolrIndexCheck (Michal Kleiner) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0) - - 2023-10-05 [b77fbb4](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/b77fbb43841cc7c2f6c8db6904d11e0626fec04b) Expose localisations (#139) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0) - - 2023-06-14 [4549433](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/45494338169f677c95d029a6a08a77d77b5f1ed6) Don't mark mocked response as an error (#82) (Guy Sartorelli) - - 2023-05-23 [bbfeb2d](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/bbfeb2d60fd2e239b71141f248041385af5902d2) #80 check $gridField exists before calling getConfig() (Luke Fromhold) - -- silverstripe/realme (5.0.0 -> 5.2.0) - - 2023-10-09 [8bec110](https://github.com/silverstripe/silverstripe-realme/commit/8bec1107e31d564a63b995017fd3b64e2a55f298) Change "login" to "log in" when used as a verb (#122) (Guy Sartorelli) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0) - - 2023-10-05 [2b5c170](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/2b5c17066f12584dff539a4dde8ba110dd40782a) Expose localisations (#159) (Guy Sartorelli) - - 2023-09-21 [0075e3f](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/0075e3fc92f473c4c4b9315af63fa5c49b379c0d) Argument rpId must be of type string (Sabina Talipova) - - 2023-09-21 [7a95f20](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/7a95f205900b9e75976208d759d265859764dcfc) Pass AuthenticatorSelectionCriteria as argument to PublicKeyCredentialCreationOptions constructor (Sabina Talipova) - -- silverstripe/subsites (3.0.0 -> 3.1.0) - - 2023-08-28 [fe42821](https://github.com/silverstripe/silverstripe-subsites/commit/fe4282169b9d2e4f35e1107d87e263f1afc2a4a1) Set extraCodes to false for CMSProfileController (Steve Boyd) - -- silverstripe/lumberjack (3.0.0 -> 3.0.2) - - 2023-07-31 [ecefcdc](https://github.com/silverstripe/silverstripe-lumberjack/commit/ecefcdc48cc84516f7c173beef283b375f12577f) Remove infinite loop by reverting #127 (#129) (Guy Sartorelli) - - 2023-07-20 [fcdfcdf](https://github.com/silverstripe/silverstripe-lumberjack/commit/fcdfcdfb3037d3faa671e2606e0f242ca6d7cb62) Allow extension methods to be used in lumberjack (#127) (wernerkrauss) - -- silverstripe/staticpublishqueue (6.0.0 -> 6.1.0) - - 2022-10-05 [85a8ef9](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/85a8ef95a89cdc94634d6a4b1f6ed0a9e6c79872) Handle URLsToProcess being null (Kirk Mayo) - -- dnadesign/silverstripe-elemental-userforms (4.0.0 -> 4.1.0) - - 2023-09-25 [f5d2927](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/f5d292726ac243b4ade63fa018c55ad9f765e881) fix: added support for multiple form elements on one page (Rastislav Brandobur) - -- symbiote/silverstripe-multivaluefield (6.0.0 -> 6.0.2) - - 2023-10-06 [55a10fd](https://github.com/symbiote/silverstripe-multivaluefield/commit/55a10fd4960c4a2d7e0b928d21a0251f82dd5786) Fetch jQuery from a CDN since it can't come from admin (#90) (Sunny Side Up) - - 2023-01-16 [02742df](https://github.com/symbiote/silverstripe-multivaluefield/commit/02742df60737389aeecebfb8989a9e2909d5492a) Fix saving of CheckboxSetMultivalueField (Florian Thoma) - -- symbiote/silverstripe-gridfieldextensions (4.0.0 -> 4.0.3) - - 2023-08-14 [47171ee](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/47171ee4c25f552fb7bac80c1666775c24bcaac0) Allow editing extra fields from ManyManyThroughList. (Guy Sartorelli) - -### API changes {#changelog-api-changes} - -- silverstripe/vendor-plugin (2.0.0 -> 2.0.1) - - 2023-02-06 [2b85737](https://github.com/silverstripe/vendor-plugin/commit/2b857372fc5c44580add91b8ddc685c3bd12aa88) Deprecate publicPathExists() (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-06-19 [4b22ab4df](https://github.com/silverstripe/silverstripe-framework/commit/4b22ab4dfe8ee04e19d26f70d8fcbdbe92d81c06) deprecate InheritedPermissions::getJoinTable (Andrew Paxley) - - 2023-05-16 [b51bc427a](https://github.com/silverstripe/silverstripe-framework/commit/b51bc427aa6e2f58e0b2a07826095ff1c18902e6) Remove deprecated template vars (Mohamed Alsharaf) - - 2023-04-26 [73ef035bd](https://github.com/silverstripe/silverstripe-framework/commit/73ef035bd8ddfb6f386b78d4d9c957b4859d9a99) Add AbsoluteLink method to RequestHandler (#10749) (Guy Sartorelli) - -### Dependencies - -- silverstripe/recipe-kitchen-sink (5.0.0 -> 5.1.0) - - 2023-06-12 [891be0b](https://github.com/silverstripe/recipe-kitchen-sink/commit/891be0bbc673a3ffcd07a7d567f024beceeb4665) Remove unsupported modules (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-05-30 [80c51b6bd](https://github.com/silverstripe/silverstripe-framework/commit/80c51b6bd2e719d8afe9f79d13e0ca10d4e71ffc) Explicitly require psr/HTTP-message ^1 (Steve Boyd) - - 2023-05-24 [e55451619](https://github.com/silverstripe/silverstripe-framework/commit/e554516193afd6f3cf2762b3809b48f1c05590d0) Explicitly require psr/HTTP-message ^1 (Steve Boyd) - -- silverstripe/admin (2.0.0 -> 2.1.0) - - 2023-08-30 [724d8453](https://github.com/silverstripe/silverstripe-admin/commit/724d8453af444de927b5fce1babd45e0cbf3b0ad) Update JS dependencies (#1569) (GitHub-actions[bot]) - - 2023-08-24 [8851fe36](https://github.com/silverstripe/silverstripe-admin/commit/8851fe3603ec6b0ccd29f57e14cc353fd811990b) Update JS dependencies and update TinyMCE_sslink.js onunmatch() (Steve Boyd) - - 2023-07-11 [c0ed41ce](https://github.com/silverstripe/silverstripe-admin/commit/c0ed41ce469d7c9edc2df9d4df86fb6eba732a33) Update eslint module (#1535) (Sabina Talipova) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0) - - 2023-08-23 [959966b3](https://github.com/silverstripe/silverstripe-asset-admin/commit/959966b32a21ae722652c83939a4aed2a9f1198c) Update JS dependencies (#1390) (GitHub-actions[bot]) - - 2023-07-11 [a9f6a311](https://github.com/silverstripe/silverstripe-asset-admin/commit/a9f6a3116214401b4af16acda2f3f3ff135f911a) Update eslint module (#1373) (Sabina Talipova) - -- silverstripe/campaign-admin (2.0.0 -> 2.1.0) - - 2023-08-23 [b8c3108](https://github.com/silverstripe/silverstripe-campaign-admin/commit/b8c3108a77bb1bd1b34145762e1601781e934d68) Update JS dependencies (#278) (GitHub-actions[bot]) - - 2023-07-11 [9e5e00b](https://github.com/silverstripe/silverstripe-campaign-admin/commit/9e5e00bb13b88e12e34091667ec93abcc647c890) Update eslint module (#273) (Sabina Talipova) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0) - - 2023-08-23 [1ae7961](https://github.com/silverstripe/silverstripe-versioned-admin/commit/1ae79617848ffe0fff2c63e988704c31b688649b) Update JS dependencies (#306) (GitHub-actions[bot]) - - 2023-07-11 [fc60dac](https://github.com/silverstripe/silverstripe-versioned-admin/commit/fc60dac7d78699652bcfa1f3298a5d8dd70b2e5c) Update eslint module (#299) (Sabina Talipova) - -- silverstripe/cms (5.0.0 -> 5.1.0) - - 2023-08-30 [2799ef3b](https://github.com/silverstripe/silverstripe-cms/commit/2799ef3b3975f2ea0804aa32e76ed2fbc84838b5) Update JS dependencies (#2878) (GitHub-actions[bot]) - - 2023-07-11 [c831b1be](https://github.com/silverstripe/silverstripe-cms/commit/c831b1be6b2ad35b26f8b0061ffef78f32a9d769) Update eslint module (#2868) (Sabina Talipova) - -- silverstripe/session-manager (2.0.0 -> 2.1.0) - - 2023-08-23 [1128742](https://github.com/silverstripe/silverstripe-session-manager/commit/11287422d3925e37fb1e00d4cf0634539c69f82b) Update JS dependencies (#168) (GitHub-actions[bot]) - - 2023-07-11 [b63bac3](https://github.com/silverstripe/silverstripe-session-manager/commit/b63bac3d7ca518a9588abcd8b138faa20a6c16b5) Update eslint module (Sabina Talipova) - -- silverstripe/login-forms (5.0.0 -> 5.1.0) - - 2023-08-23 [8d74414](https://github.com/silverstripe/silverstripe-login-forms/commit/8d744140003f67928717933b637d8240eae8ff5e) Update JS dependencies (#153) (GitHub-actions[bot]) - - 2023-08-03 [15f5f83](https://github.com/silverstripe/silverstripe-login-forms/commit/15f5f83e5e99366322b7815218c5a52b4b675e70) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [d7f7e6b](https://github.com/silverstripe/silverstripe-login-forms/commit/d7f7e6bcb8e1e7866d001227178c558e89bb46aa) Update eslint module (#143) (Sabina Talipova) - -- silverstripe/documentconverter (3.0.0 -> 3.1.0) - - 2023-08-03 [bde3513](https://github.com/silverstripe/silverstripe-documentconverter/commit/bde3513b692069c014a408c300c1b8ce0d3ea031) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [0112713](https://github.com/silverstripe/silverstripe-documentconverter/commit/0112713e868f79b23d8306cde84d14514b7a8aa1) Update eslint module (Sabina Talipova) - -- silverstripe/tagfield (3.0.0 -> 3.1.0) - - 2023-08-23 [d1c02ca](https://github.com/silverstripe/silverstripe-tagfield/commit/d1c02ca80032bad041ffcd48502469d4451de5f2) Update JS dependencies (#258) (GitHub-actions[bot]) - - 2023-07-11 [61cf375](https://github.com/silverstripe/silverstripe-tagfield/commit/61cf3751ab4bbdc7dce4ef8eeb48291f5e9279c3) Update eslint module (#250) (Sabina Talipova) - -- silverstripe/recipe-blog (2.0.0 -> 2.1.0) - - 2023-06-12 [b2ae936](https://github.com/silverstripe/recipe-blog/commit/b2ae936253ee650d74f13c564008f539865975de) Remove unsupported modules (Steve Boyd) - -- silverstripe/blog (4.0.0 -> 4.1.0) - - 2023-08-23 [1f3878b](https://github.com/silverstripe/silverstripe-blog/commit/1f3878bc3f689058b6bccf90704e5810fd240dcd) Update JS dependencies (#725) (GitHub-actions[bot]) - - 2023-07-19 [23fd31c](https://github.com/silverstripe/silverstripe-blog/commit/23fd31c1058e93034b861528b27d85c465f412e8) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [1514d0b](https://github.com/silverstripe/silverstripe-blog/commit/1514d0b9824f70578d8b1dec05529a9601e67ea8) Update eslint module (#716) (Sabina Talipova) - -- silverstripe/contentreview (5.0.0 -> 5.1.0) - - 2023-08-23 [fd1fd08](https://github.com/silverstripe/silverstripe-contentreview/commit/fd1fd08db07ae0f5605c60a3fc023541d631b3e5) Update JS dependencies (#210) (GitHub-actions[bot]) - - 2023-07-11 [a571e5d](https://github.com/silverstripe/silverstripe-contentreview/commit/a571e5d8f893c8562c02884eba028a0830512f13) Update eslint module (#205) (Sabina Talipova) - -- silverstripe/sharedraftcontent (3.0.0 -> 3.1.0) - - 2023-08-04 [402eee7](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/402eee71adc2714a70c0d57a5ebb484967006192) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-08-04 [5a6c069](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/5a6c0694178d1937e03e6788519b28ba8d359992) Bump semver from 6.3.0 to 6.3.1 (dependabot[bot]) - - 2023-07-01 [69170f8](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/69170f8204a0bed26c708e3a2f0bd783daaca4d1) Update JS dependencies (GitHub-actions) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0) - - 2023-07-11 [31a7ff2](https://github.com/symbiote/silverstripe-advancedworkflow/commit/31a7ff2a66423073c132d11c19045f4e3939c03c) Update eslint module (#498) (Sabina Talipova) - -- silverstripe/segment-field (3.0.0 -> 3.1.0) - - 2023-08-23 [f3cb3f3](https://github.com/silverstripe/silverstripe-segment-field/commit/f3cb3f34e82fa96c71f9afe261f9a01fe94a3b52) Update JS dependencies (#89) (GitHub-actions[bot]) - - 2023-07-18 [0827a2a](https://github.com/silverstripe/silverstripe-segment-field/commit/0827a2a5d8546cd6dfa6fba8144d9e300a2c4476) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [727267a](https://github.com/silverstripe/silverstripe-segment-field/commit/727267ac08ced81330b2c317786ea7260985f4dc) Update eslint module (#83) (Sabina Talipova) - -- silverstripe/userforms (6.0.0 -> 6.1.0) - - 2023-08-31 [16c3c51](https://github.com/silverstripe/silverstripe-userforms/commit/16c3c5122d98055884899b8fba89a63fa0310adb) Update JS dependencies (#1235) (GitHub-actions[bot]) - - 2023-07-11 [2d89d1b](https://github.com/silverstripe/silverstripe-userforms/commit/2d89d1baaaf941cae6bd7d304b225628890227f1) Update eslint module (#1222) (Sabina Talipova) - -- silverstripe/externallinks (3.0.0 -> 3.1.0) - - 2023-07-11 [be7b01c](https://github.com/silverstripe/silverstripe-externallinks/commit/be7b01c1f8ff50faec72e8e9ded94e4af6973d5f) Update eslint module (#104) (Sabina Talipova) - -- silverstripe/sitewidecontent-report (4.0.0 -> 4.1.0) - - 2023-07-20 [9962192](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/9962192acab764698bace30d63fef994e014adc3) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [8488af8](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/8488af88acbde8d47fdf50e0b88aa5774bd8b2d2) Update eslint module (#67) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0) - - 2023-08-30 [9553867](https://github.com/silverstripe/silverstripe-elemental/commit/955386728591bfc54de36dc6b1ebe2039451981a) Update JS dependencies (#1095) (GitHub-actions[bot]) - - 2023-07-11 [e8219c4](https://github.com/silverstripe/silverstripe-elemental/commit/e8219c47a368ed121fdfe2c95288d574f6ca9f4a) Update eslint module (#1075) (Sabina Talipova) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0) - - 2023-08-23 [d2d790d](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/d2d790df31a54ac99f327854755dd4af754d45a2) Update JS dependencies (#124) (GitHub-actions[bot]) - - 2023-07-18 [f4cc10a](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/f4cc10afeb7dce356798be532336177baac05bff) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [7fcf870](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7fcf870335c36f76aafa5475e85cb20289f4787c) Update eslint module (#118) (Sabina Talipova) - - 2023-07-10 [6bc48b9](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/6bc48b9da3042df91d261d8030cb960defa4f053) Bump tough-cookie from 4.1.2 to 4.1.3 (dependabot[bot]) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0) - - 2023-08-23 [778e98a](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/778e98aff8ecb606d80b4838799d4a2d437863f9) Update JS dependencies (#135) (GitHub-actions[bot]) - - 2023-07-18 [da9572c](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/da9572c9d6c2a20db371683f4220965505ac863e) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [9ea9c5e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/9ea9c5e890279d7c7f479a15f52ef800b9b3e9a8) Update eslint module (#128) (Sabina Talipova) - -- silverstripe/mfa (5.0.0 -> 5.1.0) - - 2023-08-31 [f51d8ff](https://github.com/silverstripe/silverstripe-mfa/commit/f51d8fff48eecd254c651ad3473860a66280832a) Update JS dependencies (#509) (GitHub-actions[bot]) - - 2023-07-11 [29260f1](https://github.com/silverstripe/silverstripe-mfa/commit/29260f19fc2129043ef353e93160ead235870d94) Update eslint module (#503) (Sabina Talipova) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0) - - 2023-07-20 [3d6a045](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/3d6a045bc366212f5ffdf55768b6e42e49d1f8b8) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [a2d6df3](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/a2d6df3c31e039f8ed39130ad45e398dafc83594) Update eslint module (#84) (Sabina Talipova) - -- silverstripe/realme (5.0.0 -> 5.2.0) - - 2023-07-20 [e653cff](https://github.com/silverstripe/silverstripe-realme/commit/e653cff5c211d65b4dfc9ec761cacee33a5159a7) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [cc05ad3](https://github.com/silverstripe/silverstripe-realme/commit/cc05ad3ef7993cef0e33e12179d5be8e6ceb5c38) Update eslint module (#115) (Sabina Talipova) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0) - - 2023-08-23 [6f29cd1](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/6f29cd1556f8da7e39cd1c929efb7a5ae419d90a) Update JS dependencies (#155) (GitHub-actions[bot]) - - 2023-07-18 [9750907](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/97509077b94197f36ef46993cf322cd865602fd1) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [781acec](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/781acec34ed58ab3cc4f76274659b067806e9dfc) Update eslint module (#147) (Sabina Talipova) - - 2023-07-10 [a1d1476](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/a1d1476df912a3365cde742bf40590017553c2f5) Bump tough-cookie from 4.1.2 to 4.1.3 (dependabot[bot]) - -- silverstripe/subsites (3.0.0 -> 3.1.0) - - 2023-07-20 [7232bcf](https://github.com/silverstripe/silverstripe-subsites/commit/7232bcff9e2a19f71cd4b43b46fafdbcc26a2c33) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [1d1f265](https://github.com/silverstripe/silverstripe-subsites/commit/1d1f2658224b5b4dea04ec5b8706ffc41771b10d) Update eslint module (#530) (Sabina Talipova) - -- cwp/agency-extensions (3.0.0 -> 3.1.0) - - 2023-08-30 [1ee158f](https://github.com/silverstripe/cwp-agencyextensions/commit/1ee158f7a5eaa81a22b15d2d62c06b757e2e0169) Update JS dependencies (#103) (GitHub-actions[bot]) - - 2023-07-11 [4631ce7](https://github.com/silverstripe/cwp-agencyextensions/commit/4631ce7fde98800946dd3166fae2dd1cd5af3bda) Update eslint module (#98) (Sabina Talipova) - -- silverstripe/dynamodb (5.0.0 -> 5.0.1) - - 2023-09-07 [0b2f879](https://github.com/silverstripe/silverstripe-dynamodb/commit/0b2f879d9a9e09566945fc3d0649692bb32d86b3) Update minimum version of aws/aws-sdk-PHP (Steve Boyd) - -### Documentation - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-06-21 [e9358c88a](https://github.com/silverstripe/silverstripe-framework/commit/e9358c88af35492c4af06386198ddcee5c8c1182) Update eagerLoad() docblock (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0) - - 2023-02-14 [c0e4994](https://github.com/silverstripe/silverstripe-elemental/commit/c0e49940e5cccdf55f6fa446b3e5cd2083e2cadd) Update documentation for CMS 5 version of elemental (#1008) (Guy Sartorelli) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0) - - 2023-10-16 [c2bb37f7](https://github.com/silverstripe/developer-docs/commit/c2bb37f76a2779765f4ccba27625858fffc526ea) Document protections against malicious queries (#375) (Guy Sartorelli) - - 2023-10-13 [871cce50](https://github.com/silverstripe/developer-docs/commit/871cce503fc806b9fb5adbc5daad7be4bda46f4c) Update contributing code page (#358) (Guy Sartorelli) - - 2023-10-12 [631274cc](https://github.com/silverstripe/developer-docs/commit/631274cc8bd512830673d106adab3aae493dc553) Update security issues docs (#371) (Guy Sartorelli) - - 2023-10-12 [863cf997](https://github.com/silverstripe/developer-docs/commit/863cf9975a49ffa8c10f74730e6961d0d3769c4b) Move labels into issues page (#359) (Guy Sartorelli) - - 2023-10-12 [afed78da](https://github.com/silverstripe/developer-docs/commit/afed78da12690ed833352189cf945cf717270cb7) Update index for contributing docs (#372) (Guy Sartorelli) - - 2023-10-12 [d93d07c8](https://github.com/silverstripe/developer-docs/commit/d93d07c82ed2cabbb251692d4c07ddf5589ef323) Update triage and review docs (#370) (Guy Sartorelli) - - 2023-10-12 [867cf7ab](https://github.com/silverstripe/developer-docs/commit/867cf7ab331f23f3284f893fa5b2df49aa402672) Update translation docs (#369) (Guy Sartorelli) - - 2023-10-12 [30c28d52](https://github.com/silverstripe/developer-docs/commit/30c28d52a825d40e1dfc98a5188340f2070d0df5) Remove references to quarterly releases. (#368) (Guy Sartorelli) - - 2023-10-12 [67816151](https://github.com/silverstripe/developer-docs/commit/67816151d5991b626a4055c60a427822b9f3e592) Update contributing docs page (#367) (Guy Sartorelli) - - 2023-10-12 [37e31377](https://github.com/silverstripe/developer-docs/commit/37e3137727fa044714049ada0921218cfb8b8e67) Remove doc about how to make a release (#362) (Guy Sartorelli) - - 2023-10-12 [439f1c08](https://github.com/silverstripe/developer-docs/commit/439f1c080c471416004c2ae0cdd86aa06f862209) Update build tooling docs (#361) (Guy Sartorelli) - - 2023-10-12 [01c3692e](https://github.com/silverstripe/developer-docs/commit/01c3692e0a58e4a0e32cbca6c6598b63a85fce43) Update bug reports page (#357) (Guy Sartorelli) - - 2023-10-06 [4407a5b2](https://github.com/silverstripe/developer-docs/commit/4407a5b2422391305903b2e747ba45db71a952b3) Fix broken syntax (Guy Sartorelli) - - 2023-10-06 [09c1df4e](https://github.com/silverstripe/developer-docs/commit/09c1df4e1ab176e1f9b05a65086c090dfe8ae33e) Fix API links on fluent upgrade page (Guy Sartorelli) - - 2023-10-06 [f4ec6b44](https://github.com/silverstripe/developer-docs/commit/f4ec6b44cbcfc37b98b9a69f38027d99eaa32532) Make error log file path absolute (Guy Sartorelli) - - 2023-09-28 [cb160785](https://github.com/silverstripe/developer-docs/commit/cb160785200c35e93661299fb4868c9a6a3f138b) Add clarification about benchmark results (Guy Sartorelli) - - 2023-09-26 [3f66ce3a](https://github.com/silverstripe/developer-docs/commit/3f66ce3a963827a9568c4fe2f5767e8f93398583) Move orderBy docs to raw SQL section. (Guy Sartorelli) - - 2023-09-20 [79e39d37](https://github.com/silverstripe/developer-docs/commit/79e39d37bb45e0deb15a610ec4c49bd503c77b70) Return validator (Steve Boyd) - - 2023-09-12 [878fd56b](https://github.com/silverstripe/developer-docs/commit/878fd56bbf6aee9e8a29262da2252a08cdcbc8d1) Add missing information to 5.1.0 changelog (#346) (Guy Sartorelli) - - 2023-09-04 [e1c0825c](https://github.com/silverstripe/developer-docs/commit/e1c0825c06c29c201e1421a5460f07915e185dd8) Add dynamodb (Steve Boyd) - - 2023-09-04 [65ffecfc](https://github.com/silverstripe/developer-docs/commit/65ffecfc7d9d1e0fdcd8f7ee19b7eb5117eedef2) Add dynamodb (Steve Boyd) - - 2023-08-29 [b45605ee](https://github.com/silverstripe/developer-docs/commit/b45605ee80cee3fbaac3d1f19e24cb60a678a802) Document changes from silverstripe/silverstripe-framework#10925 (#335) (Guy Sartorelli) - - 2023-08-28 [e947f451](https://github.com/silverstripe/developer-docs/commit/e947f45131b4807ea0a6dd7bfcb1da0462e16627) Close hint block (#316) (Guy Sartorelli) - - 2023-08-28 [f590481b](https://github.com/silverstripe/developer-docs/commit/f590481b59719f15a933b081571fa7a93810cc20) Performance improvements for changelog (Steve Boyd) - - 2023-08-23 [a0d6a9a5](https://github.com/silverstripe/developer-docs/commit/a0d6a9a5fe6cff043be9b6c3cc6dbdd3fa448131) Correct hyperlink (Nate Devereux) - - 2023-08-22 [9797fc17](https://github.com/silverstripe/developer-docs/commit/9797fc171de50d3ed3c6eb9b75d0a321a8ac9e75) Staticpublishqueue changelog entry (Steve Boyd) - - 2023-08-17 [5b9afdd4](https://github.com/silverstripe/developer-docs/commit/5b9afdd4dc3c5c2b8bedda2d12c9fb6a5547c461) Document maximumLimit in GraphQL schema (#329) (Guy Sartorelli) - - 2023-08-15 [0161d551](https://github.com/silverstripe/developer-docs/commit/0161d551b2c9db2c4d6bee9f61fba8909dc8a559) Add note about limiting session garbage collection (#328) (Guy Sartorelli) - - 2023-08-15 [6c50a46b](https://github.com/silverstripe/developer-docs/commit/6c50a46b43ea07977b87e7932b3ac08ba142e962) Add session-manager documentation (Steve Boyd) - - 2023-08-14 [43b6b282](https://github.com/silverstripe/developer-docs/commit/43b6b2828b418be83175bb482c586344bb56adda) Changelog session manager anonymize IP addresses (Steve Boyd) - - 2023-08-14 [ef31438e](https://github.com/silverstripe/developer-docs/commit/ef31438ef571564554ad9a64042bfdaecab8d06b) Document FieldsValidator (#319) (Guy Sartorelli) - - 2023-08-11 [6f0f2e53](https://github.com/silverstripe/developer-docs/commit/6f0f2e53a9ff6f7e8244011b28628c825b62914f) Document fixed issue with non-db summary_fields (Guy Sartorelli) - - 2023-08-11 [a7744574](https://github.com/silverstripe/developer-docs/commit/a7744574f4ff0e7a6a6f7df9147f9135a3fe5b06) Add note about FieldsValidator to 5.1 changelog (Guy Sartorelli) - - 2023-08-08 [916cb8ec](https://github.com/silverstripe/developer-docs/commit/916cb8ec3ca3fa2f760276eff4c0ccae946b7f1e) Update namespace for use_placeholders_for_integer_ids (Steve Boyd) - - 2023-08-07 [e2fc0056](https://github.com/silverstripe/developer-docs/commit/e2fc0056fb5143d6a54edaf80114256073c9c579) Use correct class for keep_archived_assets config (Steve Boyd) - - 2023-08-03 [89c801eb](https://github.com/silverstripe/developer-docs/commit/89c801ebf20afc5ff678c61803fcdd40c608b40e) Document new EagerLoadedDataList (#305) (Guy Sartorelli) - - 2023-07-31 [b6e54b10](https://github.com/silverstripe/developer-docs/commit/b6e54b10756ab02684e913bd75d925867e0195cc) Add severity rating for CVSS score of 0 (#306) (Guy Sartorelli) - - 2023-07-31 [0a187eae](https://github.com/silverstripe/developer-docs/commit/0a187eae0ab33b460c538d7b2a90698796f22b70) Warnings about searchable_fields content (Sabina Talipova) - - 2023-07-25 [2995e23a](https://github.com/silverstripe/developer-docs/commit/2995e23ac1ca2f648ade58b60b92fe30ad962879) SQL placeholders (Steve Boyd) - - 2023-07-11 [68b1be25](https://github.com/silverstripe/developer-docs/commit/68b1be25f9d7c71935c6bfd50f10a2c6907bedad) Changelog for FileBlock::getSummaryThumbnail (Sabina Talipova) - - 2023-07-06 [32ddcf4a](https://github.com/silverstripe/developer-docs/commit/32ddcf4a8db447a7a77075a0808ce70b02f4a296) Document new "Only these users" permission (#298) (Guy Sartorelli) - - 2023-07-05 [051908d4](https://github.com/silverstripe/developer-docs/commit/051908d4f938d5b5037990583bc836882a3173f2) Changelog for SearchContext::getQuery() parameter (#294) (Sabina Talipova) - - 2023-07-05 [657246c4](https://github.com/silverstripe/developer-docs/commit/657246c472ee0bc9f39561dd2443db526bd0cfed) CMS 4 Supported modules (Steve Boyd) - - 2023-07-04 [7f5ca7ce](https://github.com/silverstripe/developer-docs/commit/7f5ca7ce9bf1bc203531ad33b5505a0a5bfddf81) Call out ListboxField react component (#295) (Guy Sartorelli) - - 2023-07-04 [24a3893c](https://github.com/silverstripe/developer-docs/commit/24a3893c1ff309c27c1a4eeafb87f53194724b7a) Changelog CMS search with elemental (Steve Boyd) - - 2023-07-03 [5ffb99ef](https://github.com/silverstripe/developer-docs/commit/5ffb99ef7a48b115b0fe4bcd52be871f8c472d9b) Update i18n (Antony Thorpe) - - 2023-06-27 [cd758f5d](https://github.com/silverstripe/developer-docs/commit/cd758f5d2af16ba31a5ada78a35144c2871912c0) Document storing gql schema in cache dir (#257) (Guy Sartorelli) - - 2023-06-25 [380b81ae](https://github.com/silverstripe/developer-docs/commit/380b81ae4289b1f49b04447ab9961f320c2316fb) Correct bad enum syntax (Maxime Rainville) - - 2023-06-22 [ef4d8a57](https://github.com/silverstripe/developer-docs/commit/ef4d8a575fe4924388346258ddcef8c5d4e37eeb) Fix typo in Introduction.md (Maxime Rainville) - - 2023-06-16 [8fa5dd06](https://github.com/silverstripe/developer-docs/commit/8fa5dd0614e11d803e65156db0fa80b1bae07fd0) Update undefinedoffset-sortablegridfield info (Sabina Talipova) - - 2023-06-14 [362f86dd](https://github.com/silverstripe/developer-docs/commit/362f86dd6887647a7e876c0c6b6786a266a596dc) Quote all YAML service definitions (#285) (Guy Sartorelli) - - 2023-06-13 [08f04c86](https://github.com/silverstripe/developer-docs/commit/08f04c86ea6f4097027e6bb1ab7fffcaaad3c5fb) Review extending docs for truthfulness (#273) (Guy Sartorelli) - - 2023-06-12 [9d5b988a](https://github.com/silverstripe/developer-docs/commit/9d5b988a14d1cf46b6cec728290941202265e5b7) silverstripe/widgets removed (Steve Boyd) - - 2023-06-12 [bcd9d7fa](https://github.com/silverstripe/developer-docs/commit/bcd9d7fae8cf9f15f14c7e465af5fa4ad96aa025) cascade_duplicates property in SiteTree class (#282) (Sabina Talipova) - - 2023-06-08 [51b63278](https://github.com/silverstripe/developer-docs/commit/51b632788f1eb2c25c1b9cba2e8f103a9c5d58bf) Eager loading (Steve Boyd) - - 2023-06-08 [b450bad0](https://github.com/silverstripe/developer-docs/commit/b450bad0cdda3638bfd17c55eaebe318ca05d22f) BuildTask is_enabled config (Steve Boyd) - - 2023-06-07 [ffbd5979](https://github.com/silverstripe/developer-docs/commit/ffbd59793b3e9003e0a8076118c89c3dd7b2ab20) Use HTMLValue (Steve Boyd) - - 2023-05-22 [08d0828d](https://github.com/silverstripe/developer-docs/commit/08d0828de3d552ea0a52aed15fba2f24238bebd9) Document the requirement to install Composer 2 (#275) (Guy Sartorelli) - - 2023-05-22 [de1a71f5](https://github.com/silverstripe/developer-docs/commit/de1a71f555e6dabd655914faa8b9187940511644) Add note in 5.1 changelog about DB SSL (#272) (Guy Sartorelli) - - 2023-05-22 [3068943e](https://github.com/silverstripe/developer-docs/commit/3068943e3516edd44a4702ac844d6eb0177de9cc) Document using SSL for db connections (#271) (Guy Sartorelli) - - 2023-05-18 [1c6adfca](https://github.com/silverstripe/developer-docs/commit/1c6adfcaca26062c574006d09e5bae6882cb9380) Update configuration docs (#268) (Guy Sartorelli) - - 2023-05-17 [588ba477](https://github.com/silverstripe/developer-docs/commit/588ba47745eb5de44726f39aa8441a9d1434ee0a) fix partial caching config example (Jono Menz) - - 2023-05-16 [f9a19089](https://github.com/silverstripe/developer-docs/commit/f9a19089f6b30e08789ff930a9ae15cd3f1b469e) Add additional context to CMS 5 changelog (#267) (Guy Sartorelli) - - 2023-05-16 [7d296b4c](https://github.com/silverstripe/developer-docs/commit/7d296b4c40ee7e371af55c506c259588a5c7e94c) filterAny() many-many aggregate conjunction (Steve Boyd) - - 2023-05-15 [b9bdbbbf](https://github.com/silverstripe/developer-docs/commit/b9bdbbbf645a893d7686906abcdb3630b5b6344c) Require password field to be non-empty (Steve Boyd) - See [cve-2023-32302](https://www.silverstripe.org/download/security-releases/cve-2023-32302) - - 2023-05-14 [c5e02441](https://github.com/silverstripe/developer-docs/commit/c5e0244193a3d049ad05bbecc9bf5dec22a3d507) Review forms section (#254) (Guy Sartorelli) - - 2023-05-08 [14b5ece1](https://github.com/silverstripe/developer-docs/commit/14b5ece1f1aef862c1427aa234f0ff63e35e88dd) Document changes to i18nTextCollector (Guy Sartorelli) - - 2023-05-04 [0c57c585](https://github.com/silverstripe/developer-docs/commit/0c57c5858ea9642c32d41b8d5a93f841289a77d7) Updated recommendation for depreceted class Silverstripe\View\Embed\EmbedResource (Sabina Talipova) - - 2023-05-04 [a1b5b8ce](https://github.com/silverstripe/developer-docs/commit/a1b5b8ce3e687791f0290ab47537fa19ad0256c5) Remove links for unsupported modules (Sabina Talipova) - - 2023-05-04 [a68fb70c](https://github.com/silverstripe/developer-docs/commit/a68fb70c7117c50daf77ce2bf71c0b2b3963bd01) Add note regarding the split of the activedirectory module into the saml and ldap modules. (Matt Peel) - - 2023-05-04 [58968964](https://github.com/silverstripe/developer-docs/commit/58968964df1da0d25eb0599c127020279aafa26f) Fix anchor link to full commits list (Guy Sartorelli) - - 2023-04-19 [1ddb6dfb](https://github.com/silverstripe/developer-docs/commit/1ddb6dfba51aba54537db64d3a6439c798699267) remove core committer (Stevie Mayhew) - - 2023-04-10 [27d4ab93](https://github.com/silverstripe/developer-docs/commit/27d4ab93620eecf440bf83231bf09701e8a6e771) Document the changes in silverstripe/silverstripe-framework#10735 (Guy Sartorelli) - - 2023-04-03 [fda0ccbd](https://github.com/silverstripe/developer-docs/commit/fda0ccbd73f9fd12dc1fff7fb937155074d3ae53) Add additional context about excluding models from db checks (Guy Sartorelli) - - 2023-04-03 [cb7f3756](https://github.com/silverstripe/developer-docs/commit/cb7f37567a1eb7eb16bbc0f925e272af01daf542) Add section on ORM performance (#201) (Guy Sartorelli) - - 2023-03-13 [e6764a37](https://github.com/silverstripe/developer-docs/commit/e6764a373ec8ea8f328e6af2b99b4aaf6a180090) Fix minor typos to Major release policy (Maxime Rainville) - - 2023-03-08 [fad702f3](https://github.com/silverstripe/developer-docs/commit/fad702f3df74be687c2535edf3c1bd13379f3b15) Clarify when we will consider changing a module name or namespace (Maxime Rainville) - -- silverstripe/dynamodb (5.0.0 -> 5.0.1) - - 2023-09-07 [437f71a](https://github.com/silverstripe/silverstripe-dynamodb/commit/437f71a1b7165ffcc3ef48cd08c8953336e69b04) Update README (Steve Boyd) - -### Other changes - -- silverstripe/installer (5.0.0 -> 5.1.0) - - 2023-06-04 [d371ae7](https://github.com/silverstripe/silverstripe-installer/commit/d371ae7dc3cff1f1530e6db8a574ab4f26bbd077) Fixed link to V5 "Contributing Code" Docs (minimalic) - -- silverstripe/assets (2.0.0 -> 2.1.0) - - 2023-08-10 [418906d](https://github.com/silverstripe/silverstripe-assets/commit/418906dc504fea7863eb151b52e0060e329e38f5) use dbObject (Thomas Portelange) - - 2023-08-03 [4bf41f3](https://github.com/silverstripe/silverstripe-assets/commit/4bf41f3d2420784afde0a732e4c5c341254196c4) Update FileLinkTracking.PHP (Thomas Portelange) - - 2023-06-25 [43aecdb](https://github.com/silverstripe/silverstripe-assets/commit/43aecdb90951e35cc512c6a4520f204d3f85a998) use strong return type (Thomas Portelange) - - 2023-06-23 [41dc93c](https://github.com/silverstripe/silverstripe-assets/commit/41dc93cf47d63ff7ec4ec8df97a7f3a74a42f561) make it private (Thomas Portelange) - - 2023-06-22 [4eb92f4](https://github.com/silverstripe/silverstripe-assets/commit/4eb92f48cc6277b942b47edd32d8b9dbdb7a968b) Don't run onBefore if no assets (Thomas Portelange) - - 2023-06-22 [a7d5386](https://github.com/silverstripe/silverstripe-assets/commit/a7d538688032f74cbada50f2bce0fc044a359901) Don't make query if not needed (Thomas Portelange) - -- silverstripe/config (2.0.0 -> 2.1.0) - - 2023-07-18 [44769a6](https://github.com/silverstripe/silverstripe-config/commit/44769a61bdfc0b598a02297bbd87fd19666cb508) CachedConfigCollection is written to disk on every page load (#89) (Thomas Portelange) - -- silverstripe/framework (5.0.0 -> 5.1.0) - - 2023-09-11 [17733aa84](https://github.com/silverstripe/silverstripe-framework/commit/17733aa84ad4852bd5a5e8b157790d0993485d9c) added missing returns (fluent setter) (Rastislav Brandobur) - - 2023-08-30 [7ae7e9ff4](https://github.com/silverstripe/silverstripe-framework/commit/7ae7e9ff472b5fa9789dea49ebccbc1a829ba419) added maxLength validation tests (Rastislav Brandobur) - - 2023-08-28 [d6c39e7d3](https://github.com/silverstripe/silverstripe-framework/commit/d6c39e7d367c290df4cc5d838e4b1740f11e3d2d) added missing maxLength validation (Rastislav Brandobur) - - 2023-08-25 [88c70b323](https://github.com/silverstripe/silverstripe-framework/commit/88c70b323475cd7879e312637f185ef286e6c589) Fixed deprecation notices in PHP 8.2 by using the AllowDynamicProperties (Niklas Forsdahl) - - 2023-08-15 [6c2b5bdbe](https://github.com/silverstripe/silverstripe-framework/commit/6c2b5bdbe174169e199c7b2d593f7b5f4697035c) Update src/Security/Member.PHP (Sunny Side Up) - - 2023-08-15 [93d03f71e](https://github.com/silverstripe/silverstripe-framework/commit/93d03f71ef8700c15d424628057d72e357c06233) MINOR: set a default password encryption for a member, if no password encryption is set. (Sunny Side Up) - - 2023-08-14 [637859a1f](https://github.com/silverstripe/silverstripe-framework/commit/637859a1f45d50978b93e12bc90f1a21079a7678) Update tests/PHP/ORM/DBCompositeTest.PHP (Thomas Portelange) - - 2023-08-11 [0d4231abb](https://github.com/silverstripe/silverstripe-framework/commit/0d4231abb8a35043d44058afdf1a2e3df1147240) comment test for ss4 (Thomas Portelange) - - 2023-08-10 [d621d00ee](https://github.com/silverstripe/silverstripe-framework/commit/d621d00eea25cacc930084f75e9b6dc837e3a9d2) DBComposite::writeToManipulation() is never called (Thomas) - - 2023-08-02 [0e839e12c](https://github.com/silverstripe/silverstripe-framework/commit/0e839e12cc4af42801b5290fc8704a5ba3fc61be) Update src/Core/Manifest/VersionProvider.PHP (Thomas Portelange) - - 2023-08-02 [b9f63001c](https://github.com/silverstripe/silverstripe-framework/commit/b9f63001c5c6a63d89461d448fe8753f88326bdd) Update src/Core/Manifest/VersionProvider.PHP (Thomas Portelange) - - 2023-08-01 [c0cc129f1](https://github.com/silverstripe/silverstripe-framework/commit/c0cc129f1249ee979c2052700b4d818c30c94965) remove sprintf (Thomas Portelange) - - 2023-08-01 [d3c2fa897](https://github.com/silverstripe/silverstripe-framework/commit/d3c2fa897c06b4c8379b514a7773c74e1c3ee4ea) nicer key (Thomas Portelange) - - 2023-06-28 [a019b34fa](https://github.com/silverstripe/silverstripe-framework/commit/a019b34facc35066fce3355118a2dcb67fcf01a0) csfix (Thomas Portelange) - - 2023-06-28 [a96918043](https://github.com/silverstripe/silverstripe-framework/commit/a96918043312ab4575e79c62fbbfe8c0f3de411c) add anonymize (Thomas Portelange) - - 2023-06-23 [9391e696b](https://github.com/silverstripe/silverstripe-framework/commit/9391e696bbb4e12f58c52f3335b15b0e157cc2c1) use Member::class (Thomas Portelange) - - 2023-06-22 [2e73b5eec](https://github.com/silverstripe/silverstripe-framework/commit/2e73b5eeca692f015d63539322dccf62e25cf72a) Use cached query (Thomas Portelange) - - 2023-06-14 [b6a3e3a95](https://github.com/silverstripe/silverstripe-framework/commit/b6a3e3a9519e0adc52fb1bd75e1f4974a554c011) added an additional filter to remove empty array items (#10803) (josephlewisnz) - - 2023-06-08 [30cd4047d](https://github.com/silverstripe/silverstripe-framework/commit/30cd4047df1ae9fb5801ace59fe5732b8c71531e) Adjust isEnabled method (#10801) (kevingroeger) - - 2023-05-24 [e98f0d45a](https://github.com/silverstripe/silverstripe-framework/commit/e98f0d45af1f3684748a1a49d47d0f91f2bc0225) Use ::create instead of new in GridFieldDetailForm_ItemRequest (#10791) (Bernard Hamlin) - - 2023-05-15 [0ab36f6ae](https://github.com/silverstripe/silverstripe-framework/commit/0ab36f6ae18262b5c298a7f0d501aa5d6dac4a1c) UPD Add support new TinyMC cs_CZ.js (Sabina Talipova) - - 2023-04-27 [9660652fb](https://github.com/silverstripe/silverstripe-framework/commit/9660652fbca17870ad2bbd52aec96aff7d8d4a44) MINOR: faster checking if record exists (Nicolaas / Sunny Side Up) - - 2023-04-12 [1dbb2bc5b](https://github.com/silverstripe/silverstripe-framework/commit/1dbb2bc5badbb15a79aff7d1f2e1126086ee9fe6) remove manually added config values in test (Florian Thoma) - - 2023-04-10 [0d9724c70](https://github.com/silverstripe/silverstripe-framework/commit/0d9724c70804255ca6ee8ba7bc7941edf2f7e0de) Update tests/PHP/Forms/TreeDropdownFieldTest.PHP (elliot sawyer) - - 2023-04-05 [41c4b4ee0](https://github.com/silverstripe/silverstripe-framework/commit/41c4b4ee020011e09ff44edd7e90ca1e38176490) make Group use tri-state can* extension hooks, fixes #9580 (Florian Thoma) - - 2023-02-13 [04266f77c](https://github.com/silverstripe/silverstripe-framework/commit/04266f77ccae635fc8c3367afee2e64f041f3e42) Update i18nTextCollector to collect strings also from themes (Florian Thoma) - - 2023-02-13 [c0722308a](https://github.com/silverstripe/silverstripe-framework/commit/c0722308af48a9f1ee5d2d549c22640c55c9e5bc) add loading of automatic ORM field labels to i18nTextCollector (Florian Thoma) - -- silverstripe/admin (2.0.0 -> 2.1.0) - - 2023-08-25 [0b59826b](https://github.com/silverstripe/silverstripe-admin/commit/0b59826bcd61522a85676e2bddae9f0eadd28199) Fixed deprecation notices in PHP 8.2 by using the AllowDynamicProperties (Niklas Forsdahl) - - 2023-08-17 [f2732691](https://github.com/silverstripe/silverstripe-admin/commit/f273269136eabaa885d34ec65107b3b6ef0f9571) Update util.js (Thomas Portelange) - - 2023-08-17 [1877b387](https://github.com/silverstripe/silverstripe-admin/commit/1877b3879ab8809945b017f9bb16c70b2aa9c309) Update collapse.js (Thomas Portelange) - - 2023-08-17 [4c285f3e](https://github.com/silverstripe/silverstripe-admin/commit/4c285f3e3fddbe070b47674f484ac68a0923e270) remove sourcemap (Thomas Portelange) - - 2023-08-14 [6ef5b9bc](https://github.com/silverstripe/silverstripe-admin/commit/6ef5b9bcbc270c6afe5326e4c4e80b5c1cdae0c5) Make security admin more easily extensible (Thomas Portelange) - - 2023-08-11 [a77f54b4](https://github.com/silverstripe/silverstripe-admin/commit/a77f54b409df4af11472d37e275a9b42ce705b5f) EHN Implement the new logo (Maxime Rainville) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0) - - 2023-08-08 [e0d5fca3](https://github.com/silverstripe/silverstripe-asset-admin/commit/e0d5fca37dee5ffc4d730d35f161b46581e8a836) Allows display of validation messages on assets (Bernie Hamlin) - - 2023-05-12 [5eaff19d](https://github.com/silverstripe/silverstripe-asset-admin/commit/5eaff19db8856f99717bc6b112ba0434d1119431) Adds Folder ID for TinyMCE_sslink-file to allow us to target a specific folder when user clicks on TinyMCE link to file: (Garry Yeatman) - -- silverstripe/cms (5.0.0 -> 5.1.0) - - 2023-09-18 [5c069339](https://github.com/silverstripe/silverstripe-cms/commit/5c0693398684fb073a05d394000076465c942613) Update code/Model/VirtualPage.PHP (mirche97) - - 2023-09-18 [9edc46f5](https://github.com/silverstripe/silverstripe-cms/commit/9edc46f53dfd2cf62ee0e8d6634c6a33366fbfa3) Update code/Model/VirtualPage.PHP (mirche97) - - 2023-09-05 [da115d99](https://github.com/silverstripe/silverstripe-cms/commit/da115d991012ffa58c995319377277aa58c7aaf1) use AdminRootController::get_admin_route() (mirche97) - - 2023-09-05 [c3e7a499](https://github.com/silverstripe/silverstripe-cms/commit/c3e7a4990484aa962ed470aebc45f9e6a4d70e77) fixed VirtualPage generating incorrect CMS edit links (mirche97) - - 2023-08-18 [3295dd50](https://github.com/silverstripe/silverstripe-cms/commit/3295dd5062cfe4d78ba6242f9a00ea55fa258c23) Don't make query if not needed (#2863) (Thomas Portelange) - - 2023-07-28 [c455a828](https://github.com/silverstripe/silverstripe-cms/commit/c455a8288f1a2cf7732f21e5bdaf0e015e81598a) drop duplicated call (Thomas Portelange) - -- silverstripe/graphql (5.0.0 -> 5.1.0) - - 2023-08-14 [562c251](https://github.com/silverstripe/silverstripe-graphql/commit/562c251b7819c616c40c412dfc7d396ab424b491) Revert "NEW Enable storing GraphQL schema in `silverstripe-cache/`" (Steve Boyd) - - 2023-07-24 [ac6fdc2](https://github.com/silverstripe/silverstripe-graphql/commit/ac6fdc2ba96dbd78675f52dd8d2d4950d1d75beb) Run dev/build add-on only once (Dylan Wagstaff) - - 2023-07-07 [47811b8](https://github.com/silverstripe/silverstripe-graphql/commit/47811b88cd1ae7e39cf13ed698223f6a13b4d047) test(SortPlugin): add integration test for multi-sort (Chris Joe) - - 2023-02-09 [db1d6d3](https://github.com/silverstripe/silverstripe-graphql/commit/db1d6d37cbde903c65c9a350075bb64ea18c4f3b) Support maximumLimit in pagination (Nils Hellberg) - -- silverstripe/session-manager (2.0.0 -> 2.1.0) - - 2023-08-14 [9bcd9e7](https://github.com/silverstripe/silverstripe-session-manager/commit/9bcd9e771338ade1065117a2af9b99a33d922090) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [78c27ed](https://github.com/silverstripe/silverstripe-session-manager/commit/78c27ed48f14b293defbd3a9f8900cb22066ba14) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [8f88faf](https://github.com/silverstripe/silverstripe-session-manager/commit/8f88faf44534457d17e3d00309a50057ed289f46) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [9d1fd25](https://github.com/silverstripe/silverstripe-session-manager/commit/9d1fd2598de8f3c7bf9a8295318f880ebae39d7a) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [6612efc](https://github.com/silverstripe/silverstripe-session-manager/commit/6612efc56a3b6047bc7652ee04b26e888736311c) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [d6d1af6](https://github.com/silverstripe/silverstripe-session-manager/commit/d6d1af682c7f7024b00875341ed15029fb923701) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [43cb4ee](https://github.com/silverstripe/silverstripe-session-manager/commit/43cb4ee8a36edd6c430d54dfa6e100da2f525c9a) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [a4faf82](https://github.com/silverstripe/silverstripe-session-manager/commit/a4faf82c1552ddb4191948f6a4f9e41b71e1da7e) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [e84f1f6](https://github.com/silverstripe/silverstripe-session-manager/commit/e84f1f62fc099cdf7bdf544a09f1c09ed30f4c50) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [83986d6](https://github.com/silverstripe/silverstripe-session-manager/commit/83986d6c30a335cb55ade9f78706acee18a45a00) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [b2d6021](https://github.com/silverstripe/silverstripe-session-manager/commit/b2d602102d2a8cc5be2bd83eb8d6765b58dcdf02) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-10 [be50af6](https://github.com/silverstripe/silverstripe-session-manager/commit/be50af667065123577853b23d96f5c67f9284126) Garbage collector do not work on large tables (Thomas) - - 2023-06-28 [30389d1](https://github.com/silverstripe/silverstripe-session-manager/commit/30389d1a01d391253a56c2f2e6beb448e7bd24bd) wording update (Thomas Portelange) - - 2023-06-28 [348fe08](https://github.com/silverstripe/silverstripe-session-manager/commit/348fe08e172d9bada2517032cf1c44c3a6f48bdd) allow mock time in garbage service (Thomas Portelange) - - 2023-06-28 [cef0628](https://github.com/silverstripe/silverstripe-session-manager/commit/cef06282c4edbaa71064dc3b83b0347e0a61ca30) actually show that mock time does something (Thomas Portelange) - -- silverstripe/tagfield (3.0.0 -> 3.1.0) - - 2023-08-18 [92823c7](https://github.com/silverstripe/silverstripe-tagfield/commit/92823c790ac5fb25aebdbb33c438493e7232869c) Adds back onBlur handler (Bernie Hamlin) - -- silverstripe/blog (4.0.0 -> 4.1.0) - - 2023-09-09 [7128123](https://github.com/silverstripe/silverstripe-blog/commit/712812332dd02d3f09384450983b999ab113e297) Bugfix: Updating BlogPostFilter::augmentSQL to make use of modern Versioned methods. (Nathan J. Brauer) - - 2023-08-10 [bcbb40e](https://github.com/silverstripe/silverstripe-blog/commit/bcbb40e08d7f674206fcd2fb5deaf0adea487b33) Replace deprecated sort rand with shuffle (3Dgoo) - - 2023-08-10 [7189427](https://github.com/silverstripe/silverstripe-blog/commit/7189427bf35d78de628ac1b32ba85205e316e601) Replace deprecated sort rand with shuffle (3Dgoo) - -- silverstripe/spamprotection (4.0.0 -> 4.1.0) - - 2023-07-11 [a358621](https://github.com/silverstripe/silverstripe-spamprotection/commit/a3586210e2e0dbd6ed20961923e5d3209b4e2366) Add Cloudflare Turnstile captcha link (Bernard Hamlin) - -- silverstripe/userforms (6.0.0 -> 6.1.0) - - 2023-06-07 [0dfd299](https://github.com/silverstripe/silverstripe-userforms/commit/0dfd2990dde1cd5ee474d02d248d38b39ec1f582) Use window.ss.config provided adminUrl (#1211) (Michal Kleiner) - - 2023-04-26 [0b61d1a](https://github.com/silverstripe/silverstripe-userforms/commit/0b61d1a3bba0dc7254976cd1da8b35cf15373840) not remove Submissions, use setTitle (Lukas Erni) - - 2023-04-19 [0d7f7ed](https://github.com/silverstripe/silverstripe-userforms/commit/0d7f7ed6d0978b8f663da792318058ffcdfb2981) Submission tab translatable (Lukas Erni) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0) - - 2023-10-11 [a2edb5e](https://github.com/silverstripe/silverstripe-elemental/commit/a2edb5e8cab0a8638cb013eeb227c79ebee79429) update PR with new supplied by reviewer (sukhwinder-somar) - - 2023-05-15 [2c32dc8](https://github.com/silverstripe/silverstripe-elemental/commit/2c32dc8d875b315dc5bc41609305ca11dfd45c10) Focus PR back to original scope (Guy Sartorelli) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0) - - 2023-09-11 [949791ee](https://github.com/silverstripe/developer-docs/commit/949791ee113444c800b3c00cfea3e8a117479f82) Update en/02_Developer_Guides/05_Extending/01_Extensions.md (Tyler Trout) - - 2023-09-07 [e33ca32d](https://github.com/silverstripe/developer-docs/commit/e33ca32d6e9b76bc273f45ff66e4c2c7aa861093) Updated with database column type override info (Tyler Trout) - - 2023-09-01 [bc33bc89](https://github.com/silverstripe/developer-docs/commit/bc33bc890e65e38bea5d60de8883f2a4ba757361) Correct Table of Contents linking (Nate Devereux) - - 2023-08-14 [566fac25](https://github.com/silverstripe/developer-docs/commit/566fac25c0e031f39bba5a97fff6d1cd172ef9d0) Revert "DOC Document storing gql schema in cache dir" (Steve Boyd) - - 2023-07-24 [51ad53f3](https://github.com/silverstripe/developer-docs/commit/51ad53f3332ee7f6f8ffed98bb08e92926eeb38a) parent 1a73935fdecaa1cbeee0ad12986267d5c1e4a62f (Maxime Rainville) - - 2023-07-21 [393f13dd](https://github.com/silverstripe/developer-docs/commit/393f13dd90ddadbb1b8fa3197e1b9a0b85ac9212) Update 02_configuring_your_schema.md (Patrick Côté) - - 2023-06-22 [d61a330e](https://github.com/silverstripe/developer-docs/commit/d61a330e5baccc8940b7fd1b12034cae16bb58e1) Update 00_Introduction.md (Izzudin Anuar) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0) - - 2023-06-07 [48cf053](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/48cf053f2e345a89b4914c67c099296da8a39d39) Update src/Extensions/UserFormUseQueuedExportExtension.PHP (Luke Fromhold) - -- silverstripe/realme (5.0.0 -> 5.2.0) - - 2023-04-28 [4dc8654](https://github.com/silverstripe/silverstripe-realme/commit/4dc8654c1875217782870dca514e21ca53a349e1) Replacing all occurances of $backURL with $backUrl in enforeLogin function (LABCAT) - - 2023-04-19 [fe483f4](https://github.com/silverstripe/silverstripe-realme/commit/fe483f409e121605365e82f76d98909bc8c1fcba) Fixing "Undefined variable $backURL" in enforeLogin function (LABCAT) - -- silverstripe/subsites (3.0.0 -> 3.1.0) - - 2023-08-16 [39de471](https://github.com/silverstripe/silverstripe-subsites/commit/39de47167d9eadab4d2cb89a6a91684037814911) don't trigger permissionFailure when it's not needed (Thomas Portelange) - - 2023-06-21 [a052bfd](https://github.com/silverstripe/silverstripe-subsites/commit/a052bfd5909a70825dbc654dfd16204ea661cb1c) Add extension to correctly support element preview (Michal Kleiner) - -- silverstripe/staticpublishqueue (6.0.0 -> 6.1.0) - - 2023-08-22 [c651e04](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/c651e045785b816eb99cbf7d72dde8d6bc2c5f19) Match generate and purge actions to CMS behaviours (#168) (Chris Penny) - -- dnadesign/silverstripe-elemental-userforms (4.0.0 -> 4.1.0) - - 2023-10-09 [43427d7](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/43427d741f245b0d75821f0d1f5d93126440426a) remove handling of null (sukhwinder-somar) - - 2023-10-09 [6882b19](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/6882b199d90b8747992026512fcfaec30f3cd564) change inst to BaseElement instead of SiteTree (sukhwinder-somar) - - 2023-10-09 [56cef26](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/56cef2694a25f685519e3c0036a9898c9c9b0160) lint fixing (sukhwinder-somar) - - 2023-10-01 [cf6a711](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/cf6a71129ccd625bf2cc9e92b068f83be8b794e1) return null in loop (sukhwinder-somar) - - 2023-09-28 [5c8b11b](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/5c8b11bf17832c01b665b041b2bdcec74579ede6) check when page is null (sukhwinder-somar) - - 2023-09-05 [2d2a3fd](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/2d2a3fd148d3007ea418fe444081d6f199d2cf38) Adding description ElementForm (LABCAT) - - 2023-08-15 [80a068f](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/80a068fd1b5da8dd0362cb4c5a450616d85ccd8a) update finished function, issue-27 (sukhwinder-somar) - - diff --git a/en/08_Changelogs/5.2.0.md b/en/08_Changelogs/5.2.0.md deleted file mode 100644 index 287aba318..000000000 --- a/en/08_Changelogs/5.2.0.md +++ /dev/null @@ -1,1604 +0,0 @@ ---- -title: 5.2.0 ---- - -# 5.2.0 - -## Overview - -- [Security considerations](#security-considerations) -- [PHP 8.3 support](#php-83) -- [Official support for `silverstripe/linkfield`](#linkfield) -- [Features and enhancements](#features-and-enhancements) - - [New ORM features](#new-orm-features) - - [`GridField` components now work with arbitrary data](#gridfield-arbitrary-data) - - [`ErrorPage` allowed codes configuration](#errorpage-allowed-codes-configuration) - - [Versioned status badges for elemental](#elemental-badges) - - [Create random passwords for new users](#create-random-passwords-for-new-users) - - [Buttons to select all files and deselect all files](#bulk-action-buttons) - - [Support for validation using `symfony/validator`](#symfony-validator) - - [New searchable dropdown fields](#searchable-dropdown-field) - - [New `UrlField`](#urlfield) - - [Create file variants with different extensions](#file-variants) - - [More nuanced permissions for `/dev/*` routes](#dev-route-permissions) - - [Generic typehints](#generics) - - [New exception in React forms](#react-forms-exception) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.1.0 | -| bringyourownideas/silverstripe-maintenance | 3.1.0 | -| colymba/gridfield-bulk-editing-tools | 4.0.2 | -| cwp/agency-extensions | 3.2.0 | -| cwp/starter-theme | 4.1.0 | -| cwp/watea-theme | 4.1.0 | -| dnadesign/silverstripe-elemental | 5.2.0 | -| dnadesign/silverstripe-elemental-userforms | 4.1.1 | -| silverstripe-themes/simple | 3.3.1 | -| silverstripe/admin | 2.2.0 | -| silverstripe/asset-admin | 2.2.0 | -| silverstripe/assets | 2.2.0 | -| silverstripe/auditor | 3.1.0 | -| silverstripe/blog | 4.2.0 | -| silverstripe/campaign-admin | 2.2.0 | -| silverstripe/cms | 5.2.0 | -| silverstripe/config | 2.1.0 | -| silverstripe/contentreview | 5.2.0 | -| silverstripe/crontask | 3.0.3 | -| silverstripe/documentconverter | 3.2.0 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.2.0 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.1 | -| silverstripe/errorpage | 2.2.0 | -| silverstripe/externallinks | 3.2.0 | -| silverstripe/framework | 5.2.0 | -| silverstripe/graphql | 5.2.0 | -| silverstripe/gridfieldqueuedexport | 3.2.0 | -| silverstripe/hybridsessions | 3.0.3 | -| silverstripe/iframe | 3.2.0 | -| silverstripe/installer | 5.2.0 | -| silverstripe/ldap | 2.2.0 | -| silverstripe/linkfield | 4.0.0 | -| silverstripe/login-forms | 5.2.0 | -| silverstripe/lumberjack | 3.1.0 | -| silverstripe/mfa | 5.2.0 | -| silverstripe/mimevalidator | 3.1.0 | -| silverstripe/realme | 5.3.0 | -| silverstripe/recipe-authoring-tools | 2.2.0 | -| silverstripe/recipe-blog | 2.2.0 | -| silverstripe/recipe-cms | 5.2.0 | -| silverstripe/recipe-collaboration | 2.2.0 | -| silverstripe/recipe-content-blocks | 3.2.0 | -| silverstripe/recipe-core | 5.2.0 | -| silverstripe/recipe-form-building | 2.2.0 | -| silverstripe/recipe-kitchen-sink | 5.2.0 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.2.0 | -| silverstripe/recipe-services | 2.2.0 | -| silverstripe/registry | 3.2.0 | -| silverstripe/reports | 5.2.0 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.1.0 | -| silverstripe/segment-field | 3.2.0 | -| silverstripe/session-manager | 2.2.0 | -| silverstripe/sharedraftcontent | 3.2.0 | -| silverstripe/siteconfig | 5.2.0 | -| silverstripe/sitewidecontent-report | 4.2.0 | -| silverstripe/spamprotection | 4.2.0 | -| silverstripe/staticpublishqueue | 6.2.0 | -| silverstripe/subsites | 3.2.0 | -| silverstripe/tagfield | 3.2.0 | -| silverstripe/taxonomy | 3.2.0 | -| silverstripe/textextraction | 4.1.0 | -| silverstripe/totp-authenticator | 5.2.0 | -| silverstripe/userforms | 6.2.0 | -| silverstripe/vendor-plugin | 2.0.2 | -| silverstripe/versioned | 2.2.0 | -| silverstripe/versioned-admin | 2.2.0 | -| silverstripe/versionfeed | 3.2.0 | -| silverstripe/webauthn-authenticator | 5.2.0 | -| symbiote/silverstripe-advancedworkflow | 6.2.0 | -| symbiote/silverstripe-gridfieldextensions | 4.0.5 | -| symbiote/silverstripe-multivaluefield | 6.1.0 | -| symbiote/silverstripe-queuedjobs | 5.1.0 | -| tractorcow/silverstripe-fluent | 7.1.0 | - -
- -## Security considerations {#security-considerations} - -Some security fixes that were previously released in the January security release that are mentioned in the [Silverstripe CMS security patches January 2024](https://www.silverstripe.org/blog/silverstripe-cms-security-patches-january-2024/) blog post are listed below. - -Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2023-49783 - No permission checks for editing or deleting records with CSV import form](https://www.silverstripe.org/download/security-releases/cve-2023-49783) Severity: Medium - - If you implement a custom subclass of [`BulkLoader`](api:SilverStripe\Dev\BulkLoader) or you're using a `BulkLoader` directly in your code, there may be additional actions you need to take to secure your project. -- [CVE-2023-48714 - Record titles for restricted records can be viewed if exposed by GridFieldAddExistingAutocompleter](https://www.silverstripe.org/download/security-releases/cve-2023-48714) Severity: Medium -- [CVE-2023-44401 - View permissions are bypassed for paginated lists of ORM data in GraphQL queries](https://www.silverstripe.org/download/security-releases/cve-2023-44401) Severity: Medium - -## PHP 8.3 support {#php-83} - -This release includes official support for PHP 8.3 for all supported modules. There were only very minor code changes required to add this support, so your upgrades should be fairly straightforward in that regard. - -Check out the [PHP 8.3 release announcement](https://www.php.net/releases/8.3/en.php) to see what's new and what's changed. - -## Official support for `silverstripe/linkfield` {#linkfield} - -[`silverstripe/linkfield`](https://github.com/silverstripe/silverstripe-linkfield) 4.0.0 has been released and is now a commercially supported module. - -That means it's now covered by our [minor release policy](/project_governance/minor_release_policy/), our [major release policy](/project_governance/major_release_policy/), and our [security release process](/contributing/managing_security_issues). - -This module provides a [`Link`](api:SilverStripe\LinkField\Models\Link) model and two new form fields: [`LinkField`](api:SilverStripe\LinkField\Form\LinkField) and [`MultiLinkField`](api:SilverStripe\LinkField\Form\MultiLinkField). The intention of the module is to provide a clear and consistent approach to managing links in the CMS. - -This release of the module includes a bunch of features that were missing from earlier versions including: - -- Support for `has_many` relations -- Versioned support -- Validation -- The ability to declare which link types are allowed per field -- Improved UI and accessibility - -> [!NOTE] -> `silverstripe/linkfield` 4.0.0 requires `silverstripe/framework` 5.2.0 or higher due to its reliance on some new API. - -You can install it as soon as you update your project. - -```bash -composer require silverstripe/linkfield -``` - -Check out [the linkfield documentation](/optional_features/linkfield/) for more information about this module. - -## Features and enhancements - -### New ORM features {#new-orm-features} - -This release comes jampacked with new ORM features, granting you access to some new abstractions for more powerful and efficient queries. - -#### Manipulating eager loaded relation queries {#eager-loading} - -Filtering or sorting an [`EagerLoadedList`](api:SilverStripe\ORM\EagerLoadedList) (i.e. after the eager loading query has been executed) is done in PHP rather than in the database. That's a lot less powerful and significantly slower than performing those manipulations on `DataList` before executing the query. For example, you can't filter or sort `EagerLoadedList` by fields on relations using dot notation (e.g. `sort('MySubRelation.Title')` won't work). - -To alleviate this problem, we've introduced a new syntax for eager loading relations that lets you directly manipulate the eager loading queries. - -The old syntax is still supported, because it can be used in templates for simple scenarios. - -In a test setup looping through 100 records each with 100 related records (for a total of 10,000 records per test run), the following performance improvements were observed for different types of relations (early manipulations in the database vs manipulating results in PHP): - -- `has_many` - ~581% faster (0.1080s vs 0.7358s) -- `many_many` - ~612% faster (0.1264s vs 0.9002s) -- `many_many` through - ~327% faster (0.2511s vs 1.0719s) - -##### Usage {#eager-loading-usage} - -You can pass an associative array into the [`DataList::eagerLoad()`](api:SilverStripe\ORM\DataList::eagerLoad()) method, with relation chains as the keys and callbacks as the values. The callback accepts a `DataList` argument, and must return a `DataList`. - -```php -use SilverStripe\ORM\DataList; - -$teams = Team::get()->eagerLoad([ - 'Players' => fn (DataList $list) => $list->filter(['Age:GreaterThan' => 18]), -]); -``` - -> [!WARNING] -> It is very important to remember to return the list from your callback function. - -There are a few edge cases to be aware of with this new feature. To learn more, see [eager loading](/developer_guides/model/relations/#eager-loading). - -#### Multi-relational `has_one` relations - -Traditionally, if you wanted to have multiple `has_many` relations for the same class, you would have to include a separate `has_one` relation for *each* `has_many` relation. - -This release includes a new `has_one` syntax to declare that your `has_one` should be allowed to handle multiple reciprocal `has_many` relations. The syntax for that is as follows: - -```php -namespace App\Model; - -use SilverStripe\ORM\DataObject; -use SilverStripe\ORM\DataObjectSchema; - -class MyExample extends DataObject -{ - // ... - - private static array $has_one = [ - 'MyMultiRelationalRelation' => [ - // The class here is the class for the has_one - it must be polymorphic. - 'class' => DataObject::class, - // Setting this to true is what defines this has_one relation as multi-relational - DataObjectSchema::HAS_ONE_MULTI_RELATIONAL => true, - ], - ]; -} -``` - -> [!TIP] -> Multi-relational `has_one` relations *must* be polymorphic. - -Multiple `has_many` relations on a single class can point to the above `has_one` relation using dot notation, and they will be correctly saved and resolved when you get the relation list. - -> [!WARNING] -> This new feature means sometimes the value in the associative `has_one` configuration array will be an array, rather than just a string for the class name. -> If you are relying on fetching this configuration to find the class names of `has_one` relations, consider using -> [`DataObject::hasOne()`](api:SilverStripe\ORM\DataObject::hasOne()) or [`DataObjectSchema::hasOneComponent()`](api:SilverStripe\ORM\DataObjectSchema::hasOneComponent()) instead. - -See [multi-relational `has_one` in the relations docs](/developer_guides/model/relations/#multi-relational-has-one) for more details about this relation type. - -#### `UNION` clause {#orm-union-clause} - -Abstractions for the SQL `UNION` clause have been added to `SQLSelect` and `DataQuery`. - -To add a `UNION` clause to an `SQLSelect`, call the [`SQLSelect::addUnion()`](api:SilverStripe\ORM\Queries\SQLSelect::addUnion()) method and pass in the `SQLSelect` query you want to combine using a union. - -You can leave the second argument blank for a default union (which is functionally equivalent to a distinct union in MySQL) - or you can pass in one of the `SQLSelect::UNION_ALL` or `SQLSelect::UNION_DISTINCT` constants for a `UNION ALL` or `UNION DISTINCT` clause respectively. - -```php -use SilverStripe\ORM\Queries\SQLSelect; - -$baseQuery = SQLSelect::create()->setFrom($tableName)->addWhere(/*...*/); -$anotherQuery = SQLSelect::create()->setFrom($tableName)->addWhere(/*...*/); -$baseQuery->addUnion($anotherQuery, SQLSelect::UNION_DISTINCT); -``` - -To add a `UNION` clause to an `DataQuery`, call the [`DataQuery::union()`](api:SilverStripe\ORM\DataQuery::union()) method and pass in either another `DataQuery` or an `SQLSelect` query you want to combine using a union. The same constants used for `SQLSelect` can be passed in here as well. - -```php -use SilverStripe\ORM\DataQuery; -use SilverStripe\ORM\Queries\SQLSelect; - -$baseQuery = DataQuery::create(MyClass::class)->where(/*...*/); -$anotherQuery = DataQuery::create(MyClass::class)->where(/*...*/); -$baseQuery->union($anotherQuery, SQLSelect::UNION_ALL); -``` - -#### Common table expressions (CTE aka the `WITH` clause) {#orm-with-clause} - -Abstractions for Common Table Expressions (aka the SQL `WITH` clause) have been added to `SQLSelect` and `DataQuery`. - -Common Table Expressions are a powerful tool both for optimising complex queries, and for creating recursive queries. This functionality is abstracted in the [`SQLSelect::addWith()`](api:SilverStripe\ORM\Queries\SQLSelect::addWith()) and [`DataQuery::with()`](api:SilverStripe\ORM\DataQuery::with()) methods. - -Older database servers don't support this functionality, and the core implementation is only valid for MySQL and MariaDB. If you're using this functionality in an open source module or a project that you can't guarantee the type and version of database being used, you should wrap the query in a condition checking if CTEs are supported. You can do that by calling [`DB::get_conn()->supportsCteQueries()`](api:SilverStripe\ORM\Connect\Database::supportsCteQueries()). - -Check out the [SQL queries](/developer_guides/model/sql_select/#cte) and [data model and ORM](/developer_guides/model/data_model_and_orm/#cte) documentation for usage details and examples. - -#### Support for multiple (or no) tables in the `FROM` clause {#orm-from-clause} - -Previously the `SQLConditionalExpression` abstraction couldn't handle multiple table names being passed into its `FROM` clause. This restriction has been removed, so you can now have queries selecting from multiple tables (without needing joins) so long as your database supports it. - -> [!WARNING] -> If you were working around that limitation by adding an explicit comma to subsequent tables in the `FROM` clause for your queries, you'll need to remove the comma. - -You can also now choose to *not* have a `FROM` clause in an `SQLSelect` query, which can be useful for setting up simple queries to be used in unit tests. - -#### Better support for custom column selections in `DataQuery` {#orm-custom-columns} - -When using `DataQuery`, it is possible to use collations and other raw SQL field statements as part of the query's `SELECT` clause. If these have an alias that matches the name of an existing database column, this normally results in an exception being thrown. - -You can choose to allow those conflicts to be resolved via a [`CASE`](https://dev.mysql.com/doc/refman/en/case.html) statement instead of throwing an exception. In that scenario, if the value in the database column is null, the value for your custom field statement will be used. This is enabled per query by passing `true` to the new [`DataQuery::setAllowCollidingFieldStatements()`](api:SilverStripe\ORM\DataQuery::setAllowCollidingFieldStatements()) method. - -```php -$query = new DataQuery(MyClass::class); -$query->selectField('\'my custom title\' AS "Title"'); -$query->setAllowCollidingFieldStatements(true); -``` - -#### Other ORM changes - -- Abstractions for `RIGHT JOIN` have been added with the new [`DataList::rightJoin()`](api:SilverStripe\ORM\DataList::rightJoin()), [`DataQuery::rightJoin()`](api:SilverStripe\ORM\DataQuery::rightJoin()), and [`SQLConditionalExpression::addRightJoin()`](api:SilverStripe\ORM\Queries\SQLConditionalExpression::addRightJoin()) methods. The signature for these methods is identical to their `LEFT JOIN` and `INNER JOIN` counterparts. -- Developers can now opt in to including a comment on all ORM database queries indicating where they were executed from. See [debugging database queries](/developer_guides/debugging/#debugging-database-queries) for details. - -### `GridField` components now work with arbitrary data {#gridfield-arbitrary-data} - -It has historically been difficult to use a `GridField` to display data that isn't represented by `DataObject` records - and even more difficult to edit that data. - -We have removed several barriers to using the `GridField` to display arbitrary data. Descriptive exceptions will be thrown when specific information cannot be dynamically identified, such as which columns to display and what form fields to use when viewing or editing data. Note that these new exceptions don't break backwards compatibility. Any scenario that will throw an exception now would have already done so - but the old exception wouldn't have had enough information to quickly understand what changes are needed to get a functioning `GridField`. - -This change applies to all classes in `silverstripe/framework` which implement `GridFieldComponent`, except for [`GridFieldAddExistingAutocompleter`](api:SilverStripe\Forms\GridField\GridFieldAddExistingAutocompleter) and [`GridFieldLevelup`](api:SilverStripe\Forms\GridField\GridFieldLevelup) which both explicitly require the model class for the associated `GridField` to be a subclass of `DataObject`. - -This new capability can be very useful for integrating with third-party services, as it allows you to view and edit data from a web API without needing to synchronise that data with your database. - -See [using `GridField` with arbitrary data](/developer_guides/forms/using_gridfield_with_arbitrary_data/) for more information. - -### `ErrorPage` allowed codes configuration - -By default, all available error codes are present in the "Error code" dropdown in the CMS. This can be overwhelming and there are a few (looking at you, [418](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/418)) that can -be confusing. To that end, you can now limit the codes in the dropdown with the [`ErrorPage.allowed_error_codes`](api:SilverStripe\ErrorPage\ErrorPage->allowed_error_codes) configuration array like so: - -```yml -SilverStripe\ErrorPage\ErrorPage: - allowed_error_codes: - - 400 - - 403 - - 404 - - 500 -``` - -Alongside this change, we've also added some more HTTP status codes to the list of available error codes. See the source code for [`ErrorPage::getCodes()`](api:SilverStripe\ErrorPage\ErrorPage::getCodes()) for the full list. - -### Versioned status badges for elemental {#elemental-badges} - -Elemental content blocks now feature versioned status badges which adds a textual indicator of whether the block is in draft or a modified state. This textual label is in addition to the dot icon indicator that was already there. The new label is only provided if the [`Versioned`](api:SilverStripe\Versioned\Versioned) extension is used for elemental blocks, which it is by default. - -![examples of the versioned labels](../_images/changelogs/5.2.0/elemental-badge.png) - -To improve consistency with the rest of the CMS interface, the blue dot icon (which previously indicated an unsaved state) has been removed. - -### Create random passwords for new users - -If a new user is created in the security section of the CMS with an empty password, a strong random password will now be automatically assigned to the user which will not be visible to the person creating the user. The user will need to click the "I've forgotten my password" link in order to receive a password reset email so they can choose a new password. - -This is a behavioural change from the change introduced in Silverstripe CMS 5.1.0 where blank passwords were disallowed when creating a new user due to a security concern. The change in 5.1.0 meant the administrator setting up the user could know what the user's password was until the user changed it. - -This only applies to users created through the security section of the CMS. Users created programatically with an empty password will not have a random password automatically assigned to them. This is the current behaviour and is often used for non-production purposes such as unit-testing. - -### Buttons to select all files and deselect all files {#bulk-action-buttons} - -The files section of the CMS now has buttons to select and deselect all files and folders currently on the screen, which is useful when you want to perform bulk operations. These buttons show at the bottom of the screen in the bulk actions toolbar. The deselect all button also shows the number of currently selected items. As these buttons are on the bulk actions toolbar they are only visible if at least one item has been selected. - -![select all functionality in the CMS](../_images/asset-admin-select-all.png) - -### Support for validation using `symfony/validator` {#symfony-validator} - -We've added a new [`ConstraintValidator`](api:SilverStripe\Core\Validation\ConstraintValidator) class which provides an abstraction around [`symfony/validator`](https://symfony.com/doc/current/components/validator.html), so you can easily validate values against symfony's validation constraints and get a [`ValidationResult`](api:SilverStripe\ORM\ValidationResult) object with the result. - -```php -use SilverStripe\Core\Validation\ConstraintValidator; - -/** - * @var \Symfony\Component\Validator\Constraint $constraint - * @var \SilverStripe\ORM\ValidationResult $result - */ -$result = ConstraintValidator::validate($valueToValidate, $constraint); -``` - -For example, to test if a URL is valid: - -```php -use SilverStripe\Core\Validation\ConstraintValidator; -use Symfony\Component\Validator\Constraints\Url; - -$isValid = ConstraintValidator::validate($url, new Url())->isValid(); -``` - -You can use most of the constraints listed in Symfony's [supported constraints](https://symfony.com/doc/current/reference/constraints.html) documentation, though note that some of them require additional symfony dependencies. - -We explicitly don't support validation using constraints that rely on `symfony/doctrine`. - -### New `HasOneRelationFieldInterface` for better results with `RequiredFields` - -We've added a new interface [`HasOneRelationFieldInterface`](api:SilverStripe\Forms\HasOneRelationFieldInterface) which is used by the [`RequiredFields`](api:SilverStripe\Forms\RequiredFields) form validator to identify [`FormField`](api:SilverStripe\Forms\FormField) classes that represent a `has_one` relation. This allows it to more accurately identify when those fields are missing a user-entered value. - -If you have a custom `FormField` subclass that is exclusively used to represent a `has_one` relation, you may want to implement this new interface. - -### New searchable dropdown fields {#searchable-dropdown-field} - -We've added a pair of new dropdown form fields which are particularly useful for dropdowns with a large number of options. - -- [`SearchableDropdownField`](api:SilverStripe\Forms\SearchableDropdownField) is similar to [`DropdownField`](api:SilverStripe\Forms\DropdownField) which allows selecting a single option. -- [`SearchableMultiDropdownField`](api:SilverStripe\Forms\SearchableMultiDropdownField) is similar to [`ListboxField`](api:SilverStripe\Forms\ListboxField) which allows selecting multiple options. - -Both of these fields include a `setIsLazyLoaded()` method which will load a limited number of options at a time using an AJAX request matching what a user has typed in. There are quite a few options to customise these, including optionally using `SearchContext` to power the lazy-loaded search functionality. We encourage you to look at the API documentation for these new classes to see what you can do with them. - -Note that these are both powered by react components, and are only intended to be used within the CMS. If you want to use them on the front end of your project you will need to provide your own templates and JavaScript implementation for them. - -#### Auto scaffolding of `has_one` relations - -`SearchableDropdownField` will now be used when automatically scaffolding `has_one` relations into forms. Previously `DropdownField` was used, and when there were over 100 items [`NumericField`](api:SilverStripe\Forms\NumericField) was used - which was not user friendly. - -Previously the [`DBForeignKey.dropdown_field_threshold`](api:SilverStripe\ORM\FieldType\DBForeignKey->dropdown_field_threshold) config property was used as the threshold of the number of options to decide when to switch between auto-scaffolding a `DropdownField` and a `NumericField`. This configuration property is now used as the threshold of the number of options to decide when to start using lazy-loading for the `SearchableDropdownField`. - -### New `UrlField` {#urlfield} - -We've added a new [`UrlField`](api:SilverStripe\Forms\UrlField) which is a subclass of [`TextField`](api:SilverStripe\Forms\TextField) with some additional validation rules (powered by the [`Url` symfony validation constraint](https://symfony.com/doc/current/reference/constraints/Url.html)). It will validate that the value entered is a valid absolute URL with a protocol (either `http` or `https`) and a host. - -### Create file variants with different extensions {#file-variants} - -We've added a low-level API which allows the creation of file variants with a different extension than the original file's extension. A file variant is a manipulated version of the original file - for example if you resize an image or convert a file to another format, this will generate a variant (leaving the original file intact). - -Some examples of when you might want this are: - -- Generating thumbnails for videos, documents, etc -- Converting images to `.webp` for faster page load times -- Converting documents to `.pdf` so downloaded documents are more portable - -See [file manipulation](/developer_guides/files/file_manipulation/#file-conversion-lowlevel) for details about how to use this new API. - -### More nuanced permissions for `/dev/*` routes {#dev-route-permissions} - -Previously, all `/dev/*` routes registered with [`DevelopmentAdmin`](api:SilverStripe\Dev\DevelopmentAdmin) (for example `/dev/tasks/MyBuildTask`) could only be access by administrator users, and this couldn't be configured. - -Now, all of the controllers which handle these routes that come packaged in a core or supported module have a new `init_permissions` configuration property (e.g. [`TaskRunner.init_permissions`](api:SilverStripe\Dev\TaskRunner->init_permissions)). This new configuration can be used to grant non-administrative users access to these routes. - -You can also now optionally implement a `canView()` method on your `BuildTask` implementations to restrict accessed for specific tasks even further. This means you can grant access to *some* tasks to specific users or groups without granting access to *all* tasks. - -### Generic typehints {#generics} - -We've added typehints using PHPStan-style generic types to PHPDocs in many areas of the codebase of supported modules. The primary goal of this is to improve the developer experience by correctly reporting to your IDE what types it should expect, for example when looping through a `DataList`. In many cases your IDE will now know what types to expect without needing you to prompt it with [`@var` annotation comments](https://docs.phpdoc.org/3.0/guide/references/phpdoc/tags/var.html). - -> [!NOTE] -> There are some cases where this goal conflicts with having types that are correctly identified by PHPStan itself (or other static analysis tools). For example conditional return types aren't supported as widely in IDEs as generic types themselves are, so we opted to not use conditional return types even when those would result in a more accurate type for static analysis tools. - -See [Generics By Examples | PHPStan](https://phpstan.org/blog/generics-by-examples) and [Generics in PHP using PHP DocComments | DEVSENSE](https://blog.devsense.com/2022/generics-in-php-using-phpdoc) for more information about PHP generic typehints. - -While you should see some improvements immediately after updating, there are some changes you can make to your own codebase to best use the new generic type hints. - -#### Generic typehints when returning lists {#generics-return-lists} - -In your project code, any time you return an instance of `SS_List` (such as a `DataList` or `ArrayList`), you can add a generic typehint to declare what kind of object the returned list contains. This example will hint to the IDE that it returns a `DataList` containing `CarouselItem` records: - -```php -use App\Model\CarouselItem; -use SilverStripe\ORM\DataList; - -/** - * @return DataList - */ -function getCarouselItems(): DataList -{ - return CarouselItem::get(); -} -``` - -#### Generic typehints in `Extension` subclasses {#generics-extensions} - -The generic typing on the `Extension` class can be used to tell your IDE what type to expect for the [`$owner`](api:SilverStripe\Core\Extension->owner) property and [`getOwner()`](api:SilverStripe\Core\Extension::getOwner()) method. - -For this to be useful, you need to tell your IDE that your subclass `@extends` the `Extension` class, and tell it what type the owner should be. - -> [!WARNING] -> Don't forget to include a `use` statement, even if you're not explicitly referencing the type anywhere in your actual code. Your IDE needs the `use` statement to resolve the FQCN for the class you're referencing in the typehint. - -```php -namespace App\Extension; - -use SilverStripe\Core\Extension; -use SilverStripe\SiteConfig\SiteConfig; - -/** - * @extends Extension - */ -class SiteConfigExtension extends Extension -{ - // ... -} -``` - -This is also a useful way to indicate to developers at a glance what type(s) the extension is designed to be applied to. - -For example you might have an extension that can apply to both the `LeftAndMain` and `GridFieldDetailForm_ItemRequest` classes, which you can indicate using a union typehint: `@extends Extension`. - -#### Generic typehints in `ContentController` subclasses {#generics-contentcontroller} - -If you use the [`data()`](api:SilverStripe\CMS\Controllers\ContentController::data()) method or the [`$dataRecord`](api:SilverStripe\CMS\Controllers\ContentController->dataRecord) property in your page controllers, you may find it useful for your IDE to know specifically what page class that data represents. - -For this to work, you need to make sure your base `PageController` class has a `@template` type to extend. - -> [!TIP] -> Any time you use `@extends`, the class being extended needs to have a `@template` type so that your IDE knows what the type you're passing in is going to be used for. - -```php -namespace { - - use SilverStripe\CMS\Controllers\ContentController; - - /** - * @template T of Page - * @extends ContentController - */ - class PageController extends ContentController - { - // ... - } -} -``` - -```php -namespace App\PageType; - -use PageController; - -/** - * @extends PageController - */ -class HomepageController extends PageController -{ - // ... -} -``` - -### New exception in react forms {#react-forms-exception} - -[`FormSchema::getSchema()`](api:SilverStripe\Forms\Schema::getSchema()) now throws a [`LogicException`](https://www.php.net/manual/en/class.logicexception.php) if a react component was not found for a field type. - -> [!WARNING] -> If your project or a module you're using is currently trying to include a field which doesn't have a react component (such as `GridField`) into a react-rendered form, it will have been silently failing. The form will have been rendering everything except for the field(s) which have no react component. -> -> This will now fail by throwing an exception, which means your form won't render at all until you remove or replace the field(s). - -### Other new features - -- We've added a new [`SiteTree.hide_pagetypes`](api:SilverStripe\CMS\Model\SiteTree->hide_pagetypes) configuration property. Unlike [`SiteTree.hide_ancestor`](api:SilverStripe\CMS\Model\SiteTree->hide_ancestor) (which has [now been deprecated](#api-silverstripe-cms)), this is an array. This allows you to define all page types that should be hidden in a single configuration property in your YAML configuration. -- We've added a new [`DBText.summary_sentence_separators`](api:SilverStripe\ORM\FieldType\DBText->summary_sentence_separators) configuration property. This is used to split sentences in the [`DBText::Summary()`](api:SilverStripe\ORM\FieldType\DBText::Summary()) method. The default configuration value includes `.`, `!`, and `?`. Previously, only `.` was used to split sentences. -- You can now upload [Braille ASCII file format](https://en.wikipedia.org/wiki/Braille_ASCII) (`.brf`) files to the CMS without needing to modify the [allowed file types](/developer_guides/files/allowed_file_types/). -- We've added a new [`FilesystemPublisher.disallowed_status_codes`](api:SilverStripe\StaticPublishQueue\Publisher\FilesystemPublisher->disallowed_status_codes) configuration property to the `silverstripe/staticpublishqueue` module, allowing you to avoid caching responses for certain HTTP status codes. See [the documentation](https://github.com/silverstripe/silverstripe-staticpublishqueue/blob/6/docs/en/basic_configuration.md#excluding-response-codes) for more details. -- We've added a new [`LeftAndMain.extra_requirements_i18n`](api:SilverStripe\Admin\LeftAndMain->extra_requirements_i18n) configuration property which can be used to load i18n JavaScript localisation files into the CMS. -- We've added a new [`LeftAndMain::jsonSuccess()`](api:SilverStripe\Admin\LeftAndMain::jsonSuccess()) method to make it easier to return JSON data in a response from a `LeftAndMain` subclass. -- The [Composer runtime API](https://getcomposer.org/doc/07-runtime.md#installed-versions) is now being used in the [`VersionProvider`](api:SilverStripe\Core\Manifest\VersionProvider) class instead of relying on the `composer.lock` file. - -## API changes - -### `silverstripe/framework` {#api-silverstripe-framework} - -The following legacy subclasses of [`PasswordEncryptor`](api:SilverStripe\Security\PasswordEncryptor) have been deprecated, and will be removed in a future major release. If you are using one of these password encryptors in your projects, we strongly recommend swapping to one that has not been deprecated ([`PasswordEncryptor_Blowfish`](api:SilverStripe\Security\PasswordEncryptor_Blowfish) is the current recommendation, and is the default encryptor for passwords in new installations). Note that changing the password encryptor will also require that all of your members reset their passwords. - -- [`PasswordEncryptor_None`](api:SilverStripe\Security\PasswordEncryptor_None) -- [`PasswordEncryptor_LegacyPHPHash`](api:SilverStripe\Security\PasswordEncryptor_LegacyPHPHash) -- [`PasswordEncryptor_MySQLOldPassword`](api:SilverStripe\Security\PasswordEncryptor_MySQLOldPassword) -- [`PasswordEncryptor_MySQLPassword`](api:SilverStripe\Security\PasswordEncryptor_MySQLPassword) - -The `getThrowExceptionOnBadDataType()` and `setThrowExceptionOnBadDataType()` methods have been deprecated in the following classes. These methods are used to allow silent failures which result from poorly configured `GridFieldConfig`. In a future major release these methods will be removed and the associated failures will always throw exceptions, prompting developers to correctly set up their configuration in a way that works the way they expect it to. - -- [`GridFieldFilterHeader`](api:SilverStripe\Forms\GridField\GridFieldFilterHeader::setThrowExceptionOnBadDataType()) -- [`GridFieldPaginator`](api:SilverStripe\Forms\GridField\GridFieldPaginator::setThrowExceptionOnBadDataType()) -- [`GridFieldSortableHeader`](api:SilverStripe\Forms\GridField\GridFieldSortableHeader::setThrowExceptionOnBadDataType()) - -The following unused API have been deprecated and will be removed in a future major release: - -- Configuration property [`DataObject.subclass_access`](api:SilverStripe\ORM\DataObject->subclass_access) -- Public static method [`DataObject::disable_subclass_access()`](api:SilverStripe\ORM\DataObject::disable_subclass_access()) -- Public static method [`DataObject::enable_subclass_access()`](api:SilverStripe\ORM\DataObject::enable_subclass_access()) - -The [`ViewableData::getIterator()`](api:SilverStripe\View\ViewableData::getIterator()) method has been deprecated and will be removed in a future major release. - -### `silverstripe/cms` {#api-silverstripe-cms} - -The [`SiteTree.hide_ancestor`](api:SilverStripe\CMS\Model\SiteTree->hide_ancestor) configuration property has been deprecated. Use [`SiteTree.hide_pagetypes`](api:SilverStripe\CMS\Model\SiteTree->hide_pagetypes) instead. - -### `silverstripe/versioned` {#api-silverstripe-versioned} - -The `$having` parameter in the [`Versioned::Versions()`](api:SilverStripe\Versioned\Versioned::Versions()) method has been deprecated. This parameter was never used, and has been removed from the method signature. - -## Bug fixes - -- The assets admin section now respects the [`Upload_Validator.default_max_file_size`](api:SilverStripe\Assets\Upload_Validator->default_max_file_size) configuration if [`AssetAdmin.max_upload_size`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin->max_upload_size) has not been explicitly set for your project. Previously, asset admin would ignore `Upload_Validator.default_max_file_size` and just use the PHP `upload_max_filesize` ini configuration by default. See [file upload limits](/developer_guides/files/file_management/#upload-limits) for more details. -- Redirector pages with a link to a missing or unpublished page/file will now return a 404 response. You can revert to the previous behaviour by setting the [`RedirectorPageController.missing_redirect_is_404`](api:SilverStripe\CMS\Model\RedirectorPageController->missing_redirect_is_404) configuration property to `false`. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - - -## Change log - -### Security {#changelog-security} - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2023-12-06 [4b1b48704](https://github.com/silverstripe/silverstripe-framework/commit/4b1b487041536f958a68a17400686d16eb77d1bb) Allow permission checks in BulkLoader (Guy Sartorelli) - See [cve-2023-49783](https://www.silverstripe.org/download/security-releases/cve-2023-49783) - - 2023-11-29 [873b721b6](https://github.com/silverstripe/silverstripe-framework/commit/873b721b6b999c5ac189326cf9e1893a4df7d1f8) Don't show or add records the member isn't allowed to (Guy Sartorelli) - See [cve-2023-48714](https://www.silverstripe.org/download/security-releases/cve-2023-48714) - -- silverstripe/admin (2.1.0 -> 2.2.0) - - 2023-12-06 [9b96bbde](https://github.com/silverstripe/silverstripe-admin/commit/9b96bbde2857c9143ce6266093b6935e0a0e1d2c) Opt in to permission checks in bulk loaders (Guy Sartorelli) - See [cve-2023-49783](https://www.silverstripe.org/download/security-releases/cve-2023-49783) - -- silverstripe/graphql (5.1.0 -> 5.2.0) - - 2023-10-31 [8e64567](https://github.com/silverstripe/silverstripe-graphql/commit/8e645670aecd6858069f33bc092485d09ee9f734) Ensure canView() checks are run (Steve Boyd) - See [cve-2023-44401](https://www.silverstripe.org/download/security-releases/cve-2023-44401) - -### Features and enhancements {#changelog-features-and-enhancements} - -- silverstripe/recipe-cms (5.1.0 -> 5.2.0) - - 2024-01-17 [9dbd01e](https://github.com/silverstripe/recipe-cms/commit/9dbd01e7046135c17235e870bc9c787f1ab70c9b) Add generic types (#79) (Guy Sartorelli) - -- silverstripe/assets (2.1.0 -> 2.2.0) - - 2024-01-25 [3326749](https://github.com/silverstripe/silverstripe-assets/commit/3326749de4848186f6649b692248dce017bf0ae6) Refactor FileIDHelper classes to reduce code duplication (#587) (Guy Sartorelli) - - 2024-01-17 [2ed92f8](https://github.com/silverstripe/silverstripe-assets/commit/2ed92f8f357eb550a8c4a3b2e956ab0c8b54605e) Add generic types (#584) (Guy Sartorelli) - - 2024-01-16 [a40ab50](https://github.com/silverstripe/silverstripe-assets/commit/a40ab5085a7bf2d46f33effa950814e58a014523) Allow file variants with different extensions (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2024-04-02 [cca2f7059](https://github.com/silverstripe/silverstripe-framework/commit/cca2f7059bc572497a8ed80f2d35e12a94984683) Update PHPDocs for methods with missing nullable return types (#11187) (Thomas Portelange) - - 2024-03-14 [777056d86](https://github.com/silverstripe/silverstripe-framework/commit/777056d8611ad3ba91d13853bf721e2506f13146) fieldList is an array or null (Thomas Portelange) - - 2024-03-12 [b031ade73](https://github.com/silverstripe/silverstripe-framework/commit/b031ade73ab78371fa7b3a1a685de483b950b045) update some docblock types (#11168) (Thomas Portelange) - - 2024-02-20 [528344d1b](https://github.com/silverstripe/silverstripe-framework/commit/528344d1b0c9d02787aed0acca42b022e8c14b98) Allow manipulating eagerloading queries (#11140) (Guy Sartorelli) - - 2024-02-16 [a3ce922f1](https://github.com/silverstripe/silverstripe-framework/commit/a3ce922f1dea4beea797639bd33d10b87eaf8a9f) Allow better subclassing of MoneyField (Dominik Beerbohm) - - 2024-02-16 [8664d2c4e](https://github.com/silverstripe/silverstripe-framework/commit/8664d2c4e9ce10377f1df0b2a5dd759db43da748) Allow all valid true-like ini values (Guy Sartorelli) - - 2024-02-08 [5e53dbcdb](https://github.com/silverstripe/silverstripe-framework/commit/5e53dbcdbcf0cc5361ea808b951829092c03ec27) Add a trace comment for queries in dev mode (#11065) (Guy Sartorelli) - - 2024-02-02 [2e4bc9515](https://github.com/silverstripe/silverstripe-framework/commit/2e4bc9515730b5fc95d163e21682f2cb0082e92e) Add UrlField (Steve Boyd) - - 2024-02-02 [7f7169533](https://github.com/silverstripe/silverstripe-framework/commit/7f716953358118dc2763a6b2217f82e8eb69a92a) Wire up symfony/validator (#11123) (Guy Sartorelli) - - 2024-01-30 [9d335f73d](https://github.com/silverstripe/silverstripe-framework/commit/9d335f73d6853281ef4bd1a66e353dfd13a7b945) HasOneRelationFieldInterface (Steve Boyd) - - 2024-01-17 [357ed7ad7](https://github.com/silverstripe/silverstripe-framework/commit/357ed7ad7e6f9e1b7e7bb939a118a4448dbc4ec7) Add generic types (#11108) (Guy Sartorelli) - - 2023-12-21 [2487c4085](https://github.com/silverstripe/silverstripe-framework/commit/2487c4085d13dd14e1935f496f3f339c6d1ebcc0) Create Requirements::customScriptWithAttributes (#11076) (Finlay Metcalfe) - - 2023-12-18 [e66c1aec0](https://github.com/silverstripe/silverstripe-framework/commit/e66c1aec0614c5c30e16d1c58cd9813aa7d6b4bc) Use SearchableDropdownField for autoscaffolded has_one relationships (Steve Boyd) - - 2023-12-14 [23eca53df](https://github.com/silverstripe/silverstripe-framework/commit/23eca53dfbd81576db6b35946d5872f58ae4526d) SearchableDropdownField (Steve Boyd) - - 2023-12-11 [c405ed6cf](https://github.com/silverstripe/silverstripe-framework/commit/c405ed6cf3977f2502be158432816aa1a06957dd) Allow a single has_one to manage multiple reciprocal has_many (#11084) (Guy Sartorelli) - - 2023-11-22 [fdb329913](https://github.com/silverstripe/silverstripe-framework/commit/fdb329913c6e71f55c88543ed32ef55d0bfde9aa) Throw exception when no react component (Steve Boyd) - - 2023-11-14 [3d64eac12](https://github.com/silverstripe/silverstripe-framework/commit/3d64eac1293a7522646be0fbae54d185a9ea3a72) Make most GridField components work with arbitrary data (Guy Sartorelli) - - 2023-11-14 [5838772b1](https://github.com/silverstripe/silverstripe-framework/commit/5838772b193df35ee7665770ccd32bf19f65355b) Explicitly require DataObject for some gridfield components (Guy Sartorelli) - - 2023-11-13 [b1295af28](https://github.com/silverstripe/silverstripe-framework/commit/b1295af281c042281df01dde4bde0443c5867498) Provide an easy way to filter arbitrary ViewableData in gridfields (Guy Sartorelli) - - 2023-11-03 [b9b891d05](https://github.com/silverstripe/silverstripe-framework/commit/b9b891d05096ccf6370decc8f09500ee9be0e48f) handle sub-urls (Andrew Paxley) - - 2023-11-02 [2cb84e90d](https://github.com/silverstripe/silverstripe-framework/commit/2cb84e90d481e4635168e47061304373b552a78f) remove devbuild bypass (Andrew Paxley) - - 2023-11-02 [5d4327b23](https://github.com/silverstripe/silverstripe-framework/commit/5d4327b23834b4b090ca5e9c8d9aad93497319ed) replace permission checks with canView check on TestDBTask (Andrew Paxley) - - 2023-10-31 [78444a44c](https://github.com/silverstripe/silverstripe-framework/commit/78444a44ca8b77e304537023cf176a640355ba23) add DevAdminConfirmationMiddleware (Andrew Paxley) - - 2023-10-19 [159112ca8](https://github.com/silverstripe/silverstripe-framework/commit/159112ca8b5e3c02e6c31dff54851a76f13465bc) Generate a random password if a blank password is entered (Steve Boyd) - - 2023-10-03 [a0cbebb2d](https://github.com/silverstripe/silverstripe-framework/commit/a0cbebb2d1d8459284343132340d5180e0b69213) allow stacked messages on FormMessage (Andrew Paxley) - - 2023-10-02 [44b170098](https://github.com/silverstripe/silverstripe-framework/commit/44b170098ea2ff5f361ec01577b570c75c0d85f1) `Add ORM abstraction for "WITH" clauses (#10943)` (Guy Sartorelli) - - 2023-09-27 [7d5c62ed5](https://github.com/silverstripe/silverstripe-framework/commit/7d5c62ed5f0cbdb0f64ecaecf3ed245d8dc40d78) Add rightJoin method to DataList (#10961) (Guy Sartorelli) - - 2023-09-24 [fac335673](https://github.com/silverstripe/silverstripe-framework/commit/fac33567390b9a58a700820a1de5278f4a3e4937) Enable allowing collisions for field statements (#10957) (Guy Sartorelli) - - 2023-09-24 [bbc0295f8](https://github.com/silverstripe/silverstripe-framework/commit/bbc0295f86dc23ab590e3e1455db51cc3826cec8) Add abstraction for sql RIGHT JOIN (#10954) (Guy Sartorelli) - - 2023-09-24 [b28749db4](https://github.com/silverstripe/silverstripe-framework/commit/b28749db440a4ab0d859e1c7284155c18b86ff4e) Allow selecting multiple (or no) tables (#10953) (Guy Sartorelli) - - 2023-09-19 [b3b1d0761](https://github.com/silverstripe/silverstripe-framework/commit/b3b1d07616b3bdb96f27c632f1511d00ec45c532) Deprecate old password encryptors (#10948) (Guy Sartorelli) - - 2023-08-04 [76da701b6](https://github.com/silverstripe/silverstripe-framework/commit/76da701b6b356214cbc1b3f3f0c8e9fd19ba26a6) Add sql UNION abstraction (Guy Sartorelli) - - 2023-07-12 [3244b44a5](https://github.com/silverstripe/silverstripe-framework/commit/3244b44a54aa6b227617bc1177449dac742ad64a) add permissions for build tasks (Andrew Paxley) - - 2021-12-04 [bf629dfab](https://github.com/silverstripe/silverstripe-framework/commit/bf629dfabd0587447384bda4b997760478b302a0) Split sentences by configurable punctuation for summary (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0) - - 2024-03-09 [ea554c52](https://github.com/silverstripe/silverstripe-admin/commit/ea554c5254ed8e6ae1f7ecbc0b07ec20e71d1b53) Move spinner to a seperate template so other module can include it (Maxime Rainville) - - 2024-02-26 [41f8bd3f](https://github.com/silverstripe/silverstripe-admin/commit/41f8bd3ffde5d7875e6edc007b877348bb6d0982) Refactor FormBuilderModal and split up the Modal into its own component (#1631) (Maxime Rainville) - - 2024-02-13 [6d183e4d](https://github.com/silverstripe/silverstripe-admin/commit/6d183e4d38e0e91f8f804c845c372d34d9488c8a) `Add extra_requirements_i18n config to LeftAndMain (#1678)` (Guy Sartorelli) - - 2024-01-29 [73e30a0f](https://github.com/silverstripe/silverstripe-admin/commit/73e30a0fbb680bd719e7c8830de9eaf12c02309d) Add jsonSuccess() (Steve Boyd) - - 2024-01-25 [c16fb0f3](https://github.com/silverstripe/silverstripe-admin/commit/c16fb0f3c11ff25884586926554e912aaa44025f) Refactor sslink slightly for easier maintenance (#1661) (Guy Sartorelli) - - 2024-01-24 [493909d0](https://github.com/silverstripe/silverstripe-admin/commit/493909d07df2878ce248345dc7429c12f79cd0b1) Remove background form description and unclickable fields (#1652) (Sabina Talipova) - - 2024-01-17 [75b51fc1](https://github.com/silverstripe/silverstripe-admin/commit/75b51fc19ca6d124fc848782b6958dfe92cb1a1f) Add generic types (#1648) (Guy Sartorelli) - - 2023-12-13 [c63d0136](https://github.com/silverstripe/silverstripe-admin/commit/c63d01365c92b263483e93b080a5dd49cc3c5f9b) SearchableDropdownField (Steve Boyd) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0) - - 2024-01-18 [badbc4fd](https://github.com/silverstripe/silverstripe-asset-admin/commit/badbc4fddd20f6c917fea8d96b6e172af837f60d) Add generic types (#1433) (Guy Sartorelli) - - 2024-01-08 [a144ac18](https://github.com/silverstripe/silverstripe-asset-admin/commit/a144ac1884fe04d8521eddebe8ce992ef74057c3) Let AssetAdmin default to Upload_Validator default upload limits (#1430) (Guy Sartorelli) - - 2023-12-13 [32480e20](https://github.com/silverstripe/silverstripe-asset-admin/commit/32480e20367abe3a8ec9ff5349f246e9088f4ff8) Use SearchableMultiDropdownField (Steve Boyd) - - 2023-11-07 [b160b1c6](https://github.com/silverstripe/silverstripe-asset-admin/commit/b160b1c6622ccb041bdcfec19c863efef0b15f93) Select all and clear all functionality (Steve Boyd) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0) - - 2024-01-17 [5b75cb2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5b75cb2f51f77c62cced3c9e649eca2a4e072c63) Add generic types (#291) (Guy Sartorelli) - - 2023-11-07 [1c20dbf](https://github.com/silverstripe/silverstripe-campaign-admin/commit/1c20dbfa9db78df6ea1f23b1c65c005d56c2dec9) More Actions button is hidden if Campaign is published (#288) (Sabina Talipova) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0) - - 2024-01-18 [ad08d76](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ad08d7632c4db63d59f361f92002d2a87af102f6) Add generic types (#319) (Guy Sartorelli) - -- silverstripe/cms (5.1.0 -> 5.2.0) - - 2024-01-18 [3847b3ea](https://github.com/silverstripe/silverstripe-cms/commit/3847b3ea19529f08f313891c5ec5c015e407ec8a) Add generic types (#2914) (Guy Sartorelli) - - 2024-01-08 [a5d2b3bb](https://github.com/silverstripe/silverstripe-cms/commit/a5d2b3bb32fc9709e81b2087d0e013e4bcdc4206) Return 404 when redirector page wants to link to missing page (#2663) (Marco Hermo) - - 2023-12-13 [3d94a0e3](https://github.com/silverstripe/silverstripe-cms/commit/3d94a0e3d002da4ba76e677ff175a5907e887699) Use SearchableMultiDropdownField to select Members (Steve Boyd) - -- silverstripe/errorpage (2.1.0 -> 2.2.0) - - 2024-01-17 [93f6715](https://github.com/silverstripe/silverstripe-errorpage/commit/93f6715ca3d1457913db5e74351d4bf9784c0c4c) Add generic types (#95) (Guy Sartorelli) - - 2023-09-25 [b4f0088](https://github.com/silverstripe/silverstripe-errorpage/commit/b4f00881f9b7bef724d42f9a037df196ecc888f1) add config for allowed_error_codes (Andrew Paxley) - - 2023-09-25 [9e1cde4](https://github.com/silverstripe/silverstripe-errorpage/commit/9e1cde4593601f89f132d5df87dd8613f8a6a641) additional error codes, tidy translations (Andrew Paxley) - -- silverstripe/siteconfig (5.1.0 -> 5.2.0) - - 2023-12-18 [37e8a4f3](https://github.com/silverstripe/silverstripe-siteconfig/commit/37e8a4f3ac5065755726b96b9e08cdcdcb326e47) Use SearchableMultiDropdownField (Steve Boyd) - - 2023-10-19 [7ab6480b](https://github.com/silverstripe/silverstripe-siteconfig/commit/7ab6480b3e0058c6d4903e629bba32a567e7d59b) `Add "only these users" option to siteconfig access settings` (Guy Sartorelli) - -- silverstripe/versioned (2.1.0 -> 2.2.0) - - 2024-01-19 [96736c2](https://github.com/silverstripe/silverstripe-versioned/commit/96736c2aafd52fbe0138e797e06df66cc17217bb) Add generic types (#431) (Guy Sartorelli) - - 2023-12-12 [1e73253](https://github.com/silverstripe/silverstripe-versioned/commit/1e7325381bdaf16d05c09e3b24d0995b58caccf7) Respect new has_one config (#427) (Guy Sartorelli) - - 2023-11-03 [044bdb0](https://github.com/silverstripe/silverstripe-versioned/commit/044bdb06913dba7ed8d540dcf420221fea586b52) add CAN_DEV_BUILD to non_live_permissions (Andrew Paxley) - - 2021-02-26 [1735fd6](https://github.com/silverstripe/silverstripe-versioned/commit/1735fd6f075c7a9373475555c4b99d41c329b77a) Stages differ recursive. (Danaë Miller-Clendon) - -- silverstripe/graphql (5.1.0 -> 5.2.0) - - 2024-01-17 [8fd1bdc](https://github.com/silverstripe/silverstripe-graphql/commit/8fd1bdc4a5f92c6889e27ad77be781f1727e5c13) Add generic types (#567) (Guy Sartorelli) - - 2023-10-31 [b47487d](https://github.com/silverstripe/silverstripe-graphql/commit/b47487df198180f8ac9a37ebfacd0987953fb4ff) use init_permissions to match core PR (Andrew Paxley) - -- silverstripe/session-manager (2.1.0 -> 2.2.0) - - 2024-01-18 [94c0603](https://github.com/silverstripe/silverstripe-session-manager/commit/94c0603894e9f4c833ae7f8892bafdf2ced0e25a) Add generic types (#177) (Guy Sartorelli) - -- silverstripe/login-forms (5.1.0 -> 5.2.0) - - 2024-01-18 [3a820bd](https://github.com/silverstripe/silverstripe-login-forms/commit/3a820bdf746c717fbf4a1596396876427128e143) Add generic types (#162) (Guy Sartorelli) - -- silverstripe/iframe (3.1.0 -> 3.2.0) - - 2024-01-23 [53008d0](https://github.com/silverstripe/silverstripe-iframe/commit/53008d047323a78c3103e26400ba71ebadeb58b4) Add generic types (#77) (Guy Sartorelli) - -- silverstripe/tagfield (3.1.0 -> 3.2.0) - - 2024-01-23 [556772b](https://github.com/silverstripe/silverstripe-tagfield/commit/556772b7be1620d034dbd0ac837b138d3b80e593) Add generic types (#277) (Guy Sartorelli) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0) - - 2024-01-23 [336d1c7](https://github.com/silverstripe/silverstripe-taxonomy/commit/336d1c768e83ddcd0b8612702a878ee77cf18a91) Add generic types (#102) (Guy Sartorelli) - -- silverstripe/blog (4.1.0 -> 4.2.0) - - 2024-01-18 [3b80922](https://github.com/silverstripe/silverstripe-blog/commit/3b8092272be26bf34126f15dc6cfbef9eed6f075) Add generic types (#739) (Guy Sartorelli) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0) - - 2024-01-18 [77aba75](https://github.com/silverstripe/silverstripe-spamprotection/commit/77aba75ffae109ba97e9903900031e48b4aec76c) Add generic types (#108) (Guy Sartorelli) - -- silverstripe/contentreview (5.1.0 -> 5.2.0) - - 2024-01-18 [f04e9fa](https://github.com/silverstripe/silverstripe-contentreview/commit/f04e9fa4cabe1daeec5c9589ab0a6516dda34704) Add generic types (#220) (Guy Sartorelli) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0) - - 2024-01-18 [b78b1af](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/b78b1af802ad797a23cdb1b64e3210cc10dedc87) Add generic types (#222) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0) - - 2024-01-23 [65ec116](https://github.com/symbiote/silverstripe-advancedworkflow/commit/65ec11693a111b280a17d3b8ef7ab6a0af947334) Add generic types (#511) (Guy Sartorelli) - -- silverstripe/userforms (6.1.0 -> 6.2.0) - - 2024-01-18 [ca972ff](https://github.com/silverstripe/silverstripe-userforms/commit/ca972ff5f2fa1d059a542b0afb3921ae285b9ef1) Add generic types (#1261) (Guy Sartorelli) - - 2023-12-20 [5bcbad6](https://github.com/silverstripe/silverstripe-userforms/commit/5bcbad6a79e3df41ba9b1ef150fb578a80e1ec6c) Remove LastEdited from summary_fields (#1173) (Bauke) - -- silverstripe/externallinks (3.1.0 -> 3.2.0) - - 2024-01-23 [e8bdf12](https://github.com/silverstripe/silverstripe-externallinks/commit/e8bdf1203d7b1c2c8c4970400f41fc34759fe286) Add generic types (#117) (Guy Sartorelli) - - 2023-11-08 [8797f1f](https://github.com/silverstripe/silverstripe-externallinks/commit/8797f1f41e1a58e6866351a6eb20ebc1a6e24a88) Restrict access to getJobStatus execution (#113) (Sabina Talipova) - -- silverstripe/securityreport (3.0.0 -> 3.1.0) - - 2024-01-18 [2e8f342](https://github.com/silverstripe/silverstripe-securityreport/commit/2e8f342f6a0393c29dc2b8df7fbe9110e370599b) Add generic types (#72) (Guy Sartorelli) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0) - - 2024-01-18 [00ca457](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/00ca45728cc07f06c51c5fb0238b9b9dbf74785d) Add generic types (#76) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.0.1 -> 3.1.0) - - 2023-06-14 [32cccc9](https://github.com/bringyourownideas/silverstripe-maintenance/commit/32cccc9e9ebdc92c0c04b4509b08b1e4a773d742) Update translations (Steve Boyd) - -- bringyourownideas/silverstripe-composer-update-checker (4.0.0 -> 4.1.0) - - 2023-06-14 [3719b52](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/3719b52a740e6aed79402f4ab75046ebc9447d33) Update translations (Steve Boyd) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0) - - 2024-01-18 [b7b4ff8](https://github.com/silverstripe/silverstripe-versionfeed/commit/b7b4ff8fbd312871c8f63b226d310d5c39d459d3) Add generic types (#94) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0) - - 2024-01-29 [7351e65](https://github.com/silverstripe/silverstripe-elemental/commit/7351e65ecb8b08702c05056a2a2190d83ffcd78d) Versioned badge to elements (Sabina Talipova) - - 2024-01-22 [b25ed5f](https://github.com/silverstripe/silverstripe-elemental/commit/b25ed5f761b514b38418287993ce49d506ddb1af) Add generic types (#1131) (Guy Sartorelli) - - 2024-01-19 [bf8d867](https://github.com/silverstripe/silverstripe-elemental/commit/bf8d867ede2cd6d2ad14b37d02140c6b85c653f7) `BaseElement::getType() use static::class instead of __CLASS__ for better defaults` (Christopher Darling) - -- silverstripe/auditor (3.0.0 -> 3.1.0) - - 2024-01-18 [8c847f5](https://github.com/silverstripe/silverstripe-auditor/commit/8c847f59c6381a1f8cee5584c71f58aaf9db740e) Add generic types (#67) (Guy Sartorelli) - -- silverstripe/registry (3.1.0 -> 3.2.0) - - 2024-01-23 [a42be22](https://github.com/silverstripe/silverstripe-registry/commit/a42be22b2798c3215a6a4869bf5a4f38d7c4c0ed) Add generic types (#90) (Guy Sartorelli) - -- silverstripe/mfa (5.1.0 -> 5.2.0) - - 2024-01-19 [97e6c80](https://github.com/silverstripe/silverstripe-mfa/commit/97e6c80f4514e5a083ec576ab15b8735147adc7e) Add generic types (#524) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0) - - 2024-01-18 [6fb435f](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/6fb435f88dad4d5d8bc9b96e6b9afc911223eb93) Add generic types (#94) (Guy Sartorelli) - -- silverstripe/ldap (2.1.0 -> 2.2.0) - - 2024-01-19 [894f204](https://github.com/silverstripe/silverstripe-ldap/commit/894f204e433dc4119ea483ce806fe706d43f93bb) Add generic types (#67) (Guy Sartorelli) - -- silverstripe/textextraction (4.0.0 -> 4.1.0) - - 2024-01-22 [cc43a12](https://github.com/silverstripe/silverstripe-textextraction/commit/cc43a120c8b2033009c10a67d0af53337c8e0929) Add generic types (#86) (Guy Sartorelli) - -- silverstripe/realme (5.2.0 -> 5.3.0) - - 2024-01-18 [5971936](https://github.com/silverstripe/silverstripe-realme/commit/59719369503ba98d4696c41453cf5a7626cdea77) Add generic types (#128) (Guy Sartorelli) - -- silverstripe/subsites (3.1.0 -> 3.2.0) - - 2024-01-23 [11a941f](https://github.com/silverstripe/silverstripe-subsites/commit/11a941f63784d5e4b60667fcd79977d4269c4486) Add generic types (#554) (Guy Sartorelli) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0) - - 2024-01-17 [dd5f929](https://github.com/silverstripe/silverstripe-lumberjack/commit/dd5f929b2b829b150aef312031b86e835bceb80b) Add generic types (#137) (Guy Sartorelli) - -- silverstripe/staticpublishqueue (6.1.0 -> 6.2.0) - - 2024-01-19 [192ea76](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/192ea76dca70f303a5ddd39d55e377f95cfb6119) Add generic types (#182) (Guy Sartorelli) - - 2023-12-22 [50519cd](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/50519cd04249e4d023623b820507c1a19a85dcfa) Extension points for FilesystemPublisher. (Mojmir Fendek) - - 2023-11-30 [ebde61e](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/ebde61e72a0df37ac19cee78d690c6458f4545ef) Configuration property for disallowed status codes (#178) (Guy Sartorelli) - -- cwp/agency-extensions (3.1.0 -> 3.2.0) - - 2024-01-22 [0dc9d10](https://github.com/silverstripe/cwp-agencyextensions/commit/0dc9d10d01ae400b053e17676fd467c1bfb9d055) Add generic types (#110) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2024-01-23 [78fa8ba](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/78fa8ba747a7edc66e7524441f4c3adcc182791e) `Make toast message "Records reordered." localisable (#321)` (Tom Oude Rengerink) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0) - - 2024-01-23 [9cf0162](https://github.com/symbiote/silverstripe-queuedjobs/commit/9cf01629d66dfdb8d6129d5b4d6761bcd60f3f43) Add generic types (#415) (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0) - - 2024-01-12 [b55dcf4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b55dcf49692ef41bec590e4f9b8544eadcd3f1d3) Add generic types (Guy Sartorelli) - - 2023-06-14 [ef3fed4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ef3fed434b6113f8f697097548960d26973078cf) Update translations (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0) - - 2024-03-12 [967c457](https://github.com/silverstripe/silverstripe-linkfield/commit/967c4578185a3c8a4cff236822f46c59d3f245b3) Pre-render the LinkField in entwine (#241) (Maxime Rainville) - - 2024-03-11 [1fb149f](https://github.com/silverstripe/silverstripe-linkfield/commit/1fb149fa99e0b2f41b6b3b41c362e5581af46141) Use File Title (Steve Boyd) - - 2024-02-20 [87e8c17](https://github.com/silverstripe/silverstripe-linkfield/commit/87e8c178ed6ac1460b7f7f0b7c4c853fde7d766b) Avoid potential data disclosure (#233) (Guy Sartorelli) - - 2024-02-15 [c75615f](https://github.com/silverstripe/silverstripe-linkfield/commit/c75615f93d5fb3c899e2b9ee40e8528614e0a644) More standardisation (#223) (Guy Sartorelli) - - 2024-02-14 [3e97f0d](https://github.com/silverstripe/silverstripe-linkfield/commit/3e97f0d121e60a7cbc446df46a7b7398f6b1e43f) Better versioned history (Steve Boyd) - - 2024-02-13 [0c0cdaa](https://github.com/silverstripe/silverstripe-linkfield/commit/0c0cdaaee4dccf1c9b34ac7515b1fd7f6f8cda2d) Globally disallow link types (Steve Boyd) - - 2024-02-13 [f3de6ac](https://github.com/silverstripe/silverstripe-linkfield/commit/f3de6ac0672cebd60d0929b9a55e517675017f62) LinkField Behat tests (#201) (Sabina Talipova) - - 2024-02-13 [5d604a7](https://github.com/silverstripe/silverstripe-linkfield/commit/5d604a775fd9a8a31943538bb4eb5d1d1732984f) Icon alignment (Sabina Talipova) - - 2024-02-12 [fac2d31](https://github.com/silverstripe/silverstripe-linkfield/commit/fac2d310863bbc939e44af3d126eb4a283ef65d1) Improve keyboard support (Steve Boyd) - - 2024-02-12 [05c7b42](https://github.com/silverstripe/silverstripe-linkfield/commit/05c7b42065f64b484a265ef26daa5efb745dc289) Remove unused code (Guy Sartorelli) - - 2024-02-12 [28b833f](https://github.com/silverstripe/silverstripe-linkfield/commit/28b833fc4e009718a44ae3e4f154ee059357820f) Standardise naming and improve code quality (Guy Sartorelli) - - 2024-02-12 [51acf4f](https://github.com/silverstripe/silverstripe-linkfield/commit/51acf4f1fe6d9740a6694524df70665469882724) Add strong typing where possible (Guy Sartorelli) - - 2024-02-12 [d334cbc](https://github.com/silverstripe/silverstripe-linkfield/commit/d334cbc9fa87198130ac91672e3d6de313ab8e27) Move LeftAndMain requirements into config (Guy Sartorelli) - - 2024-02-12 [04ae65c](https://github.com/silverstripe/silverstripe-linkfield/commit/04ae65c3656e44f15a0866873191f06283f94e15) Allow developers to exclude LinkText field (#215) (Guy Sartorelli) - - 2024-02-12 [afef74f](https://github.com/silverstripe/silverstripe-linkfield/commit/afef74f1c62e6c33b8cf357d19beb5fb34ebde12) Refactor link field traits into abstract class (Guy Sartorelli) - - 2024-02-08 [4e43d54](https://github.com/silverstripe/silverstripe-linkfield/commit/4e43d547016193c223a504b949aed9178cfb6dbf) Rename and move Title field (Steve Boyd) - - 2024-02-06 [0099636](https://github.com/silverstripe/silverstripe-linkfield/commit/00996361724c73e0010006d587db99a6c86f02b2) Improved validation (Steve Boyd) - - 2024-01-31 [5155f17](https://github.com/silverstripe/silverstripe-linkfield/commit/5155f178808613bdca30e9dd681eea9bc7642ad0) Set Published button dirty state when Link is an unpublished state (Steve Boyd) - - 2024-01-29 [8fbe94b](https://github.com/silverstripe/silverstripe-linkfield/commit/8fbe94baf0a9f27d9ccb9d8a613821bae8198a17) Standardise API responses (Steve Boyd) - - 2024-01-29 [836d665](https://github.com/silverstripe/silverstripe-linkfield/commit/836d665540367f29a28669ac794018c921490661) Improve hover active and focus state styling (Steve Boyd) - - 2024-01-25 [4ba8267](https://github.com/silverstripe/silverstripe-linkfield/commit/4ba82670e5a827933f069e53a5e44a2b9d30e85a) Add disabled field state (Steve Boyd) - - 2024-01-24 [0c01fcf](https://github.com/silverstripe/silverstripe-linkfield/commit/0c01fcf461c50af5fab464c196bbf35d4ca04090) Hide the open in new window checkbox from phone and email links (Steve Boyd) - - 2024-01-24 [9bb3a1a](https://github.com/silverstripe/silverstripe-linkfield/commit/9bb3a1a4791f9762d7eede88336b28057fc104ed) Add Readonly field status (#172) (Sabina Talipova) - - 2024-01-24 [e6f7705](https://github.com/silverstripe/silverstripe-linkfield/commit/e6f7705c596fe486ad9d793c25c3bd59ec380887) Confirm user wishes to delete link (Steve Boyd) - - 2024-01-18 [2927d50](https://github.com/silverstripe/silverstripe-linkfield/commit/2927d505711890c503560a66eb755e05586dd8a8) Show a cannot create message when types is empty (Steve Boyd) - - 2024-01-17 [343c3d2](https://github.com/silverstripe/silverstripe-linkfield/commit/343c3d2292ff661eff855d38b52dcbd27525d0e6) MutliLinkField sorting (Steve Boyd) - - 2024-01-16 [eb88dd0](https://github.com/silverstripe/silverstripe-linkfield/commit/eb88dd0398a1188ef8c9afa7fa01fa1630d38d44) Join endpoint path segments (Steve Boyd) - - 2024-01-11 [6644853](https://github.com/silverstripe/silverstripe-linkfield/commit/6644853cf998f38f10992a2d8f1ca688cd1a34d9) Link type icon (Sabina Talipova) - - 2024-01-11 [912816c](https://github.com/silverstripe/silverstripe-linkfield/commit/912816cea9276147143ea26cf7f4cd388e2de2c8) Add sorting by link type (Sabina Talipova) - - 2024-01-10 [09ca349](https://github.com/silverstripe/silverstripe-linkfield/commit/09ca3496832dcc4485103d042c44fd7bf4962f68) Show loading component during ajax read requests (Steve Boyd) - - 2024-01-10 [9d3a6f0](https://github.com/silverstripe/silverstripe-linkfield/commit/9d3a6f0e4e914a07526a907c83f5e4edbaecaae8) Gracefully handle AJAX failures (Steve Boyd) - - 2024-01-10 [c563394](https://github.com/silverstripe/silverstripe-linkfield/commit/c563394eedce2017c88f620427a41524a16a2720) Show save record first text on unsaved owners (Steve Boyd) - - 2024-01-09 [0ea34be](https://github.com/silverstripe/silverstripe-linkfield/commit/0ea34be7b05a43c2451dba7aef2f8963ea55a948) Used on table extension (Steve Boyd) - - 2024-01-09 [2086a38](https://github.com/silverstripe/silverstripe-linkfield/commit/2086a38dc9a4c534f441e783c6778ba1d7fac964) Change clear text to delete (Steve Boyd) - - 2023-12-22 [279cfb5](https://github.com/silverstripe/silverstripe-linkfield/commit/279cfb585dcbe4ad6dc8031877808420e5cf0416) Save relations on link creation (Steve Boyd) - - 2023-12-19 [ea28fe1](https://github.com/silverstripe/silverstripe-linkfield/commit/ea28fe199ecc14c78ff406a48cdd27d726f11930) Remove LinkFieldController from cms menu (Steve Boyd) - - 2023-12-14 [84824c7](https://github.com/silverstripe/silverstripe-linkfield/commit/84824c7acf4318f85b6a2fe52dfa63aad3e154b2) Allowed link types (Sabina Talipova) - - 2023-12-11 [ffb1ae0](https://github.com/silverstripe/silverstripe-linkfield/commit/ffb1ae021b0f47d2260ec4f7bb85eab4e5361d5c) Add versioning to Link (Steve Boyd) - - 2023-12-05 [5e35a84](https://github.com/silverstripe/silverstripe-linkfield/commit/5e35a84b13a92ba9d51f23559a32621d9590a41f) Add permission methods based on owner (Guy Sartorelli) - - 2023-11-30 [1e1083d](https://github.com/silverstripe/silverstripe-linkfield/commit/1e1083d96badd101f8f37e18f182836bd655a7f0) Default link title for each link type (Sabina Talipova) - - 2023-11-28 [1be5f0d](https://github.com/silverstripe/silverstripe-linkfield/commit/1be5f0d456f2296bf460960c51482e0ff1af2761) Add MultiLinkField for managing many-type relations (Guy Sartorelli) - - 2023-11-28 [acb9c84](https://github.com/silverstripe/silverstripe-linkfield/commit/acb9c84297dda1825541c0d6512b7eae349cf3c1) Refactor LinkField in preparation for MultiLinkField (Guy Sartorelli) - - 2023-11-14 [64f5829](https://github.com/silverstripe/silverstripe-linkfield/commit/64f58293d0eaa06b1d792004904ba2a3b51f7fe6) Add localization support (#119) (Sabina Talipova) - - 2023-11-06 [6035de8](https://github.com/silverstripe/silverstripe-linkfield/commit/6035de8c0326c3f34d479659bf0cf21bce13d10b) LinkFieldController to handle FormSchema (Steve Boyd) - - 2023-09-26 [345c828](https://github.com/silverstripe/silverstripe-linkfield/commit/345c828ab1d65cdf06febf5cfc950c46ed11719f) Allow projects to define their own subclass templates (Steve Boyd) - - 2023-06-21 [d667d94](https://github.com/silverstripe/silverstripe-linkfield/commit/d667d94f83437fb5242b9b472d2da1406582b5d1) Query string support. (Mojmir Fendek) - - 2023-06-20 [6b69001](https://github.com/silverstripe/silverstripe-linkfield/commit/6b69001799889e378cc3c95d64cea90562766aa8) New extension points added (JSON field). (Mojmir Fendek) - - 2023-06-14 [3478f28](https://github.com/silverstripe/silverstripe-linkfield/commit/3478f28c227f2647970ab16e5135bb514751258c) Extension points for link model manipulation. (Mojmir Fendek) - - 2023-06-07 [77c7319](https://github.com/silverstripe/silverstripe-linkfield/commit/77c7319142168da70c8ca2da607c5c24c63aaeae) Allow form validation. (Mojmir Fendek) - - 2023-06-06 [3041730](https://github.com/silverstripe/silverstripe-linkfield/commit/3041730c055a243a98cdb663bfa1cbd3a917a00c) Insert / edit link button label. (Mojmir Fendek) - - 2023-06-06 [d425b33](https://github.com/silverstripe/silverstripe-linkfield/commit/d425b33513a5b2fa14a2793d3639eb90fd24964c) Allow model-level for customisation. (Mojmir Fendek) - - 2023-06-05 [6e8183a](https://github.com/silverstripe/silverstripe-linkfield/commit/6e8183ac9c1b8e1aa7726cdd071653a8620c8ee8) Extensibility improvements for link migration task. (Mojmir Fendek) - - 2021-11-11 [3e0f699](https://github.com/silverstripe/silverstripe-linkfield/commit/3e0f6997c53e6bea11681ac8926d9483a830b0a1) Empty link title fallbacks to Page. (#37) (Mojmir Fendek) - -### Bugfixes {#changelog-bugfixes} - -- silverstripe/vendor-plugin (2.0.1 -> 2.0.2) - - 2023-10-10 [175505b](https://github.com/silverstripe/vendor-plugin/commit/175505bf7286a02e47a3cba087d026f8b110b3e3) Method CopyMethod::copy as deprecated (Sabina Talipova) - -- silverstripe/assets (2.1.0 -> 2.2.0) - - 2024-01-18 [d9d5dac](https://github.com/silverstripe/silverstripe-assets/commit/d9d5dac314e01e3de4298dca0eb10af3b2f0f97e) Pass variant args into array_merge correctly (Guy Sartorelli) - - 2024-01-08 [46e07eb](https://github.com/silverstripe/silverstripe-assets/commit/46e07eb8ceddfb3fbe4fadc81a56f42f1932739f) Ensure the setAllowedMaxFileSize wont allow config values to exceed PHP limits (#469) (Nick) - - 2023-12-19 [6e3fd80](https://github.com/silverstripe/silverstripe-assets/commit/6e3fd806ca4a95b4df3f33cd7c5963b8ed842b04) Allow inconclusive mimetypes (#582) (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2024-04-11 [6743de435](https://github.com/silverstripe/silverstripe-framework/commit/6743de43560b082d9f10708c35556ae7e53ca56a) Remove ambiguity for polymorphic queries (#11195) (Guy Sartorelli) - - 2024-03-20 [8aab888d5](https://github.com/silverstripe/silverstripe-framework/commit/8aab888d5011d44c69e1f4ad6f6c28f6fe76bb2a) Fix link for managing roles (#11178) (Guy Sartorelli) - - 2024-03-01 [fcf5e324d](https://github.com/silverstripe/silverstripe-framework/commit/fcf5e324dd00c8a8cd42b014f92858734077b7f2) Handle non-breakable spaces (Thomas Portelange) - - 2024-02-26 [e7bc8ae99](https://github.com/silverstripe/silverstripe-framework/commit/e7bc8ae99f6fdbc0da942029a5ac11195ca4f15e) Generate salt if needed (Thomas Portelange) - - 2024-02-14 [d33332cb9](https://github.com/silverstripe/silverstripe-framework/commit/d33332cb9e7aededfb73a3cbf362490ee1e77ca4) Add eagerloaded data to ALL relevant lists (#11139) (Guy Sartorelli) - - 2024-02-12 [b56e771ed](https://github.com/silverstripe/silverstripe-framework/commit/b56e771ed5804fe1d6fd54aebd60051988e389ad) add missing rawurlencode (#11105) (Thomas Portelange) - - 2024-02-08 [e87c72470](https://github.com/silverstripe/silverstripe-framework/commit/e87c7247004ce6d5a5760eb6dade4e68043982c1) Don't assume mysql handle is an object (#11129) (Guy Sartorelli) - - 2024-02-07 [1dd81488a](https://github.com/silverstripe/silverstripe-framework/commit/1dd81488aace798dc196610e75240b452e392ce9) fix unknown table (Thomas Portelange) - - 2024-01-24 [afd53d1d6](https://github.com/silverstripe/silverstripe-framework/commit/afd53d1d6a39204fe7cc8867b1a91742c3d525bc) HTMLEditorField::setRows with Elemental (Sabina Talipova) - - 2024-01-11 [ff3a6f72d](https://github.com/silverstripe/silverstripe-framework/commit/ff3a6f72df39cca2bf40e46c10a6a9e20b39f78f) HTMLEditorField::setRows minimal hieght (#10965) (Sabina Talipova) - - 2024-01-09 [9bfb731bc](https://github.com/silverstripe/silverstripe-framework/commit/9bfb731bc3a36deae2147d830aa8485584ff2f17) Handle polymorphic relationships that use Owner instead of Parent (Steve Boyd) - - 2024-01-08 [e456de11b](https://github.com/silverstripe/silverstripe-framework/commit/e456de11b03f856599b9fc09c276fdf07ebb2541) Fix clobbering of the upload size validation (#10059) (Nick) - - 2023-12-19 [7dc1a7a12](https://github.com/silverstripe/silverstripe-framework/commit/7dc1a7a12b5e14d8ed1bfc93a6e3fac5dbb9aa4f) Correctly mark ConfirmedPasswordField children as required (Guy Sartorelli) - - 2023-12-13 [dd3a0dba2](https://github.com/silverstripe/silverstripe-framework/commit/dd3a0dba242d3c826614c4d87a1808ea2bac5769) Don't break the page if password recover email fails to send (Guy Sartorelli) - - 2023-12-13 [446810bc5](https://github.com/silverstripe/silverstripe-framework/commit/446810bc5e38a9319a72f21464c52f5502d5db56) Allow new password to save even if there's an error sending email (Guy Sartorelli) - - 2023-12-04 [40b888eaf](https://github.com/silverstripe/silverstripe-framework/commit/40b888eaf30f6c6899134f7fcbfb0705987516e1) UnsavedRelationList::last() sometimes returned an ID instead of an item (Loz Calver) - - 2023-12-04 [e28af9a5a](https://github.com/silverstripe/silverstripe-framework/commit/e28af9a5a7d41fe6bf240a3f51165f95acc5a98a) UnsavedRelationList first/last to return null if list is empty (fixes #11083) (Loz Calver) - - 2023-11-29 [6d903848a](https://github.com/silverstripe/silverstripe-framework/commit/6d903848ab2ce46875c7bca8cb67fed77b29a132) Don't replace config manifest for nested kernels (#11082) (Guy Sartorelli) - - 2023-11-21 [7eab49f85](https://github.com/silverstripe/silverstripe-framework/commit/7eab49f850070e1a2df5f7a2e38baad031aa1d54) Ensure environment is checked before enabling deprecations (#11055) (Guy Sartorelli) - - 2023-11-16 [05f1d9ab8](https://github.com/silverstripe/silverstripe-framework/commit/05f1d9ab863060fd2e7c66753f782e7cae2530c8) Make deprecation enabled check faster (Guy Sartorelli) - - 2023-11-13 [4dbbf04ba](https://github.com/silverstripe/silverstripe-framework/commit/4dbbf04ba5a68e68f2241380edc0e12145f0075c) Add extraEmptyValues to TreedropdownField (Steve Boyd) - - 2023-10-31 [d883719c1](https://github.com/silverstripe/silverstripe-framework/commit/d883719c16075412640e623557a2df4275965de1) ModelAdmin toast elements (Sabina Talipova) - - 2023-09-25 [55e42683f](https://github.com/silverstripe/silverstripe-framework/commit/55e42683f80d1a62c966917f262fbd05b33495b9) Match multi-line JOIN statements (#10960) (Guy Sartorelli) - - 2023-06-12 [51fd1d6b7](https://github.com/silverstripe/silverstripe-framework/commit/51fd1d6b7e45d7a7c0c26cae3cab7811b871362e) `Handle __TRAIT__ in i18nTextCollector` (Steve Boyd) - -- silverstripe/admin (2.1.0 -> 2.2.0) - - 2024-04-11 [ce3f7ea2](https://github.com/silverstripe/silverstripe-admin/commit/ce3f7ea2b9be17670415ba9d48e577aaa60724fc) Redirecting on preview loading (#1721) (Sabina Talipova) - - 2024-04-08 [d1bc8dc7](https://github.com/silverstripe/silverstripe-admin/commit/d1bc8dc7ca937ff367416db7c0083e000c5046c6) Cannot access dropdowns within accordion areas (Sabina Talipova) - - 2024-03-19 [aadc8aa9](https://github.com/silverstripe/silverstripe-admin/commit/aadc8aa96118a6c38d37fab015f1d27d0bfbd994) Correctly validate emails in WYSIWYG links (#1710) (Guy Sartorelli) - - 2024-03-04 [1df1ee77](https://github.com/silverstripe/silverstripe-admin/commit/1df1ee7713c30c5ac95f343100b9e019caefb8f1) JS Console errors and warnings (Sabina Talipova) - - 2024-02-26 [60563dbd](https://github.com/silverstripe/silverstripe-admin/commit/60563dbd4cbb162a55e504973ee460465cb78dd9) Support nested redux forms (Guy Sartorelli) - - 2024-02-25 [7918318d](https://github.com/silverstripe/silverstripe-admin/commit/7918318db45229d66ec82e8cb25fc541ed9617c7) Don't panic if classname isn't set (#1687) (Guy Sartorelli) - - 2024-02-22 [129a94a2](https://github.com/silverstripe/silverstripe-admin/commit/129a94a28d8652e6138eab1b441de8099d31d84f) Rebuild bundle (Mohamed Alsharaf) - - 2024-02-22 [b3e16081](https://github.com/silverstripe/silverstripe-admin/commit/b3e160818c4098d6bee742bed6cf747dd47c4ab6) Remove current active tab from session storage after use (Mohamed Alsharaf) - - 2024-02-08 [8a3833e8](https://github.com/silverstripe/silverstripe-admin/commit/8a3833e8128eb44d32da743772e579219284e3c1) Set the CSV importer based on the tab, not the model (#1676) (Guy Sartorelli) - - 2024-02-01 [725a9a11](https://github.com/silverstripe/silverstripe-admin/commit/725a9a11c332de7d33692e0ecabd02fbbf379e04) Use valid class for model importers (#1670) (Guy Sartorelli) - - 2024-01-25 [359a3953](https://github.com/silverstripe/silverstripe-admin/commit/359a39531b91994ca77538ce8fdd0dc9a191819b) Type error (Sabina Talipova) - - 2024-01-24 [925e06f4](https://github.com/silverstripe/silverstripe-admin/commit/925e06f4f5bee9cfd562f66c22bc89e2503a6f84) Add tinymce link menuitems per editor instance (#1653) (Guy Sartorelli) - - 2024-01-24 [799add9e](https://github.com/silverstripe/silverstripe-admin/commit/799add9e9ac2bf7d6a53394291dc59fce37f154b) HTMLEditorField::setRows with Elemental (Sabina Talipova) - - 2024-01-23 [c06b2f2a](https://github.com/silverstripe/silverstripe-admin/commit/c06b2f2adb0c683110ce50aaed97c55b22497412) Use valid class for model importers (Guy Sartorelli) - - 2024-01-17 [79955d24](https://github.com/silverstripe/silverstripe-admin/commit/79955d24314c8d1781b849683282c1d642476a04) Elemental no longer allows saving of HTMLEditorField (#1651) (Sabina Talipova) - - 2024-01-11 [bc92e1f1](https://github.com/silverstripe/silverstripe-admin/commit/bc92e1f14f7ef7f2093875866ec35fae74825404) HTMLEditorField::setRows method (#1588) (Sabina Talipova) - - 2024-01-09 [4dd2432b](https://github.com/silverstripe/silverstripe-admin/commit/4dd2432bd81f84750a3f2a208f7af4d5a0e5e08c) Remove unstable prefix from useBlocker (Steve Boyd) - - 2024-01-07 [12e97880](https://github.com/silverstripe/silverstripe-admin/commit/12e97880a145f0d126b5d94b5434d59f00e39883) Rebuild bundle (Steve Boyd) - - 2023-12-21 [d949db14](https://github.com/silverstripe/silverstripe-admin/commit/d949db1433dfc25086c6e3b03b4e62c00da7ba13) decode entities in toast message (Thomas Portelange) - - 2023-12-19 [0755502d](https://github.com/silverstripe/silverstripe-admin/commit/0755502de7eedfc21f2ab02870c85a07d9d8fc03) Ensure react-select field menus are always on top (#1637) (Guy Sartorelli) - - 2023-12-15 [5d39d877](https://github.com/silverstripe/silverstripe-admin/commit/5d39d8776975e073462f5fa304a9ed5054fbfb7a) Set z-index of list (Steve Boyd) - - 2023-12-01 [4c53dece](https://github.com/silverstripe/silverstripe-admin/commit/4c53dece05a4b6df391a57a07fdbaadc36a18dd3) Prevents horizontal scrollbar in non-firefox (Lukas Erni) - - 2023-11-08 [c862349c](https://github.com/silverstripe/silverstripe-admin/commit/c862349cfa71c34ab3578c27bf254186305a3832) Handle extra empty values (Steve Boyd) - - 2023-10-31 [22d5471f](https://github.com/silverstripe/silverstripe-admin/commit/22d5471f5dd8dee68eb1307479d82a21d3b46e54) ModelAdmin toast elements (Sabina Talipova) - - 2023-10-19 [d393424b](https://github.com/silverstripe/silverstripe-admin/commit/d393424bcbbd19f46f502bb94c54e1519dd46af6) Make CanView/Edit group toggle logic more robust (#1610) (Guy Sartorelli) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0) - - 2024-01-25 [bb3894ef](https://github.com/silverstripe/silverstripe-asset-admin/commit/bb3894efebc95baf2b640554b1e1062186f6c8da) TinyMCE Insert link from Files (Sabina Talipova) - - 2024-01-24 [b9db9c33](https://github.com/silverstripe/silverstripe-asset-admin/commit/b9db9c3348399d4c87c7a23a6b09bef3d7088b40) Add tinymce link menuitems per editor instance (#1435) (Guy Sartorelli) - - 2023-11-08 [a50f9e40](https://github.com/silverstripe/silverstripe-asset-admin/commit/a50f9e40e98b4e1dc0a2db5ad7f76c5a1b7d083a) Limit Member map to 100 (Steve Boyd) - - 2023-09-11 [fd811f95](https://github.com/silverstripe/silverstripe-asset-admin/commit/fd811f9567193036fb462be9cba4e49d4e360048) fix: expose ShowInSearch field in access UI (Will Rossiter) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0) - - 2024-03-10 [9c23cee](https://github.com/silverstripe/silverstripe-versioned-admin/commit/9c23ceec40455c90529ab48375ac76ea78790f53) Update ArchiveRestoreAction::doRestore() method to pass correct argument in redirection (Marco Hermo) - - 2024-02-12 [cd3fcb2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/cd3fcb202e8fc26bcafb0df38fd9f7e7d0f6dc5e) Use correct modelClass with others tab (Steve Boyd) - -- silverstripe/cms (5.1.0 -> 5.2.0) - - 2024-01-24 [dfc42e7c](https://github.com/silverstripe/silverstripe-cms/commit/dfc42e7c86c304c23ffa822149be07059eed70a3) Add tinymce link menuitems per editor instance (#2916) (Guy Sartorelli) - - 2023-12-19 [9202ce9a](https://github.com/silverstripe/silverstripe-cms/commit/9202ce9a6896e3b0b736ba5d4ded2e4651222cb7) Ensure react-select field menus are always on top (#2910) (Guy Sartorelli) - - 2023-11-19 [579986a6](https://github.com/silverstripe/silverstripe-cms/commit/579986a69160ebfff63ead6d8c108ef8658933e5) Handle exceptions when using /0 as a URL (#2825) (Will Rossiter) - - 2023-11-07 [dd2bd613](https://github.com/silverstripe/silverstripe-cms/commit/dd2bd6138720587525a7d117b1593f6641650093) Limit Member map to 100 (Steve Boyd) - -- silverstripe/versioned (2.1.0 -> 2.2.0) - - 2024-02-19 [11d24ae](https://github.com/silverstripe/silverstripe-versioned/commit/11d24ae9d7693e66f9a8cc5153152cebf20c8dc4) use rawurlencode when setting toast headers (#440) (Thomas Portelange) - - 2023-11-01 [c52c166](https://github.com/silverstripe/silverstripe-versioned/commit/c52c1661cb9fc3cb81345373a18fff75313f009b) ModelAdmin toast elements (Sabina Talipova) - - 2023-10-24 [d614204](https://github.com/silverstripe/silverstripe-versioned/commit/d6142046ee5dd1697a3cdef2c98e9df5841be400) Remove implicitly added item (Sabina Talipova) - -- silverstripe/graphql (5.1.0 -> 5.2.0) - - 2023-11-26 [f929eb6](https://github.com/silverstripe/silverstripe-graphql/commit/f929eb650be15b3a85834ffcafbddf93318c20be) Add test cases for SortPlugin (Sabina Talipova) - - 2023-11-22 [5781c46](https://github.com/silverstripe/silverstripe-graphql/commit/5781c46614ac2d40d025c71837f3dbc090361e53) QuerySort::sort method should support sorting for multi arguments (Sabina Talipova) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0) - - 2024-03-19 [240f576](https://github.com/silverstripe/silverstripe-documentconverter/commit/240f576335af20686f39ebe8956a5718df86ea43) Don't use deprecated usage of get_class() (#73) (Guy Sartorelli) - -- silverstripe/tagfield (3.1.0 -> 3.2.0) - - 2023-12-13 [18e5df1](https://github.com/silverstripe/silverstripe-tagfield/commit/18e5df1b921fb162962e1cb1ed6b5b3cffabc71f) z-index of select dropdown clashing with TinyMCE toolbar (Christopher Darling) - - 2023-09-22 [c931056](https://github.com/silverstripe/silverstripe-tagfield/commit/c9310566895a355bd8c974af0c3c66f03214b50c) Added the state changed checks and bubble up event - pending build (josephlewisnz) - -- silverstripe/blog (4.1.0 -> 4.2.0) - - 2024-03-19 [9fae326](https://github.com/silverstripe/silverstripe-blog/commit/9fae326927dc38640f429970f53e86f77fbf9903) Use $owns instead of onBeforeWrite hook to publish profile image (James Cocker) - - 2022-08-22 [99d1063](https://github.com/silverstripe/silverstripe-blog/commit/99d1063361018e924662fd9392209df28710873e) Allow multibyte to be configured (#605) (Will Rossiter) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0) - - 2023-09-10 [17106d8](https://github.com/silverstripe/silverstripe-spamprotection/commit/17106d8f30bfb2327a47e20c2b7b7cd21c29f423) fix: if no spam protector set, fail sliently (Will Rossiter) - -- colymba/gridfield-bulk-editing-tools (4.0.0 -> 4.0.2) - - 2023-11-22 [9a8cc37](https://github.com/colymba/GridFieldBulkEditingTools/commit/9a8cc3792ea51146325c9709625bd8792c4995c2) Remove deprecated convert API for SS5.0 (#260) (Bram de Leeuw) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0) - - 2023-11-09 [e490370](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/e49037024c5a92ddb76ee59d4ca90e2fb84327af) Infinite recursion sanity checks with more helpful error messages (#214) (Nathan J. Brauer) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0) - - 2024-01-25 [8f08322](https://github.com/symbiote/silverstripe-advancedworkflow/commit/8f08322f83259c8605540696e0446c89277f55ce) Argument order of insertBefore method (Mohamed Alsharaf) - - 2024-01-25 [5e3b9b0](https://github.com/symbiote/silverstripe-advancedworkflow/commit/5e3b9b0f246a7fb5cf7d4314d620f398f7fb4b65) Button layout that display icons (Mohamed Alsharaf) - - 2023-12-14 [7286f14](https://github.com/symbiote/silverstripe-advancedworkflow/commit/7286f144e28fbc3740c6376cb16973400507da1b) Use correct namespace for imports (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0) - - 2024-01-24 [e6638ec](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/e6638ecfb0e8f20134f15795d1aad9f28d9a01ce) update defensive check on tags field method (Phillip King) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0) - - 2024-03-19 [49cc581](https://github.com/silverstripe/silverstripe-versionfeed/commit/49cc58109c979b3454bf1429b7d8670b8e07bb97) Don't use deprecated usage of get_class() (#103) (Guy Sartorelli) - - 2024-02-29 [66da923](https://github.com/silverstripe/silverstripe-versionfeed/commit/66da9235029584a1cb731beceba18d16111162f4) Ensure page has extension before calling method (Steve Boyd) - - 2024-01-23 [c10085c](https://github.com/silverstripe/silverstripe-versionfeed/commit/c10085c99e08828d042ef46808a8d6953ba5bd3d) Make sureHtmlDiff::compareHTML is not passed null values (Alexandre Saelens) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0) - - 2024-04-03 [e9d89bb](https://github.com/silverstripe/silverstripe-elemental/commit/e9d89bb177392546ff0b68449475712fc59efb63) Do not publish dataobject in requireDefaultRecords() (Steve Boyd) - - 2024-02-26 [f571da9](https://github.com/silverstripe/silverstripe-elemental/commit/f571da95abcf0f5edb9498934af8d5579b6dece8) Remove workaround for nested redux form. (Guy Sartorelli) - - 2024-01-30 [95c31bd](https://github.com/silverstripe/silverstripe-elemental/commit/95c31bdcc51c6569f059e2de4887bf613c88d614) Failed Behat test (Sabina Talipova) - - 2024-01-29 [b23847a](https://github.com/silverstripe/silverstripe-elemental/commit/b23847a5099d0bbfb6f0d1192db7be23f5f06019) Behat test for badges (Sabina Talipova) - - 2024-01-18 [935e46d](https://github.com/silverstripe/silverstripe-elemental/commit/935e46dcc8ed2603805f063662edd053d2b51c6c) Null submit handler for element component (Steve Boyd) - - 2023-12-06 [d986b7d](https://github.com/silverstripe/silverstripe-elemental/commit/d986b7d7efd559ed69bfa199ebfe520a5304475a) Handle empty element formstate (Steve Boyd) - - 2023-09-20 [7f1daf8](https://github.com/silverstripe/silverstripe-elemental/commit/7f1daf858438549d4f6a26e09e728ccf553c700b) Element::getPage returning the wrong page (Will Rossiter) - - 2023-09-19 [215fadf](https://github.com/silverstripe/silverstripe-elemental/commit/215fadf524f32940bd0e567e9ed2b3ab3e092949) Fix some bits in the readme (Ed Wilde) - -- silverstripe/auditor (3.0.0 -> 3.1.0) - - 2023-12-21 [567136d](https://github.com/silverstripe/silverstripe-auditor/commit/567136d36d1fdb0b161950ed9f357482afefa58b) Adjust logic to account for custom table names (Maxime Rainville) - - 2023-12-19 [44ee87d](https://github.com/silverstripe/silverstripe-auditor/commit/44ee87dccb84a6da6a7a6d7a4a9b6c3f403a9ea4) `Fix logging of failed logins & unknown users` (Ralph Slooten) - - 2023-12-14 [780b9af](https://github.com/silverstripe/silverstripe-auditor/commit/780b9afc880a2a16e222074810a64b8b7246b15b) Use correct namespace for import (Steve Boyd) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0) - - 2024-01-16 [48b454f](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/48b454f71bf89ee43c965c5eba20a6503e077290) Undefined Exception on makeDir method (Marco Hermo) - -- cwp/watea-theme (4.0.0 -> 4.1.0) - - 2023-09-04 [8bfba56](https://github.com/silverstripe/cwp-watea-theme/commit/8bfba563ac39e231c1b489218a937326d0b58659) Update .nvmrc (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0) - - 2022-10-04 [7cdce8f](https://github.com/symbiote/silverstripe-queuedjobs/commit/7cdce8f678f9443e1fc13450a333bb87b6da9c3a) grabMutex job lock query on SQLite (Maxime Rainville) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0) - - 2023-08-15 [28056e5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/28056e5405ee09b1438e3134c944d10bcf2cb95b) fix stylesheet path (Thomas Portelange) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0) - - 2024-03-19 [d0c44eb](https://github.com/silverstripe/silverstripe-linkfield/commit/d0c44ebc7acceea5e00445109d289a9a02cc9e2d) Remove misleading migration docs and task (#259) (Guy Sartorelli) - - 2024-03-10 [e40f251](https://github.com/silverstripe/silverstripe-linkfield/commit/e40f2516256aa0dfeecae552b16da19b0c1f197d) Remove tabs with only gridfields (Steve Boyd) - - 2024-02-26 [1a30c3e](https://github.com/silverstripe/silverstripe-linkfield/commit/1a30c3e298a1afc5569fca46200a3761b390bb9b) Remove workaround for nested redux form. (Guy Sartorelli) - - 2024-02-12 [c347b35](https://github.com/silverstripe/silverstripe-linkfield/commit/c347b35042c2ed164e7b685785f0fd7dd169865f) Archive record from live table on delete (Steve Boyd) - - 2024-02-07 [31d9ffa](https://github.com/silverstripe/silverstripe-linkfield/commit/31d9ffa15e98ed7c226d4fe0d67a53eb4b207879) Do not show delete button when disabled (Steve Boyd) - - 2024-01-31 [09f637c](https://github.com/silverstripe/silverstripe-linkfield/commit/09f637c26384069db0cc8749f619c50c67336403) Add HasOneRelationFieldInterface to LinkField (Steve Boyd) - - 2024-01-30 [790c561](https://github.com/silverstripe/silverstripe-linkfield/commit/790c561cca07f39f62412df3f247c6d6faa9e82d) Elemental non-inline editing (Steve Boyd) - - 2024-01-25 [da9ce9b](https://github.com/silverstripe/silverstripe-linkfield/commit/da9ce9b47dc3d8c2aa4124a300e66b1a0baf4433) Prevent nested asset-admin forms from submitting modal (Steve Boyd) - - 2024-01-19 [15f02d3](https://github.com/silverstripe/silverstripe-linkfield/commit/15f02d33641d8b286ee4b94a53a99a4491384e72) Defaul link type title and icon for disabled link types (Sabina Talipova) - - 2024-01-15 [f7fd63a](https://github.com/silverstripe/silverstripe-linkfield/commit/f7fd63a32b6c116b5cf51622f1d26581bdfe745a) Don't change scroll position when loading (#171) (Guy Sartorelli) - - 2024-01-11 [082657d](https://github.com/silverstripe/silverstripe-linkfield/commit/082657d1043936885a5f1050ace9a489cd0643c2) Console warning about required type (#163) (Sabina Talipova) - - 2024-01-08 [bdf0b36](https://github.com/silverstripe/silverstripe-linkfield/commit/bdf0b36225ba63a4f2784c369d1915582a821ee8) Nicely truncate link title/URL (#153) (Guy Sartorelli) - - 2023-12-04 [3c8edfd](https://github.com/silverstripe/silverstripe-linkfield/commit/3c8edfdc02846e43c3ae4b5d044bd4046e224679) Don't render links that don't exist (#130) (Guy Sartorelli) - - 2023-08-03 [f2fd7bb](https://github.com/silverstripe/silverstripe-linkfield/commit/f2fd7bb3335d967857387cb9d85b0b82ea0c1414) Revert change that broke file modal (Maxime Rainville) - - 2023-06-20 [8533d27](https://github.com/silverstripe/silverstripe-linkfield/commit/8533d278f0f44a84b9540428bdc68dc12ee1cd34) Allow CMS fields customisations via extension to be executed after the default setup. (Mojmir Fendek) - - 2023-06-11 [61a27e5](https://github.com/silverstripe/silverstripe-linkfield/commit/61a27e58837eaef8f5a3341ff331304de49b5f77) File link URL generation corrected. (Mojmir Fendek) - - 2023-06-06 [8df6554](https://github.com/silverstripe/silverstripe-linkfield/commit/8df65541242d93a165e944fee010a7a174d32cea) Corrected variable name (typo). (Mojmir Fendek) - - 2023-06-06 [f09a385](https://github.com/silverstripe/silverstripe-linkfield/commit/f09a38589649e848a758b4d76516d9bfb337943e) URL generation fix for internal link. (Mojmir Fendek) - - 2023-06-01 [b328570](https://github.com/silverstripe/silverstripe-linkfield/commit/b328570d36bd63fe39d2e964aebe123a8a0bb281) Fix link migration task. (Mojmir Fendek) - - 2023-05-25 [9744bd8](https://github.com/silverstripe/silverstripe-linkfield/commit/9744bd8dc23ebe70129555b5b7573ac5295232b4) List types can now be disabled via configuration (existing config, missing feature). (Mojmir Fendek) - - 2023-02-15 [677ae80](https://github.com/silverstripe/silverstripe-linkfield/commit/677ae80e6941e7016b6c3edc1ee1cddef1432efb) Fix Github actions. (Mojmir Fendek) - - 2022-05-13 [1e9c0ec](https://github.com/silverstripe/silverstripe-linkfield/commit/1e9c0ec5428d626622392165fd39a81c2550127e) Bump PHP versions. (Mojmir Fendek) - - 2022-05-12 [5239704](https://github.com/silverstripe/silverstripe-linkfield/commit/523970490db436bc7948bf67257c1f39a425ff93) Fix Composer autoload settings. (Mojmir Fendek) - - 2021-10-21 [2eb755e](https://github.com/silverstripe/silverstripe-linkfield/commit/2eb755eb15d26bfb6d59c7d07c52c67fbdad6e7d) Change link type in via a GridField edit form. (Mojmir Fendek) - -### Api changes {#changelog-api-changes} - -- silverstripe/assets (2.1.0 -> 2.2.0) - - 2021-07-20 [595c5a5](https://github.com/silverstripe/silverstripe-assets/commit/595c5a5bb5c0f0498ade4316935068a3e84fc177) allow chaining for Upload_Validator (Will Rossiter) - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2024-01-16 [8b427f4e7](https://github.com/silverstripe/silverstripe-framework/commit/8b427f4e74474fb30dc660bac6eda7ecff062b12) Deprecate some unused API (Guy Sartorelli) - - 2023-11-27 [3fe42b84a](https://github.com/silverstripe/silverstripe-framework/commit/3fe42b84afcb74f80b27a4fe0e679c909248496f) Use correct param types (Steve Boyd) - -- silverstripe/cms (5.1.0 -> 5.2.0) - - 2023-11-02 [e826152f](https://github.com/silverstripe/silverstripe-cms/commit/e826152fd1d316d9aa010764e3ca1ca6f99efa1d) Add new SiteTree.hide_pagetypes configuration (Guy Sartorelli) - -- silverstripe/versioned (2.1.0 -> 2.2.0) - - 2023-11-05 [4d38781](https://github.com/silverstripe/silverstripe-versioned/commit/4d3878139ebb063e909153436e58290b7b0f081d) Deprecate Versions() having parameter (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0) - - 2023-12-12 [7f65d4f](https://github.com/silverstripe/silverstripe-linkfield/commit/7f65d4fdee873fc7746acdc82e3bc2b591138a02) Add new Owner relation for handling permissions (#127) (Guy Sartorelli) - -### Dependencies {#changelog-dependencies} - -- silverstripe/recipe-kitchen-sink (5.1.0 -> 5.2.0) - - 2023-09-28 [fa436ba](https://github.com/silverstripe/recipe-kitchen-sink/commit/fa436ba2898779121eeb21b5da9c02f7d0445e35) Add silverstripe/linkfield (Steve Boyd) - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2023-11-12 [bc47d65cc](https://github.com/silverstripe/silverstripe-framework/commit/bc47d65cc5120afcb5b7a97c5e89e3267ad4fc5c) Deprecate configurable silent failures in GridField components (Guy Sartorelli) - - 2023-05-31 [7ae903872](https://github.com/silverstripe/silverstripe-framework/commit/7ae90387260e16bc3dd9a1d2bfd92dd9d699c811) Explicitly require psr/http-message ^1 (Steve Boyd) - -- silverstripe/admin (2.1.0 -> 2.2.0) - - 2024-01-08 [45a41970](https://github.com/silverstripe/silverstripe-admin/commit/45a419702ce4dbe4d170fcef41a4d232274e892e) Update JS dependencies (#1645) (Guy Sartorelli) - - 2023-10-03 [fb996163](https://github.com/silverstripe/silverstripe-admin/commit/fb9961638f172866b991be8574b79fdaa7ca1f43) Update JS dependencies (github-actions) - - 2023-09-25 [48e88977](https://github.com/silverstripe/silverstripe-admin/commit/48e88977445aa0fbbf67c503274bc57e1d9b8117) Bump semver from 5.7.1 to 5.7.2 (dependabot[bot]) - - 2023-09-21 [76faebbe](https://github.com/silverstripe/silverstripe-admin/commit/76faebbe4af9e6f4b865841e8207b36c6871ee12) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0) - - 2024-01-01 [e405cafd](https://github.com/silverstripe/silverstripe-asset-admin/commit/e405cafd6ce9b8533358957bf920574f3d022d60) Update JS dependencies (github-actions) - - 2023-10-01 [f84ff32f](https://github.com/silverstripe/silverstripe-asset-admin/commit/f84ff32fff17ac2c648f292ddad69ebb3a135952) Update JS dependencies (github-actions) - - 2023-09-21 [35ab766e](https://github.com/silverstripe/silverstripe-asset-admin/commit/35ab766e1a8be9712410400f64ba8147435af458) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0) - - 2024-01-01 [848cb54](https://github.com/silverstripe/silverstripe-campaign-admin/commit/848cb541460691d6b552b2a1ccd64c4288f5e6fc) Update JS dependencies (github-actions) - - 2023-10-01 [d28008a](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d28008acf9d7c8eb99ebccefb65666ba1def5924) Update JS dependencies (github-actions) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0) - - 2024-01-01 [ce3efde](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ce3efdeda2bf914d02a33110e6a0de5325571066) Update JS dependencies (github-actions) - - 2023-10-01 [591b938](https://github.com/silverstripe/silverstripe-versioned-admin/commit/591b93816f8f08aadd52d9e5514a7d912327ead9) Update JS dependencies (github-actions) - - 2023-09-21 [82ed02a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/82ed02a7dc22213793d519fa322f46546ca26506) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/cms (5.1.0 -> 5.2.0) - - 2024-01-01 [a6cbf65d](https://github.com/silverstripe/silverstripe-cms/commit/a6cbf65d8ffd9306b2c3c65090198b07c618a361) Update JS dependencies (github-actions) - - 2023-10-01 [7d1d93ab](https://github.com/silverstripe/silverstripe-cms/commit/7d1d93ab896dee4363e628d6430dca4e6a4801bb) Update JS dependencies (github-actions) - - 2023-09-21 [da660479](https://github.com/silverstripe/silverstripe-cms/commit/da66047987f37af2746787f4c7f12cb5542b3691) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/session-manager (2.1.0 -> 2.2.0) - - 2024-01-01 [67555fa](https://github.com/silverstripe/silverstripe-session-manager/commit/67555faab3943e795096cf8e3426b6ef1b25bcc9) Update JS dependencies (github-actions) - - 2023-10-01 [22bf989](https://github.com/silverstripe/silverstripe-session-manager/commit/22bf989756e8b9b2d8701b94ef892ac28cd83357) Update JS dependencies (github-actions) - -- silverstripe-themes/simple (3.3.0 -> 3.3.1) - - 2023-11-17 [d3228db](https://github.com/silverstripe/silverstripe-simple/commit/d3228db60dbbb1463448b1f41cf7f9afc91eae50) Update jQuery to 3.7.1 (Garion Herman) - -- silverstripe/login-forms (5.1.0 -> 5.2.0) - - 2024-01-01 [64b1ad4](https://github.com/silverstripe/silverstripe-login-forms/commit/64b1ad46392a68ae857d7a1c359a2c4756a0d005) Update JS dependencies (github-actions) - - 2023-10-01 [4647dc2](https://github.com/silverstripe/silverstripe-login-forms/commit/4647dc28967025097b471b5aa62304f5efc90bad) Update JS dependencies (github-actions) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0) - - 2024-01-01 [7435c07](https://github.com/silverstripe/silverstripe-documentconverter/commit/7435c073f5748776a32e901e7176c67973e1c7c7) Update JS dependencies (github-actions) - - 2023-10-01 [ea949aa](https://github.com/silverstripe/silverstripe-documentconverter/commit/ea949aa814cc0d7b09f6b4a263d138f46b252fab) Update JS dependencies (github-actions) - -- silverstripe/tagfield (3.1.0 -> 3.2.0) - - 2024-01-01 [5212c33](https://github.com/silverstripe/silverstripe-tagfield/commit/5212c33d40dabc42965cbe01024a8310fc4dfe13) Update JS dependencies (github-actions) - - 2023-10-01 [036319b](https://github.com/silverstripe/silverstripe-tagfield/commit/036319be08876610235b05e411db4cee01dccad2) Update JS dependencies (github-actions) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0) - - 2024-01-08 [8a4a0b1](https://github.com/silverstripe/silverstripe-taxonomy/commit/8a4a0b184745215b6a75dae98df9e7d16d6fc2bf) Update deps to specify new auto-scaffolded has-one field (Steve Boyd) - -- silverstripe/blog (4.1.0 -> 4.2.0) - - 2024-01-01 [6351690](https://github.com/silverstripe/silverstripe-blog/commit/63516905a4f8f0282bf62e5d964c8bdd74e63f08) Update JS dependencies (github-actions) - - 2023-10-19 [2ef3981](https://github.com/silverstripe/silverstripe-blog/commit/2ef3981000210747f5853c3e1168dd792dd3aeb1) Bump @babel/traverse from 7.23.0 to 7.23.2 (dependabot[bot]) - - 2023-10-01 [e363b0e](https://github.com/silverstripe/silverstripe-blog/commit/e363b0e59035fa232fe1afa5205e2fdbcf952ae0) Update JS dependencies (github-actions) - -- silverstripe/contentreview (5.1.0 -> 5.2.0) - - 2024-01-01 [4124322](https://github.com/silverstripe/silverstripe-contentreview/commit/41243227dc3ea579147bff89bafcbcffcea77cb4) Update JS dependencies (github-actions) - - 2023-10-01 [1f750b9](https://github.com/silverstripe/silverstripe-contentreview/commit/1f750b91fe7972bafc4afeac611f10d329c5cbb2) Update JS dependencies (github-actions) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0) - - 2024-01-01 [429dfd2](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/429dfd2a67a3cdf65a9e13c78f7ff085c4ee6d6f) Update JS dependencies (github-actions) - - 2023-10-07 [f3d77c4](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/f3d77c453dfaf8779656d9c9d77ebce02b264322) Bump postcss from 8.4.24 to 8.4.31 (dependabot[bot]) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0) - - 2023-08-31 [85e3f97](https://github.com/symbiote/silverstripe-advancedworkflow/commit/85e3f97213a4c150bd57d1d8ddce72000cc1db73) Update JS dependencies (Steve Boyd) - -- silverstripe/segment-field (3.1.0 -> 3.2.0) - - 2024-01-01 [16a2718](https://github.com/silverstripe/silverstripe-segment-field/commit/16a2718bda6433335774e1e03be26de03ece5c5b) Update JS dependencies (github-actions) - - 2023-10-01 [7986025](https://github.com/silverstripe/silverstripe-segment-field/commit/79860256f4634eee44255b528d2279a89910341f) Update JS dependencies (github-actions) - -- silverstripe/userforms (6.1.0 -> 6.2.0) - - 2024-01-01 [7796ec5](https://github.com/silverstripe/silverstripe-userforms/commit/7796ec53bbe73d492d9e52e2fb8a71b286ecee78) Update JS dependencies (github-actions) - - 2023-10-01 [0a33a7e](https://github.com/silverstripe/silverstripe-userforms/commit/0a33a7e5dfc14c13a02dbe5911e525d413ea2415) Update JS dependencies (github-actions) - -- silverstripe/externallinks (3.1.0 -> 3.2.0) - - 2024-01-01 [01104bf](https://github.com/silverstripe/silverstripe-externallinks/commit/01104bf66916a4d7404966ae96ae9ef30c4d71d7) Update JS dependencies (github-actions) - - 2023-10-01 [6b6b05e](https://github.com/silverstripe/silverstripe-externallinks/commit/6b6b05ee0a6ec31732a712ffd2ade45d54dc227d) Update JS dependencies (github-actions) - - 2023-09-29 [204e7c5](https://github.com/silverstripe/silverstripe-externallinks/commit/204e7c5ee0ab0235f806effcf38358587bb9f38d) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0) - - 2024-01-01 [d0dc6d0](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/d0dc6d07ede215a15e012f70879536bd131414e4) Update JS dependencies (github-actions) - - 2023-10-01 [57805fd](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/57805fd1e50d0c987fc053e4d1b2e7684300d4a1) Update JS dependencies (github-actions) - -- bringyourownideas/silverstripe-maintenance (3.0.1 -> 3.1.0) - - 2023-08-31 [e4014d7](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e4014d78209edabd965817a993323644c7e3af4f) Update JS dependencies (Steve Boyd) - - 2023-07-11 [efba968](https://github.com/bringyourownideas/silverstripe-maintenance/commit/efba968eb97c261e3f675135815fcfe4013a0efc) Update eslint module (#200) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0) - - 2024-01-01 [d5108cb](https://github.com/silverstripe/silverstripe-elemental/commit/d5108cb59a084c3354397a9e357b1a047ef73857) Update JS dependencies (github-actions) - - 2023-10-01 [f425d9d](https://github.com/silverstripe/silverstripe-elemental/commit/f425d9dbb45e9f5b097eb1aef3cd208acea7fd69) Update JS dependencies (github-actions) - - 2023-09-21 [b84791f](https://github.com/silverstripe/silverstripe-elemental/commit/b84791f124ada2ef63e77f6172c94c6a09a9bcbd) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - - 2023-09-04 [9ea6ead](https://github.com/silverstripe/silverstripe-elemental/commit/9ea6ead57ac68ae79d81093dc3330d195a5daed0) Update JS dependencies (github-actions) - -- silverstripe/elemental-bannerblock (3.1.0 -> 3.2.0) - - 2024-01-01 [f31ca86](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/f31ca86c3db6c8df84fc10e61095d4b35f2e705a) Update JS dependencies (github-actions) - - 2023-10-19 [59a81dc](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/59a81dcc10ee17b715a1de14ec61ae92d21b7fe9) Bump @babel/traverse from 7.22.10 to 7.23.2 (dependabot[bot]) - - 2023-10-08 [7166c18](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7166c183fd4d9a13aeffd02ae2eb45ac4cd4a7c2) Bump postcss from 8.4.28 to 8.4.31 (dependabot[bot]) - -- silverstripe/auditor (3.0.0 -> 3.1.0) - - 2024-03-19 [537dcd3](https://github.com/silverstripe/silverstripe-auditor/commit/537dcd3a015819955224e521676873f95093751d) Use the canonical repository for proxy-db (#49) (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0) - - 2024-01-01 [d1ce73e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/d1ce73ea82f35db4eb7f61a24b3c76d7ede4acfb) Update JS dependencies (github-actions) - - 2023-10-01 [5e14c36](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/5e14c3667fd5c60485f98d09e267421d0b9acd45) Update JS dependencies (github-actions) - -- silverstripe/mfa (5.1.0 -> 5.2.0) - - 2024-01-01 [9cce064](https://github.com/silverstripe/silverstripe-mfa/commit/9cce064d70547617857d9a2bfdb57b3963429053) Update JS dependencies (github-actions) - - 2023-10-01 [9ed339d](https://github.com/silverstripe/silverstripe-mfa/commit/9ed339ddc438d3d3c0604918a662409f6429875f) Update JS dependencies (github-actions) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0) - - 2024-01-01 [c6ba6c4](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/c6ba6c47754d7587f1972d4545a21e2977ab4169) Update JS dependencies (github-actions) - - 2023-10-01 [2cbe9d5](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/2cbe9d56d7dfa57f6c1755693d843d1a813b69e2) Update JS dependencies (github-actions) - -- silverstripe/realme (5.2.0 -> 5.3.0) - - 2024-01-01 [08baf2d](https://github.com/silverstripe/silverstripe-realme/commit/08baf2de745e4bf5ad9dae86c22ce2bdbfe946fb) Update JS dependencies (github-actions) - - 2023-10-01 [77345e7](https://github.com/silverstripe/silverstripe-realme/commit/77345e76ed6278a77598735439c7bb637f731d02) Update JS dependencies (github-actions) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0) - - 2024-01-01 [c2c7bf0](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/c2c7bf05044e8ad413bc005205fd472a713be22c) Update JS dependencies (github-actions) - - 2023-10-19 [3e39b93](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/3e39b93e11dfa0e16dc7a3a423cffe45be3e0b67) Bump @babel/traverse from 7.22.10 to 7.23.2 (dependabot[bot]) - - 2023-10-08 [f5b3005](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/f5b300516a1c4990bacf84d603a177710078445d) Bump postcss from 8.4.28 to 8.4.31 (dependabot[bot]) - -- silverstripe/subsites (3.1.0 -> 3.2.0) - - 2024-01-01 [17a729f](https://github.com/silverstripe/silverstripe-subsites/commit/17a729f04c70b0e928c5b914b3f543b475420c13) Update JS dependencies (github-actions) - - 2023-10-01 [e56425e](https://github.com/silverstripe/silverstripe-subsites/commit/e56425e548a09d3d93cd3f44bdfd657123c0210e) Update JS dependencies (github-actions) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0) - - 2024-01-01 [a139526](https://github.com/silverstripe/silverstripe-lumberjack/commit/a13952696a7baf847a53d0d36f38c8796dfb30af) Update JS dependencies (github-actions) - - 2023-10-01 [4056a91](https://github.com/silverstripe/silverstripe-lumberjack/commit/4056a918b110bccfab668c06c070147f1d1dbe7e) Update JS dependencies (github-actions) - - 2023-09-29 [1655e8b](https://github.com/silverstripe/silverstripe-lumberjack/commit/1655e8b4cc49fed12041801fb57b20cb623aec94) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [b9a2082](https://github.com/silverstripe/silverstripe-lumberjack/commit/b9a20827ff9c93fc4bad4700aae498be3fc8e51d) Update eslint module (#124) (Sabina Talipova) - -- cwp/starter-theme (4.0.0 -> 4.1.0) - - 2024-01-08 [d762ea9](https://github.com/silverstripe/cwp-starter-theme/commit/d762ea99c36ab91758a47b7aa82788140b8e51fc) Update JS dependencies (#240) (Guy Sartorelli) - - 2024-01-08 [fdf930e](https://github.com/silverstripe/cwp-starter-theme/commit/fdf930e73262e82a23736c546f85fe26cabe866f) Bump @babel/traverse from 7.23.0 to 7.23.7 (dependabot[bot]) - - 2023-10-28 [6a2dff8](https://github.com/silverstripe/cwp-starter-theme/commit/6a2dff8889e6229f925121153e5c884293abc814) Bump browserify-sign from 4.2.1 to 4.2.2 (dependabot[bot]) - - 2023-10-03 [5de9fba](https://github.com/silverstripe/cwp-starter-theme/commit/5de9fbaacdb0485eafbdaa27763a57b43bb1e409) Update JS dependencies (#233) (github-actions[bot]) - - 2023-08-31 [b79bcbd](https://github.com/silverstripe/cwp-starter-theme/commit/b79bcbdfadf307369f2a5c21962cbcec167fbbdb) Bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2023-08-29 [0adbddc](https://github.com/silverstripe/cwp-starter-theme/commit/0adbddc5468e55885df159f13c35ce356c317347) Bump semver from 5.7.1 to 5.7.2 (dependabot[bot]) - - 2023-08-28 [2a0d10f](https://github.com/silverstripe/cwp-starter-theme/commit/2a0d10f500e186004ca40f4be3ede1610637834c) Bump url-parse from 1.5.1 to 1.5.10 (dependabot[bot]) - - 2023-08-28 [2ee7c94](https://github.com/silverstripe/cwp-starter-theme/commit/2ee7c941142c6b56012725486eb0d7aefd2b2974) Bump eventsource from 1.0.7 to 1.1.2 (dependabot[bot]) - - 2023-08-28 [8b3912f](https://github.com/silverstripe/cwp-starter-theme/commit/8b3912fa1d79b4a1cd17ef92de8ec4f1884f54eb) Bump follow-redirects from 1.13.0 to 1.15.2 (dependabot[bot]) - - 2023-08-28 [3bec8aa](https://github.com/silverstripe/cwp-starter-theme/commit/3bec8aaa6f6a4b76fb24f1f013dc50e9a7499096) Bump async from 2.6.3 to 2.6.4 (dependabot[bot]) - - 2023-08-28 [e8cb249](https://github.com/silverstripe/cwp-starter-theme/commit/e8cb249640c2a75dd4607d13d86ccc7f94db4647) Bump path-parse from 1.0.6 to 1.0.7 (dependabot[bot]) - - 2023-08-28 [83b1e25](https://github.com/silverstripe/cwp-starter-theme/commit/83b1e255a596c109791af6d7b2016d0ff423d2d8) Bump hosted-git-info from 2.8.5 to 2.8.9 (dependabot[bot]) - - 2023-08-28 [743463a](https://github.com/silverstripe/cwp-starter-theme/commit/743463a29ec371690722f5ce5a322f8134a91f72) Bump tar from 4.4.15 to 4.4.19 (dependabot[bot]) - - 2023-08-28 [f0ef7f0](https://github.com/silverstripe/cwp-starter-theme/commit/f0ef7f05ba319e0794e5d179ddeec19507b07aeb) Bump color-string from 1.5.3 to 1.9.1 (dependabot[bot]) - - 2023-08-28 [5a84ae2](https://github.com/silverstripe/cwp-starter-theme/commit/5a84ae2c4ef6e2951aa881d67e1800df5b18bf16) Bump ajv from 6.10.2 to 6.12.3 (dependabot[bot]) - - 2023-08-28 [81c5a23](https://github.com/silverstripe/cwp-starter-theme/commit/81c5a23e2d4d6c7722c80951ede0536dbb1677eb) Bump lodash from 4.17.19 to 4.17.21 (dependabot[bot]) - - 2023-08-28 [167a10f](https://github.com/silverstripe/cwp-starter-theme/commit/167a10f5d3a4635a10664df36df2ffc862cbcc36) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - - 2023-08-28 [eeee5c7](https://github.com/silverstripe/cwp-starter-theme/commit/eeee5c77d3fa8bd210f729fe8c8c01ac8379763e) Bump json5 from 1.0.1 to 1.0.2 (dependabot[bot]) - - 2022-12-10 [c3c8d4a](https://github.com/silverstripe/cwp-starter-theme/commit/c3c8d4ac9e6cbbf3f2e2e8b876237d30be6c1653) Bump express from 4.17.1 to 4.18.2 (dependabot[bot]) - -- cwp/agency-extensions (3.1.0 -> 3.2.0) - - 2024-01-01 [0b3354c](https://github.com/silverstripe/cwp-agencyextensions/commit/0b3354c3fad9a086dfbd7d2598c96e84f398502a) Update JS dependencies (github-actions) - - 2023-10-01 [db01219](https://github.com/silverstripe/cwp-agencyextensions/commit/db01219a229ba11c443855c024907fd8bb7c65a2) Update JS dependencies (github-actions) - -- cwp/watea-theme (4.0.0 -> 4.1.0) - - 2024-01-01 [415858c](https://github.com/silverstripe/cwp-watea-theme/commit/415858cca4857f2bbe5ff1323ebf32511c14b3ff) Update JS dependencies (github-actions) - - 2023-10-01 [c407d54](https://github.com/silverstripe/cwp-watea-theme/commit/c407d54db397abcd8cb2bd9a3afa6364b62adb3d) Update JS dependencies (github-actions) - - 2023-08-29 [902113b](https://github.com/silverstripe/cwp-watea-theme/commit/902113b635a5eec72c62bf8b24d8e2dc45254226) build(deps): bump semver from 5.6.0 to 5.7.2 (dependabot[bot]) - - 2023-08-28 [78c47a5](https://github.com/silverstripe/cwp-watea-theme/commit/78c47a53a8b0277719b8b8bb459c57f6805bd4cb) build(deps): bump dot-prop from 4.2.0 to 4.2.1 (dependabot[bot]) - - 2023-08-28 [3f0de59](https://github.com/silverstripe/cwp-watea-theme/commit/3f0de59b4f62706295e20cb25d71e8dfecd6e709) build(deps): bump path-parse from 1.0.6 to 1.0.7 (dependabot[bot]) - - 2023-08-28 [878cc6a](https://github.com/silverstripe/cwp-watea-theme/commit/878cc6a8456886dd91051087ee593e12681907b4) build(deps): bump hosted-git-info from 2.7.1 to 2.8.9 (dependabot[bot]) - - 2023-08-28 [8781c5a](https://github.com/silverstripe/cwp-watea-theme/commit/8781c5aee9f5f91ab47280ef936ccfca7edc1004) build(deps): bump json5 from 1.0.1 to 1.0.2 (dependabot[bot]) - -- symbiote/silverstripe-multivaluefield (6.0.2 -> 6.1.0) - - 2023-07-11 [99564be](https://github.com/symbiote/silverstripe-multivaluefield/commit/99564be8c783cf7fd4e2778ec8218a97b8bb6645) Update eslint module (#97) (Sabina Talipova) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0) - - 2024-01-08 [bddcb6e](https://github.com/silverstripe/silverstripe-linkfield/commit/bddcb6e098e5941d7c80031ae6583331242c28cc) Explicitly require framework ^5.2 (Steve Boyd) - -### Documentation {#changelog-documentation} - -- silverstripe/session-manager (2.1.0 -> 2.2.0) - - 2023-11-05 [2305049](https://github.com/silverstripe/silverstripe-session-manager/commit/23050493b4f0b354e567f64c19a5ab8a1d655822) Fix link (Steve Boyd) - -- silverstripe/tagfield (3.1.0 -> 3.2.0) - - 2023-11-20 [946d92a](https://github.com/silverstripe/silverstripe-tagfield/commit/946d92a7e8b5e2e1e3b9e2aeea54291d30e249e3) Update readme example (Steve Boyd) - -- silverstripe/userforms (6.1.0 -> 6.2.0) - - 2024-04-09 [edfd0f5](https://github.com/silverstripe/silverstripe-userforms/commit/edfd0f5c06bcef9d20dfef093427440711fad7c6) Linting (Steve Boyd) - - 2024-02-01 [c893194](https://github.com/silverstripe/silverstripe-userforms/commit/c89319477561e60ce9752ffc62f12a74fa55522b) Update syntax for callout blocks (#1263) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0) - - 2024-04-10 [36ea174](https://github.com/silverstripe/silverstripe-elemental/commit/36ea17461b89564368bc32dfad36c37ec8d45b1b) Tidy up docs (Steve Boyd) - - 2024-04-09 [68a2ad1](https://github.com/silverstripe/silverstripe-elemental/commit/68a2ad1811f03475c61f0640fa44e59fa47a5bc7) Linting (Steve Boyd) - - 2023-08-30 [fe95f59](https://github.com/silverstripe/silverstripe-elemental/commit/fe95f59b2b6768f2ee6c823e6972b1e070eded71) fix not needed duplication when restoring a page from archived state (Aljoša Balažic) - -- silverstripe/developer-docs (5.1.0 -> 5.2.0) - - 2024-03-27 [45e82979](https://github.com/silverstripe/developer-docs/commit/45e82979d999d387a953e3587446cddb53a33963) Add documentation about repository management (#487) (Guy Sartorelli) - - 2024-03-24 [cafdefc6](https://github.com/silverstripe/developer-docs/commit/cafdefc6448b75c55b720082c610652962e94ce4) Add missing info and fix linting issues (Guy Sartorelli) - - 2024-03-24 [0dc9ad2c](https://github.com/silverstripe/developer-docs/commit/0dc9ad2c22e7ede0bde5d65dceff449411003121) Fix path to images from rc changelog (Guy Sartorelli) - - 2024-03-20 [baeeb636](https://github.com/silverstripe/developer-docs/commit/baeeb636d938309af6e463706b372a11098c593b) Minor change to changelog regarding PHP 8.3 (#483) (Guy Sartorelli) - - 2024-03-18 [7e4e3460](https://github.com/silverstripe/developer-docs/commit/7e4e34607d7825768dbc326cf135933d3f69a47f) Readability and writing style review of 5.2.0 changelog (Guy Sartorelli) - - 2024-03-18 [a5f55891](https://github.com/silverstripe/developer-docs/commit/a5f558919adabb73dd4c6eb017ec7ec91fd6721d) Add more changes to the changelog (Guy Sartorelli) - - 2024-03-18 [6cbc0fa1](https://github.com/silverstripe/developer-docs/commit/6cbc0fa1940d0f89458cb45a3dbdd4b564585940) Update notes about linkfield migration guides (Guy Sartorelli) - - 2024-03-14 [f9a73555](https://github.com/silverstripe/developer-docs/commit/f9a73555b2e6dbdebc4cd58cc404be3d0344132c) Add PHP8.3 support to the changelog. (#480) (Guy Sartorelli) - - 2024-03-12 [ee99a449](https://github.com/silverstripe/developer-docs/commit/ee99a4490101f8534c5d6fa4423117c15839c162) change and/or to or (Steve Boyd) - - 2024-03-11 [9da6a80d](https://github.com/silverstripe/developer-docs/commit/9da6a80d5e981512e3892dc150e94911c75df73a) Elemental versioned badge (Steve Boyd) - - 2024-03-11 [37710318](https://github.com/silverstripe/developer-docs/commit/3771031889690be0b667bf35412d1f59a02642f2) Move 5.2.0-beta1 changelog to proper directory (Steve Boyd) - - 2024-03-05 [43b0baf1](https://github.com/silverstripe/developer-docs/commit/43b0baf1ebfa35e9d69e731bc5a73ed1907c87cb) Update image path (Steve Boyd) - - 2024-03-05 [2260d6dd](https://github.com/silverstripe/developer-docs/commit/2260d6dd8cb1cac9d6d697ed0b78a3514e4a6d0a) Fix 5.2.0-beta1 changelog (Steve Boyd) - - 2024-03-04 [cc5be721](https://github.com/silverstripe/developer-docs/commit/cc5be721e3a0c0c897eec624f15b973a81185fc0) Add composer runtime api mention (#464) (Thomas Portelange) - - 2024-02-29 [164b66f1](https://github.com/silverstripe/developer-docs/commit/164b66f1461b3a1975f9acc4b0e3f868d7c22b1a) Refer to release policies to avoid stale information (#462) (Guy Sartorelli) - - 2024-02-28 [6bc37ea3](https://github.com/silverstripe/developer-docs/commit/6bc37ea398725e9c4c18c773e502e88fae88b0c1) Document LTS support for databases (Guy Sartorelli) - - 2024-02-23 [621a9f40](https://github.com/silverstripe/developer-docs/commit/621a9f409747a48026978670e9aaea41c6ae5c0b) Fix placement of urlfield docs (#460) (Guy Sartorelli) - - 2024-02-20 [aa9ef537](https://github.com/silverstripe/developer-docs/commit/aa9ef537cfcf1d6a21027c81e54f95a406d1161e) Document manipulating eager loading queries (#456) (Guy Sartorelli) - - 2024-02-18 [22fd700d](https://github.com/silverstripe/developer-docs/commit/22fd700d374ebb1c2dd581fe2b90458afd95a273) Document official support for linkfield (#457) (Guy Sartorelli) - - 2024-02-08 [fee67b67](https://github.com/silverstripe/developer-docs/commit/fee67b6775c2476d20b78714acb8f5be4f87e2ca) Add new query trace comment to changelog (#404) (Guy Sartorelli) - - 2024-02-02 [b8012e86](https://github.com/silverstripe/developer-docs/commit/b8012e86993b31abb37425bbddcea54c19cf5962) Document using symfony/validator (#454) (Guy Sartorelli) - - 2024-02-02 [e5f5434b](https://github.com/silverstripe/developer-docs/commit/e5f5434bc708a1fa43a7a8bf82393e2ad159f2a8) Update syntax for callout blocks (#455) (Guy Sartorelli) - - 2024-02-01 [e77dd474](https://github.com/silverstripe/developer-docs/commit/e77dd474f1f7f0f4b1fdd3e3b0335357e1e508de) Update syntax for callout blocks (#452) (Guy Sartorelli) - - 2024-02-01 [c47892db](https://github.com/silverstripe/developer-docs/commit/c47892db13f880561b6f205a28331ceeec286163) Update syntax for callout blocks (#449) (Guy Sartorelli) - - 2024-01-30 [d9735932](https://github.com/silverstripe/developer-docs/commit/d973593293b56697bc43a22fc5e5a06b2bc9b3cb) Add UrlField (Steve Boyd) - - 2024-01-29 [f5a095af](https://github.com/silverstripe/developer-docs/commit/f5a095af472c7a07620f27505062e1d76b28d227) CMS JSON API's (Steve Boyd) - - 2024-01-29 [9f5ea80e](https://github.com/silverstripe/developer-docs/commit/9f5ea80e5582bbe7d648873f10eabea74cf956f0) Document PHPDoc as a PHP coding standard (#448) (Guy Sartorelli) - - 2024-01-25 [3136033f](https://github.com/silverstripe/developer-docs/commit/3136033fb9920698fd7048fd050e0ce0131f1f57) Add description for type/other label and clarify affects labels (Steve Boyd) - - 2024-01-18 [8ec4dfd6](https://github.com/silverstripe/developer-docs/commit/8ec4dfd616e83d50f69dec7e2a7a06f7b576d6f4) fix minor typo on class name in code sample (Ravindu) - - 2024-01-18 [04437708](https://github.com/silverstripe/developer-docs/commit/044377087e92cb44c22fee44fee6eb168346c5c9) Document making variants with different file extensions (Guy Sartorelli) - - 2024-01-17 [65b1ab1c](https://github.com/silverstripe/developer-docs/commit/65b1ab1c13d71173dddb4e9eff2f1025b61c7d6c) Refactor docs about file manipulation into its own page (Guy Sartorelli) - - 2024-01-17 [81574844](https://github.com/silverstripe/developer-docs/commit/815748443feb91317339e85b01bb95d0863d4b51) Document deprecated API (#440) (Guy Sartorelli) - - 2024-01-14 [9fffd6d8](https://github.com/silverstripe/developer-docs/commit/9fffd6d865bff22cad60b3191f5c5fe85e13fa72) Document added generic types (Guy Sartorelli) - - 2024-01-08 [980c4b95](https://github.com/silverstripe/developer-docs/commit/980c4b95e8367e5ab8095f6e774637ca805cb180) Document new redirector 404 in changelog (#437) (Guy Sartorelli) - - 2024-01-08 [3ad9dce5](https://github.com/silverstripe/developer-docs/commit/3ad9dce5af4747ef5588c76097e90ad4d411dc27) Document new config for splitting summary sentences (#428) (Guy Sartorelli) - - 2024-01-08 [c3f61e59](https://github.com/silverstripe/developer-docs/commit/c3f61e595c33b0822c518a5052fa7887f68145a6) Document changes to asset admin file size config (#430) (Guy Sartorelli) - - 2024-01-08 [d01a1eb4](https://github.com/silverstripe/developer-docs/commit/d01a1eb440a4841f379a02bb30c4440a646c6ba7) Fix spelling issue (#436) (Sabina Talipova) - - 2024-01-07 [52c71d71](https://github.com/silverstripe/developer-docs/commit/52c71d717c81799f9bb73697332d8bc22fc89186) `Update changelog for .brf support` (Ed Wilde) - - 2023-12-19 [1d517716](https://github.com/silverstripe/developer-docs/commit/1d517716ff78f317ea670495af1037538ee5fb7f) Auto scaffolding has_one relations (Steve Boyd) - - 2023-12-18 [a0054052](https://github.com/silverstripe/developer-docs/commit/a0054052de182fe195de894eec7cd1b7f867b939) Document lazy loading (Guy Sartorelli) - - 2023-12-14 [ea47bc59](https://github.com/silverstripe/developer-docs/commit/ea47bc5971447a451badb86d9b35bde77ab24d91) Document another exception to catch when dealing with email (#421) (Guy Sartorelli) - - 2023-12-14 [e1cc2c28](https://github.com/silverstripe/developer-docs/commit/e1cc2c28dbba5aceb6ab7c4a9d63bb9cc7bc28a6) Add SearchableDropdownField to 5.2.0 changelog (Steve Boyd) - - 2023-12-12 [e2c2ff19](https://github.com/silverstripe/developer-docs/commit/e2c2ff19c73a3af676a8dce57856e32f3d60618e) Update supported PHP version for CMS 5.2 (Sabina Talipova) - - 2023-12-11 [fd9af106](https://github.com/silverstripe/developer-docs/commit/fd9af106dc54690c388b4ff0c1a077dd0b5f6ce3) Document multi-reciprocal has_one relations (#417) (Guy Sartorelli) - - 2023-12-11 [137bdaa0](https://github.com/silverstripe/developer-docs/commit/137bdaa0a79253966caf2c46e7fd17c3e456e28e) Update changelog for security patches (Guy Sartorelli) - - 2023-12-10 [3657480d](https://github.com/silverstripe/developer-docs/commit/3657480d00064ced7eb47dd9c240687dfd78e775) Document gridfield with arbitrary data (Guy Sartorelli) - - 2023-12-10 [78e53226](https://github.com/silverstripe/developer-docs/commit/78e5322660f63c7096baaa9e96017163d9aa0daa) Nested RequestHandlers (Steve Boyd) - - 2023-11-29 [1a514d10](https://github.com/silverstripe/developer-docs/commit/1a514d1070a1303b6135a5d8dcf43a5aa617cce7) Document new staticpublishqueue configuration (#413) (Guy Sartorelli) - - 2023-11-27 [7aaf5358](https://github.com/silverstripe/developer-docs/commit/7aaf5358c96a8293a3f83f661d229ed9382edc0b) Document using GridField with arbitrary data (Guy Sartorelli) - - 2023-11-26 [2dcd339c](https://github.com/silverstripe/developer-docs/commit/2dcd339c73ab86b9fa0eed3d57f4709e8549d3da) Update coding conventions (Steve Boyd) - - 2023-11-26 [0786b201](https://github.com/silverstripe/developer-docs/commit/0786b2014bafc57f679432bd77440ae1bd7a8873) Add SortPlugin to the docs (Sabina Talipova) - - 2023-11-23 [554e4f0c](https://github.com/silverstripe/developer-docs/commit/554e4f0c4fa87154e51b27c859a63e62c893d13c) Include method signatures in public API definition (Guy Sartorelli) - - 2023-11-22 [51cba6cc](https://github.com/silverstripe/developer-docs/commit/51cba6cc5474e33b41154ca047791fc668ce9060) LogicException when no react component (Steve Boyd) - - 2023-11-14 [d9893215](https://github.com/silverstripe/developer-docs/commit/d989321526f521d40ee567658b67548ef2325ea6) Document new dev admin permissions (#399) (Guy Sartorelli) - - 2023-11-07 [6f0861b0](https://github.com/silverstripe/developer-docs/commit/6f0861b0117147c7912ac6ebf9aa3e663c2539cb) Select all and deselect all files (Steve Boyd) - - 2023-11-06 [3b59d4e2](https://github.com/silverstripe/developer-docs/commit/3b59d4e23b28da107f96a98523e0f54f8b6ef113) Deprecated $having parameter (Steve Boyd) - - 2023-11-02 [adb81fb1](https://github.com/silverstripe/developer-docs/commit/adb81fb19bd5b0387b7ebbfe460e5371d349e896) prefix (Steve Boyd) - - 2023-11-02 [5b23e3e7](https://github.com/silverstripe/developer-docs/commit/5b23e3e72c3552a00a10527c33e514bf3a5b0cb3) Remove references to old Addons website (#389) (Maxime Rainville) - - 2023-11-02 [7c7ed947](https://github.com/silverstripe/developer-docs/commit/7c7ed9470c56d7a9c8df49b8a62a13040062da06) Document new community roles (Guy Sartorelli) - - 2023-11-02 [c04c2e03](https://github.com/silverstripe/developer-docs/commit/c04c2e039dfbef58416baa01406c3a7b8eb2fe05) Document new hide_pagetypes config (Guy Sartorelli) - - 2023-10-25 [951c9c81](https://github.com/silverstripe/developer-docs/commit/951c9c817efc6fbebeddcefe84186070cc64e41a) Update 01_Code.md (Andrew Paxley) - - 2023-10-25 [f708c403](https://github.com/silverstripe/developer-docs/commit/f708c40355752dc64c998f125f38700990e2252f) Restructure the contributing docs (#385) (Guy Sartorelli) - - 2023-10-24 [3dcdc188](https://github.com/silverstripe/developer-docs/commit/3dcdc18866eeba26b453a0c252999b92baf12e5e) Update maintainer guidelines (#383) (Guy Sartorelli) - - 2023-10-24 [8566c1f0](https://github.com/silverstripe/developer-docs/commit/8566c1f040e86e9777291717c554d04ed902c316) Update contributing code docs (#379) (Guy Sartorelli) - - 2023-10-24 [caf0c452](https://github.com/silverstripe/developer-docs/commit/caf0c452e83f6ccd7c9bf236df04be31824e72c5) `Specify what makes a "core" module different (#384)` (Guy Sartorelli) - - 2023-10-24 [94aff599](https://github.com/silverstripe/developer-docs/commit/94aff5999f00c58a78ec2161b016d70564b727bb) Update triage resources (#382) (Guy Sartorelli) - - 2023-10-24 [a6d4f746](https://github.com/silverstripe/developer-docs/commit/a6d4f7465a2a4ec73eb8f0f1bfa0e74c2c395e14) Update documentation about documenation (#380) (Guy Sartorelli) - - 2023-10-24 [4bdfce04](https://github.com/silverstripe/developer-docs/commit/4bdfce04189842c99fce835703800a3165748de9) Update issues/bugs page (#378) (Guy Sartorelli) - - 2023-10-24 [71785917](https://github.com/silverstripe/developer-docs/commit/717859176a0b8b1826261ce82b5089909fa053c0) Update translation doc (#381) (Guy Sartorelli) - - 2023-10-19 [4e669f12](https://github.com/silverstripe/developer-docs/commit/4e669f12c5fcd6cc88e54f31f8a11accc03f70dd) Create new users with random passwords (Steve Boyd) - - 2023-10-17 [36f9313a](https://github.com/silverstripe/developer-docs/commit/36f9313aed059a83d2b8d386b2b26a5006b304d9) Update eagerloading docs to explicitly say no relation filter (#376) (Guy Sartorelli) - - 2023-10-17 [a9966929](https://github.com/silverstripe/developer-docs/commit/a99669290e6fb2a4c131c4ed7d94c8eed3771788) Mention that SS_TRUSTED_PROXY_IPS supports subnets (Johannes Hammersen) - - 2023-10-02 [c6525f22](https://github.com/silverstripe/developer-docs/commit/c6525f22b95158ebaee3b57ff9df6f9be23a9cf8) Document ORM changes for CMS 5.2 (#351) (Guy Sartorelli) - - 2023-09-25 [ce291746](https://github.com/silverstripe/developer-docs/commit/ce2917464f19de9a856cd1295146c1c90840e1f2) add errorpage allowed_error_codes to 5.2.0 changelog (Andrew Paxley) - - 2023-09-19 [2177d6a9](https://github.com/silverstripe/developer-docs/commit/2177d6a960cd26f0ba03b30ac2d67222e3cbee98) Document deprecation of old password encryptors (#348) (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0) - - 2024-04-09 [3f8e3a3](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/3f8e3a317e1bcce6ea2d1aee5249f107357dba97) Linting (Steve Boyd) - -- silverstripe/mfa (5.1.0 -> 5.2.0) - - 2024-04-09 [27ed519](https://github.com/silverstripe/silverstripe-mfa/commit/27ed51967aaa06cf5185004dba15fef9c8645b1d) Change colon to dash (Steve Boyd) - - 2024-04-09 [8fa7de5](https://github.com/silverstripe/silverstripe-mfa/commit/8fa7de5930e0beecb57f85c0395366f60c3aa91a) Linting (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0) - - 2024-04-09 [39809c7](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/39809c736baef2b5112adbe03f643f0bc616c16a) Linting (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0) - - 2024-02-25 [d820d0b](https://github.com/silverstripe/silverstripe-linkfield/commit/d820d0b98a04656b9bfb205c8c231f7c08d4b50e) Fix docs links in readme (Guy Sartorelli) - - 2024-02-20 [7c11469](https://github.com/silverstripe/silverstripe-linkfield/commit/7c114696b6faf41ab2982892f4db8ada894c52b7) Link field User manual (Sabina Talipova) - - 2024-02-18 [a79f97d](https://github.com/silverstripe/silverstripe-linkfield/commit/a79f97d680ec4bb425579ff768c60f3a76d20ef2) Provide proper developer documentation (#224) (Guy Sartorelli) - - 2024-02-13 [2b0eef1](https://github.com/silverstripe/silverstripe-linkfield/commit/2b0eef18e79a20c14c02ec8116797b2069104f51) Automatic publishing of linked pages and files (Steve Boyd) - - 2024-02-12 [c5f91c4](https://github.com/silverstripe/silverstripe-linkfield/commit/c5f91c4ae92378a59f4f09be2c68f74d873490e1) Update PHPDocs (Guy Sartorelli) - - 2023-12-05 [22fcdcc](https://github.com/silverstripe/silverstripe-linkfield/commit/22fcdcc1415e09e775e47fe081f1921e4ff83ac2) Update PHPDoc for link models (#136) (Guy Sartorelli) - - 2023-12-05 [5b86669](https://github.com/silverstripe/silverstripe-linkfield/commit/5b866698633c83d0c1bb533f126a53eb20910f89) Update sentence in README (Steve Boyd) - - 2023-11-29 [cc21f8a](https://github.com/silverstripe/silverstripe-linkfield/commit/cc21f8acc3fe3b0ba04b6585763372596aca1065) Update README (Guy Sartorelli) - -### Translations {#changelog-translations} - -- silverstripe/assets (2.1.0 -> 2.2.0) - - 2024-02-08 [577d3f5](https://github.com/silverstripe/silverstripe-assets/commit/577d3f5eaf2c2613d5fba90073039dd13cdd5747) Update translations (#591) (Guy Sartorelli) - - 2024-02-07 [65c5d2a](https://github.com/silverstripe/silverstripe-assets/commit/65c5d2a88975723ca145006587dff8d343174138) Update translations (#590) (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2024-02-08 [c40602957](https://github.com/silverstripe/silverstripe-framework/commit/c40602957310e265355dfc3b5b6fc1d0ba905832) Update translations (#11130) (Guy Sartorelli) - - 2024-02-07 [f952183cd](https://github.com/silverstripe/silverstripe-framework/commit/f952183cdf6c066d1e1d3cd1d006752a21f258e5) Update translations (#11126) (Guy Sartorelli) - - 2024-02-06 [26273bf37](https://github.com/silverstripe/silverstripe-framework/commit/26273bf3719dbcf7c1f57f893acddee76c551d25) Update translations (#11125) (Guy Sartorelli) - - 2023-11-06 [3c98264f8](https://github.com/silverstripe/silverstripe-framework/commit/3c98264f82f539680de2c2a48d6b2a16a4599bc9) Update translations (Steve Boyd) - - 2023-11-03 [5ff6811b0](https://github.com/silverstripe/silverstripe-framework/commit/5ff6811b007bc5a95786324e87db60e78fd2cba7) Update translations (Steve Boyd) - -- silverstripe/mimevalidator (3.0.0 -> 3.1.0) - - 2024-02-07 [7fd4a96](https://github.com/silverstripe/silverstripe-mimevalidator/commit/7fd4a964eac6f696a88a4af0abcc57d7db3e745b) Update translations (#72) (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0) - - 2024-03-06 [e2a7f456](https://github.com/silverstripe/silverstripe-admin/commit/e2a7f45605595cbe3be71250b9b92f506a3e4df5) `Add missing js translation strings to src/en.json file` (Peter Schiffer) - - 2024-02-26 [09b51af1](https://github.com/silverstripe/silverstripe-admin/commit/09b51af14ad5610fec89ca75977e0dbdef08853e) `Make Search options string translatable in SearchBox.js` (Peter Schiffer) - - 2024-02-08 [b4f13ed4](https://github.com/silverstripe/silverstripe-admin/commit/b4f13ed47830cfff78732dfa449bb243d7aa208f) Update translations (#1675) (Guy Sartorelli) - - 2024-02-07 [29e978be](https://github.com/silverstripe/silverstripe-admin/commit/29e978be4660147aa82958788053d10af6f05da3) Update translations (#1673) (Guy Sartorelli) - - 2023-11-06 [1c78d8f6](https://github.com/silverstripe/silverstripe-admin/commit/1c78d8f6596f318ca5d75985f80d92c3ee9ae922) Update translations (Steve Boyd) - - 2023-11-05 [9463da40](https://github.com/silverstripe/silverstripe-admin/commit/9463da40a1b2da36e1b6ab07c5183b02eb6ee3b3) Update translations (Steve Boyd) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0) - - 2024-02-08 [2a4a4a3d](https://github.com/silverstripe/silverstripe-asset-admin/commit/2a4a4a3d5142622c0f8c0135b8460150c7d0c16c) Update translations (#1442) (Guy Sartorelli) - - 2024-02-06 [55c1b3f2](https://github.com/silverstripe/silverstripe-asset-admin/commit/55c1b3f27b8c83ec6c63c328b30f4803f30348e4) Update translations (#1439) (Guy Sartorelli) - - 2023-11-07 [7e9d7cd7](https://github.com/silverstripe/silverstripe-asset-admin/commit/7e9d7cd7b8f203e880e4e4d56351251f49531dc3) Update translations (Steve Boyd) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0) - - 2024-02-07 [7d3c679](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7d3c679756b08915e691f073acb60c6913c13c25) Update translations (#294) (Guy Sartorelli) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0) - - 2024-02-08 [9f01c01](https://github.com/silverstripe/silverstripe-versioned-admin/commit/9f01c0170d3a0458e93fb19f147cf00ec02b80cb) Update translations (#324) (Guy Sartorelli) - - 2024-02-07 [6e9c8e8](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6e9c8e8dabb61897ee820a7950046fcb391d4cd9) Update translations (#322) (Guy Sartorelli) - -- silverstripe/cms (5.1.0 -> 5.2.0) - - 2024-02-08 [ac348693](https://github.com/silverstripe/silverstripe-cms/commit/ac3486938f90d37347093f41720de92883c98f95) Update translations (#2921) (Guy Sartorelli) - - 2024-02-07 [9dfc5dea](https://github.com/silverstripe/silverstripe-cms/commit/9dfc5dea2eb4923179b5ba7d2b39f8db7fd1e32d) Update translations (#2920) (Guy Sartorelli) - - 2023-11-06 [a51effa2](https://github.com/silverstripe/silverstripe-cms/commit/a51effa2acdcb3eed04949900ea987a0ee40076c) Update translations (Steve Boyd) - -- silverstripe/errorpage (2.1.0 -> 2.2.0) - - 2024-02-08 [14ce510](https://github.com/silverstripe/silverstripe-errorpage/commit/14ce5105559c359289a999b1b0f4826948e31c6b) Update translations (#101) (Guy Sartorelli) - - 2024-02-06 [df9b24b](https://github.com/silverstripe/silverstripe-errorpage/commit/df9b24beafc25e53fa4e67e6d341d514de1a53f9) Update translations (#98) (Guy Sartorelli) - - 2023-11-06 [8660060](https://github.com/silverstripe/silverstripe-errorpage/commit/8660060a92748167572e7e4667c6919ffaed1c8a) Update translations (Steve Boyd) - -- silverstripe/reports (5.1.0 -> 5.2.0) - - 2024-02-08 [c9c6c3ff](https://github.com/silverstripe/silverstripe-reports/commit/c9c6c3ff1e579e7b800c644565451b4578a3db39) Update translations (#176) (Guy Sartorelli) - - 2024-02-07 [f5b5daa7](https://github.com/silverstripe/silverstripe-reports/commit/f5b5daa71199a93bd301746de076283f3ba29563) Update translations (#175) (Guy Sartorelli) - -- silverstripe/siteconfig (5.1.0 -> 5.2.0) - - 2024-02-08 [e3c7621e](https://github.com/silverstripe/silverstripe-siteconfig/commit/e3c7621e710933e8e2adc5e473586c319b87d22c) Update translations (#156) (Guy Sartorelli) - - 2024-02-07 [3a46ee94](https://github.com/silverstripe/silverstripe-siteconfig/commit/3a46ee94c52fd460df92adc4c516ea0fd4cb5a18) Update translations (#155) (Guy Sartorelli) - - 2023-11-06 [d3073a87](https://github.com/silverstripe/silverstripe-siteconfig/commit/d3073a874e4ead79e82a52cbac6d71bedfdac075) Update translations (Steve Boyd) - - 2023-11-03 [5842dac1](https://github.com/silverstripe/silverstripe-siteconfig/commit/5842dac1bdc4dfc802c392f93a1710967fe4e8af) Update translations (Steve Boyd) - -- silverstripe/versioned (2.1.0 -> 2.2.0) - - 2024-02-08 [6871553](https://github.com/silverstripe/silverstripe-versioned/commit/6871553f5299b2caca2cbc5df3c07470c5a37728) Update translations (#437) (Guy Sartorelli) - - 2024-02-07 [a323d94](https://github.com/silverstripe/silverstripe-versioned/commit/a323d947f273a52f37fba3ed3489e4e68619b2b9) Update translations (#435) (Guy Sartorelli) - - 2024-02-06 [da1ba52](https://github.com/silverstripe/silverstripe-versioned/commit/da1ba526777e3de4836569b99b3b167db7cdfe36) Update translations (#434) (Guy Sartorelli) - -- silverstripe/session-manager (2.1.0 -> 2.2.0) - - 2024-02-08 [cc59d9c](https://github.com/silverstripe/silverstripe-session-manager/commit/cc59d9ca1215feb636996c300923c2076d99bf65) Update translations (#182) (Guy Sartorelli) - - 2024-02-07 [3e98627](https://github.com/silverstripe/silverstripe-session-manager/commit/3e986279f32ce9a5016111b117813d9678d6c977) Update translations (#181) (Guy Sartorelli) - -- silverstripe/login-forms (5.1.0 -> 5.2.0) - - 2024-02-08 [f9738e1](https://github.com/silverstripe/silverstripe-login-forms/commit/f9738e17fd734436d13d636c2ed7ae5966c15409) Update translations (#166) (Guy Sartorelli) - - 2024-02-07 [86f6214](https://github.com/silverstripe/silverstripe-login-forms/commit/86f6214512fbe056778689c30cbe1c322ea11b45) Update translations (#165) (Guy Sartorelli) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0) - - 2024-02-07 [1bd09d5](https://github.com/silverstripe/silverstripe-documentconverter/commit/1bd09d508780951692598117e8ba31dca91bb204) Update translations (#69) (Guy Sartorelli) - -- silverstripe/iframe (3.1.0 -> 3.2.0) - - 2024-02-07 [a8243f3](https://github.com/silverstripe/silverstripe-iframe/commit/a8243f3bcb823a2d1d15d14c3c670b63b0dd2384) Update translations (#80) (Guy Sartorelli) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0) - - 2024-02-07 [241c257](https://github.com/silverstripe/silverstripe-taxonomy/commit/241c2577d59e58a7d7c16652aeea6c20a2006e9c) Update translations (#105) (Guy Sartorelli) - - 2023-11-06 [2711d00](https://github.com/silverstripe/silverstripe-taxonomy/commit/2711d003740143a53ffc736652071035ac4db903) Update translations (Steve Boyd) - -- silverstripe/blog (4.1.0 -> 4.2.0) - - 2024-02-07 [95a2808](https://github.com/silverstripe/silverstripe-blog/commit/95a2808c04656f655dd27a0722ad85b85d140b64) Update translations (#742) (Guy Sartorelli) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0) - - 2024-02-07 [5badc34](https://github.com/silverstripe/silverstripe-spamprotection/commit/5badc345defa7298f35c9ca9912adcbcbb7d3ff0) Update translations (#111) (Guy Sartorelli) - -- silverstripe/contentreview (5.1.0 -> 5.2.0) - - 2024-02-07 [bb3eec1](https://github.com/silverstripe/silverstripe-contentreview/commit/bb3eec116048a4b2653eb80a7542ca9ccc5b84b5) Update translations (#223) (Guy Sartorelli) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0) - - 2024-02-07 [5531318](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/5531318c64be3da83815212f243411955dd53ebf) Update translations (#225) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0) - - 2024-02-07 [e147a4d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/e147a4db5ab54207839b3081642d22e7d9cb8b5e) Update translations (#520) (Guy Sartorelli) - - 2023-11-06 [5efa077](https://github.com/symbiote/silverstripe-advancedworkflow/commit/5efa0771b8f904d911e45eb410cad6a42270d920) Update translations (Steve Boyd) - -- silverstripe/segment-field (3.1.0 -> 3.2.0) - - 2024-02-07 [8e0e850](https://github.com/silverstripe/silverstripe-segment-field/commit/8e0e850cacc6875b11f61426f663268027619226) Update translations (#98) (Guy Sartorelli) - -- silverstripe/userforms (6.1.0 -> 6.2.0) - - 2024-02-07 [d070e7d](https://github.com/silverstripe/silverstripe-userforms/commit/d070e7dcf93f149aa30489278831e07de016acdf) Update translations (#1265) (Guy Sartorelli) - - 2023-11-06 [b9df907](https://github.com/silverstripe/silverstripe-userforms/commit/b9df907abfb14b4f59fa87abccbb6554313b453f) Update translations (Steve Boyd) - -- silverstripe/externallinks (3.1.0 -> 3.2.0) - - 2024-02-07 [b12e686](https://github.com/silverstripe/silverstripe-externallinks/commit/b12e6868bc4ae8513921aee078e14e5497406ff8) Update translations (#120) (Guy Sartorelli) - -- silverstripe/securityreport (3.0.0 -> 3.1.0) - - 2024-02-07 [51c745e](https://github.com/silverstripe/silverstripe-securityreport/commit/51c745eb36231481cf1aedd12c2f7a81d477a357) Update translations (#75) (Guy Sartorelli) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0) - - 2024-02-07 [8287278](https://github.com/silverstripe/silverstripe-versionfeed/commit/82872780eb98b12729adabd4a10134e9862c20d3) Update translations (#99) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0) - - 2024-02-07 [e1d6370](https://github.com/silverstripe/silverstripe-elemental/commit/e1d637079dedc0792ba370de3d79da91bc3c2942) Update translations (#1144) (Guy Sartorelli) - -- silverstripe/hybridsessions (3.0.2 -> 3.0.3) - - 2024-02-06 [402c6e4](https://github.com/silverstripe/silverstripe-hybridsessions/commit/402c6e40a7e34cd725af1c0539370328a4e22fcc) Update translations (Guy Sartorelli) - -- silverstripe/registry (3.1.0 -> 3.2.0) - - 2024-02-07 [8209e0d](https://github.com/silverstripe/silverstripe-registry/commit/8209e0de8fb30bc74543e9ce58f501a5b7a052ad) Update translations (#93) (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0) - - 2024-02-07 [bc196b2](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/bc196b2a5b67822dd7d09a47a145e062c3ba8038) Update translations (#145) (Guy Sartorelli) - -- silverstripe/mfa (5.1.0 -> 5.2.0) - - 2023-11-07 [9390a7d](https://github.com/silverstripe/silverstripe-mfa/commit/9390a7d560663d4de507f44e40896b94684b714d) Update translations (Steve Boyd) - -- silverstripe/crontask (3.0.2 -> 3.0.3) - - 2024-02-07 [1d2db78](https://github.com/silverstripe/silverstripe-crontask/commit/1d2db788db8445b44016ec0c8bf1a59aadfb1065) Update translations (#86) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0) - - 2024-02-07 [299929e](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/299929e0147fc49ec4a15634770a86279bcb14a4) Update translations (#98) (Guy Sartorelli) - -- silverstripe/realme (5.2.0 -> 5.3.0) - - 2023-11-06 [96974a0](https://github.com/silverstripe/silverstripe-realme/commit/96974a0f0c79e6361625933665b3f3016823816b) Update translations (Steve Boyd) - - 2023-11-03 [f420ac8](https://github.com/silverstripe/silverstripe-realme/commit/f420ac8d41caf60f6316386798946cdd91d87932) Update translations (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0) - - 2023-11-07 [81e45fe](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/81e45fe237ef8372e07f9e2f08890def9c95df66) Update translations (Steve Boyd) - -- silverstripe/subsites (3.1.0 -> 3.2.0) - - 2024-02-07 [d66e723](https://github.com/silverstripe/silverstripe-subsites/commit/d66e723a511ebc656efc07dcb86f5c5743dda62e) Update translations (#557) (Guy Sartorelli) - - 2023-11-06 [dd3073f](https://github.com/silverstripe/silverstripe-subsites/commit/dd3073f41aa0d3d724ade8c3630ebd14eaefdad3) Update translations (Steve Boyd) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0) - - 2024-02-07 [cae40f4](https://github.com/silverstripe/silverstripe-lumberjack/commit/cae40f4367b0dcceb776abb9c2644e0dc7821629) Update translations (#140) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental-userforms (4.1.0 -> 4.1.1) - - 2024-02-07 [ce60338](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/ce603388464d93c21010ddde3c849363ccc133a9) Update translations (#88) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2024-02-07 [c84d8af](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c84d8afa7a082b314609eb23f57483c54cb1c813) Update translations (#381) (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0) - - 2024-02-07 [892dbba](https://github.com/symbiote/silverstripe-queuedjobs/commit/892dbba99626cc2a9e4ecec6efd03600008b7aca) Update translations (#419) (Guy Sartorelli) - -### Other changes {#changelog-other-changes} - -- silverstripe/assets (2.1.0 -> 2.2.0) - - 2023-10-25 [63bd612](https://github.com/silverstripe/silverstripe-assets/commit/63bd6126b228452dd692d7a41b6e841e1c990d92) Add support for braille format files (#574) (Ed Wilde) - -- silverstripe/framework (5.1.0 -> 5.2.0) - - 2024-03-19 [6ede0316b](https://github.com/silverstripe/silverstripe-framework/commit/6ede0316bfc062df204d950097588c86a300280c) `Revert "Use field editorconfig when sanitising content" (#11180)` (Guy Sartorelli) - - 2024-03-04 [eb4ef623a](https://github.com/silverstripe/silverstripe-framework/commit/eb4ef623abeeda8b3b4941261dd06ec6a88df826) check for empty salt (Thomas Portelange) - - 2024-02-27 [59177dd31](https://github.com/silverstripe/silverstripe-framework/commit/59177dd3157f5b0894d5e7c07244a76a327c7c40) Delete tests/php/Core/Manifest/fixtures/VersionProviderTest directory (Thomas Portelange) - - 2024-02-27 [2921d68a5](https://github.com/silverstripe/silverstripe-framework/commit/2921d68a57ed718a5d0633b90c186d24b90c98dc) Update composer.json (Thomas Portelange) - - 2024-02-26 [a06ce0493](https://github.com/silverstripe/silverstripe-framework/commit/a06ce0493a5507bd78d35805f114b57927c14223) use VersionParser instead of comparator (Thomas Portelange) - - 2024-02-26 [80e197fe4](https://github.com/silverstripe/silverstripe-framework/commit/80e197fe4ffffc12136bb1dad49944971bddfe76) make error message more readable (Thomas Portelange) - - 2024-02-26 [a1d1e977c](https://github.com/silverstripe/silverstripe-framework/commit/a1d1e977c5912bcc5ed4a9a46901c523da1e7bbe) use composer/semver (Thomas Portelange) - - 2024-02-26 [071333f77](https://github.com/silverstripe/silverstripe-framework/commit/071333f774419f8f4549e9a5a027ead0796646c9) add composer/semver (Thomas Portelange) - - 2024-02-26 [68b79e11e](https://github.com/silverstripe/silverstripe-framework/commit/68b79e11ee6cca43637f6746c2c3ea64ee3af0a2) missing import (Thomas Portelange) - - 2024-02-26 [269692202](https://github.com/silverstripe/silverstripe-framework/commit/2696922023297943b1a5a9189490aa9a7f3a1243) update return type (Thomas Portelange) - - 2024-02-26 [1cf3dde9f](https://github.com/silverstripe/silverstripe-framework/commit/1cf3dde9f15623d61399814ee90360d225691b53) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [2b64e98af](https://github.com/silverstripe/silverstripe-framework/commit/2b64e98afc6e2368cce156e7c55dda7accfc8f00) Update VersionProviderTest.php (Thomas Portelange) - - 2024-02-26 [b53148c03](https://github.com/silverstripe/silverstripe-framework/commit/b53148c034394a37b7c16ce34a340a83da3f4afe) add deprecation, remove class_exists (Thomas Portelange) - - 2024-02-26 [2600b2661](https://github.com/silverstripe/silverstripe-framework/commit/2600b266172a51215963ebbb0dc640d77f6ded95) add composer-runtime-api (Thomas Portelange) - - 2024-02-26 [e649310f7](https://github.com/silverstripe/silverstripe-framework/commit/e649310f7bb96f1970156d07a31d990dde317e0f) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [a2486c085](https://github.com/silverstripe/silverstripe-framework/commit/a2486c085948c65545670fb903c99b92636eed7e) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [a19671950](https://github.com/silverstripe/silverstripe-framework/commit/a196719502e96019c5a0cf00cad9c33ea0c0fed7) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-23 [bc0912718](https://github.com/silverstripe/silverstripe-framework/commit/bc091271826aa7be800d961c4739bc2482ff7a00) use composer runtime api (Thomas Portelange) - - 2024-02-08 [e0107e020](https://github.com/silverstripe/silverstripe-framework/commit/e0107e0202914edd25629443a044b6883c18bb83) Update src/ORM/DataQuery.php (Thomas Portelange) - - 2024-02-08 [2ac68a55a](https://github.com/silverstripe/silverstripe-framework/commit/2ac68a55a4a806a64459b744f76a49e37367ee0d) rename var (Thomas Portelange) - - 2023-12-12 [b6c646ffb](https://github.com/silverstripe/silverstripe-framework/commit/b6c646ffbea586a9ffaa15e6d8fb27e5e14b683a) `Also remove the unused $last_idx assignment` (Ed Wilde) - - 2023-12-12 [81541db89](https://github.com/silverstripe/silverstripe-framework/commit/81541db892b17db0caf9b349bd807ef9efdb117d) `Remove unused line in findTab()` (Ed Wilde) - - 2023-11-09 [b9da08a30](https://github.com/silverstripe/silverstripe-framework/commit/b9da08a3017128271ea25675a9de12c0147a79c8) Update task-not-found messaging (Andrew Paxley) - - 2023-11-09 [c77a77d58](https://github.com/silverstripe/silverstripe-framework/commit/c77a77d584bff98d9bc335d61ab3f46372954a90) Flip canView logic and combine into taskEnabled check (Andrew Paxley) - - 2023-10-15 [e5eb98cc3](https://github.com/silverstripe/silverstripe-framework/commit/e5eb98cc3491785cbae17bb53be0be05fd5a6f42) Use field editorconfig when sanitising content (Bernie Hamlin) - - 2023-10-11 [af536a88d](https://github.com/silverstripe/silverstripe-framework/commit/af536a88d22a450604b090810bf8800f39aec66e) Add support for braille format files (Ed Wilde) - -- silverstripe/mimevalidator (3.0.0 -> 3.1.0) - - 2023-10-11 [25bfefc](https://github.com/silverstripe/silverstripe-mimevalidator/commit/25bfefc1459e81015c623619354a60db2b1debae) Add support for braille format files (Ed Wilde) - -- silverstripe/admin (2.1.0 -> 2.2.0) - - 2024-02-15 [6f468685](https://github.com/silverstripe/silverstripe-admin/commit/6f468685ebb14383dafb0607c589ff201c7035f4) rename var (Thomas Portelange) - - 2024-02-14 [6bcccbbf](https://github.com/silverstripe/silverstripe-admin/commit/6bcccbbf7f0eaedcd0ca1d428a2a46a369c1d66d) use innerText, rename (Thomas Portelange) - - 2024-02-07 [4c0247cd](https://github.com/silverstripe/silverstripe-admin/commit/4c0247cd9975559a0ad416245f3ba01a439bcf32) `Revert "TLN Update translations (#1673)"` (Steve Boyd) - - 2023-10-27 [3c969733](https://github.com/silverstripe/silverstripe-admin/commit/3c969733bb3154a09e45f1905a6c8fe6bf12ba87) Define a minimum width for the logo (Ed Wilde) - - 2023-10-27 [050b8b93](https://github.com/silverstripe/silverstripe-admin/commit/050b8b93c89c40b1d5a3dc5a58b585bb961bf239) Add the new CMS logo locally (Ed Wilde) - - 2023-10-12 [7cda7c7e](https://github.com/silverstripe/silverstripe-admin/commit/7cda7c7e729c4c07658cd9bad90ea2f6fa5481b8) Update Storybook logo to the 5.1 OSS logo (Ed Wilde) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0) - - 2023-12-12 [4fe280ed](https://github.com/silverstripe/silverstripe-asset-admin/commit/4fe280ed41dc452cac8bf8c82c170f7b00949dc7) Update sort param (Vivienne Tubbs) - -- silverstripe/cms (5.1.0 -> 5.2.0) - - 2023-01-11 [79acadc0](https://github.com/silverstripe/silverstripe-cms/commit/79acadc0bba1b84c1d4d9f85d8a0281e3c10fb43) PATCH: remove jQuery reference (Nicolaas / Sunny Side Up) - - 2023-01-09 [8d403a1d](https://github.com/silverstripe/silverstripe-cms/commit/8d403a1d83fc7cf30c4ffb4f28481004f9b63fe1) PATCH: fixing jquery link to thirdparty/jquery-query/jquery.query.js (Nicolaas / Sunny Side Up) - -- silverstripe/versioned (2.1.0 -> 2.2.0) - - 2023-10-30 [7eddb6b](https://github.com/silverstripe/silverstripe-versioned/commit/7eddb6b944b4c0f76a5deb4090f35aacbde88803) Apply suggestions from code review (Mojmir Fendek) - - 2023-10-19 [f21edce](https://github.com/silverstripe/silverstripe-versioned/commit/f21edce874766c6a195f4fb3ed6bc727dd182504) PR fixes. (Mojmir Fendek) - - 2023-10-19 [5ed82fe](https://github.com/silverstripe/silverstripe-versioned/commit/5ed82fe06eb104846762b88e8b38f4e1c832dd18) PR fixes. (Mojmir Fendek) - - 2023-10-19 [76568ac](https://github.com/silverstripe/silverstripe-versioned/commit/76568ac021abd442aa7ad53eff7dfbb7e468ee29) PR fixes. (Mojmir Fendek) - - 2023-10-18 [d6490ce](https://github.com/silverstripe/silverstripe-versioned/commit/d6490cef97a6d3efab6fa03e712a06739d8405ae) PR fixes. (Mojmir Fendek) - - 2023-10-16 [d2efe5a](https://github.com/silverstripe/silverstripe-versioned/commit/d2efe5acba12462d816ee6db4ca28f6c9b2ca06d) PR fixes. (Mojmir Fendek) - - 2021-04-06 [97d1ac6](https://github.com/silverstripe/silverstripe-versioned/commit/97d1ac66fadaf93613e48d8c46919723c7893604) PR fixes. (Mojmir Fendek) - - 2021-04-06 [dd2674f](https://github.com/silverstripe/silverstripe-versioned/commit/dd2674fa064dae94ec0bf4077f4886234d55a31a) Update src/RecursiveStagesService.php (Mojmir Fendek) - -- silverstripe/graphql (5.1.0 -> 5.2.0) - - 2023-10-19 [addf529](https://github.com/silverstripe/silverstripe-graphql/commit/addf529b5c26affd35a787529fc776d04d3dc15c) add canInit method and CAN_DEV_GRAPHQL permissions (Andrew Paxley) - -- silverstripe/login-forms (5.1.0 -> 5.2.0) - - 2023-09-11 [b0d6c3e](https://github.com/silverstripe/silverstripe-login-forms/commit/b0d6c3ed805c8e3ca2892f11a8dcbed4f617db9a) Small typo in README.md (Vinnie) - -- silverstripe/tagfield (3.1.0 -> 3.2.0) - - 2023-09-28 [9257956](https://github.com/silverstripe/silverstripe-tagfield/commit/92579562553441e2a203ff00156441848a10a633) fixed reference issue now that we've changed ref from createRef() (josephlewisnz) - - 2023-09-28 [f7af10a](https://github.com/silverstripe/silverstripe-tagfield/commit/f7af10a8372096c48e5ddfe10446ef33f713f125) build (josephlewisnz) - -- silverstripe/blog (4.1.0 -> 4.2.0) - - 2023-12-18 [b2f0d12](https://github.com/silverstripe/silverstripe-blog/commit/b2f0d12dd6199f09c3cf021979fa937a1974d1dc) Remove icons from gridfield add button (Mohamed Alsharaf) - - 2023-11-20 [d6375c5](https://github.com/silverstripe/silverstripe-blog/commit/d6375c5048c0bccefa8afe3afca95814a01f9bd7) addition to #685 also, respect mb in controller (Lukas Erni) - - 2023-11-16 [926ce56](https://github.com/silverstripe/silverstripe-blog/commit/926ce562f164c63eb01ed91b1e0aee45f8e3779c) remove plus icon for consistency (Lukas Erni) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0) - - 2023-09-11 [2210891](https://github.com/silverstripe/silverstripe-spamprotection/commit/221089136f82f778f4f2281630cbe0a28618a402) `Revert "fix: if no spam protector set, fail sliently"` (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (4.0.0 -> 4.0.2) - - 2023-06-01 [3006076](https://github.com/colymba/GridFieldBulkEditingTools/commit/3006076c82f90ec7ae4779daa0263230f3702814) SS5 Fix: Replace json2array with json_decode (James Cocker) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0) - - 2023-10-16 [58a795e](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/58a795e50a940c29bbdd8761ce50c010830f79ec) Fixes internal infinite recursion on Nginx/PHP-FPM environments (Nathan J. Brauer) - -- silverstripe/userforms (6.1.0 -> 6.2.0) - - 2023-11-12 [26a4816](https://github.com/silverstripe/silverstripe-userforms/commit/26a48162ff0e5c9fccb3d764bd449ec2e8309429) Add extension hook to control file attachments per recipient and field (Michal Kleiner) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0) - - 2023-09-21 [eeb4546](https://github.com/silverstripe/silverstripe-elemental/commit/eeb45461b62ca697552220e56bde0d303a88f114) Revert Github specific markdown to maintain portability (Ed Wilde) - -- silverstripe/developer-docs (5.1.0 -> 5.2.0) - - 2023-12-14 [844f4755](https://github.com/silverstripe/developer-docs/commit/844f4755751319ff2d584285f08ea245c41643ad) Update 05_Simple_Contact_Form.md (erangaddd) - - 2023-12-06 [c516a99b](https://github.com/silverstripe/developer-docs/commit/c516a99bb67fbc15ebb0ad1337ccd1c293de1c33) Update 04_Upgrading_project.md (Tim) - - 2023-11-28 [deacfc1a](https://github.com/silverstripe/developer-docs/commit/deacfc1a179329cf72cce99707a81d63b58222ec) Fixed: link to formatting/modifying/casting variables (Patrick Côté) - - 2023-11-02 [0033a971](https://github.com/silverstripe/developer-docs/commit/0033a9715e5815e37d10dc4009e1a32eb2096ec0) Update a example code comment (Nate Devereux) - - 2023-10-19 [3e546176](https://github.com/silverstripe/developer-docs/commit/3e546176f9554657030d4f1268ac096026ebcdde) Apply suggestions from code review (Johannes Hammersen) - -- silverstripe/subsites (3.1.0 -> 3.2.0) - - 2023-09-06 [e020766](https://github.com/silverstripe/silverstripe-subsites/commit/e02076609543732432aac88aba6564222980fdd6) `Revert "Switch to listing views of subsite-filtered sections"` (Steve Boyd) - - 2022-09-27 [8ba7070](https://github.com/silverstripe/silverstripe-subsites/commit/8ba7070b02b4941520a2afc9d4ebde34c6e4d85e) Switch to listing views of subsite-filtered sections (Michael van Schaik) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2023-03-07 [1637e78](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1637e78ea1398217e143002ac85124917f83bf5a) Make link color white. (Robin) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0) - - 2024-02-18 [ee8d7d1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ee8d7d1e4773985f252dd4d35297ad1cfcb27dda) use AsoluteLink method for xml styles to make sure link works with SS5 trailings slash setup, fixes #818 (Florian Thoma) - - 2023-10-17 [cf27342](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cf273429b96c76db6ae454f23f8387cdb52609fe) MSSQL database doesn't allow aliases in GROUP BY (Klemen Dolinšek) - - 2023-04-12 [69a9df5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/69a9df5febb0eeab74ac83a5b55ceb4cc0d69284) skip empty 'where' clauses (mikey-harveycameron) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0) - - 2023-10-18 [653071d](https://github.com/silverstripe/silverstripe-linkfield/commit/653071d4332bc3882732466d0a1e8f2eab60b259) Fixing typo of $Link.OpenInew to $Link.OpenInNew (Daniel Hurd) - - 2023-08-30 [245cdcc](https://github.com/silverstripe/silverstripe-linkfield/commit/245cdcce725164bd03e52371d1bb4e3d00b76f24) MISC: Docs update. (Mojmir Fendek) - - 2023-07-28 [437a915](https://github.com/silverstripe/silverstripe-linkfield/commit/437a9154bea6d15eb5a17d1bf394b549bff6c9f9) MISC: File link test. (Mojmir Fendek) - - 2022-10-27 [8f1a258](https://github.com/silverstripe/silverstripe-linkfield/commit/8f1a258f7f34a908936262e489cdf4125cf27db7) Add PhoneField. Add migration helpers from Linkable (#48) (Chris Penny) - - 2022-06-29 [636c679](https://github.com/silverstripe/silverstripe-linkfield/commit/636c6792ebf8c266e802814956eb1a8a954f92a7) PHP 8.1: Suppress deprecation notice (Chris Penny) - - 2022-05-13 [c1f42f2](https://github.com/silverstripe/silverstripe-linkfield/commit/c1f42f28efaf91065886c6e4f9dd8a37bc44d2e3) Debug. (Mojmir Fendek) - - 2021-11-16 [1068b78](https://github.com/silverstripe/silverstripe-linkfield/commit/1068b7830187a1fd9eed89a112a55bdd1e4bbd7f) Update namespace. Add table_name config to all models (#39) (Chris Penny) - - diff --git a/en/08_Changelogs/5.3.0.md b/en/08_Changelogs/5.3.0.md deleted file mode 100644 index 83962de5d..000000000 --- a/en/08_Changelogs/5.3.0.md +++ /dev/null @@ -1,1171 +0,0 @@ -# 5.3.0 - -## Overview - -- [Security considerations](#security-considerations) -- [Features and enhancements](#features-and-enhancements) - - [Changes to `TinyMCEConfig`](#changes-to-tinymce) - - [High-level API for converting files](#file-converter) - - [Improve customisability of rendered images](#image-rendering) - - [Validation for inline-editable elemental blocks](#elemental-validation) - - [`FormField` scaffolding for `DataObject` models](#scaffolding) - - [Support for `JOIN` in SQL `UPDATE`](#sql-update-join) - - [Autologin token regeneration changes](#autologin-token-regeneration) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -A full list of module versions included in CMS Recipe 5.3.0 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.1.2 | -| bringyourownideas/silverstripe-maintenance | 3.2.0 | -| colymba/gridfield-bulk-editing-tools | 4.1.0 | -| cwp/agency-extensions | 3.3.0 | -| cwp/starter-theme | 4.2.0 | -| cwp/watea-theme | 4.2.0 | -| dnadesign/silverstripe-elemental | 5.3.0 | -| dnadesign/silverstripe-elemental-userforms | 4.1.1 | -| silverstripe-themes/simple | 3.3.2 | -| silverstripe/admin | 2.3.0 | -| silverstripe/asset-admin | 2.3.0 | -| silverstripe/assets | 2.3.0 | -| silverstripe/auditor | 3.2.0 | -| silverstripe/blog | 4.3.0 | -| silverstripe/campaign-admin | 2.3.0 | -| silverstripe/cms | 5.3.0 | -| silverstripe/config | 2.1.1 | -| silverstripe/contentreview | 5.3.0 | -| silverstripe/crontask | 3.0.4 | -| silverstripe/documentconverter | 3.3.0 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.3.0 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.2 | -| silverstripe/errorpage | 2.3.0 | -| silverstripe/externallinks | 3.3.0 | -| silverstripe/framework | 5.3.0 | -| silverstripe/graphql | 5.2.3 | -| silverstripe/gridfieldqueuedexport | 3.3.0 | -| silverstripe/hybridsessions | 3.0.5 | -| silverstripe/iframe | 3.2.1 | -| silverstripe/installer | 5.3.0 | -| silverstripe/ldap | 2.2.3 | -| silverstripe/linkfield | 4.1.0 | -| silverstripe/login-forms | 5.3.0 | -| silverstripe/lumberjack | 3.2.0 | -| silverstripe/mfa | 5.3.0 | -| silverstripe/mimevalidator | 3.1.0 | -| silverstripe/realme | 5.4.0 | -| silverstripe/recipe-authoring-tools | 2.3.0 | -| silverstripe/recipe-blog | 2.3.0 | -| silverstripe/recipe-cms | 5.3.0 | -| silverstripe/recipe-collaboration | 2.3.0 | -| silverstripe/recipe-content-blocks | 3.3.0 | -| silverstripe/recipe-core | 5.3.0 | -| silverstripe/recipe-form-building | 2.3.0 | -| silverstripe/recipe-kitchen-sink | 5.3.0 | -| silverstripe/recipe-plugin | 2.0.1 | -| silverstripe/recipe-reporting-tools | 2.3.0 | -| silverstripe/recipe-services | 2.3.0 | -| silverstripe/registry | 3.2.0 | -| silverstripe/reports | 5.3.0 | -| silverstripe/restfulserver | 3.0.2 | -| silverstripe/securityreport | 3.1.1 | -| silverstripe/segment-field | 3.3.0 | -| silverstripe/session-manager | 2.3.0 | -| silverstripe/sharedraftcontent | 3.3.0 | -| silverstripe/siteconfig | 5.3.0 | -| silverstripe/sitewidecontent-report | 4.3.0 | -| silverstripe/spamprotection | 4.2.1 | -| silverstripe/staticpublishqueue | 6.2.2 | -| silverstripe/subsites | 3.3.0 | -| silverstripe/tagfield | 3.3.0 | -| silverstripe/taxonomy | 3.2.2 | -| silverstripe/textextraction | 4.1.1 | -| silverstripe/totp-authenticator | 5.3.0 | -| silverstripe/userforms | 6.3.0 | -| silverstripe/vendor-plugin | 2.0.3 | -| silverstripe/versioned | 2.3.0 | -| silverstripe/versioned-admin | 2.3.0 | -| silverstripe/versionfeed | 3.2.3 | -| silverstripe/webauthn-authenticator | 5.3.0 | -| symbiote/silverstripe-advancedworkflow | 6.3.0 | -| symbiote/silverstripe-gridfieldextensions | 4.1.0 | -| symbiote/silverstripe-multivaluefield | 6.1.0 | -| symbiote/silverstripe-queuedjobs | 5.2.0 | -| tractorcow/silverstripe-fluent | 7.2.0 | - -
- -## Security considerations {#security-considerations} - -Three security fixes that were previously released in the July security release are mentioned in the [Silverstripe CMS security patches July 2024](https://www.silverstripe.org/blog/silverstripe-cms-security-patches-july-2024/) blog post are listed below. - -Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2024-29885 - Reports are still accessible even when canView is set to false](https://www.silverstripe.org/download/security-releases/cve-2024-29885) Severity: Medium -- [CVE-2024-32981 - XSS Vulnerability with text/html base64-encoded payload](https://www.silverstripe.org/download/security-releases/cve-2024-32981) Severity: Medium -- [SS-2024-001 - TinyMCE allows svg files linked in object tags](https://www.silverstripe.org/download/security-releases/ss-2024-001) Severity: Medium - -## Features and enhancements - -### Changes to `TinyMCEConfig` {#changes-to-tinymce} - -In order to facilitate fixing a bug related to the sanitisation of HTML content via the [`HTMLEditorSanitiser`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorSanitiser) class, some changes had to be made to the [`TinyMCEConfig`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig) class. Those changes are as follows: - -- If `valid_elements` and `extended_valid_elements` are both empty, all HTML elements will be stripped out of the HTML content. -- A default set of `valid_elements` has been defined for all `TinyMCEConfig` instances. If you use custom `TinyMCEConfig` definitions and have not explicitly set the `valid_elements` option, you may have more elements permitted than you were expecting. -- There is a new [`TinyMCEConfig.default_options`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig->default_options) configuration property which allows you to define the default options for all `TinyMCEConfig` instances. - -> [!WARNING] -> If you use custom `TinyMCEConfig` definitions, we strongly recommend double checking if they include a definition of `valid_elements`, and if they don't, validate whether the default set defined in `TinyMCEConfig.default_options` is suitable for you. -> -> You can either change the `TinyMCEConfig.default_options` configuration value to affect the options for all `TinyMCEConfig` definitions, or explicitly define `valid_elements` for your specific configuration instances. See [setting options](/developer_guides/forms/field_types/htmleditorfield/#setting-options) for more details. - -See [sanitisation of HTML](#sanitisation-of-html) for more information about the bug that was fixed. - -### High-level API for converting files {#file-converter} - -There is now a high-level API for converting files from one format to another. This builds on top of the low-level API which was [added in 5.2.0](/changelogs/5.2.0/#file-variants). - -Files can be converted both in PHP code and in templates: - -```php -// Convert an image to webp format and apply the FitMax manipulation to the result -$this->MyImage()->Convert('webp')->FitMax(100, 100); -``` - -```ss -<%-- Convert an image to webp format and apply the FitMax manipulation to the result --%> -$MyImage.Convert('webp').FitMax(100, 100) -``` - -Out of the box `silverstripe/assets` provides the new [`InterventionImageFileConverter`](api:SilverStripe\Assets\Conversion\InterventionImageFileConverter) class which converts images to other image formats using [Intervention Image](https://image.intervention.io/v2). You can add your own `FileConverter` implementations in projects or modules for any file convertions you might need. - -See [convert a file to a different format](/developer_guides/files/file_manipulation/#file-conversion) for more details. - -### Improve customisability of rendered images {#image-rendering} - -We've aligned how images added to an [`HTMLEditorField`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorField) and images invoked in templates are rendered. The markup up for both `` tags are now generated from the same template file. This makes it easier to customise how images are rendered on your site. - -The template for this is `templates/SilverStripe/Assets/Storage/DBFile_Image.ss`. Add a file with that path to your Silverstripe CMS theme if you want to override it. - -This opens many interesting possibilities. For example, this code snippet will provide a WebP version of any image rendered on your site. - -```html - - - - -``` - -You can also choose to have different rendering logic for `HTMLEditorField` images and for images invoked in templates by overriding different templates. - -- Add a `SilverStripe/Assets/Shortcodes/ImageShortcodeProvider_Image.ss` to your theme to control images added to an HTMLEditorField. -- Add a `DBFile_Image.ss` file to the root of your theme to control only images invoked in templates. - -### Validation for inline-editable elemental blocks {#elemental-validation} - -Elemental content blocks now support validation when saving or publishing individual content blocks using the "three-dot" context menu in the top-right of the block. - -Validation can be added to a content block using standard [Model Validation and Constraints](https://docs.silverstripe.org/en/5/developer_guides/model/validation/#validation-and-constraints) by implementing a [`DataObject::validate()`](api:SilverStripe\ORM\DataObject::validate()) method on a content block, or by using [Form Validation](https://docs.silverstripe.org/en/5/developer_guides/forms/validation/#form-validation) where there are several options available. - -Elemental data is no longer sent when saving the parent `DataObject` (usually a `Page`) that contains an [`ElementalAreaField`](api:DNADesign\Elemental\Forms\ElementalAreaField). Instead, when saving the parent `DataObject`, all the child inline-editable elements that have unsaved changes are inline saved at the same time. This change was done to consolidate the saving process down to a single code path. The code that was previously used to process any element data sent with the parent data has been removed. - -### `FormField` scaffolding for `DataObject` models {#scaffolding} - -We've made a few improvements to how form fields are scaffolded for [`DataObject::getCMSFields()`](api:SilverStripe\ORM\DataObject::getCMSFields()). - -#### Define scaffolded form fields for relations {#scaffolding-relation-formfields} - -Most `DataObject` classes will rely on some amount of automatic scaffolding of form fields in their `getCMSFields()` implementations. However, it's common for modules to provide a specialised form field which is intended to always be used with a specific `DataObject` class. In those cases, even though you always want to use that form field with that class, you have to copy some boilerplate code from the module's documentation to set it up. - -You can now define what form fields should be used when scaffolding form fields for `has_one`, `has_many`, and `many_many` relations. This is defined on the class on the child-side of the relationship. For example, for the below `has_one` relation you would implement [`scaffoldFormFieldForHasOne()`](api:SilverStripe\ORM\DataObject::scaffoldFormFieldForHasOne()) on the `MyChild` class. - -```php -namespace App\Model; - -use SilverStripe\ORM\DataObject; - -class MyParent extends DataObject -{ - // ... - private static array $has_one = [ - 'MyChild' => MyChild::class, - ]; -} -``` - -```php -namespace App\Model; - -use SilverStripe\Forms\FormField; -use SilverStripe\ORM\DataObject; - -class MyChild extends DataObject -{ - // ... - - public function scaffoldFormFieldForHasOne( - string $fieldName, - ?string $fieldTitle, - string $relationName, - DataObject $ownerRecord - ): FormField { - return /* instantiate some FormField here */; - } -} -``` - -This means modules can pre-define the form field that should be used for their custom models, which reduces the amount of boilerplate code developers need to include in their `getCMSFields()` implementations. - -For more information see [scaffolding for relations](/developer_guides/model/scaffolding/#scaffolding-for-relations). - -#### `FormScaffolder` options {#scaffolding-options} - -The [`FormScaffolder`](api:SilverStripe\Forms\FormScaffolder) class (which is responsible for scaffolding form fields for `getCMSFields()`) has some new options: - -|option|description| -|---|---| -|`mainTabOnly`|Only set up the "Root.Main" tab, but skip scaffolding actual form fields or relation tabs. If `tabbed` is false, the `FieldList` will be empty.| -|`ignoreFields`|Deny list of field names. If populated, database fields and fields representing `has_one` relations which *are* in this array won't be scaffolded.| -|`ignoreRelations`|Deny list of field names. If populated, form fields representing `has_many` and `many_many` relations which *are* in this array won't be scaffolded.| -|`restrictRelations`|Allow list of field names. If populated, form fields representing `has_many` and `many_many` relations not in this array won't be scaffolded.| - -In particular, the `ignoreFields` and `ignoreRelations` options are useful ways to prevent form fields from being scaffolded at all. You can use this instead of calling `$fields->removeFieldByName()`, for example if you are adding database fields that you don't want to be edited with form fields in the CMS. - -These options are now also configurable using the new [`DataObject.scaffold_cms_fields_settings`](api:SilverStripe\ORM\DataObject->scaffold_cms_fields_settings) configuration property. - -See the [scaffolding](/developer_guides/model/scaffolding/#scaffolding-options) section for more details. - -### Support for `JOIN` in SQL `UPDATE` {#sql-update-join} - -The [`SQLUpdate`](api:SilverStripe\ORM\Queries\SQLUpdate) class now supports all of the same `JOIN` operations (using the same methods) that [`SQLSelect`](api:SilverStripe\ORM\Queries\SQLSelect) does. - -This is particularly helpful if you need to update columns in one table to match values from another table. - -### Autologin token regeneration changes {#autologin-token-regeneration} - -The Autologin ('remember me') feature stores cookies in the user's browser to allow recreation of their session when it expires. Currently, one of the cookies is regenerated whenever a user's session is recreated. This can cause unexpected logouts in certain situations, and has minimal value from a security standpoint. - -In 5.3, the current behaviour is retained, but can be disabled via configuration: - -```yml -SilverStripe\Security\RememberLoginHash: - replace_token_during_session_renewal: false -``` - -This will cause the token to be generated once during login, and not be regenerated during session renewal. - -From 6.0 onwards, tokens will never be regenerated during session renewal, and this configuration will be removed. - -### Other new features - -- `silverstripe/linkfield` now has improved accessibility support for screen readers and keyboard navigation. Focus states have also been made consistent between keyboard and mouse interaction. -- `silverstripe/graphql-devtools` contains a new `GraphQLSchemaInitTask` to help you initialise a basic GraphQL schema. -- [`GridFieldDetailForm_ItemRequest`](api:SilverStripe\Forms\GridField\GridFieldDetailForm_ItemRequest) now uses a [`PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) to handle PJAX responses for the save and publish actions. This aligns it with responses from other form submissions in the CMS. -- Primitive types inside an iterable object will now be automatically converted to relevant [`DBField`](api:SilverStripe\ORM\FieldType\DBField) types so can be rendered in a template. This allows the use of `return ArrayList::create(['lorem', 123]);` from a [`ContentController`](api:SilverStripe\CMS\Controllers\ContentController) method that is then looped over in a template. -- A new [`TabSet::changeTabOrder()`](api:SilverStripe\Forms\TabSet::changeTabOrder()) method has been added that allows you to change the order of tabs in a `TabSet`. See [tabbed forms](/developer_guides/forms/tabbed_forms/#change-the-order-of-tabs) for details. - -## API changes - -- Passing a non-array `$fields` argument to both [`FieldList::addFieldsToTab()`](api:SilverStripe\Forms\FieldList::addFieldsToTab()) and [`FieldList::removeFieldsFromTab()`](api:SilverStripe\Forms\FieldList::removeFieldsFromTab()) has been deprecated. -- The [`BaseElement::getDescription()`](api:DNADesign\Elemental\Models\BaseElement::getDescription()) method has been deprecated. To update or get the CMS description of elemental blocks, use the [`description`](api:DNADesign\Elemental\Models\BaseElement->description) configuration property and the localisation API. -- The [`RememberLoginHash::renew()`](api:SilverStripe\Security\RememberLoginHash::renew()) method has been deprecated without replacement, since the associated behaviour will be removed in 6.0. - - The `onAfterRenewToken` extension point within this method will likely be replaced with a new extension point in 6.0. -- The [`RememberLoginHash.replace_token_during_session_renewal`](api:SilverStripe\Security\RememberLoginHash->replace_token_during_session_renewal) configuration property has been added to allow disabling token regeneration during session renewal. This property will be removed in 6.0. -- Code for the CMS GraphQL `admin` schema which provided endpoints for the CMS has been deprecated and will be removed in CMS 6. Functionality which the GraphQL endpoints are currently responsible for will be replaced with regular Silverstripe controller endpoints instead. Extension hooks will be added to the new controller endpoints that return data to allow for customisation. Frontend schemas, such the `default` schema, will continue to work in CMS 6. -- [`IPUtils`](api:SilverStripe\Control\Util\IPUtils) has been deprecated and its usage has been replaced with the `IPUtils` class from `symfony/http-foundation` which is now included as a composer dependency in `silverstripe/framework`. -- Code in [`silverstripe/blog`](https://github.com/silverstripe/silverstripe-blog) which supported integration with [`silverstripe/widgets`](https://github.com/silverstripe/silverstripe-widgets) has been deprecated and will be removed in CMS 6.0. -- [`DataExtension`](api:SilverStripe\ORM\DataExtension), [`SiteTreeExtension`](api:SilverStripe\CMS\Model\SiteTreeExtension), and [`LeftAndMainExtension`](api:SilverStripe\Admin\LeftAndMainExtension) have been deprecated and will be removed in CMS 6.0. If you subclass any of these classes, you should now subclass [`Extension`](api:SilverStripe\Core\Extension) directly instead. - -## Bug fixes - -- If you use `<% loop %>` in your templates without telling it what to loop, previously the behaviour was to fail silently. This will now loop over what is currently in scope. See [looping over lists](/developer_guides/templates/syntax/#looping-over-lists) for more details. -- Reordering elemental blocks used to update the published sort order immediately, without pressing the publish button. That wasn't consistent with the way any other sort order updates happen in the CMS. We've changed this so that the sort order won't update in your published site until you publish one of the blocks in the elemental area that the reordered blocks live in. This is consistent with what happens when you reorder pages in the site tree. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -### Sanitisation of HTML - -When you save content in a `HTMLEditorField`, the [`HTMLEditorSanitiser`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorSanitiser) class is responsible for ensuring the HTML content is safe and matches the `valid_elements` and `extended_valid_elements` options you've defined. - -There was a bug that resulted in `HTMLEditorSanitiser` using the 'active' `HTMLEditorConfig` instance rather than the instance which was defined for the field. In many cases this goes unnoticed because the default active instance is very permissive, and TinyMCE does a lot of this work on the client-side, but it was possible to bypass the defined allowed HTML elements by sending requests directly to the server. - -This bug has been fixed, but some additional changes were required to facilitate it. See [changes to `TinyMCEConfig`](#changes-to-tinymce) for more details about those changes. - -### Restore batch action removed - -The "Restore" batch action was removed from the batch actions dropdown menu in the CMS as it has not functioned correctly for a long time. There is no intention at this stage to reintroduce this feature. - - - - -## Change log - -### Security {#changelog-security} - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-04-22 [60155dad4](https://github.com/silverstripe/silverstripe-framework/commit/60155dad417b6f78bd6bd9d8ac412bad47de6aa8) [SS-2024-001] Set convert_unsafe_embeds to true (Steve Boyd) - See [ss-2024-001](https://www.silverstripe.org/download/security-releases/ss-2024-001) - - 2024-04-16 [b8d20dc9d](https://github.com/silverstripe/silverstripe-framework/commit/b8d20dc9d531550e06fd7da7a0eafa551922e2e1) `Disallow data:text/html in data attributes` (Guy Sartorelli) - See [cve-2024-32981](https://www.silverstripe.org/download/security-releases/cve-2024-32981) - -- silverstripe/reports (5.2.0 -> 5.3.0) - - 2024-03-27 [0351106c](https://github.com/silverstripe/silverstripe-reports/commit/0351106c18ad4246d983b5f4e082c09c382121f4) Respect canView permissions for viewing reports (Guy Sartorelli) - See [cve-2024-29885](https://www.silverstripe.org/download/security-releases/cve-2024-29885) - -### Features and enhancements {#changelog-features-and-enhancements} - -- silverstripe/recipe-plugin (2.0.0 -> 2.0.1) - - 2024-06-05 [955a8d2](https://github.com/silverstripe/recipe-plugin/commit/955a8d23b15a7a01ec8e9703d9956824a09c4738) Use class name instead of self (Steve Boyd) - -- silverstripe/vendor-plugin (2.0.2 -> 2.0.3) - - 2024-06-05 [34f656b](https://github.com/silverstripe/vendor-plugin/commit/34f656b8c5ce96549c9658a8bf77f14f75996a39) Use class name instead of self (Steve Boyd) - -- silverstripe/assets (2.2.0 -> 2.3.0) - - 2024-08-21 [9584c31](https://github.com/silverstripe/silverstripe-assets/commit/9584c314a36123fd42da9b49a200e3eb0fbdf42a) ensure file title constructed from original filenam (Mohamed Alsharaf) - - 2024-07-29 [401277c](https://github.com/silverstripe/silverstripe-assets/commit/401277cedcc3572308e305dc0f53ff70d1926780) `Don't use keyword "self" (#622)` (Guy Sartorelli) - - 2024-06-30 [cf787b0](https://github.com/silverstripe/silverstripe-assets/commit/cf787b008619996e39160bb4ac4f6221ec25f636) Align rendering of image genercated by ImageShortCodeProvider with generic Image generation (#596) (Maxime Rainville) - - 2024-06-14 [7979fd7](https://github.com/silverstripe/silverstripe-assets/commit/7979fd73b88ed3a506b596ed99836890a20440e0) Use class name instead of self (Steve Boyd) - - 2024-06-07 [20cc083](https://github.com/silverstripe/silverstripe-assets/commit/20cc083e353205d741044553c60d3c5f581e8fe3) Scaffold formfields for File and Image using new API (#613) (Guy Sartorelli) - - 2024-06-04 [db48540](https://github.com/silverstripe/silverstripe-assets/commit/db4854046998b9e9fba4bbeb5a0b1f24d13e6426) Allow devs to define support for third-party intervention drivers (#610) (Guy Sartorelli) - - 2024-04-10 [ff5e8a7](https://github.com/silverstripe/silverstripe-assets/commit/ff5e8a743eea9cdddb900579a6e8c3d77a48e8ba) File converter API (#595) (Guy Sartorelli) - -- silverstripe/config (2.1.0 -> 2.1.1) - - 2024-06-05 [6563cb0](https://github.com/silverstripe/silverstripe-config/commit/6563cb0c4030e820bfbc70fae5317bcae3b259f4) Use class name instead of self (Steve Boyd) - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-08-12 [dca62c738](https://github.com/silverstripe/silverstripe-framework/commit/dca62c7380724fc44c8f390f4d129834c3ec1111) Make CMSFields scaffolding configurable, plus new options (#11328) (Guy Sartorelli) - - 2024-08-11 [eee7a84a4](https://github.com/silverstripe/silverstripe-framework/commit/eee7a84a480b028a3d925bc7483cae9c45e9d252) Add new method TabSet::changeTabOrder(). (#11329) (Guy Sartorelli) - - 2024-07-31 [9091ecfd3](https://github.com/silverstripe/silverstripe-framework/commit/9091ecfd3a59aa88d45134568552362245a4d9fb) `Don't use the keyword "self" (#11315)` (Guy Sartorelli) - - 2024-07-29 [d9bccaff3](https://github.com/silverstripe/silverstripe-framework/commit/d9bccaff3db5c76480d5879d6f5a312b29dca9c6) Don't use keywords self (#11313) (Guy Sartorelli) - - 2024-06-17 [620c1b046](https://github.com/silverstripe/silverstripe-framework/commit/620c1b04699daa1d306de130dbecd1f1a92583fc) Use class name instead of self (Steve Boyd) - - 2024-06-07 [be0eab2ba](https://github.com/silverstripe/silverstripe-framework/commit/be0eab2bae7cd3d0739a990ea83e46faba4928b6) Allow DataObject classes to define scaffolded relation formfields (#11269) (Guy Sartorelli) - - 2024-05-28 [e35f12c66](https://github.com/silverstripe/silverstripe-framework/commit/e35f12c66fcb1fbae73d7ed95f7ea5dc431d8817) Update AttributesHTML to output alt attribute even if it's empty (#11217) (Maxime Rainville) - - 2024-05-16 [56625081b](https://github.com/silverstripe/silverstripe-framework/commit/56625081b43d2d49530fae577cdaa3d8fa572c17) Use allowed view button for readonly GridField (#11228) (Guy Sartorelli) - - 2024-05-15 [12a741fee](https://github.com/silverstripe/silverstripe-framework/commit/12a741feee8443e7a55f1153c315b9beb01abdb5) Rendering scalars in ArrayList in templates (Steve Boyd) - - 2024-04-26 [142a318fa](https://github.com/silverstripe/silverstripe-framework/commit/142a318fa8f24f7f4bc5042fa3852beb4bd6d9aa) Return PJAX responses from gridfield edit forms (#11206) (Guy Sartorelli) - - 2024-04-18 [72692f9f1](https://github.com/silverstripe/silverstripe-framework/commit/72692f9f1017c932dde5fac77970bdfbe9de2f46) Make default TinyMCE settings configurable (Guy Sartorelli) - - 2024-04-18 [2bdc24c86](https://github.com/silverstripe/silverstripe-framework/commit/2bdc24c86a4474106a85f9e648379290408f057e) Set default valid_elements for new TinyMCE config (Guy Sartorelli) - - 2024-04-01 [b442d9d45](https://github.com/silverstripe/silverstripe-framework/commit/b442d9d45ad208e5a41987afdd3c2f237efe2f13) Let unit tests manipulate the DB before loading fixtures (#11182) (Guy Sartorelli) - - 2024-03-25 [492cb800f](https://github.com/silverstripe/silverstripe-framework/commit/492cb800fa09f7c1448a217393e61fed69b2cec6) store tableList in cache (#11183) (Thomas Portelange) - - 2024-03-21 [b167f470d](https://github.com/silverstripe/silverstripe-framework/commit/b167f470d768f246869ca517fed3f5b781aa15f3) Add Nice to DBField (Thomas Portelange) - -- silverstripe/admin (2.2.0 -> 2.3.0) - - 2024-07-18 [ef327402](https://github.com/silverstripe/silverstripe-admin/commit/ef32740246481b7beaa99941cb0a78423853eca7) Wait for promises before submitting forms (Steve Boyd) - - 2024-06-18 [cca9ed5f](https://github.com/silverstripe/silverstripe-admin/commit/cca9ed5f4051396e1ed790b92341732fec5f7b7a) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [7daeee4d](https://github.com/silverstripe/silverstripe-admin/commit/7daeee4d9dd700c055c82c998ee6c59575a76dba) Use class name instead of self (Steve Boyd) - - 2024-05-22 [65c0adb4](https://github.com/silverstripe/silverstripe-admin/commit/65c0adb4e03c30463adb9542e08097a318127fcc) Highlight the tabs which have validation errors (#1753) (Guy Sartorelli) - - 2024-05-09 [2fea8ca3](https://github.com/silverstripe/silverstripe-admin/commit/2fea8ca3adfe453b4e44a0cf5c2e9c84c2c535cf) Rebuild bundle (Steve Boyd) - - 2024-04-26 [d43e6dcc](https://github.com/silverstripe/silverstripe-admin/commit/d43e6dcc31f431723e1905d5011291a394c6894f) move private method to framework (#1730) (Guy Sartorelli) - - 2024-04-18 [d03d790c](https://github.com/silverstripe/silverstripe-admin/commit/d03d790c4457cf171d6a903efbda35fe1fec965c) Remove duplicated default settings from cms TinyMCE config (#1725) (Guy Sartorelli) - - 2024-04-17 [447fd34b](https://github.com/silverstripe/silverstripe-admin/commit/447fd34b0258f678ffde0bee9cfd204bb0251396) Add workflow permissions (Steve Boyd) - - 2021-11-08 [7130ae94](https://github.com/silverstripe/silverstripe-admin/commit/7130ae945bf8baec8d8c9ef16284e28bd7684cee) Open GridField rows in a new tab with Shift/Ctrl/Meta key (Sergey Shevchenko) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0) - - 2024-08-15 [ea422107](https://github.com/silverstripe/silverstripe-asset-admin/commit/ea4221077174992525b065aa06ecef8e204f1f19) Don't emit deprecation warnings for unavoidable API calls (#1483) (Guy Sartorelli) - - 2024-06-20 [32ede202](https://github.com/silverstripe/silverstripe-asset-admin/commit/32ede202576c6db4d761e23b1af363bb73e4ed50) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [1f32e330](https://github.com/silverstripe/silverstripe-asset-admin/commit/1f32e3304a67cc9d7a1d59ae9db0a59d4641a337) Use class name instead of self (Steve Boyd) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0) - - 2024-06-05 [6a731c2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6a731c250251404c3560bb87c3d91ed409635307) Use class name instead of self (Steve Boyd) - -- silverstripe/cms (5.2.0 -> 5.3.0) - - 2024-09-11 [1dab0904](https://github.com/silverstripe/silverstripe-cms/commit/1dab090402d1914fef713344f1baa11b238ae287) Update default homepage content (#3001) (Annie Kyles) - - 2024-08-15 [96ce0927](https://github.com/silverstripe/silverstripe-cms/commit/96ce0927458d3ae2961f1e266e4e91b2bbbc1592) Don't emit deprecation warnings for unavoidable API calls (#2985) (Guy Sartorelli) - - 2024-06-17 [ea38c43e](https://github.com/silverstripe/silverstripe-cms/commit/ea38c43ea5352d4877c95c15118850f5456c4449) Use class name instead of self (Steve Boyd) - -- silverstripe/errorpage (2.2.0 -> 2.3.0) - - 2024-06-14 [f70cfc9](https://github.com/silverstripe/silverstripe-errorpage/commit/f70cfc994d4d358835d55801e21372ddd48848b7) Use class name instead of self (Steve Boyd) - -- silverstripe/reports (5.2.0 -> 5.3.0) - - 2024-06-05 [5819a3bd](https://github.com/silverstripe/silverstripe-reports/commit/5819a3bde4b3168a587d627cd3a1a7516aabf810) Use class name instead of self (Steve Boyd) - -- silverstripe/siteconfig (5.2.0 -> 5.3.0) - - 2024-06-05 [c7260fbe](https://github.com/silverstripe/silverstripe-siteconfig/commit/c7260fbed0124c7afcf75eb99c893b16a7081696) Use class name instead of self (Steve Boyd) - -- silverstripe/versioned (2.2.0 -> 2.3.0) - - 2024-06-18 [cde029b](https://github.com/silverstripe/silverstripe-versioned/commit/cde029be7fb495e3952d838f9d74e76da2d109ab) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-05 [09902f9](https://github.com/silverstripe/silverstripe-versioned/commit/09902f9b000abbf0b567377bcb1b7e7dc14528a6) Use class name instead of self (Steve Boyd) - -- silverstripe/graphql (5.2.0 -> 5.2.3) - - 2024-06-17 [c965269](https://github.com/silverstripe/silverstripe-graphql/commit/c965269b4f80c4badb849e581d50a554d4216cd1) Use self::class::method() syntax (Steve Boyd) - - 2024-06-14 [fb18d9d](https://github.com/silverstripe/silverstripe-graphql/commit/fb18d9d3a0de78374b38f70fea3583cfb8405b70) Use class name instead of self (Steve Boyd) - -- silverstripe/session-manager (2.2.0 -> 2.3.0) - - 2024-06-14 [7552424](https://github.com/silverstripe/silverstripe-session-manager/commit/75524242cbc7d54bc342772a1251773a75542f0c) Use class name instead of self (Steve Boyd) - -- silverstripe/login-forms (5.2.0 -> 5.3.0) - - 2024-06-05 [b34ad95](https://github.com/silverstripe/silverstripe-login-forms/commit/b34ad95e9422c5eb44f4d4bfbe98bab363288cf1) Use class name instead of self (Steve Boyd) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0) - - 2024-06-05 [0ba82ee](https://github.com/silverstripe/silverstripe-documentconverter/commit/0ba82eeab731d96a048f417d3d6834d0d2237de9) Use class name instead of self (Steve Boyd) - -- silverstripe/tagfield (3.2.0 -> 3.3.0) - - 2024-06-05 [5bc5479](https://github.com/silverstripe/silverstripe-tagfield/commit/5bc54796a19fa616d6e8a15b6c90450fd3065168) Use class name instead of self (Steve Boyd) - -- silverstripe/blog (4.2.0 -> 4.3.0) - - 2024-06-05 [6c37e8f](https://github.com/silverstripe/silverstripe-blog/commit/6c37e8f77400b03bfb4c4db3925f662538031625) Use class name instead of self (Steve Boyd) - -- silverstripe/spamprotection (4.2.0 -> 4.2.1) - - 2024-06-14 [7ad6f85](https://github.com/silverstripe/silverstripe-spamprotection/commit/7ad6f8584fe596f288d5446ec445dd81307e0b2c) Use class name instead of self (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0) - - 2023-08-21 [2f3f149](https://github.com/colymba/GridFieldBulkEditingTools/commit/2f3f149dd6ee77fcae7ab0ecf76fc60667bc94c1) Update translations (#245) (Guy Sartorelli) - - 2023-06-15 [0b610fb](https://github.com/colymba/GridFieldBulkEditingTools/commit/0b610fb06fdf24036c0847a55e233ea717f56e9b) Update translations (Steve Boyd) - - 2023-06-14 [e038dc3](https://github.com/colymba/GridFieldBulkEditingTools/commit/e038dc3a6d12522fe7d2f918015ad163f3062fcc) Update translations (Steve Boyd) - - 2023-05-30 [c818128](https://github.com/colymba/GridFieldBulkEditingTools/commit/c8181281c15900a82e3e6130d2d0052cefb4f184) Update translations (Steve Boyd) - -- silverstripe/contentreview (5.2.0 -> 5.3.0) - - 2024-06-05 [061245f](https://github.com/silverstripe/silverstripe-contentreview/commit/061245fe8e514f0676d56106a3e03f03ee09e253) Use class name instead of self (Steve Boyd) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0) - - 2024-06-05 [be78f89](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/be78f890b612e5d77d57636bdd65bad8927ddef4) Use class name instead of self (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0) - - 2024-06-05 [ef49170](https://github.com/symbiote/silverstripe-advancedworkflow/commit/ef49170e64c505bf91816774ebc6e92479a48381) Use class name instead of self (Steve Boyd) - -- silverstripe/userforms (6.2.0 -> 6.3.0) - - 2024-06-14 [6541365](https://github.com/silverstripe/silverstripe-userforms/commit/6541365a8ea00a5692a649b5becbb8769055dcf8) Use class name instead of self (Steve Boyd) - - 2024-04-15 [1eb0c5f](https://github.com/silverstripe/silverstripe-userforms/commit/1eb0c5fa948d1dd2286e99bae60a83d1ad1ce4e1) Add classname to p tag (#1280) (Annie Kyles) - - 2024-03-17 [32d0158](https://github.com/silverstripe/silverstripe-userforms/commit/32d0158954b048b963405475140c40aa5c035d95) Add 'Includes' condition option to EmailRecipientCondition (#1275) (Sukhwinder Singh) - - 2024-03-12 [6191b49](https://github.com/silverstripe/silverstripe-userforms/commit/6191b4984dda38e7dd4631d599a951d373dfae46) Add extension hook for modifying submissions GridField (#1273) (James Cocker) - -- silverstripe/externallinks (3.2.0 -> 3.3.0) - - 2024-06-05 [e9de952](https://github.com/silverstripe/silverstripe-externallinks/commit/e9de9529808b8691ffe4154267a0d46e984e9de7) Use class name instead of self (Steve Boyd) - -- silverstripe/securityreport (3.1.0 -> 3.1.1) - - 2024-06-05 [32575f4](https://github.com/silverstripe/silverstripe-securityreport/commit/32575f49152e67642aadbf0befdfc00375a1feae) Use class name instead of self (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.2.0 -> 4.3.0) - - 2024-06-05 [7b8e23f](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/7b8e23f818cc02f9995737749c7034c901b3016f) Use class name instead of self (Steve Boyd) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0) - - 2024-05-09 [e894458](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e89445872e74ebb8d6ef01efd4b3ec05a5e0b983) Update reference to supported modules data (#220) (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (4.1.0 -> 4.1.2) - - 2024-06-05 [94ba665](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/94ba6652ff98e20fdc3bfdb8609c1327b30dbfe9) Use class name instead of self (Steve Boyd) - -- silverstripe/restfulserver (3.0.0 -> 3.0.2) - - 2024-06-14 [d395845](https://github.com/silverstripe/silverstripe-restfulserver/commit/d395845eb1b2641ec3426efe00ec47e29ea3badd) Use class name instead of self (Steve Boyd) - -- silverstripe/versionfeed (3.2.0 -> 3.2.3) - - 2024-06-05 [b2dd034](https://github.com/silverstripe/silverstripe-versionfeed/commit/b2dd034d1be8cb20ae4066857ebe93383609c8b3) Use class name instead of self (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0) - - 2024-08-15 [4f4a006](https://github.com/silverstripe/silverstripe-elemental/commit/4f4a00677918f72adf866464d532aad099a8431b) Don't emit deprecation warnings for unavoidable API calls (#1233) (Guy Sartorelli) - - 2024-07-24 [823cc53](https://github.com/silverstripe/silverstripe-elemental/commit/823cc5334f7c097d45becf064d0dedb60d1c810d) Inline save all rendered element forms on parent form submit (Steve Boyd) - - 2024-06-18 [e58f939](https://github.com/silverstripe/silverstripe-elemental/commit/e58f93911b030649de2b17330697a5533688584c) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [51b178c](https://github.com/silverstripe/silverstripe-elemental/commit/51b178cdb75e1676180620de38608ec59e028c8a) Use class name instead of self (Steve Boyd) - - 2024-04-30 [344bc54](https://github.com/silverstripe/silverstripe-elemental/commit/344bc54e0214ef5f4ef0062fb47b46afb751ebd4) Refactor Element and graphql hoc (Steve Boyd) - - 2024-04-18 [e3dd091](https://github.com/silverstripe/silverstripe-elemental/commit/e3dd091135c02417151a123768655bb6cfa58639) Refactor Element to function component (Steve Boyd) - - 2024-04-16 [4789b34](https://github.com/silverstripe/silverstripe-elemental/commit/4789b34ea93b90e936024c62a47947752ddb7a43) Validation of fields when inline saving (Steve Boyd) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0) - - 2024-07-29 [fbbad23](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/fbbad2379663b92ad0417cf197b2672767e78569) `Don't use keyword "self" (#155)` (Guy Sartorelli) - -- silverstripe/environmentcheck (3.0.1 -> 3.0.2) - - 2024-06-05 [0908db8](https://github.com/silverstripe/silverstripe-environmentcheck/commit/0908db80168f427cfb6716092d6ffae81995c702) Use class name instead of self (Steve Boyd) - -- silverstripe/hybridsessions (3.0.3 -> 3.0.5) - - 2024-06-05 [70b760d](https://github.com/silverstripe/silverstripe-hybridsessions/commit/70b760d0d660f87bee48a76393f9b5c0cf32ff75) Use class name instead of self (Steve Boyd) - -- silverstripe/mfa (5.2.0 -> 5.3.0) - - 2024-06-05 [84cdae1](https://github.com/silverstripe/silverstripe-mfa/commit/84cdae1f7c29682c1e24c003272b0868d5eab0c0) Use class name instead of self (Steve Boyd) - -- silverstripe/crontask (3.0.3 -> 3.0.4) - - 2024-06-05 [cadce9e](https://github.com/silverstripe/silverstripe-crontask/commit/cadce9eac9b65268d122abb7758f286fbe3dd669) Use class name instead of self (Steve Boyd) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-06-05 [b200f00](https://github.com/silverstripe/silverstripe-ldap/commit/b200f000dccb6e197cd47b9d43e6e698b35ce581) Use class name instead of self (Steve Boyd) - -- silverstripe/textextraction (4.1.0 -> 4.1.1) - - 2024-06-05 [7149050](https://github.com/silverstripe/silverstripe-textextraction/commit/714905014702ad15eae5ec29d5021f8a330d80f4) Use class name instead of self (Steve Boyd) - -- silverstripe/realme (5.3.0 -> 5.4.0) - - 2024-06-05 [aae799a](https://github.com/silverstripe/silverstripe-realme/commit/aae799a5fbea18dabf31a046c4d53a4a93a763d8) Use class name instead of self (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0) - - 2024-06-05 [14806b2](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/14806b2ab00ce97467f01e546fc2f2af069ee552) Use class name instead of self (Steve Boyd) - -- silverstripe/subsites (3.2.0 -> 3.3.0) - - 2024-06-05 [ad2c5d8](https://github.com/silverstripe/silverstripe-subsites/commit/ad2c5d8eded8542588fe7cd305d3802f1b0b5059) Use class name instead of self (Steve Boyd) - - 2024-03-28 [6ba7385](https://github.com/silverstripe/silverstripe-subsites/commit/6ba7385f5dc4c283efd1e27430a959bd82f31e3a) Use cached table list from ClassInfo (#564) (Thomas Portelange) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0) - - 2024-06-05 [9f5dbbe](https://github.com/silverstripe/silverstripe-lumberjack/commit/9f5dbbeae5240bb0cb605612359641d7f869e906) Use class name instead of self (Steve Boyd) - -- silverstripe/staticpublishqueue (6.2.0 -> 6.2.2) - - 2024-06-14 [ade614c](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/ade614c2314341d6f1686ffa4bfd726c21004976) Use class name instead of self (Steve Boyd) - -- cwp/agency-extensions (3.2.0 -> 3.3.0) - - 2024-06-05 [dc59615](https://github.com/silverstripe/cwp-agencyextensions/commit/dc596155dc3c4a81f025d7c773158994bdf3ba72) Use class name instead of self (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0) - - 2024-08-01 [6c6f43c](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/6c6f43ca84a6b85b00f3f8f60bc4045d7a2de875) `Don't use keyword "self" (#410)` (Guy Sartorelli) - - 2024-06-05 [abe2359](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/abe2359f7890f4d923a2b75d7bd7afc8d026f84b) Use class name instead of self (Steve Boyd) - - 2024-04-12 [db3edd7](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/db3edd7f1644788cfd3717b89ebcdce6d21565fa) Initial nested gridfield component (Niklas Forsdahl) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0) - - 2024-06-27 [dbbcd67](https://github.com/symbiote/silverstripe-queuedjobs/commit/dbbcd67896693d4ac79e1fe12e69dcc7f449e582) Send an email notification when a job is broken (Steve Boyd) - - 2024-06-14 [793e73d](https://github.com/symbiote/silverstripe-queuedjobs/commit/793e73da01bb91394ab4576bdc258fc6bdaf8e86) Use class name instead of self (Steve Boyd) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2024-07-29 [8c9745e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8c9745e0e273e7c11dfd2b92ca73598931f35747) Don't use keyword self (Guy Sartorelli) - - 2024-06-10 [201826e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/201826ed8225873fc11e57efc0004b65b1df3ec7) Revert temporary locale fix (Steve Boyd) - - 2024-06-05 [092638a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/092638a56fbde6778a27b2cf46d383b8bb0bd143) Use class name instead of self (Steve Boyd) - - 2024-04-04 [d426370](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d42637098a790617db459560e2230e56269b5ab8) Localisation manager links available for CMS edit link capable models. (Mojmir Fendek) - - 2024-03-27 [9aea31d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9aea31d68c63b7b834afb4140678aec95db1bdfd) Added dev/task to initialise DataObjects for existing datasets (Nathan J. Brauer) - - 2024-03-20 [fd05311](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fd053115adb5b27305667cec2101beb9e1f17827) Add ability to ignore domains entirely (Thomas Portelange) - -- silverstripe/linkfield (4.0.0 -> 4.1.0) - - 2024-08-15 [c76fdba](https://github.com/silverstripe/silverstripe-linkfield/commit/c76fdba2b7f0c3a1ece58d702c631f5552eb6073) Don't emit deprecation warnings for unavoidable API calls (#319) (Guy Sartorelli) - - 2024-06-05 [81a65c0](https://github.com/silverstripe/silverstripe-linkfield/commit/81a65c03a2c96b7f82b1a04570123ce630674089) Use class name instead of self (Steve Boyd) - - 2024-04-02 [ef75425](https://github.com/silverstripe/silverstripe-linkfield/commit/ef754257eb97fbea46e536e593274334fd4a4b3b) Better use of ARIA attributes (Steve Boyd) - - 2024-04-02 [b5c56e9](https://github.com/silverstripe/silverstripe-linkfield/commit/b5c56e91cbbb23f997336905f94515af385bd350) Improve component focusing (Steve Boyd) - - 2024-04-02 [5864546](https://github.com/silverstripe/silverstripe-linkfield/commit/5864546dade05a4ef3aad8530142515394fc91b9) Use li for multi links (Steve Boyd) - - 2024-04-01 [495dc35](https://github.com/silverstripe/silverstripe-linkfield/commit/495dc35b99f88b1d1998a61688c933654f08022c) Add migration task from gorriecoe/silverstripe-link (#253) (Guy Sartorelli) - - 2024-03-20 [4d9c84f](https://github.com/silverstripe/silverstripe-linkfield/commit/4d9c84f4a1187bbe800b7b0225476ee82c965057) LinkableMigrationTask for migrating sheadawson-linkable links (Sabina Talipova) - - 2024-03-19 [393f64f](https://github.com/silverstripe/silverstripe-linkfield/commit/393f64fe3e88b3be1afb16542d4dbd97dd476f4d) Add migration task from older versions of the module (#244) (Guy Sartorelli) - -### Bugfixes {#changelog-bugfixes} - -- silverstripe/assets (2.2.0 -> 2.3.0) - - 2024-06-04 [c4081b9](https://github.com/silverstripe/silverstripe-assets/commit/c4081b956807b197d1a7df4eb0fa4b112121e9e2) Ensure manipulations start with base file (#612) (Guy Sartorelli) - - 2024-05-15 [7266f83](https://github.com/silverstripe/silverstripe-assets/commit/7266f8337a3cb3a3ce9842b1a7fcf93623e71262) Ensure public url slashes are forward slashes (Steve Boyd) - - 2024-04-30 [41378dc](https://github.com/silverstripe/silverstripe-assets/commit/41378dc6054c04ff6a09a1d191b1aab5c4d17920) Make sure the cache shortcode value is used in FileShortcodeProvider (#598) (Maxime Rainville) - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-09-20 [829a28dc6](https://github.com/silverstripe/silverstripe-framework/commit/829a28dc68906ea9311fbeacec0edaa764edf0a8) Member form validator fix. (Mojmir Fendek) - - 2024-08-14 [25a41de8b](https://github.com/silverstripe/silverstripe-framework/commit/25a41de8b59c5c111a7d4895e4df9561fca273ec) Run ANALYZE TABLE before fetching table stats (Steve Boyd) - - 2024-08-08 [7b91207c1](https://github.com/silverstripe/silverstripe-framework/commit/7b91207c12405cb42f2f7658fbf1db72be1cc2d6) Don't error if template global is null (#11331) (Guy Sartorelli) - - 2024-08-06 [8c80a4fd1](https://github.com/silverstripe/silverstripe-framework/commit/8c80a4fd1e92b1d0d019f4653065bd749730b358) Do not suffix trailing slash to external links (Steve Boyd) - - 2024-08-06 [9fae48bbd](https://github.com/silverstripe/silverstripe-framework/commit/9fae48bbd74f8f710bb5f72c2fa7f68e1f959c9f) Allow clearing lazyloaded SearchableDropdownField. (#11324) (Guy Sartorelli) - - 2024-08-06 [c3f0104a8](https://github.com/silverstripe/silverstripe-framework/commit/c3f0104a89aafea617690697dfcefa39980f04b1) Clear table logic for MySQL 8 (Steve Boyd) - - 2024-07-25 [fb7b1734e](https://github.com/silverstripe/silverstripe-framework/commit/fb7b1734eb58f01a466bdb002c50647d221332bf) Readonly transformation of lazy-loaded searchable dropdown (#11297) (Johannes Hammersen) - - 2024-07-25 [f91b279ef](https://github.com/silverstripe/silverstripe-framework/commit/f91b279ef0fd7e8ff26de971352fcb8731528d37) `Don't generate table alias for "from" statement that are not column names.` (Maxime Rainville) - - 2024-07-19 [539d4645b](https://github.com/silverstripe/silverstripe-framework/commit/539d4645b98b07c9d6c6cae0e971df2a1386fca2) Truncate table to clear table (Steve Boyd) - - 2024-07-09 [c13ec3411](https://github.com/silverstripe/silverstripe-framework/commit/c13ec34113737626058b8b68792c9e8c527dba5e) `Don't strip <header> tag from HTMLValue (#11302)` (Guy Sartorelli) - - 2024-07-08 [0bb88d098](https://github.com/silverstripe/silverstripe-framework/commit/0bb88d0988bffdc9dbd0f083e1e32f440f85030f) Don't pass labelfield as value for SEarchableDropdownField (#11303) (Guy Sartorelli) - - 2024-07-03 [1943f9d41](https://github.com/silverstripe/silverstripe-framework/commit/1943f9d4173df4cb39992b960b870d5e41780348) DBForeignKey scaffolding missing parameter (#11295) (Johannes Hammersen) - - 2024-06-19 [ce5cfcac6](https://github.com/silverstripe/silverstripe-framework/commit/ce5cfcac61e42c0457aa6709dd2ab0b314bacd48) Remove write from SearchableDropdownTrait (johannes.hammersen) - - 2024-06-16 [1e0b9056f](https://github.com/silverstripe/silverstripe-framework/commit/1e0b9056f5309363ee0a31d7619a85f030e415dc) Don't load data up front for lazy-loaded searchable dropdown (#11278) (Guy Sartorelli) - - 2024-05-21 [f0aaba550](https://github.com/silverstripe/silverstripe-framework/commit/f0aaba5504aa070519792db8d63445f73b26362a) HTMLEditorField is not able to show html or xml code examples (#11243) (Sabina Talipova) - - 2024-05-19 [470293a6d](https://github.com/silverstripe/silverstripe-framework/commit/470293a6d215c446d66806990def0631fd99f923) 'which' check in 'sake' now works for aliases (#11232) (Hernold Koch) - - 2024-05-17 [699a8bf2d](https://github.com/silverstripe/silverstripe-framework/commit/699a8bf2daf1b7f28c034c68d0b69d499ee53a0e) Loop over current scope when no argument passed to loop block (Guy Sartorelli) - - 2024-05-13 [50a001836](https://github.com/silverstripe/silverstripe-framework/commit/50a00183639f6fb1816d42bafa3cb7cfb881c5ee) many_many through should allow subclasses (#11230) (Guy Sartorelli) - - 2024-05-07 [0f6d21060](https://github.com/silverstripe/silverstripe-framework/commit/0f6d2106021add81fbe8bd5fd4e143cd74633e45) Correctly eagerload polymorphic has_one relations (#11204) (Dominik Beerbohm) - - 2024-05-06 [3449d8bf2](https://github.com/silverstripe/silverstripe-framework/commit/3449d8bf212685908bddabd07e7d2b35d3c4cd33) `Revert "ENH Add Nice to DBField" (#11222)` (Guy Sartorelli) - - 2024-05-06 [a198c9162](https://github.com/silverstripe/silverstripe-framework/commit/a198c91628fa42c8841170a745ec5cf0a75f475b) Don't throw exception for empty eagerloaded relation (#11220) (Guy Sartorelli) - - 2024-05-06 [a92baeaf6](https://github.com/silverstripe/silverstripe-framework/commit/a92baeaf6fffb217260f118ad7335f1791144740) Allow double dots in path when not attempting directory traversal (#11219) (Guy Sartorelli) - - 2024-05-02 [b8f0b8ca4](https://github.com/silverstripe/silverstripe-framework/commit/b8f0b8ca4f72a12f22e5c4d8d91d04be276a3439) Handle getting HasOneRelationFieldInterface passed as an array (Steve Boyd) - - 2024-04-18 [a4adad60e](https://github.com/silverstripe/silverstripe-framework/commit/a4adad60e96cdcb8ebc87ea9f935cce47ac06a3a) Don't skip sanitisation when no valid elements are defined (Guy Sartorelli) - - 2024-04-15 [a53301f67](https://github.com/silverstripe/silverstripe-framework/commit/a53301f6739534841a8946d050344c9cf5c082ad) OutOfBoundsException when recipe-core isn't installed (fixes #11197) (Loz Calver) - - 2024-03-26 [135f9c6d3](https://github.com/silverstripe/silverstripe-framework/commit/135f9c6d3025259b519dfec351e3e85ecf2f46c5) Ensure eagerLoading don't load has_one twice (#11170) (Dominik Beerbohm) - - 2024-03-14 [9361382be](https://github.com/silverstripe/silverstripe-framework/commit/9361382be3d97e1fffe518f85b7d5f802ae7a2e6) mark a successful login attempt when completing a password reset (#10099) (Will Rossiter) - - 2023-10-15 [99e965b5d](https://github.com/silverstripe/silverstripe-framework/commit/99e965b5d7b3a90ce6be0b1233c3e9828c9a79b7) Use field editorconfig when sanitising content (Bernie Hamlin) - -- silverstripe/admin (2.2.0 -> 2.3.0) - - 2024-09-24 [901f0bf6](https://github.com/silverstripe/silverstripe-admin/commit/901f0bf608308ee1563106254c771a37332370c3) Don't trigger init if already redirected (Thomas Portelange) - - 2024-08-25 [27a2da76](https://github.com/silverstripe/silverstripe-admin/commit/27a2da76a74fc66c3bd38e9173b9090cfb57341f) Fix TinyMCE edit link when link contains html (#1814) (Mo Alsharaf) - - 2024-07-29 [806ba31e](https://github.com/silverstripe/silverstripe-admin/commit/806ba31ea82a3beb8649a7d17542b820829b5fa2) Correctly set img tag attributes for WYSIWYG (#1798) (Guy Sartorelli) - - 2024-06-20 [2730ef73](https://github.com/silverstripe/silverstripe-admin/commit/2730ef73c51858f996429aa10099a8489eb3741c) Restore correct margin for gridfield (#1790) (Guy Sartorelli) - - 2024-06-19 [a11d448e](https://github.com/silverstripe/silverstripe-admin/commit/a11d448e3c013d22ef773d8c70d43237c924fafa) Use correct argument for FormBuilder context (Steve Boyd) - - 2024-05-31 [effbe4f3](https://github.com/silverstripe/silverstripe-admin/commit/effbe4f37d48e26040fa0874f939a6aa986d76ec) Allow reloading react forms based on changes to a prop (#1771) (Guy Sartorelli) - - 2024-05-22 [8dc91bd1](https://github.com/silverstripe/silverstripe-admin/commit/8dc91bd195fd82658594478ab1a7480354bf506b) Ensure tab is highlighted for validation error (#1751) (Guy Sartorelli) - - 2024-05-08 [78eb1775](https://github.com/silverstripe/silverstripe-admin/commit/78eb177565cf01e7a0eebb7cf111d35a18a15fae) Update model class importers (Mike Nuguid) - - 2024-05-07 [98096401](https://github.com/silverstripe/silverstripe-admin/commit/98096401fb1930986d5fe587d79912b3eccd9da9) Rebuild bundle (Steve Boyd) - - 2024-05-05 [038173c2](https://github.com/silverstripe/silverstripe-admin/commit/038173c2934546163fa30fd88eb969ecb39889e1) SearchableDropdownField pass incorrect value on onChange event (Sabina Talipova) - - 2024-04-30 [34348736](https://github.com/silverstripe/silverstripe-admin/commit/3434873604624bbd6bffc2d51885c49a7bd49936) Repalce mouseDown with keyDown event on treedropdown option button (#1732) (Sabina Talipova) - - 2024-04-17 [494203ea](https://github.com/silverstripe/silverstripe-admin/commit/494203ea7bb99c23352eabb65da070d6d7ea4b7b) Ensure message events are handled correctly (#1724) (Guy Sartorelli) - - 2024-03-14 [64135431](https://github.com/silverstripe/silverstripe-admin/commit/64135431a2b7f42c47fe5a750de8dcfa19a635b1) Enable bypassing entwine onsubmit handler (Steve Boyd) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0) - - 2024-06-18 [0c02307](https://github.com/silverstripe/silverstripe-versioned-admin/commit/0c02307020afaf94445bcbcbc08fb16431c72156) Allow no recordId to be passed in to avoid console error in dev (#347) (Steve Boyd) - -- silverstripe/cms (5.2.0 -> 5.3.0) - - 2024-09-11 [42f72f5b](https://github.com/silverstripe/silverstripe-cms/commit/42f72f5b0438a6382b13c4b999a55b9f8603585e) Remove legacy fields which prevent page publish (fixes #2455) (Loz Calver) - - 2024-07-18 [90723451](https://github.com/silverstripe/silverstripe-cms/commit/907234511ee1deaf04e37ff109ba29b8c41f85aa) Don't double up the breadcrumb on list views (Maxime Rainville) - - 2024-05-09 [687c69c5](https://github.com/silverstripe/silverstripe-cms/commit/687c69c515e3387bd790236580b7c7c178a1e3ff) Remove broken restore batch action (Steve Boyd) - -- silverstripe/versioned (2.2.0 -> 2.3.0) - - 2024-08-19 [0650135](https://github.com/silverstripe/silverstripe-versioned/commit/0650135529a128ee8408ac7e7c11c5a6ef37ab2b) Include deprecation import (Steve Boyd) - -- silverstripe/graphql (5.2.0 -> 5.2.3) - - 2024-05-08 [d6e7735](https://github.com/silverstripe/silverstripe-graphql/commit/d6e7735562538d1432e968cf3ba1491419a2ed4a) Don't attempt to correct sort when passed as an argument (closes #571) (Loz Calver) - -- silverstripe-themes/simple (3.3.1 -> 3.3.2) - - 2019-02-05 [2ba821e](https://github.com/silverstripe/silverstripe-simple/commit/2ba821edd53ab323dfdb4e7aaeaa75de227ca1ed) `#64: TinyMCE text and image alignment issue` (Shenghan Chen) - -- silverstripe/blog (4.2.0 -> 4.3.0) - - 2024-05-10 [bad865d](https://github.com/silverstripe/silverstripe-blog/commit/bad865dc65fcf4cd95289c6127c11aea4f394f28) Don't hardcode table name (#629) (Werner Krauß) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0) - - 2024-09-19 [901c64f](https://github.com/colymba/GridFieldBulkEditingTools/commit/901c64f7a75e232127da909b7a0fefd61f433e39) fix multiple things in EditHandler (Thomas Portelange) - - 2024-05-29 [e6b27ac](https://github.com/colymba/GridFieldBulkEditingTools/commit/e6b27ac50165758980f8ed08532d5865131f1d78) No more floating checkboxes (#286) (Guy Sartorelli) - - 2024-04-29 [f842a30](https://github.com/colymba/GridFieldBulkEditingTools/commit/f842a301cd8e6e8975103709808180832c278653) fix missing import (Thomas Portelange) - - 2024-03-04 [379fda0](https://github.com/colymba/GridFieldBulkEditingTools/commit/379fda091b63db890abeb18fb7143d67d1f9f34a) `HTTPBulkToolsResponse.addSuccessRecords() fn` (Peter Schiffer) - -- silverstripe/userforms (6.2.0 -> 6.3.0) - - 2024-10-15 [fadfec2](https://github.com/silverstripe/silverstripe-userforms/commit/fadfec264be061c96c8e97cb00d79f00dddc9083) Ensure UserFormsColumnCleanTask runs safely (#1335) (Guy Sartorelli) - - 2024-08-27 [db8adf5](https://github.com/silverstripe/silverstripe-userforms/commit/db8adf589071ccc2252dc355eca1f9126aef05a0) Duplicate userforms using cascade_duplicates config (#1320) (Guy Sartorelli) - - 2024-08-05 [c822f24](https://github.com/silverstripe/silverstripe-userforms/commit/c822f240af2c6dc8bef0bad3f020d7a444d92195) Update EditableFormHeading.php to output unique ID attributes to comply with accessibility standards (Dan) - - 2024-05-30 [cccc3f7](https://github.com/silverstripe/silverstripe-userforms/commit/cccc3f7ec3d97308541efc2549c341fa9c935c47) fix: prevent CMS requirements from leaking into preview email (Will Rossiter) - - 2024-05-30 [b429efb](https://github.com/silverstripe/silverstripe-userforms/commit/b429efb2ba277a3628d5abb669b8cbe1cb8700ab) Fix layout issues with userform in elemental context (#1294) (Mo Alsharaf) - - 2024-05-24 [24ba62a](https://github.com/silverstripe/silverstripe-userforms/commit/24ba62ab069c8fc6d5c539474302ceb900702264) Don't emit deprecation warning for calling deprecated methods (#1293) (Guy Sartorelli) - -- silverstripe/restfulserver (3.0.0 -> 3.0.2) - - 2024-10-23 [c169fad](https://github.com/silverstripe/silverstripe-restfulserver/commit/c169fade90fd33dddaee570780eb384abd563ceb) `Add protection against deprecated warning from mb_check_encoding() (#136)` (Ed Wilde) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0) - - 2024-08-16 [42fc926](https://github.com/silverstripe/silverstripe-elemental/commit/42fc92646c9b02aa00ddb4c16f52454c995c64e8) Don't update sort order in live until a block has been published (#1234) (Guy Sartorelli) - - 2024-06-20 [3ce68e5](https://github.com/silverstripe/silverstripe-elemental/commit/3ce68e51c3ac6309196b6ee27610f13f38fd84d9) Restore correct margin for elemental history (#1213) (Guy Sartorelli) - - 2024-05-07 [e2f742b](https://github.com/silverstripe/silverstripe-elemental/commit/e2f742b7ee4706196d119d1904798ee8ac0c051c) Improve non-inline validation (Steve Boyd) - -- silverstripe/auditor (3.1.0 -> 3.2.0) - - 2024-04-24 [7a1b7b1](https://github.com/silverstripe/silverstripe-auditor/commit/7a1b7b1c9b59bcf6b2f42884029acaf1d800408e) Use correct namespace for session manager controller (Steve Boyd) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0) - - 2024-04-11 [cdfaf149](https://github.com/silverstripe/developer-docs/commit/cdfaf14960a279ccca687353c98f21af068d1009) Fix FieldName typo (Corey Sewell) - -- silverstripe/subsites (3.2.0 -> 3.3.0) - - 2024-08-13 [6536e8f](https://github.com/silverstripe/silverstripe-subsites/commit/6536e8f524771190c0170b583bacd1602b5b3191) Correct trailing slash for subsite in another domain (#590) (Guy Sartorelli) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0) - - 2019-03-19 [126a7df](https://github.com/silverstripe/silverstripe-lumberjack/commit/126a7dfea69bbbe02874c477dcbeb46b6cb3295b) Ensure correct link is used when gridfield is readonly (Aljoša Balažic) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0) - - 2024-06-21 [c8cbc47](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c8cbc470e84e059c67bfef1407eed0c30b2ceb81) Prevent popping open cms-menu when using nested gridfield (Steve Boyd) - - 2024-05-21 [945ea7f](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/945ea7fc0b7396e9c351577ebc83f8280f85fa11) Make child responsible for its own nested gridfield (Guy Sartorelli) - - 2020-06-01 [80a4d9c](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/80a4d9c3119eaeacc663c2b797f5efe04167c29b) Fixed move to prev/next page functionality (fixes #307) (Loz Calver) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2024-08-19 [4448bef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4448bef7b8d9a3addd34a919c7af358e14e83c48) Remove header filter from localisation grid field (Mohamed Alsharaf) - - 2024-08-13 [8f7d803](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8f7d8032690da59e9c8aca9ff8ad4140da2a97c0) Correct trailing slash for locale in another domain (#872) (Guy Sartorelli) - - 2024-06-10 [713786b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/713786bdb89b973926c273c7a2e68bb346d02c7e) Preview link when no locale set (Steve Boyd) - - 2024-06-06 [2714bff](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2714bff77c5baebcabf63e5aa281be57f9b05dbf) Create a temp locale if there is not a default (Steve Boyd) - - 2024-06-06 [eaece0a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/eaece0a7e1c8e3a4492d3d290c84993b52c82b4c) Only select columns from the current database (Steve Boyd) - - 2024-03-24 [11e92f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/11e92f4ca2a8d7e8012db31b7a6b9ff2c7a12689) fix: check for request prior to access (Damian Mooyman) - - 2024-03-24 [8985d8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8985d8c8db9f69ae7d1c9e44bb3e1b122c94f074) fix: check for request prior to access (Damian Mooyman) - - 2024-03-24 [6961bc7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6961bc7b0bd54ab1fa5d60f7e3586fbbb0184f21) fix: don't invoke db for ready check outside of dev urls (Damian Mooyman) - - 2024-03-20 [05ef577](https://github.com/tractorcow-farm/silverstripe-fluent/commit/05ef5774130a5102d7e2fd089516536745850900) fix: redundant import (Damian Mooyman) - - 2024-03-20 [f79f0f9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f79f0f90174f1b1ae49bd4656dc2accd7a2add62) fix: don't invoke db for ready check outside of dev urls (Damian Mooyman) - - 2024-02-08 [14ecdb1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/14ecdb1f6b03328f76c7c8adfe2eb6e222725e56) allows i18nTextCollector to concatenate keys (David Toews) - - 2023-11-14 [f18bc71](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f18bc716ff94f1f7b55eb4bd7b5ac7d9a388fb76) fix: allow plugins (Damian Mooyman) - - 2023-05-23 [f07b036](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f07b03663d3acdbfd55bb9f8f2934ab8680757a9) Don't try to preview unlocalised objects (#781) (Guy Sartorelli) - -- silverstripe/linkfield (4.0.0 -> 4.1.0) - - 2024-09-11 [2ca8c0a](https://github.com/silverstripe/silverstripe-linkfield/commit/2ca8c0ae269deb81a8ac4a0edfe49587341547e7) Don't split ID into separate digits (#335) (Guy Sartorelli) - - 2024-08-07 [05f0bd7](https://github.com/silverstripe/silverstripe-linkfield/commit/05f0bd7dd9832c39e4011f31e3dc673c397ba647) Check canArchive() permission instead of canDelete() (Steve Boyd) - - 2024-05-23 [33621d0](https://github.com/silverstripe/silverstripe-linkfield/commit/33621d0a9104de2297fc175fd97937486590da9a) Don't pass null into ArrayList (#290) (Guy Sartorelli) - - 2024-05-02 [e5cc291](https://github.com/silverstripe/silverstripe-linkfield/commit/e5cc291aec0c4de54289ffc7c28a7d7ed663a1bd) `Handle a string "0" value` (Steve Boyd) - - 2024-03-26 [8e8a47a](https://github.com/silverstripe/silverstripe-linkfield/commit/8e8a47aeba0f2ed3331f5344c38bae2036f2ec0a) Linkfield sorting issue (Sabina Talipova) - -### Api changes {#changelog-api-changes} - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-08-20 [743fe245a](https://github.com/silverstripe/silverstripe-framework/commit/743fe245aa7a1f06a1083e511cddf77300c758bc) Deprecate DataExtension (Steve Boyd) - - 2024-07-03 [724e813b8](https://github.com/silverstripe/silverstripe-framework/commit/724e813b8fe0367601b918276fbf376855967983) Make token regeneration optional during autologin session renewal (Garion Herman) - - 2024-06-12 [049e54624](https://github.com/silverstripe/silverstripe-framework/commit/049e546247ac6957885f862124d23cc50daf5dc9) Deprecate references to installation tool (#11275) (Guy Sartorelli) - - 2024-05-14 [0ba85bc1d](https://github.com/silverstripe/silverstripe-framework/commit/0ba85bc1d00281c79f8623186b2e5ba6a3ec2929) Deprecate passing non-arrays to FieldList methods (Steve Boyd) - -- silverstripe/admin (2.2.0 -> 2.3.0) - - 2024-08-20 [611dc588](https://github.com/silverstripe/silverstripe-admin/commit/611dc588e0c4138ff74a07b896db54d951c03058) Deprecate LeftAndMainExtension (Steve Boyd) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0) - - 2024-08-22 [ae7c21eb](https://github.com/silverstripe/silverstripe-asset-admin/commit/ae7c21eb4c6d1da8d0b889f87437a9c2459a1747) Deprecate extension to be replaced with config (#1489) (Guy Sartorelli) - - 2024-08-18 [81b03208](https://github.com/silverstripe/silverstripe-asset-admin/commit/81b0320809f5a55a578d4c46869c490110e3e3c7) Deprecate GraphQL (Steve Boyd) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0) - - 2024-08-22 [af19bc1](https://github.com/silverstripe/silverstripe-campaign-admin/commit/af19bc100146d4776e5b3eae0a724e04ee7b3ab8) Deprecate extension to be replaced with config (#325) (Guy Sartorelli) - -- silverstripe/cms (5.2.0 -> 5.3.0) - - 2024-08-20 [5e3e8479](https://github.com/silverstripe/silverstripe-cms/commit/5e3e8479980da2bda81290783fd8c5c0a5af0727) Deprecate SiteTreeExtension (Steve Boyd) - - 2024-08-18 [391c1cea](https://github.com/silverstripe/silverstripe-cms/commit/391c1cea0ca3811ae32a05f34fe932320b790bdf) Deprecate GraphQL (Steve Boyd) - - 2024-06-12 [8fa7bffd](https://github.com/silverstripe/silverstripe-cms/commit/8fa7bffd78279c0125a3b103845987e534565885) Deprecate references to installation tool (#2962) (Guy Sartorelli) - -- silverstripe/versioned (2.2.0 -> 2.3.0) - - 2024-08-18 [812d1a1](https://github.com/silverstripe/silverstripe-versioned/commit/812d1a1a776e3866909d9a0dc00ea351c2d5e737) Deprecate GraphQL (Steve Boyd) - - 2024-08-15 [4bc9abd](https://github.com/silverstripe/silverstripe-versioned/commit/4bc9abdfa9a1b41b194b61606bbbc997b3205906) Deprecate Versioned::canArchive() (#461) (Guy Sartorelli) - -- silverstripe/session-manager (2.2.0 -> 2.3.0) - - 2024-08-19 [8c23041](https://github.com/silverstripe/silverstripe-session-manager/commit/8c23041c63cb119d9574bb82f5a12e4ee6181dbb) Use symfony for IPUtils (Steve Boyd) - -- silverstripe/blog (4.2.0 -> 4.3.0) - - 2024-08-20 [7ad58bb](https://github.com/silverstripe/silverstripe-blog/commit/7ad58bb9a0c9e3897bf3afa7abbd167f0a2f980c) Deprecate widget classes (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0) - - 2024-08-19 [13809b9](https://github.com/colymba/GridFieldBulkEditingTools/commit/13809b999ab76f7c446c9fc78bddf81c47b97c65) Added fileID and record variables to onBulkUpload hook (Benjamin Blake) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0) - - 2024-08-22 [9453721](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/94537216366201a766e6463a6b30f06121263d78) Deprecate extension to be replaced with config (#255) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0) - - 2024-08-22 [35e3eb9](https://github.com/silverstripe/silverstripe-elemental/commit/35e3eb9ce645a78a9dc93492077be62143fcc990) Deprecate extension to be replaced with config (#1243) (Guy Sartorelli) - - 2024-08-19 [c3f3660](https://github.com/silverstripe/silverstripe-elemental/commit/c3f3660b70bcaa3338ce1323f2acfb3fb6fb7170) Deprecate GraphQL (Steve Boyd) - - 2024-05-29 [35c723d](https://github.com/silverstripe/silverstripe-elemental/commit/35c723d79458a766d6153f101d4c839cb92dae26) Deprecate BaseElement::getDescription() (#1196) (Guy Sartorelli) - -- silverstripe/auditor (3.1.0 -> 3.2.0) - - 2024-04-28 [5fe202e](https://github.com/silverstripe/silverstripe-auditor/commit/5fe202ec9d20f2188213af21f12d659d9f3ad17e) Deprecate ProxyDBExtension (Steve Boyd) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2023-02-17 [43dc86d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/43dc86d3ba361cd5e55737022335e1ff04f316c3) Standardise deprecations (Guy Sartorelli) - -### Dependencies {#changelog-dependencies} - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-08-19 [16a8132be](https://github.com/silverstripe/silverstripe-framework/commit/16a8132bec7299e97581f221920dd9d966a43d7a) Use symfony for IPUtils (Steve Boyd) - -- silverstripe/admin (2.2.0 -> 2.3.0) - - 2024-09-01 [c21cf6d2](https://github.com/silverstripe/silverstripe-admin/commit/c21cf6d2a955ce8a172307e7b4fbd4e84fda8553) Update JS dependencies (#1821) (github-actions[bot]) - - 2024-07-29 [5df97257](https://github.com/silverstripe/silverstripe-admin/commit/5df9725764fa5cb094adae1e92c9881a27068a08) Conflict with incompatible version of elemental (#1800) (Guy Sartorelli) - - 2024-06-10 [df02655f](https://github.com/silverstripe/silverstripe-admin/commit/df02655fda905b483dc85cfed8b1c761b48ad8f6) Update validator js dep to fix date validation bug (#1775) (Guy Sartorelli) - - 2024-06-05 [fc76d17d](https://github.com/silverstripe/silverstripe-admin/commit/fc76d17d9c9ca425cfa1771695dcdb44c6e8a9b8) Bump ejs from 3.1.9 to 3.1.10 (#1735) (dependabot[bot]) - - 2024-04-01 [a667c2d7](https://github.com/silverstripe/silverstripe-admin/commit/a667c2d7405c26d9c6911bcd0de835976b741ea1) Update JS dependencies (#1716) (github-actions[bot]) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0) - - 2024-09-01 [18cd4095](https://github.com/silverstripe/silverstripe-asset-admin/commit/18cd409505de6480296ff03620366c952a5d1f26) Update JS dependencies (github-actions) - - 2024-06-05 [a40e4102](https://github.com/silverstripe/silverstripe-asset-admin/commit/a40e4102b1dd39d852c885af4e16f91c10a36b95) Move babel to devDependencies (Steve Boyd) - - 2024-04-02 [0abb6ac8](https://github.com/silverstripe/silverstripe-asset-admin/commit/0abb6ac8aaf7848857f4b00392588df13b12e4c0) Update JS dependencies (#1449) (github-actions[bot]) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0) - - 2024-09-01 [5855f59](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5855f59916fbc9dadb73b33229532429f68ba2ee) Update JS dependencies (github-actions) - - 2024-04-01 [70a0629](https://github.com/silverstripe/silverstripe-campaign-admin/commit/70a06291ed7b8701a1e2d1a3ec0502da5ba90185) Update JS dependencies (#298) (github-actions[bot]) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0) - - 2024-09-01 [4ecee4e](https://github.com/silverstripe/silverstripe-versioned-admin/commit/4ecee4ef6056ef6908135c65b9631e8ff0e6c526) Update JS dependencies (github-actions) - - 2024-04-02 [bd47d34](https://github.com/silverstripe/silverstripe-versioned-admin/commit/bd47d34cc99c765e4d31e08ce716cbd3e5ff565b) Update JS dependencies (#333) (github-actions[bot]) - -- silverstripe/cms (5.2.0 -> 5.3.0) - - 2024-09-01 [0b6f9c02](https://github.com/silverstripe/silverstripe-cms/commit/0b6f9c0250361307e21e839eda5e66081fcdcbcd) Update JS dependencies (github-actions) - - 2024-04-02 [6a19ed9a](https://github.com/silverstripe/silverstripe-cms/commit/6a19ed9a3572485583f5b46d841598bfa7569512) Update JS dependencies (#2928) (github-actions[bot]) - -- silverstripe/session-manager (2.2.0 -> 2.3.0) - - 2024-09-01 [b5b898e](https://github.com/silverstripe/silverstripe-session-manager/commit/b5b898ea0733751edd28f0aaaa870baeab57acd1) Update JS dependencies (github-actions) - - 2024-04-01 [17eb0bc](https://github.com/silverstripe/silverstripe-session-manager/commit/17eb0bc40233db3eb2e071b64dc917bf967430f0) Update JS dependencies (#187) (github-actions[bot]) - -- silverstripe/login-forms (5.2.0 -> 5.3.0) - - 2024-09-01 [b8af4b0](https://github.com/silverstripe/silverstripe-login-forms/commit/b8af4b06a94b616ee82fec90b055d58d39761216) Update JS dependencies (github-actions) - - 2024-04-01 [6757f0a](https://github.com/silverstripe/silverstripe-login-forms/commit/6757f0ab7ee14ee0322da91f17f18106d7764610) Update JS dependencies (#170) (github-actions[bot]) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0) - - 2024-09-01 [533e918](https://github.com/silverstripe/silverstripe-documentconverter/commit/533e91889ebb392f7006e42bdf396573470b63ad) Bump braces from 3.0.2 to 3.0.3 (dependabot[bot]) - - 2024-09-01 [ba7f07b](https://github.com/silverstripe/silverstripe-documentconverter/commit/ba7f07bebc4c9ab34f6162a3393c1d169754401f) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-08-31 [72a04e6](https://github.com/silverstripe/silverstripe-documentconverter/commit/72a04e6f9d8b4a74f696dacf5268b26b16cb88e8) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-08-02 [a1e9d62](https://github.com/silverstripe/silverstripe-documentconverter/commit/a1e9d62b6942d3237593e21eba05807da8af5ab3) Bump requirejs from 2.3.6 to 2.3.7 (dependabot[bot]) - - 2024-06-18 [52688c8](https://github.com/silverstripe/silverstripe-documentconverter/commit/52688c85621d61a94d7d7bbfdc2d580ce4eda244) Bump ws from 7.5.9 to 7.5.10 (dependabot[bot]) - - 2024-04-01 [045f6a9](https://github.com/silverstripe/silverstripe-documentconverter/commit/045f6a9632912ba19639e862ff8de16466e37868) Update JS dependencies (#74) (github-actions[bot]) - -- silverstripe/tagfield (3.2.0 -> 3.3.0) - - 2024-09-01 [6687921](https://github.com/silverstripe/silverstripe-tagfield/commit/6687921601b5c4bb157acbfbd40a6c525112f9ae) Update JS dependencies (github-actions) - - 2024-07-09 [2b29c42](https://github.com/silverstripe/silverstripe-tagfield/commit/2b29c427fc5f41e83bfd62ca08b663149cc3f6f5) Bump minimum version of framework (Steve Boyd) - - 2024-04-02 [45d5a10](https://github.com/silverstripe/silverstripe-tagfield/commit/45d5a104a2223012e9385857acfbc8f01b59ba3f) Update JS dependencies (#284) (github-actions[bot]) - -- silverstripe/blog (4.2.0 -> 4.3.0) - - 2024-09-01 [67be150](https://github.com/silverstripe/silverstripe-blog/commit/67be1508989006e4749709e23001c6aad4ef18fc) Update JS dependencies (#783) (github-actions[bot]) - - 2024-04-01 [b4605f3](https://github.com/silverstripe/silverstripe-blog/commit/b4605f3d86d0fb7efb7c348d56273c261b4d6d1d) Update JS dependencies (#751) (github-actions[bot]) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0) - - 2024-06-20 [a13e101](https://github.com/colymba/GridFieldBulkEditingTools/commit/a13e1015812d11469a505fa2f3caecfbf2bae139) Update eslint-config dependency (#292) (Guy Sartorelli) - - 2024-04-02 [3c38967](https://github.com/colymba/GridFieldBulkEditingTools/commit/3c38967ab656424480b34d626f27110139535b1f) Update JS dependencies (Steve Boyd) - - 2023-10-03 [5b21477](https://github.com/colymba/GridFieldBulkEditingTools/commit/5b214779a53df0fe9c36230490d87a91cc2cc74a) Update javascript dependencies (#254) (Guy Sartorelli) - -- silverstripe/contentreview (5.2.0 -> 5.3.0) - - 2024-09-01 [440e434](https://github.com/silverstripe/silverstripe-contentreview/commit/440e43477fe37147d0d4bbc4d4068606d2c804ae) Update JS dependencies (github-actions) - - 2024-07-09 [4ea50b3](https://github.com/silverstripe/silverstripe-contentreview/commit/4ea50b34f058f05bebbcb6e028575762ffd6cc95) Bump minimum version of framework (Steve Boyd) - - 2024-04-02 [efa4dda](https://github.com/silverstripe/silverstripe-contentreview/commit/efa4ddad616df126f84b9c386780490381a6b5ce) Update JS dependencies (#228) (github-actions[bot]) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0) - - 2024-09-01 [9bb4569](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/9bb45695f97e4055ccfd690ee645d21dac010d48) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [9fe444e](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/9fe444ee4ae6f32974a979581bf897f3df8ba675) Update JS dependencies (#229) (github-actions[bot]) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0) - - 2024-07-09 [f78f120](https://github.com/symbiote/silverstripe-advancedworkflow/commit/f78f120b5c716d1fd6f3f5b66499ee4b016f6725) Bump minimum version of framework (Steve Boyd) - - 2024-06-05 [07c3fee](https://github.com/symbiote/silverstripe-advancedworkflow/commit/07c3feeac5dd30cb5398bb142fa45dca682f713d) Bump remarkable from 1.7.1 to 1.7.4 (#534) (dependabot[bot]) - - 2024-04-02 [54bfc48](https://github.com/symbiote/silverstripe-advancedworkflow/commit/54bfc48fb8bf3b080e09915ec40e0231d9a56027) Update JS dependencies (Steve Boyd) - -- silverstripe/segment-field (3.2.0 -> 3.3.0) - - 2024-09-01 [d9ab70a](https://github.com/silverstripe/silverstripe-segment-field/commit/d9ab70adfd09b9066e34841153261333892b8e93) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [9b3845b](https://github.com/silverstripe/silverstripe-segment-field/commit/9b3845bc8b8c9a637a11796f53530e84568847ed) Update JS dependencies (#102) (github-actions[bot]) - -- silverstripe/userforms (6.2.0 -> 6.3.0) - - 2024-09-01 [11e5994](https://github.com/silverstripe/silverstripe-userforms/commit/11e59945fccf3ef4a03d1ce3b9d8f6105baa9d47) Update JS dependencies (github-actions) - - 2024-07-09 [843353f](https://github.com/silverstripe/silverstripe-userforms/commit/843353f440606ad3e84b01582c9048cff454d8de) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [4d17efd](https://github.com/silverstripe/silverstripe-userforms/commit/4d17efd6373303f2ecf6fcecdbae05a89629c560) Update JS dependencies (#1277) (github-actions[bot]) - -- silverstripe/externallinks (3.2.0 -> 3.3.0) - - 2024-09-01 [4a22b96](https://github.com/silverstripe/silverstripe-externallinks/commit/4a22b9679f99635c53b4f99e95b4738019992941) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-02 [d6d537b](https://github.com/silverstripe/silverstripe-externallinks/commit/d6d537b85d250e61bec12f419dc93e43e357d6bb) Update JS dependencies (#122) (github-actions[bot]) - -- silverstripe/sitewidecontent-report (4.2.0 -> 4.3.0) - - 2024-09-01 [479a252](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/479a2520e6bfadf5799a33fe9f149a306dd6213b) Update JS dependencies (github-actions) - - 2024-04-01 [38cb2aa](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/38cb2aa33a933658ffb8256d1dfe684a8a3618e6) Update JS dependencies (#84) (github-actions[bot]) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0) - - 2024-06-21 [eab0c25](https://github.com/bringyourownideas/silverstripe-maintenance/commit/eab0c258f0b4ed433ade85ff5062681f5f7d6820) Rebuild yarn.lock (#231) (Guy Sartorelli) - - 2024-04-02 [5f7caec](https://github.com/bringyourownideas/silverstripe-maintenance/commit/5f7caec887cbb8e03205e238e89673fe05f56aef) Update JS dependencies (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0) - - 2024-09-01 [d832181](https://github.com/silverstripe/silverstripe-elemental/commit/d832181327b9370b875b4c8ef388bd1c5119a7d4) Update JS dependencies (github-actions) - - 2024-07-23 [6306618](https://github.com/silverstripe/silverstripe-elemental/commit/63066182f45628fec2a11cc3826b9f066c4b9b96) Update minimum dependencies (#1223) (Guy Sartorelli) - - 2024-07-10 [8776381](https://github.com/silverstripe/silverstripe-elemental/commit/8776381f2c61fcf5f42b82afb3e3838aa69d6e76) Bump framework dependency (Steve Boyd) - - 2024-05-21 [d7bdd13](https://github.com/silverstripe/silverstripe-elemental/commit/d7bdd13725a511540fa1b36470ae2466e688c54b) Bump framework dependency (Steve Boyd) - - 2024-04-01 [0e7dffe](https://github.com/silverstripe/silverstripe-elemental/commit/0e7dffe43244532ea4364f0b46aa80ab46d66bde) Update JS dependencies (#1159) (github-actions[bot]) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0) - - 2024-09-01 [41bc938](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/41bc938e5fb53d650ae1899ab7aca33d9ae0b5a1) Update JS dependencies (github-actions) - - 2024-04-02 [7b705ca](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7b705ca5ca6545f625a4f6661da197ad60bfd2b3) Update JS dependencies (#140) (github-actions[bot]) - -- silverstripe/auditor (3.1.0 -> 3.2.0) - - 2024-07-09 [52f459a](https://github.com/silverstripe/silverstripe-auditor/commit/52f459ad2f8019887a2e373f39181ceb2fdb96db) Bump minimum version of framework (Steve Boyd) - - 2024-03-26 [a9627f9](https://github.com/silverstripe/silverstripe-auditor/commit/a9627f9f5cc00be36a44fd2cf8519f322d8b9ea5) Use the canonical repository for proxy-db (#72) (Michal Kleiner) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0) - - 2024-07-01 [b8dfee95](https://github.com/silverstripe/developer-docs/commit/b8dfee95473734fbc38f12447f891a95a8d3a47d) Update JS dependencies (github-actions) - - 2024-04-01 [eae39d5f](https://github.com/silverstripe/developer-docs/commit/eae39d5fa25d64674a7ac70aedc2ee4f1e1772a3) Update JS dependencies (#488) (github-actions[bot]) - -- silverstripe/totp-authenticator (5.2.0 -> 5.3.0) - - 2024-09-01 [851087b](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/851087b1c7707e3ddd206ed9078d4e06b54827b4) Update JS dependencies (github-actions) - - 2024-04-02 [252803e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/252803e5e9e8bc94376f0e256211532d271cd300) Update JS dependencies (#149) (github-actions[bot]) - -- silverstripe/mfa (5.2.0 -> 5.3.0) - - 2024-09-01 [1e93852](https://github.com/silverstripe/silverstripe-mfa/commit/1e9385296958fe07480178001a00fc842c966cd6) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-07-09 [84022f7](https://github.com/silverstripe/silverstripe-mfa/commit/84022f769be2a515cc96ba4cc7d18ce2b9242bff) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [23fc087](https://github.com/silverstripe/silverstripe-mfa/commit/23fc0877b3fe7d1e60d2f7ba1270bad0f7911398) Update JS dependencies (#532) (github-actions[bot]) - -- silverstripe/gridfieldqueuedexport (3.2.0 -> 3.3.0) - - 2024-09-01 [4f5fbd9](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/4f5fbd902ce2447abb8a353a6c9d6c97ee66ec30) Update JS dependencies (github-actions) - - 2024-04-01 [d7925bf](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/d7925bfdafefb7e8a968229da5313de819a6ef44) Update JS dependencies (#102) (github-actions[bot]) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-07-09 [267667e](https://github.com/silverstripe/silverstripe-ldap/commit/267667edb2d31d17b3fd4e0af353b5ab0c53ffac) Bump minimum version of framework (Steve Boyd) - -- silverstripe/realme (5.3.0 -> 5.4.0) - - 2024-09-01 [814b340](https://github.com/silverstripe/silverstripe-realme/commit/814b34015c977b43b183dded11922e5c422adf96) Update JS dependencies (github-actions) - - 2024-04-02 [dff66ae](https://github.com/silverstripe/silverstripe-realme/commit/dff66ae15ede91fd5e1ef7a76cf90a207564f52e) Update JS dependencies (#135) (github-actions[bot]) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0) - - 2024-09-01 [1e8dbfd](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/1e8dbfd91febc86cddbf8d049db7076427261c72) Update JS dependencies (github-actions) - - 2024-07-09 [da521b1](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/da521b1e20a526177df339a83ed513d0ff6bf94e) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [57ea49b](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/57ea49ba08005a6153c03fabd2ff634ad79eda2f) Update JS dependencies (#173) (github-actions[bot]) - -- silverstripe/subsites (3.2.0 -> 3.3.0) - - 2024-09-01 [ff50db1](https://github.com/silverstripe/silverstripe-subsites/commit/ff50db144db996bd214335c88eeab5a6b98f0d0d) Update JS dependencies (github-actions) - - 2024-07-09 [5025c32](https://github.com/silverstripe/silverstripe-subsites/commit/5025c32fc71d92942af324fd768f79eebf1dbfca) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [f337fdc](https://github.com/silverstripe/silverstripe-subsites/commit/f337fdce25012ee6ec12ae124cc2f8a9afa59979) Update JS dependencies (#565) (github-actions[bot]) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0) - - 2024-09-01 [465d794](https://github.com/silverstripe/silverstripe-lumberjack/commit/465d794e1a17cc9d1402b4b3e345e039351d8496) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [6a05f4a](https://github.com/silverstripe/silverstripe-lumberjack/commit/6a05f4a1b7eedf4a45f4f0e294f898604bcc75ce) Update JS dependencies (#142) (github-actions[bot]) - -- silverstripe/staticpublishqueue (6.2.0 -> 6.2.2) - - 2024-07-11 [f9d8410](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/f9d841074cd62566244ca9fec163d9c6a3adc6d7) Bump minimum version for framework (Steve Boyd) - - 2024-05-07 [5092eb4](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/5092eb4ee3442f8776e7c588cedb28552182dc9a) Bump minimum queuedjobs version (Steve Boyd) - -- cwp/starter-theme (4.1.0 -> 4.2.0) - - 2024-08-31 [44b9922](https://github.com/silverstripe/cwp-starter-theme/commit/44b9922c87766c8181a6f71b93d3b235e63c6d7a) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-06-18 [83bb5d3](https://github.com/silverstripe/cwp-starter-theme/commit/83bb5d3128198ce41185134f24caebd065661219) Bump ws from 8.16.0 to 8.17.1 (dependabot[bot]) - - 2024-04-02 [55d7616](https://github.com/silverstripe/cwp-starter-theme/commit/55d761682ca1175e23fa81ec12c9f6d56a9ea071) Update JS dependencies (Steve Boyd) - -- cwp/agency-extensions (3.2.0 -> 3.3.0) - - 2024-09-01 [5d5c123](https://github.com/silverstripe/cwp-agencyextensions/commit/5d5c123f14ffea52f022b2d497da44b6b969d617) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-08-31 [f1fafa8](https://github.com/silverstripe/cwp-agencyextensions/commit/f1fafa8a2cfa366902e6fc5c671b32d60198f2c5) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-08-02 [e4a0b8c](https://github.com/silverstripe/cwp-agencyextensions/commit/e4a0b8cf790b90db4ff34d69c1aa920810972fe6) Bump requirejs from 2.3.6 to 2.3.7 (dependabot[bot]) - - 2024-06-18 [0cd5225](https://github.com/silverstripe/cwp-agencyextensions/commit/0cd522568dbdd7a5eab5a58ffa63d5303c695f6a) Bump ws from 7.5.9 to 7.5.10 (dependabot[bot]) - - 2024-04-01 [9424879](https://github.com/silverstripe/cwp-agencyextensions/commit/94248792c611ace592e537871483539291851426) Update JS dependencies (#116) (github-actions[bot]) - -- cwp/watea-theme (4.1.0 -> 4.2.0) - - 2024-09-01 [8cea89c](https://github.com/silverstripe/cwp-watea-theme/commit/8cea89c0ecb54d85f02d89c6c9483dc5114befd2) Update JS dependencies (github-actions) - - 2024-04-02 [7507d01](https://github.com/silverstripe/cwp-watea-theme/commit/7507d01284a7dc55cd902053d5707ea32c78b13d) Update JS dependencies (#184) (github-actions[bot]) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2024-09-01 [1f327ef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1f327ef155696c5238cd7b6733141c80371e8c58) Update JS dependencies (github-actions) - - 2024-04-02 [aa2953b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/aa2953b7e8ff925b39adc543ef12b1f1ae8f42b1) Update JS dependencies (Steve Boyd) - - 2024-04-01 [4628a66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4628a66a5090720e6e8ad125f399f73fb3186e75) Update JS dependencies (github-actions) - -- silverstripe/linkfield (4.0.0 -> 4.1.0) - - 2024-09-01 [7d4db3c](https://github.com/silverstripe/silverstripe-linkfield/commit/7d4db3c646f6d6aa159c3c20a7b7b6a198480e55) Update JS dependencies (github-actions) - - 2024-07-30 [7543862](https://github.com/silverstripe/silverstripe-linkfield/commit/7543862a6d2438cd2b003d6854dc07d6d0f2b5d1) Remove unused apollo dependency (Steve Boyd) - - 2024-07-11 [9c87e9c](https://github.com/silverstripe/silverstripe-linkfield/commit/9c87e9c5d9ee7a67a6290cf8573ff8167202efda) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [fc56c05](https://github.com/silverstripe/silverstripe-linkfield/commit/fc56c0527fb0df1c86d7c98b866d7c83e3e0a20c) Update JS dependencies (#266) (github-actions[bot]) - -### Documentation {#changelog-documentation} - -- silverstripe/recipe-plugin (2.0.0 -> 2.0.1) - - 2023-04-19 [190bf80](https://github.com/silverstripe/recipe-plugin/commit/190bf80dbefde6d2d344c8fedcfa34fabb9eb9c7) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/taxonomy (3.2.0 -> 3.2.2) - - 2024-05-27 [5801fce](https://github.com/silverstripe/silverstripe-taxonomy/commit/5801fced5f64e6e66623a9bba575a175f73ef40d) Update doc structure for docs.silverstripe.org (#114) (Guy Sartorelli) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0) - - 2024-10-23 [fb4b33e2](https://github.com/silverstripe/developer-docs/commit/fb4b33e2b242ae3d77ca638b398e03178f26cf3e) fix a typo in SearchableMultiDropdownField (Andrew Paxley) - - 2024-08-25 [814b856b](https://github.com/silverstripe/developer-docs/commit/814b856bce638b7c919a793d487c37487e81d6fb) Deprecate DataExtension and others (Steve Boyd) - - 2024-08-20 [8f61725a](https://github.com/silverstripe/developer-docs/commit/8f61725a5781755d75f2374c1d13cee53c9f0195) Deprecate widgets code (Steve Boyd) - - 2024-08-19 [54677c32](https://github.com/silverstripe/developer-docs/commit/54677c32827fa57342637ae18d613101ae6e0f02) Deprecate IPUtils (Steve Boyd) - - 2024-08-19 [e592d10e](https://github.com/silverstripe/developer-docs/commit/e592d10e3b7ce5252b0d8910930d015f47ced665) Deprecate CMS GraphQL endpoints (Steve Boyd) - - 2024-08-16 [5b809f87](https://github.com/silverstripe/developer-docs/commit/5b809f876aabf2c91a1bed1df4cb0a7dcb08c6d6) Document change to sorting elemental blocks (#554) (Guy Sartorelli) - - 2024-08-15 [782ce192](https://github.com/silverstripe/developer-docs/commit/782ce19290909fcf7ab3a7649b92e3d5f337ae2b) Remove recommendation for GraphQL (Steve Boyd) - - 2024-08-14 [8634522e](https://github.com/silverstripe/developer-docs/commit/8634522e3bfc77ff54176ec401a08eaa952a71ec) Update docs about community peer reviewers (Guy Sartorelli) - - 2024-08-08 [f0dcf5b0](https://github.com/silverstripe/developer-docs/commit/f0dcf5b0e2232aa14ccf4a768eb70db632629815) Document changes to FormScaffolder options. (Guy Sartorelli) - - 2024-08-08 [9c5801a9](https://github.com/silverstripe/developer-docs/commit/9c5801a9491b54147c57ade46f44d330edfeaee2) Document new TabSet::changeTabOrder() method. (Guy Sartorelli) - - 2024-07-22 [64ae2316](https://github.com/silverstripe/developer-docs/commit/64ae23166c3f9ddf59431399365d77fd1db6a601) Document always inline saving elements (Steve Boyd) - - 2024-07-10 [40411277](https://github.com/silverstripe/developer-docs/commit/40411277d2400867514c37b810c51ef54d2258ac) Stop implying we don't support webp out of the box (#546) (Guy Sartorelli) - - 2024-07-08 [ac654801](https://github.com/silverstripe/developer-docs/commit/ac65480107f6664fd5cba95ac94a48aaa6e93c42) Update links to elvis (#544) (Guy Sartorelli) - - 2024-07-04 [41bbb211](https://github.com/silverstripe/developer-docs/commit/41bbb211c7f17fe297ee3ca0c6c7cc7152788589) Add autologin token regeneration changes to 5.3 changelog (Garion Herman) - - 2024-06-30 [81c3f935](https://github.com/silverstripe/developer-docs/commit/81c3f9359ac2416811f9087d30d5e11465d289e7) Explain how to customise image rendering (#529) (Maxime Rainville) - - 2024-06-27 [19a1c294](https://github.com/silverstripe/developer-docs/commit/19a1c294416f9c4ca6c649dd8745d3283d95e699) Clarify we test with the latest LTS for MariaDB and MySQL (#535) (Guy Sartorelli) - - 2024-06-26 [79b8f5ec](https://github.com/silverstripe/developer-docs/commit/79b8f5ec926540634f4fd1b2ecd5ebc89b5c3f25) Remove Guy Marriott from Core Committers page (#536) (Guy Sartorelli) - - 2024-06-18 [cf989d29](https://github.com/silverstripe/developer-docs/commit/cf989d29879433e0f49a3aece89df39d9b88c25a) Document new community contributions project on GitHub (#534) (Guy Sartorelli) - - 2024-06-17 [38d394b9](https://github.com/silverstripe/developer-docs/commit/38d394b9d2b74ecc19633e76e8c721aad17faebf) Do not use self (Steve Boyd) - - 2024-06-07 [a87b9885](https://github.com/silverstripe/developer-docs/commit/a87b9885160eec3a8721f6961c97aaaa225bff1a) Document scaffolding formfields for model relations (#527) (Guy Sartorelli) - - 2024-06-04 [6e577201](https://github.com/silverstripe/developer-docs/commit/6e577201dbb3c23d00d4ada57967e550c6212d3f) Document update to convert API (#526) (Guy Sartorelli) - - 2024-05-29 [0e3245c9](https://github.com/silverstripe/developer-docs/commit/0e3245c943fccfc4062a5cc5c90043d81da5e101) `Update cascade_deletes information for many_many relationships (#523)` (Ed Wilde) - - 2024-05-29 [2076fd8b](https://github.com/silverstripe/developer-docs/commit/2076fd8bd64c4aff2f8314b43347d5235c113e9d) Update branch protection rules (Steve Boyd) - - 2024-05-29 [50e0b9ae](https://github.com/silverstripe/developer-docs/commit/50e0b9aea7d4a2102301dcc6beadaaf579c54cc5) Document deprecation of BaseElement::getDescription() (#521) (Guy Sartorelli) - - 2024-05-17 [c441d972](https://github.com/silverstripe/developer-docs/commit/c441d9728f4dac97e8337bb0470d780dce7fc4b6) Document the current scope loop (Guy Sartorelli) - - 2024-05-16 [0ded0112](https://github.com/silverstripe/developer-docs/commit/0ded0112c7d11b65acdc56f2cba66b393e4f7462) Deprecate passing non-array $field argument (Steve Boyd) - - 2024-05-15 [400b86e9](https://github.com/silverstripe/developer-docs/commit/400b86e9dc42c02be3d370b755ce25e7f67a4f21) Update writing style guide (Steve Boyd) - - 2024-05-14 [aadcbbc2](https://github.com/silverstripe/developer-docs/commit/aadcbbc2c39738cb9cef51e3bef78342c648b98c) Convert primitves to DBField in iterables (Steve Boyd) - - 2024-05-13 [d10e7634](https://github.com/silverstripe/developer-docs/commit/d10e7634550ed4bcffd31d35a56d0c2c77352eed) Document using raw SQL to query join tables (#508) (Guy Sartorelli) - - 2024-05-13 [100dbf25](https://github.com/silverstripe/developer-docs/commit/100dbf2589d1ba7d54695d5a08960597291de2a2) Use table name, not class name. (#509) (Guy Sartorelli) - - 2024-05-09 [d88efe54](https://github.com/silverstripe/developer-docs/commit/d88efe5410304d7ecd22da14fd55d87b4dd251c3) Mention that restore batch action has been removed (Steve Boyd) - - 2024-04-30 [1d9ff216](https://github.com/silverstripe/developer-docs/commit/1d9ff21609d16bc2e804af445417c6bc19c73855) Change hint to tip (Steve Boyd) - - 2024-04-26 [faf1f2ac](https://github.com/silverstripe/developer-docs/commit/faf1f2acbaf3d378d44371ac58c91e291a0c73df) Document using pjax response from gridfield (#502) (Guy Sartorelli) - - 2024-04-18 [f27be141](https://github.com/silverstripe/developer-docs/commit/f27be141f0ebcb9add7ab6f7967711270f58e9c2) Document TinyMCE changes (#498) (Guy Sartorelli) - - 2024-04-18 [f6d9ea60](https://github.com/silverstripe/developer-docs/commit/f6d9ea60d41831e3702d20c65c2e0ff41d91718c) type/i18n label (Steve Boyd) - - 2024-04-10 [c93e8a88](https://github.com/silverstripe/developer-docs/commit/c93e8a885030c22590144b91289dd861a6e32167) Document new file conversion API (#491) (Guy Sartorelli) - - 2024-04-10 [d11fd21b](https://github.com/silverstripe/developer-docs/commit/d11fd21b8d3f4fd2abb5597bbf94c8743508cad4) GraphQL schema init task (Steve Boyd) - - 2024-04-09 [8e8903cc](https://github.com/silverstripe/developer-docs/commit/8e8903cc30c04a8a129aee4e5bf52d76b4fe2c1b) Update model validation docs (Steve Boyd) - - 2024-04-02 [8e49ea18](https://github.com/silverstripe/developer-docs/commit/8e49ea180a70ce1639cdbaafb847d3744f42c213) linkfield accesibility improvements (Steve Boyd) - - 2024-04-01 [395fa14c](https://github.com/silverstripe/developer-docs/commit/395fa14ca4aad6df599616dee566ccc4526f17b6) Document creating fixtures in custom DB tables (#484) (Guy Sartorelli) - - 2024-03-19 [bcb3bf4a](https://github.com/silverstripe/developer-docs/commit/bcb3bf4ac4bbd02b95262304fda490492a439c60) Add changelog note about SQLUpdate supporting JOIN (#481) (Guy Sartorelli) - - 2024-03-17 [3b7f9e05](https://github.com/silverstripe/developer-docs/commit/3b7f9e0533373f0530249484e605582fec9e89b9) Add elemental block validation to 5.3.0 changelog (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0) - - 2024-07-03 [ae80302](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/ae8030211ee0ce99e622ffeee23225ec029e710a) Correct spacing in YML example for nested gridfield (#408) (Maxime Rainville) - - 2024-05-27 [7f4413a](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/7f4413a12ff8ffe9006e5be69dfdc4989e4a4b73) Updated Nested GridField docs (Sabina Talipova) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2024-04-02 [07328cf](https://github.com/tractorcow-farm/silverstripe-fluent/commit/07328cf9f0dde51107916a4b4a3b5b922c4b48c5) Updated documentation for new DataObject initialisation task (Nathan J. Brauer) - -- silverstripe/linkfield (4.0.0 -> 4.1.0) - - 2024-04-10 [0d81597](https://github.com/silverstripe/silverstripe-linkfield/commit/0d8159783af6940cdd429d8858a053ae5f8024d4) Linting (Steve Boyd) - - 2024-04-03 [69c6099](https://github.com/silverstripe/silverstripe-linkfield/commit/69c6099e6ffdb70a21325a20c5d5ec2e152bd08b) Enable deprecations for linkfield v3 (Steve Boyd) - -### Translations {#changelog-translations} - -- silverstripe/assets (2.2.0 -> 2.3.0) - - 2024-08-06 [b363901](https://github.com/silverstripe/silverstripe-assets/commit/b36390172c43beb4f46d7ba45dedba21d66f4784) Update translations (#626) (Guy Sartorelli) - - 2024-05-07 [82e5f58](https://github.com/silverstripe/silverstripe-assets/commit/82e5f58f842a9632eece44217fbc4a25541b6ed5) Update translations (#601) (Guy Sartorelli) - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-08-06 [a8d0d1ef5](https://github.com/silverstripe/silverstripe-framework/commit/a8d0d1ef587023f8dd8ea7fca4c7cc2ca760ab5d) Update translations (#11323) (Guy Sartorelli) - - 2024-05-07 [241d03b35](https://github.com/silverstripe/silverstripe-framework/commit/241d03b3527d341a8454eab86860f639017ff8ea) Update translations (#11224) (Guy Sartorelli) - - 2024-05-06 [e468b719c](https://github.com/silverstripe/silverstripe-framework/commit/e468b719cfcd6ac92c5c25d1f0b6cbf25f854495) Update translations (#11221) (Guy Sartorelli) - -- silverstripe/admin (2.2.0 -> 2.3.0) - - 2024-08-06 [b3eeb088](https://github.com/silverstripe/silverstripe-admin/commit/b3eeb088a83f32564d80d3ccecdf716fba0a95f5) Update translations (#1807) (Guy Sartorelli) - - 2024-05-07 [66a937af](https://github.com/silverstripe/silverstripe-admin/commit/66a937afe0de80bc029efe4d9c02371cb81d6ecd) Update translations (#1740) (Guy Sartorelli) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0) - - 2024-08-06 [f61698d9](https://github.com/silverstripe/silverstripe-asset-admin/commit/f61698d96eabf000356da92aa0c2a43e7110b724) Update translations (#1480) (Guy Sartorelli) - - 2024-05-07 [56e98869](https://github.com/silverstripe/silverstripe-asset-admin/commit/56e98869f0c76bdffa1e4b8f63fcc88bd2ec7cf6) Update translations (#1456) (Guy Sartorelli) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0) - - 2024-08-06 [f59bcba](https://github.com/silverstripe/silverstripe-campaign-admin/commit/f59bcba1359e7fac2ac93df7cc33aa6b2f98fc74) Update translations (#319) (Guy Sartorelli) - - 2024-05-07 [611ffaf](https://github.com/silverstripe/silverstripe-campaign-admin/commit/611ffafecde24830d7182ce434944af57212e396) Update translations (#303) (Guy Sartorelli) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0) - - 2024-05-07 [17aa581](https://github.com/silverstripe/silverstripe-versioned-admin/commit/17aa581182b6d2b5f8a3ff94dafb54150392be60) Update translations (#337) (Guy Sartorelli) - -- silverstripe/cms (5.2.0 -> 5.3.0) - - 2024-08-06 [003df23c](https://github.com/silverstripe/silverstripe-cms/commit/003df23cb780550430df88b804d9cb64b8cb9912) Update translations (#2982) (Guy Sartorelli) - - 2024-05-07 [5e1706e6](https://github.com/silverstripe/silverstripe-cms/commit/5e1706e64471509ed36f1428c5f9a024ac25762b) Update translations (#2937) (Guy Sartorelli) - -- silverstripe/errorpage (2.2.0 -> 2.3.0) - - 2024-08-06 [859e696](https://github.com/silverstripe/silverstripe-errorpage/commit/859e6967a99b4e2811079786eaa214a0bc888c27) Update translations (#116) (Guy Sartorelli) - - 2024-05-07 [e22c8bc](https://github.com/silverstripe/silverstripe-errorpage/commit/e22c8bc095d591875858073c29bfb81e03902438) Update translations (#104) (Guy Sartorelli) - -- silverstripe/reports (5.2.0 -> 5.3.0) - - 2024-05-07 [3e7e8e91](https://github.com/silverstripe/silverstripe-reports/commit/3e7e8e91c1155b35028d7567060d2c157369bb2f) Update translations (#179) (Guy Sartorelli) - -- silverstripe/siteconfig (5.2.0 -> 5.3.0) - - 2024-08-06 [7d95ee06](https://github.com/silverstripe/silverstripe-siteconfig/commit/7d95ee0628f228c8552ef5a71150a17615e3fd01) Update translations (#172) (Guy Sartorelli) - - 2024-05-07 [cbf0bbc1](https://github.com/silverstripe/silverstripe-siteconfig/commit/cbf0bbc10fc1161c6e9822901f362324ec8e6d58) Update translations (#159) (Guy Sartorelli) - -- silverstripe/versioned (2.2.0 -> 2.3.0) - - 2024-08-06 [5bb8eb0](https://github.com/silverstripe/silverstripe-versioned/commit/5bb8eb0a93493016b16d623bff60909c82c2ff7e) Update translations (#459) (Guy Sartorelli) - - 2024-05-07 [22c72a4](https://github.com/silverstripe/silverstripe-versioned/commit/22c72a4bd9b8c17418b18f9dfb0cbf5c523d3cda) Update translations (#442) (Guy Sartorelli) - -- silverstripe/session-manager (2.2.0 -> 2.3.0) - - 2024-05-07 [6dc6d14](https://github.com/silverstripe/silverstripe-session-manager/commit/6dc6d1426ebee83044b3032fa97d92341c18a370) Update translations (#192) (Guy Sartorelli) - -- silverstripe/login-forms (5.2.0 -> 5.3.0) - - 2024-08-06 [9e8654f](https://github.com/silverstripe/silverstripe-login-forms/commit/9e8654f3f82d73520ce953aa8209f226b2e1a31f) Update translations (#195) (Guy Sartorelli) - - 2024-05-07 [7d5c403](https://github.com/silverstripe/silverstripe-login-forms/commit/7d5c40303bcbc88a2f06c0af7810c4fc33ff7c5c) Update translations (#174) (Guy Sartorelli) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0) - - 2024-05-07 [e33c5f1](https://github.com/silverstripe/silverstripe-documentconverter/commit/e33c5f13eb1982f2344fec03b675e78675ef2d43) Update translations (#76) (Guy Sartorelli) - -- silverstripe/iframe (3.2.0 -> 3.2.1) - - 2024-05-07 [3f8f6ca](https://github.com/silverstripe/silverstripe-iframe/commit/3f8f6caac579a7114908a2665c9b11074d8c43b5) Update translations (#83) (Guy Sartorelli) - -- silverstripe/taxonomy (3.2.0 -> 3.2.2) - - 2024-05-07 [71b0294](https://github.com/silverstripe/silverstripe-taxonomy/commit/71b02946104b0e3a8e9b2488797f3ee3ff51a9ca) Update translations (#109) (Guy Sartorelli) - -- silverstripe/blog (4.2.0 -> 4.3.0) - - 2024-08-06 [d77d90b](https://github.com/silverstripe/silverstripe-blog/commit/d77d90bf1322640a50506fc6649d3af0270ea194) Update translations (#774) (Guy Sartorelli) - - 2024-05-07 [799cc44](https://github.com/silverstripe/silverstripe-blog/commit/799cc44b462dfea91f544a7717e6976993c44b4a) Update translations (#754) (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0) - - 2024-08-05 [dd8a557](https://github.com/colymba/GridFieldBulkEditingTools/commit/dd8a557c85e9ca5f422c72f32f92d0a5687ac572) Update translations (#300) (Guy Sartorelli) - - 2024-05-07 [dfd07f7](https://github.com/colymba/GridFieldBulkEditingTools/commit/dfd07f78f66f0bc2de2fc3e8e762a488c1dad860) Update translations (#280) (Guy Sartorelli) - - 2024-02-29 [1e4b319](https://github.com/colymba/GridFieldBulkEditingTools/commit/1e4b319110ec5b6e1600f7fb39ff8dd449f7ce5c) `Allow to translate column name Select` (Peter Schiffer) - - 2023-11-07 [fab0f95](https://github.com/colymba/GridFieldBulkEditingTools/commit/fab0f953bfacf5df7cfe0b2735e975b642f535ad) Update translations (Steve Boyd) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0) - - 2024-05-07 [d5a6198](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/d5a6198d8e62b85b0b1a7966090e43e5b60be7b7) Update translations (#231) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0) - - 2024-08-06 [90314a3](https://github.com/symbiote/silverstripe-advancedworkflow/commit/90314a3d1435552e9b809f60b6564d55e5269083) Update translations (#544) (Guy Sartorelli) - - 2024-05-07 [3310709](https://github.com/symbiote/silverstripe-advancedworkflow/commit/3310709ca25c2902f937cdbf40df868f43a9d3ac) Update translations (#527) (Guy Sartorelli) - -- silverstripe/userforms (6.2.0 -> 6.3.0) - - 2024-08-06 [da53d26](https://github.com/silverstripe/silverstripe-userforms/commit/da53d26b54d1ee7852e7098686bb9d4bdd7c4a02) Update translations (#1313) (Guy Sartorelli) - - 2024-05-07 [83fafdf](https://github.com/silverstripe/silverstripe-userforms/commit/83fafdf53d214e153a1057e1feeab6eaac1cbf44) Update translations (#1284) (Guy Sartorelli) - -- silverstripe/externallinks (3.2.0 -> 3.3.0) - - 2024-08-06 [3e6198f](https://github.com/silverstripe/silverstripe-externallinks/commit/3e6198f8df418fd9bc1f815cc8036790ebc9a1fe) Update translations (#139) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0) - - 2024-08-06 [4306da1](https://github.com/bringyourownideas/silverstripe-maintenance/commit/4306da1dbb57706e6115bf2416e347355256b326) Update translations (#235) (Guy Sartorelli) - - 2024-08-05 [26303eb](https://github.com/bringyourownideas/silverstripe-maintenance/commit/26303ebdad56cb34a79cc20d4a1439fca2443963) Update translations (#233) (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (4.1.0 -> 4.1.2) - - 2024-05-07 [8f4969b](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/8f4969bdea563c1d1b3484f80c19fbd7a83087e5) Update translations (#83) (Guy Sartorelli) - -- silverstripe/versionfeed (3.2.0 -> 3.2.3) - - 2024-05-07 [fe86df7](https://github.com/silverstripe/silverstripe-versionfeed/commit/fe86df7b6f8743b8a0e10373002fe404ddcb489c) Update translations (#105) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0) - - 2024-08-06 [ddf8565](https://github.com/silverstripe/silverstripe-elemental/commit/ddf8565e40f1b2f2b371a96512052dfab795c5b8) Update translations (#1230) (Guy Sartorelli) - - 2024-05-07 [0093776](https://github.com/silverstripe/silverstripe-elemental/commit/0093776d88a082a12dd2d1743c49b1f7ffb50501) Update translations (#1185) (Guy Sartorelli) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0) - - 2024-05-07 [363f83f](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/363f83fc0da9d4f8f7f88f4f71f52d6967f29bfd) Update translations (#142) (Guy Sartorelli) - -- silverstripe/hybridsessions (3.0.3 -> 3.0.5) - - 2024-05-07 [534478e](https://github.com/silverstripe/silverstripe-hybridsessions/commit/534478ef06743b18f9f5cb6d2d8c3138bae9a0a6) Update translations (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.2.0 -> 5.3.0) - - 2024-05-07 [385e0d9](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/385e0d992552098c3f29e9db68605f10e8eda169) Update translations (#154) (Guy Sartorelli) - -- silverstripe/mfa (5.2.0 -> 5.3.0) - - 2024-08-06 [9f34765](https://github.com/silverstripe/silverstripe-mfa/commit/9f34765916679acd30827f048be461fa5b6ce197) Update translations (#557) (Guy Sartorelli) - - 2024-05-07 [384a78b](https://github.com/silverstripe/silverstripe-mfa/commit/384a78b042c5c6af1e8c0580a0ebfa85c2934eff) Update translations (#537) (Guy Sartorelli) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-05-07 [40aeb78](https://github.com/silverstripe/silverstripe-ldap/commit/40aeb78fbfe4b6f109ca3333aa9539d919833aaf) Update translations (#73) (Guy Sartorelli) - -- silverstripe/realme (5.3.0 -> 5.4.0) - - 2024-05-07 [5c09680](https://github.com/silverstripe/silverstripe-realme/commit/5c0968012d13344235860a42b0dabd8f183a0875) Update translations (#138) (Guy Sartorelli) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0) - - 2024-05-07 [bf6c6eb](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/bf6c6eb5e5c1eb0cd6fc8f7f2993d8deddbd228a) Update translations (#177) (Guy Sartorelli) - -- silverstripe/subsites (3.2.0 -> 3.3.0) - - 2024-08-06 [f78ad58](https://github.com/silverstripe/silverstripe-subsites/commit/f78ad5838d8a85aa7516d0170876b4eeab87a175) Update translations (#588) (Guy Sartorelli) - - 2024-05-07 [dbbfded](https://github.com/silverstripe/silverstripe-subsites/commit/dbbfded3e8097d4ac55202cf6a311899350b7a3c) Update translations (#568) (Guy Sartorelli) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0) - - 2024-08-06 [f6a0e10](https://github.com/silverstripe/silverstripe-lumberjack/commit/f6a0e108f924491ea6d5cce41d18d1dcaaad40ca) Update translations (#165) (Guy Sartorelli) - - 2024-05-07 [8970ea9](https://github.com/silverstripe/silverstripe-lumberjack/commit/8970ea9ac8bfcf038ab84f34d999a9d5b0e38753) Update translations (#145) (Guy Sartorelli) - -- cwp/agency-extensions (3.2.0 -> 3.3.0) - - 2024-05-07 [c4efc2f](https://github.com/silverstripe/cwp-agencyextensions/commit/c4efc2f82674a9c8da90502e9372ab6eef43b0bd) Update translations (#117) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0) - - 2024-08-06 [54b5fc1](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/54b5fc148369cfbff815d9e5d84c3df952951328) Update translations (#412) (Guy Sartorelli) - - 2024-05-07 [1bd74e0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1bd74e0070f50f5d0d14802097e7d284b895be2e) Update translations (#387) (Guy Sartorelli) - - 2024-05-06 [256d06b](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/256d06b36cd1efba3ca3cad91421d771ebb75b82) Update translations (#385) (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0) - - 2024-08-06 [9f6dea6](https://github.com/symbiote/silverstripe-queuedjobs/commit/9f6dea66ad248a35d404307cd98c144ec8c36e62) Update translations (#441) (Guy Sartorelli) - - 2024-08-05 [aed2991](https://github.com/symbiote/silverstripe-queuedjobs/commit/aed2991e17d5b96e2dfd62119f73d33b95e65d1e) Update translations (#439) (Guy Sartorelli) - - 2024-05-07 [374d41c](https://github.com/symbiote/silverstripe-queuedjobs/commit/374d41cd303b3834668ac730500799e91fb74e4d) Update translations (#424) (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2024-08-06 [41015aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/41015aac1e318378c8074ae5ec01494cb839d89f) Update translations (#870) (Guy Sartorelli) - - 2024-05-07 [5d66753](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5d667539b7a85ce38c1712e59fbf2daede6e5029) Update translations (Guy Sartorelli) - -- silverstripe/linkfield (4.0.0 -> 4.1.0) - - 2024-08-06 [77a1497](https://github.com/silverstripe/silverstripe-linkfield/commit/77a1497ec7033c5abc19ea96d460e975419e1902) Update translations (#314) (Guy Sartorelli) - - 2024-05-07 [a55f48f](https://github.com/silverstripe/silverstripe-linkfield/commit/a55f48f9616ba7c45cb979345ef609fa89deb06a) Update translations (#283) (Guy Sartorelli) - -### Other changes {#changelog-other-changes} - -- silverstripe/framework (5.2.0 -> 5.3.0) - - 2024-09-27 [55564814b](https://github.com/silverstripe/silverstripe-framework/commit/55564814b90c7ea7b99f264eeef5dae3c1f26341) Add a test. (Mojmir Fendek) - - 2024-06-22 [90eac66ea](https://github.com/silverstripe/silverstripe-framework/commit/90eac66ea83682302224a207ec96bb01385e625c) Update sake (Giancarlo Di Massa) - - 2024-05-30 [9546450cf](https://github.com/silverstripe/silverstripe-framework/commit/9546450cf242574efa8f5817a80ed040b3ade27d) improve DataList and ArrayList docblock comments for PHPStorm (#11263) (Mason Dechaineux) - - 2024-03-19 [25f61141c](https://github.com/silverstripe/silverstripe-framework/commit/25f61141cb1d907ee6f318c3ee454da809dd9423) Enhancements required for linkfield migration (#11171) (Guy Sartorelli) - - 2024-01-30 [90a3d60b5](https://github.com/silverstripe/silverstripe-framework/commit/90a3d60b59758de66056df4ec5630e02aa28bf62) Update DropdownField.php (Antony Thorpe) - -- silverstripe/admin (2.2.0 -> 2.3.0) - - 2024-10-02 [188e45e0](https://github.com/silverstripe/silverstripe-admin/commit/188e45e023507df03389c21124c49aedd2c5ff4d) add comment (Thomas Portelange) - - 2024-09-26 [0bdc20ff](https://github.com/silverstripe/silverstripe-admin/commit/0bdc20ffc6e2774036af337ab54d821aa2c70699) Update code/ModelAdmin.php (Thomas Portelange) - - 2024-09-25 [8137907f](https://github.com/silverstripe/silverstripe-admin/commit/8137907f064057bba0795c7e16036afb71e5dee3) use default tab if redirected (Thomas Portelange) - - 2024-09-25 [d89ccebd](https://github.com/silverstripe/silverstripe-admin/commit/d89ccebde1be82a173a1aa253bce7a4be08f5d7d) Keep default tab (Thomas Portelange) - - 2024-03-08 [cdcf2506](https://github.com/silverstripe/silverstripe-admin/commit/cdcf25063b68220bb62b92ade99d61a92c49c11d) Abstract out GridField 'open link in new tab' logic (Loz Calver) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0) - - 2024-09-30 [1cf3602](https://github.com/colymba/GridFieldBulkEditingTools/commit/1cf36022b129c3d7cb958880317191e893e4171c) update icons (Thomas Portelange) - - 2024-09-30 [d2ae01e](https://github.com/colymba/GridFieldBulkEditingTools/commit/d2ae01ef24cb2a4f534417e53c77481710f40607) update syntax (Thomas Portelange) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0) - - 2024-05-15 [a42cd43](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/a42cd4378042a0b8ea416a079f20b3f57470e15b) Only allow one GridFieldNestedForm component per GridField. (Niklas Forsdahl) - - 2024-05-15 [c476ced](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c476cedff0b5e721285c3784a0714a1f913b53c9) Added more documentation for nested gridfields. (Niklas Forsdahl) - - 2024-05-07 [a9b0a70](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/a9b0a70155eb46fd659893fa6f42cdf28aad5bf7) Throw 404 error on grid field nested form move-to-parent action, (Niklas Forsdahl) - - 2024-05-07 [8f50565](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/8f505659f06e65bf6881d050c6cdb022f5f539b6) Only add nested form to nested gridfield child if that child is of (Niklas Forsdahl) - - 2024-05-07 [9ab3ed6](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/9ab3ed67a75c0060e9303abd9822a9751bf6afe4) Throw an exception in Nesed Gridfield if an invalid relation is configured. (Niklas Forsdahl) - - 2024-05-07 [1993acb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1993acba3a1bf94e4e4440362620fb16e6e172f5) Linting and typehinting fixes for nested grid field (Niklas Forsdahl) - - 2024-04-24 [1ad6acb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1ad6acbb84f235e29fc364e28fe2ee332a590eb9) Refactored grid field nested form link to be a button with aria-attributes, (Niklas Forsdahl) - - 2024-04-24 [46e5ccc](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/46e5cccdb47be6d4a9e8fa85585768dfab066184) Changed some PHPDoc return types to real typehings in nested gridfield. (Niklas Forsdahl) - - 2024-04-24 [bc1180b](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/bc1180b62cd32284c25db9061656615acf0c6367) Throw exception in nested gridfields if the relation is invalid. (Niklas Forsdahl) - - 2024-04-24 [5e60972](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/5e6097214e1140d9899af0ae1247363a4171e39a) Added phpdoc for nested grid field item request handler class. (Niklas Forsdahl) - - 2024-04-24 [70b838e](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/70b838ea8c4ffb54528b3342397b003331445fe0) Removed legacy disabling of security token and strict form method check (Niklas Forsdahl) - - 2024-04-24 [c517c69](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c517c693f9b4ed1a98df27ace83ed53eb34d8c51) Don't assume records are DataObjects in nested gridfields. (Niklas Forsdahl) - - 2024-04-24 [f7b8aea](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/f7b8aea3f8dc3de09b282fb6927dcdb45209a508) PHPDoc additions and linting fixes for gridfield nested form (Niklas Forsdahl) - - 2024-04-24 [847ce07](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/847ce07ab0273732ca8cfa50aede8ad8213c1ee5) Fixes and some refactoring for max nesting level handling in (Niklas Forsdahl) - - 2024-04-23 [cfcf8d2](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/cfcf8d2e8e9ec2b669fabff2eb3d3119b4237a9d) Refactored nested GridField move to parent functionality. (Niklas Forsdahl) - - 2024-04-23 [32d980e](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/32d980e13c35128703b1a70c86d5a635a5aa30e3) Fixed moving nested gridfield items to other gridfields (Niklas Forsdahl) - - 2024-04-18 [fc40420](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/fc40420daaa460ce3dc27a819c0085d5c7859430) Added configurable max nesting level for nested GridFields (Niklas Forsdahl) - - 2024-04-18 [4fc20fb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/4fc20fb771fc9914fc91d10786887df7ef089e94) Added one more unit test for GridFieldNestedForm (Niklas Forsdahl) - - 2024-04-18 [f8c777d](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/f8c777dcc5d93e4b44ae249476dd92dea6b923e7) Changed naming schema for nested GridFields, to not include [ or ] (Niklas Forsdahl) - - 2024-04-18 [c415d43](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c415d43731a8ef3d5e58106b88bfe13a323a9795) Fixed linting issues (Niklas Forsdahl) - - 2024-04-18 [c043220](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c043220949b2fc8bb97eb8189843e6515b344f8a) Changed base-class of GridFieldNestedForm, it doesn't share much with (Niklas Forsdahl) - - 2024-04-18 [654b729](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/654b7294fa565f983ebd12198bb8e9b2999bd30a) Renamed GridFieldNestedForm_ItemRequest, to conform with coding styles. (Niklas Forsdahl) - - 2024-04-15 [bcc4ea1](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/bcc4ea14bbf49088d708987451fa9800bc2eb3bf) Added initial user documentation for Nested GridFields. (Niklas Forsdahl) - - 2024-04-15 [19a7cff](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/19a7cffa88f31e1877d240ecb6e1634dc31cdeff) Added initial unit test for GridFieldNestedForm (Niklas Forsdahl) - - 2024-04-15 [27dc636](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/27dc6360ae2bd1eeb6ca3ed89ce538dfb22eaf18) Styling for nested GridFields without title. (Niklas Forsdahl) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0) - - 2024-04-24 [d90ebc1](https://github.com/symbiote/silverstripe-queuedjobs/commit/d90ebc1a06e46006113ee92d566a5f91e3202a3e) Replace assignment with intended comparison (Fred Condo) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0) - - 2024-06-06 [b14687a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b14687a9d09eb8ad8ef54c722e87895e4d256939) . (Steve Boyd) - - 2024-04-08 [07f2821](https://github.com/tractorcow-farm/silverstripe-fluent/commit/07f282123297068d40e7ce764a280e295a6f76a1) PR feedback. (Mojmir Fendek) - - 2024-02-09 [2a8e81e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a8e81ef37f33d3e04c5fa35ac0020ecdfbb6a62) Adds full namespace to string literal (David Toews) - - 2023-11-14 [9ab08d1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9ab08d10516aa0d5350ff9727992ddccd8d90922) `copy Bugfix from here https://github.com/tractorcow-farm/silverstripe-fluent/pull/793 to Version 6.0` (“mlindenhofer”) - - 2023-09-01 [904e3f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/904e3f450d4b21e5a8b9bf5ce652290556027985) chore: fix linting (Damian Mooyman) - - 2023-08-31 [9d04d7a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9d04d7a2fbbb087d1f36fe955d15abf062fe9b42) feat: add absolute base url for locale (Damian Mooyman) - - 2023-06-16 [43b4214](https://github.com/tractorcow-farm/silverstripe-fluent/commit/43b4214b1c1b16faf4c5d1a89155af27649654e3) Add onAfterDuplicate to FluentVersionedExtension (Remy Vaartjes) - - 2023-06-16 [336dca2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/336dca26d2cf0bb040cc028b005ba0c369fc21ce) Implement onAfterDuplicate (Remy Vaartjes) - - 2023-05-31 [034dd15](https://github.com/tractorcow-farm/silverstripe-fluent/commit/034dd15197ada07594436d4d337246eeda734a36) Update FluentExtension.php (mikey-harveycameron) - - diff --git a/en/08_Changelogs/5.4.0.md b/en/08_Changelogs/5.4.0.md deleted file mode 100644 index 6bb43bf6e..000000000 --- a/en/08_Changelogs/5.4.0.md +++ /dev/null @@ -1,213 +0,0 @@ ---- -title: 5.4.0 (unreleased) ---- - -# 5.4.0 (unreleased) - -## Overview - -- [Features and enhancements](#features-and-enhancements) - - [Option to change `ClassName` column from enum to varchar](#classname-varchar) - - [Reports quality of life updates](#reports-quality-of-life-updates) - - [New `class_description` configuration on `DataObject`](#class-description) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -## Features and enhancements - -### Option to change `ClassName` column from enum to varchar {#classname-varchar} - -On websites with very large database tables it can take a long time to run `dev/build`, which can be a problem when deploying changes to production. This is because the `ClassName` column is an `enum` type which requires an a `ALTER TABLE` query to be run affecting every row whenever there is a new valid value for the column. For a very rough benchmark, running an `ALTER TABLE` query on a database table of 10 million records took 28.52 seconds on a mid-range 2023 laptop, though this time will vary depending on the database and hardware being used. - -This release introduces a new configuration option to change the `ClassName` column to a `varchar` type which removes the need to run `ALTER TABLE` whenever there is a new valid value. - -Enabling this will result in a trade-off where the size of the database will increase by approximately 7 MB per 100,000 rows. There will also be a very slow initial `dev/build` as all of the `ClassName` columns are switched to `varchar`. To enable this, add the following configuration: - -```yml -SilverStripe\ORM\DataObject: - fixed_fields: - ClassName: DBClassNameVarchar - -SilverStripe\ORM\FieldType\DBPolymorphicForeignKey: - composite_db: - Class: "DBClassNameVarchar('SilverStripe\\ORM\\DataObject', ['index' => false])" -``` - -### Reports quality of life updates - -Numerous slight adjustments have been made to the [`ReportAdmin`](api:SilverStripe\Reports\ReportAdmin) class for a better experience. - -The changes include: - -- Search capability added (making use of [`PartialMatchFilter`](api:SilverStripe\ORM\Filters\PartialMatchFilter)) -- Sorting by columns now posssible -- Default Sort is now `Title ASC` -- Reports list is now paginated -- [`Description`](api:SilverStripe\Reports\Report::description()) is now displayed in the list as a column - -### New `class_description` configuration on `DataObject` {#class-description} - -[`SiteTree`](api:SilverStripe\CMS\Model\SiteTree) and [`BaseElement`](api:DNADesign\Elemental\Models\BaseElement) both seperately implemented a `description` configuration property which was used to describe the purpose of a given subclass. For `SiteTree` this is used when creating a new page in the CMS. For `BaseElement` this is used in the elemental blocks report. In both cases the purpose is the same - it provides additional context about the intended use case for a given subclass. - -We've now implemented this concept in `DataObject` directly with the new [`DataObject.class_description`](api:SilverStripe\ORM\DataObject->class_description) configuration property. It is now considered best practice to add a description of `DataObject` subclasses using this configuration. You can use the new [`DataObject::classDescription()`](api:SilverStripe\ORM\DataObject::classDescription()) and [`DataObject::i18n_classDescription()`](api:SilverStripe\ORM\DataObject::i18n_classDescription()) methods if you need a description of any `DataObject` class. Those methods already existed on `SiteTree` but have been moved up the hierarchy so they can be called on any `DataObject` class. - -For now this is only used in the same places that used to use the deprecated configuration, but future minor releases are likely to broaden the scope of its usage. - -As a part of this change, the [`SiteTree.description`](api:SilverStripe\CMS\Model\SiteTree->description) and [`BaseElement.description`](api:DNADesign\Elemental\Models\BaseElement->description) configuration properties are now deprecated. Use `class_description` instead. - -The `SilverStripe\CMS\Model\SiteTree.DESCRIPTION` localisation key (along with the `.DESCRIPTION` suffix for any `SiteTree` subclass) will stop being used in a future major release. Use `SilverStripe\CMS\Model\SiteTree.CLASS_DESCRIPTION` instead. - -### Other new features - -- A new [`BaseKernel::getBooted()`](api:SilverStripe\Core\BaseKernel::getBooted()) method has been added for checking whether the kernel has been booted yet or not. -- A new [`CoreKernel::setBootDatabase()`](api:SilverStripe\Core\CoreKernel::setBootDatabase()) method has been added to replace the now deprecated [`DatabaselessKernel`](api:SilverStripe\Core\DatabaselessKernel) class. -- Two new methods have been added to [`ArrayLib`](api:SilverStripe\ORM\ArrayLib): - - [`ArrayLib::insertBefore()`](api:SilverStripe\ORM\ArrayLib::insertBefore()) for inserting a value before another value in an array - - [`ArrayLib::insertAfter()`](api:SilverStripe\ORM\ArrayLib::insertAfter()) for inserting a value after another value in an array -- A new [`DBDatetime::getTimeBetween()`](api:SilverStripe\ORM\FieldType\DBDatetime::getTimeBetween()) method has been added. This method returns the amount of time that has passed between two `DBDateTime` objects as a human-readable string. -- A new [`AbstractQueuedJob::getQueue()`](api:Symbiote\QueuedJobs\Services\AbstractQueuedJob::getQueue()) static method has been added to get the correct queue constant from a given string or int. -- New [`GridFieldFilterHeader::setPlaceHolderText()`](api:SilverStripe\Forms\GridField::GridFieldFilterHeader::setPlaceHolderText()) and [`GridFieldFilterHeader::getPlaceHolderText()`](api:SilverStripe\Forms\GridField::GridFieldFilterHeader::getPlaceHolderText()) methods have been added which provide a way to override the `GridFieldFilterHeader` search field placeholder text if the dynamically generated text doesn't suit your use case. - -## API changes - -- The class names for the `TopPage` feature in [`dnadesign/silverstripe-elemental`](https://github.com/silverstripe/silverstripe-elemental) do not follow the correct naming convention for Silverstripe CMS. The existing classes have been deprecated and will be renamed to match the correct naming convention in a future major release. -- [`SilverStripe\ORM\ArrayLib`](api:SilverStripe\ORM\ArrayLib) has been deprecated. It will be renamed to `SilverStripe\Core\ArrayLib` -- [`SilverStripe\ORM\ArrayList`](api:SilverStripe\ORM\ArrayList) has been deprecated. It will be renamed to `SilverStripe\Model\List\ArrayList` -- [`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable) has been deprecated. It will be merged into [`SS_List`](api:SilverStripe\Model\List\SS_List). -- [`SilverStripe\ORM\GroupedList`](api:SilverStripe\ORM\GroupedList) has been deprecated. It will be renamed to `SilverStripe\Model\List\GroupedList` -- [`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) has been deprecated. It will be merged into [`SS_List`](api:SilverStripe\Model\List\SS_List). -- [`SilverStripe\ORM\ListDecorator`](api:SilverStripe\ORM\ListDecorator) has been deprecated. It will be renamed to `SilverStripe\Model\List\ListDecorator` -- [`SilverStripe\ORM\Map`](api:SilverStripe\ORM\Map) has been deprecated. It will be renamed to `SilverStripe\Model\List\Map` -- [`SilverStripe\ORM\PaginatedList`](api:SilverStripe\ORM\PaginatedList) has been deprecated. It will be renamed to `SilverStripe\Model\List\PaginatedList` -- [`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable) has been deprecated. It will be merged into [`SS_List`](api:SilverStripe\Model\List\SS_List). -- [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List) has been deprecated. It will be renamed to `SilverStripe\Model\List\SS_List` -- [`SilverStripe\ORM\ValidationException`](api:SilverStripe\ORM\ValidationException) has been deprecated. It will be renamed to `SilverStripe\Core\Validation\ValidationException` -- [`SilverStripe\ORM\ValidationResult`](api:SilverStripe\ORM\ValidationResult) has been deprecated. It will be renamed to `SilverStripe\Core\Validation\ValidationResult` -- [`SilverStripe\View\ArrayData`](api:SilverStripe\View\ArrayData) has been deprecated. It will be renamed to `SilverStripe\Model\ArrayData` -- [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData) has been deprecated. It will be renamed to `SilverStripe\Model\ModelData` -- [`SilverStripe\View\ViewableData_Customised`](api:SilverStripe\View\ViewableData_Customised) has been deprecated. It will be renamed to `SilverStripe\Model\ModelDataCustomised` -- [`SilverStripe\View\ViewableData_Debugger`](api:SilverStripe\View\ViewableData_Debugger) has been deprecated. It will be renamed to `SilverStripe\Model\ModelDataDebugger` -- [`CliBypass`](api:SilverStripe\Control\Middleware\ConfirmationMiddleware\CliBypass) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CliController`](api:SilverStripe\Control\CliController) has been deprecated. It will be replaced with `symfony/console` commands. -- [`DatabaselessKernel`](api:SilverStripe\Core\DatabaselessKernel) has been deprecated. Use [`CoreKernel::setBootDatabase()`](api:SilverStripe\Core\CoreKernel::setBootDatabase()) instead. -- [`BuildTask.segment`](api:SilverStripe\Dev\BuildTask->segment) has been deprecated. It will be replaced with a new `$commandName` property. -- [`BuildTask->description`](api:SilverStripe\Dev\BuildTask->description) has been deprecated. It will be replaced with a new static property with the same name. -- [`BuildTask::getDescription()`](api:SilverStripe\Dev\BuildTask::getDescription()) has been deprecated. It will be replaced with a new static method with the same name. -- [`DevBuildController`](api:SilverStripe\Dev\DevBuildController) has been deprecated. It will be replaced with a new `SilverStripe\Dev\Command\DbBuild` class. -- [`DevConfigController`](api:SilverStripe\Dev\DevConfigController) has been deprecated. It will be replaced with a new `SilverStripe\Dev\Command\ConfigDump` class. -- [`DatabaseAdmin`](api:SilverStripe\ORM\DatabaseAdmin) has been deprecated. It will be replaced with a new `SilverStripe\Dev\Command\DbBuild` class. -- [`DevelopmentAdmin::buildDefaults()`](api:SilverStripe\Dev\DevelopmentAdmin::buildDefaults()) has been deprecated. It will be replaced with a new `SilverStripe\Dev\Command\DbDefaults` class. -- [`DevelopmentAdmin::generatesecuretoken()`](api:SilverStripe\Dev\DevelopmentAdmin::generatesecuretoken()) has been deprecated. It will be replaced with a new `SilverStripe\Dev\Command\GenerateSecureToken` class. -- [`DevelopmentAdmin::getRegisteredController()`](api:SilverStripe\Dev\DevelopmentAdmin::getRegisteredController()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`DevelopmentAdmin.registered_controllers`](api:SilverStripe\Dev\DevelopmentAdmin->registered_controllers) has been deprecated. It will be replaced with new `controllers` and `commands` configuration properties. -- [`CleanupTestDatabasesTask::canView()`](api:SilverStripe\Dev\Tasks\CleanupTestDatabasesTask::canView()) has been deprecated. It will be replaced with a new `canRunInBrowser()` method. -- [`HTTPOutputHandler`](api:SilverStripe\Logging\HTTPOutputHandler) has been deprecated. It will be renamed to `SilverStripe\Logging\ErrorOutputHandler` -- [`Build`](api:SilverStripe\GraphQL\Dev\Build) has been deprecated. It will be replaced with a new `SilverStripe\GraphQL\Dev\SchemaBuild` class. -- [`DevelopmentAdmin`](api:SilverStripe\GraphQL\Dev\DevelopmentAdmin) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`DevBuildExtension`](api:SilverStripe\GraphQL\Extensions\DevBuildExtension) has been deprecated. It will be renamed to `SilverStripe\GraphQL\Extensions\DbBuildExtension` -- [`LDAPGroupSyncTask::log()`](api:SilverStripe\LDAP\Tasks\LDAPGroupSyncTask::log()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`LDAPMemberSyncTask::log()`](api:SilverStripe\LDAP\Tasks\LDAPMemberSyncTask::log()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`LDAPMigrateExistingMembersTask::log()`](api:SilverStripe\LDAP\Tasks\LDAPMigrateExistingMembersTask::log()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SubsiteCopyPagesTask::log()`](api:SilverStripe\Subsites\Tasks\SubsiteCopyPagesTask::log()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CheckExternalLinksTask::log()`](api:SilverStripe\ExternalLinks\Tasks\CheckExternalLinksTask::log()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CheckExternalLinksTask::setSilent()`](api:SilverStripe\ExternalLinks\Tasks\CheckExternalLinksTask::setSilent()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CheckExternalLinksTask->silent`](api:SilverStripe\ExternalLinks\Tasks\CheckExternalLinksTask->silent) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`RealMeSetupTask::message()`](api:SilverStripe\RealMe\Task\RealMeSetupTask::message()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`StaticCacheFullBuildTask::log()`](api:SilverStripe\StaticPublishQueue\Task\StaticCacheFullBuildTask::log()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ContentReviewOwnerMigrationTask`](api:SilverStripe\ContentReview\Tasks\ContentReviewOwnerMigrationTask) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CronTaskController`](api:SilverStripe\CronTask\Controllers\CronTaskController) has been deprecated. It will be replaced with a new `SilverStripe\CronTask\Cli\CronTaskCommand` class. -- [`Clear`](api:SilverStripe\GraphQLDevTools\Clear) has been deprecated. It will be replaced with a new `SilverStripe\GraphQLDevTools\SchemaClear` class. -- [`ConvertTranslatableTask`](api:TractorCow\Fluent\Task\ConvertTranslatableTask) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`Exception`](api:TractorCow\Fluent\Task\ConvertTranslatableTask\Exception) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`UpdatePackageInfoTask->supportedAddonsLoader`](api:BringYourOwnIdeas\Maintenance\Tasks\UpdatePackageInfoTask->supportedAddonsLoader) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`UpdatePackageInfoTask::getSupportedAddonsLoader()`](api:BringYourOwnIdeas\Maintenance\Tasks\UpdatePackageInfoTask::getSupportedAddonsLoader()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`UpdatePackageInfoTask::setSupportedAddonsLoader()`](api:BringYourOwnIdeas\Maintenance\Tasks\UpdatePackageInfoTask::setSupportedAddonsLoader()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ProcessJobQueueChildTask`](api:Symbiote\QueuedJobs\Tasks\ProcessJobQueueChildTask) has been deprecated. It will be replaced with a new `Symbiote\QueuedJobs\Cli\ProcessJobQueueChildCommand` class. -- [`ProcessJobQueueTask::getQueue()`](api:Symbiote\QueuedJobs\Tasks\ProcessJobQueueTask::getQueue()) has been deprecated. Use [`AbstractQueuedJob::getQueue()`](api:Symbiote\QueuedJobs\Services\AbstractQueuedJob::getQueue()) instead. -- [`HTTPOutputHandler::isCli()`](api:SilverStripe\Logging\HTTPOutputHandler::isCli()) has been deprecated. Use [`Director::is_cli()`](api:SilverStripe\Control\Director::is_cli()) instead instead. -- [`PasswordValidator`](api:SilverStripe\Security\PasswordValidator) has been deprecated. It will be renamed to `SilverStripe\Security\Validation\RulesPasswordValidator`. -- [`ContentReviewEmails::isValidEmail()`](api:SilverStripe\ContentReview\Tasks\ContentReviewEmails::isValidEmail()) has been deprecated. Use [`Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) instead. -- The [`DBField.defaultVal`](api:SilverStripe\ORM\FieldType\DBField->defaultVal) property has been deprecated. Use [`DBField::getDefaultValue()`](api:SilverStripe\ORM\FieldType\DBField::getDefaultValue()) and [`DBField::setDefaultValue()`](api:SilverStripe\ORM\FieldType\DBField::setDefaultValue()) instead. -- [`DBFile::validate()`](api:SilverStripe\Assets\Storage\DBFile::validate()) has been deprecated. Use [`DBFile::validateFilename()`](api:SilverStripe\Assets\Storage\DBFile::validateFilename()) instead. -- [`ContentController::Menu()`](api:SilverStripe\CMS\Controllers\ContentController::Menu()) has been deprecated. Use [`ContentController::getMenu()`](api:SilverStripe\CMS\Controllers\ContentController::getMenu()) instead if calling the method in PHP. You can continue to use `$Menu` in templates, including passing arguments to it. -- [`GridFieldDataColumns::getValueFromRelation()`](api:SilverStripe\Forms\GridField\GridFieldDataColumns::getValueFromRelation()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ViewableData::castingClass()`](api:SilverStripe\View\ViewableData::castingClass()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ViewableData::escapeTypeForField()`](api:SilverStripe\View\ViewableData::escapeTypeForField()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ViewableData::objCacheName()`](api:SilverStripe\View\ViewableData::objCacheName()) has been deprecated. It will be made private. The corresponding [`ViewableData::objCacheSet()`](api:SilverStripe\View\ViewableData::objCacheSet()) and [`ViewableData::objCacheGet()`](api:SilverStripe\View\ViewableData::objCacheGet()) methods will change method signature to not require passing in the cache key. -- The `$cacheName` parameter for the [`ViewableData::obj()`](api:SilverStripe\View\ViewableData::obj()) method has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ViewableData::cachedCall()`](api:SilverStripe\View\ViewableData::cachedCall()) has been deprecated. Use [`ViewableData::obj()`](api:SilverStripe\View\ViewableData::obj()) instead. -- [`ViewableData::XML_val()`](api:SilverStripe\View\ViewableData::XML_val()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ViewableData::getXMLValues()`](api:SilverStripe\View\ViewableData::getXMLValues()) has been deprecated. It will be removed without equivalent functionality to replace it. -- The `$parser` parameter for the [`SSViewer::__construct()`](api:SilverStripe\View\SSViewer::__construct()) method has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::flush()`](api:SilverStripe\View\SSViewer::flush()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::flush()`. -- [`SSViewer::fromString()`](api:SilverStripe\View\SSViewer::fromString()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::renderString()`. -- [`SSViewer::topLevel()`](api:SilverStripe\View\SSViewer::topLevel()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::chooseTemplate()`](api:SilverStripe\View\SSViewer::chooseTemplate()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::setTemplate()`](api:SilverStripe\View\SSViewer::setTemplate()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::setTemplate()`. -- [`SSViewer::setParser()`](api:SilverStripe\View\SSViewer::setParser()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::setParser()`. -- [`SSViewer::getParser()`](api:SilverStripe\View\SSViewer::getParser()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::getParser()`. -- [`SSViewer::hasTemplate()`](api:SilverStripe\View\SSViewer::hasTemplate()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::hasTemplate()`. -- [`SSViewer::exists()`](api:SilverStripe\View\SSViewer::exists()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::getTemplateFileByType()`](api:SilverStripe\View\SSViewer::getTemplateFileByType()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::flush_template_cache()`](api:SilverStripe\View\SSViewer::flush_template_cache()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::flushTemplateCache()`. -- [`SSViewer::flush_cacheblock_cache()`](api:SilverStripe\View\SSViewer::flush_cacheblock_cache()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::flushCacheBlockCache()`. -- [`SSViewer::setPartialCacheStore()`](api:SilverStripe\View\SSViewer::setPartialCacheStore()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::setPartialCacheStore()`. -- [`SSViewer::getPartialCacheStore()`](api:SilverStripe\View\SSViewer::getPartialCacheStore()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::getPartialCacheStore()`. -- [`SSViewer::includeGeneratedTemplate()`](api:SilverStripe\View\SSViewer::includeGeneratedTemplate()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::includeGeneratedTemplate()`. -- The `$inheritedScope` parameter for the [SSViewer::process()](api:SilverStripe\View\SSViewer::process()) method has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::getSubtemplateFor()`](api:SilverStripe\View\SSViewer::getSubtemplateFor()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::getSubtemplateFor()`. -- [`SSViewer::parseTemplateContent()`](api:SilverStripe\View\SSViewer::parseTemplateContent()) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::parseTemplateContent()`. -- [`SSViewer::templates()`](api:SilverStripe\View\SSViewer::templates()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::setTemplateFile()`](api:SilverStripe\View\SSViewer::setTemplateFile()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::get_base_tag()`](api:SilverStripe\View\SSViewer::get_base_tag()) has been deprecated. Use [`SSViewer::getBaseTag()`](api:SilverStripe\View\SSViewer::getBaseTag()) instead. -- [`SSViewer_DataPresenter`](api:SilverStripe\View\SSViewer_DataPresenter) has been deprecated. It will be merged into [`SSViewer_Scope`](api:SilverStripe\TemplateEngine\ScopeManager). -- [`SSViewer_FromString`](api:SilverStripe\View\SSViewer_FromString) has been deprecated. It will be replaced with `SilverStripe\TemplateEngine\SSTemplateEngine::renderString()`. -- [`SSViewer_Scope::getItem()`](api:SilverStripe\View\SSViewer_Scope::getItem()) has been deprecated. Use [`SSViewer_Scope::getCurrentItem()`](api:SilverStripe\View\SSViewer_Scope::getCurrentItem()) instead. -- [`SSViewer_Scope::obj()`](api:SilverStripe\View\SSViewer_Scope::obj()) has been deprecated. It will be renamed to `scopeToIntermediateValue()`. -- [`SSViewer_Scope`](api:SilverStripe\View\SSViewer_Scope) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\ScopeManager`. -- [`SSViewer::execute_template()`](api:SilverStripe\View\SSViewer::execute_template()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`SSViewer::execute_string()`](api:SilverStripe\View\SSViewer::execute_string()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ThemeResourceLoader::findTemplate()`](api:SilverStripe\View\ThemeResourceLoader::findTemplate()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`FlushMiddleware`](api:SilverStripe\Control\Middleware\FlushMiddleware) has been deprecated. It will be replaced with flushing inside the Kernel directly. -- The [`LeftAndMain.tree_class`](api:SilverStripe\Admin\LeftAndMain->tree_class) configuration property has been deprecated. It will be renamed to `model_class`. -- [`SiteConfigLeftAndMain::save_siteconfig()`](api:SilverStripe\SiteConfig\SiteConfigLeftAndMain::save_siteconfig()) has been deprecated. It will be replaced with [`save()`](api:SilverStripe\Admin\LeftAndMain::save()). -- [`SSViewer_BasicIteratorSupport`](api:SilverStripe\View\SSViewer_BasicIteratorSupport) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\BasicIteratorSupport`. -- [`SSTemplateParseException`](api:SilverStripe\View\SSTemplateParseException) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\Exception\SSTemplateParseException`. -- [`SSTemplateParser`](api:SilverStripe\View\SSTemplateParser) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\SSTemplateParser`. -- [`TemplateIteratorProvider`](api:SilverStripe\View\TemplateIteratorProvider) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\TemplateIteratorProvider`. -- [`TemplateParser`](api:SilverStripe\View\TemplateParser) has been deprecated. It will be renamed to `SilverStripe\TemplateEngine\TemplateParser`. -- [`ElementalAreaController::removeNamespacesFromFields()`](api:DNADesign\Elemental\Controllers\ElementalAreaController::removeNamespacesFromFields()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`BaseElement::updateFromFormData()`](api:DNADesign\Elemental\Models\BaseElement::updateFromFormData()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`DBEnum::flushCache()`](api:SilverStripe\ORM\FieldType\DBEnum::flushCache()) has been deprecated. Use [`DBEnum::reset()`](api:SilverStripe\ORM\FieldType\DBEnum::reset()) instead. -- The [`BaseElement.description`](api:DNADesign\Elemental\Models\BaseElement->description) configuration property has been deprecated. Use [`DataObject.class_description`](api:SilverStripe\ORM\DataObject->class_description) instead. -- The [`SiteTree.description`](api:SilverStripe\CMS\Model\SiteTree->description) configuration property has been deprecated. Use [`DataObject.class_description`](api:SilverStripe\ORM\DataObject->class_description) instead. -- [`FormField::extendValidationResult()`](api:SilverStripe\Forms\FormField::extendValidationResult()) has been deprecated. Use `extend()` directly instead. -- [`SubsiteXHRController::canAccess()`](api:SilverStripe\Subsites\Controller\SubsiteXHRController::canAccess()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`LeftAndMainSubsites::ListSubsites()`](api:SilverStripe\Subsites\Extensions\LeftAndMainSubsites::ListSubsites()) has been deprecated. Use [`SubsiteSwitchList()`](api:SilverStripe\Subsites\Extensions\LeftAndMainSubsites::SubsiteSwitchList()) instead. -- [`LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) has been deprecated. It will be replaced with `SilverStripe\Admin\FormSchemaController::schema()`. -- [`LeftAndMain::Modals()`](api:SilverStripe\Admin\LeftAndMain::Modals()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ModalController::getController()`](api:SilverStripe\Admin\ModalController::getController()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ModalController::getName()`](api:SilverStripe\Admin\ModalController::getName()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CampaignAdminExtension`](api:SilverStripe\AssetAdmin\Extensions\CampaignAdminExtension) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CMSPageEditController::AddToCampaignForm()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::AddToCampaignForm()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`CMSPageEditController::getAddToCampaignForm()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::getAddToCampaignForm()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`AssetAdmin::AddToCampaignForm()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::AddToCampaignForm()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`AssetAdmin::getAddToCampaignForm()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getAddToCampaignForm()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`ModalController::EditorExternalLink()`](api:SilverStripe\Admin\ModalController::EditorExternalLink()) has been deprecated. It will be replaced with `SilverStripe\Admin\ModalController::linkModalForm()`. -- [`ModalController::EditorEmailLink()`](api:SilverStripe\Admin\ModalController::EditorEmailLink()) has been deprecated. It will be replaced with `SilverStripe\Admin\ModalController::linkModalForm()`. -- [`RemoteFileModalExtension::getRequest()`](api:SilverStripe\AssetAdmin\Extensions\RemoteFileModalExtension::getRequest()) has been deprecated. Use `RemoteFileModalExtension::getOwner()->getRequest()` instead. -- [`RemoteFileModalExtension::getFormSchema()`](api:SilverStripe\AssetAdmin\Extensions\RemoteFileModalExtension::getFormSchema()) has been deprecated. It will be removed without equivalent functionality to replace it. -- [`RemoteFileModalExtension::getSchemaResponse()`](api:SilverStripe\AssetAdmin\Extensions\RemoteFileModalExtension::getSchemaResponse()) has been deprecated. It will be replaced with `RemoteFileModalExtension::getOwner()->getSchemaResponse()`. -- [`InternalLinkModalExtension`](api:SilverStripe\CMS\Forms\InternalLinkModalExtension) has been deprecated. It will be replaced with configuration on [`ModalController`](api:SilverStripe\Admin\ModalController). -- [`FormField::validate()`](api:SilverStripe\Forms\FormField::validate()) will take zero arguments and return a ValidationResult object instead of a boolean in CMS 6.0.0. - -## Bug fixes - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - - diff --git a/en/08_Changelogs/alpha/5.0.0-alpha1.md b/en/08_Changelogs/alpha/5.0.0-alpha1.md deleted file mode 100644 index 9e611820d..000000000 --- a/en/08_Changelogs/alpha/5.0.0-alpha1.md +++ /dev/null @@ -1,580 +0,0 @@ ---- -title: 5.0.0-alpha1 ---- - -# 5.0.0-alpha1 - -## Overview - -- [API changes](#api-changes) - - [Removed API (by module, alphabetically)](#api-removed) - - [General changes](#api-general) - - [ORM](#api-orm) -- [Dependency changes](#dependency-changes) -- [Features and enhancements](#features-and-enhancements) - - [Extension changes](#extension-changes) - - [Other features](#other-features) -- [Bugfixes](#bugfixes) -- [Environment variable changes](#environment-variable-changes) -- [Change log](#change-log) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| silverstripe/admin | 2.0.0-alpha1 | -| silverstripe/asset-admin | 2.0.0-alpha1 | -| silverstripe/assets | 2.0.0-alpha1 | -| silverstripe/campaign-admin | 2.0.0-alpha1 | -| silverstripe/cms | 5.0.0-alpha1 | -| silverstripe/config | 2.0.0-alpha1 | -| silverstripe/developer-docs | 5.0.0-alpha1 | -| silverstripe/errorpage | 2.0.0-alpha1 | -| silverstripe/event-dispatcher | 1.0.0-alpha1 | -| silverstripe/framework | 5.0.0-alpha1 | -| silverstripe/graphql | 5.0.0-alpha1 | -| silverstripe/login-forms | 5.0.0-alpha1 | -| silverstripe/mimevalidator | 3.0.0-alpha1 | -| silverstripe/recipe-plugin | 2.0.0-alpha1 | -| silverstripe/reports | 5.0.0-alpha1 | -| silverstripe/session-manager | 2.0.0-alpha1 | -| silverstripe/siteconfig | 5.0.0-alpha1 | -| silverstripe/vendor-plugin | 2.0.0-alpha1 | -| silverstripe/versioned | 2.0.0-alpha1 | -| silverstripe/versioned-admin | 2.0.0-alpha1 | -
- -
-Supported module versions - -| Module | Version | -| ------ | ------- | -| dnadesign/silverstripe-elemental | 5.0.0-alpha1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.0-alpha1 | - -
- -## API changes {#api-changes} - -This is an alpha of a major release and as a result there are a number of breaking API changes. For a full list of these see [upgrading your project](/upgrading/upgrading_your_project). Some specific details about a few of them are below. - -### Removed API (by module, alphabetically) {#api-removed} - -#### `dnadesign/silverstripe-elemental` - -- Removed deprecated class `DNADesign\Elemental\Search\ElementalSolrIndex`. - -#### `silverstripe/cms` - -- Removed deprecated class `SilverStripe\CMS\Controllers\CMSPageHistoryController` and the JavaScript associated with it. - -#### `silverstripe/framework` - -- Removed deprecated constant `ManifestFileFinder::RESOURCES_DIR` -- Removed various API related to support for PHPUnit 5.7 - - Removed deprecated method `SilverStripe\Core\BaseKernel::getIgnoredCIConfigs()` - - Removed deprecated method `SilverStripe\Core\Manifest\Module::getCIConfig()` - - Removed deprecated method `SilverStripe\Dev\TestKernel::getIgnoredCIConfigs()` - - Removed deprecated method `SilverStripe\Dev\TestKernel::setIgnoredCIConfigs()` - - Removed deprecated parameter `$ignoredCIConfigs` from the following methods: - - `SilverStripe\Core\Manifest\ClassLoader::init()` - - `SilverStripe\Core\Manifest\ClassManifest::init()` - - `SilverStripe\Core\Manifest\ClassManifest::regenerate()` - - `SilverStripe\Core\Manifest\ModuleLoader::init()` - - `SilverStripe\Core\Manifest\ModuleManifest::init()` - - `SilverStripe\Core\Manifest\ModuleManifest::regenerate()` - - `SilverStripe\View\ThemeManifest::init()` - - `SilverStripe\View\ThemeManifest::regenerate()` - - Removed deprecated PHPUnit 5.7 version of the following classes (the PHPUnit 9 compatible version of these classes remain): - - `SilverStripe\Dev\Constraint\SSListContains` - - `SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems` - - `SilverStripe\Dev\Constraint\ViewableDataContains` - - `SilverStripe\Dev\FunctionalTest` - - `SilverStripe\Dev\SapphireTest` -- Removed various API in ORM related to `Iterator` - - Removed `current()`, `key()`, `next()`, `nextRecord()`, `rewind()`, `seek()`, and `valid()` from the following classes: - - `SilverStripe\ORM\Connect\MySQLQuery` - - `SilverStripe\ORM\Connect\MySQLStatement` - - `SilverStripe\ORM\Connect\PDOQuery` - - `SilverStripe\ORM\Connect\Query` - - Removed `SilverStripe\ORM\DataList::getGenerator()` (use `getIterator()` instead) - - Removed the `SilverStripe\ORM\Map_Iterator` class. `SilverStripe\ORM\Map` now uses a generator instead. -- Removed deprecated method `SilverStripe\Core\BaseKernel::sessionEnvironment()` -- Removed deprecated method `SilverStripe\Core\Extensible::constructExtensions()` - -#### `silverstripe/vendor-plugin` - -- Removed deprecated `Library::RESOURCES_DIR` - -#### `silverstripe/versioned` - -- Removed deprecated method `SilverStripe\Versioned\Versioned::doPublish()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::doRollbackTo()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::migrateVersion()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRevertToLive()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRollback()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::publish()` - -#### `silverstripe/versioned-admin` - -- Removed deprecated class `SilverStripe\VersionedAdmin\Controllers\HistoryControllerFactory` - -### General changes {#api-general} - -- `isDev` and `isTest` querystring arguments have been removed due to security concerns (see [ss-2018-005](https://www.silverstripe.org/download/security-releases/ss-2018-005/)). -- The default value for the `RESOURCES_DIR` const has been changed to to "_resources" - - The `Library::DEFAULT_RESOURCES_DIR` const in `silverstripe/vendor-plugin` has been changed to match. - - This can still be customised using `extra.resources-dir` in your composer.json file ([see relevant docs](developer_guides/templates/requirements/#configuring-your-project-exposed-folders)) - - If your composer.json file has its `extra.resources-dir` key set to `_resources`, you can remove that now. - - If your composer.json file already does not have an `extra.resources-dir` key and you want to keep your resources in the `resources` directory, you can set `extra.resources-dir` to "resources". - - If your composer.json file already does not have an `extra.resources-dir` key and you want to use the new default `_resources` directory, you may need to check that your code and templates don't assume the directory name for those resources. In your templates it is preferred to [use `$resourePath()` or `$resourceURL()`](developer_guides/templates/requirements/#direct-resource-urls) to get paths for resources. -- `SilverStripe\Dev\FunctionalTest` is now abstract. -- `SilverStripe\Dev\MigrationTask` is now abstract. -- `SilverStripe\Dev\SapphireTest` is now abstract. -- `SilverStripe\Core\Extensible::invokeWithExtensions()` and `SilverStripe\Core\Extensible::extend()` now use the splat operator instead of having a concrete number of possible arguments. -- The constructor for `SilverStripe\Versioned\Versioned` now explicitly only accepts mode as a single argument. - -### ORM {#api-orm} - -- Prior to 5.0.0, when using `SQLSelect::setFrom()` or `SQLSelect::create('*', $from)` to set table or subselect definitions, -their aliases (applied by setting a string key for the array) were being ignored. This bug has been fixed - if you were working around this by manually setting the alias e.g. in a join, you can remove those workarounds now. -- [Query](api:SilverStripe\ORM\Connect\Query) now implements `IteratorAggregate` instead of `Iterator`. This means `seek()` and other iterator methods are no longer available on this class and its subclasses. Use `getIterator()` instead. -- [DataList](api:SilverStripe\ORM\DataList), its subclasses, [Map](api:SilverStripe\ORM\Map), and [ArrayList](api:SilverStripe\ORM\ArrayList) all now return generators from `getIterator()`. This reduces memory usage when looping over large result sets. As a result of this, `getGenerator()` has been removed as it is no longer needed. Note that `chunkedFetch()` has not been removed, as it may still be useful for very large result sets to fetch results in smaller chunks at a time. - -## Dependency changes {#dependency-changes} - -- Various Symfony dependencies have been upgraded from 4.x to 6.x. A small number of code changes were made in silverstripe/framework to work with the symfony 6.x dependencies. -- silverstripe/graphql v3 is no longer supported. It is recommended that you ensure you are using graphl v4 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. There is [documentation for the upgrade process here](https://docs.silverstripe.org/en/4/upgrading/upgrading_to_graphql_4/). -- PHPUnit 5.7 is no longer supported. It is recommended that you ensure your tests are running with PHPUnit 9 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. There is [documentation for the upgrade process here](https://docs.silverstripe.org/en/4/upgrading/phpunit9/). - -## Features and enhancements {#features-and-enhancements} - -### Extension changes {#extension-changes} - -[Extension](api:SilverStripe\Core\Extension) classes don't expose `protected` methods, but they *can* be used for extension hooks. This reduces the surface of methods exposed from your extensions into `Extensible` classes. For example, you might have a `protected function updateCMSFields()` method which will be called after writing some `DataObject` - but because this method is `protected`, it *cannot* be accessed directly from the `DataObject` instances. You can however still expose some method from the `Extension` by making it `public` - and that method *can* be accessed directly from the `DataObject` instances. - -When invoking an extension hook (e.g. via `extend()`), methods prefixed with "extend" will take precendence. i.e. if an `Extension` class has a `onAfterWrite()` method and an `extendOnAfterWrite()` method and I call `$this->extend('onAfterWrite')` - the `extendOnAfterWrite()` method on that `Extension` will be called, and `onAfterWrite()` will not. -This empowers advanced `Extension` functionality such as [Versioned::canPublish()](api:SilverStripe\Versioned\Versioned::canPublish()) which invokes `$owner->extendedCan('canPublish')` but doesn't result in a cycle, because the same class also implements [extendCanPublish()](api:SilverStripe\Versioned\Versioned::extendCanPublish()). - -### Other new features {#other-features} - -- [DataObject::get_one()](api:SilverStripe\ORM\DataObject::get_one()) can now be called directly from subclasses of `DataObject` without passing in a class as the first argument (e.g. `SiteTree::get_one(filter: ['Title:startsWith' => 'About'])`). - -## Bugfixes {#bugfixes} - -- If a page which is a child of a root-level page gets archived, and then its former parent is removed, it can only be restored if `can_be_root` for that page's class is true. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -## Environment variable changes {#environment-variable-changes} - -- `SS_MANIFESTCACHE` can no longer use the now removed symfony/cache 4.x "Simple" cache classes e.g. `Symfony\Component\Cache\Simple\PhpFilesCache`. Instead use the corresponding "Adapter" class e.g. `Symfony\Component\Cache\Adapter\PhpFilesAdapter`. - - - -## Change log {#change-log} - -### Features and enhancements - -- dnadesign/silverstripe-elemental (4.9.4 -> 5.0.0-alpha1) - - 2022-08-29 [90feafd](https://github.com/dnadesign/silverstripe-elemental/commit/90feafd4bb37b4887aaa3792d52aef7cbc73f3fa) Run Behat test with less than ADMIN permissions (Sabina Talipova) - - 2022-05-25 [2ddc79c](https://github.com/dnadesign/silverstripe-elemental/commit/2ddc79ca04dbe43c96b23b9f26f8b3caa6deec1f) Get anchor links from elemental pages (Guy Sartorelli) - -- silverstripe/admin (1.11.2 -> 2.0.0-alpha1) - - 2017-05-19 [04e80f5](https://github.com/silverstripe/silverstripe-admin/commit/04e80f517015b8d040e09fb6e897dc044946029a) Remove legacy translation behaviour in template (Robbie Averill) - - 2022-08-25 [ee75581](https://github.com/silverstripe/silverstripe-admin/commit/ee75581cfec8a4a61ff30faffe0aeadbe4db7af5) Use short array syntax (Guy Sartorelli) - - 2022-08-05 [c2e8b9f](https://github.com/silverstripe/silverstripe-admin/commit/c2e8b9f8bbfc0920e1a7d773b7968497d7f30061) Behat test cases for GridField navigation (Sabina Talipova) - - 2022-08-02 [9366076](https://github.com/silverstripe/silverstripe-admin/commit/936607636d94e18f274caf75d1e19f673e262964) Make gridfield search options more accessible (#1329) (Guy Sartorelli) - - 2022-07-20 [b86259d](https://github.com/silverstripe/silverstripe-admin/commit/b86259d903494b387c0f553d4b78d0d2b9a98383) Keep State and show Search field if any keywords are presented (Sabina Talipova) - - 2022-07-28 [09a742f](https://github.com/silverstripe/silverstripe-admin/commit/09a742f1020e96c41797e7102644f339e814b346) Display error messages in admin with an admin context (#1317) (Guy Sartorelli) - -- silverstripe/asset-admin (1.11.2 -> 2.0.0-alpha1) - - 2022-09-01 [6c9f9ec](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c9f9eccde979b4aa0943c8ea99f75ef725bf461) Don't call deprecated constructExtensions method (#1290) (Guy Sartorelli) - - 2022-07-14 [2976089](https://github.com/silverstripe/silverstripe-asset-admin/commit/2976089d9b638a0d2afcca1e9c06a319228b0254) Extensibility improvement for FileFilterInputTypeCreator. (Mojmir Fendek) - -- silverstripe/cms (4.11.2 -> 5.0.0-alpha1) - - 2022-09-02 [2b8bee7](https://github.com/silverstripe/silverstripe-cms/commit/2b8bee7970d6ce5cdddd71421eeb60372503b5b1) Don't use deprecated method doRevertTo() (#2775) (Guy Sartorelli) - - 2022-08-30 [adcea21](https://github.com/silverstripe/silverstripe-cms/commit/adcea213a27b73d57c59077349f6dad714e3f724) Remove CSS for CMSPageHistoryController. (Guy Sartorelli) - - 2022-05-25 [845f0b3](https://github.com/silverstripe/silverstripe-cms/commit/845f0b3aa1d4952855a031f855562603e377f1ea) Always load anchors for links on the current page. (Guy Sartorelli) - -- silverstripe/developer-docs (4.11.0 -> 5.0.0-alpha1) - - 2022-06-09 [0142cd2](https://github.com/silverstripe/silverstripe-developer-docs/commit/0142cd29a70792d1289fb2ba43f463b7025799e8) Add factory_method configuration to Injector (Paweł Suwiński) - - 2022-05-26 [a8d5f27](https://github.com/silverstripe/silverstripe-developer-docs/commit/a8d5f27b84bad9c7e0bf34007fe7746c481eb181) Add samesite attribute to cookies. (Guy Sartorelli) - -- silverstripe/errorpage (1.11.0 -> 2.0.0-alpha1) - - 2022-07-28 [8b6caad](https://github.com/silverstripe/silverstripe-errorpage/commit/8b6caad1d64ef1f6ed91ea75c8d41a12945f5252) Let LeftAndMain handle its own errors. (#67) (Guy Sartorelli) - -- silverstripe/framework (4.11.7 -> 5.0.0-alpha1) - - 2019-06-03 [94d1ac8](https://github.com/silverstripe/silverstripe-framework/commit/94d1ac8d998395763d3903480a28e216abda1321) Various changes via static analysis tooling (Viktor Szépe) - - 2020-03-26 [a666814](https://github.com/silverstripe/silverstripe-framework/commit/a666814a80d7e97c43afe71ea36762c82dd1a62e) CSV BOM stripping is now handled internally by league/csv (Dan Hensby) - - 2017-11-06 [156f63b](https://github.com/silverstripe/silverstripe-framework/commit/156f63bce38a6b95d0f117eedbeb8819eb51d1b7) shorten auto-generated table names (Christopher Joe) - - 2022-08-05 [c0b38fc](https://github.com/silverstripe/silverstripe-framework/commit/c0b38fc4119fc61cea2799160d81bace829faf0c) Update page number in the state on reaching the first or the last element in a list (Sabina Talipova) - - 2022-08-16 [10ef46a](https://github.com/silverstripe/silverstripe-framework/commit/10ef46a5ec832133892867bedb0cf3097818dd58) Make DataObject::exists() an alias of DataObject::isInDB() (#10407) (Guy Sartorelli) - - 2021-11-09 [a2906cd](https://github.com/silverstripe/silverstripe-framework/commit/a2906cd02c01d59e021202289e9835bb3cce3331) Requirements_Backend::resolveCSSReferences(): Tests, config, doc, safety. (Sergey Shevchenko) - - 2021-11-09 [8370ffc](https://github.com/silverstripe/silverstripe-framework/commit/8370ffc2a0abb469b0e97ef1e38e81e54faf4f8b) Test for Requirements_Backend::resolveCSSReferences() (Sergey Shevchenko) - - 2021-11-01 [c5e68dd](https://github.com/silverstripe/silverstripe-framework/commit/c5e68dd2c0c3bbc9742b4411738581741c004ede) resolve relative references in CSS files when combining (Sergey Shevchenko) - - 2022-08-04 [ee4144f](https://github.com/silverstripe/silverstripe-framework/commit/ee4144fc359d3a0226c19b33420ec4a8c0269f03) Set the default resources dir to "_resources" (Guy Sartorelli) - - 2022-08-01 [1159595](https://github.com/silverstripe/silverstripe-framework/commit/11595952f48efb40a17dafc2b37a6ad7171bf8fa) Search across multiple searchable fields by default (#10382) (Guy Sartorelli) - - 2022-07-18 [7a9bc7f](https://github.com/silverstripe/silverstripe-framework/commit/7a9bc7f57772c476d4ad10b458c8267b3a48226c) Keep Request in URL (Sabina Talipova) - - 2022-07-14 [af3c50c](https://github.com/silverstripe/silverstripe-framework/commit/af3c50c9da2745ce1f332dd043dd4ce2af0fa41c) Set many_many_extraFields data via the ORM (Guy Sartorelli) - - 2019-11-27 [07a6c11](https://github.com/silverstripe/silverstripe-framework/commit/07a6c1191ac7a4092347ab700599127812082bd3) NEW: Allow search field customisation in GridFieldFilterHeader (Aaron Carlino) - - 2022-07-19 [d3f1043](https://github.com/silverstripe/silverstripe-framework/commit/d3f104382d6eaa38caca03f6df34c2022dd02e80) NEW: Add support for autoloading PHP 8.1 enums (Loz Calver) - - 2022-06-23 [74e5a94](https://github.com/silverstripe/silverstripe-framework/commit/74e5a94b32f2f48b037795374c637c572166d438) Update list of methods to have filtered args in backtrace. (Guy Sartorelli) - - 2022-06-23 [d448622](https://github.com/silverstripe/silverstripe-framework/commit/d448622ff4e47e136cbc20104a1f6a82f17e860d) Allow subclasses to be defined for backtrace filtered functions. (Guy Sartorelli) - - 2022-06-23 [2b0df58](https://github.com/silverstripe/silverstripe-framework/commit/2b0df58176d4a5a553996223f730bf30f4e996be) Minor performance enhancement for backtrace. (Guy Sartorelli) - - 2022-06-23 [268a664](https://github.com/silverstripe/silverstripe-framework/commit/268a66418bffe032788b1fe608d081644e952675) Move backtrace ignored functions into yml config. (Guy Sartorelli) - - 2022-06-23 [7f7feb8](https://github.com/silverstripe/silverstripe-framework/commit/7f7feb8604e8bbd0b94b325524b29f50cef99b78) Refactor Backtrace to be a bit more readable. (Guy Sartorelli) - - 2022-06-09 [1c85d15](https://github.com/silverstripe/silverstripe-framework/commit/1c85d151a68ddc860b24e6dd4cf1aaa02da619c1) Add factory_method configuration to Injector (Paweł Suwiński) - - 2022-05-26 [31c974c](https://github.com/silverstripe/silverstripe-framework/commit/31c974c528d2fd826b8eb819a0916a1ef83f408d) Add samesite attribute to cookies. (Guy Sartorelli) - - 2022-05-20 [70f1dc8](https://github.com/silverstripe/silverstripe-framework/commit/70f1dc8841ac70fb5b029676c4baa9d028bdd6ea) Override record if a provided GroupId with provided Code already exist in Permission table. (Sabina Talipova) - - 2022-05-23 [a8652f7](https://github.com/silverstripe/silverstripe-framework/commit/a8652f7cbbc84470058a01732f59cbf5d66e68f0) Restore gridfield state from get vars (Guy Sartorelli) - - 2022-05-13 [78d20f6](https://github.com/silverstripe/silverstripe-framework/commit/78d20f6fe563aaa419f418490bcef88b3f262634) NEW: Mock sleep unit test utility. (Mojmir Fendek) - - 2022-05-10 [26d5994](https://github.com/silverstripe/silverstripe-framework/commit/26d59944e014cd0321e23ec6f7622e0689f5a1fa) RemoveAll() memory performance enhancement. (Mojmir Fendek) - -- silverstripe/graphql (4.0.0 -> 5.0.0-alpha1) - - 2022-06-23 [f39d875](https://github.com/silverstripe/silverstripe-graphql/commit/f39d8752612e3b90b2803d8dccdd4316aaacfb84) Update list of filtered backtrace methods (Guy Sartorelli) - -- silverstripe/login-forms (4.7.0 -> 5.0.0-alpha1) - - 2022-05-16 [1a46ec1](https://github.com/silverstripe/silverstripe-login-forms/commit/1a46ec127f704fbd2d81dfa153d11f2b9a6be375) Add config variable to fully disable dark mode. (Guy Sartorelli) - -- silverstripe/recipe-cms (4.11.0 -> 5.0.0-alpha1) - - 2022-08-05 [b61004e](https://github.com/silverstripe/recipe-cms/commit/b61004ebe1a6fb6190f8ba9f039b798a59d70d5a) Remove resources-dir config from composer.json (#59) (Guy Sartorelli) - -- silverstripe/recipe-core (4.11.0 -> 5.0.0-alpha1) - - 2022-08-05 [e6fb2d6](https://github.com/silverstripe/recipe-core/commit/e6fb2d67a32078fb6c404004891768126a7ee64c) Remove resources-dir config from composer.json (#76) (Guy Sartorelli) - -- silverstripe/reports (4.11.0 -> 5.0.0-alpha1) - - 2019-01-09 [213f716](https://github.com/silverstripe/silverstripe-reports/commit/213f7167a6304c5c9e4533ff3760d9e0141a2662) Fix phpcs violations (Robbie Averill) - -- silverstripe/vendor-plugin (1.6.0 -> 2.0.0-alpha1) - - 2022-08-04 [b9ca004](https://github.com/silverstripe/silverstripe-vendor-plugin/commit/b9ca004d85f14f01e61240632cef72806b57c5f1) Set the default resources dir to "_resources" (Guy Sartorelli) - -- silverstripe/versioned-admin (1.11.0 -> 2.0.0-alpha1) - - 2022-09-02 [8ee61fd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/8ee61fd184bbcc7c9584af7baeceeca0325af2de) Remove deprecated HistoryControllerFactory. (#251) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (3.4.2 -> 4.0.0-alpha1) - - 2022-08-04 [23a5154](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/23a5154c97c63c6ab6b1c13df57b9a75ea03c0a1) Update reorderItems() to use ORM where possible (#336) (Chris Penny) - -### Bugfixes - -- dnadesign/silverstripe-elemental (4.9.4 -> 5.0.0-alpha1) - - 2022-08-29 [ce8a102](https://github.com/dnadesign/silverstripe-elemental/commit/ce8a102b69f33d67b01510b856725cfd9291dfa4) Use correct return type for permission checks (Guy Sartorelli) - - 2022-05-04 [24f6cde](https://github.com/dnadesign/silverstripe-elemental/commit/24f6cde44a223f124b8188fe81189cb3331bdbe5) Use PreviewLink of the owner object to preview blocks (Guy Sartorelli) - - 2022-04-14 [fb23a61](https://github.com/dnadesign/silverstripe-elemental/commit/fb23a610c6250681a5018d22c1c7e8262794c353) getOwnerPage() should respect Versioned state. (Will Rossiter) - -- silverstripe/admin (1.11.2 -> 2.0.0-alpha1) - - 2019-11-26 [20ef8e7](https://github.com/silverstripe/silverstripe-admin/commit/20ef8e710d757d6d180bbdd4f9a4c4aa72e9dd6e) case error in SelectionGroup template (Mason Dechaineux) - - 2022-08-01 [a441d91](https://github.com/silverstripe/silverstripe-admin/commit/a441d91ebd819bb8022e4c7d71e8574b5549024a) Don't pass null as LeftAndMain error message. (#1335) (Guy Sartorelli) - - 2022-08-01 [523821b](https://github.com/silverstripe/silverstripe-admin/commit/523821bca9aa9a6ffff486063a038eb35193e353) Don't overwrite JSON errors with templated error page (#1334) (Guy Sartorelli) - - 2022-07-29 [643dd5c](https://github.com/silverstripe/silverstripe-admin/commit/643dd5c9eea9fb1dca7264d62cd7b266e49e5960) Don't override ajax errors or use uninitialised property (Guy Sartorelli) - - 2022-05-24 [b9f9378](https://github.com/silverstripe/silverstripe-admin/commit/b9f937890e87190caec4e92c8a24798c6e6cec5a) undefined el (Thomas Portelange) - - 2022-05-24 [0f32a29](https://github.com/silverstripe/silverstripe-admin/commit/0f32a297a8e9e71c99902ceb873cc25c8da3f841) jQuery + remove once (Thomas Portelange) - - 2022-05-23 [ff7ba9e](https://github.com/silverstripe/silverstripe-admin/commit/ff7ba9ea08c7d73898960e6050b4b9020dce60b6) selector (Thomas Portelange) - -- silverstripe/cms (4.11.2 -> 5.0.0-alpha1) - - 2022-08-25 [803b4ad](https://github.com/silverstripe/silverstripe-cms/commit/803b4add7bc6efa5a249b15d16aec22e44d9362c) Resolve CI failure (Guy Sartorelli) - - 2018-05-01 [b46876b](https://github.com/silverstripe/silverstripe-cms/commit/b46876b8a8959b15274bef9163530be3a6e2d678) Don't offer to restore to root if can_be_root is false (Mike Cochrane) - - 2018-11-26 [79f3fd7](https://github.com/silverstripe/silverstripe-cms/commit/79f3fd723d21d088bbf83b5ebdf66e2c402d4864) Use publishRecursive() over doPublish() (Robbie Averill) - - 2022-07-07 [6bd3618](https://github.com/silverstripe/silverstripe-cms/commit/6bd3618f09baf0677a5c886474b64fa50bd064af) CS (Michal Kleiner) - - 2022-06-09 [ead1d2f](https://github.com/silverstripe/silverstripe-cms/commit/ead1d2f02b03df24ef3ab2fef700d46a5f5b4ab0) Always include unsaved anchors from the current WYSIWYG field (Guy Sartorelli) - -- silverstripe/developer-docs (4.11.0 -> 5.0.0-alpha1) - - 2022-06-27 [b65f45c](https://github.com/silverstripe/silverstripe-developer-docs/commit/b65f45ca986d751a42c4b5c12e0de2dedeb51b14) Syntax for declaring enums in YML (Roman Schmid) - -- silverstripe/framework (4.11.7 -> 5.0.0-alpha1) - - 2022-09-13 [a2028a2](https://github.com/silverstripe/silverstripe-framework/commit/a2028a28175afc7f6af1e29e0a1f887ec25b9c55) Pass PSR6 caches to ChainAdapter (Steve Boyd) - - 2022-08-31 [89a0f59](https://github.com/silverstripe/silverstripe-framework/commit/89a0f59ef189e8c7b99b0f973768dc41106e0397) Remove accidental deprecation warnings. (Guy Sartorelli) - - 2018-02-20 [f2211d6](https://github.com/silverstripe/silverstripe-framework/commit/f2211d690f292886a29e1a5d4117cd9cdc7fe840) Fix extend() failing on protected extend-prefixed methods (Damian Mooyman) - - 2019-05-06 [e07671a](https://github.com/silverstripe/silverstripe-framework/commit/e07671a8903870b7c7f2d24e446963f9460ef68c) SQLConditionalExpression::getJoins so it always adds explicit aliases (Serge Latyntcev) - - 2017-11-29 [b36a01a](https://github.com/silverstripe/silverstripe-framework/commit/b36a01a8fd7d83aa5abaa09dd76778c8b6c1db7d) Fix table name test (Christopher Joe) - - 2022-08-18 [d55683d](https://github.com/silverstripe/silverstripe-framework/commit/d55683d02b08f368263771c354661e9de73e1244) Ensure PHP 8.1 compatible version of oscarotero/html-parser is installed (Steve Boyd) - - 2022-08-11 [5bdfaea](https://github.com/silverstripe/silverstripe-framework/commit/5bdfaea78a41a5ce05c67942cbe2340a9e37a400) Don't try to call count() on an iterator (Guy Sartorelli) - - 2022-08-05 [ebb1601](https://github.com/silverstripe/silverstripe-framework/commit/ebb1601d5de2f782769b297642727649577bac07) misc suggested changes (Sergey Shevchenko) - - 2022-08-02 [bc9a323](https://github.com/silverstripe/silverstripe-framework/commit/bc9a323418e8a0cb199281afd6d540806451a3c5) more tests, improved paths detection, readability (Sergey Shevchenko) - - 2021-05-26 [33600c3](https://github.com/silverstripe/silverstripe-framework/commit/33600c3b73255085449ec28f34cf46548fe6ba4e) Manually create singleton when building table (Maxime Rainville) - - 2022-06-27 [fbee035](https://github.com/silverstripe/silverstripe-framework/commit/fbee03562b0ed502bd952ec70d93dfed75d10ebc) Syntax for declaring enums in YML (Roman Schmid) - - 2022-06-27 [c80e10f](https://github.com/silverstripe/silverstripe-framework/commit/c80e10f892ec6eb05a9cfe7a26deb3c6b5caf639) PDO transaction in PHP 8, add GitHub Actions CI (#10360) (Steve Boyd) - - 2022-05-30 [d37dded](https://github.com/silverstripe/silverstripe-framework/commit/d37ddedd909dd99a5d3a337d17331761a10155ef) i18nTextCollector produces corrupt output / namespaces when running under PHP8.0 (#10228) (Christian Bünte) - - 2022-05-02 [5436df5](https://github.com/silverstripe/silverstripe-framework/commit/5436df57e4d08c802d7d2eabbf0932b538d7260c) Add polymorphic class on new records for use in forms. (Guy Sartorelli) - - 2021-03-31 [f1e5c72](https://github.com/silverstripe/silverstripe-framework/commit/f1e5c72e43375e6137b984c90a96f7cf331591ff) fieldNameError() references invalid $this->form (Christopher Darling) - -- silverstripe/graphql (4.0.0 -> 5.0.0-alpha1) - - 2022-09-12 [a52cabd](https://github.com/silverstripe/silverstripe-graphql/commit/a52cabd4a041527f82e935a7dba65906e5f53540) Use symfony6 cache classes (Steve Boyd) - - 2022-08-05 [8269556](https://github.com/silverstripe/silverstripe-graphql/commit/82695561f4e886f5330b0915668acff73a3319e9) prevent installation with incompatible modules (Steve Boyd) - -- silverstripe/versioned-admin (1.11.0 -> 2.0.0-alpha1) - - 2019-04-21 [33dbd45](https://github.com/silverstripe/silverstripe-versioned-admin/commit/33dbd45b74c86d3f7adadfc964c5b6ff2ad38834) Replace references to allVersions(), now Versions() in Versioned extension (Robbie Averill) - -### API changes - -- dnadesign/silverstripe-elemental (4.9.4 -> 5.0.0-alpha1) - - 2019-08-02 [005f8a9](https://github.com/dnadesign/silverstripe-elemental/commit/005f8a9f13a4c0c75b6c5cd0a1e0a6424471320d) Remove ElementalSolrIndex (Ingo Schommer) - -- silverstripe/cms (4.11.2 -> 5.0.0-alpha1) - - 2022-08-31 [1711c0c](https://github.com/silverstripe/silverstripe-cms/commit/1711c0c88eeaf24c4170a2ab511398e719c57f89) Move updateRelativeLink hook after concatination (#2770) (Florian Thoma) - - 2019-07-12 [cda7857](https://github.com/silverstripe/silverstripe-cms/commit/cda7857e129b05d8d1b11c738d481203b375e6c1) Remove deprecated CMSPageHistoryViewer (Aaron Carlino) - -- silverstripe/framework (4.11.7 -> 5.0.0-alpha1) - - 2022-09-08 [a87a657](https://github.com/silverstripe/silverstripe-framework/commit/a87a657367aed051c945ba1d674a4c39137c38f3) Update translation to use symfony 6 (Steve Boyd) - - 2022-09-07 [c9bc014](https://github.com/silverstripe/silverstripe-framework/commit/c9bc01473cd16d195073147e9841dd06828a0d6b) Update caching to use symfony 6 (Steve Boyd) - - 2022-09-02 [1bf86cf](https://github.com/silverstripe/silverstripe-framework/commit/1bf86cf39f9451787b3a4e92545442f59f1ee00b) Revert shorten auto-generated table names (#10482) (Guy Sartorelli) - - 2018-01-12 [76fc8f1](https://github.com/silverstripe/silverstripe-framework/commit/76fc8f1596f5d9e82acbf5b81a5eebb2e868a5dd) Only expose public extension methods (Damian Mooyman) - - 2018-03-01 [2c102c6](https://github.com/silverstripe/silverstripe-framework/commit/2c102c61a9d5837dc74fd731c92df4dc3834d37e) TestCase classes should be abstract to prevent warnings (Daniel Hensby) - - 2018-10-15 [f2de391](https://github.com/silverstripe/silverstripe-framework/commit/f2de39162dc1f197de2fcf8e2c8e2947acdb3754) Allow dataobject get_one without passing a class (Andrew Aitken-Fincham) - - 2020-03-16 [e42ed95](https://github.com/silverstripe/silverstripe-framework/commit/e42ed95be180145af1a20c657ce0626ccff2d25a) Update MigrationTask class to be an abstract class (Michal Kleiner) - - 2018-04-09 [08d1cd3](https://github.com/silverstripe/silverstripe-framework/commit/08d1cd3834fd97293d85b164e63023435a5f92fa) Remove isDev / isTest querystring arguments (Damian Mooyman) - - 2022-08-22 [a4521a7](https://github.com/silverstripe/silverstripe-framework/commit/a4521a734812186c697b557dad317c88e6a31e24) Undeprecate table warning message (Guy Sartorelli) - - 2022-08-09 [3284c06](https://github.com/silverstripe/silverstripe-framework/commit/3284c067030c37ed79c4ac8412c0a095a939ef61) Remove PHPUnit 5.7 compatability hacks (Guy Sartorelli) - - 2022-08-11 [1153bac](https://github.com/silverstripe/silverstripe-framework/commit/1153bacc115ded609741d98da4fe9983c6a7c3d6) Remove unnecessary `getGenerator()` method. (Guy Sartorelli) - - 2022-08-10 [a7461a8](https://github.com/silverstripe/silverstripe-framework/commit/a7461a8ffa06718b95bd2196ac12f8af3206b593) Deprecate PHPUnit 5.7 compatability hacks (Guy Sartorelli) - - 2022-08-04 [37dc0da](https://github.com/silverstripe/silverstripe-framework/commit/37dc0daacc11e5f7c7ce1dfd7b15660a07c1f0e1) Remove deprecated ManifestFileFinder::RESOURCES_DIR const (Guy Sartorelli) - - 2022-07-06 [29fae72](https://github.com/silverstripe/silverstripe-framework/commit/29fae7221130855f540a758ad3c18240fc818f18) TableBuilder class reduces inconsistency between temp & prod db (Guy Sartorelli) - - 2022-05-02 [2836478](https://github.com/silverstripe/silverstripe-framework/commit/2836478c728e2c4b08b1c5faad4b101db53f3114) Add method to get foreign class key on polymorphic has_many (Guy Sartorelli) - -- silverstripe/vendor-plugin (1.6.0 -> 2.0.0-alpha1) - - 2022-08-04 [ddbf19a](https://github.com/silverstripe/silverstripe-vendor-plugin/commit/ddbf19a9d54fb030e036affeaf8e1deb73c7ad9c) Remove deprecated Library::RESOURCES_PATH const (Guy Sartorelli) - -- silverstripe/versioned (1.11.1 -> 2.0.0-alpha1) - - 2022-09-01 [e2924d2](https://github.com/silverstripe/silverstripe-versioned/commit/e2924d2ed1905c4c1c01240fb005317f19c5f554) Symfony 6 compatibility (Steve Boyd) - - 2018-01-12 [9eb2aee](https://github.com/silverstripe/silverstripe-versioned/commit/9eb2aee199778276cd8b31932fee5f12785cdfea) Support new extend*() format for extension methods (Damian Mooyman) - -### Dependencies - -- dnadesign/silverstripe-elemental (4.9.4 -> 5.0.0-alpha1) - - 2022-08-10 [02c3ed0](https://github.com/dnadesign/silverstripe-elemental/commit/02c3ed06d305e23dd9845a15fb4373b56cff2e7f) Update dependencies for CMS 5 (Steve Boyd) - - 2022-04-01 [5ba2a0d](https://github.com/dnadesign/silverstripe-elemental/commit/5ba2a0d7c7ae73fc3533e3f725bcdb07553e578d) Update JS dependencies (GitHub-actions) - -- silverstripe/admin (1.11.2 -> 2.0.0-alpha1) - - 2022-08-09 [5fc5071](https://github.com/silverstripe/silverstripe-admin/commit/5fc5071c49b3f70302560804c17a2129ce6c0ae1) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c80be4e](https://github.com/silverstripe/silverstripe-admin/commit/c80be4ee7e41b3e36f2ab8b1c4ffe1496a127ba8) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/asset-admin (1.11.2 -> 2.0.0-alpha1) - - 2022-08-09 [c12dcfe](https://github.com/silverstripe/silverstripe-asset-admin/commit/c12dcfe4fdcf3f837eb2b96a137c4c86185d8c7a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [1ad9dcd](https://github.com/silverstripe/silverstripe-asset-admin/commit/1ad9dcd2db3d0596ddb9a0035a6422d10a46e731) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/assets (1.11.0 -> 2.0.0-alpha1) - - 2022-09-01 [32dd083](https://github.com/silverstripe/silverstripe-assets/commit/32dd083867d71ad26494f61fe15c607c8c17cc5d) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [22ab6c3](https://github.com/silverstripe/silverstripe-assets/commit/22ab6c3101f212df9cc4d5a736e1b7f44c3cea2c) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [35fd723](https://github.com/silverstripe/silverstripe-assets/commit/35fd723748f7bd6cd4dd4ed06639f52316051c54) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/campaign-admin (1.11.0 -> 2.0.0-alpha1) - - 2022-08-09 [45b4b3c](https://github.com/silverstripe/silverstripe-campaign-admin/commit/45b4b3cff6026ea22b4f0bed828566ae9309db30) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7c949f2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7c949f2030325d7c6309b23112e4dbdfa8584ef3) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-04-01 [b8400cd](https://github.com/silverstripe/silverstripe-campaign-admin/commit/b8400cd9208b6865fb8f350547a1f6b4db690fc2) Update JS dependencies (GitHub-actions) - -- silverstripe/cms (4.11.2 -> 5.0.0-alpha1) - - 2022-08-09 [7381de1](https://github.com/silverstripe/silverstripe-cms/commit/7381de15e87d4f6feaada2ec7e9d4124b058506d) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [72f8e5f](https://github.com/silverstripe/silverstripe-cms/commit/72f8e5f71db0d0ae8390206156a3a2170284f5cd) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/config (1.4.0 -> 2.0.0-alpha1) - - 2022-09-01 [6ec9ca3](https://github.com/silverstripe/silverstripe-config/commit/6ec9ca350fbb4984803db9b089b556c54e6add19) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [b00bfbc](https://github.com/silverstripe/silverstripe-config/commit/b00bfbccdfae47e81a69a64610a53d0fae33d954) Require latest patch versions of dependencies (Steve Boyd) - - 2022-08-04 [52a9dd5](https://github.com/silverstripe/silverstripe-config/commit/52a9dd572a8052d484e2dc5fd6adf1445d6c0fbb) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/errorpage (1.11.0 -> 2.0.0-alpha1) - - 2022-08-09 [f5a177c](https://github.com/silverstripe/silverstripe-errorpage/commit/f5a177ca97a665ceebd96dc35f3ebd25863ba05a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5700408](https://github.com/silverstripe/silverstripe-errorpage/commit/57004082dac802d74e3aa328e67228d416ab9566) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/event-dispatcher (0.1.3 -> 1.0.0-alpha1) - - 2022-09-01 [94c2384](https://github.com/silverstripe/silverstripe-event-dispatcher/commit/94c2384fa8207a210abed604c547f34de214177d) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [2d745e2](https://github.com/silverstripe/silverstripe-event-dispatcher/commit/2d745e228a74dab3afa372ee1ab1e3b15f0a2c69) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [d4abc58](https://github.com/silverstripe/silverstripe-event-dispatcher/commit/d4abc58f6745a229093889be24ebc0f6cbd66f5c) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/framework (4.11.7 -> 5.0.0-alpha1) - - 2022-09-01 [e6fb963](https://github.com/silverstripe/silverstripe-framework/commit/e6fb9634b5c7b233538b3ecb3db703e58af9242b) Revert change to dependency that was made during a merge-up (#10479) (Guy Sartorelli) - - 2022-08-09 [4707531](https://github.com/silverstripe/silverstripe-framework/commit/470753194c837a8db9a7b00634c5f23ecce7dbfc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [eb62db6](https://github.com/silverstripe/silverstripe-framework/commit/eb62db6dba91f87941404360f6d6acfa6afbe33d) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-07-22 [6e6db8a](https://github.com/silverstripe/silverstripe-framework/commit/6e6db8a27a908e51aef7fa4560ec771e11860efe) DEP: Bump minimum version of nikic/php-parser for enum support (Loz Calver) - -- silverstripe/graphql (4.0.0 -> 5.0.0-alpha1) - - 2022-08-09 [5b5971f](https://github.com/silverstripe/silverstripe-graphql/commit/5b5971fdafb12703b7e9697d21b27662bb61942b) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e63d41d](https://github.com/silverstripe/silverstripe-graphql/commit/e63d41d8db4cbe1d07092eece5e096a0be2c21ad) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/login-forms (4.7.0 -> 5.0.0-alpha1) - - 2022-08-09 [89769f4](https://github.com/silverstripe/silverstripe-login-forms/commit/89769f4e90a0694362fb284705ac66f6bf280bbc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7948d1e](https://github.com/silverstripe/silverstripe-login-forms/commit/7948d1ecc6d88c63e710690567be4855e8f614ab) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-04-01 [f2bcb62](https://github.com/silverstripe/silverstripe-login-forms/commit/f2bcb629a13ee9d92e14dd8190894848bba82bfa) Update JS dependencies (GitHub-actions) - -- silverstripe/mimevalidator (2.4.0 -> 3.0.0-alpha1) - - 2022-08-09 [19251bf](https://github.com/silverstripe/silverstripe-mimevalidator/commit/19251bfd2f1cea32183f6c0ffafb42496bc5cfe2) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c8916a3](https://github.com/silverstripe/silverstripe-mimevalidator/commit/c8916a307d7ce42a07916cadf985742b9d7fea67) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-cms (4.11.0 -> 5.0.0-alpha1) - - 2022-08-05 [6e7dce8](https://github.com/silverstripe/recipe-cms/commit/6e7dce8f2e0574737b3ff3b114f39c1d6a6c3d06) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-05-09 [5665a59](https://github.com/silverstripe/recipe-cms/commit/5665a593c1d506167dbdf99b9ee7433a76a2b1d5) Allow GraphQL 3.8 dev dependency (Steve Boyd) - - 2022-05-06 [ff4400a](https://github.com/silverstripe/recipe-cms/commit/ff4400ac310f2849665103cb084bff6347eddfb6) 4.11 dev requirements (Steve Boyd) - -- silverstripe/recipe-core (4.11.0 -> 5.0.0-alpha1) - - 2022-08-09 [7716a27](https://github.com/silverstripe/recipe-core/commit/7716a27a70adbf2048a7004edf51102a15e4a3e9) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-05 [5a447f9](https://github.com/silverstripe/recipe-core/commit/5a447f93b30951916b0d846c1cb494a427c60438) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-05-10 [1560c62](https://github.com/silverstripe/recipe-core/commit/1560c626cc29c3f51c65a098e0f9a6745d599f21) 4.11 dev requirements (Steve Boyd) - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0-alpha1) - - 2022-08-05 [e0aeb69](https://github.com/silverstripe/recipe-plugin/commit/e0aeb694a91fc2aea056ea9421adcadc0d146d39) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/reports (4.11.0 -> 5.0.0-alpha1) - - 2022-08-04 [65bc353](https://github.com/silverstripe/silverstripe-reports/commit/65bc353f43165a81c7c6295ece2c13465cbf8241) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/session-manager (1.3.0 -> 2.0.0-alpha1) - - 2022-08-18 [8712b4b](https://github.com/silverstripe/silverstripe-session-manager/commit/8712b4b52ca6f7008c3ca61ee79173c6e374578e) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e0092bf](https://github.com/silverstripe/silverstripe-session-manager/commit/e0092bf2aa912840c0906cb78bd177f322243762) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-04-01 [a1b071c](https://github.com/silverstripe/silverstripe-session-manager/commit/a1b071c7c9f3f8be08496e7fbb30d519d01091e8) Update JS dependencies (GitHub-actions) - -- silverstripe/siteconfig (4.11.0 -> 5.0.0-alpha1) - - 2022-08-04 [400b82c](https://github.com/silverstripe/silverstripe-siteconfig/commit/400b82c48b62b3c92b80a42998c56ca51fe4871a) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/vendor-plugin (1.6.0 -> 2.0.0-alpha1) - - 2022-08-09 [c2e1c7f](https://github.com/silverstripe/silverstripe-vendor-plugin/commit/c2e1c7f451d27f4f6b1ae44105d01ac78364cbab) Require composer/installers ^2 (Steve Boyd) - - 2022-08-05 [de85c78](https://github.com/silverstripe/silverstripe-vendor-plugin/commit/de85c7817947656b40efcefc69bc632ccfbf796d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned (1.11.1 -> 2.0.0-alpha1) - - 2022-08-04 [c9dbdd6](https://github.com/silverstripe/silverstripe-versioned/commit/c9dbdd63f886039873484b46b7b8b27d6d5d941c) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned-admin (1.11.0 -> 2.0.0-alpha1) - - 2022-08-04 [6c60865](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6c60865978c54f651922563d01ed1e35dae3f811) Update core dependencies for CMS 5 (Steve Boyd) - - 2022-04-01 [ba25124](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ba25124404e61f770e168b157e750a3d3b0c4976) Update JS dependencies (GitHub-actions) - -- symbiote/silverstripe-gridfieldextensions (3.4.2 -> 4.0.0-alpha1) - - 2022-08-10 [d0c0cc0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/d0c0cc08f0d6a337db7b033063694cf10662c769) Update dependencies for CMS 5 (Steve Boyd) - -### Other - -- dnadesign/silverstripe-elemental (4.9.4 -> 5.0.0-alpha1) - - 2022-04-28 [1209797](https://github.com/dnadesign/silverstripe-elemental/commit/12097971111b2a424021d230c10c411f3372b5e3) Bump async from 2.6.3 to 2.6.4 (dependabot[bot]) - -- silverstripe/admin (1.11.2 -> 2.0.0-alpha1) - - 2022-07-06 [2217643](https://github.com/silverstripe/silverstripe-admin/commit/2217643fa59ef86d38babf65b1c1cb1b3d6d70f3) Built CSS and JavaScript bundles (Benjamin) - - 2022-07-06 [fe6c365](https://github.com/silverstripe/silverstripe-admin/commit/fe6c36599988dfa965150f87870a6c5836f3d0c3) LeftAndMain - Removed changes to BatchActionsForm (Benjamin Blake) - - 2022-07-06 [725d94c](https://github.com/silverstripe/silverstripe-admin/commit/725d94cd1b229e478500321e9d5531f6a2c65067) styles - Replaced ID selector + Changed nesting (Benjamin Blake) - - 2022-07-06 [68abd1a](https://github.com/silverstripe/silverstripe-admin/commit/68abd1a01b2a6651846aade095ed829a1c114e1b) JavaScript - Reset fields before displaying them (Benjamin Blake) - - 2022-07-06 [e7ac90a](https://github.com/silverstripe/silverstripe-admin/commit/e7ac90af983249214373364ab5ab60f2982d5775) JavaScript - Code quality changes (Benjamin Blake) - - 2022-07-05 [380fd4e](https://github.com/silverstripe/silverstripe-admin/commit/380fd4e168c6094c591994c0f3437bf8a4b5a92e) JS - Fixed variable naming issues and rebuilt (devserver) - - 2022-07-05 [174abc7](https://github.com/silverstripe/silverstripe-admin/commit/174abc7b635875ec3b32d987f44f343a659fa9d8) LeftAndMain - Added missing use statement (devserver) - - 2022-07-05 [69e830e](https://github.com/silverstripe/silverstripe-admin/commit/69e830e569446f8a9e079619f436d08e9346720c) Built CSS and JavaScript bundles (server) - - 2022-07-05 [331c73d](https://github.com/silverstripe/silverstripe-admin/commit/331c73d0c4e2815f662b7edf2a6a37bd420be3f9) LeftAndMain - Extended batch actions form (Benjamin Blake) - - 2022-06-21 [a925625](https://github.com/silverstripe/silverstripe-admin/commit/a925625f813686e5ce93bd0dba3b9e516077e94f) move lazyLoadGridFields (Thomas) - - 2022-06-21 [3ffdb05](https://github.com/silverstripe/silverstripe-admin/commit/3ffdb05913e052bac84c394eb0d8b32e4edba19a) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-06-21 [c5aecd2](https://github.com/silverstripe/silverstripe-admin/commit/c5aecd2d2b3d1078713b5b976a615080ceec86dd) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-06-21 [d36f412](https://github.com/silverstripe/silverstripe-admin/commit/d36f41225162fc308736cdf762d83910334c0eae) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-06-21 [7149305](https://github.com/silverstripe/silverstripe-admin/commit/7149305f233959d71e2e8da880485b33d4587875) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-06-21 [0b54ac3](https://github.com/silverstripe/silverstripe-admin/commit/0b54ac382477335c27f2826ce8165a073a2edeb4) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-06-21 [249fd58](https://github.com/silverstripe/silverstripe-admin/commit/249fd584201f41c7eff99a053acd202c277a0b35) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-05-31 [a90544f](https://github.com/silverstripe/silverstripe-admin/commit/a90544fe4f542e7855c1e49c904bda353ce54c48) simplify PR (Thomas Portelange) - - 2022-05-31 [d2e728c](https://github.com/silverstripe/silverstripe-admin/commit/d2e728c8977b89fba9992ca6a86bb1934933c206) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-05-31 [eb7f1a6](https://github.com/silverstripe/silverstripe-admin/commit/eb7f1a6b277bb248005f25ca51ad761f81f6bb65) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-05-31 [861605d](https://github.com/silverstripe/silverstripe-admin/commit/861605d74136b232e6449e4ff4bc4c8473a16f5e) Update client/src/legacy/TabSet.js (Thomas Portelange) - - 2022-05-30 [57e1d2d](https://github.com/silverstripe/silverstripe-admin/commit/57e1d2d41907c9bedcf2a98126071ab412395a22) missing , (Thomas Portelange) - - 2022-05-30 [48466ae](https://github.com/silverstripe/silverstripe-admin/commit/48466aeaac160b4b6b1ae86068906a718bdb4546) Run yarn build (Guy Sartorelli) - - 2022-05-24 [be3d151](https://github.com/silverstripe/silverstripe-admin/commit/be3d151d1f52d963c724c1b6da0973e71cc9d4e1) better var name (Thomas Portelange) - - 2022-05-24 [e1c2f28](https://github.com/silverstripe/silverstripe-admin/commit/e1c2f284b0f8d48e3c760a626a9c069b38b21bdd) consistent quotes (Thomas Portelange) - - 2022-05-24 [155bf1b](https://github.com/silverstripe/silverstripe-admin/commit/155bf1b91e310c25fb12a45c403981b80a811f39) refactor tabset (Thomas Portelange) - - 2022-05-23 [8bc3a00](https://github.com/silverstripe/silverstripe-admin/commit/8bc3a001c28124dbd1eda3893e63c16c745da9f9) Update client/src/legacy/GridField.js (Thomas Portelange) - - 2022-05-23 [3f283e2](https://github.com/silverstripe/silverstripe-admin/commit/3f283e2ee89ce198a5c9c0966b3e5d9f96009109) update doc (Thomas Portelange) - - 2022-05-23 [bc151b2](https://github.com/silverstripe/silverstripe-admin/commit/bc151b22a30d610f7f0e2d9c846f5c6999d6275a) extend lazy-loadable behavior (Thomas Portelange) - -- silverstripe/assets (1.11.0 -> 2.0.0-alpha1) - - 2022-04-27 [5f6a73b](https://github.com/silverstripe/silverstripe-assets/commit/5f6a73b010c01587ffbfb954441f6b7cbb54e767) [CVE-2022-29858] Read grant config for regenerate_shortcode (Steve Boyd) - - 2022-05-24 [9c1427c](https://github.com/silverstripe/silverstripe-assets/commit/9c1427c036521be5d9127b813bdf51ddcf839345) fallback to default on post filter empty basename (Paweł Suwiński) - -- silverstripe/campaign-admin (1.11.0 -> 2.0.0-alpha1) - - 2022-05-12 [a8c2aff](https://github.com/silverstripe/silverstripe-campaign-admin/commit/a8c2affcc57615758ea08b7be0453e12cf493224) Added cascade_add_to_campaign property (Tyler) - -- silverstripe/cms (4.11.2 -> 5.0.0-alpha1) - - 2022-07-07 [aca0def](https://github.com/silverstripe/silverstripe-cms/commit/aca0defe164e057b67d23270f9d27744d5b4251f) BatchActionsExtension - Added blank end line (Benjamin) - - 2022-07-06 [fa1c6ae](https://github.com/silverstripe/silverstripe-cms/commit/fa1c6ae3db2c0e5257bab796f85efbee4116e70c) Created a batch action extension for LeftAndMain (Benjamin Blake) - - 2022-07-06 [35d1222](https://github.com/silverstripe/silverstripe-cms/commit/35d12228d0fd3b1025893702c61232611dad7423) CMSMain - Added HTML class attribute for styling (Benjamin Blake) - - 2022-07-05 [654fa5a](https://github.com/silverstripe/silverstripe-cms/commit/654fa5a6813a94a045c4b655d5b0f0d66d061a38) CMSMain - Linting changes + Added Docblock (Benjamin Blake) - - 2022-07-04 [8159305](https://github.com/silverstripe/silverstripe-cms/commit/81593057dee42b4d939df2c0c4bd4f80a54999f6) CMSMain - Fixed and enhanced BatchActionParameters (Benjamin Blake) - -- silverstripe/developer-docs (4.11.0 -> 5.0.0-alpha1) - - 2022-07-29 [8737619](https://github.com/silverstripe/silverstripe-developer-docs/commit/87376190798d370ba0f71eeaf0784e56a7e758e3) Update adding_middleware.md (Antony Thorpe) - - 2022-07-27 [a1fa5e2](https://github.com/silverstripe/silverstripe-developer-docs/commit/a1fa5e22da91fe8a851c92bc86a6c9bf762b4169) Update adding_middleware.md (Antony Thorpe) - - 2022-07-15 [9088fa0](https://github.com/silverstripe/silverstripe-developer-docs/commit/9088fa0fac3bd56b9c5e7a563e18ac7f9651be38) Update 02_configuring_your_schema.md (Antony Thorpe) - - 2022-02-15 [8f0c5c9](https://github.com/silverstripe/silverstripe-developer-docs/commit/8f0c5c986f2f66fd6e13539b5764c67e124218a0) [CVE-2022-25238] Sanitise htmlfields serverside by default (Steve Boyd) - - 2022-06-05 [c3fff4e](https://github.com/silverstripe/silverstripe-developer-docs/commit/c3fff4e45dc35cdc9107269ab30bf5ee144a608c) Updated 2_configuring_your_schema.md (Antony Thorpe) - - 2022-06-04 [7df6c16](https://github.com/silverstripe/silverstripe-developer-docs/commit/7df6c16b28be2147f3ce9e778eec0bfc0206f5b7) Updated 07_nested_definitions.md (Antony Thorpe) - -- silverstripe/framework (4.11.7 -> 5.0.0-alpha1) - - 2022-09-02 [06b13e0](https://github.com/silverstripe/silverstripe-framework/commit/06b13e0fa621be58c7a9f43ffdc86c071d262fe4) Revert "Merge pull request #10450 from creative-commoners/pulls/5/rescue-master-generators" (#10483) (Guy Sartorelli) - - 2018-03-17 [595835b](https://github.com/silverstripe/silverstripe-framework/commit/595835bb1524f2e9aafeba03ed36b49c48bd4850) Merge pull request #6518 from sminnee/generators (Daniel Hensby) - - 2022-08-05 [4994844](https://github.com/silverstripe/silverstripe-framework/commit/49948447291782f5ada953470154fe04e46487d7) refactor: variable naming in Requirements_Backend::resolveCSSReferences() (Sergey Shevchenko) - - 2022-08-05 [6975815](https://github.com/silverstripe/silverstripe-framework/commit/6975815513caa81dce15134fe9a3b5c5d12d60e8) config: add symfony/filesystem to base dependencies (Sergey Shevchenko) - - 2021-11-09 [9854e48](https://github.com/silverstripe/silverstripe-framework/commit/9854e48cfc48a9167a12e706979e00d44da6c9f6) Update Requirements_Backend.PHP (Sergey Shevchenko) - - 2022-06-09 [f670eb4](https://github.com/silverstripe/silverstripe-framework/commit/f670eb498061c93d20506e2c883d215d072bfd01) Correct declaration of variadic $args to mixed (Fred Condo) - - 2022-06-05 [ab3375c](https://github.com/silverstripe/silverstripe-framework/commit/ab3375ce265dc7d5574792a6eda745a14c30d5d9) Updated 2_configuring_your_schema.md (Antony Thorpe) - - 2022-06-04 [1c88e98](https://github.com/silverstripe/silverstripe-framework/commit/1c88e989e271b4b96c2baa8c7b8e66b8daaa9e1a) Updated 07_nested_definitions.md (Antony Thorpe) - - 2022-05-19 [a9a6b0f](https://github.com/silverstripe/silverstripe-framework/commit/a9a6b0f114b73b407ed16d191c70e22d359c73f8) PR fixes. (Mojmir Fendek) - - 2022-05-13 [b864c11](https://github.com/silverstripe/silverstripe-framework/commit/b864c11b12abfc943aecd0a5e6f05db34ed4697f) PR fixes. (Mojmir Fendek) - - 2022-04-05 [13b81c5](https://github.com/silverstripe/silverstripe-framework/commit/13b81c5e386958cb919f0469771e58216bc7daca) Check for component before saving, fallback to full form field name (Tyler) - - 2022-03-20 [be65db7](https://github.com/silverstripe/silverstripe-framework/commit/be65db72079e288d051913f9d5a7202eafaf064c) removed impossible method name contraint (Tobias Bossert) - -- silverstripe/reports (4.11.0 -> 5.0.0-alpha1) - - 2019-03-22 [01f2663](https://github.com/silverstripe/silverstripe-reports/commit/01f26631792a4bc5d06f38d670fd9db4264a45d0) Use Injector to instantiate new base report instances (Robbie Averill) - -- silverstripe/session-manager (1.3.0 -> 2.0.0-alpha1) - - 2022-07-08 [a4e69a2](https://github.com/silverstripe/silverstripe-session-manager/commit/a4e69a21b9b12a16d2f1cd16fb2e85a9a2db9543) Bump moment from 2.29.1 to 2.29.4 (dependabot[bot]) - -- silverstripe/versioned (1.11.1 -> 2.0.0-alpha1) - - 2022-05-13 [cd655aa](https://github.com/silverstripe/silverstripe-versioned/commit/cd655aacecf2315d27c7a3532ab7359c9e5516a2) Make ReadVersions injectable (Elliot Sawyer) - -### Documentation - -- dnadesign/silverstripe-elemental (4.9.4 -> 5.0.0-alpha1) - - 2022-08-23 [a990293](https://github.com/dnadesign/silverstripe-elemental/commit/a990293e760267baf53802e3c10425598616298e) Minor change to userhelp docs for clarity (Guy Sartorelli) - - 2022-08-20 [3724db4](https://github.com/dnadesign/silverstripe-elemental/commit/3724db4a8d01a20f46b9b95cbfd93feced336340) Correct title for userhelp (Maxime Rainville) - -- silverstripe/developer-docs (4.11.0 -> 5.0.0-alpha1) - - 2022-09-14 [db79fc5](https://github.com/silverstripe/silverstripe-developer-docs/commit/db79fc5b0a84ca2105aa3a3bb0e125c5d77b020c) Move upgrade docs into changelog for 5.0.0 (#84) (Guy Sartorelli) - - 2022-09-08 [1f87c41](https://github.com/silverstripe/silverstripe-developer-docs/commit/1f87c415139ff46c16d921ea3b862655a5e963c5) Document symfony 6 dependency changes (Steve Boyd) - - 2022-09-02 [09472a5](https://github.com/silverstripe/silverstripe-developer-docs/commit/09472a532f8f31b7d8d38ecdadd698216ed29216) Document removal of HistoryControllerFactory (#71) (Guy Sartorelli) - - 2022-09-02 [b497e27](https://github.com/silverstripe/silverstripe-developer-docs/commit/b497e27061363519d734317196d9ead35ae86c9f) Document reverting a change to table names (#78) (Guy Sartorelli) - - 2022-09-01 [a1d8a3f](https://github.com/silverstripe/silverstripe-developer-docs/commit/a1d8a3fe00bedf659b393301e9a1a0032775b493) Document changes in various rescued master commits (#70) (Guy Sartorelli) - - 2022-08-23 [fc93197](https://github.com/silverstripe/silverstripe-developer-docs/commit/fc93197c1105688f778313d8aae56e7c73d5a514) New section in Changelog 4.12.0 (Sabina Talipova) - - 2022-08-22 [9094e79](https://github.com/silverstripe/silverstripe-developer-docs/commit/9094e796fd46f793401b82124e34a6fe849225f6) Get the releases timeline to show (Maxime Rainville) - - 2022-08-22 [a174a1a](https://github.com/silverstripe/silverstripe-developer-docs/commit/a174a1acdb0911b55063cc86f18d79c08437f2b5) Add new major release policy to (#54) (Maxime Rainville) - - 2022-08-15 [38c9c30](https://github.com/silverstripe/silverstripe-developer-docs/commit/38c9c309fef1b02583855e75024f45c2df92d833) Fix preview docs to not redirect to 404 unnecessarily (#65) (Guy Sartorelli) - - 2022-08-15 [dc3f17c](https://github.com/silverstripe/silverstripe-developer-docs/commit/dc3f17c4b2efbfce4cdb4aac49915ab72f400d7d) Update relative links in preview docs (#64) (Guy Sartorelli) - - 2022-08-10 [9ca7cee](https://github.com/silverstripe/silverstripe-developer-docs/commit/9ca7cee979e6335bbd238357204c9d323b75cb33) Document removing deprecated support for PHPUnit 5.7 (Guy Sartorelli) - - 2022-08-05 [79dcb6a](https://github.com/silverstripe/silverstripe-developer-docs/commit/79dcb6aedbd243ffd288e6f3fbfe40cd05818fe8) Remove references to GraphQL v3 (Guy Sartorelli) - - 2022-07-21 [c8dc5b9](https://github.com/silverstripe/silverstripe-developer-docs/commit/c8dc5b9cfba056c1cc66eac164fa8b21a4e5c3d3) Update references to CMS 3 and 4 (Guy Sartorelli) - - 2022-08-09 [727b711](https://github.com/silverstripe/silverstripe-developer-docs/commit/727b7112596535befbaa14b8e680ba73c8c1c019) update for silverstripe-framework#10134 (#8) (Sergey Shevchenko) - - 2022-08-09 [e933bce](https://github.com/silverstripe/silverstripe-developer-docs/commit/e933bcef102f7652b7b23f301e98a866d80fcff5) Document breaking changes for updating resources dir (#58) (Guy Sartorelli) - - 2022-08-02 [1df209e](https://github.com/silverstripe/silverstripe-developer-docs/commit/1df209e4012a9e3273516626f4a01829d07239fb) Document GridFieldFilterHeader general field customisation (#6) (Guy Sartorelli) - - 2022-07-13 [3d3c916](https://github.com/silverstripe/silverstripe-developer-docs/commit/3d3c916565601986a682410c4eeeba117c0b383d) Better document how to handle security issue (Maxime Rainville) - - 2022-08-01 [048cc41](https://github.com/silverstripe/silverstripe-developer-docs/commit/048cc4144eb4c1345257ec2f12bb66d0b5e3c354) Document searching across fields by default (#5) (Guy Sartorelli) - - 2022-07-19 [b156905](https://github.com/silverstripe/silverstripe-developer-docs/commit/b1569052cfd722dcda29ba9a1301d941f3297fef) Fix typo (Steve Boyd) - - 2022-07-14 [98fe74d](https://github.com/silverstripe/silverstripe-developer-docs/commit/98fe74d0f5b24b0e049668fd83180b45dadfca14) Add docs for seting many_many_extraFields data (Guy Sartorelli) - - 2022-07-12 [bd28ed6](https://github.com/silverstripe/silverstripe-developer-docs/commit/bd28ed62918dcf0d2166295dcdbde8aa100a17d1) Update references for how to update documentation (4 branch) (#3) (Guy Sartorelli) - - 2022-06-30 [630f09f](https://github.com/silverstripe/silverstripe-developer-docs/commit/630f09fa47a8672350bd8cdde5b43cfe936c3eaa) Update docs for searchable and summary fields. (Guy Sartorelli) - - 2022-06-28 [275c012](https://github.com/silverstripe/silverstripe-developer-docs/commit/275c01207c5a6636462804a98edca1f415a071e0) Remove pre-release warnings from GraphQL docs. (silverstripe/silverstripe-framework#10354) (Guy Sartorelli) - - 2022-06-27 [90d3763](https://github.com/silverstripe/silverstripe-developer-docs/commit/90d37631b599f3f356a87a65c6a0da38f85448f2) Review 4.11.0 changelog notes (silverstripe/silverstripe-framework#10356) (Guy Sartorelli) - - 2022-06-27 [90771ab](https://github.com/silverstripe/silverstripe-developer-docs/commit/90771ab5b6def4f9f627b8632fa46bd54d7fda54) Update GitHub label definitions (Steve Boyd) - - 2022-06-23 [441cfde](https://github.com/silverstripe/silverstripe-developer-docs/commit/441cfdee96377c4758d9cc0bc2740269653e5d1c) Encourage filtering sensitive arguments from logged backtraces. (Guy Sartorelli) - - 2022-06-15 [233f603](https://github.com/silverstripe/silverstripe-developer-docs/commit/233f60348237ecce473933bf90ce6df8b192cccb) Remove backticks from gatsby metadata in docs. (silverstripe/silverstripe-framework#10357) (Guy Sartorelli) - - 2022-06-08 [5cbeb35](https://github.com/silverstripe/silverstripe-developer-docs/commit/5cbeb3562b6b138ae5ca59851341d505c424dda1) Update documentation for GraphQL v4 (silverstripe/silverstripe-framework#10325) (Maxime Rainville) - - 2022-06-02 [43ec02f](https://github.com/silverstripe/silverstripe-developer-docs/commit/43ec02f35c4b339fd99035b5a607da11334e841a) Update server requirements to account for public/_GraphQL/ (Guy Sartorelli) - - 2022-06-07 [ec092cf](https://github.com/silverstripe/silverstripe-developer-docs/commit/ec092cf5f0019645fe061df4a9abec0309031780) Add missing colon to CORS example (Jonathan Copson) - -- silverstripe/framework (4.11.7 -> 5.0.0-alpha1) - - 2022-07-15 [d65ba0d](https://github.com/silverstripe/silverstripe-framework/commit/d65ba0d71858f5065cc0d80005e289b565229269) Fix DataObject examples (Nicola Fontana) - - 2022-06-28 [4d18d36](https://github.com/silverstripe/silverstripe-framework/commit/4d18d36625015dea21ff679288d85d7a1b9c37a2) Remove pre-release warnings from GraphQL docs. (#10354) (Guy Sartorelli) - - 2022-06-27 [f276fcc](https://github.com/silverstripe/silverstripe-framework/commit/f276fccb781869f2bd16b8b30ae9af90e60e8bd9) Review 4.11.0 changelog notes (#10356) (Guy Sartorelli) - - 2022-06-27 [b7d0e9d](https://github.com/silverstripe/silverstripe-framework/commit/b7d0e9dc2844ee5035bddd0c8f9efa13b3726e99) Update GitHub label definitions (Steve Boyd) - - 2022-06-23 [6a8915b](https://github.com/silverstripe/silverstripe-framework/commit/6a8915b316c6bc69ca58ef5248174db8c6be3f3a) Encourage filtering sensitive arguments from logged backtraces. (Guy Sartorelli) - - 2022-06-15 [139fa07](https://github.com/silverstripe/silverstripe-framework/commit/139fa07bcb5f3b4a4ca2c5ef00c957ff588b07ba) Remove backticks from gatsby metadata in docs. (#10357) (Guy Sartorelli) - - 2022-06-08 [22d992a](https://github.com/silverstripe/silverstripe-framework/commit/22d992a22bb0cd09196be6f074d3a09254740e68) Update documentation for GraphQL v4 (#10325) (Maxime Rainville) - - 2022-06-02 [0bd3fae](https://github.com/silverstripe/silverstripe-framework/commit/0bd3fae7e166f9ce8d40497a90a09197abf7d969) Update server requirements to account for public/_GraphQL/ (Guy Sartorelli) - - 2022-06-07 [2c30438](https://github.com/silverstripe/silverstripe-framework/commit/2c30438b01bd18c5eff1609d2be19d7040d8b94b) Add missing colon to CORS example (Jonathan Copson) - - 2022-05-30 [1122849](https://github.com/silverstripe/silverstripe-framework/commit/112284975a427676d02663909e51eb7bb80cf17c) Add 4.11.0-rc1 changelog (Steve Boyd) - - 2022-05-30 [4138975](https://github.com/silverstripe/silverstripe-framework/commit/413897503d3d65cf5046032347d15795065f8250) Correct references to GraphQL v4 schema build dir (Guy Sartorelli) - - 2022-05-20 [ba660cc](https://github.com/silverstripe/silverstripe-framework/commit/ba660cc84cfbf3dc1e6aa7cc52dc37c49c888d57) Add title to 4.11.0 changelog (Guy Sartorelli) - - 2022-05-17 [8039ceb](https://github.com/silverstripe/silverstripe-framework/commit/8039cebe5a43fd5af86e3415053baf5ddce866fd) Update PHP version and note about file permissions. (Guy Sartorelli) - - 2022-05-05 [033aa4f](https://github.com/silverstripe/silverstripe-framework/commit/033aa4f15386a8ef9c782e70ee27220ff6e5a5a9) Fix changlog heading (Steve Boyd) - - 2022-05-05 [84aa368](https://github.com/silverstripe/silverstripe-framework/commit/84aa368544ad3d65089331cf3abba3039d80688c) Use backticks in 4.11.0-beta1 changelog (Steve Boyd) - - 2022-05-05 [3e233cd](https://github.com/silverstripe/silverstripe-framework/commit/3e233cdb130589a6161b826635ca1a3a5ff55673) Add 4.11.0-beta1 changelog (Steve Boyd) - -- silverstripe/graphql (4.0.0 -> 5.0.0-alpha1) - - 2022-06-28 [2aa13a5](https://github.com/silverstripe/silverstripe-graphql/commit/2aa13a52bd74c632ce87e591ca74b1dd565f119b) Update README in for stable release. (#474) (Guy Sartorelli) - - diff --git a/en/08_Changelogs/beta/5.0.0-beta1.md b/en/08_Changelogs/beta/5.0.0-beta1.md deleted file mode 100644 index 9b83d1c3a..000000000 --- a/en/08_Changelogs/beta/5.0.0-beta1.md +++ /dev/null @@ -1,3098 +0,0 @@ ---- -title: 5.0.0-beta1 ---- - -# 5.0.0-beta1 - -This is the first beta release for Silverstripe CMS 5. This is a pre-release version of Silverstripe CMS 5. It is not suitable for a production environment. - -We are anticipating that we will tag a Silverstripe CMS 5 Release Candidate (RC) in March 2023 and a stable release in April 2023. - -## Overview - -- [About the Beta release](#about-the-beta-release) - - [Trying the beta](#trying-the-beta) - - [Reporting bugs](#reporting-bugs) - - [Change freeze](#change-freeze) - - [Known issues](#known-issues) -- [Upgrading your third party module](#upgrading-your-third-party-module) - - [Planning your upgrade](#planning-your-upgrade) - - [Stop using deprecated code](#stop-using-deprecated-code) - - [Upgrade your constraints](#upgrade-your-constraints) - - [Ship a Silverstripe CMS 5 version of your module](#ship-a-silverstripe-cms-5-version-of-your-module) -- [Change to commercially supported modules](#supported-modules) - - [Modules not supported going forward](#modules-not-supported-going-forward) -- [Fixed dependencies](#fixed-dependencies) -- [Dependency changes](#dependency-changes) - - [General changes](#dep-general) - - [TinyMCE upgraded from 4 to 6](#tinymce6) -- [Front-end build stack upgrades](#front-end) - - [Webpack config](#webpack-config) - - [Updated JavaScript dependencies](#updated-javascript-dependencies) - - [Common upgrade patterns](#common-upgrade-patterns) - - [Breaking changes in *our* JavaScript components or API](#js-api) -- [Other Breaking Changes](#other-breaking-changes) - - [URLs generated by Silverstripe CMS don't include a trailing slash by default](#trailing-slash) - - [CWP Agency Extensions](#cwp-agency-extensions) - - [silverstripe/security-extensions module is folded into core](#security-extensions-is-core) -- [Features and enhancements](#features-and-enhancements) - - [Extension changes](#extension-changes) - - [Other new features](#other-features) -- [Bugfixes](#bugfixes) -- [Environment variable changes](#environment-variable-changes) -- [API changes](#api-changes) - - [General changes](#api-general) - - [Email](#api-email) - - [ORM](#api-orm) - - [Templates](#templates) - - [Removed and changed API (by module, alphabetically)](#api-removed-and-changed) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.0.0-beta1 | -| bringyourownideas/silverstripe-maintenance | 3.0.0-beta1 | -| colymba/gridfield-bulk-editing-tools | 4.0.0-beta1 | -| cwp/agency-extensions | 3.0.0-beta1 | -| cwp/cwp | 3.0.0-beta1 | -| cwp/cwp-core | 3.0.0-beta1 | -| cwp/cwp-search | 2.0.0-beta1 | -| cwp/starter-theme | 4.0.0-beta1 | -| cwp/watea-theme | 4.0.0-beta1 | -| dnadesign/silverstripe-elemental | 5.0.0-beta1 | -| dnadesign/silverstripe-elemental-userforms | 4.0.0-beta1 | -| silverstripe/admin | 2.0.0-beta1 | -| silverstripe/asset-admin | 2.0.0-beta1 | -| silverstripe/assets | 2.0.0-beta1 | -| silverstripe/auditor | 3.0.0-beta1 | -| silverstripe/blog | 4.0.0-beta1 | -| silverstripe/campaign-admin | 2.0.0-beta1 | -| silverstripe/ckan-registry | 2.0.0-beta1 | -| silverstripe/cms | 5.0.0-beta1 | -| silverstripe/comment-notifications | 3.0.0-beta1 | -| silverstripe/comments | 4.0.0-beta1 | -| silverstripe/config | 2.0.0-beta1 | -| silverstripe/content-widget | 3.0.0-beta1 | -| silverstripe/contentreview | 5.0.0-beta1 | -| silverstripe/crontask | 3.0.0-beta1 | -| silverstripe/developer-docs | 5.0.0-beta1 | -| silverstripe/documentconverter | 3.0.0-beta1 | -| silverstripe/elemental-bannerblock | 3.0.0-beta1 | -| silverstripe/elemental-fileblock | 3.0.0-beta1 | -| silverstripe/environmentcheck | 3.0.0-beta1 | -| silverstripe/errorpage | 2.0.0-beta1 | -| silverstripe/externallinks | 3.0.0-beta1 | -| silverstripe/framework | 5.0.0-beta1 | -| silverstripe/fulltextsearch | 4.0.0-beta1 | -| silverstripe/graphql | 5.0.0-beta1 | -| silverstripe/gridfieldqueuedexport | 3.0.0-beta1 | -| silverstripe/hybridsessions | 3.0.0-beta1 | -| silverstripe/iframe | 3.0.0-beta1 | -| silverstripe/installer | 5.0.0-beta1 | -| silverstripe/ldap | 2.0.0-beta1 | -| silverstripe/login-forms | 5.0.0-beta1 | -| silverstripe/lumberjack | 3.0.0-beta1 | -| silverstripe/mfa | 5.0.0-beta1 | -| silverstripe/mimevalidator | 3.0.0-beta1 | -| silverstripe/realme | 5.0.0-beta1 | -| silverstripe/recipe-authoring-tools | 2.0.0-beta1 | -| silverstripe/recipe-blog | 2.0.0-beta1 | -| silverstripe/recipe-ccl | 3.0.0-beta1 | -| silverstripe/recipe-cms | 5.0.0-beta1 | -| silverstripe/recipe-collaboration | 2.0.0-beta1 | -| silverstripe/recipe-content-blocks | 3.0.0-beta1 | -| silverstripe/recipe-core | 5.0.0-beta1 | -| silverstripe/recipe-form-building | 2.0.0-beta1 | -| silverstripe/recipe-kitchen-sink | 5.0.0-beta1 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.0.0-beta1 | -| silverstripe/recipe-services | 2.0.0-beta1 | -| silverstripe/recipe-solr-search | 3.0.0-beta1 | -| silverstripe/registry | 3.0.0-beta1 | -| silverstripe/reports | 5.0.0-beta1 | -| silverstripe/restfulserver | 3.0.0-beta1 | -| silverstripe/securityreport | 3.0.0-beta1 | -| silverstripe/segment-field | 3.0.0-beta1 | -| silverstripe/session-manager | 2.0.0-beta1 | -| silverstripe/sharedraftcontent | 3.0.0-beta1 | -| silverstripe/silverstripe-fluent | 7.0.0-beta1 | -| silverstripe/siteconfig | 5.0.0-beta1 | -| silverstripe/sitewidecontent-report | 4.0.0-beta1 | -| silverstripe/spamprotection | 4.0.0-beta1 | -| silverstripe/staticpublishqueue | 6.0.0-beta1 | -| silverstripe/subsites | 3.0.0-beta1 | -| silverstripe/tagfield | 3.0.0-beta1 | -| silverstripe/taxonomy | 3.0.0-beta1 | -| silverstripe/textextraction | 4.0.0-beta1 | -| silverstripe/totp-authenticator | 5.0.0-beta1 | -| silverstripe/userforms | 6.0.0-beta1 | -| silverstripe/vendor-plugin | 2.0.0 | -| silverstripe/versioned | 2.0.0-beta1 | -| silverstripe/versioned-admin | 2.0.0-beta1 | -| silverstripe/versionfeed | 3.0.0-beta1 | -| silverstripe/webauthn-authenticator | 5.0.0-beta1 | -| silverstripe/widgets | 3.0.0-beta1 | -| symbiote/silverstripe-advancedworkflow | 6.0.0-beta1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.0-beta1 | -| symbiote/silverstripe-multivaluefield | 6.0.0-beta1 | -| symbiote/silverstripe-queuedjobs | 5.0.0-beta1 | - -
- -## About the beta release {#about-the-beta-release} - -### Trying the beta {#trying-the-beta} - -Creating a Silverstripe CMS 5 test project is just as easy as with Silverstripe CMS 4. Simply run this command to try out the Silverstripe CMS 5 beta. - -```bash -composer create-project silverstripe/installer:5.0.0-beta1 my-site -``` - -Silverstripe CMS 5 requires at least PHP 8.1. - -Review the [Server Requirements](/getting_started/server_requirements) for all the details. - -### Reporting bugs {#reporting-bugs} - -If you find a bugs in the beta, report it by creating an issue against the relevant GitHub repository. Prefix the title of your issue with "CMS5-beta" to make it easier for our development team to identify it. - -Look at [Reporting Bugs](/contributing/issues_and_bugs) for more informations. - -After creating an issue, maybe have a go at creating a pull request to fix it. Remember to link back your pull request to a matching issue to help the CMS development team review your work. - -Read our [Contributing Code](/contributing/code/) documentation for more details on opening pull requests. - -### Change freeze {#change-freeze} - -Now that the Silverstripe CMS 5 beta has been tagged, our aim is to: - -- make no further breaking API changes to the CMS5 codebase -- have all supported dependencies upgraded to a supported major version. - -We recognize that beta testing may bring to our attention bugs or problems that can not be easily remedied without a breaking API change. - -We will only consider merging post-beta breaking API changes if they are necessary to address a high impact flaw in the CMS5 code base. Each of those breaking API changes will have to be individually approved by the CMS Squad team lead. - -Non-breaking API changes and enhancements may be merged after the initial CMS 5 beta release. - -### Known issues {#known-issues} - -The Silverstripe CMS 5 beta 1 release contains several known regressions. We'll aim to address those prior the Silverstripe CMS 5 Release candidate. There are likely also other regressions we have yet to find. - -#### Regressions - -- [JavaScript CI tests are broken](https://github.com/silverstripe/silverstripe-admin/issues/1421) -- [React context no longer has "You have unsaved changes" confirm dialog](https://github.com/silverstripe/silverstripe-admin/issues/1409) -- [Cannot delete image in WYSIWYG with delete button](https://github.com/silverstripe/silverstripe-admin/issues/1410) -- [Console error whenever a toast pops up](https://github.com/silverstripe/silverstripe-admin/issues/1412) - -#### Build failures - -Some modules are failing one or more Continuous Integration job. We've looked at these and decided that none of the failures are critical or warrants holding back the beta release. These are all either problems with out CI build system itself or indications of non-critical regressions. - -- silverstripe/asset-admin [![CI](https://github.com/silverstripe/silverstripe-asset-admin/actions/workflows/ci.yml/badge.svg?branch=2)](https://github.com/silverstripe/silverstripe-asset-admin/actions/workflows/ci.yml) -- silverstripe/graphql [![CI](https://github.com/silverstripe/silverstripe-graphql/actions/workflows/ci.yml/badge.svg?branch=5)](https://github.com/silverstripe/silverstripe-graphql/actions/workflows/ci.yml) -- silverstripe/campaign-admin [![CI](https://github.com/silverstripe/silverstripe-campaign-admin/actions/workflows/ci.yml/badge.svg?branch=2)](https://github.com/silverstripe/silverstripe-campaign-admin/actions/workflows/ci.yml) -- silverstripe/cms [![CI](https://github.com/silverstripe/silverstripe-cms/actions/workflows/ci.yml/badge.svg?branch=5)](https://github.com/silverstripe/silverstripe-cms/actions/workflows/ci.yml) -- silerstripe/installer [![CI](https://github.com/silverstripe/silverstripe-installer/actions/workflows/ci.yml/badge.svg?branch=5)](https://github.com/silverstripe/silverstripe-installer/actions/workflows/ci.yml) -- silverstripe/recipe-core [![CI](https://github.com/silverstripe/recipe-core/actions/workflows/ci.yml/badge.svg?branch=5)](https://github.com/silverstripe/recipe-core/actions/workflows/ci.yml) -- silverstripe/session-manager [![CI](https://github.com/silverstripe/silverstripe-session-manager/actions/workflows/ci.yml/badge.svg?branch=2)](https://github.com/silverstripe/silverstripe-session-manager/actions/workflows/ci.yml) -- silverstripe/staticpublishqueue [![CI](https://github.com/silverstripe/silverstripe-registry/actions/workflows/ci.yml/badge.svg?branch=3)](https://github.com/silverstripe/silverstripe-registry/actions/workflows/ci.yml) -- silverstripe/versionned-admin [![CI](https://github.com/silverstripe/silverstripe-versioned-admin/actions/workflows/ci.yml/badge.svg?branch=2)](https://github.com/silverstripe/silverstripe-versioned-admin/actions/workflows/ci.yml) - -#### Other issues - -The CMS 5 compatible version of `tractorcow/silverstripe-fluent` is temporarily being released under `silverstripe/silverstripe-fluent`. - -View the [Silverstripe CMS 5 compatibility](https://github.com/tractorcow-farm/silverstripe-fluent/issues/776) issue on the Fluent repository for progress. - -## Upgrading your third party module {#upgrading-your-third-party-module} - -One of the primary purposes of the beta testing phase is to give third party maintainers and developers an opportunity to upgrade their modules to be compatible with Silverstripe CMS 5. - -### Planning your upgrade {#planning-your-upgrade} - -You should decide if you intend to do a new major release of your module to add support for Silverstripe CMS 5. - -Most of the key Silverstripe CMS APIs have not changed between CMS 4 and CMS 5. That said, take time to read this changelog to identify changes that might be problematic for your project. - -Depending on how complex your module is, it may be completely practical to create a version that works with both Silverstripe CMS 4 and Silverstripe CMS 5. We do not necessarily recommend this approach as it may require you to tag a major release later on if you want to make use of new Silverstripe CMS 5 features later on. But you may wish to consider this approach to minimise your maintenance burden. - -If you decide that you want to maintain distinct Silverstripe CMS 4 and Silverstripe CMS 5 versions of your module, then you should create a new branch from your current development branch. - -For example, let's assume your CMS 4 branch is called `main` and the current stable release of your module is `3.2.1`: - -- Create a new `3` branch from `main`. This branch will be used to tag future releases of your modules for CMS 4. -- `main` will now be used to release a CMS 5 version of your module. All CMS 5 upgrade commits should be merged in `main`. -- To patch bugs against both the CMS 4 and CMS 5 versions of your module, merge the fix in the `3` branch. Then merge the `3` branch into `main`. - -> [!NOTE] -> If the name of your branch is a number, composer will allow it to be installed as an unstable tag. e.g.: If your module has a `7` branch, composer will alias the `HEAD` of that branch as `7.x-dev`. This will satisfy a constraint like `^7`. This is especially useful for some development pipelines and for running tests in a continuous integration environment like GitHub Actions. - -### Stop using deprecated code {#stop-using-deprecated-code} - -A good way to identify which APIs need to be updated is to [enable deprecation warnings](/Upgrading/Deprecations) and run your module in a fresh project using the latest Silverstripe CMS 4 release. This will let you remove any references to deprecated APIs in the Silverstripe CMS 4 version of your module. - -If you intend to remove some APIs in the Silverstripe CMS 5 version of your module, consider [adding deprecation warnings](/contributing/release_process#deprecating-api) to the Silverstripe CMS 4 version. This will simplify the upgrade process for projects using your module. - -### Upgrade your constraints {#upgrade-your-constraints} - -Upgrade your composer requirement constraints to allow the installation of Silverstripe CMS 5 module. If your module has dual support for Silverstripe CMS 4 and 5, you'll want to use a constraint similar to: - -```json -"require": { - "silverstripe/framework": "^4 || ^5", - "silverstripe/cms": "^4 || ^5", - "silverstripe/admin": "^1 || ^2" -} -``` - -Otherwise, simply increment your existing constraints to target the Silverstripe CMS 5 version of our modules. - -### Ship a Silverstripe CMS 5 version of your module {#ship-a-silverstripe-cms-5-version-of-your-module} - -You should ideally test your module against at least one real Silverstripe CMS 5 project to identify and fix real-world problems. Consider tagging a beta release to give your users a chance to test drive your module with the Silverstripe CMS 5 beta. This will both help you resolve any regressions you hadn't found yourself and give your users a chance to update any modules *they* might have which rely on yours. - -## Change to commercially supported modules {#supported-modules} - -Some Silverstripe CMS modules are commercially supported. Silverstripe commits to looking after those modules for the duration of the Silverstripe CMS 5 lifecycle. - -Review the list of [Commercially Supported Modules for Silverstripe CMS 5](/project_governance/supported_modules). - -### Modules not supported going forward {#modules-not-supported-going-forward} - -Some modules that were commercially supported in Silverstripe CMS 4 will not be supported in Silverstripe CMS 5. Some of those modules will provide CMS5-compatible versions which will be tagged during this release. Others will be dropped altogether. - -Just because a module is not "commercially supported", doesn't mean that you shouldn't be using it. Community supported modules are maintained on a "best-effort" basis. You should take this into consideration when choosing to install a community supported module in your project. - -Email [community@silverstripe.org](mailto:community@silverstripe.org) if you are keen to help maintain some of the modules that will no longer be commercially supported. - -Module | Status | Notes --- | -- | -- -[bringyourownideas/silverstripe-composer-security-checker](https://packagist.org/packages/bringyourownideas/silverstripe-composer-security-checker) | Dropped | Underlying service has been discontinued. -[composer/installers](https://packagist.org/packages/composer/installers) | Removed | Calling Composer a "supported module" was nonsensical. The Silverstripe CMS development team has no access to manage Composer or the underlying Packagist service. Composer is a development tool required to build Silverstripe CMS sites, not a module maintained by Silverstripe. | -[cwp-themes/default](https://packagist.org/packages/cwp-themes/default) | Dropped | -[cwp/cwp](https://packagist.org/packages/cwp/cwp) | CMS5 compatible without commercial support | -[cwp/cwp-core](https://packagist.org/packages/cwp/cwp-core) | CMS5 compatible without commercial support | -[cwp/cwp-pdfexport](https://packagist.org/packages/cwp/cwp-pdfexport) | Dropped | -[cwp/cwp-search](https://packagist.org/packages/cwp/cwp-search) | CMS5 compatible without commercial support | -[dnadesign/silverstripe-elemental-subsites](https://packagist.org/packages/dnadesign/silverstripe-elemental-subsites) | Dropped | Elemental works fine with Subsite out-of-the-box. -[hafriedlander/phockito](https://packagist.org/packages/hafriedlander/phockito) | Dropped | -[hafriedlander/silverstripe-phockito](https://packagist.org/packages/hafriedlander/silverstripe-phockito) | Dropped | -[lekoala/silverstripe-debugbar](https://packagist.org/packages/lekoala/silverstripe-debugbar) | CMS5 compatible without commercial support | Debug bar is a development tool that should not be installed in production. -[silverstripe/activedirectory](https://packagist.org/packages/silverstripe/activedirectory) | Dropped | -[silverstripe/akismet](https://packagist.org/packages/silverstripe/akismet) | Dropped | The parent library is outdated and there are better alternatives like [UndefinedOffset/silverstripe-nocaptcha](https://packagist.org/packages/undefinedoffset/silverstripe-nocaptcha) -[silverstripe/behat-extension](https://packagist.org/packages/silverstripe/behat-extension) | CMS5 compatible without commercial support | -[silverstripe/ckan-registry](https://packagist.org/packages/silverstripe/ckan-registry) | CMS5 compatible without commercial support | -[silverstripe/comment-notifications](https://packagist.org/packages/silverstripe/comment-notifications) | CMS5 compatible without commercial support | -[silverstripe/comments](https://packagist.org/packages/silverstripe/comments) | CMS5 compatible without commercial support | -[silverstripe/content-widget](https://packagist.org/packages/silverstripe/content-widget) | CMS5 compatible without commercial support | -[silverstripe/fulltextsearch](https://packagist.org/packages/silverstripe/fulltextsearch) | CMS5 compatible without commercial support | -[silverstripe/graphql-devtools](https://packagist.org/packages/silverstripe/graphql-devtools) | CMS5 compatible without commercial support | -[silverstripe/html5](https://packagist.org/packages/silverstripe/html5) | Folded back in core | -[silverstripe/postgresql](https://packagist.org/packages/silverstripe/postgresql) | CMS5 compatible without commercial support | -[silverstripe/recipe-ccl](https://packagist.org/packages/silverstripe/recipe-ccl) | CMS5 compatible without commercial support | -[silverstripe/recipe-solr-search](https://packagist.org/packages/silverstripe/recipe-solr-search) | CMS5 compatible without commercial support | -[silverstripe/security-extensions](https://packagist.org/packages/silverstripe/security-extensions) | Folded back in core | -[silverstripe/spellcheck](https://packagist.org/packages/silverstripe/spellcheck) | Dropped | -[silverstripe/sqlite3](https://packagist.org/packages/silverstripe/sqlite3) | CMS5 compatible without commercial support | -[silverstripe/widgets](https://packagist.org/packages/silverstripe/widgets) | CMS5 compatible without commercial support | -[tijsverkoyen/akismet](https://packagist.org/packages/tijsverkoyen/akismet) | Dropped | -[tractorcow/classproxy](https://packagist.org/packages/tractorcow/classproxy) | CMS5 compatible without commercial support | -[tractorcow/silverstripe-proxy-db](https://packagist.org/packages/tractorcow/silverstripe-proxy-db) | CMS5 compatible without commercial support | -[undefinedoffset/sortablegridfield](https://packagist.org/packages/undefinedoffset/sortablegridfield) | Dropped | [symbiote/silverstripe-gridfieldextensions](https://packagist.org/packages/symbiote/silverstripe-gridfieldextensions) provides equivalent functionality. - -## Fixed dependencies {#fixed-dependencies} - -Silverstripe CMS relies on third party dependencies to implement many features. We have defined several *fixed dependencies* to provide certainty to Silverstripe CMS project owners and minimise the risk of composer conflicts. These dependencies will not be upgraded to new major versions within the Silverstripe CMS 5 release line. - -Review [Silverstripe CMS 5 fixed dependencies](/project_governance/fixed_dependencies) for more details. - -## Dependency changes {#dependency-changes} - -### General changes {#dep-general} - -- `swiftmailer/swiftmailer` has been removed and replaced with `symfony/mailer` -- Various Symfony dependencies have been upgraded from 4.x to 6.x. A small number of code changes were made in `silverstripe/framework` to work with the symfony 6.x dependencies. -- `silverstripe/graphql` v3 is no longer supported. It is recommended that you ensure you are using `silverstripe/graphl` v4 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. There is [documentation for the upgrade process here](https://docs.silverstripe.org/en/4/upgrading/upgrading_to_graphql_4/). -- PHPUnit 5.7 is no longer supported. It is recommended that you ensure your tests are running with PHPUnit 9 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. There is [documentation for the upgrade process here](https://docs.silverstripe.org/en/4/upgrading/phpunit9/). -- `masterminds/html5` is now used to parse HTML content instead of `DomDocument::loadHTML()`. This may cause slight changes in rendered content if the content being saved contains invalid HTML. The optional module `silverstripe/html5` is no longer required for rendering HTML 5 content. - -### TinyMCE upgraded from 4 to 6 {#tinymce6} - -TinyMCE has been upgraded up two major versions from 4 to 6. The API for [`HTMLEditorConfig`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorConfig) and [`TinyMCEConfig`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig) haven't changed at all, but there have been some changes to plugins and options which may affect your projects. Here are some notable changes: - -- The `styleselect` option for selecting a CSS style has changed to `styles`. -- The `spellchecker` plugin is now a premium "[Spell Checker Pro](https://www.tiny.cloud/docs/tinymce/6/introduction-to-tiny-spellchecker/)" plugin through TinyMCE cloud (though the `browser_spellcheck` options still works and is enabled by default). -- The *paste from Microsoft Word* functionality is now part of a premium "[PowerPaste](https://www.tiny.cloud/docs/tinymce/6/introduction-to-powerpaste/)" plugin through TinyMCE cloud. - - There is an [open call for maintainers](https://github.com/tinymce/tinymce/discussions/7487) for converting the old functionality into a new open source plugin. -- The UI API has changed, which will affect any custom plugins you may be using. Notably: - - most `addX()` functions have been moved from `editor` to `editor.ui.registry` - e.g. `editor.addButton()` is now `editor.ui.registry.addButton()`. - - `onclick` functions on buttons have been changed to `onAction`. - -There were a lot more changes than just those, so you may want to also check out the following resources: - -- [Docs for upgrading from 4 to 5](https://www.tiny.cloud/docs/migration-from-4x/) -- [Docs for upgrading from 5 to 6](https://www.tiny.cloud/docs/tinymce/6/migration-from-5x/) -- [List of open source plugins for TinyMCE 6](https://www.tiny.cloud/docs/tinymce/6/plugins/#open-source-plugins) -- [List of toolbar buttons available for TinyMCE 6](https://www.tiny.cloud/docs/tinymce/6/available-toolbar-buttons/) -- [Create a plugin](https://www.tiny.cloud/docs/tinymce/6/creating-a-plugin/) - -## Front-end build stack upgrades {#front-end} - -> [!NOTE] -> "Front-end" in this section refers to the JavaScript and CSS in the CMS. It doesn't have any impact on your website's public-facing front-end. - -We've upgraded the front-end build stack for the CMS, along with most of the JavaScript dependencies. - -### Webpack config {#webpack-config} - -The [`@silverstripe/webpack-config`](https://www.npmjs.com/package/@silverstripe/webpack-config) and [`@silverstripe/eslint-config`](https://www.npmjs.com/package/@silverstripe/eslint-config) NPM libraries, along with the build stack for all supported modules, has been updated to be compatible with node 18 and webpack 5. This will only impact you if your module or project uses one or both of those NPM packages - you will need to make sure you update your own dependencies to be compatible with them, along with the dependencies listed below if you use them. - -With this comes a change to the API for `@silverstripe/webpack-config`. There is a new (optional) abstracted API for declaring the webpack config for transpiling the JavaScript and CSS for your CMS customisations, which has been documented extensively in the readme for that library. - -You can continue to use the old API if you want to, but you will need to account for the following breaking changes: - -- The `UglifyJsPlugin` is no longer used to remove comments from transpiled code. Refer to the `optimisation` config in [the abstracted JavascriptWebpackConfig class](https://github.com/silverstripe/webpack-config/blob/2/configMeta/javascriptWebpackConfig.js) instead. -- `script-loader`, `file-loader`, and `url-loader` have all been replaced with the relevant [webpack assets](https://webpack.js.org/guides/asset-modules/) configuration. -- `ExtractTextPlugin` and its associated configuration has been replaced with `MiniCssExtractPlugin`. -- Supported browser configuration has been replaced with setting an appropriate [browserslist](https://browsersl.ist) configuration in your `package.json` file. - -### Updated JavaScript dependencies {#updated-javascript-dependencies} - -The following JavaScript dependencies (which are used in the CMS, and may impact your customisations) have been updated to new major versions, or replaced: - -|old package and version|new package and version|upgrade guide| -|---|---|---| -|apollo-client `^2.3.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-cache-inmemory `^1.2.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link `^1.2.2`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-batch-HTTP `^1.2.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-error `^1.0.9`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-HTTP `^1.5.4`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-state `^0.4.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|GraphQL `^14.0.0`|GraphQL `^16.6.0`|[GitHub changelog][graphql-changelog]| -|merge `^1.2.1`|merge `^2.1.1`|N/A| -|react `^16.6.1`|react `^18.2.0`|[upgrade guide][react-guide]| -|react-apollo `^2.1.0`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|react-redux `^5.0.7`|react-redux `^8.0.5`|[GitHub changelog][react-redux-changelog]| -|react-router `^4.4.0`|react-router `^6.4.2`|[upgrade guide][react-router-guide]| -|react-router-config `^4.4.0`|react-router `^6.4.2`|[upgrade guide][react-router-guide]| -|react-router-dom `^4.4.0`|react-router-dom `^6.4.2`|[upgrade guide][react-router-guide]| -|react-select `^1.3`|react-select `^5.5.8`|[upgrade guides][react-select-guide]| -|redux-form `^7.4.2`|redux-form `^8.3.8`|[GitHub changelogs][react-form-changelog]| -|validator `^6.1.0`|validator `^13.7.0`|[changelog][validator-changelog]| -|dropzone `^5.7.2`|dropdown `^6.0.0-beta.2`|[changelog][dropzone-changelog]| - -[apollo-guide]: https://www.apollographql.com/docs/react/migrating/apollo-client-3-migration -[graphql-changelog]: https://github.com/graphql/graphql-js/releases/tag/v16.0.0 -[react-guide]: https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html -[react-router-guide]: https://github.com/remix-run/react-router/blob/main/docs/upgrading/v5.md -[react-select-guide]: https://react-select.com/upgrade -[react-form-changelog]: https://github.com/redux-form/redux-form/releases/tag/v8.0.0 -[validator-changelog]: https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md -[dropzone-changelog]: https://github.com/dropzone/dropzone/blob/main/CHANGELOG.md -[react-redux-changelog]: https://github.com/reduxjs/react-redux/releases - -### Common upgrade patterns {#common-upgrade-patterns} - -While upgrading core modules, there were a few common patterns we found that might be useful for you. Those are listed here for your convenience. - -#### `ReactDOM.render()` replaced with `ReactDOM.createRoot().render()` - -If you are injecting a React component in a section of the CMS that uses entwine, you likely have something like this: - -```js -import React from 'react'; -import ReactDOM from 'react-dom'; - -$('.grid-field').entwine({ - onmatch() { - ReactDOM.render(, this[0]); - }, - - onunmatch() { - const container = this[0]; - if (container) { - ReactDOM.unmountComponentAtNode(container); - } - }, -}); -``` - -Instead of using `ReactDOM.render()`, you should now call `ReactDOM.createRoot().render()` - but if you try to use `createRoot()` multiple times on the same element, react will complain, so you'll want to keep a reference to the root you made the first time. The above example turns into this: - -```js -import React from 'react'; -import ReactDOM from 'react-dom'; - -$('.grid-field').entwine({ - ReactRoot: null, - - onmatch() { - let root = this.getReactRoot(); - if (!root) { - root = ReactDOM.createRoot(this[0]); - } - root.render(); - this.setReactRoot(root); - }, - - onunmatch() { - const root = this.getReactRoot(); - if (root) { - root.unmount(); - this.setReactRoot(null); - } - }, -}); -``` - -#### React route paths are now relative to their parent routes - -The update to `react-router` has changed the paths for routes in react-only sections of the CMS (such as /admin/assets) to be relative to the parent routes. If you have a custom react CMS section, you'll need to make sure you're using the relative path. This is included as `reactRoutePath` in the array returned by [`LeftAndMain::getClientConfig()`](api:SilverStripe\Admin\LeftAndMain::getClientConfig()) by default, but you may need to double check your custom admin section is returning the correct value. - -Then, in your JavaScript implementation where you are adding your route to the `ReactRouteRegister`, simple change your route's path from using the `url` key to use the new `reactRoutePath` key. - -```diff - import ConfigHelpers from 'lib/Config'; - import reactRouteRegister from 'lib/ReactRouteRegister'; - import MyAdmin from './MyAdmin'; - - document.addEventListener('DOMContentLoaded', () => { - const sectionConfig = ConfigHelpers.getSection('MyAdmin'); - reactRouteRegister.add({ -- path: sectionConfig.url, -+ path: sectionConfig.reactRoutePath, - component: MyAdminComponent, - }); - }); -``` - -#### `react-router` no longer has a `withRouter` HOC - -In the old version of react-router, the `withRouter` Higher Order Component could be used to wrap your component which needs access to the router and its functionality. - -This has been removed. The ideal way to upgrade will be to rewrite your components to work with the new API as per the upgrade guide referenced in the table above. - -If you don't have time or resources to rewrite your components, we do have a temporary solution for you - but bear in mind that this is just kicking the can down the road. You *will* have to upgrade to use the new react-router API eventually. - -Silverstripe CMS 5 includes a replacement `withRouter` Higher Order Component that you can use until you have the resources necessary to upgrade properly. It passes different props than the old one did, so you will still need to make some changes. For example: - -```js -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; -import { withRouter } from 'react-router-dom'; - -class MyAdmin extends Component { - // Your implementation here -} - -MyAdmin.propTypes = { - location: PropTypes.shape({ - pathname: PropTypes.string, - query: PropTypes.object, - search: PropTypes.string, - }), - match: PropTypes.shape({ - params: PropTypes.shape({ - view: PropTypes.string, - id: PropTypes.number, - }), - }), - // eslint-disable-next-line react/no-unused-prop-types - history: PropTypes.object, -}; - -export default withRouter(MyAdmin); -``` - -The above expects the `match` and `history` props from the `withRouter` HOC. These are no longer passed. What's more, you don't have to declare your own proptypes, we've exported that for you. The above now becomes this: - -```js -import React, { Component } from 'react'; -import withRouter, { routerPropTypes } from 'lib/withRouter'; - -class MyAdmin extends Component { - // Your implementation here -} - -MyAdmin.propTypes = { - // eslint-disable-next-line react/no-unused-prop-types - router: routerPropTypes, -}; - -export default withRouter(MyAdmin); -``` - -The new props that our `withRouter` HOC passes in is a single prop called `router` which has the following `PropTypes` definition: - -```js -PropTypes.shape({ - location: PropTypes.shape({ - pathname: PropTypes.string, - query: PropTypes.object, - search: PropTypes.string, - }), - navigate: PropTypes.func, - params: PropTypes.object, -}); -``` - -`router.params` is a one-to-one replacement for the old `match.params`, and `router.location` is a one-to-one replacement for the old `location` prop. - -Refer to the upgrade guide from the table above to learn how to replace the old `history` prop with the new `router.navigate` prop. - -### Breaking changes in *our* JavaScript components or API {#js-api} - -For the most part we were able to retain our existing API and not make any drastic changes to our react components through upgrading our dependencies, but there was one notable exception. - -To conform with the API changes in the new version of `react-select`, the `TreeDropdownField` component has changed considerably, and the `TreeDropdownFieldMenu` component has been removed entirely. - -If you were customising the `TreeDropdownField` React component at all or injecting a custom version of `TreeDropdownFieldMenu`, you will want to take a look at the source code for the `TreeDropdownField` component and maybe have a look at the upgrade guides for `react-select` referenced in the table above to see what changes you need to make. - -Some of the CSS classes related to `TreeDropdownField` have also changed, as a result of the upgrade to `react-select`. - -## Other breaking changes {#other-breaking-changes} - -### URLs generated by Silverstripe CMS don't include a trailing slash by default {#trailing-slash} - -The URLs generated by Silverstripe CMS have previously been inconsistent as to whether a trailing slash is included or not. This lead to the creation of [at least one module](https://github.com/axllent/silverstripe-trailing-slash) which normalises the trailing slash at the end of URLs. - -By default, all URLs created by Silverstripe CMS will now *not* end with a slash. You can configure this to instead explicitly add a trailing slash to all URLs with the following YML configuration: - -```yml -SilverStripe\Control\Controller: - add_trailing_slash: true -``` - -> [!WARNING] -> Because this can be controlled with configuration, it is best practice to avoid explicitly expecting a trailing slash to either be present or be omitted. -> -> In PHP, you can use methods like [`Controller::join_links()`](api:SilverStripe\Control\Controller::join_links()) or [`Controller::normaliseTrailingSlash()`](api:SilverStripe\Control\Controller::normaliseTrailingSlash()). In JavaScript in your CMS customisations, we recommend using using the `joinUrlPaths()` utility function `silverstripe/admin` which you can access with `import { joinUrlPaths } from 'lib/urls;` if your project uses [@silverstripe/webpack-config](https://www.npmjs.com/package/@silverstripe/webpack-config). In your templates, you should use appropriate methods from your controller or model such as [`SiteTree::Link()`](api:SilverStripe\CMS\Model\SiteTree::Link()) which uses `Controller::join_links()` under the hood. - -The [`CanonicalURLMiddleware`](api:SilverStripe\Control\Middleware\CanonicalURLMiddleware) will also, by default, redirect traffic to include or omit the trailing slash according to the above configuration. By default, this means that traffic directed to `/about-us/` will be redirected to `/about-us`. You can disable this behaviour with the following YML configuration: - -```yml -SilverStripe\Core\Injector\Injector: - SilverStripe\Control\Middleware\CanonicalURLMiddleware: - properties: - enforceTrailingSlashConfig: false -``` - -> [!NOTE] -> Redirects will not be performed for any route starting with `admin/` or `dev/` by default. You can configure this, as well as exclude specific user agents from being redirected, with the following YML configuration: -> -> ```yml -> SilverStripe\Core\Injector\Injector: -> SilverStripe\Control\Middleware\CanonicalURLMiddleware: -> properties: -> enforceTrailingSlashConfigIgnorePaths: -> - 'my-ajax-controller/' -> enforceTrailingSlashConfigIgnoreUserAgents: -> - 'my-dev-user-agent' -> ``` - -### CWP agency extensions {#cwp-agency-extensions} - -The [cwp/agency-extensions](https://github.com/silverstripe/cwp-agencyextensions) module used to provide a Font Awesome v4 plugin for TinyMCE 4. This plugin is not compatible with TinyMCE 6 and we couldn't see an appropriate alternative plugin to use instead. The fact that such a replacement doesn't seem to exist in the wild suggests to us that the use-case is very narrow, so we have opted to remove this plugin without replacing it. - -If your project has no content which used the Font Awesome plugin provided by this module, you don't need to make any changes - though you can remove the `CWP_AGENCY_DISABLE_FONTAWESOME_PLUGIN` environment variable from your `.env` file if it was set. - -If your project does have some content which contains Font Awesome icons from that plugin, you will need to set `CWP_AGENCY_ENABLE_FONTAWESOME_STYLES` to true in your environment variables. This will allow you to see the existing icons in the TinyMCE field in the CMS, as well as ensuring that they will not be removed when you save content. The front-end will not be impacted, as you already had to inject an appropriate stylesheet into the front-end for the icons to appear there. - -If you cannot set environment variables in your project, you can set the following configuration manually in your project: - -```php -// app/_config.php -use SilverStripe\Forms\HTMLEditor\TinyMCEConfig; - -TinyMCEConfig::get('cwp')->setOption( - 'extended_valid_elements', - $cwpEditor->getOption('extended_valid_elements') - . ',span[class|align|style|aria-hidden]' -); -``` - -```yml -# app/_config/font-awesome.yml -SilverStripe\Forms\HTMLEditor\TinyMCEConfig: - editor_css: - - "https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" -``` - -If you need the ability to add icons in your content, a suitable alternative may be the [emoticons plugin for TinyMCE 6](https://www.tiny.cloud/docs/plugins/opensource/emoticons/). You can compare the icons provided by that plugin with the [icons in Font Awesome v4](https://fontawesome.com/v4/icons/) to see if it would be a suitable replacement for your project. - -### `silverstripe/security-extensions` module is folded into core {#security-extensions-is-core} - -The functionality from [silverstripe/security-extensions](https://github.com/silverstripe/silverstripe-security-extensions) has been folded into the core modules. This means you no longer need to install that module to benefit from the features it provided - and indeed there will not be a CMS 5 compatible version of that module. If you have `silverstripe/security-extensions` as a dependency in your composer.json file, you will need to remove it. - -With this change you now have access to the following features: - -#### Require password change on next log in - -Administrators with the ability to administer members can see a checkbox in the CMS under the area to set the member's password. Checking this box will set the password expiry to the current date, meaning the next time the member logs in they will be required to choose a new password for their account. - -No change is made when setting this field and the password is already expired for auditing purposes (an administrator could see how long ago a password expired). Similarly no change is made when unsetting this field and the expiry date is in the future, it should remain so - the checkbox is for immediately requiring a new password on the *next* log in. - -See the [secure coding section](/developer_guides/security/secure_coding/#other-options) for information about setting the password expiry itself, or the ["Changing and managing users" user help guide](https://userhelp.silverstripe.org/en/5/managing_your_website/changing_and_managing_users/#changing-a-user-s-password) to see how this appears to the user. - -#### Sudo mode - -Sudo mode represents a heightened level of permission in that you are more certain that the current user is actually the person whose account is logged in. This is performed by re-validating that the account's password is correct, and will then last for a certain amount of time (configurable) until it will be checked again. - -Out of the box this is currently only used by the [silverstripe/mfa](https://github.com/silverstripe/silverstripe-mfa) module - see [MAnaging your MFA settings](https://userhelp.silverstripe.org/en/5/optional_features/multi-factor_authentication/user_manual/managing_your_mfa_settings/#managing-your-mfa-settings) - but you can use it in your own projects as well. Read the [Sudo Mode documentation](/developer_guides/security/sudo_mode/) to find out how. - -Note that as part of this change the namespaces of several classes changed. Refer to the table below if you were referring to these classes (e.g. to set configuration values or replace classes via dependency injection). - -|Old namespace|New namespace| -|---|---| -|`SilverStripe\SecurityExtensions\Control\SudoModeController`|[`SilverStripe\Admin\SudoModeController`](api:SilverStripe\Admin\SudoModeController)| -|`SilverStripe\SecurityExtensions\Service\SudoModeService`|[`SilverStripe\Security\SudoMode\SudoModeService`](api:SilverStripe\Security\SudoMode\SudoModeService)| -|`SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface`|[`SilverStripe\Security\SudoMode\SudoModeServiceInterface`](api:SilverStripe\Security\SudoMode\SudoModeServiceInterface)| - -## Features and enhancements {#features-and-enhancements} - -### Extension changes {#extension-changes} - -[Extension](api:SilverStripe\Core\Extension) classes don't expose `protected` methods, but they *can* be used for extension hooks. This reduces the surface of methods exposed from your extensions into `Extensible` classes. For example, you might have a `protected function updateCMSFields()` method which will be called after writing some `DataObject` - but because this method is `protected`, it *cannot* be accessed directly from the `DataObject` instances. You can however still expose some method from the `Extension` by making it `public` - and that method *can* be accessed directly from the `DataObject` instances. - -When invoking an extension hook (e.g. via `extend()`), methods prefixed with "extend" will take precedence. i.e. if an `Extension` class has a `onAfterWrite()` method and an `extendOnAfterWrite()` method and I call `$this->extend('onAfterWrite')` - the `extendOnAfterWrite()` method on that `Extension` will be called, and `onAfterWrite()` will not. -This empowers advanced `Extension` functionality such as [Versioned::canPublish()](api:SilverStripe\Versioned\Versioned::canPublish()) which invokes `$owner->extendedCan('canPublish')` but doesn't result in a cycle, because the same class also implements [extendCanPublish()](api:SilverStripe\Versioned\Versioned::extendCanPublish()). - -### Other new features {#other-features} - -- [`DataObject::get_one()`](api:SilverStripe\ORM\DataObject::get_one()) can now be called directly from subclasses of `DataObject` without passing in a class as the first argument (e.g. `SiteTree::get_one(filter: ['Title:startsWith' => 'About'])`). -- The elemental [TopPage DataExtension](api:DNADesign\Elemental\TopPage\DataExtension) is applied to [`BaseElement`](api:DNADesign\Elemental\Models\BaseElement) and [`ElementalArea`](api:DNADesign\Elemental\Models\ElementalArea) by default, and the corresponding [`SiteTreeExtension`](api:DNADesign\Elemental\TopPage\SiteTreeExtension) is applied to [`SiteTree`](api:SilverStripe\CMS\Model\SiteTree) by default. This allows you to use `$TopPage` in your elemental block templates as a more performant alternative to `$Page` when referring to the page the element belongs to. -- Void HTML elements such as `` are no longer rendered as self-closing tags e.g. `bar` is now rendered, previously `bar` was rendered. - -## Bugfixes {#bugfixes} - -- If a page which is a child of a root-level page gets archived, and then its former parent is removed, it can only be restored if `can_be_root` for that page's class is true. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -## Environment variable changes {#environment-variable-changes} - -- `SS_MANIFESTCACHE` can no longer use the now removed symfony/cache 4.x "Simple" cache classes e.g. `Symfony\Component\Cache\Simple\PhpFilesCache`. Instead use the corresponding "Adapter" class e.g. `Symfony\Component\Cache\Adapter\PhpFilesAdapter`. -- `APP_SMTP_USERNAME` and `APP_SMTP_PASSWORD` have been removed. Use a `MAILER_DSN` environment variable instead to configure SMTP email (see [the email documentation](/developer_guides/email/) for more details). - -## API changes {#api-changes} - -This is a major release and contains many breaking API changes. Deprecation warnings have been added to the latest Silverstripe CMS 4 release to advise you of APIs that have been removed in Silverstripe CMS 5. - -[Enable deprecation warnings](/upgrading/deprecations) prior to upgrading to Silverstripe CMS 5 to see if your project relies on any APIs that are no longer unavailable. - -### General changes {#api-general} - -- [`SecurityAdmin`](api:SilverStripe\Admin\SecurityAdmin) is a [`SilverStripe\Admin\ModelAdmin`](api:SilverStripe\Admin\ModelAdmin). - - Previous extension hook implementations of `SecurityAdmin::updateEditForm($form)` still works as the extension hook is called in [`ModelAdmin::getEditForm()`](api:SilverStripe\Admin\ModelAdmin::getEditForm()). - - The *Users*, *Groups* and *Roles* tabs no longer share the `/admin/security` path and instead have their own dedicated paths. e.g. `/admin/security/users` -- `isDev` and `isTest` query string arguments have been removed due to security concerns (see [ss-2018-005](https://www.silverstripe.org/download/security-releases/ss-2018-005/)). -- The default value for the `RESOURCES_DIR` const has been changed to to "_resources" - - The [`Library::DEFAULT_RESOURCES_DIR`](api:SilverStripe\VendorPlugin\Library::DEFAULT_RESOURCES_DIR) constant in `silverstripe/vendor-plugin` has been changed to match. - - This can still be customised using `extra.resources-dir` in your `composer.json` file ([see relevant docs](/developer_guides/templates/requirements/#configuring-your-project-exposed-folders)). - - If your `composer.json` file has its `extra.resources-dir` key set to `_resources`, you can remove that now. - - If your `composer.json` file already does not have an `extra.resources-dir` key and you want to keep your resources in the `resources` directory, you can set `extra.resources-dir` to `resources`. - - If your `composer.json` file already does not have an `extra.resources-dir` key and you want to use the new default `_resources` directory, you may need to check that your code and templates don't assume the directory name for those resources. In your templates it is preferred to [use `$resourePath()` or `$resourceURL()`](/developer_guides/templates/requirements/#direct-resource-urls) to get paths for resources. -- Removed the `HTMLValue` injection "shorthand", use the fully qualified [`HTMLValue`](api:SilverStripe\View\Parsers\HTMLValue) instead. - -### Email {#api-email} - -- Email was sent in CMS 4 using [SwiftMailer](https://swiftmailer.symfony.com/docs/introduction.html), which has since [gone End Of Life](https://symfony.com/blog/the-end-of-swiftmailer). In CMS 5, this has been replaced with [symfony/mailer](https://symfony.com/doc/current/mailer.html). `symfony/mailer` is the currently maintained email package from Symfony. It's a more flexible email system that allows easier integration with third-party email providers. -- In CMS 4, the [`SilverStripe\Control\Email\Email`](api:SilverStripe\Control\Email\Email) class subclassed [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData). In CMS 5, it now subclasses `Symfony\Component\Mime\Email`. -- `MailTransport`, which used the PHP native `mail()` function, is no longer present in CMS 5. This is because [Symfony considers `mail()` to be insecure](https://github.com/swiftmailer/swiftmailer/issues/866#issuecomment-289291228). -- If your site has a custom email configuration e.g. SMTP configuration, this will need to be updated, as the configuration has changed from Silverstripe yml to a much more flexible and standardised [DSN string](https://symfony.com/doc/current/mailer.html#transport-setup). See [the email documentation](/developer_guides/email/) for more details. The configuration for email has changed completely - read the updated documentation carefully. -- The following return types were changed on the following methods in [`SilverStripe\Control\Email\Email`](api:SilverStripe\Control\Email\Email). - - Used to return a `string`, now returns an nullable [`Address`](https://symfony.com/doc/current/mailer.html#email-addresses) object. - - `getReturnPath()` - - `getSender()` - - Used to return an array of strings, now returns an array of `Address` objects. - - `getFrom()` - - `getTo()` - - `getBCC()` - note - changed casing to `getBcc()` - - `getCC()` - note - changed casing to `getCc()` - - Used to return `bool`, now return `void`: - - [`send()`](api:SilverStripe\Control\Email\Email::send()) - - [`sendPlain()`](api:SilverStripe\Control\Email\Email::sendPlain()) - - Catch [`TransportExceptionInterface`](https://github.com/symfony/symfony/blob/6.2/src/Symfony/Component/Mailer/Exception/TransportExceptionInterface.php) from Symfony Mailer to handle failure to send email. - - Various other methods have added strong typing to parameter and return types. Also, some parameter names have changed. - -### ORM {#api-orm} - -- [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) no longer accepts raw SQL. A new [`DataList::orderBy()`](api:SilverStripe\ORM\DataList::orderBy()) method has been created which accepts raw SQL, though it's recommended to continue using [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) if possible to reduce the chance of SQL injection vulnerabilities. -- Passing `null` to [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) i.e. `sort(null)` now clears any existing sort values on a DataList. Passing an empty string (i.e. `sort('')` or array i.e. `sort([])`) now causes an `InvalidArgumentException` to be thrown. -- Prior to 5.0.0, when using [`SQLSelect::setFrom()`](api:SilverStripe\ORM\Queries\SQLSelect::setFrom()) or [`SQLSelect::create('*', $from)`](api:SilverStripe\ORM\Queries\SQLSelect::create) to set table or subselect definitions, their aliases (applied by setting a string key for the array) were being ignored. This bug has been fixed - if you were working around this by manually setting the alias e.g. in a join, you can remove those workarounds now. -- [`Query`](api:SilverStripe\ORM\Connect\Query) now implements `IteratorAggregate` instead of `Iterator`. This means `seek()` and other iterator methods are no longer available on this class and its subclasses. Use `getIterator()` instead. -- [`DataList`](api:SilverStripe\ORM\DataList), its subclasses, [`Map`](api:SilverStripe\ORM\Map), and [`ArrayList`](api:SilverStripe\ORM\ArrayList) all now return generators from `getIterator()`. This reduces memory usage when looping over large result sets. As a result of this, `getGenerator()` has been removed as it is no longer needed. Note that [`DataList::chunkedFetch()`](api:SilverStripe\ORM\DataList::chunkedFetch()) has not been removed, as it may still be useful for very large result sets to fetch results in smaller chunks at a time. -- [`Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) is now strongly typed. Calling `limit()` with a `0` or `false` length now limits the list to 0 entry. In Silverstripe CMS 4, any "falsy" value would unset the limit. To unset a list's limit in Silverstripe CMS 5 , call `limit()` with an explicit `null`. This affects [`DataList`](api:SilverStripe\ORM\DataList), [`ArrayList`](api:SilverStripe\ORM\ArrayList) and all other classes implementing [`Limitable`](api:SilverStripe\ORM\Limitable). - - In Silverstripe CMS 4, calling [`SQLSelect::setLimit()`](api:SilverStripe\ORM\Queries\SQLSelect::setLimit()) with `0` as argument would unset the limit. In Silverstripe CMS 5, it sets a limit of `0` causing the query to return no results. Call `setLimit()` with `null` to unset the limit. -- [`ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) in Silverstripe CMS 5 throws an `InvalidArgumentException` when called with a negative `$length` or `$offset`. - -### Templates {#templates} - -- `<% loop %>` and `<% with %>` now only ever result in one new scope level. See [Template Syntax](/developer_guides/templates/syntax#up) for more details. - - For example `<% loop $Pages.Limit(5) %>{$Up.Up.Title}<% end_loop %>` previously would go up once to the `$Pages` scope (out of the `$Pages.limit(5)` scope), then up a second time to the parent scope. Now there is only the parent scope and the `$Pages.limit(5)` scope - there is no implied `$Pages` scope. - - You may need to do a search for `$Up.Up` in your templates to resolve situations where you have worked around this - with the example above, you would need to rewrite it to `$Up.Title` (removing the second `Up`). - -- Numeric, boolean and null values passed to methods in templates will now preserve their type, rather than always being cast to strings. E.g. `$Foo(true)` would previously pass a string argument `'true'` to the `Foo()` method, but will now pass an actual boolean. - - You may need to check for situations where you were working around this limitation, such as checking in PHP code for `$param === 'false'` if you were passing `false` into some method from a template. - -### Removed and changed API (by module, alphabetically) {#api-removed-and-changed} - -#### `cwp/cwp-core` - -- Removed deprecated class `CWP\Core\Extension\CWPVersionExtension` - -#### `cwp/cwp-search` - -- Removed deprecated class `CWP\Search\Solr\CwpSolrConfigStore` - -#### `dnadesign/silverstripe-elemental` - -- Removed deprecated class `DNADesign\Elemental\Search\ElementalSolrIndex` -- Removed deprecated class `DNADesign\Elemental\TopPage\TestState` -- Removed deprecated method `DNADesign\Elemental\Extensions\ElementalAreaUsedOnTableExtension::updateUsage()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::disableTopPageUpdate()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::enableTopPageUpdate()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::getTopPageUpdate()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::withTopPageUpdate()` -- Changed return type for [`DNADesign\Elemental\TopPage\DataExtension::getTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::getTopPage()) from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed return type for [`DNADesign\Elemental\TopPage\DataExtension::getTopPageFromCachedData()`](api:DNADesign\Elemental\TopPage\DataExtension::getTopPageFromCachedData()) from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed parameter type in [`DNADesign\Elemental\TopPage\DataExtension::assignTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::assignTopPage()) for `$page` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\DataExtension::setTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::setTopPage()) for `$page` from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed parameter type in [`DNADesign\Elemental\TopPage\FluentExtension::assignTopPage()`](api:DNADesign\Elemental\TopPage\FluentExtension::assignTopPage()) for `$page` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::initDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::initDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::onAfterDuplicate()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::onAfterDuplicate()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::onBeforeDuplicate()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::onBeforeDuplicate()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::processDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::processDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::writeDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::writeDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) - -#### `silverstripe/admin` - -- [`SilverStripe\Admin\SecurityAdmin`](api:SilverStripe\Admin\SecurityAdmin) now extends [`SilverStripe\Admin\ModelAdmin`](api:SilverStripe\Admin\ModelAdmin) instead of [`SilverStripe\Admin\LeftAndMain`](api:SilverStripe\Admin\LeftAndMain) -- Removed deprecated class `SilverStripe\Admin\GroupImportForm` -- Removed deprecated class `SilverStripe\Admin\MemberImportForm` -- Removed deprecated method `SilverStripe\Admin\LeftAndMain::menu_title_for_class()` -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::getSearchContext()` -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::SearchForm()` -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::SearchSummary()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::Backlink()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::groupimport()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::GroupImportForm()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::groups()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::memberimport()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::MemberImportForm()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::roles()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::users()` -- Removed deprecated config `SilverStripe\Admin\LeftAndMain.help_link` -- Removed deprecated config `SilverStripe\Admin\SecurityAdmin.subitem_class` -- Removed deprecated config `SilverStripe\Admin\SecurityAdmin.url_rule` -- Removed deprecated parameter in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) named `$request` -- Changed return type for [`SilverStripe\Admin\AdminRootController::handleRequest()`](api:SilverStripe\Admin\AdminRootController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::batchaction()`](api:SilverStripe\Admin\CMSBatchAction::batchaction()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::response()`](api:SilverStripe\Admin\CMSBatchAction::response()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::run()`](api:SilverStripe\Admin\CMSBatchAction::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSMenu::getIterator()`](api:SilverStripe\Admin\CMSMenu::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::getResponseNegotiator()`](api:SilverStripe\Admin\LeftAndMain::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::getSchemaResponse()`](api:SilverStripe\Admin\LeftAndMain::getSchemaResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::handleRequest()`](api:SilverStripe\Admin\LeftAndMain::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::index()`](api:SilverStripe\Admin\LeftAndMain::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::schema()`](api:SilverStripe\Admin\LeftAndMain::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::show()`](api:SilverStripe\Admin\LeftAndMain::show()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::index()`](api:SilverStripe\Admin\LeftAndMain::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::schema()`](api:SilverStripe\Admin\LeftAndMain::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::show()`](api:SilverStripe\Admin\LeftAndMain::show()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/asset-admin` - -- Removed deprecated class `SilverStripe\AssetAdmin\Model\EmbedResource` -- Removed deprecated interface `SilverStripe\AssetAdmin\Model\Embeddable` -- Removed deprecated method `SilverStripe\AssetAdmin\Extensions\UsedOnTableExtension::updateUsage()` -- Changed return type for [`SilverStripe\AssetAdmin\BatchAction\DeleteAssets::run()`](api:SilverStripe\AssetAdmin\BatchAction\DeleteAssets::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()) for `$record` from dynamic to [`SilverStripe\Assets\File`](api:SilverStripe\Assets\File) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$doPublish` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/assets` - -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\FileMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\FolderMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\LegacyThumbnailMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\NormaliseAccessMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\SecureAssetsMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\TagsToShortcodeHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\TagsToShortcodeTask` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\VersionedFilesMigrationTask` -- Removed deprecated class `SilverStripe\Assets\Dev\VersionedFilesMigrator` -- Removed deprecated class `SilverStripe\Assets\FilenameParsing\LegacyFileIDHelper` -- Removed deprecated class `SilverStripe\Dev\Tasks\FixFolderPermissionsHelper` -- Removed deprecated method `SilverStripe\Assets\File::ini2bytes()` -- Removed deprecated method `SilverStripe\Assets\File::RelativeLink()` -- Removed deprecated method `SilverStripe\Assets\Filesystem::fixfiles()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::cleanFilename()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFilesystem()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::findVariants()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getFilesystemFor()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getOriginalFilename()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getStreamSHA1()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getVariant()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFilesystems()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::parseFileID()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::removeVariant()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::useLegacyFilenames()` -- Removed deprecated method `SilverStripe\Assets\Shortcodes\FileLinkTracking::ImageTracking()` -- Removed deprecated config `SilverStripe\Assets\Flysystem\FlysystemAssetStore.legacy_filenames` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::current()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::current()) from dynamic to `string` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::key()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::key()) from dynamic to `int` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::next()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::rewind()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::valid()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::valid()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::cleanFilename()`](api:SilverStripe\Assets\Dev\TestAssetStore::cleanFilename()) for `$filename` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::getFilesystemFor()`](api:SilverStripe\Assets\Dev\TestAssetStore::getFilesystemFor()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::getOriginalFilename()`](api:SilverStripe\Assets\Dev\TestAssetStore::getOriginalFilename()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::parseFileID()`](api:SilverStripe\Assets\Dev\TestAssetStore::parseFileID()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::removeVariant()`](api:SilverStripe\Assets\Dev\TestAssetStore::removeVariant()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::createResponseFor()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::createResponseFor()) for `$flysystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()) for `$fs` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()) for `$from` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()) for `$to` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::setProtectedFilesystem()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::setProtectedFilesystem()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::setPublicFilesystem()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::setPublicFilesystem()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::truncateDirectory()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::truncateDirectory()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\GeneratedAssets::setFilesystem()`](api:SilverStripe\Assets\Flysystem\GeneratedAssets::setFilesystem()) for `$store` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) - -#### `silverstripe/auditor` - -- Removed deprecated method `SilverStripe\Auditor\AuditHook::bind_manipulation_capture()` -- Removed deprecated method `SilverStripe\Auditor\AuditHook::onBeforeInit()` -- Changed parameter type in [`SilverStripe\Auditor\RealIPProcessor::__invoke()`](api:SilverStripe\Auditor\RealIPProcessor::__invoke()) for `$record` from `array` to `Monolog\LogRecord` - -#### `silverstripe/behat-extension` - -- Removed deprecated method `SilverStripe\BehatExtension\Context\BasicContext::iAttachTheFileTo()` -- Changed return type for [`SilverStripe\BehatExtension\Utility\TestMailer::clearEmails()`](api:SilverStripe\BehatExtension\Utility\TestMailer::clearEmails()) from dynamic to `void` -- Changed return type for [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$to` from dynamic to `string` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$from` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$subject` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$content` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::saveEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::saveEmail()) for `$data` from dynamic to `array` -- Changed parameter name in [`SilverStripe\BehatExtension\Context\BasicContext::iAddToTheTagField()`](api:SilverStripe\BehatExtension\Context\BasicContext::iAddToTheTagField()) from `$locator` to `$selector` - -#### `silverstripe/campaign-admin` - -- Removed deprecated method `SilverStripe\CampaignAdmin\AddToCampaignHandler::handle()` -- Changed return type for [`SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()`](api:SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/cms` - -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigator` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed as [`SilverStripe\Admin\Navigator\SilverStripeNavigator`](api:SilverStripe\Admin\Navigator\SilverStripeNavigator) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed as [`SilverStripe\Admin\Navigator\SilverStripeNavigatorItem`](api:SilverStripe\Admin\Navigator\SilverStripeNavigatorItem) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_Unversioned` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed as [`SilverStripe\Admin\Navigator\SilverStripeNavigatorItem_Unversioned`](api:SilverStripe\Admin\Navigator\SilverStripeNavigatorItem_Unversioned) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_ArchiveLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed as [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_ArchiveLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_ArchiveLink) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_LiveLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed as [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_LiveLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_LiveLink) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_StageLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed as [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_StageLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_StageLink) -- Removed deprecated class `SilverStripe\CMS\Controllers\CMSPageHistoryController` -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFileExtension` -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension` -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFolderExtension` -- Removed deprecated class `SilverStripe\CMS\Tasks\MigrateSiteTreeLinkingTask` -- Removed deprecated class `SilverStripe\CMS\Tasks\RemoveOrphanedPagesTask` -- Removed deprecated class `SilverStripe\CMS\Tasks\SiteTreeMaintenanceTask` -- Removed deprecated method `SilverStripe\CMS\Controllers\CMSMain::publishall()` -- Removed deprecated method `SilverStripe\CMS\Model\SiteTree::creatableChildren()` -- Removed deprecated method `SilverStripe\CMS\Model\VirtualPage::updateImageTracking()` -- Removed deprecated config `SilverStripe\CMS\Controllers\CMSMain.subitem_class` -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Archive::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Archive::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Publish::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Publish::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Restore::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Restore::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Unpublish::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Unpublish::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::childfilter()`](api:SilverStripe\CMS\Controllers\CMSMain::childfilter()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::duplicate()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicate()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::getResponseNegotiator()`](api:SilverStripe\CMS\Controllers\CMSMain::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::getsubtree()`](api:SilverStripe\CMS\Controllers\CMSMain::getsubtree()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::index()`](api:SilverStripe\CMS\Controllers\CMSMain::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::savetreenode()`](api:SilverStripe\CMS\Controllers\CMSMain::savetreenode()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()`](api:SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\ContentController::handleRequest()`](api:SilverStripe\CMS\Controllers\ContentController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::controller_for()`](api:SilverStripe\CMS\Controllers\ModelAsController::controller_for()) from dynamic to [`SilverStripe\CMS\Controllers\ContentController`](api:SilverStripe\CMS\Controllers\ContentController) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::getNestedController()`](api:SilverStripe\CMS\Controllers\ModelAsController::getNestedController()) from dynamic to [`SilverStripe\CMS\Controllers\ContentController`](api:SilverStripe\CMS\Controllers\ContentController) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::handleRequest()`](api:SilverStripe\CMS\Controllers\ModelAsController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\RootURLController::handleRequest()`](api:SilverStripe\CMS\Controllers\RootURLController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::childfilter()`](api:SilverStripe\CMS\Controllers\CMSMain::childfilter()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::duplicate()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicate()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::getsubtree()`](api:SilverStripe\CMS\Controllers\CMSMain::getsubtree()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::index()`](api:SilverStripe\CMS\Controllers\CMSMain::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::savetreenode()`](api:SilverStripe\CMS\Controllers\CMSMain::savetreenode()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()`](api:SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\OldPageRedirector::onBeforeHTTPError404()`](api:SilverStripe\CMS\Controllers\OldPageRedirector::onBeforeHTTPError404()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter name in [`SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()`](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) from `$base` to `$link` -- Changed parameter name in [`SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()`](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) from `$action` to `$base` - -#### `silverstripe/comments` - -- Removed deprecated class `SilverStripe\Comments\Admin\CommentsGridFieldAction` -- Removed deprecated class `SilverStripe\Comments\Admin\CommentsGridFieldBulkAction\Handler` -- Removed deprecated method `SilverStripe\Comments\Model\Comment::getParent()` -- Changed return type for [`SilverStripe\Comments\Controllers\CommentingController::redirectBack()`](api:SilverStripe\Comments\Controllers\CommentingController::redirectBack()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) - -#### `silverstripe/config` - -- Removed deprecated method `SilverStripe\Config\Collections\DeltaConfigCollection::unserialize()` -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::serialize()` -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::unserialize()` -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::update()` -- Removed deprecated method `SilverStripe\Config\Middleware\MiddlewareCommon::serialize()` -- Removed deprecated method `SilverStripe\Config\Middleware\MiddlewareCommon::unserialize()` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) from dynamic to `static` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$data` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$metadata` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$data` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$metadata` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$metadata` from dynamic to `array` - -#### `silverstripe/crontask` - -- Removed deprecated method `SilverStripe\CronTask\Controllers\CronTaskController::setQuiet()` -- Removed deprecated property `SilverStripe\CronTask\Controllers\CronTaskController::$quiet` - -#### `silverstripe/environmentcheck` - -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_email_results()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_from_email_address()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_to_email_address()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_email_results()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_from_email_address()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_to_email_address()` - -#### `silverstripe/errorpage` - -- Changed return type for [`SilverStripe\ErrorPage\ErrorPageController::handleRequest()`](api:SilverStripe\ErrorPage\ErrorPageController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) - -#### `silverstripe/framework` - -- Removed deprecated class `SilverStripe\Control\Email\SwiftMailer` -- Removed deprecated class `SilverStripe\Control\Email\SwiftPlugin` -- Removed deprecated class `SilverStripe\Control\RequestProcessor` -- Removed deprecated class `SilverStripe\Core\Startup\AbstractConfirmationToken` -- Removed deprecated class `SilverStripe\Core\Startup\ConfirmationTokenChain` -- Removed deprecated class `SilverStripe\Core\Startup\ErrorControlChain` -- Removed deprecated class `SilverStripe\Core\Startup\ErrorControlChainMiddleware` -- Removed deprecated class `SilverStripe\Core\Startup\ErrorDirector` -- Removed deprecated class `SilverStripe\Core\Startup\ParameterConfirmationToken` -- Removed deprecated class `SilverStripe\Core\Startup\URLConfirmationToken` -- Removed deprecated class `SilverStripe\Dev\CSVParser` -- Removed deprecated class `SilverStripe\Dev\InstallerTest` -- Removed deprecated class `SilverStripe\Dev\SapphireInfo` -- Removed deprecated class `SilverStripe\Dev\Tasks\MigrateFileTask` -- Removed deprecated class `SilverStripe\Dev\TestSession_STResponseWrapper` -- Removed deprecated class `SilverStripe\Forms\GridField\GridFieldVersionedState` -- Removed deprecated class `SilverStripe\Forms\HTMLEditor\TinyMCEGZIPGenerator` -- Removed deprecated class `SilverStripe\ORM\Connect\PDOConnector` -- Removed deprecated class `SilverStripe\ORM\Connect\PDOQuery` -- Removed deprecated class `SilverStripe\ORM\Connect\PDOStatementHandle` -- Removed deprecated class `SilverStripe\ORM\Map_Iterator` -- Removed deprecated class `SilverStripe\View\Embed\EmbedResource` -- Removed deprecated class `SilverStripe\View\Parsers\HTML4Value` -- Removed deprecated interface `SilverStripe\Control\Email\Mailer` -- Removed deprecated interface `SilverStripe\Control\RequestFilter` -- Removed deprecated interface `SilverStripe\View\Requirements_Minifier` -- Removed deprecated method `SilverStripe\Control\Controller::disableBasicAuth()` -- Removed deprecated method `SilverStripe\Control\Director::isManifestFlushed()` -- Removed deprecated method `SilverStripe\Control\Email\Email::BaseURL()` -- Removed deprecated method `SilverStripe\Control\Email\Email::debug()` -- Removed deprecated method `SilverStripe\Control\Email\Email::findPlainPart()` -- Removed deprecated method `SilverStripe\Control\Email\Email::generatePlainPartFromBody()` -- Removed deprecated method `SilverStripe\Control\Email\Email::getFailedRecipients()` -- Removed deprecated method `SilverStripe\Control\Email\Email::getSwiftMessage()` -- Removed deprecated method `SilverStripe\Control\Email\Email::hasPlainPart()` -- Removed deprecated method `SilverStripe\Control\Email\Email::invalidateBody()` -- Removed deprecated method `SilverStripe\Control\Email\Email::IsEmail()` -- Removed deprecated method `SilverStripe\Control\Email\Email::mergeConfiguredEmails()` -- Removed deprecated method `SilverStripe\Control\Email\Email::render()` -- Removed deprecated method `SilverStripe\Control\Email\Email::setFailedRecipients()` -- Removed deprecated method `SilverStripe\Control\Email\Email::setSwiftMessage()` -- Removed deprecated method `SilverStripe\Control\HTTP::add_cache_headers()` -- Removed deprecated method `SilverStripe\Control\HTTP::augmentState()` -- Removed deprecated method `SilverStripe\Control\HTTP::get_cache_age()` -- Removed deprecated method `SilverStripe\Control\HTTP::gmt_date()` -- Removed deprecated method `SilverStripe\Control\HTTP::register_etag()` -- Removed deprecated method `SilverStripe\Control\HTTP::register_modification_date()` -- Removed deprecated method `SilverStripe\Control\HTTP::register_modification_timestamp()` -- Removed deprecated method `SilverStripe\Control\HTTP::set_cache_age()` -- Removed deprecated method `SilverStripe\Control\HTTPRequest::detect_method()` -- Removed deprecated method `SilverStripe\Control\SimpleResourceURLGenerator::resolveUnsecuredResource()` -- Removed deprecated method `SilverStripe\Core\BaseKernel::getIgnoredCIConfigs()` -- Removed deprecated method `SilverStripe\Core\BaseKernel::sessionEnvironment()` -- Removed deprecated method `SilverStripe\Core\ClassInfo::baseDataClass()` -- Removed deprecated method `SilverStripe\Core\ClassInfo::table_for_object_field()` -- Removed deprecated method `SilverStripe\Core\Config\Config_ForClass::update()` -- Removed deprecated method `SilverStripe\Core\Config\Configurable::set_stat()` -- Removed deprecated method `SilverStripe\Core\Config\Configurable::stat()` -- Removed deprecated method `SilverStripe\Core\Convert::array2json()` -- Removed deprecated method `SilverStripe\Core\Convert::json2array()` -- Removed deprecated method `SilverStripe\Core\Convert::json2obj()` -- Removed deprecated method `SilverStripe\Core\Convert::raw2json()` -- Removed deprecated method `SilverStripe\Core\Convert::xml2array()` -- Removed deprecated method `SilverStripe\Core\CustomMethods::findMethodsFromExtension()` -- Removed deprecated method `SilverStripe\Core\Extensible::constructExtensions()` -- Removed deprecated method `SilverStripe\Core\Injector\Injector::hasService()` -- Removed deprecated method `SilverStripe\Core\Manifest\ClassLoader::classExists()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getCIConfig()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getRelativeResourcePath()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getResourcePath()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getResourceURL()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::hasResource()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::serialize()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::unserialize()` -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::getNewSplitFileName()` -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::processChunk()` -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::splitFile()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeError()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeFooter()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeHeader()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeInfo()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeSourceFragment()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeTrace()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeVariable()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::dump_settings()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::get_calling_module_from_trace()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::get_enabled()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::notification_version()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::restore_settings()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::set_enabled()` -- Removed deprecated method `SilverStripe\Dev\FunctionalTest::get_use_draft_site()` -- Removed deprecated method `SilverStripe\Dev\FunctionalTest::useDraftSite()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSAllMatch()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSContains()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSEquals()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertNotDOSContains()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::getFixtureFactory()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::loadFixture()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::setFixtureFactory()` -- Removed deprecated method `SilverStripe\Dev\TestKernel::getIgnoredCIConfigs()` -- Removed deprecated method `SilverStripe\Dev\TestKernel::setIgnoredCIConfigs()` -- Removed deprecated method `SilverStripe\Dev\TestMailer::saveEmail()` -- Removed deprecated method `SilverStripe\Forms\FieldList::collateDataFields()` -- Removed deprecated method `SilverStripe\Forms\Form::formHtmlContent()` -- Removed deprecated method `SilverStripe\Forms\GridField\GridFieldFilterHeader::__construct()` -- Removed deprecated method `SilverStripe\Forms\GridField\GridFieldFilterHeader::getLegacyFilterHeader()` -- Removed deprecated method `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getAdminModule()` -- Removed deprecated method `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getTinyMCEPath()` -- Removed deprecated method `SilverStripe\Forms\TextField::InternallyLabelledField()` -- Removed deprecated method `SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::serialize()` -- Removed deprecated method `SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::unserialize()` -- Removed deprecated method `SilverStripe\Logging\MonologErrorHandler::getLogger()` -- Removed deprecated method `SilverStripe\Logging\MonologErrorHandler::setLogger()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLQuery::nextRecord()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLQuery::seek()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLStatement::nextRecord()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLStatement::seek()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::current()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::first()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::key()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::next()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::nextRecord()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::rewind()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::seek()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::valid()` -- Removed deprecated method `SilverStripe\ORM\DatabaseAdmin::updateLegacyClassNames()` -- Removed deprecated method `SilverStripe\ORM\DataExtension::unload_extra_statics()` -- Removed deprecated method `SilverStripe\ORM\DataList::getGenerator()` -- Removed deprecated method `SilverStripe\ORM\DataObject::doValidate()` -- Removed deprecated method `SilverStripe\ORM\DataObject::duplicateManyManyRelations()` -- Removed deprecated method `SilverStripe\ORM\DB::getConn()` -- Removed deprecated method `SilverStripe\ORM\FieldType\DBClassName::clear_classname_cache()` -- Removed deprecated method `SilverStripe\ORM\ValidationResult::__construct()` -- Removed deprecated method `SilverStripe\ORM\ValidationResult::serialize()` -- Removed deprecated method `SilverStripe\ORM\ValidationResult::unserialize()` -- Removed deprecated method `SilverStripe\Security\Member::checkPassword()` -- Removed deprecated method `SilverStripe\Security\Member::create_new_password()` -- Removed deprecated method `SilverStripe\Security\Member::currentUser()` -- Removed deprecated method `SilverStripe\Security\Member::currentUserID()` -- Removed deprecated method `SilverStripe\Security\Member::default_admin()` -- Removed deprecated method `SilverStripe\Security\Member::logged_in_session_exists()` -- Removed deprecated method `SilverStripe\Security\Member::logIn()` -- Removed deprecated method `SilverStripe\Security\Member::logOut()` -- Removed deprecated method `SilverStripe\Security\Member::set_title_columns()` -- Removed deprecated method `SilverStripe\Security\PasswordValidator::characterStrength()` -- Removed deprecated method `SilverStripe\Security\PasswordValidator::checkHistoricalPasswords()` -- Removed deprecated method `SilverStripe\Security\PasswordValidator::minLength()` -- Removed deprecated method `SilverStripe\Security\Permission::get_declared_permissions_list()` -- Removed deprecated method `SilverStripe\Security\Permission::get_label_for_permission()` -- Removed deprecated method `SilverStripe\Security\Permission::traverse_declared_permissions()` -- Removed deprecated method `SilverStripe\Security\RandomGenerator::generateEntropy()` -- Removed deprecated method `SilverStripe\Security\Security::check_default_admin()` -- Removed deprecated method `SilverStripe\Security\Security::clear_default_admin()` -- Removed deprecated method `SilverStripe\Security\Security::default_admin_password()` -- Removed deprecated method `SilverStripe\Security\Security::default_admin_username()` -- Removed deprecated method `SilverStripe\Security\Security::findAnAdministrator()` -- Removed deprecated method `SilverStripe\Security\Security::getLoginForms()` -- Removed deprecated method `SilverStripe\Security\Security::has_default_admin()` -- Removed deprecated method `SilverStripe\Security\Security::setDefaultAdmin()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::getMinifier()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::getMinifyCombinedFiles()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::setMinifier()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::setMinifyCombinedFiles()` -- Removed deprecated method `SilverStripe\View\Shortcodes\EmbedShortcodeProvider::embedForTemplate()` -- Removed deprecated method `SilverStripe\View\SSViewer::set_theme()` -- Removed deprecated method `SilverStripe\View\SSViewer_BasicIteratorSupport::First()` -- Removed deprecated method `SilverStripe\View\SSViewer_BasicIteratorSupport::Last()` -- Removed deprecated method `SilverStripe\View\ViewableData::ThemeDir()` -- Removed deprecated config `SilverStripe\Control\Director.alternate_public_dir` -- Removed deprecated config `SilverStripe\Control\HTTP.cache_ajax_requests` -- Removed deprecated config `SilverStripe\Control\HTTP.cache_control` -- Removed deprecated config `SilverStripe\Control\HTTP.disable_http_cache` -- Removed deprecated config `SilverStripe\Control\HTTP.vary` -- Removed deprecated config `SilverStripe\Forms\GridField\GridFieldFilterHeader.force_legacy` -- Removed deprecated config `SilverStripe\Security\Permission.declared_permissions` -- Removed deprecated config `SilverStripe\Security\Permission.declared_permissions_list` -- Removed deprecated config `SilverStripe\Security\Security.word_list` -- Removed deprecated config `SilverStripe\View\SSViewer.theme` -- Removed deprecated constant `SilverStripe\Core\Manifest\ManifestFileFinder::RESOURCES_DIR` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_PHPUNIT_FIVE` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_PHPUNIT_NINE` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_UNKNOWN` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::TRIM_CHARS` -- Removed deprecated property `SilverStripe\Control\Controller::$basicAuthEnabled` -- Removed deprecated property `SilverStripe\Control\HTTP::$cache_age` -- Removed deprecated property `SilverStripe\Control\HTTP::$etag` -- Removed deprecated property `SilverStripe\Control\HTTP::$modification_date` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$enabled` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$module_version_overrides` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$notice_level` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$version` -- Removed deprecated property `SilverStripe\Dev\FunctionalTest::$use_draft_site` -- Removed deprecated property `SilverStripe\Dev\TestMailer::$emailsSent` -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$updateSearchContextCallback` -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$updateSearchFormCallback` -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$useLegacyFilterHeader` -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$currentRecord` -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$queryHasBegun` -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$rowNum` -- Removed deprecated property `SilverStripe\ORM\DataObject::$destroyed` -- Removed deprecated property `SilverStripe\ORM\Search\SearchContext::$connective` -- Removed deprecated property `SilverStripe\Security\LoginForm::$authenticator_class` -- Removed deprecated property `SilverStripe\View\Requirements_Backend::$minifier` -- Removed deprecated property `SilverStripe\View\Requirements_Backend::$minifyCombinedFiles` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a2` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a3` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a4` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a5` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a6` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a7` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a2` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a3` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a4` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a5` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a6` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a7` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassLoader::init()`](api:SilverStripe\Core\Manifest\ClassLoader::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassManifest::init()`](api:SilverStripe\Core\Manifest\ClassManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassManifest::regenerate()`](api:SilverStripe\Core\Manifest\ClassManifest::regenerate()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleLoader::init()`](api:SilverStripe\Core\Manifest\ModuleLoader::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleManifest::init()`](api:SilverStripe\Core\Manifest\ModuleManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleManifest::regenerate()`](api:SilverStripe\Core\Manifest\ModuleManifest::regenerate()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLContains()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLContains()) named `$checkForObjectIdentity` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$delta` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$maxDepth` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$canonicalize` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLNotContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLNotContains()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLNotContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLNotContains()) named `$checkForObjectIdentity` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\Database::transactionEnd()`](api:SilverStripe\ORM\Connect\Database::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\NullDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\NullDatabase::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\Security\Member::generateAutologinTokenAndStoreHash()`](api:SilverStripe\Security\Member::generateAutologinTokenAndStoreHash()) named `$lifetime` -- Removed deprecated parameter in [`SilverStripe\View\Requirements::add_i18n_javascript()`](api:SilverStripe\View\Requirements::add_i18n_javascript()) named `$langOnly` -- Removed deprecated parameter in [`SilverStripe\View\ThemeManifest::init()`](api:SilverStripe\View\ThemeManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\View\ThemeManifest::regenerate()`](api:SilverStripe\View\ThemeManifest::regenerate()) named `$ignoredCIConfigs` -- [`SilverStripe\Dev\FunctionalTest`](api:SilverStripe\Dev\FunctionalTest) is now abstract. -- [`SilverStripe\Dev\MigrationTask`](api:SilverStripe\Dev\MigrationTask) is now abstract. -- [`SilverStripe\Dev\SapphireTest`](api:SilverStripe\Dev\SapphireTest) is now abstract. -- Method `SilverStripe\Control\Email\Email::addBCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addFrom()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addReplyTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getBCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getBody()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getFrom()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getPriority()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getReplyTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getReturnPath()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getSender()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getSubject()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Dev\SapphireTest::assertContains()` is now defined in `PHPUnit\Framework\Assert` with a different method signature -- Method `SilverStripe\Dev\SapphireTest::assertNotContains()` is now defined in `PHPUnit\Framework\Assert` with a different method signature -- Changed return type for [`SilverStripe\Control\Controller::getResponse()`](api:SilverStripe\Control\Controller::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::handleRequest()`](api:SilverStripe\Control\Controller::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::setRequest()`](api:SilverStripe\Control\Controller::setRequest()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) from dynamic to `string|bool` -- Changed return type for [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::getBCCAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getBCCAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getCCAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getCCAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getData()`](api:SilverStripe\Control\Email\Email::getData()) from dynamic to [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData) -- Changed return type for [`SilverStripe\Control\Email\Email::getHTMLTemplate()`](api:SilverStripe\Control\Email\Email::getHTMLTemplate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::getPlainTemplate()`](api:SilverStripe\Control\Email\Email::getPlainTemplate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::getSendAllEmailsFrom()`](api:SilverStripe\Control\Email\Email::getSendAllEmailsFrom()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getSendAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getSendAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::send()`](api:SilverStripe\Control\Email\Email::send()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\Email\Email::sendPlain()`](api:SilverStripe\Control\Email\Email::sendPlain()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setBody()`](api:SilverStripe\Control\Email\Email::setBody()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setHTMLTemplate()`](api:SilverStripe\Control\Email\Email::setHTMLTemplate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setPlainTemplate()`](api:SilverStripe\Control\Email\Email::setPlainTemplate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setPriority()`](api:SilverStripe\Control\Email\Email::setPriority()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setReturnPath()`](api:SilverStripe\Control\Email\Email::setReturnPath()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setSubject()`](api:SilverStripe\Control\Email\Email::setSubject()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetExists()`](api:SilverStripe\Control\HTTPRequest::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetGet()`](api:SilverStripe\Control\HTTPRequest::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetUnset()`](api:SilverStripe\Control\HTTPRequest::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\HTTPResponse_Exception::getResponse()`](api:SilverStripe\Control\HTTPResponse_Exception::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\PjaxResponseNegotiator::getResponse()`](api:SilverStripe\Control\PjaxResponseNegotiator::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\PjaxResponseNegotiator::respond()`](api:SilverStripe\Control\PjaxResponseNegotiator::respond()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::redirectBack()`](api:SilverStripe\Control\RequestHandler::redirectBack()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::setRequest()`](api:SilverStripe\Control\RequestHandler::setRequest()) from dynamic to `static` -- Changed return type for [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) from dynamic to `Psr\SimpleCache\CacheInterface` -- Changed return type for [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Dev\BulkLoader_Result::Count()`](api:SilverStripe\Dev\BulkLoader_Result::Count()) from dynamic to `int` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::checkIfItemEvaluatesRemainingMatches()`](api:SilverStripe\Dev\Constraint\SSListContains::checkIfItemEvaluatesRemainingMatches()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::evaluate()`](api:SilverStripe\Dev\Constraint\SSListContains::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::getStubForToString()`](api:SilverStripe\Dev\Constraint\SSListContains::getStubForToString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::toString()`](api:SilverStripe\Dev\Constraint\SSListContains::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::evaluate()`](api:SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::toString()`](api:SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\ViewableDataContains::evaluate()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\ViewableDataContains::toString()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\DevBuildController::build()`](api:SilverStripe\Dev\DevBuildController::build()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Dev\FunctionalTest::setUp()`](api:SilverStripe\Dev\FunctionalTest::setUp()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Dev\FunctionalTest::tearDown()`](api:SilverStripe\Dev\FunctionalTest::tearDown()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::setUp()`](api:SilverStripe\Dev\SapphireTest::setUp()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::setUpBeforeClass()`](api:SilverStripe\Dev\SapphireTest::setUpBeforeClass()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::tearDown()`](api:SilverStripe\Dev\SapphireTest::tearDown()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::tearDownAfterClass()`](api:SilverStripe\Dev\SapphireTest::tearDownAfterClass()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestMailer::clearEmails()`](api:SilverStripe\Dev\TestMailer::clearEmails()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) from dynamic to `array|null` -- Changed return type for [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestSession::lastPage()`](api:SilverStripe\Dev\TestSession::lastPage()) from dynamic to `Symfony\Component\DomCrawler\Crawler` -- Changed return type for [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField)`|bool` -- Changed return type for [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField)`|bool` -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::getAjaxErrorResponse()`](api:SilverStripe\Forms\FormRequestHandler::getAjaxErrorResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::getValidationErrorResponse()`](api:SilverStripe\Forms\FormRequestHandler::getValidationErrorResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::redirectBackToForm()`](api:SilverStripe\Forms\FormRequestHandler::redirectBackToForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()) from dynamic to `bool` -- Changed return type for [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) from dynamic to `Symfony\Component\Translation\MessageCatalogue` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::getDefaultFormatter()`](api:SilverStripe\Logging\HTTPOutputHandler::getDefaultFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::getFormatter()`](api:SilverStripe\Logging\HTTPOutputHandler::getFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::write()`](api:SilverStripe\Logging\HTTPOutputHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\Logging\PreformattedEchoHandler::write()`](api:SilverStripe\Logging\PreformattedEchoHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ArrayList::count()`](api:SilverStripe\ORM\ArrayList::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\ArrayList::getIterator()`](api:SilverStripe\ORM\ArrayList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetExists()`](api:SilverStripe\ORM\ArrayList::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetGet()`](api:SilverStripe\ORM\ArrayList::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetUnset()`](api:SilverStripe\ORM\ArrayList::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\Connect\Database::transactionEnd()`](api:SilverStripe\ORM\Connect\Database::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\Connect\NullDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\NullDatabase::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\DataList::count()`](api:SilverStripe\ORM\DataList::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\DataList::getIterator()`](api:SilverStripe\ORM\DataList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataList::offsetExists()`](api:SilverStripe\ORM\DataList::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\DataList::offsetGet()`](api:SilverStripe\ORM\DataList::offsetGet()) from dynamic to [`SilverStripe\ORM\DataObject`](api:SilverStripe\ORM\DataObject)`|null` -- Changed return type for [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\DataList::offsetUnset()`](api:SilverStripe\ORM\DataList::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) from dynamic to [`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::Count()`](api:SilverStripe\ORM\ListDecorator::Count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\ListDecorator::getIterator()`](api:SilverStripe\ORM\ListDecorator::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\ListDecorator::getList()`](api:SilverStripe\ORM\ListDecorator::getList()) from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetExists()`](api:SilverStripe\ORM\ListDecorator::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetGet()`](api:SilverStripe\ORM\ListDecorator::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetUnset()`](api:SilverStripe\ORM\ListDecorator::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ListDecorator::setList()`](api:SilverStripe\ORM\ListDecorator::setList()) from dynamic to `self` -- Changed return type for [`SilverStripe\ORM\Map::count()`](api:SilverStripe\ORM\Map::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\Map::getIterator()`](api:SilverStripe\ORM\Map::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\Map::offsetExists()`](api:SilverStripe\ORM\Map::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\Map::offsetGet()`](api:SilverStripe\ORM\Map::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\Map::offsetUnset()`](api:SilverStripe\ORM\Map::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\PaginatedList::getIterator()`](api:SilverStripe\ORM\PaginatedList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\UnsavedRelationList::getIterator()`](api:SilverStripe\ORM\UnsavedRelationList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\Security\Member::isPasswordExpired()`](api:SilverStripe\Security\Member::isPasswordExpired()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Security\Member::mapInCMSGroups()`](api:SilverStripe\Security\Member::mapInCMSGroups()) from dynamic to [`SilverStripe\ORM\Map`](api:SilverStripe\ORM\Map) -- Changed return type for [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Security\Security::permissionFailure()`](api:SilverStripe\Security\Security::permissionFailure()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\View\ViewableData::getIterator()`](api:SilverStripe\View\ViewableData::getIterator()) from dynamic to `Traversable` -- Changed parameter type in [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\Controller::setRequest()`](api:SilverStripe\Control\Controller::setRequest()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) for `$relativeParent` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$from` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$to` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$subject` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$body` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$cc` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$bcc` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$returnPath` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$alias` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$mime` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$mime` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) for `$nameOrData` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\Email\Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) for `$email` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) for `$method` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::removeData()`](api:SilverStripe\Control\Email\Email::removeData()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBody()`](api:SilverStripe\Control\Email\Email::setBody()) for `$body` from dynamic to `Symfony\Component\Mime\Part\AbstractPart|string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setData()`](api:SilverStripe\Control\Email\Email::setData()) for `$data` from dynamic to [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData)`|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setHTMLTemplate()`](api:SilverStripe\Control\Email\Email::setHTMLTemplate()) for `$template` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setPlainTemplate()`](api:SilverStripe\Control\Email\Email::setPlainTemplate()) for `$template` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setPriority()`](api:SilverStripe\Control\Email\Email::setPriority()) for `$priority` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReturnPath()`](api:SilverStripe\Control\Email\Email::setReturnPath()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSubject()`](api:SilverStripe\Control\Email\Email::setSubject()) for `$subject` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetExists()`](api:SilverStripe\Control\HTTPRequest::offsetExists()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetGet()`](api:SilverStripe\Control\HTTPRequest::offsetGet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetUnset()`](api:SilverStripe\Control\HTTPRequest::offsetUnset()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) for `$dest` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\PjaxResponseNegotiator::__construct()`](api:SilverStripe\Control\PjaxResponseNegotiator::__construct()) for `$response` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Control\PjaxResponseNegotiator::setResponse()`](api:SilverStripe\Control\PjaxResponseNegotiator::setResponse()) for `$response` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\RequestHandler::setRequest()`](api:SilverStripe\Control\RequestHandler::setRequest()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) for `$args` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\Constraint\SSListContains::__construct()`](api:SilverStripe\Dev\Constraint\SSListContains::__construct()) for `$matches` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\Constraint\ViewableDataContains::__construct()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::__construct()) for `$match` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\DevBuildController::build()`](api:SilverStripe\Dev\DevBuildController::build()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$formID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$button` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$to` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$from` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$subject` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$content` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) for `$message` from dynamic to `Symfony\Component\Mime\RawMessage` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$formID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$button` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$item` from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField) -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$appendIfMissing` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$item` from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField) -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$appendIfMissing` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()) for `$timestamp` from dynamic to `int` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$resource` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$locale` from dynamic to `string` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$domain` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Logging\DebugViewFriendlyErrorFormatter::format()`](api:SilverStripe\Logging\DebugViewFriendlyErrorFormatter::format()) for `$record` from `array` to `array|Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\DetailedErrorFormatter::format()`](api:SilverStripe\Logging\DetailedErrorFormatter::format()) for `$record` from `array` to `array|Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\HTTPOutputHandler::write()`](api:SilverStripe\Logging\HTTPOutputHandler::write()) for `$record` from `array` to `Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\PreformattedEchoHandler::write()`](api:SilverStripe\Logging\PreformattedEchoHandler::write()) for `$record` from `array` to `Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetExists()`](api:SilverStripe\ORM\ArrayList::offsetExists()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetGet()`](api:SilverStripe\ORM\ArrayList::offsetGet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetUnset()`](api:SilverStripe\ORM\ArrayList::offsetUnset()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetExists()`](api:SilverStripe\ORM\DataList::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetGet()`](api:SilverStripe\ORM\DataList::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetUnset()`](api:SilverStripe\ORM\DataList::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) for `$relations` from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) for `$limit` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::__construct()`](api:SilverStripe\ORM\ListDecorator::__construct()) for `$list` from [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List) to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetExists()`](api:SilverStripe\ORM\ListDecorator::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetGet()`](api:SilverStripe\ORM\ListDecorator::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetUnset()`](api:SilverStripe\ORM\ListDecorator::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::setList()`](api:SilverStripe\ORM\ListDecorator::setList()) for `$list` from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$joinClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$localKey` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$foreignKey` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$foreignClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$parentClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetExists()`](api:SilverStripe\ORM\Map::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetGet()`](api:SilverStripe\ORM\Map::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetUnset()`](api:SilverStripe\ORM\Map::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Security\Member::mapInCMSGroups()`](api:SilverStripe\Security\Member::mapInCMSGroups()) for `$groups` from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)`|array|null` -- Changed parameter type in [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter name in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) from `$name` to `$nameOrData` -- Changed parameter name in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) from `$a1` to `$arguments` and modified it to accept variable arguments using the splat operator -- Changed parameter name in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) from `$a1` to `$arguments` and modified it to accept variable arguments using the splat operator -- Changed parameter name in [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) from `$email` to `$message` -- Changed parameter name in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\ORM\DataObject::get_one()`](api:SilverStripe\ORM\DataObject::get_one()) from `$orderby` to `$sort` -- Changed parameter name in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\View\Parsers\HTMLValue::setContent()`](api:SilverStripe\View\Parsers\HTMLValue::setContent()) from `$fragment` to `$content` -- Changed parameter name in [`SilverStripe\View\ViewableData::cachedCall()`](api:SilverStripe\View\ViewableData::cachedCall()) from `$field` to `$fieldName` -- Changed parameter name in [`SilverStripe\View\ViewableData_Customised::cachedCall()`](api:SilverStripe\View\ViewableData_Customised::cachedCall()) from `$field` to `$fieldName` - -#### `silverstripe/fulltextsearch` - -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_MySQLDatabase` -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_PostgreSQLDatabase` -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_SQLite3Database` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::exclude()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::filter()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::fuzzysearch()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::inClass()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::limit()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::page()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::search()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::start()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range::end()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range::start()` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::current()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::current()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::key()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::key()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::next()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::rewind()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::valid()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::valid()) from dynamic to `bool` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()`](api:SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::current()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::current()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::key()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::key()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::next()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::rewind()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::valid()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::valid()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()`](api:SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()) for `$record` from `array` to `Monolog\LogRecord` - -#### `silverstripe/graphql` - -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::alert()`](api:SilverStripe\GraphQL\Schema\Logger::alert()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::critical()`](api:SilverStripe\GraphQL\Schema\Logger::critical()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::debug()`](api:SilverStripe\GraphQL\Schema\Logger::debug()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::emergency()`](api:SilverStripe\GraphQL\Schema\Logger::emergency()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::error()`](api:SilverStripe\GraphQL\Schema\Logger::error()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::info()`](api:SilverStripe\GraphQL\Schema\Logger::info()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::log()`](api:SilverStripe\GraphQL\Schema\Logger::log()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::notice()`](api:SilverStripe\GraphQL\Schema\Logger::notice()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::warning()`](api:SilverStripe\GraphQL\Schema\Logger::warning()) from dynamic to `void` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::alert()`](api:SilverStripe\GraphQL\Schema\Logger::alert()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::critical()`](api:SilverStripe\GraphQL\Schema\Logger::critical()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::debug()`](api:SilverStripe\GraphQL\Schema\Logger::debug()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::emergency()`](api:SilverStripe\GraphQL\Schema\Logger::emergency()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::error()`](api:SilverStripe\GraphQL\Schema\Logger::error()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::info()`](api:SilverStripe\GraphQL\Schema\Logger::info()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::log()`](api:SilverStripe\GraphQL\Schema\Logger::log()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::notice()`](api:SilverStripe\GraphQL\Schema\Logger::notice()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::warning()`](api:SilverStripe\GraphQL\Schema\Logger::warning()) for `$message` from dynamic to `Stringable|string` - -#### `silverstripe/hybridsessions` - -- Removed deprecated class `SilverStripe\HybridSessions\Crypto\McryptCrypto` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::close()`](api:SilverStripe\HybridSessions\HybridSession::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::destroy()`](api:SilverStripe\HybridSessions\HybridSession::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::gc()`](api:SilverStripe\HybridSessions\HybridSession::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::getHandlers()`](api:SilverStripe\HybridSessions\HybridSession::getHandlers()) from dynamic to `array` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::is_enabled()`](api:SilverStripe\HybridSessions\HybridSession::is_enabled()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::read()`](api:SilverStripe\HybridSessions\HybridSession::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::setHandlers()`](api:SilverStripe\HybridSessions\HybridSession::setHandlers()) from dynamic to `static` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::setKey()`](api:SilverStripe\HybridSessions\HybridSession::setKey()) from dynamic to `void` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::getKey()) from dynamic to `string|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getLifetime()`](api:SilverStripe\HybridSessions\Store\BaseStore::getLifetime()) from dynamic to `int` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getNow()`](api:SilverStripe\HybridSessions\Store\BaseStore::getNow()) from dynamic to `int` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::setKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::setKey()) from dynamic to `void` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::canWrite()`](api:SilverStripe\HybridSessions\Store\CookieStore::canWrite()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::close()`](api:SilverStripe\HybridSessions\Store\CookieStore::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::destroy()`](api:SilverStripe\HybridSessions\Store\CookieStore::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::gc()`](api:SilverStripe\HybridSessions\Store\CookieStore::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::getCrypto()`](api:SilverStripe\HybridSessions\Store\CookieStore::getCrypto()) from dynamic to [`SilverStripe\HybridSessions\Crypto\CryptoHandler`](api:SilverStripe\HybridSessions\Crypto\CryptoHandler)`|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::read()`](api:SilverStripe\HybridSessions\Store\CookieStore::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()) from dynamic to `string|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()) from dynamic to `string` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::close()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::destroy()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::gc()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::isDatabaseReady()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::isDatabaseReady()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::read()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::destroy()`](api:SilverStripe\HybridSessions\HybridSession::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::gc()`](api:SilverStripe\HybridSessions\HybridSession::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::init()`](api:SilverStripe\HybridSessions\HybridSession::init()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::read()`](api:SilverStripe\HybridSessions\HybridSession::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::setHandlers()`](api:SilverStripe\HybridSessions\HybridSession::setHandlers()) for `$handlers` from dynamic to `array` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::setKey()`](api:SilverStripe\HybridSessions\HybridSession::setKey()) for `$key` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) for `$session_data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\BaseStore::setKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::setKey()) for `$key` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::destroy()`](api:SilverStripe\HybridSessions\Store\CookieStore::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::gc()`](api:SilverStripe\HybridSessions\Store\CookieStore::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::getCrypto()`](api:SilverStripe\HybridSessions\Store\CookieStore::getCrypto()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::read()`](api:SilverStripe\HybridSessions\Store\CookieStore::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) for `$session_data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()) for `$text` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()) for `$data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::destroy()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::gc()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::read()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) for `$session_data` from dynamic to `string` - -#### `silverstripe/ldap` - -- Removed deprecated method `SilverStripe\LDAP\Extensions\LDAPMemberExtension::memberLoggedIn()` - -#### `silverstripe/mfa` - -- Removed deprecated method `SilverStripe\MFA\Report\EnabledMembers::formatDefaultMethodColumn()` -- Removed deprecated method `SilverStripe\MFA\Report\EnabledMembers::formatMethodsColumn()` -- Removed deprecated method `SilverStripe\MFA\Store\SessionStore::serialize()` -- Removed deprecated method `SilverStripe\MFA\Store\SessionStore::unserialize()` -- Changed return type for [`SilverStripe\MFA\RequestHandler\BaseHandlerTrait::getSudoModeService()`](api:SilverStripe\MFA\RequestHandler\BaseHandlerTrait::getSudoModeService()) from [`SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface`](api:SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface) to [`SilverStripe\Security\SudoMode\SudoModeServiceInterface`](api:SilverStripe\Security\SudoMode\SudoModeServiceInterface) - -#### `silverstripe/recipe-plugin` - -- Removed deprecated method `SilverStripe\RecipePlugin\RecipeInstaller::rewriteFilePath()` - -#### `silverstripe/registry` - -- Removed deprecated parameter in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) named `$request` -- Changed return type for [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/securityreport` - -- Removed deprecated class `SilverStripe\SecurityReport\Subsites\SubsiteSecurityReport` - -#### `silverstripe/sharedraftcontent` - -- Removed deprecated method `SilverStripe\ShareDraftContent\Controllers\ShareDraftController::getRenderedPageByURLSegment()` - -#### `silverstripe/subsites` - -- Removed deprecated class `SilverStripe\Subsites\Tasks\SubsiteMigrateFileTask` -- Removed deprecated method `SilverStripe\Subsites\Extensions\SiteTreeSubsites::alternatePreviewLink()` -- Removed deprecated method `SilverStripe\Subsites\Model\Subsite::currentSubsiteID()` -- Removed deprecated method `SilverStripe\Subsites\Reports\SubsiteReportWrapper::afterQuery()` -- Removed deprecated method `SilverStripe\Subsites\Reports\SubsiteReportWrapper::beforeQuery()` -- Removed deprecated property `SilverStripe\Subsites\Model\Subsite::$force_subsite` -- Changed return type for [`SilverStripe\Subsites\Controller\SubsiteXHRController::getResponseNegotiator()`](api:SilverStripe\Subsites\Controller\SubsiteXHRController::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteId()) from dynamic to `int|null` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getSubsiteIdWasChanged()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteIdWasChanged()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::getUseSessions()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::reset()`](api:SilverStripe\Subsites\State\SubsiteState::reset()) from dynamic to `void` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::resetState()`](api:SilverStripe\Subsites\State\SubsiteState::resetState()) from dynamic to `void` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::setSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::setSubsiteId()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::setUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::setUseSessions()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::withState()`](api:SilverStripe\Subsites\State\SubsiteState::withState()) from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) for `$manyMany` from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\Subsites\State\SubsiteState::setSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::setSubsiteId()) for `$id` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\Subsites\State\SubsiteState::setUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::setUseSessions()) for `$useSessions` from dynamic to `bool|null` - -#### `silverstripe/tagfield` - -- Removed deprecated config `SilverStripe\TagField\StringTagField.immediate_write_enabled` - -#### `silverstripe/userforms` - -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField::EffectiveDisplayRules()` -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField::getEscapedTitle()` -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField\EditableOption::getEscapedTitle()` -- Changed return type for [`SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()`](api:SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) from dynamic to `static` -- Changed parameter type in [`SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()`](api:SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) for `$relations` from dynamic to `array|null` -- Changed parameter name in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) from `$manyMany` to `$relations` - -#### `silverstripe/vendor-plugin` - -- Removed deprecated class `SilverStripe\VendorPlugin\VendorModule` -- Removed deprecated method `SilverStripe\VendorPlugin\Console\VendorExposeCommand::getAllModules()` -- Removed deprecated method `SilverStripe\VendorPlugin\Library::installedIntoVendor()` -- Removed deprecated method `SilverStripe\VendorPlugin\Library::publicPathExists()` -- Removed deprecated method `SilverStripe\VendorPlugin\VendorPlugin::getVendorModule()` -- Removed deprecated constant `SilverStripe\VendorPlugin\Library::RESOURCES_PATH` -- Removed deprecated constant `SilverStripe\VendorPlugin\VendorPlugin::MODULE_FILTER` -- Removed deprecated constant `SilverStripe\VendorPlugin\VendorPlugin::MODULE_TYPE` - -#### `silverstripe/versioned` - -- Removed deprecated method `SilverStripe\Versioned\Versioned::allVersions()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::doPublish()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::doRollbackTo()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::getLastEditedForVersion()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::migrateVersion()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRevertToLive()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRollback()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::publish()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::VersionsList()` -- Removed deprecated parameter in [`SilverStripe\Versioned\Versioned::copyVersionToStage()`](api:SilverStripe\Versioned\Versioned::copyVersionToStage()) named `$createNewVersion` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::clear()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::clear()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()) from dynamic to `iterable` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::prune()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::prune()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()) from dynamic to `bool` -- [`SilverStripe\Versioned\Versioned::__construct()`](api:SilverStripe\Versioned\Versioned::__construct()) now explicitly only accepts `$mode` as a single argument. -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()) for `$keys` from dynamic to `iterable` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()) for `$keys` from dynamic to `iterable` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()) for `$items` from dynamic to `iterable` - -#### `silverstripe/versioned-admin` - -- Removed deprecated class `SilverStripe\VersionedAdmin\Controllers\HistoryControllerFactory` -- Removed deprecated class `SilverStripe\VersionedAdmin\Extensions\CMSMainExtension` -- Changed return type for [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::generateSchemaForForm()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::generateSchemaForForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/versionfeed` - -- Removed deprecated method `SilverStripe\VersionFeed\VersionFeed::getDiffedChanges()` - -#### `silverstripe/webauthn-authenticator` - -- Removed deprecated method `SilverStripe\WebAuthn\BaseHandlerTrait::getDecoder()` -- Removed deprecated method `SilverStripe\WebAuthn\CredentialRepository::serialize()` -- Removed deprecated method `SilverStripe\WebAuthn\CredentialRepository::unserialize()` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationObjectLoader()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationObjectLoader()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationStatementSupportManager()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationStatementSupportManager()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getPublicKeyCredentialLoader()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getPublicKeyCredentialLoader()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) named `$store` -- Changed parameter type in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) for `$store` from `CBOR\Decoder` to [`SilverStripe\MFA\Store\StoreInterface`](api:SilverStripe\MFA\Store\StoreInterface) -- Changed parameter name in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) from `$decoder` to `$store` - -#### `symbiote/silverstripe-advancedworkflow` - -- Removed deprecated property `Symbiote\AdvancedWorkflow\Extensions\WorkflowEmbargoExpiryExtension::$showTimePicker` - -#### `symbiote/silverstripe-queuedjobs` - -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::getDefaultFormatter()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::getDefaultFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::handleBatch()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::handleBatch()) from dynamic to `void` -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::write()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::write()) from dynamic to `void` -- Changed parameter type in [`Symbiote\QueuedJobs\Services\QueuedJobHandler::write()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::write()) for `$record` from `array` to `Monolog\LogRecord` - - -## Change log - -### Features and enhancements - -- silverstripe/installer (4.12.0 -> 5.0.0-beta1) - - 2022-08-05 [1f718dc](https://github.com/silverstripe/silverstripe-installer/commit/1f718dcf544ba6068b27442d2a59d29e99c4a7dc) Remove resources-dir config from composer.json (#330) (Guy Sartorelli) - -- silverstripe/vendor-plugin (1.6.0 -> 2.0.0) - - 2022-08-03 [b9ca004](https://github.com/silverstripe/vendor-plugin/commit/b9ca004d85f14f01e61240632cef72806b57c5f1) Set the default resources dir to "_resources" (Guy Sartorelli) - -- silverstripe/recipe-cms (4.12.0 -> 5.0.0-beta1) - - 2022-08-05 [b61004e](https://github.com/silverstripe/recipe-cms/commit/b61004ebe1a6fb6190f8ba9f039b798a59d70d5a) Remove resources-dir config from composer.json (#59) (Guy Sartorelli) - -- silverstripe/recipe-core (4.12.0 -> 5.0.0-beta1) - - 2022-12-15 [9745b0d](https://github.com/silverstripe/recipe-core/commit/9745b0da2e7048a71172551e7ae558e750a12093) Pull .htaccess file when required as a dependency (#83) (Guy Sartorelli) - - 2022-08-05 [e6fb2d6](https://github.com/silverstripe/recipe-core/commit/e6fb2d67a32078fb6c404004891768126a7ee64c) Remove resources-dir config from composer.json (#76) (Guy Sartorelli) - -- silverstripe/assets (1.12.0 -> 2.0.0-beta1) - - 2022-12-12 [dfc3919](https://github.com/silverstripe/silverstripe-assets/commit/dfc391912e3120a618e7213c5c282c961dd2bfb4) PHP 8.2 support (Steve Boyd) - - 2022-10-03 [a730c06](https://github.com/silverstripe/silverstripe-assets/commit/a730c06283e19d5e241adb2a774c08dae48adee9) Check canViewFile permissions before automatically grant Session access to the file (#517) (Sabina Talipova) - -- silverstripe/framework (4.12.0 -> 5.0.0-beta1) - - 2023-02-08 [9a5ccdba5](https://github.com/silverstripe/silverstripe-framework/commit/9a5ccdba51db811926ea9503a285adc89fa24976) Protect against possible unexpected values (Guy Sartorelli) - - 2023-01-30 [af72f4ada](https://github.com/silverstripe/silverstripe-framework/commit/af72f4adade243b25d1b43c47d292861a5820ba7) Add translations from security-extensions module (Guy Sartorelli) - - 2023-01-29 [fecb7ba4d](https://github.com/silverstripe/silverstripe-framework/commit/fecb7ba4d8341e21c8d95d6cfe7bbf1095281645) Add sudo mode service (Guy Sartorelli) - - 2023-01-29 [0f4014650](https://github.com/silverstripe/silverstripe-framework/commit/0f4014650c33b08264d4ed529953023d7f32457f) Add easy way to dismiss all toasts in behat (#10661) (Guy Sartorelli) - - 2023-01-26 [8ddedb038](https://github.com/silverstripe/silverstripe-framework/commit/8ddedb038ea0866917ea7b39a853a6ab21a2373c) Allow admins to require password reset for members (Guy Sartorelli) - - 2023-01-18 [d1e0e1e30](https://github.com/silverstripe/silverstripe-framework/commit/d1e0e1e305d3276b8f2b1dfe8ed6af97f1274c44) Make limit method return no results when zero is provided (Maxime Rainville) - - 2023-01-17 [d7ddb0025](https://github.com/silverstripe/silverstripe-framework/commit/d7ddb00254ac21be78c3b227b59bd8bc61d9b0f9) Use masterminds/html5 for HTMLValue (Steve Boyd) - - 2023-01-17 [1a59bf50d](https://github.com/silverstripe/silverstripe-framework/commit/1a59bf50d1db6878b821e26ca84d460efb815000) Remove unused Translatable code (Steve Boyd) - - 2023-01-12 [2c105cffc](https://github.com/silverstripe/silverstripe-framework/commit/2c105cffc9436a0587381956118fe3361bad04d6) saveInto() new extension points. (#10636) (Mojmir Fendek) - - 2022-12-21 [c1a773310](https://github.com/silverstripe/silverstripe-framework/commit/c1a773310d088b22bea7ae1a6e1930050f0a33e2) PHP 8.2 support (Steve Boyd) - - 2022-11-10 [521c8179b](https://github.com/silverstripe/silverstripe-framework/commit/521c8179b1722a393ebeaceb9796591575a5325b) Correctly parse SomeClass::class syntax in textcollection (Guy Sartorelli) - - 2022-10-21 [df1d4a4b9](https://github.com/silverstripe/silverstripe-framework/commit/df1d4a4b9abe855a75bd70fb1d6c11804e545d79) Move email to data conversion to protected method (Steve Boyd) - - 2022-10-19 [2e85674cc](https://github.com/silverstripe/silverstripe-framework/commit/2e85674cccc1586b8ee7085d0d277a0528b7c918) Migrate from swiftmailer/swiftmailer to symfony/mailer (Steve Boyd) - - 2022-08-03 [ee4144fc3](https://github.com/silverstripe/silverstripe-framework/commit/ee4144fc359d3a0226c19b33420ec4a8c0269f03) Set the default resources dir to "_resources" (Guy Sartorelli) - - 2020-03-26 [a666814a8](https://github.com/silverstripe/silverstripe-framework/commit/a666814a80d7e97c43afe71ea36762c82dd1a62e) CSV BOM stripping is now handled internally by league/csv (Dan Hensby) - - 2018-10-05 [4339e4d02](https://github.com/silverstripe/silverstripe-framework/commit/4339e4d02c9b1c61140a9995dc9280f4ed68ed84) Add support for native nulls as template lookup arguments (Loz Calver) - - 2017-11-06 [156f63bce](https://github.com/silverstripe/silverstripe-framework/commit/156f63bce38a6b95d0f117eedbeb8819eb51d1b7) shorten auto-generated table names (Christopher Joe) - - 2017-01-17 [77c7552c3](https://github.com/silverstripe/silverstripe-framework/commit/77c7552c3fc2c53b08cc774c3734e3243b07c4e4) ORM’ Query is a generator-based IteratorAggregate (Sam Minnee) - - 2017-01-16 [6c136c9cf](https://github.com/silverstripe/silverstripe-framework/commit/6c136c9cf24223748db122c817b09e6cbd0e9472) Iterate ArrayList via a generator (Sam Minnee) - - 2017-01-12 [1b8f60102](https://github.com/silverstripe/silverstripe-framework/commit/1b8f601023a7a705b9fd22146e31f5addd15868a) Make DataList::getIterator a generator (Loz Calver) - -- silverstripe/admin (1.12.0 -> 2.0.0-beta1) - - 2023-01-29 [8aa9b0c3](https://github.com/silverstripe/silverstripe-admin/commit/8aa9b0c3e68963f8fcfc224ed0782fdd8b6805c4) Add HOC to provide sudo mode to child components (Guy Sartorelli) - - 2023-01-29 [ec6567c0](https://github.com/silverstripe/silverstripe-admin/commit/ec6567c05e9d0988c97b725495a493260821129b) Add new circular loading react component (Guy Sartorelli) - - 2023-01-29 [3c63b6d1](https://github.com/silverstripe/silverstripe-admin/commit/3c63b6d127d12fd263c0f31d479f24d7cd15c840) Add sudo mode controller (Guy Sartorelli) - - 2023-01-26 [29f70676](https://github.com/silverstripe/silverstripe-admin/commit/29f70676d7f7544ffdeab865cf1be2bcae533bdf) Remove unnecessary JS imports. (Guy Sartorelli) - - 2023-01-20 [54b29aff](https://github.com/silverstripe/silverstripe-admin/commit/54b29affec34a8a8093914b0dba42ee070ce7c04) Allow base URL to not have trailing slash (#1438) (Guy Sartorelli) - - 2023-01-17 [dc2c4522](https://github.com/silverstripe/silverstripe-admin/commit/dc2c45222f82f6c806093edfe01f4eb7bb192f5c) Remove unused Translatable code (Steve Boyd) - - 2023-01-11 [828ef08e](https://github.com/silverstripe/silverstripe-admin/commit/828ef08e16e0e0c47fce43cfefcc68bd33b74c1f) Expose ApolloClient for other modules to use (Guy Sartorelli) - - 2023-01-09 [af2b8c82](https://github.com/silverstripe/silverstripe-admin/commit/af2b8c82256c0bd5178404bdd7b33363bf52998b) Export emotion cache provider. (Guy Sartorelli) - - 2022-09-29 [6b1496fb](https://github.com/silverstripe/silverstripe-admin/commit/6b1496fb5d897d4e1185f523c415589739f43d04) Implement our TinyMCE skin for TinyMCE 6 (Guy Sartorelli) - - 2022-09-14 [2d2985c4](https://github.com/silverstripe/silverstripe-admin/commit/2d2985c433a7f895a45c9e715b77147fb22ba1a1) Records can be made previewable with an extension (Guy Sartorelli) - -- silverstripe/asset-admin (1.12.0 -> 2.0.0-beta1) - - 2023-01-12 [447beaa0](https://github.com/silverstripe/silverstripe-asset-admin/commit/447beaa0a89c1b9cf7bd79f353d29d0fee5a408f) Allow URLs without trailing slashes (Guy Sartorelli) - - 2022-08-31 [6c9f9ecc](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c9f9eccde979b4aa0943c8ea99f75ef725bf461) Don't call deprecated constructExtensions method (#1290) (Guy Sartorelli) - -- silverstripe/campaign-admin (1.12.0 -> 2.0.0-beta1) - - 2023-01-12 [a2a95ae](https://github.com/silverstripe/silverstripe-campaign-admin/commit/a2a95aec84051ac0044dfd9b2a9d203b63b1b098) Allow URLs without trailing slashes (Guy Sartorelli) - -- silverstripe/versioned-admin (1.12.0 -> 2.0.0-beta1) - - 2022-09-01 [8ee61fd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/8ee61fd184bbcc7c9584af7baeceeca0325af2de) Remove deprecated HistoryControllerFactory. (#251) (Guy Sartorelli) - -- silverstripe/cms (4.12.0 -> 5.0.0-beta1) - - 2023-01-18 [b57d557b](https://github.com/silverstripe/silverstripe-cms/commit/b57d557bc7a6529e58ad40137ae5f87dd564743d) Remove unused Translatable code (Steve Boyd) - - 2023-01-11 [ef4122da](https://github.com/silverstripe/silverstripe-cms/commit/ef4122da04ba38e5b5a563beea276fe45277adc4) Use the EmotionCssCacheProvider component (Guy Sartorelli) - - 2022-09-14 [6ff98c42](https://github.com/silverstripe/silverstripe-cms/commit/6ff98c42012c58bd790dae9eea3e8962b881f21d) Records can be made previewable via an extension (Guy Sartorelli) - - 2022-08-29 [adcea213](https://github.com/silverstripe/silverstripe-cms/commit/adcea213a27b73d57c59077349f6dad714e3f724) Remove CSS for CMSPageHistoryController. (Guy Sartorelli) - -- silverstripe/siteconfig (4.12.0 -> 5.0.0-beta1) - - 2022-10-07 [458f5dd4](https://github.com/silverstripe/silverstripe-siteconfig/commit/458f5dd4059b05a836bfa21bce8e52bbeefbad9e) Let SiteConfig be previewable (Guy Sartorelli) - -- silverstripe/graphql (4.1.0 -> 5.0.0-beta1) - - 2022-11-10 [b47177d](https://github.com/silverstripe/silverstripe-graphql/commit/b47177d4bbd316b1e6522e7341567ec54c2590f9) Use HashNameObfuscator in dev environments (Steve Boyd) - -- silverstripe/documentconverter (2.4.0 -> 3.0.0-beta1) - - 2023-01-19 [34d3c29](https://github.com/silverstripe/silverstripe-documentconverter/commit/34d3c293b059997c34884a411a6db4fcb3e61b1d) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/iframe (2.3.0 -> 3.0.0-beta1) - - 2023-01-19 [ad4342f](https://github.com/silverstripe/silverstripe-iframe/commit/ad4342f1d064bbb10587f777e93be5776c7e0cb7) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/taxonomy (2.4.0 -> 3.0.0-beta1) - - 2022-09-06 [4d2102d](https://github.com/silverstripe/silverstripe-taxonomy/commit/4d2102d4c8ce70f607dbeae665367559bce39c48) Replace ADMIN permissions with less permissions in Behat test (Sabina Talipova) - -- silverstripe/widgets (2.3.0 -> 3.0.0-beta1) - - 2023-01-20 [28d16bf](https://github.com/silverstripe/silverstripe-widgets/commit/28d16bfdc974f8eb321140b2488237010e490ba4) Fix linting issues (Guy Sartorelli) - - 2023-01-20 [4f04dd8](https://github.com/silverstripe/silverstripe-widgets/commit/4f04dd8b9bd37c7634c7231f3e792eefc31eeb66) Use frontend build stack (Guy Sartorelli) - -- silverstripe/comments (3.9.0 -> 4.0.0-beta1) - - 2023-01-19 [71a09ea](https://github.com/silverstripe/silverstripe-comments/commit/71a09eaecacfdee3eda409e23b4270a54631307c) Update regex to most recent jQuery.validate (Guy Sartorelli) - -- silverstripe/securityreport (2.5.0 -> 3.0.0-beta1) - - 2022-09-06 [8042bd4](https://github.com/silverstripe/silverstripe-securityreport/commit/8042bd47af22c27da5de00048631c178ebed61ea) Replace ADMIN permissions with less permissions in Behat test (Sabina Talipova) - -- silverstripe/sitewidecontent-report (3.3.0 -> 4.0.0-beta1) - - 2022-09-05 [c18b1ca](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/c18b1caecdfd145d606ad8654ff39a67c24c7841) Replace ADMIN permissions with less permissions in Behat test (Sabina Talipova) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0-beta1) - - 2022-04-26 [ab967ee](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/ab967ee9cd8e1f56f529a575deb22b4dcf7e8bad) Use composer 2 (#62) (Steve Boyd) - -- silverstripe/elemental-fileblock (2.4.0 -> 3.0.0-beta1) - - 2022-08-31 [fe502d9](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/fe502d93444258b34cfe600f9b4a17da4dfbc477) Replace ADMIN permissions with less permissions in Behat test (Sabina Talipova) - -- silverstripe/fulltextsearch (3.11.1 -> 4.0.0-beta1) - - 2023-01-19 [723ff53](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/723ff530dd6e51060a998faf93094472781bd7a0) PHP 8.2 compatibility (Steve Boyd) - -- cwp/cwp-core (2.11.0 -> 3.0.0-beta1) - - 2023-01-19 [5887669](https://github.com/silverstripe/cwp-core/commit/588766969031a98620124e8210a77d37b7bf1f5d) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/subsites (2.7.0 -> 3.0.0-beta1) - - 2023-01-24 [f397ab3](https://github.com/silverstripe/silverstripe-subsites/commit/f397ab352bf28a3dd955f3a02b397f2c9c121f29) Prepare correct JS/CSS structure to use webpack (Guy Sartorelli) - -- dnadesign/silverstripe-elemental-userforms (3.2.1 -> 4.0.0-beta1) - - 2022-08-29 [6eb355b](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/6eb355b4fe48b25c404be6a61ea48465d15727d1) Add permissions for Content Editor (Sabina Talipova) - -- silverstripe/silverstripe-fluent (4.7.0 -> 7.0.0-beta1) - - 2022-03-24 [182c95e](https://github.com/silverstripe/silverstripe-fluent/commit/182c95e4da1cf932d53270c35fb243cda141a979) GitHub workflows setup. (Mojmir Fendek) - - 2022-03-09 [4bdabcb](https://github.com/silverstripe/silverstripe-fluent/commit/4bdabcbcb3201f4f497825fb567c7501dbc33c72) Locale performance / extensibility enhancements. (Mojmir Fendek) - - 2022-02-08 [9cb3ff5](https://github.com/silverstripe/silverstripe-fluent/commit/9cb3ff5afc53f871eb6fab8c1e109b6f535f1a9c) More granular permissions for GridField actions. (Mojmir Fendek) - - 2022-01-27 [708ff73](https://github.com/silverstripe/silverstripe-fluent/commit/708ff73fa7246f20a988bfbfd0138c7e4d05a609) Copy to locale enhancements. (Mojmir Fendek) - - 2021-05-20 [f8f8845](https://github.com/silverstripe/silverstripe-fluent/commit/f8f88456a6917e7a715874bfc8de6e4250f27396) Locale fallback configuration enhancement. (Mojmir Fendek) - - 2021-04-22 [f5c8dce](https://github.com/silverstripe/silverstripe-fluent/commit/f5c8dcef5da29711d5766f68ea3a58897d7d1b75) Allow isolated items to appear in the CMS if conditionally queried by ID / FK explicitly (configurable) (Damian Mooyman) - - 2021-02-26 [9db534e](https://github.com/silverstripe/silverstripe-fluent/commit/9db534e82e6725d6a16dd25c42687fbf80c3143f) Clickable links on page info for localisation tab. (Vivienne Tubbs) - - 2021-01-13 [2b6ca3f](https://github.com/silverstripe/silverstripe-fluent/commit/2b6ca3f6a6644791588a85ecaefa292cb6f7a5a4) Initial page localisation task (for single language sites import). (Mojmir Fendek) - - 2020-11-11 [87c4652](https://github.com/silverstripe/silverstripe-fluent/commit/87c46529134b5801de422438d7bf9ad6e8a03a61) If changing locales in the CMS, ensure that 404 errors redirect to the CMS home page (Damian Mooyman) - - 2020-06-22 [4363d9e](https://github.com/silverstripe/silverstripe-fluent/commit/4363d9e0f8967d92b7c68582df6bb8fb9e2eba77) Localisation manager UI improvements. (Mojmir Fendek) - -### Bugfixes - -- silverstripe/recipe-kitchen-sink (4.12.0 -> 5.0.0-beta1) - - 2022-12-16 [7f718cc](https://github.com/silverstripe/recipe-kitchen-sink/commit/7f718ccfb08ef8e2ab5640ae1bdb8a857d4def7a) Revert initial composer.json version (Sabina Talipova) - -- silverstripe/installer (4.12.0 -> 5.0.0-beta1) - - 2022-12-20 [62c49ca](https://github.com/silverstripe/silverstripe-installer/commit/62c49cac6db810058bf6488a778a2cc05297f840) Move test requirements out of require-dev (Steve Boyd) - -- silverstripe/assets (1.12.0 -> 2.0.0-beta1) - - 2022-12-08 [459d421](https://github.com/silverstripe/silverstripe-assets/commit/459d421ddcb253bf86ce0904c52692781fb6cf7c) Cast absoluteUrl() argument to string (Steve Boyd) - -- silverstripe/framework (4.12.0 -> 5.0.0-beta1) - - 2023-02-01 [738ca487a](https://github.com/silverstripe/silverstripe-framework/commit/738ca487ac7ebc037d9bff9d2f5b9b417797df26) Allow public extension getter methods to work (#10676) (Guy Sartorelli) - - 2023-02-01 [826028082](https://github.com/silverstripe/silverstripe-framework/commit/826028082bc1295af0a1b3969cdfdf570d13e174) Sort without specifying a table name (#10675) (Guy Sartorelli) - - 2023-01-31 [dca4e0bcb](https://github.com/silverstripe/silverstripe-framework/commit/dca4e0bcb85d71574c391895e37700674ad06521) Remove unused action from allowed_actions (#10672) (Guy Sartorelli) - - 2023-01-30 [14a449fea](https://github.com/silverstripe/silverstripe-framework/commit/14a449feaa1b142152593c3c131b34d957d46309) Don't try to access private properties/methods (Guy Sartorelli) - - 2023-01-11 [6d4542561](https://github.com/silverstripe/silverstripe-framework/commit/6d4542561bcb279a21d935095c2381baf40f8be4) Check is_callable parent methods before invoke (#10637) (Sabina Talipova) - - 2023-01-02 [bb8e3b838](https://github.com/silverstripe/silverstripe-framework/commit/bb8e3b83864ae5580dd0bab6b798732132c2feb5) fix: optional return value for paginator state (Florian Thoma) - - 2022-12-13 [700288d5c](https://github.com/silverstripe/silverstripe-framework/commit/700288d5cae473b9f6a887708220a64218438148) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-11-24 [1354edf05](https://github.com/silverstripe/silverstripe-framework/commit/1354edf0545d7ded71b39102b6cc59a145a1b02e) fix misleading error message with test class (Will Rossiter) - - 2022-09-19 [ef8a02dfd](https://github.com/silverstripe/silverstripe-framework/commit/ef8a02dfdcbc82c82f7fe02d750a9b986101ae6d) Update config to support tinymce6 (Guy Sartorelli) - - 2022-09-13 [a2028a281](https://github.com/silverstripe/silverstripe-framework/commit/a2028a28175afc7f6af1e29e0a1f887ec25b9c55) Pass PSR6 caches to ChainAdapter (Steve Boyd) - - 2022-09-09 [e140c3786](https://github.com/silverstripe/silverstripe-framework/commit/e140c3786c96ac146127a92e08dee470c6c6682c) Ensure consistent behaviour with repeat iterations (Guy Sartorelli) - - 2022-09-08 [62ee63706](https://github.com/silverstripe/silverstripe-framework/commit/62ee63706f7d97bdd96faffed44db65b6090b280) PHP 8.1 compatability for iterators. (Guy Sartorelli) - - 2022-08-31 [89a0f59ef](https://github.com/silverstripe/silverstripe-framework/commit/89a0f59ef189e8c7b99b0f973768dc41106e0397) Remove accidental deprecation warnings. (Guy Sartorelli) - - 2022-08-17 [d55683d02](https://github.com/silverstripe/silverstripe-framework/commit/d55683d02b08f368263771c354661e9de73e1244) Ensure PHP 8.1 compatible version of oscarotero/html-parser is installed (Steve Boyd) - - 2022-08-11 [bf331072d](https://github.com/silverstripe/silverstripe-framework/commit/bf331072df0c9c3f3b941a4405c1c9de5f58315c) Don't try to call count() on an iterator (Guy Sartorelli) - - 2019-05-06 [e07671a89](https://github.com/silverstripe/silverstripe-framework/commit/e07671a8903870b7c7f2d24e446963f9460ef68c) Fix SQLConditionalExpression::getJoins so it always adds explicit aliases (Serge Latyntcev) - - 2018-10-05 [3a6c48cdd](https://github.com/silverstripe/silverstripe-framework/commit/3a6c48cddbccf1f467993e2838daaa1d6602d41b) template parser erroring on strings partially matching true/false/null (Loz Calver) - - 2018-10-05 [d6e822935](https://github.com/silverstripe/silverstripe-framework/commit/d6e822935205c44534054a2a96a31df2fbe40a09) Fix type preservation in <% include %> arguments (Loz Calver) - - 2018-02-20 [f2211d690](https://github.com/silverstripe/silverstripe-framework/commit/f2211d690f292886a29e1a5d4117cd9cdc7fe840) Fix extend() failing on protected extend-prefixed methods (Damian Mooyman) - - 2017-11-28 [b36a01a8f](https://github.com/silverstripe/silverstripe-framework/commit/b36a01a8fd7d83aa5abaa09dd76778c8b6c1db7d) Fix table name test (Christopher Joe) - - 2017-06-28 [9eb9e1307](https://github.com/silverstripe/silverstripe-framework/commit/9eb9e1307103e3c758dad58fcf24195c88eba0dc) Re-set finalisedQuery to allow recreation of iterator. (Sam Minnee) - - 2017-06-28 [8e0e797b4](https://github.com/silverstripe/silverstripe-framework/commit/8e0e797b402b1b2ca8916594a9c9a27b22f6a6d1) Fix code style (Loz Calver) - - 2017-01-17 [6ef5785fc](https://github.com/silverstripe/silverstripe-framework/commit/6ef5785fc5338eac1213af8feddf9f407e7ff43f) pre-cache loop content within SSViewer. (Sam Minnee) - - 2017-01-17 [d8735633a](https://github.com/silverstripe/silverstripe-framework/commit/d8735633a765d19fcd8261a99310a1093d398506) Don’t call PaginatedList::getIterator() directly. (Sam Minnee) - - 2017-01-17 [1efe2b46f](https://github.com/silverstripe/silverstripe-framework/commit/1efe2b46ffcd524cbe0e5cbc1593be47e2de589a) Fix PaginatedList::toArray() (Sam Minnee) - -- silverstripe/admin (1.12.0 -> 2.0.0-beta1) - - 2023-01-19 [4a1b488a](https://github.com/silverstripe/silverstripe-admin/commit/4a1b488ad06668f5aa7ca67f5f5d5e5ff6429609) Reuse emotion cache to avoid conflicts (Guy Sartorelli) - - 2023-01-19 [edb97adc](https://github.com/silverstripe/silverstripe-admin/commit/edb97adc9807054c7dfe79082537d599f7e3a1c4) Expose sublibraries of dependencies (Guy Sartorelli) - - 2023-01-08 [118681ad](https://github.com/silverstripe/silverstripe-admin/commit/118681ada4317694375d3e36b2b97c1907c67ef1) Set the value correctly when passed as prop. (Guy Sartorelli) - - 2022-12-08 [ce799e55](https://github.com/silverstripe/silverstripe-admin/commit/ce799e559abc6da6ae40f521892600f98f8cbe4b) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-12-01 [8d6c1acb](https://github.com/silverstripe/silverstripe-admin/commit/8d6c1acb4dfac5e0f6106fe99a75da2350e5a91e) Rebuild JS bundles (#1401) (Sabina Talipova) - - 2022-10-11 [3f30aa21](https://github.com/silverstripe/silverstripe-admin/commit/3f30aa214a7f3d41edb47def11e15e53c2d331c2) Set name of TinyMCE i18n file to be correct (Guy Sartorelli) - - 2022-10-07 [e5badb5d](https://github.com/silverstripe/silverstripe-admin/commit/e5badb5db705cc3a1c99cd0b29acf669e11dd356) Let admins get navigators for their own records (Guy Sartorelli) - - 2022-09-30 [7b3ac231](https://github.com/silverstripe/silverstripe-admin/commit/7b3ac2317e44650cf8b8f680edce32ebf6a8f79e) Use correct TinyMCE selection logic (Guy Sartorelli) - -- silverstripe/asset-admin (1.12.0 -> 2.0.0-beta1) - - 2023-02-08 [1bb852ea](https://github.com/silverstripe/silverstripe-asset-admin/commit/1bb852ea198e6c1bfbab40e79a8321943612a227) Don't enter infinite loop when saving form (#1329) (Guy Sartorelli) - - 2023-01-29 [0dfc61e0](https://github.com/silverstripe/silverstripe-asset-admin/commit/0dfc61e0cfa23720824fb1317edb94d62e13ffad) update react render (#1322) (Guy Sartorelli) - - 2023-01-10 [ba67f151](https://github.com/silverstripe/silverstripe-asset-admin/commit/ba67f1518fa7dd5e2aa3665720d011e2daaebde3) Correctly reset file details after bulk publish (Guy Sartorelli) - - 2022-12-08 [379ddb52](https://github.com/silverstripe/silverstripe-asset-admin/commit/379ddb52f863a4b40fb84853ded0e79684dbc262) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-09-30 [46a25f15](https://github.com/silverstripe/silverstripe-asset-admin/commit/46a25f15c13623db941cca6e6e6a353c580d4a22) Use correct selection logic for TinyMCE (Guy Sartorelli) - - 2022-09-30 [c29a14b4](https://github.com/silverstripe/silverstripe-asset-admin/commit/c29a14b416b23f5d73c7874094276d5aac68535f) Publish assets in WYSIWYG when publishing page. (Guy Sartorelli) - - 2022-09-19 [67d6966c](https://github.com/silverstripe/silverstripe-asset-admin/commit/67d6966c1a64944187e878d53394438a250aca55) Update plugins to work with TinyMCE 6 (Guy Sartorelli) - -- silverstripe/versioned-admin (1.12.0 -> 2.0.0-beta1) - - 2023-02-02 [90ee112](https://github.com/silverstripe/silverstripe-versioned-admin/commit/90ee112a1432cc6575171299f6b44599068cd39e) Use the new HtmlDiff class (Guy Sartorelli) - - 2023-01-29 [5ad5cd4](https://github.com/silverstripe/silverstripe-versioned-admin/commit/5ad5cd42bee4ca5823a2da73ef04e8a471f0b807) Remove unused import (#270) (Guy Sartorelli) - -- silverstripe/cms (4.12.0 -> 5.0.0-beta1) - - 2023-01-12 [98115792](https://github.com/silverstripe/silverstripe-cms/commit/9811579203df35e40273f4502b5e3e9afa5a1987) Behat test (Steve Boyd) - - 2023-01-09 [b9115f3f](https://github.com/silverstripe/silverstripe-cms/commit/b9115f3f6d9037c0ada8d07788f141d6d1420f56) Fix anchor select field component (Guy Sartorelli) - - 2022-12-08 [605daf50](https://github.com/silverstripe/silverstripe-cms/commit/605daf5026164c0f80876ce853bff5dec11f1524) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-12-05 [3186e0e1](https://github.com/silverstripe/silverstripe-cms/commit/3186e0e129777ec463a5c7612be4e08b48d23cf4) Use orderBy() instead of sort() (Steve Boyd) - - 2022-10-19 [af1a482d](https://github.com/silverstripe/silverstripe-cms/commit/af1a482d20c32dfe20718861d3b5edb5dcfd905d) Loosen config order to allow "after: '*'" in framework (#2793) (Guy Sartorelli) - - 2022-09-30 [bedd6455](https://github.com/silverstripe/silverstripe-cms/commit/bedd64554f0d6786a7f033c328b0bb7a657e4358) Use correct TinyMCE selection logic (Guy Sartorelli) - - 2022-09-19 [7368df87](https://github.com/silverstripe/silverstripe-cms/commit/7368df875730eb176c8223bef636e917c12842b1) Fix link plugins to support tinymce6 (Guy Sartorelli) - - 2022-08-25 [803b4add](https://github.com/silverstripe/silverstripe-cms/commit/803b4add7bc6efa5a249b15d16aec22e44d9362c) Resolve CI failure (Guy Sartorelli) - - 2018-05-01 [b46876b8](https://github.com/silverstripe/silverstripe-cms/commit/b46876b8a8959b15274bef9163530be3a6e2d678) Don't offer to restore to root if can_be_root is false (Mike Cochrane) - -- silverstripe/siteconfig (4.12.0 -> 5.0.0-beta1) - - 2023-01-23 [4155b889](https://github.com/silverstripe/silverstripe-siteconfig/commit/4155b889fcc3fcfe042936846e2f223df3804d72) Bring back empty _config.PHP file (Maxime Rainville) - - 2022-11-09 [468b260a](https://github.com/silverstripe/silverstripe-siteconfig/commit/468b260acbb992b1716bbbaa8f0bb3732b0eee1c) SiteConfig should use getCMSCompositeValidator (fixes #131) (Loz Calver) - -- silverstripe/versioned (1.12.0 -> 2.0.0-beta1) - - 2023-02-02 [4796ab4](https://github.com/silverstripe/silverstripe-versioned/commit/4796ab4d29e915626d03c575b0c54f9eeb049d3e) Use the new HtmlDiff class (Guy Sartorelli) - - 2022-12-15 [20e681d](https://github.com/silverstripe/silverstripe-versioned/commit/20e681d721bc83c844f35eb75cc4f9e6cdb89d63) Handle a bool return type from DateTime::getLastErrors() (Steve Boyd) - - 2022-12-05 [76fbb52](https://github.com/silverstripe/silverstripe-versioned/commit/76fbb521b1ec5b6b222df7112f1d6c5dfdcac2ac) Ensure sort is not empty (Steve Boyd) - -- silverstripe/graphql (4.1.0 -> 5.0.0-beta1) - - 2022-09-12 [a52cabd](https://github.com/silverstripe/silverstripe-graphql/commit/a52cabd4a041527f82e935a7dba65906e5f53540) Use symfony6 cache classes (Steve Boyd) - -- silverstripe/recipe-authoring-tools (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [0bc9677](https://github.com/silverstripe/recipe-authoring-tools/commit/0bc967735ec0d18e2b49d923e176863970021828) Revert wrong merge (#25) (Sabina Talipova) - -- silverstripe/recipe-blog (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [8b61de9](https://github.com/silverstripe/recipe-blog/commit/8b61de96515a0b717254084dcfb5441767dd36b4) Revert wrong merge (#39) (Sabina Talipova) - -- silverstripe/spamprotection (3.3.0 -> 4.0.0-beta1) - - 2023-01-15 [2a55708](https://github.com/silverstripe/silverstripe-spamprotection/commit/2a55708ae81197275233861d5fe58ce4d9d15caf) Check value is not NULL (Sabina Talipova) - -- silverstripe/comments (3.9.0 -> 4.0.0-beta1) - - 2023-01-19 [5c2552e](https://github.com/silverstripe/silverstripe-comments/commit/5c2552e4c994c5abdff102f02477538ed5d90b48) Parameter order (Steve Boyd) - - 2023-01-19 [0048a7a](https://github.com/silverstripe/silverstripe-comments/commit/0048a7abb9c1e73d9e6357d594a7bc39a61af629) Resolve linting issues (Guy Sartorelli) - -- silverstripe/comment-notifications (2.3.0 -> 3.0.0-beta1) - - 2023-02-02 [9032055](https://github.com/silverstripe/comment-notifications/commit/9032055976d371493d21e694b720405fa7cde1e8) Validate email correctly when in array format (#51) (Guy Sartorelli) - -- silverstripe/recipe-collaboration (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [880c4b5](https://github.com/silverstripe/recipe-collaboration/commit/880c4b53520bd9e869f2aa9b40025e11cb5a607d) Revert wrong merge (#22) (Sabina Talipova) - -- silverstripe/recipe-form-building (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [d56ed8b](https://github.com/silverstripe/recipe-form-building/commit/d56ed8b17edd214be68120383b9cc17a1abc33a6) Revert wrong merge (#24) (Sabina Talipova) - -- silverstripe/userforms (5.14.0 -> 6.0.0-beta1) - - 2023-01-17 [746ac8a](https://github.com/silverstripe/silverstripe-userforms/commit/746ac8aedfdf5df28b1aa9e29cdaaf318ddc39de) Use HTMLValue::class (Steve Boyd) - - 2022-12-06 [c593138](https://github.com/silverstripe/silverstripe-userforms/commit/c593138569a2f48c5a6bd268c07ff7eadfcfe19c) Ensure .nolabel is only added once when Hide Title is used (jeric realubit) - -- silverstripe/recipe-reporting-tools (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [11965af](https://github.com/silverstripe/recipe-reporting-tools/commit/11965af8f80b29b3bd7e79d94d02023b88afb31f) Revert wrong merge (#33) (Sabina Talipova) - -- silverstripe/externallinks (2.3.0 -> 3.0.0-beta1) - - 2023-01-17 [8456e46](https://github.com/silverstripe/silverstripe-externallinks/commit/8456e46f836c4b4265373ec218a41ccd90336b31) Use HTMLValue::class (Steve Boyd) - - 2022-07-19 [d1cc3f8](https://github.com/silverstripe/silverstripe-externallinks/commit/d1cc3f80abb8b5c0b607462a4a460fc7104ba570) Move files to client directory (Steve Boyd) - -- silverstripe/recipe-services (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [cc78ba3](https://github.com/silverstripe/recipe-services/commit/cc78ba3e7b6257d59725f941102b353d6ac76df4) Revert wrong merge (#24) (Sabina Talipova) - -- silverstripe/recipe-content-blocks (2.12.0 -> 3.0.0-beta1) - - 2022-12-18 [ccf7737](https://github.com/silverstripe/recipe-content-blocks/commit/ccf7737622faf05aecdd4316e2294dee69883f28) Revert wrong merge (#29) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.10.0 -> 5.0.0-beta1) - - 2023-01-26 [c552d2e](https://github.com/silverstripe/silverstripe-elemental/commit/c552d2e70de0cd4102d3e4b943dc02cb2341e42d) Don't refer to removed class (Guy Sartorelli) - - 2022-12-08 [4cf4027](https://github.com/silverstripe/silverstripe-elemental/commit/4cf4027e9b3a0ec6b63ec02c582ae6f9439266b6) Cast possibly null link to string (Steve Boyd) - - 2022-08-29 [ce8a102](https://github.com/silverstripe/silverstripe-elemental/commit/ce8a102b69f33d67b01510b856725cfd9291dfa4) Use correct return type for permission checks (Guy Sartorelli) - -- silverstripe/recipe-solr-search (2.12.0 -> 3.0.0-beta1) - - 2022-12-18 [ce7f63f](https://github.com/silverstripe/recipe-solr-search/commit/ce7f63fccffa20dbcd12159e91d86b86aad2582e) Revert wrong merge (#16) (Sabina Talipova) - -- cwp/cwp-search (1.7.0 -> 2.0.0-beta1) - - 2022-07-19 [4c24a4d](https://github.com/silverstripe/cwp-search/commit/4c24a4d3973ab572473d4341143fd1e04a3a954b) Solr communication error (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (4.11.0 -> 5.0.0-beta1) - - 2022-12-14 [0c18b40](https://github.com/symbiote/silverstripe-queuedjobs/commit/0c18b401a5cd3c14b66e30a67c2c9d66c840948f) Use record() instead of first() (Steve Boyd) - -- cwp/cwp-core (2.11.0 -> 3.0.0-beta1) - - 2022-07-25 [5c7f5be](https://github.com/silverstripe/cwp-core/commit/5c7f5bec182059838e0d21e1d96756b24feb3122) Require PHP 7.4 compatible version of silverstripe/auditor (Steve Boyd) - -- silverstripe/developer-docs (4.12.0 -> 5.0.0-beta1) - - 2023-02-08 [a69490b4](https://github.com/silverstripe/developer-docs/commit/a69490b479fc24b5a6a621db6a874d40ef7edccf) Fix a bunch of API links (Maxime Rainville) - - 2023-02-08 [5cc10ba8](https://github.com/silverstripe/developer-docs/commit/5cc10ba8063c6d20561bfc01ac9352ced42d53a3) Fix bad GitHub link by poiting to packagist instead. (Maxime Rainville) - - 2022-09-15 [81f4565d](https://github.com/silverstripe/developer-docs/commit/81f4565d4b579a6c0ee949360252df3e939d5d67) Show alpha directory (#89) (Guy Sartorelli) - -- silverstripe/mfa (4.7.0 -> 5.0.0-beta1) - - 2023-02-07 [fa5b8dc](https://github.com/silverstripe/silverstripe-mfa/commit/fa5b8dc0a9c3f5a254a54c8ba918cc929f717ba0) Add back in sudo mode activation on login (Steve Boyd) - - 2023-01-17 [34af8cd](https://github.com/silverstripe/silverstripe-mfa/commit/34af8cd73cc03bd7427b59fc1544e1eb685e69b3) Update SecurityAdminExtension::sendResetEmail() to account new returned type for Email::send() (Maxime Rainville) - - 2023-01-16 [8482176](https://github.com/silverstripe/silverstripe-mfa/commit/84821769219f2b73ae0cf59969c553ba9f7d2689) Change the AJAX endpoint to reset the MFA set up for a user (Maxime Rainville) - -- silverstripe/webauthn-authenticator (4.6.0 -> 5.0.0-beta1) - - 2023-02-07 [0523fed](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/0523fed85f2813852b903bc20e1663e3ebcb6972) Remove padding to work with web-auth/webauthn-lib 4.1.0+ (Steve Boyd) - -- silverstripe/subsites (2.7.0 -> 3.0.0-beta1) - - 2023-01-26 [80eb9ec](https://github.com/silverstripe/silverstripe-subsites/commit/80eb9ec15a2e29af688e56e8bfe5da9eb8fc1c4b) Remove wildcard from config (Steve Boyd) - - 2023-01-19 [f50cd3e](https://github.com/silverstripe/silverstripe-subsites/commit/f50cd3e348155acde224d79f5760a047be4e658c) Parameter order (Steve Boyd) - -- silverstripe/lumberjack (2.2.0 -> 3.0.0-beta1) - - 2023-01-19 [fccf95e](https://github.com/silverstripe/silverstripe-lumberjack/commit/fccf95edf52606540c7804ce85eaa85e9986200f) Parameter order (Steve Boyd) - - 2018-08-29 [d526926](https://github.com/silverstripe/silverstripe-lumberjack/commit/d52692661a25f088709c528c21b4764bfe308208) ensuring showingCMSTree() call references extended SiteTree object rather than extension itself (Luke Fromhold) - -- cwp/starter-theme (3.2.1 -> 4.0.0-beta1) - - 2023-01-29 [4ddc59c](https://github.com/silverstripe/cwp-starter-theme/commit/4ddc59c6450c10dfaa04b4db860317ca6592f29b) Remove reference to empty CSS file. (#219) (Guy Sartorelli) - -- cwp/watea-theme (3.1.0 -> 4.0.0-beta1) - - 2022-07-19 [034540d](https://github.com/silverstripe/cwp-watea-theme/commit/034540dc0fce1a5aba6f8cf5a0aa5e05cdfdcd11) Add step to CI (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (3.5.0 -> 4.0.0-beta1) - - 2023-01-18 [fd24736](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/fd24736b52f7ac18f08d813f042da3e18aa9c278) Use DataList::orderBy() (#353) (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.0.2 -> 4.0.0-beta1) - - 2023-02-01 [563f253](https://github.com/colymba/GridFieldBulkEditingTools/commit/563f253f36af93cf6680d515f2c669cf10f21dcf) Don't use removed method. (Guy Sartorelli) - - 2022-06-28 [d420a29](https://github.com/colymba/GridFieldBulkEditingTools/commit/d420a29e9f3af35412624e4068e90f80427fa672) Row updating broken in Silverstripe 4 (#197) (Niklas Forsdahl) - - 2020-05-15 [7652fee](https://github.com/colymba/GridFieldBulkEditingTools/commit/7652fee82f6c35d5f4e416a2971b766b57f2a791) publishRecursive() is part of RecursivePublishable, not Versioned (Loz Calver) - -- silverstripe/silverstripe-fluent (4.7.0 -> 7.0.0-beta1) - - 2023-01-26 [759c49e](https://github.com/silverstripe/silverstripe-fluent/commit/759c49ec4414410110a1eacbcd49346f743c96a1) Don't use removed API (Guy Sartorelli) - - 2023-01-18 [a6a3fee](https://github.com/silverstripe/silverstripe-fluent/commit/a6a3feea8ede779cef3b8f239379103de6a73073) Get fluent to dev/build (Steve Boyd) - - 2023-01-13 [4531289](https://github.com/silverstripe/silverstripe-fluent/commit/45312894e7885273646fb2732ad514e668071ab9) GitHub actions setup (linting). (Mojmir Fendek) - - 2022-03-27 [b22973f](https://github.com/silverstripe/silverstripe-fluent/commit/b22973f3ab2f4c767b19b7f91c2cb617bec6b8d0) Legacy permissions migration fix. (Mojmir Fendek) - - 2022-03-27 [4a1f86d](https://github.com/silverstripe/silverstripe-fluent/commit/4a1f86db6324412ff73bcfde0586e019edfd37bb) Explicit PHP version for scrutinizer.. (Mojmir Fendek) - - 2022-03-25 [56337af](https://github.com/silverstripe/silverstripe-fluent/commit/56337af2373ea141cba679fd53dc6e5677454f43) PHP 8 compatibility patch. (Mojmir Fendek) - - 2022-03-10 [c2d0abe](https://github.com/silverstripe/silverstripe-fluent/commit/c2d0abea14625768e289e72c6401335eb28bf36c) fix: issue with "all CMS sections" permission erroneously handling fluent permissions (Damian Mooyman) - - 2022-03-01 [33ac317](https://github.com/silverstripe/silverstripe-fluent/commit/33ac31727d3a478a064a887ff8ac4ce092c9948f) Fix missing locale in callback signature (Rens Korswagen) - - 2022-02-10 [7353136](https://github.com/silverstripe/silverstripe-fluent/commit/7353136113fb9618169df5a231498ec1e9e49663) SiteTree item styles should not trickle down the sub-tree. (Mojmir Fendek) - - 2022-02-03 [32452fb](https://github.com/silverstripe/silverstripe-fluent/commit/32452fb31d85acad8ed9960863bf90b1298766b4) Localisation manager / Live state flag and stages differ correction. (Mojmir Fendek) - - 2022-01-13 [cc1116c](https://github.com/silverstripe/silverstripe-fluent/commit/cc1116c13023d6de05956e8998bcbb3e14f1c3e7) Localisation manager / Locale link fix for AJAX requests. (Mojmir Fendek) - - 2021-11-08 [a49afa4](https://github.com/silverstripe/silverstripe-fluent/commit/a49afa4ca910d8ff27f7e31fc7db86c0bb53ac3c) Fix fallback locales chain (Mikhail Shchedrakov) - - 2021-10-20 [6e248c1](https://github.com/silverstripe/silverstripe-fluent/commit/6e248c1d775fec26083828d7c0383c5c63736286) Fix for FluentAdminTraitTest. (Mojmir Fendek) - - 2021-06-18 [d9e12b3](https://github.com/silverstripe/silverstripe-fluent/commit/d9e12b3e8600617c50ac7bf91f9f6bbc60c3d778) Missing version tables related indexes. (Mojmir Fendek) - - 2021-06-09 [15611e0](https://github.com/silverstripe/silverstripe-fluent/commit/15611e0480fcf86bc17e088fbbc04b860266f46a) Localised copy support for ClassName changes. (Mojmir Fendek) - - 2021-05-20 [18d3899](https://github.com/silverstripe/silverstripe-fluent/commit/18d3899581f287e3490eb899716d74fa19f78c3d) Fix issue with apply_isolated_locales_to_byid = false not respecting many_many joins (Damian Mooyman) - - 2021-04-29 [1666329](https://github.com/silverstripe/silverstripe-fluent/commit/1666329c0254cb74ce3aaf80e77ddaeb08b872ff) GridField buttons UI improvements for versioned models. (Mojmir Fendek) - - 2021-03-01 [12196e3](https://github.com/silverstripe/silverstripe-fluent/commit/12196e33894dce8d555c83af38a723a9062c8150) Fix Travis setup to run with correct requirements. (Mojmir Fendek) - - 2021-02-08 [74aa604](https://github.com/silverstripe/silverstripe-fluent/commit/74aa6042994eddff4b13383fd0d248109b352a66) Stages differ in locale correction, Copy-to localise buttons restored. (Mojmir Fendek) - - 2020-09-02 [fa58ad7](https://github.com/silverstripe/silverstripe-fluent/commit/fa58ad79f81af945ac1ea7ec8a4bd22a381ba671) Resolve regression in middleware behaviour breaking routing bootstrapping (Damian Mooyman) - - 2020-07-29 [2062c0d](https://github.com/silverstripe/silverstripe-fluent/commit/2062c0dff1520d8a666365b8d4ccab2394ddacac) Fix invalid test namespaces (Damian Mooyman) - - 2020-07-28 [1cd753a](https://github.com/silverstripe/silverstripe-fluent/commit/1cd753a76ac901c3fd87dcd88d829b958dd3a885) Fix test namespaces (Damian Mooyman) - - 2020-07-28 [d7466ef](https://github.com/silverstripe/silverstripe-fluent/commit/d7466ef00d93d1092e7d7265c1f69628e3c659a8) Fix composer notice on invalid psr-4 path for test files (Damian Mooyman) - - 2020-07-06 [2577a34](https://github.com/silverstripe/silverstripe-fluent/commit/2577a341340b66f673d66b30bb6c9131c46405d6) fix issue with member permissions erroring before fluent state is initialised (Damian Mooyman) - - 2020-06-18 [81eff09](https://github.com/silverstripe/silverstripe-fluent/commit/81eff09f554551d8a9999c6c64f0286d18c5dbcb) Fix from / to (Damian Mooyman) - - 2020-05-20 [8c8af6e](https://github.com/silverstripe/silverstripe-fluent/commit/8c8af6e497c9e1b6aa964040a1f7c95a0367251f) Fix sitemap x-default reference (Damian Mooyman) - - 2020-05-20 [381a351](https://github.com/silverstripe/silverstripe-fluent/commit/381a351057fc6c8235f3efebc12b900c265299f9) Properly handle x-default for home page tags (Damian Mooyman) - - 2020-05-12 [3b1bd95](https://github.com/silverstripe/silverstripe-fluent/commit/3b1bd9521cd08bbc0b401dde3afb40fc879b768f) Fix linting issues (Damian Mooyman) - - 2020-05-12 [a93ad8f](https://github.com/silverstripe/silverstripe-fluent/commit/a93ad8f54012cc63953c8cba49f871d702233dfd) Fix unit tests (Damian Mooyman) - - 2020-05-12 [7e5fe14](https://github.com/silverstripe/silverstripe-fluent/commit/7e5fe149d6a709501476301f1f7c8cf4ae2c3a49) Fix issue where gridfield has no Actions column (Damian Mooyman) - - 2020-05-11 [5f67c66](https://github.com/silverstripe/silverstripe-fluent/commit/5f67c660b1fb2643f55ed1085cb8788350b2ac10) Fix tests (Damian Mooyman) - - 2020-05-11 [a41b319](https://github.com/silverstripe/silverstripe-fluent/commit/a41b319141239cdbd223dd1fce3f0ded773e3728) Fix hreflang case issue (Damian Mooyman) - - 2020-04-09 [ec6340a](https://github.com/silverstripe/silverstripe-fluent/commit/ec6340a1bb5d22de836d95a2775259c8b94eaa4c) Fix UnpublishAction using incorrect locale (Damian Mooyman) - - 2020-03-10 [01972dc](https://github.com/silverstripe/silverstripe-fluent/commit/01972dc636a56cadefe51bca4b0ecea977070730) fix issue where rows were not written to _Localised tables (Damian Mooyman) - - 2020-02-10 [d864f5b](https://github.com/silverstripe/silverstripe-fluent/commit/d864f5b6b5662fd00711633b8f3ae4f39dc8c287) Fix unit tests for updates to extensions and middleware (Damian Mooyman) - - 2020-02-10 [a8b05ad](https://github.com/silverstripe/silverstripe-fluent/commit/a8b05ad14ce9caa66695b57fcc3d6cbea82a406d) Fix unit tests (Damian Mooyman) - - 2020-02-09 [44cbe21](https://github.com/silverstripe/silverstripe-fluent/commit/44cbe21c75977bbedbb1ff493788f09fd6c80b4f) Fix unit tests for badge trait (Damian Mooyman) - - 2020-02-07 [ce6eea9](https://github.com/silverstripe/silverstripe-fluent/commit/ce6eea912cb3d03c4c977bec88103ef9b5c593ae) Fix crash on logout (Damian Mooyman) - - 2019-11-21 [68a32aa](https://github.com/silverstripe/silverstripe-fluent/commit/68a32aab25c533821d87455b382bdfb63ae21ba6) Fix issue with gridfield actions (Damian Mooyman) - - 2019-11-20 [4a78844](https://github.com/silverstripe/silverstripe-fluent/commit/4a78844a0ae840d37c3e3f9c1e9afa15fc2b5332) Fix visibility logic issues with versioned records (Damian Mooyman) - - 2019-11-19 [0e87761](https://github.com/silverstripe/silverstripe-fluent/commit/0e877615bfcf341748eb45d51ce3a95bdc5bdad0) Fix dependency constraints (Damian Mooyman) - - 2019-11-13 [780d4f4](https://github.com/silverstripe/silverstripe-fluent/commit/780d4f4579c43d3270ffcb6aec4da8bc29ae0dc5) Fix issue with slashes in prefix (Damian Mooyman) - - 2019-11-13 [ee951cc](https://github.com/silverstripe/silverstripe-fluent/commit/ee951cc2942441f862f789004ab0fc21a6393142) Fix unit tests (Damian Mooyman) - - 2019-11-12 [0d2ab8c](https://github.com/silverstripe/silverstripe-fluent/commit/0d2ab8cb632ecf1ffd066ef75e55bb03a99412f1) Fix invalid variable name (Damian Mooyman) - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-12-14 [f003b8d](https://github.com/silverstripe/recipe-plugin/commit/f003b8d56d6e62e7828782f3263f9769232dcf8f) Always put public resources in a public/ dir (#31) (Guy Sartorelli) - -### API changes - -- silverstripe/vendor-plugin (1.6.0 -> 2.0.0) - - 2022-12-14 [86600ce](https://github.com/silverstripe/vendor-plugin/commit/86600cead02300885e2020929126a2d95cb246e5) Make the public folder mandatory (#64) (Guy Sartorelli) - - 2022-12-07 [4e2135f](https://github.com/silverstripe/vendor-plugin/commit/4e2135f3c6f9354d87bed147b4e87c953fe7bde8) Remove deprecated code (#63) (Sabina Talipova) - - 2022-10-25 [d33a47a](https://github.com/silverstripe/vendor-plugin/commit/d33a47a91552ea807dfb44e138bc0869f969edb9) Update deprecations (#60) (Steve Boyd) - - 2022-08-03 [ddbf19a](https://github.com/silverstripe/vendor-plugin/commit/ddbf19a9d54fb030e036affeaf8e1deb73c7ad9c) Remove deprecated Library::RESOURCES_PATH const (Guy Sartorelli) - -- silverstripe/assets (1.12.0 -> 2.0.0-beta1) - - 2023-01-16 [9a1e094](https://github.com/silverstripe/silverstripe-assets/commit/9a1e0941f93d876b5d6e188cb669512490ff13f4) Use more specific return type than those mandated by the interface (Maxime Rainville) - - 2023-01-10 [0784372](https://github.com/silverstripe/silverstripe-assets/commit/0784372755c8201284faaa4b08cd976ba6e3abb3) Removed ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-12-07 [3495084](https://github.com/silverstripe/silverstripe-assets/commit/349508447b66591671b8930a25cd3fc1f78fb97e) Remove deprecated code (#530) (Sabina Talipova) - - 2022-11-28 [9bffdea](https://github.com/silverstripe/silverstripe-assets/commit/9bffdeab1ec8e451021065761ca9caa8135f6991) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [a7c323b](https://github.com/silverstripe/silverstripe-assets/commit/a7c323bed81ede05320920b415eafbb3d4993091) Stop using deprecated API (Steve Boyd) - -- silverstripe/config (1.5.0 -> 2.0.0-beta1) - - 2022-12-07 [c0cd27a](https://github.com/silverstripe/silverstripe-config/commit/c0cd27a330a52e222c4b41da6348dd0a0ac3cd4b) Restore nullable params (Steve Boyd) - - 2022-12-07 [3e7097e](https://github.com/silverstripe/silverstripe-config/commit/3e7097e27971187b80c89c97b00a6d826804be6c) Remove deprecated code (#75) (Sabina Talipova) - - 2022-11-02 [f49fcd5](https://github.com/silverstripe/silverstripe-config/commit/f49fcd5755420c9ad9e9f03fa29967ebaf487127) Stop using deprecated API (Steve Boyd) - -- silverstripe/framework (4.12.0 -> 5.0.0-beta1) - - 2023-02-01 [603723e8f](https://github.com/silverstripe/silverstripe-framework/commit/603723e8f388d0a5e697527bb7c3783ee2597644) Rename Diff to HtmlDiff (Guy Sartorelli) - - 2023-01-26 [ec4a8b88e](https://github.com/silverstripe/silverstripe-framework/commit/ec4a8b88e5df07303dd6707c79f3d1b6a1fad801) Allow array style email addresses (Steve Boyd) - - 2023-01-16 [b973c8864](https://github.com/silverstripe/silverstripe-framework/commit/b973c88648012149a4c9983b577312c7b7e8a5a7) Deprecate HTML4Value (Steve Boyd) - - 2023-01-10 [99dc6df38](https://github.com/silverstripe/silverstripe-framework/commit/99dc6df38adf0a80ab43e8871c3994e0da5417ca) Replace thirdparty difflib with maintained lib (Guy Sartorelli) - - 2023-01-10 [944722f34](https://github.com/silverstripe/silverstripe-framework/commit/944722f34fd4980874485c2670ad1ada014715e6) Removed #[\ReturnTypeWillChange] annotations (Maxime Rainville) - - 2022-12-14 [b14de847a](https://github.com/silverstripe/silverstripe-framework/commit/b14de847a55f8f82779bd878b8c623a87e8f7eda) Make the public directory mandatory (#10617) (Guy Sartorelli) - - 2022-12-07 [53c0147f1](https://github.com/silverstripe/silverstripe-framework/commit/53c0147f112a011f8cbdfb964a92dc4eb81a8b7f) Remove deprecated code (#10594) (Sabina Talipova) - - 2022-12-06 [ae4d7fa09](https://github.com/silverstripe/silverstripe-framework/commit/ae4d7fa0909c6846bbc4ab72549020fa0d44a87a) Create orderBy() method to handle raw SQL (Steve Boyd) - - 2022-11-30 [7860e461e](https://github.com/silverstripe/silverstripe-framework/commit/7860e461ed99cb192f2656170f87f731bf5737c0) Remove deprecated CIConfig functionality (Steve Boyd) - - 2022-11-28 [b5533e468](https://github.com/silverstripe/silverstripe-framework/commit/b5533e468012cfae1857c400da2a7140036ab67d) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [137ebcebe](https://github.com/silverstripe/silverstripe-framework/commit/137ebcebec0701818e55a6edc3b6f637c6121cbd) Stop using deprecated API (Steve Boyd) - - 2022-10-17 [a57c7315a](https://github.com/silverstripe/silverstripe-framework/commit/a57c7315a28bafbcf41a84f38a35d5dfda041516) Strongly-type action method signatures (Steve Boyd) - - 2022-10-10 [fbcf7dc3e](https://github.com/silverstripe/silverstripe-framework/commit/fbcf7dc3e7484f2d55dcb323ed6e2ba9b7dd5de9) Normalise trailing slashes for all paths (Florian Thoma) - - 2022-09-19 [433926fc1](https://github.com/silverstripe/silverstripe-framework/commit/433926fc11f1c0226310f07c26e595cf27672fe5) Remove deprecated TinyMCE generator class (Guy Sartorelli) - - 2022-09-15 [03b929dd3](https://github.com/silverstripe/silverstripe-framework/commit/03b929dd331f87b3a36f3c021c813a24529e29cc) Remove support for PDO (#10499) (Guy Sartorelli) - - 2022-09-07 [a87a65736](https://github.com/silverstripe/silverstripe-framework/commit/a87a657367aed051c945ba1d674a4c39137c38f3) Update translation to use symfony 6 (Steve Boyd) - - 2022-09-07 [c9bc01473](https://github.com/silverstripe/silverstripe-framework/commit/c9bc01473cd16d195073147e9841dd06828a0d6b) Update caching to use symfony 6 (Steve Boyd) - - 2022-09-01 [1bf86cf39](https://github.com/silverstripe/silverstripe-framework/commit/1bf86cf39f9451787b3a4e92545442f59f1ee00b) Revert shorten auto-generated table names (#10482) (Guy Sartorelli) - - 2022-08-22 [a4521a734](https://github.com/silverstripe/silverstripe-framework/commit/a4521a734812186c697b557dad317c88e6a31e24) Undeprecate table warning message (Guy Sartorelli) - - 2022-08-11 [a76fa32a3](https://github.com/silverstripe/silverstripe-framework/commit/a76fa32a390064b7571a2b318cda48357d918eb8) Remove unnecessary `getGenerator()` method. (Guy Sartorelli) - - 2022-08-09 [3284c0670](https://github.com/silverstripe/silverstripe-framework/commit/3284c067030c37ed79c4ac8412c0a095a939ef61) Remove PHPUnit 5.7 compatability hacks (Guy Sartorelli) - - 2022-08-03 [37dc0daac](https://github.com/silverstripe/silverstripe-framework/commit/37dc0daacc11e5f7c7ce1dfd7b15660a07c1f0e1) Remove deprecated ManifestFileFinder::RESOURCES_DIR const (Guy Sartorelli) - - 2020-03-16 [e42ed95be](https://github.com/silverstripe/silverstripe-framework/commit/e42ed95be180145af1a20c657ce0626ccff2d25a) Update MigrationTask class to be an abstract class (Michal Kleiner) - - 2018-10-15 [f2de39162](https://github.com/silverstripe/silverstripe-framework/commit/f2de39162dc1f197de2fcf8e2c8e2947acdb3754) Allow dataobject get_one without passing a class (Andrew Aitken-Fincham) - - 2018-06-08 [4cda967ea](https://github.com/silverstripe/silverstripe-framework/commit/4cda967eae203126668b95008a549aff9aededf0) Preserve variable types in template lookup args (Loz Calver) - - 2018-06-07 [47337782a](https://github.com/silverstripe/silverstripe-framework/commit/47337782a2d23bc91ff0ba940b79ce3102962e97) <% loop %> and <% with %> only ever create one new scope level (Loz Calver) - - 2018-04-08 [08d1cd383](https://github.com/silverstripe/silverstripe-framework/commit/08d1cd3834fd97293d85b164e63023435a5f92fa) Remove isDev / isTest querystring arguments (Damian Mooyman) - - 2018-03-01 [2c102c61a](https://github.com/silverstripe/silverstripe-framework/commit/2c102c61a9d5837dc74fd731c92df4dc3834d37e) TestCase classes should be abstract to prevent warnings (Daniel Hensby) - - 2018-01-12 [76fc8f159](https://github.com/silverstripe/silverstripe-framework/commit/76fc8f1596f5d9e82acbf5b81a5eebb2e868a5dd) Only expose public extension methods (Damian Mooyman) - -- silverstripe/admin (1.12.0 -> 2.0.0-beta1) - - 2023-01-16 [cd1271f8](https://github.com/silverstripe/silverstripe-admin/commit/cd1271f86ba890a6d6378794bb58fd320751d29f) Remove pointless $subitem_class config (#1440) (Maxime Rainville) - - 2023-01-10 [f4633cae](https://github.com/silverstripe/silverstripe-admin/commit/f4633caebad05e64836a6457b1fff3b820f35cad) Remove ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-12-07 [33a80f1c](https://github.com/silverstripe/silverstripe-admin/commit/33a80f1cc44911565af06a1eeb204edd98407406) Remove deprecated code (#1393) (Sabina Talipova) - - 2022-11-28 [f3fd3a07](https://github.com/silverstripe/silverstripe-admin/commit/f3fd3a07fdc2e42d52e24faae042299191f52dfa) Stop using deprecated API (Steve Boyd) - - 2022-11-08 [02aa72f4](https://github.com/silverstripe/silverstripe-admin/commit/02aa72f40aca79541c8eda1143943210f79895db) Stop using deprecated API (Steve Boyd) - - 2022-10-17 [a1e70ed0](https://github.com/silverstripe/silverstripe-admin/commit/a1e70ed05a7c8370a8647b756bcdb16d695c358d) Strongly-type action method signatures (Steve Boyd) - - 2022-09-19 [48108c1b](https://github.com/silverstripe/silverstripe-admin/commit/48108c1b31952b250f1d8c3192e49c05cfc6fa48) Convert SecurityAdmin to be a ModelAdmin (Steve Boyd) - - 2022-08-06 [981d5a93](https://github.com/silverstripe/silverstripe-admin/commit/981d5a93405b45a47cdc2c14dc680696b1e928d6) Migrate SilverStripeNagivator (Guy Sartorelli) - -- silverstripe/asset-admin (1.12.0 -> 2.0.0-beta1) - - 2022-12-07 [38328d8b](https://github.com/silverstripe/silverstripe-asset-admin/commit/38328d8b08107a9629d8759a191f1f5300d48f48) Remove deprecated code (#1307) (Sabina Talipova) - - 2022-11-08 [48cd0cae](https://github.com/silverstripe/silverstripe-asset-admin/commit/48cd0cae5e0bf40d3629134d58fed52a0193abd4) Stop using deprecated API (Steve Boyd) - - 2022-10-18 [a6eba071](https://github.com/silverstripe/silverstripe-asset-admin/commit/a6eba071052cb7e88190050f4919e33f9e35dbed) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/campaign-admin (1.12.0 -> 2.0.0-beta1) - - 2022-12-07 [426db3e](https://github.com/silverstripe/silverstripe-campaign-admin/commit/426db3e4e14f7800910754f7a9b077b7a07453a0) Remove deprecated code (#249) (Sabina Talipova) - - 2022-11-03 [5758cc4](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5758cc468921dfb6fffc82dbb13b8663ba75308f) Stop using deprecated API (Steve Boyd) - - 2022-10-17 [af7f3ec](https://github.com/silverstripe/silverstripe-campaign-admin/commit/af7f3ecaa49cd9736352a46648c78526e3acce7a) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/versioned-admin (1.12.0 -> 2.0.0-beta1) - - 2022-12-07 [bb10c07](https://github.com/silverstripe/silverstripe-versioned-admin/commit/bb10c072869fc27f5f761f1e062dfcb063e73ca8) Remove deprecated code (#265) (Sabina Talipova) - - 2022-11-28 [4f3de9e](https://github.com/silverstripe/silverstripe-versioned-admin/commit/4f3de9edc483b32dd907e457542c8b1a3eb23cba) Stop using deprecated API (Steve Boyd) - - 2022-11-08 [9a2724a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/9a2724a39791937e79b9f898a75c3bd5fca23498) Stop using deprecated API (Steve Boyd) - - 2022-10-17 [a80b368](https://github.com/silverstripe/silverstripe-versioned-admin/commit/a80b368f3ab6d454131f449dc7e9a8455493d7d7) Strongly-type action method signatures (Steve Boyd) - - 2022-09-14 [99e50c2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/99e50c20a4c8ba4bb47f7fb0f0647d7cdbdae8c8) Migrate SilverStripeNagivator (Guy Sartorelli) - -- silverstripe/cms (4.12.0 -> 5.0.0-beta1) - - 2023-01-17 [97fdff4b](https://github.com/silverstripe/silverstripe-cms/commit/97fdff4bb236498b9ccd3b758dc7930c89b3445d) Remove deprecated CMSMain::$subitem_class config (#2821) (Maxime Rainville) - - 2023-01-16 [1bd578fc](https://github.com/silverstripe/silverstripe-cms/commit/1bd578fc969fc40149d523ccde346122f49a74d6) Remove legacy tasks (Steve Boyd) - - 2023-01-16 [75eae7f2](https://github.com/silverstripe/silverstripe-cms/commit/75eae7f2bf89ced8ae0eef0adeb6bda11113cd78) Deprecate legacy tasks (Steve Boyd) - - 2023-01-16 [b0fec188](https://github.com/silverstripe/silverstripe-cms/commit/b0fec1886b77ecde58bc710426de6d457b0756a8) Remove pointless subitem_class config (#2817) (Maxime Rainville) - - 2022-12-07 [0e5428b7](https://github.com/silverstripe/silverstripe-cms/commit/0e5428b78beaaa228709b7771a908e094907f922) Remove deprecated code (#2800) (Sabina Talipova) - - 2022-11-24 [20467b38](https://github.com/silverstripe/silverstripe-cms/commit/20467b38462d7d3872dcd906d200f09215e21db7) Stop using deprecated API (Steve Boyd) - - 2022-11-16 [e64bfdb3](https://github.com/silverstripe/silverstripe-cms/commit/e64bfdb394e05430dab72db0edf10d2b371bca3f) Stop using deprecated API (Steve Boyd) - - 2022-10-18 [6e19ae73](https://github.com/silverstripe/silverstripe-cms/commit/6e19ae737feb0e820d60e1628aabc0cefda6f609) Strongly-type action method signatures (Steve Boyd) - - 2022-08-31 [1711c0c8](https://github.com/silverstripe/silverstripe-cms/commit/1711c0c88eeaf24c4170a2ab511398e719c57f89) Move updateRelativeLink hook after concatination (#2770) (Florian Thoma) - - 2022-08-26 [18cb6d49](https://github.com/silverstripe/silverstripe-cms/commit/18cb6d499df3b5adfcf7d118d8a25491be0e2ff8) Normalise trailing slashes in links (Florian Thoma) - - 2022-08-06 [d7857ebb](https://github.com/silverstripe/silverstripe-cms/commit/d7857ebbe001f20de59e29902089108f2a8bf465) Migrate SilverStripeNagivator classes (Guy Sartorelli) - - 2019-07-12 [cda7857e](https://github.com/silverstripe/silverstripe-cms/commit/cda7857e129b05d8d1b11c738d481203b375e6c1) Remove deprecated CMSPageHistoryViewer (Aaron Carlino) - -- silverstripe/errorpage (1.12.0 -> 2.0.0-beta1) - - 2022-10-10 [f89cd0b](https://github.com/silverstripe/silverstripe-errorpage/commit/f89cd0bf3d0c9f66d4aa69d7fdc48ee5abc77c5b) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/versioned (1.12.0 -> 2.0.0-beta1) - - 2022-12-07 [561275b](https://github.com/silverstripe/silverstripe-versioned/commit/561275bc110790aa25d670cf52d9ded90940cee8) Remove deprecated code (#381) (Sabina Talipova) - - 2022-11-24 [de9d31d](https://github.com/silverstripe/silverstripe-versioned/commit/de9d31db8ef5d31aff5f6669e6d8fe6182094f8f) Stop using deprecated API (Steve Boyd) - - 2022-11-09 [5ce310f](https://github.com/silverstripe/silverstripe-versioned/commit/5ce310f1d0389ccecfb7c314385e113ac37351a5) Stop using deprecated API (Steve Boyd) - - 2022-09-01 [e2924d2](https://github.com/silverstripe/silverstripe-versioned/commit/e2924d2ed1905c4c1c01240fb005317f19c5f554) Symfony 6 compatibility (Steve Boyd) - - 2018-01-12 [9eb2aee](https://github.com/silverstripe/silverstripe-versioned/commit/9eb2aee199778276cd8b31932fee5f12785cdfea) Support new extend*() format for extension methods (Damian Mooyman) - -- silverstripe/graphql (4.1.0 -> 5.0.0-beta1) - - 2022-12-07 [f80bdec](https://github.com/silverstripe/silverstripe-graphql/commit/f80bdec41fae8ab2b61e6d1ca174e65a8e76325b) Remove deprecated code (#510) (Sabina Talipova) - - 2022-11-02 [848fa1e](https://github.com/silverstripe/silverstripe-graphql/commit/848fa1eb9410e33606417ca55bf95105492f71c8) Stop using deprecated API (Steve Boyd) - - 2022-10-20 [14d9ef2](https://github.com/silverstripe/silverstripe-graphql/commit/14d9ef2897776ec8dfa5ce703c8118be501413be) Support of upgrading installer dependencies (#499) (Sabina Talipova) - -- silverstripe/tagfield (2.10.1 -> 3.0.0-beta1) - - 2023-01-25 [6f203a3](https://github.com/silverstripe/silverstripe-tagfield/commit/6f203a36af3535190ac171faf44d44743f442ff7) Remove deprecated code (#228) (Sabina Talipova) - - 2022-11-24 [dc932bd](https://github.com/silverstripe/silverstripe-tagfield/commit/dc932bd72ddfd2abf0f5733f03c8d26e5ede9a8e) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [442d9d8](https://github.com/silverstripe/silverstripe-tagfield/commit/442d9d8f32e04b56c8745c9c6837b73f2d8d0eed) Update deprecations (Steve Boyd) - -- silverstripe/blog (3.11.0 -> 4.0.0-beta1) - - 2022-11-24 [6e020c6](https://github.com/silverstripe/silverstripe-blog/commit/6e020c663b859e684fd8c4f65a571e5936afd506) Stop using deprecated API (Steve Boyd) - -- silverstripe/spamprotection (3.3.0 -> 4.0.0-beta1) - - 2022-11-24 [688b438](https://github.com/silverstripe/silverstripe-spamprotection/commit/688b438e883c1f88fc63e24eeef77eaa3fd4ba43) Stop using deprecated API (Steve Boyd) - -- silverstripe/comments (3.9.0 -> 4.0.0-beta1) - - 2023-01-17 [ff3ce69](https://github.com/silverstripe/silverstripe-comments/commit/ff3ce6978bd6d58ec573fbf2d1e4ddab2bbbc189) Remove deprecated code (Sabina Talipova) - - 2022-11-28 [b771bb6](https://github.com/silverstripe/silverstripe-comments/commit/b771bb624afc8c8deaa368883a6044e331f1a2e0) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [c3ef4d6](https://github.com/silverstripe/silverstripe-comments/commit/c3ef4d6efc1949050f2d8d135092c18512b04980) Update deprecations (Steve Boyd) - -- silverstripe/contentreview (4.6.0 -> 5.0.0-beta1) - - 2022-11-24 [6f18e92](https://github.com/silverstripe/silverstripe-contentreview/commit/6f18e92169f6d4bf6abbf1bc27fcba7161020f41) Stop using deprecated API (Steve Boyd) - -- silverstripe/sharedraftcontent (2.8.0 -> 3.0.0-beta1) - - 2023-01-25 [c2ceb88](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/c2ceb880aa326d12e476441ba265f8c88ea25940) Remove deprecated code (#183) (Sabina Talipova) - - 2022-11-15 [4eee611](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/4eee61199be5e420d8002d59332f4b23d79cfa07) Update deprecations (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (5.8.0 -> 6.0.0-beta1) - - 2023-01-25 [99559c5](https://github.com/symbiote/silverstripe-advancedworkflow/commit/99559c5f8fcee06ada972860e5a97fb595fe66e5) Remove deprecated code (#476) (Sabina Talipova) - - 2022-11-24 [d10f674](https://github.com/symbiote/silverstripe-advancedworkflow/commit/d10f674bb906df737a37b6c6756d72bd13c7d1c7) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [949f2ca](https://github.com/symbiote/silverstripe-advancedworkflow/commit/949f2cabfc458ab75bdfe1391295e5dbd5b417e1) Update deprecations (Steve Boyd) - -- silverstripe/userforms (5.14.0 -> 6.0.0-beta1) - - 2023-01-25 [1ea2b8e](https://github.com/silverstripe/silverstripe-userforms/commit/1ea2b8e87f197b5c726d8b3815890f388a684bc8) Remove deprecated code (#1185) (Sabina Talipova) - - 2022-11-28 [7a6cd1c](https://github.com/silverstripe/silverstripe-userforms/commit/7a6cd1c21133cfaf4e5dd749703d5b07c8d3f2a8) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [2a2b66a](https://github.com/silverstripe/silverstripe-userforms/commit/2a2b66a09ba9ee5c69f2f0d0e46806fd2f5bb194) Update deprecations (Steve Boyd) - -- silverstripe/externallinks (2.3.0 -> 3.0.0-beta1) - - 2022-11-28 [1b66be2](https://github.com/silverstripe/silverstripe-externallinks/commit/1b66be22cdb1b071f29a462c25f728324a5e75fe) Stop using deprecated API (Steve Boyd) - -- silverstripe/securityreport (2.5.0 -> 3.0.0-beta1) - - 2023-01-25 [b2c7a99](https://github.com/silverstripe/silverstripe-securityreport/commit/b2c7a9975d2ed02d29c58688f5509fef274ac457) Remove deprecated code (#60) (Sabina Talipova) - - 2022-11-15 [9e4e8e9](https://github.com/silverstripe/silverstripe-securityreport/commit/9e4e8e9c7474836f407a3cc3129e66314883e1ac) Update deprecations (Steve Boyd) - -- bringyourownideas/silverstripe-maintenance (2.6.0 -> 3.0.0-beta1) - - 2022-11-24 [e97b375](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e97b3752acff73a8c7a99a3fa9efaea366d5eb83) Stop using deprecated API (Steve Boyd) - -- silverstripe/restfulserver (2.5.0 -> 3.0.0-beta1) - - 2022-11-28 [bdafc33](https://github.com/silverstripe/silverstripe-restfulserver/commit/bdafc33228c4194deabc9717ad0f81f6210b6ee2) Stop using deprecated API (Steve Boyd) - -- silverstripe/versionfeed (2.3.0 -> 3.0.0-beta1) - - 2023-01-25 [a753712](https://github.com/silverstripe/silverstripe-versionfeed/commit/a753712806dbaa336fc6e7e9695c4288ef1d039c) Remove deprecated code (#78) (Sabina Talipova) - - 2022-11-24 [6699b90](https://github.com/silverstripe/silverstripe-versionfeed/commit/6699b9074a41421b60221b48f26b6677381ab25c) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [9f6b6f9](https://github.com/silverstripe/silverstripe-versionfeed/commit/9f6b6f9d8ac7701701f0f4c8f24e80856b06d915) Update deprecations (Steve Boyd) - -- dnadesign/silverstripe-elemental (4.10.0 -> 5.0.0-beta1) - - 2023-01-25 [f6e0266](https://github.com/silverstripe/silverstripe-elemental/commit/f6e0266eea523e7c9d283009b261e946923622bf) Remove deprecated code (#1034) (Sabina Talipova) - - 2022-11-24 [9694a40](https://github.com/silverstripe/silverstripe-elemental/commit/9694a403263b1181562d40288482fbf83cc0407d) Stop using deprecated API (Steve Boyd) - - 2022-11-21 [9f0df28](https://github.com/silverstripe/silverstripe-elemental/commit/9f0df28608e1e9fe34952212f232c21ba391b6c0) Apply TopPage extensions by default. (#1010) (Guy Sartorelli) - - 2022-11-21 [1f7a4a5](https://github.com/silverstripe/silverstripe-elemental/commit/1f7a4a5099e8f8ed277cf71e09ea6c62f82a6aaf) Mark deprecated code to support changes in TopPage extension in CMS5 (#1022) (Sabina Talipova) - - 2022-11-21 [331c7bd](https://github.com/silverstripe/silverstripe-elemental/commit/331c7bdd25609971d91f4d7fb685f34f438d2cda) Update deprecations (Steve Boyd) - - 2022-11-08 [08be023](https://github.com/silverstripe/silverstripe-elemental/commit/08be023e286c727f0dd93654bcc345525cbe994f) Stop using deprecated API (Steve Boyd) - - 2019-08-02 [005f8a9](https://github.com/silverstripe/silverstripe-elemental/commit/005f8a9f13a4c0c75b6c5cd0a1e0a6424471320d) Remove ElementalSolrIndex (Ingo Schommer) - -- cwp/cwp-search (1.7.0 -> 2.0.0-beta1) - - 2023-01-25 [d7fb9db](https://github.com/silverstripe/cwp-search/commit/d7fb9db5e881102ec81d1ee7c71e084bd76bcffc) Remove deprecated code (#52) (Sabina Talipova) - - 2022-11-15 [9f3adaf](https://github.com/silverstripe/cwp-search/commit/9f3adaf54fb2b066b026fe897f7e9c0ea27b2500) Update deprecations (Steve Boyd) - -- silverstripe/fulltextsearch (3.11.1 -> 4.0.0-beta1) - - 2023-01-25 [3663996](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/36639967aed7fd1b810ce27e4f0a25b39f88e726) Remove deprcated code (#336) (Sabina Talipova) - - 2023-01-20 [35340d4](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/35340d40057f1533687268997262185fdcff9084) Strongly type iterator classes and remove ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-11-24 [b5ed2dd](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/b5ed2dd238d09bc607b6eb57769fb5074910e927) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [47d1360](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/47d13600f9e1c0bd9d64585190c8c8e9572807fc) Update deprecations (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (4.11.0 -> 5.0.0-beta1) - - 2022-11-24 [8533ff7](https://github.com/symbiote/silverstripe-queuedjobs/commit/8533ff76acdea443795d9ba3db26c95af74a1aa3) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [3884a8c](https://github.com/symbiote/silverstripe-queuedjobs/commit/3884a8cf716892ab7afc0ce108eca1a455a72c0d) Update deprecations (Steve Boyd) - - 2022-10-26 [952727e](https://github.com/symbiote/silverstripe-queuedjobs/commit/952727e06ab2a339b2c30465abc96cfa7ef40f8e) Use correct typing for new version of monolog (Guy Sartorelli) - -- cwp/cwp-core (2.11.0 -> 3.0.0-beta1) - - 2023-01-25 [b8a6e11](https://github.com/silverstripe/cwp-core/commit/b8a6e11c1e1c547935b11e1acd21200deb1997c2) Remove deprecated code (#115) (Sabina Talipova) - - 2022-11-28 [32e7ed5](https://github.com/silverstripe/cwp-core/commit/32e7ed58b353fd90d67a2e20027a0c65d4eff577) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [d7e7c1f](https://github.com/silverstripe/cwp-core/commit/d7e7c1fc9a59e6f6b931f5c1e2b51c6522006a0c) Update deprecations (Steve Boyd) - -- silverstripe/auditor (2.5.0 -> 3.0.0-beta1) - - 2023-01-25 [c20c342](https://github.com/silverstripe/silverstripe-auditor/commit/c20c3428eaa6e94afda1f0d23397c6a5f3ca32f2) Remove deprecated code (#48) (Sabina Talipova) - - 2022-11-21 [a8645fe](https://github.com/silverstripe/silverstripe-auditor/commit/a8645fee2ee98b91988e439f38354d5a435043db) Update deprecations (Steve Boyd) - -- silverstripe/environmentcheck (2.6.0 -> 3.0.0-beta1) - - 2023-01-25 [56b3753](https://github.com/silverstripe/silverstripe-environmentcheck/commit/56b37530d68b4aa90f7b3d655cf5c829916ca1dc) Remove deprecated code (#83) (Sabina Talipova) - - 2022-11-15 [94ff5b6](https://github.com/silverstripe/silverstripe-environmentcheck/commit/94ff5b621cb0345e93316bc53f09754c58c876e9) Update deprecations (Steve Boyd) - -- silverstripe/hybridsessions (2.6.0 -> 3.0.0-beta1) - - 2023-01-17 [67bc3bd](https://github.com/silverstripe/silverstripe-hybridsessions/commit/67bc3bd8933d80688ed9572f49c99e1b9ccfd311) Remove deprecated code (Sabina Talipova) - - 2023-01-13 [443a927](https://github.com/silverstripe/silverstripe-hybridsessions/commit/443a92749d05c5ce3ea8aab6d9cbb8e67cde5b1b) Remove ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-11-28 [41c9c01](https://github.com/silverstripe/silverstripe-hybridsessions/commit/41c9c01d87e9df7b67e6279952eecf0855428bf6) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [29e63b2](https://github.com/silverstripe/silverstripe-hybridsessions/commit/29e63b2eb17f3d41287024852d7d032ec32746b4) Update deprecations (Steve Boyd) - -- silverstripe/registry (2.5.0 -> 3.0.0-beta1) - - 2022-12-08 [1ff8d18](https://github.com/silverstripe/silverstripe-registry/commit/1ff8d1837d69b8d076b9c662ce0141ca66b473ac) Update import() signature (Steve Boyd) - - 2022-11-08 [b43e46d](https://github.com/silverstripe/silverstripe-registry/commit/b43e46de17d2666d9247da0542fb3967362c3ab7) Stop using deprecated API (Steve Boyd) - -- silverstripe/mfa (4.7.0 -> 5.0.0-beta1) - - 2023-01-25 [096ea96](https://github.com/silverstripe/silverstripe-mfa/commit/096ea96600a17e0c301dee505b458ce20ee6a261) Remove deprecated code (#480) (Sabina Talipova) - - 2022-11-24 [e116df9](https://github.com/silverstripe/silverstripe-mfa/commit/e116df999cfa1605365dbba6c9d6b540ef945f3d) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [4db34f6](https://github.com/silverstripe/silverstripe-mfa/commit/4db34f629e26184decc097bd1b2b1342be80fd1e) Update deprecations (Steve Boyd) - -- silverstripe/crontask (2.5.0 -> 3.0.0-beta1) - - 2023-01-25 [412cfeb](https://github.com/silverstripe/silverstripe-crontask/commit/412cfeb4cdb775941103783ad0d3fca6d9cc4a59) Remove deprecated code (#73) (Sabina Talipova) - - 2022-11-28 [7947979](https://github.com/silverstripe/silverstripe-crontask/commit/79479799926c68567abf511ff3a6250d70284d34) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [a55c95b](https://github.com/silverstripe/silverstripe-crontask/commit/a55c95b202351fab630157830156a8a9f28da52f) Update deprecations (Steve Boyd) - -- silverstripe/ldap (1.5.0 -> 2.0.0-beta1) - - 2023-01-25 [b9c070e](https://github.com/silverstripe/silverstripe-ldap/commit/b9c070e467950f9027087eca2978852e093e594a) Remove deprecated code (#47) (Sabina Talipova) - - 2023-01-20 [c71c2f0](https://github.com/silverstripe/silverstripe-ldap/commit/c71c2f0ee7cb4e9eada3588279d143226da6388a) Remove ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-11-15 [966d21b](https://github.com/silverstripe/silverstripe-ldap/commit/966d21bb70c6ecb395f190fad446fb2bf140534d) Update deprecations (Steve Boyd) - -- silverstripe/textextraction (3.4.0 -> 4.0.0-beta1) - - 2022-11-28 [1a0cd6d](https://github.com/silverstripe/silverstripe-textextraction/commit/1a0cd6d6a6529a7c5d5a641af86e7ae2bbcc1fda) Stop using deprecated API (Steve Boyd) - -- silverstripe/realme (4.3.0 -> 5.0.0-beta1) - - 2022-11-24 [8daac78](https://github.com/silverstripe/silverstripe-realme/commit/8daac789df29bd7e3d9b2b82253a08bae41b9874) Stop using deprecated API (Steve Boyd) - -- silverstripe/webauthn-authenticator (4.6.0 -> 5.0.0-beta1) - - 2023-02-07 [724925d](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/724925daf0e1994b0689ee03d94b102a3c1a9b7d) Remove deprecated code (#125) (Sabina Talipova) - - 2022-11-21 [56a776a](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/56a776abda70fa8c227c08dd22b8d3628bea771e) Update deprecations (Steve Boyd) - -- silverstripe/subsites (2.7.0 -> 3.0.0-beta1) - - 2023-01-26 [d4bc28e](https://github.com/silverstripe/silverstripe-subsites/commit/d4bc28e65cf211c92a1471921b74f51cfca26047) Remove deprecated code (Steve Boyd) - - 2023-01-25 [30b1f09](https://github.com/silverstripe/silverstripe-subsites/commit/30b1f09af4f379bca31e4c65f3112723556a08b5) Deprecate passing multiple IDs (Steve Boyd) - - 2022-11-28 [416f55a](https://github.com/silverstripe/silverstripe-subsites/commit/416f55ad03ffe84a3c93717c0416a64e254e090c) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [aba286d](https://github.com/silverstripe/silverstripe-subsites/commit/aba286d8a3638caaed7392ac73859e8d8923929e) Update deprecations (Steve Boyd) - -- cwp/starter-theme (3.2.1 -> 4.0.0-beta1) - - 2022-11-24 [ca782e2](https://github.com/silverstripe/cwp-starter-theme/commit/ca782e2178c1b078ea38c2658f82a311fa93fea1) Stop using deprecated API (Steve Boyd) - -- cwp/watea-theme (3.1.0 -> 4.0.0-beta1) - - 2022-11-24 [db0baf2](https://github.com/silverstripe/cwp-watea-theme/commit/db0baf2173b2c75d75aa18ee250aae1824e986c8) Stop using deprecated API (Steve Boyd) - -- cwp/cwp (2.10.1 -> 3.0.0-beta1) - - 2023-01-25 [dec2a6f](https://github.com/silverstripe/cwp/commit/dec2a6f77cd7ddbc108bbe9f60176b411f267e0e) Remove deprecated code (#318) (Sabina Talipova) - - 2022-11-28 [5542b38](https://github.com/silverstripe/cwp/commit/5542b38c4941501940019551c34c1f3eb011a7a5) Stop using deprecated API (Steve Boyd) - - 2022-11-15 [1c91990](https://github.com/silverstripe/cwp/commit/1c919907f25b2b2deeea46438810fbb69ead5906) Update deprecations (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.0.2 -> 4.0.0-beta1) - - 2023-01-25 [2f7109a](https://github.com/colymba/GridFieldBulkEditingTools/commit/2f7109ac5224b9e9b6afa3e7d7a1064c6b7ca75c) Remove deprecated code (#230) (Sabina Talipova) - -- silverstripe/silverstripe-fluent (4.7.0 -> 7.0.0-beta1) - - 2023-01-18 [d40664b](https://github.com/silverstripe/silverstripe-fluent/commit/d40664bde2289daaad63815bb00dd0f17210c71a) Remove deprecated code (Sabina Talipova) - - 2020-03-19 [cf3b646](https://github.com/silverstripe/silverstripe-fluent/commit/cf3b6468f5c8eb5590204c06f8175a5e0da19271) Add FluentIsolatedExtension for objects which only belong to a single locale (Damian Mooyman) - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-12-07 [cb22983](https://github.com/silverstripe/recipe-plugin/commit/cb22983fa804607d88b8fc47c4e7a122c80ee18c) Remove deprecated code (#30) (Sabina Talipova) - - 2022-10-25 [e5dceb4](https://github.com/silverstripe/recipe-plugin/commit/e5dceb4546f9eed0cd346beed3dab5af63b1869c) Update deprecations (#27) (Steve Boyd) - -### Dependencies - -- silverstripe/recipe-kitchen-sink (4.12.0 -> 5.0.0-beta1) - - 2023-02-08 [fea0e62](https://github.com/silverstripe/recipe-kitchen-sink/commit/fea0e62f99b090a9cab32844f8e4dc20c1005a93) Add more modules (Steve Boyd) - - 2023-02-08 [36483f4](https://github.com/silverstripe/recipe-kitchen-sink/commit/36483f4a13b75ba852c8c7df68cb0755a82c8b7a) Use caret for silverstripe/recipe-plugin (Steve Boyd) - - 2023-01-29 [3979d78](https://github.com/silverstripe/recipe-kitchen-sink/commit/3979d7840b050abdaef6ad5c7bbb3874734eb230) Remove silverstripe/security-extensions (Guy Sartorelli) - - 2023-01-18 [6701348](https://github.com/silverstripe/recipe-kitchen-sink/commit/67013489e4d50f89d043f7e0336540a97b698322) remove cwp/cwp-pdfexport (Steve Boyd) - - 2022-12-19 [cd343c3](https://github.com/silverstripe/recipe-kitchen-sink/commit/cd343c3a60684074433cce756a5de8fa6f32812c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/installer (4.12.0 -> 5.0.0-beta1) - - 2023-02-07 [7b49f0e](https://github.com/silverstripe/silverstripe-installer/commit/7b49f0e12980b0ed1560f3f04380765d1e7584a8) Use caret for plugins (Steve Boyd) - - 2022-12-20 [ed70400](https://github.com/silverstripe/silverstripe-installer/commit/ed70400f9cc886de6e7e53830847cb1265ad190d) Stabilise requirements (Steve Boyd) - - 2022-12-14 [406ee71](https://github.com/silverstripe/silverstripe-installer/commit/406ee71a48d0dc05dde81fbebafbe41876f7d9af) Require dev branches for composer plugins (#340) (Guy Sartorelli) - - 2022-08-04 [8ca19d5](https://github.com/silverstripe/silverstripe-installer/commit/8ca19d5eb778e62aff776b585f77054a7e9fcac3) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/vendor-plugin (1.6.0 -> 2.0.0) - - 2022-10-26 [6d322f9](https://github.com/silverstripe/vendor-plugin/commit/6d322f944312caed0135dec87c802f512c011bb3) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [c2e1c7f](https://github.com/silverstripe/vendor-plugin/commit/c2e1c7f451d27f4f6b1ae44105d01ac78364cbab) Require composer/installers ^2 (Steve Boyd) - - 2022-08-04 [de85c78](https://github.com/silverstripe/vendor-plugin/commit/de85c7817947656b40efcefc69bc632ccfbf796d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-cms (4.12.0 -> 5.0.0-beta1) - - 2022-12-19 [b4ba1cc](https://github.com/silverstripe/recipe-cms/commit/b4ba1ccde7b96e3bff4d4fefaf38af806acdea0a) Ensure GraphQL v3 is still installable (Guy Sartorelli) - - 2022-08-04 [6e7dce8](https://github.com/silverstripe/recipe-cms/commit/6e7dce8f2e0574737b3ff3b114f39c1d6a6c3d06) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-core (4.12.0 -> 5.0.0-beta1) - - 2022-08-09 [7716a27](https://github.com/silverstripe/recipe-core/commit/7716a27a70adbf2048a7004edf51102a15e4a3e9) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5a447f9](https://github.com/silverstripe/recipe-core/commit/5a447f93b30951916b0d846c1cb494a427c60438) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/assets (1.12.0 -> 2.0.0-beta1) - - 2022-10-31 [a2733b9](https://github.com/silverstripe/silverstripe-assets/commit/a2733b90fae4f441ded07ce526621e13822c6ae8) Upgrade legue/flysystem to version 3.0 (#524) (Sabina Talipova) - - 2022-09-01 [32dd083](https://github.com/silverstripe/silverstripe-assets/commit/32dd083867d71ad26494f61fe15c607c8c17cc5d) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [22ab6c3](https://github.com/silverstripe/silverstripe-assets/commit/22ab6c3101f212df9cc4d5a736e1b7f44c3cea2c) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [35fd723](https://github.com/silverstripe/silverstripe-assets/commit/35fd723748f7bd6cd4dd4ed06639f52316051c54) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/config (1.5.0 -> 2.0.0-beta1) - - 2022-10-25 [48b1336](https://github.com/silverstripe/silverstripe-config/commit/48b1336f7b4c78daec794dc2f448dd95cd35e409) Upgrade dependencies CMS5 (Sabina Talipova) - - 2022-09-01 [6ec9ca3](https://github.com/silverstripe/silverstripe-config/commit/6ec9ca350fbb4984803db9b089b556c54e6add19) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [b00bfbc](https://github.com/silverstripe/silverstripe-config/commit/b00bfbccdfae47e81a69a64610a53d0fae33d954) Require latest patch versions of dependencies (Steve Boyd) - - 2022-08-04 [52a9dd5](https://github.com/silverstripe/silverstripe-config/commit/52a9dd572a8052d484e2dc5fd6adf1445d6c0fbb) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/framework (4.12.0 -> 5.0.0-beta1) - - 2023-01-16 [05fc1df89](https://github.com/silverstripe/silverstripe-framework/commit/05fc1df8965be69582e0b3391f707303792d396f) Allow psr/container ^1.1 or ^2.0 (Steve Boyd) - - 2023-01-11 [7c20ade54](https://github.com/silverstripe/silverstripe-framework/commit/7c20ade5488f2347fbb6559cf066a27191aeacd7) Replace thirdparty simpletest with symfony domcrawler (Guy Sartorelli) - - 2023-01-10 [3f3772dc6](https://github.com/silverstripe/silverstripe-framework/commit/3f3772dc660add611902ad4949997ce3c160847e) Remove unnecessary bramus/monolog-colored-line-formatter (Guy Sartorelli) - - 2022-12-21 [156c6ca59](https://github.com/silverstripe/silverstripe-framework/commit/156c6ca59501b2435787da51a4f1f446c66c36ae) Update minimum version of oscarotero/html-parser (Steve Boyd) - - 2022-10-20 [3601b7ab8](https://github.com/silverstripe/silverstripe-framework/commit/3601b7ab8b506e6aaa41e1e89078df99ca484942) Upgrade installer dependencies (#10534) (Sabina Talipova) - - 2022-09-01 [e6fb9634b](https://github.com/silverstripe/silverstripe-framework/commit/e6fb9634b5c7b233538b3ecb3db703e58af9242b) Revert change to dependency that was made during a merge-up (#10479) (Guy Sartorelli) - - 2022-08-09 [470753194](https://github.com/silverstripe/silverstripe-framework/commit/470753194c837a8db9a7b00634c5f23ecce7dbfc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [eb62db6db](https://github.com/silverstripe/silverstripe-framework/commit/eb62db6dba91f87941404360f6d6acfa6afbe33d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/mimevalidator (2.4.0 -> 3.0.0-beta1) - - 2022-10-26 [d0982dc](https://github.com/silverstripe/silverstripe-mimevalidator/commit/d0982dca4f8c52a3c806c5edf119123ebd1328b7) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [19251bf](https://github.com/silverstripe/silverstripe-mimevalidator/commit/19251bfd2f1cea32183f6c0ffafb42496bc5cfe2) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c8916a3](https://github.com/silverstripe/silverstripe-mimevalidator/commit/c8916a307d7ce42a07916cadf985742b9d7fea67) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/admin (1.12.0 -> 2.0.0-beta1) - - 2023-01-11 [50e343a7](https://github.com/silverstripe/silverstripe-admin/commit/50e343a7e212045506f428da19c2481c6b61c03c) Update jQuery-UI in thirdparty folder (Steve Boyd) - - 2022-12-18 [2b8f53e9](https://github.com/silverstripe/silverstripe-admin/commit/2b8f53e9bc3729b6ce05776c5e559c1586212170) Upgrade front-end build stack (#1389) (Guy Sartorelli) - - 2022-09-19 [e8f3f353](https://github.com/silverstripe/silverstripe-admin/commit/e8f3f353782f99303acbc5fc22b3b4b94e4bf115) Upgrade TinyMCE from 4 to 6 (Guy Sartorelli) - - 2022-08-09 [5fc5071c](https://github.com/silverstripe/silverstripe-admin/commit/5fc5071c49b3f70302560804c17a2129ce6c0ae1) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c80be4ee](https://github.com/silverstripe/silverstripe-admin/commit/c80be4ee7e41b3e36f2ab8b1c4ffe1496a127ba8) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/asset-admin (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [6b95cde8](https://github.com/silverstripe/silverstripe-asset-admin/commit/6b95cde82e3cff1f7d1b94fdb2258db4826674e7) Upgrade build stack (#1303) (Guy Sartorelli) - - 2022-08-09 [c12dcfe4](https://github.com/silverstripe/silverstripe-asset-admin/commit/c12dcfe4fdcf3f837eb2b96a137c4c86185d8c7a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [1ad9dcd2](https://github.com/silverstripe/silverstripe-asset-admin/commit/1ad9dcd2db3d0596ddb9a0035a6422d10a46e731) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/campaign-admin (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [708e384](https://github.com/silverstripe/silverstripe-campaign-admin/commit/708e384671671ebc7db5e6e4d64b404fcc43d3af) Upgrade build stack (#248) (Guy Sartorelli) - - 2022-08-09 [45b4b3c](https://github.com/silverstripe/silverstripe-campaign-admin/commit/45b4b3cff6026ea22b4f0bed828566ae9309db30) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7c949f2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7c949f2030325d7c6309b23112e4dbdfa8584ef3) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned-admin (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [afc0dbd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afc0dbd8411dd3ff0f70015f3305cf44acbd724b) Upgrade webpack build stack (#263) (Guy Sartorelli) - - 2022-10-26 [c26a921](https://github.com/silverstripe/silverstripe-versioned-admin/commit/c26a921f59d93dc57989591b10b7311c8d974b8f) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [6c60865](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6c60865978c54f651922563d01ed1e35dae3f811) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/cms (4.12.0 -> 5.0.0-beta1) - - 2022-12-18 [5e843d26](https://github.com/silverstripe/silverstripe-cms/commit/5e843d26194ddfbac7d1bdb760b8de73901f6b28) Upgrade build stack (#2795) (Guy Sartorelli) - - 2022-08-09 [7381de15](https://github.com/silverstripe/silverstripe-cms/commit/7381de15e87d4f6feaada2ec7e9d4124b058506d) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [72f8e5f7](https://github.com/silverstripe/silverstripe-cms/commit/72f8e5f71db0d0ae8390206156a3a2170284f5cd) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/errorpage (1.12.0 -> 2.0.0-beta1) - - 2022-08-09 [f5a177c](https://github.com/silverstripe/silverstripe-errorpage/commit/f5a177ca97a665ceebd96dc35f3ebd25863ba05a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5700408](https://github.com/silverstripe/silverstripe-errorpage/commit/57004082dac802d74e3aa328e67228d416ab9566) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/reports (4.12.0 -> 5.0.0-beta1) - - 2022-10-26 [23786e5d](https://github.com/silverstripe/silverstripe-reports/commit/23786e5daffcb3167dbce162e9a53ad261cacc8d) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [65bc353f](https://github.com/silverstripe/silverstripe-reports/commit/65bc353f43165a81c7c6295ece2c13465cbf8241) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/siteconfig (4.12.0 -> 5.0.0-beta1) - - 2022-10-26 [30197074](https://github.com/silverstripe/silverstripe-siteconfig/commit/30197074e97c0b30e9161d8030d94e131416e415) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [400b82c4](https://github.com/silverstripe/silverstripe-siteconfig/commit/400b82c48b62b3c92b80a42998c56ca51fe4871a) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned (1.12.0 -> 2.0.0-beta1) - - 2022-10-26 [3f55378](https://github.com/silverstripe/silverstripe-versioned/commit/3f5537817d7711a9e439726d3a43d4042656191c) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [c9dbdd6](https://github.com/silverstripe/silverstripe-versioned/commit/c9dbdd63f886039873484b46b7b8b27d6d5d941c) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/graphql (4.1.0 -> 5.0.0-beta1) - - 2023-01-13 [1149129](https://github.com/silverstripe/silverstripe-graphql/commit/11491291871068f9e9e115cce089e860aad61d9b) Use webonyx/graphq-PHP 15 (Steve Boyd) - - 2022-10-26 [32d25c7](https://github.com/silverstripe/silverstripe-graphql/commit/32d25c79a368d4c03034a3e1acde2d2315fb382d) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [5b5971f](https://github.com/silverstripe/silverstripe-graphql/commit/5b5971fdafb12703b7e9697d21b27662bb61942b) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e63d41d](https://github.com/silverstripe/silverstripe-graphql/commit/e63d41d8db4cbe1d07092eece5e096a0be2c21ad) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/session-manager (1.4.0 -> 2.0.0-beta1) - - 2022-12-18 [4043291](https://github.com/silverstripe/silverstripe-session-manager/commit/4043291c197567bf9d931fcb93660890229b8a86) Upgrade build stack (#123) (Guy Sartorelli) - - 2022-08-17 [8712b4b](https://github.com/silverstripe/silverstripe-session-manager/commit/8712b4b52ca6f7008c3ca61ee79173c6e374578e) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e0092bf](https://github.com/silverstripe/silverstripe-session-manager/commit/e0092bf2aa912840c0906cb78bd177f322243762) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/login-forms (4.8.0 -> 5.0.0-beta1) - - 2022-12-18 [4f4e68e](https://github.com/silverstripe/silverstripe-login-forms/commit/4f4e68e9f016875c013b7889a5c79f7fdc49e44e) Upgrade build stack (#128) (Guy Sartorelli) - - 2022-08-09 [89769f4](https://github.com/silverstripe/silverstripe-login-forms/commit/89769f4e90a0694362fb284705ac66f6bf280bbc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7948d1e](https://github.com/silverstripe/silverstripe-login-forms/commit/7948d1ecc6d88c63e710690567be4855e8f614ab) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-authoring-tools (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [3ec9b66](https://github.com/silverstripe/recipe-authoring-tools/commit/3ec9b666cd1738dd2469c145ecdbcd33cde1ed7e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/documentconverter (2.4.0 -> 3.0.0-beta1) - - 2023-01-31 [fc23e53](https://github.com/silverstripe/silverstripe-documentconverter/commit/fc23e53084ad7040ae037704bcdb9b8468304d25) Upgrade frontend build stack (#38) (Guy Sartorelli) - - 2022-12-18 [5bbaed1](https://github.com/silverstripe/silverstripe-documentconverter/commit/5bbaed1a4b1ad998165efbb9d8aab25aad13558b) PHP Support in CMS5 (#35) (Sabina Talipova) - -- silverstripe/iframe (2.3.0 -> 3.0.0-beta1) - - 2023-01-10 [031d47c](https://github.com/silverstripe/silverstripe-iframe/commit/031d47ce207b8b5e886ad446cb3c31e6ae7e0ef0) PHP Support in CMS5 (#63) (Sabina Talipova) - -- silverstripe/tagfield (2.10.1 -> 3.0.0-beta1) - - 2023-02-01 [249842f](https://github.com/silverstripe/silverstripe-tagfield/commit/249842fab884d33e4fc3177ebe42c65bb648c164) Upgrade frontend build stack (#229) (Guy Sartorelli) - - 2022-12-18 [08d1646](https://github.com/silverstripe/silverstripe-tagfield/commit/08d1646e4c7b09558f94255c5f572dd3b1e0a305) PHP Support in CMS5 (#224) (Sabina Talipova) - - 2022-12-03 [e7c6189](https://github.com/silverstripe/silverstripe-tagfield/commit/e7c618992c5580f909b8fa7119585284acae45a7) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - -- silverstripe/taxonomy (2.4.0 -> 3.0.0-beta1) - - 2022-12-18 [95a13ed](https://github.com/silverstripe/silverstripe-taxonomy/commit/95a13edd6445c94ba1208a6f3a52252ba38dc969) PHP Support in CMS5 (#85) (Sabina Talipova) - -- silverstripe/recipe-blog (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [3e5a612](https://github.com/silverstripe/recipe-blog/commit/3e5a61232ebb99b3c1fdb555cb083089921f99a0) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/blog (3.11.0 -> 4.0.0-beta1) - - 2023-02-07 [ffea8ac](https://github.com/silverstripe/silverstripe-blog/commit/ffea8acb0e7e2bb4ed571c1ba9bf1dd3621b8599) Upgrade frontend build stack (#697) (Guy Sartorelli) - - 2022-12-09 [29f0b39](https://github.com/silverstripe/silverstripe-blog/commit/29f0b392717295091b212826091170a6e3bd3e2c) PHP Support in CMS5 (Sabina Talipova) - - 2022-12-03 [c20ebee](https://github.com/silverstripe/silverstripe-blog/commit/c20ebeed6aa288e5294f708483ea40a448cddbc9) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - -- silverstripe/widgets (2.3.0 -> 3.0.0-beta1) - - 2023-01-09 [9df1794](https://github.com/silverstripe/silverstripe-widgets/commit/9df179450eb56a98a62452a571dca8ece5c55dbe) PHP Support in CMS5 (#193) (Sabina Talipova) - -- silverstripe/content-widget (2.4.0 -> 3.0.0-beta1) - - 2022-12-18 [0b65d10](https://github.com/silverstripe/silverstripe-content-widget/commit/0b65d105c3e23782c8bb85afdeefe617fd5a92a6) PHP Support in CMS5 (#35) (Sabina Talipova) - -- silverstripe/spamprotection (3.3.0 -> 4.0.0-beta1) - - 2022-12-13 [d669b42](https://github.com/silverstripe/silverstripe-spamprotection/commit/d669b42cc96af2920cc021f99bb5ffc7334a2eef) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/comments (3.9.0 -> 4.0.0-beta1) - - 2023-01-20 [3aee737](https://github.com/silverstripe/silverstripe-comments/commit/3aee7377a94b952363bc48214b7a6bdcebc87483) Upgrade frontend build stack (Guy Sartorelli) - - 2022-12-09 [d6b44f2](https://github.com/silverstripe/silverstripe-comments/commit/d6b44f2385db141a428c35a48b3bf6c17f85e43c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/comment-notifications (2.3.0 -> 3.0.0-beta1) - - 2023-02-07 [11528c7](https://github.com/silverstripe/comment-notifications/commit/11528c7adf36cb095a5f9d4f48233339858a55de) Explicitly require framework (Steve Boyd) - - 2022-12-09 [5fed9b2](https://github.com/silverstripe/comment-notifications/commit/5fed9b29007e9933651839d33c17051f3a642bc8) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-collaboration (1.12.0 -> 2.0.0-beta1) - - 2023-01-10 [30038f1](https://github.com/silverstripe/recipe-collaboration/commit/30038f199dbf6933b780103b2735f149fab74a0d) PHP Support in CMS5 (#21) (Sabina Talipova) - -- silverstripe/contentreview (4.6.0 -> 5.0.0-beta1) - - 2023-01-30 [dc66fe8](https://github.com/silverstripe/silverstripe-contentreview/commit/dc66fe86c9c95731651b927b7b09859205211403) Upgrade frontend build stack (#182) (Guy Sartorelli) - - 2023-01-12 [48c40a5](https://github.com/silverstripe/silverstripe-contentreview/commit/48c40a542e2368b142be07b3532e479b435da77e) Bump debug from 2.6.8 to 2.6.9 (dependabot[bot]) - - 2023-01-09 [f4b409e](https://github.com/silverstripe/silverstripe-contentreview/commit/f4b409e0d32fe6c5f1951ded11e4da5322475ea4) PHP Support in CMS5 (#178) (Sabina Talipova) - - 2022-12-09 [013a5c3](https://github.com/silverstripe/silverstripe-contentreview/commit/013a5c34e710ddbf6c3363ca1c99ad3d44fb3549) Bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2022-12-09 [63024cb](https://github.com/silverstripe/silverstripe-contentreview/commit/63024cb9021d891e802e2de38efe4c6c096c9999) Bump qs from 6.5.2 to 6.5.3 (dependabot[bot]) - -- silverstripe/sharedraftcontent (2.8.0 -> 3.0.0-beta1) - - 2023-01-30 [2ae00a0](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/2ae00a014657eec6777ba4f5bb56e185fd5bc821) Upgrade build stack (#186) (Guy Sartorelli) - - 2022-12-18 [ecb33ba](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/ecb33ba101ca7a746301fd4515a4ae377eeb5057) PHP Support in CMS5 (#181) (Sabina Talipova) - - 2022-12-03 [814a237](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/814a237f53489326b78622f15ebbc873f481f7fc) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - -- symbiote/silverstripe-advancedworkflow (5.8.0 -> 6.0.0-beta1) - - 2023-02-07 [6f8b057](https://github.com/symbiote/silverstripe-advancedworkflow/commit/6f8b057ad4c1815ec6c34e796861233b04eaa611) Upgrade frontend build stack (#478) (Guy Sartorelli) - - 2023-01-10 [579fbb0](https://github.com/symbiote/silverstripe-advancedworkflow/commit/579fbb0f05275acdd3cfc3f11b41a2ecad8e1d0f) PHP Support in CMS5 (#474) (Sabina Talipova) - -- silverstripe/recipe-form-building (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [317c7c2](https://github.com/silverstripe/recipe-form-building/commit/317c7c219a24c98c08c8e0ad5e64b6ef082c739e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/segment-field (2.7.0 -> 3.0.0-beta1) - - 2023-01-31 [e431f24](https://github.com/silverstripe/silverstripe-segment-field/commit/e431f243ea9803273c4126a919af1edc17df4b7b) Upgrade frontend build stack (#74) (Guy Sartorelli) - - 2022-12-18 [c820963](https://github.com/silverstripe/silverstripe-segment-field/commit/c820963a9f4667150b05c0946355028c5a4b7dc2) PHP Support in CMS5 (#72) (Sabina Talipova) - - 2022-12-04 [25492b0](https://github.com/silverstripe/silverstripe-segment-field/commit/25492b0c81e4e91ddb592272c6fceb5c0e64029b) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - -- silverstripe/userforms (5.14.0 -> 6.0.0-beta1) - - 2023-01-30 [1c0dd09](https://github.com/silverstripe/silverstripe-userforms/commit/1c0dd0944515b4f20011c8ff7fd1b2064775148a) Upgrade frontend build stack (#1191) (Guy Sartorelli) - - 2022-12-13 [2b9d983](https://github.com/silverstripe/silverstripe-userforms/commit/2b9d9833b3c706a56a54b7c725f42afca90674a5) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-reporting-tools (1.12.0 -> 2.0.0-beta1) - - 2022-12-18 [adcb4e1](https://github.com/silverstripe/recipe-reporting-tools/commit/adcb4e1fb15623f43d04863a743888f9fb8aaeaa) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/externallinks (2.3.0 -> 3.0.0-beta1) - - 2023-01-30 [8ce91fb](https://github.com/silverstripe/silverstripe-externallinks/commit/8ce91fb84f98f4987084ba5bf750307209d1ad95) Upgrade frontend build stack (#90) (Guy Sartorelli) - - 2022-12-18 [fc8f9d5](https://github.com/silverstripe/silverstripe-externallinks/commit/fc8f9d55c77eb273f4bd5fb47b4cc0863f045526) PHP Support in CMS5 (#87) (Sabina Talipova) - -- silverstripe/securityreport (2.5.0 -> 3.0.0-beta1) - - 2023-01-10 [731da75](https://github.com/silverstripe/silverstripe-securityreport/commit/731da7578aadbfb7df8633b16803277960b19e02) PHP Support in CMS5 (#59) (Sabina Talipova) - -- silverstripe/sitewidecontent-report (3.3.0 -> 4.0.0-beta1) - - 2023-01-30 [5e5ab46](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/5e5ab46b9764c73d927737fcf4126e9ab8908b1a) Upgrade frontend build stack (#59) (Guy Sartorelli) - - 2023-01-10 [8b12ef8](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/8b12ef857e58f696e33ee1116c0a93bdc734725e) PHP Support in CMS5 (#57) (Sabina Talipova) - -- bringyourownideas/silverstripe-maintenance (2.6.0 -> 3.0.0-beta1) - - 2023-01-31 [1ecb60e](https://github.com/bringyourownideas/silverstripe-maintenance/commit/1ecb60eb4db38599552d1a8b5c22bee685106c5e) Upgrade frontend build stack (#187) (Guy Sartorelli) - - 2022-12-08 [9cadfaf](https://github.com/bringyourownideas/silverstripe-maintenance/commit/9cadfaf7448cbea8b2c6a66dff55b1146f5ed47b) PHP Support in CMS5 (Sabina Talipova) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0-beta1) - - 2022-12-08 [3c9044b](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/3c9044b7c57839c90875cdc5665f5f115f80a81c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-services (1.12.0 -> 2.0.0-beta1) - - 2023-01-10 [4ff9f8c](https://github.com/silverstripe/recipe-services/commit/4ff9f8c931569c13b3f57e6229f5f0c50646cd47) PHP Support in CMS5 (#23) (Sabina Talipova) - -- silverstripe/restfulserver (2.5.0 -> 3.0.0-beta1) - - 2022-12-18 [d788f5d](https://github.com/silverstripe/silverstripe-restfulserver/commit/d788f5dcd01e4195d488741d2e615b745578bdbd) PHP Support in CMS5 (#102) (Sabina Talipova) - -- silverstripe/versionfeed (2.3.0 -> 3.0.0-beta1) - - 2023-01-10 [9b92ba8](https://github.com/silverstripe/silverstripe-versionfeed/commit/9b92ba8d6c9f5b8ba0bf8c4f305322d4e591724e) PHP Support in CMS5 (#77) (Sabina Talipova) - -- silverstripe/recipe-content-blocks (2.12.0 -> 3.0.0-beta1) - - 2023-01-17 [522442c](https://github.com/silverstripe/recipe-content-blocks/commit/522442c5a0bc4b65e26d509f6dde4d6ad11043c0) PHP Support in CMS5 (#28) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.10.0 -> 5.0.0-beta1) - - 2023-01-13 [bfed1ab](https://github.com/silverstripe/silverstripe-elemental/commit/bfed1abbe9d75bdeea99939545481a6ffacd29e2) Upgrade front-end build stack (Guy Sartorelli) - - 2022-08-10 [02c3ed0](https://github.com/silverstripe/silverstripe-elemental/commit/02c3ed06d305e23dd9845a15fb4373b56cff2e7f) Update dependencies for CMS 5 (Steve Boyd) - -- silverstripe/elemental-fileblock (2.4.0 -> 3.0.0-beta1) - - 2022-12-12 [405c688](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/405c68842fc42617e1400e24c9fb1a88aa74e304) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/elemental-bannerblock (2.6.0 -> 3.0.0-beta1) - - 2023-01-30 [91190b8](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/91190b85eccee6893015e85a5da6c3611fca15f6) Upgrade frontend build stack (#98) (Guy Sartorelli) - - 2023-01-16 [732f442](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/732f442b835d187bb97d904111edd33f00bc5b57) Loosen the elemental constrain to avoid conflicts on other PRs (Maxime Rainville) - - 2022-12-12 [e9cac1b](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/e9cac1b3d2aded9892bb9fb60017c7a8a20a6fa9) PHP Support in CMS5 (Sabina Talipova) - - 2022-12-06 [4177c44](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/4177c448aca2394cc2e01a368c217a5f020f8f9a) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - -- silverstripe/recipe-solr-search (2.12.0 -> 3.0.0-beta1) - - 2022-12-18 [bf4c9ab](https://github.com/silverstripe/recipe-solr-search/commit/bf4c9abe34b93bed4afe57c7959c48ba7cda026b) PHP Support in CMS5 (Sabina Talipova) - -- cwp/cwp-search (1.7.0 -> 2.0.0-beta1) - - 2023-01-17 [c47f5a4](https://github.com/silverstripe/cwp-search/commit/c47f5a45af87f843c4480697822d463f15dfa2bc) PHP Support in CMS5 (#51) (Sabina Talipova) - -- silverstripe/fulltextsearch (3.11.1 -> 4.0.0-beta1) - - 2022-12-12 [525eb9a](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/525eb9aa24d5006264e3e511c7cec955e1790b01) PHP Support in CMS5 (Sabina Talipova) - -- symbiote/silverstripe-queuedjobs (4.11.0 -> 5.0.0-beta1) - - 2022-08-10 [4db7317](https://github.com/symbiote/silverstripe-queuedjobs/commit/4db73170a5c4eb07be75c21e41924040bde856ee) Update dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-ccl (2.12.0 -> 3.0.0-beta1) - - 2023-01-17 [9f43099](https://github.com/silverstripe/recipe-ccl/commit/9f430997893405cb657f63e765470fa0cce662da) PHP Support in CMS5 (#7) (Sabina Talipova) - -- cwp/cwp-core (2.11.0 -> 3.0.0-beta1) - - 2023-01-17 [0e416b0](https://github.com/silverstripe/cwp-core/commit/0e416b001ac8d047c2242ef7589b6dbb6d550568) PHP Support in CMS5 (#114) (Sabina Talipova) - -- silverstripe/auditor (2.5.0 -> 3.0.0-beta1) - - 2023-01-17 [e5162c8](https://github.com/silverstripe/silverstripe-auditor/commit/e5162c86be7156cb1bd966cf076a9dcaf6429a96) PHP Support in CMS5 (#47) (Sabina Talipova) - -- silverstripe/environmentcheck (2.6.0 -> 3.0.0-beta1) - - 2022-12-18 [d038843](https://github.com/silverstripe/silverstripe-environmentcheck/commit/d03884338bf26fe2e021a2d5328e52900ea1eacd) PHP Support in CMS5 (#82) (Sabina Talipova) - -- silverstripe/hybridsessions (2.6.0 -> 3.0.0-beta1) - - 2022-12-12 [495ebfb](https://github.com/silverstripe/silverstripe-hybridsessions/commit/495ebfb45cf71b14307987f8164534b5fa29b80f) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/registry (2.5.0 -> 3.0.0-beta1) - - 2022-08-04 [212ad7d](https://github.com/silverstripe/silverstripe-registry/commit/212ad7d5d75c6eba12bc199d655cfa46d6780d69) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/totp-authenticator (4.5.0 -> 5.0.0-beta1) - - 2023-01-30 [2518a69](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/2518a6978bdf62d38e80610ce4e9bbbdc78d3ec7) Upgrade frontend build stack (#109) (Guy Sartorelli) - - 2023-01-17 [113f966](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/113f96614405256283378c7a7065afe013de6ac8) PHP Support in CMS5 (#107) (Sabina Talipova) - - 2022-12-11 [53da295](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/53da2953626ce25d04fe3e3131110299bd5901bf) Bump qs from 6.5.2 to 6.5.3 (dependabot[bot]) - - 2022-12-11 [c54ac8d](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/c54ac8d7fc676e1a8a76bacb9dbae3f6265559a6) Bump express from 4.17.1 to 4.18.2 (dependabot[bot]) - - 2022-12-04 [b84bb31](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/b84bb311a62a279fc53e3404879af394adbc83f2) Bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2022-12-03 [c0ee60b](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/c0ee60be42d6fbbfc18337f68ddbacc5bd261db2) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - -- silverstripe/mfa (4.7.0 -> 5.0.0-beta1) - - 2023-01-30 [9859c77](https://github.com/silverstripe/silverstripe-mfa/commit/9859c775a8c49d0a247c16fb9a057f203708ad05) Remove silverstripe/security-extensions dependency (Guy Sartorelli) - - 2023-01-30 [a86914c](https://github.com/silverstripe/silverstripe-mfa/commit/a86914cef92de2ef38bebe7f3e531233002aadc0) Upgrade frontend build stack (#481) (Guy Sartorelli) - - 2022-12-13 [99b454b](https://github.com/silverstripe/silverstripe-mfa/commit/99b454bdb9363ccdc3131c3128d7766ec910cb0a) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/crontask (2.5.0 -> 3.0.0-beta1) - - 2022-12-18 [463023e](https://github.com/silverstripe/silverstripe-crontask/commit/463023edafd14128904137ebef84e9cc36104bf5) PHP Support in CMS5 (#72) (Sabina Talipova) - -- silverstripe/gridfieldqueuedexport (2.7.0 -> 3.0.0-beta1) - - 2023-01-31 [65963b5](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/65963b5ac327d55d9716d8a0ec8b7252c61e75e2) Upgrade frontend build stack (#71) (Guy Sartorelli) - - 2022-12-18 [7cd8e1d](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/7cd8e1d465dd0822c28c6fda03cc59033854ec84) PHP Support in CMS5 (#69) (Sabina Talipova) - -- silverstripe/ldap (1.5.0 -> 2.0.0-beta1) - - 2022-12-12 [5b77ab8](https://github.com/silverstripe/silverstripe-ldap/commit/5b77ab8e03b9fb1272a1bf973a4efd3e59f08b41) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/textextraction (3.4.0 -> 4.0.0-beta1) - - 2022-12-13 [862fb81](https://github.com/silverstripe/silverstripe-textextraction/commit/862fb811bc97b7896bfcf7153c632eef5df057b5) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/realme (4.3.0 -> 5.0.0-beta1) - - 2023-01-31 [aae6510](https://github.com/silverstripe/silverstripe-realme/commit/aae6510af0e6f4dc575ec9f0fde40fff8edd71e2) Upgrade frontend build stack (#94) (Guy Sartorelli) - - 2022-12-18 [3fd94ed](https://github.com/silverstripe/silverstripe-realme/commit/3fd94ed75b27ee0e51aeedea5ddb6bb646d2ac11) PHP Support in CMS5 (#92) (Sabina Talipova) - -- silverstripe/ckan-registry (1.6.0 -> 2.0.0-beta1) - - 2023-01-29 [5b2ded4](https://github.com/silverstripe/silverstripe-ckan-registry/commit/5b2ded4f7b6716142613d75b07bd86a1f9b4cde2) Upgrade frontend build stack (#281) (Guy Sartorelli) - - 2022-12-09 [1d70aa5](https://github.com/silverstripe/silverstripe-ckan-registry/commit/1d70aa5697971cec74d60de6b9f1ea5a4404071e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/webauthn-authenticator (4.6.0 -> 5.0.0-beta1) - - 2023-01-30 [1e8cfb3](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/1e8cfb31e6d7ba30aa2b3ac0ab46a4912a64d76e) Upgrade frontend build stack (#126) (Guy Sartorelli) - - 2022-12-13 [33d4507](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/33d45072f592cb7789774c88e270f964e58a4ce6) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/subsites (2.7.0 -> 3.0.0-beta1) - - 2023-01-24 [47e293b](https://github.com/silverstripe/silverstripe-subsites/commit/47e293bdeb4c475e3d51fc57b2b625e0f85570f3) Upgrade frontend build stack (Guy Sartorelli) - - 2023-01-10 [a67b7ef](https://github.com/silverstripe/silverstripe-subsites/commit/a67b7ef45f54f92a035ef7274d9dfca93a7b424c) PHP Support in CMS5 (#497) (Sabina Talipova) - -- silverstripe/lumberjack (2.2.0 -> 3.0.0-beta1) - - 2023-01-31 [7a953b0](https://github.com/silverstripe/silverstripe-lumberjack/commit/7a953b0ac4ef5808204bddef8a73e806f169d916) Upgrade frontend build stack (#117) (Guy Sartorelli) - - 2022-12-18 [e238865](https://github.com/silverstripe/silverstripe-lumberjack/commit/e238865074dfaa50b9f310bc26aa84eb19de54fe) PHP Support in CMS5 (#114) (Sabina Talipova) - -- silverstripe/staticpublishqueue (5.3.0 -> 6.0.0-beta1) - - 2022-12-18 [5432813](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/5432813d961c077f3eee6c90e63a102df8e097e8) PHP Support in CMS5 (#157) (Sabina Talipova) - -- cwp/starter-theme (3.2.1 -> 4.0.0-beta1) - - 2022-12-18 [a12e58a](https://github.com/silverstripe/cwp-starter-theme/commit/a12e58a9e7b851eb0545eaaab77c3a2446618361) PHP Support in CMS5 (#216) (Sabina Talipova) - - 2021-08-05 [9f73c77](https://github.com/silverstripe/cwp-starter-theme/commit/9f73c77e45eb9b613f031180bb4deee31ae0132a) Bump elliptic from 6.5.3 to 6.5.4 (dependabot[bot]) - - 2021-08-05 [1d4adb6](https://github.com/silverstripe/cwp-starter-theme/commit/1d4adb68175b1b978dbcc490ebae8ca1123581d0) Bump ws from 6.2.1 to 6.2.2 (dependabot[bot]) - - 2021-08-03 [62f3fcc](https://github.com/silverstripe/cwp-starter-theme/commit/62f3fcc5647f34a8237449da72f11eb34e2ae58d) Bump tar from 4.4.13 to 4.4.15 (dependabot[bot]) - - 2021-05-27 [f23f8dd](https://github.com/silverstripe/cwp-starter-theme/commit/f23f8dded08c5559a8e33184cf83d9acdee121d1) Bump dns-packet from 1.3.1 to 1.3.4 (dependabot[bot]) - - 2021-05-25 [c72b5cd](https://github.com/silverstripe/cwp-starter-theme/commit/c72b5cd9ecddac766858f3b3ab1e35a49cb844cc) Bump browserslist from 4.7.2 to 4.16.6 (dependabot[bot]) - - 2021-05-07 [90266c0](https://github.com/silverstripe/cwp-starter-theme/commit/90266c09b5f3f1edafdef9d3efee9d799f30ab31) Bump URL-parse from 1.4.7 to 1.5.1 (dependabot[bot]) - - 2021-04-19 [b57078c](https://github.com/silverstripe/cwp-starter-theme/commit/b57078c1634f2642a92a8e21500c883a39e33c08) Bump ssri from 6.0.1 to 6.0.2 (dependabot[bot]) - - 2020-12-31 [314b7b3](https://github.com/silverstripe/cwp-starter-theme/commit/314b7b3337904220cdfd9988e1e54f166fb2da8b) Bump dot-prop from 4.2.0 to 4.2.1 (dependabot[bot]) - -- cwp/agency-extensions (2.7.0 -> 3.0.0-beta1) - - 2023-01-31 [8e40f56](https://github.com/silverstripe/cwp-agencyextensions/commit/8e40f5621a7356bdc946cc29d655b5c025161b11) Upgrade frontend build stack (#82) (Guy Sartorelli) - - 2023-01-17 [3d1ae3d](https://github.com/silverstripe/cwp-agencyextensions/commit/3d1ae3d3080f26c73cc847813ec0275960e5c83e) PHP Support in CMS5 (#81) (Sabina Talipova) - - 2022-12-22 [763422a](https://github.com/silverstripe/cwp-agencyextensions/commit/763422a6b192c3687edefa567c66def9c0e61ef1) Bump qs from 6.5.2 to 6.5.3 (dependabot[bot]) - - 2022-12-04 [8626a4b](https://github.com/silverstripe/cwp-agencyextensions/commit/8626a4bae0cb1f820266c89da4cc07a9d2232f78) Bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2022-12-03 [80c0190](https://github.com/silverstripe/cwp-agencyextensions/commit/80c019078347d3dd67f2afc91dc762a221c52878) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - - 2022-04-28 [54c450d](https://github.com/silverstripe/cwp-agencyextensions/commit/54c450d76f6716360b623c99ad30431b0cb045d3) Bump async from 2.6.3 to 2.6.4 (dependabot[bot]) - -- cwp/watea-theme (3.1.0 -> 4.0.0-beta1) - - 2022-12-18 [0b71677](https://github.com/silverstripe/cwp-watea-theme/commit/0b71677b8ef1288429048e2cc0611c0247069c2a) PHP Support in CMS5 (#159) (Sabina Talipova) - - 2022-12-09 [d5fc0e5](https://github.com/silverstripe/cwp-watea-theme/commit/d5fc0e5d2c8a4662be84f4273bd7cc042a85cc13) build(deps): bump express from 4.16.4 to 4.18.2 (dependabot[bot]) - - 2022-12-03 [1434d0e](https://github.com/silverstripe/cwp-watea-theme/commit/1434d0e807dc97a1146d92d0b6e04d6bbdbf99a1) build(deps): bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - - 2022-11-16 [91a6ec8](https://github.com/silverstripe/cwp-watea-theme/commit/91a6ec85ee04029680641596d00c68598d07f780) build(deps): bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2022-11-16 [b825254](https://github.com/silverstripe/cwp-watea-theme/commit/b825254afab1f6ed897d13179fd8a158205372ca) build(deps): bump loader-utils from 1.1.0 to 1.4.2 (dependabot[bot]) - - 2022-06-01 [b17067d](https://github.com/silverstripe/cwp-watea-theme/commit/b17067ded6ba8d70a5eaf70de271fc621e230c52) build(deps): bump eventsource from 1.0.7 to 1.1.1 (dependabot[bot]) - - 2022-02-28 [f22a1c9](https://github.com/silverstripe/cwp-watea-theme/commit/f22a1c9402e487e181748ca7cd8185c24683dbaf) build(deps): bump URL-parse from 1.5.7 to 1.5.10 (dependabot[bot]) - - 2022-02-17 [2dbe816](https://github.com/silverstripe/cwp-watea-theme/commit/2dbe816f42805cf146d449ee83ccade9c4bcc702) build(deps): bump URL-parse from 1.5.3 to 1.5.7 (dependabot[bot]) - - 2022-02-12 [5cc8cca](https://github.com/silverstripe/cwp-watea-theme/commit/5cc8ccad3cc6bfc744ddf172df56fe5464abeb71) build(deps): bump follow-redirects from 1.14.7 to 1.14.8 (dependabot[bot]) - - 2022-01-13 [c683e24](https://github.com/silverstripe/cwp-watea-theme/commit/c683e24b0f9e83e3d1ea3b6ed4fc3a0c3ca71af8) build(deps): bump follow-redirects from 1.13.0 to 1.14.7 (dependabot[bot]) - - 2021-10-05 [4f7f2fb](https://github.com/silverstripe/cwp-watea-theme/commit/4f7f2fbc03dad8261b88a0f33d365b24f3dec8e1) build(deps): bump URL-parse from 1.5.1 to 1.5.3 (dependabot[bot]) - - 2021-09-01 [7d3f307](https://github.com/silverstripe/cwp-watea-theme/commit/7d3f307f8c35d5140931aaf1f5478bc047889b2a) build(deps): bump tar from 4.4.15 to 4.4.19 (dependabot[bot]) - - 2021-08-05 [3f6abcb](https://github.com/silverstripe/cwp-watea-theme/commit/3f6abcb57dd46323f83e2628745640f43b530861) build(deps): bump color-string from 1.5.3 to 1.6.0 (dependabot[bot]) - - 2021-08-03 [64996f7](https://github.com/silverstripe/cwp-watea-theme/commit/64996f7f9d6e11bd2d23fe96955642cba0998a19) build(deps): bump tar from 4.4.8 to 4.4.15 (dependabot[bot]) - - 2021-05-27 [3a3b94d](https://github.com/silverstripe/cwp-watea-theme/commit/3a3b94df93714a41ad1468749a94edd20a8a8e5b) build(deps): bump dns-packet from 1.3.1 to 1.3.4 (dependabot[bot]) - - 2021-05-25 [5516a3e](https://github.com/silverstripe/cwp-watea-theme/commit/5516a3eea8b31f06e4347c51e98a08e007770b21) build(deps): bump lodash from 4.17.19 to 4.17.21 (dependabot[bot]) - - 2021-05-25 [1ea5f1e](https://github.com/silverstripe/cwp-watea-theme/commit/1ea5f1ef67799e2885d412a7a7763c37f02a393b) build(deps): bump browserslist from 4.5.3 to 4.16.6 (dependabot[bot]) - - 2021-05-14 [59725a6](https://github.com/silverstripe/cwp-watea-theme/commit/59725a62e2f4e2ca2f15447791f3d45b8e1041a2) build(deps): bump ini from 1.3.5 to 1.3.8 (dependabot[bot]) - - 2021-05-07 [41a1e2d](https://github.com/silverstripe/cwp-watea-theme/commit/41a1e2ddcdc762ada715047f8cdc38868c86721b) build(deps): bump URL-parse from 1.4.4 to 1.5.1 (dependabot[bot]) - - 2021-03-09 [3a985cc](https://github.com/silverstripe/cwp-watea-theme/commit/3a985ccee2fc31ecf070cd0dc90076255f821883) build(deps): bump elliptic from 6.5.3 to 6.5.4 (dependabot[bot]) - -- cwp/cwp (2.10.1 -> 3.0.0-beta1) - - 2023-01-17 [ac2a374](https://github.com/silverstripe/cwp/commit/ac2a374ef0e1eb92ae932c41b18f79292ba8c48c) PHP Support in CMS5 (#317) (Sabina Talipova) - -- dnadesign/silverstripe-elemental-userforms (3.2.1 -> 4.0.0-beta1) - - 2022-12-09 [98ebc6f](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/98ebc6f3b135d30c4a5cc411af814e02b46e6427) PHP Support in CMS5 (Sabina Talipova) - -- symbiote/silverstripe-multivaluefield (5.3.0 -> 6.0.0-beta1) - - 2023-01-31 [95b8cea](https://github.com/symbiote/silverstripe-multivaluefield/commit/95b8ceadddef2a22a2fa903761bba6df22b20575) Upgrade frontend build stack (#88) (Guy Sartorelli) - - 2022-12-18 [ab0bf06](https://github.com/symbiote/silverstripe-multivaluefield/commit/ab0bf06ba3ea222cc34cda82afaf381558c0b97c) PHP Support in CMS5 (#86) (Sabina Talipova) - -- symbiote/silverstripe-gridfieldextensions (3.5.0 -> 4.0.0-beta1) - - 2022-08-10 [d0c0cc0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/d0c0cc08f0d6a337db7b033063694cf10662c769) Update dependencies for CMS 5 (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.0.2 -> 4.0.0-beta1) - - 2023-01-18 [dfcc4ce](https://github.com/colymba/GridFieldBulkEditingTools/commit/dfcc4ce48293cb83fbcfb92231ed2091c5b624c9) Upgrade frontend build stack (Guy Sartorelli) - - 2022-12-18 [1ec807c](https://github.com/colymba/GridFieldBulkEditingTools/commit/1ec807ccbe4371110c2b694ce99cc06ddd1382c8) PHP Support in CMS5 (#228) (Sabina Talipova) - -- silverstripe/silverstripe-fluent (4.7.0 -> 7.0.0-beta1) - - 2023-01-26 [155ef59](https://github.com/silverstripe/silverstripe-fluent/commit/155ef59d4d09e52aecad255e2bff90ba4006bcaf) Upgrade frontend build stack (Guy Sartorelli) - - 2020-12-14 [f31e2c0](https://github.com/silverstripe/silverstripe-fluent/commit/f31e2c0e82b094b65218e8b4445f21dd46d322e4) Bump ini from 1.3.4 to 1.3.7 (#661) (dependabot[bot]) - - 2020-09-04 [da92793](https://github.com/silverstripe/silverstripe-fluent/commit/da927936e644894235b681feb8cb303222dbcece) Bump node-sass from 4.6.0 to 4.14.1 (dependabot[bot]) - - 2020-09-04 [6371f64](https://github.com/silverstripe/silverstripe-fluent/commit/6371f643708d5bc58ee6798325bbb5749a4bd062) Bump is-my-json-valid from 2.16.1 to 2.20.5 (dependabot[bot]) - - 2020-09-04 [7e51d10](https://github.com/silverstripe/silverstripe-fluent/commit/7e51d10b0e4cfeec8ede8d60b02067a70fe4de4d) Bump lodash.mergewith from 4.6.0 to 4.6.2 (dependabot[bot]) - - 2020-07-30 [4588efd](https://github.com/silverstripe/silverstripe-fluent/commit/4588efdaf5ecc773745f9f90c326c0431ed5de09) Bump elliptic from 6.4.0 to 6.5.3 (dependabot[bot]) - - 2020-04-30 [5906b6c](https://github.com/silverstripe/silverstripe-fluent/commit/5906b6c66f8ca499688db3b114f39b6be33e4080) Bump jQuery from 3.2.1 to 3.5.0 (dependabot[bot]) - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-10-26 [b81b640](https://github.com/silverstripe/recipe-plugin/commit/b81b640235d5b18e99278268af4c39df30787dd3) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [e0aeb69](https://github.com/silverstripe/recipe-plugin/commit/e0aeb694a91fc2aea056ea9421adcadc0d146d39) Update core dependencies for CMS 5 (Steve Boyd) - -### Documentation - -- silverstripe/iframe (2.3.0 -> 3.0.0-beta1) - - 2022-08-20 [3a1faad](https://github.com/silverstripe/silverstripe-iframe/commit/3a1faad9715e08d55a881438014526de8946ec32) Correct title for userhelp (Maxime Rainville) - -- silverstripe/taxonomy (2.4.0 -> 3.0.0-beta1) - - 2022-08-20 [59b6e01](https://github.com/silverstripe/silverstripe-taxonomy/commit/59b6e0172cf37b6bd5afff47a125bc6206e551fd) Correct title for userhelp (Maxime Rainville) - -- bringyourownideas/silverstripe-maintenance (2.6.0 -> 3.0.0-beta1) - - 2022-08-20 [4320999](https://github.com/bringyourownideas/silverstripe-maintenance/commit/4320999be3cc719d25d1c7e45a32e13cefe1096b) Correct title for userhelp (Maxime Rainville) - -- silverstripe/versionfeed (2.3.0 -> 3.0.0-beta1) - - 2022-08-20 [2ba0438](https://github.com/silverstripe/silverstripe-versionfeed/commit/2ba04382772cfad1c72e13d2b058a38fa7ae91df) Correct title for userhelp (Maxime Rainville) - -- silverstripe/developer-docs (4.12.0 -> 5.0.0-beta1) - - 2023-02-08 [f9fed249](https://github.com/silverstripe/developer-docs/commit/f9fed24913bd58a14597515e135d849e38e56dad) Last changes for the changelog before beta release (#154) (Guy Sartorelli) - - 2023-02-08 [8b5ac996](https://github.com/silverstripe/developer-docs/commit/8b5ac9964baece9263b0dc3c9dfb6ee896d4d853) 5.0.0 changelog removed and changed API (Steve Boyd) - - 2023-02-02 [65ee9bdd](https://github.com/silverstripe/developer-docs/commit/65ee9bdd7aaa357ef1a7dac14e43fb56e1c2d070) Clarify that we could upgrade a fixed dependency to add support for a newer PHP release (#148) (Maxime Rainville) - - 2023-02-01 [1c427090](https://github.com/silverstripe/developer-docs/commit/1c427090caf0bae7179b214f37fe5418994d5c73) Add supported module (Maxime Rainville) - - 2023-01-30 [a2e18b5a](https://github.com/silverstripe/developer-docs/commit/a2e18b5adbd49bfec075b28a8777c083b9ddf1e0) New limit behaviour (Maxime Rainville) - - 2023-01-30 [a9a435ea](https://github.com/silverstripe/developer-docs/commit/a9a435ea93d5de898d073b8d5cb175a9bdabc7de) Document features from security-extensions (Guy Sartorelli) - - 2023-01-30 [ac19d46f](https://github.com/silverstripe/developer-docs/commit/ac19d46f094db6f37863cf3995f62fc69277a4d5) Document changes required to upgrade build stack (#137) (Guy Sartorelli) - - 2023-01-26 [6bef21e2](https://github.com/silverstripe/developer-docs/commit/6bef21e244c9703fd21a3171e88eb806da73fb46) Update Email docs (Steve Boyd) - - 2023-01-20 [77c8932b](https://github.com/silverstripe/developer-docs/commit/77c8932bbdd9b8a6f421d55958d45585244d0cca) Define what can be merge post beta (Maxime Rainville) - - 2023-01-19 [d7a676fb](https://github.com/silverstripe/developer-docs/commit/d7a676fb71ba54a15a6c174b41ba916bc316ef4b) Add GuySartorelli as core committer (Maxime Rainville) - - 2023-01-19 [67aa583d](https://github.com/silverstripe/developer-docs/commit/67aa583db1c8e8b7d0d23751a9be32e2fa4261a1) parameter order (Steve Boyd) - - 2023-01-17 [9482f5ed](https://github.com/silverstripe/developer-docs/commit/9482f5ed9a21c4066ce77bde59b074c7eeeeccc6) Document changes to trailing slash in URLs (Guy Sartorelli) - - 2023-01-17 [9270e025](https://github.com/silverstripe/developer-docs/commit/9270e0252519893fe0ec69b67cdb28232160f4de) Removed HTMLValue shorthand (Steve Boyd) - - 2023-01-17 [05178763](https://github.com/silverstripe/developer-docs/commit/051787638d15f437088ce9c07b5329ebd90d20db) Mark the removal of subitem_class config (Maxime Rainville) - - 2023-01-16 [035c139d](https://github.com/silverstripe/developer-docs/commit/035c139d3774b615a83a4b34af47fd738187c593) masterminds/html5 (Steve Boyd) - - 2023-01-16 [4f1ad36f](https://github.com/silverstripe/developer-docs/commit/4f1ad36fdcb0230264533b0bfdbdf6d78d479c2e) List which classes had ReturnTypeWillChange annotation removed (Maxime Rainville) - - 2022-12-21 [a4486349](https://github.com/silverstripe/developer-docs/commit/a44863490d379cdbcd60550eacb45b646f6509a8) Stop saying jQuery is legacy - it'll be around for a while. (#128) (Guy Sartorelli) - - 2022-12-20 [18625d85](https://github.com/silverstripe/developer-docs/commit/18625d85ce1070228607bdc5baa77b09a532f07c) Add information about deprecations (Steve Boyd) - - 2022-12-20 [995b414e](https://github.com/silverstripe/developer-docs/commit/995b414eb7dc66869aa95b2f3eb29853bb6d6f93) Update changelog with breaking JS changes (Guy Sartorelli) - - 2022-12-20 [2252967e](https://github.com/silverstripe/developer-docs/commit/2252967e7e3baea4b4fb3e1d02a396ace7c8c29a) Update JavaScript docs (Guy Sartorelli) - - 2022-12-20 [deb228b3](https://github.com/silverstripe/developer-docs/commit/deb228b39341bed54d8ddba0f650b02cc78f7dfb) Update entwine docs to match current behaviour (Guy Sartorelli) - - 2022-12-20 [3d26b219](https://github.com/silverstripe/developer-docs/commit/3d26b219c3d3226106cf4bcb364374bbce523204) Add entwine docs from readme (Guy Sartorelli) - - 2022-12-19 [0d21be80](https://github.com/silverstripe/developer-docs/commit/0d21be809a72206c220cce5b982e0ea34c89e68c) Fix typo in 4.12 changelog (Maxime Rainville) - - 2022-12-05 [c0599764](https://github.com/silverstripe/developer-docs/commit/c0599764f126e3dbc1ff493544358efc01eed613) DataList::sort() and orderBy() (Steve Boyd) - - 2022-11-21 [ef798631](https://github.com/silverstripe/developer-docs/commit/ef798631264cd9665d2cecf12352a58736752809) Document adding TopPage extensions by default (#94) (Guy Sartorelli) - - 2022-10-18 [a44164ab](https://github.com/silverstripe/developer-docs/commit/a44164ab21936798a8c496bb544c95f45a65d25e) Updates for symfony/mailer (Steve Boyd) - - 2022-10-18 [aeded78b](https://github.com/silverstripe/developer-docs/commit/aeded78b08fe08e524e22ef29c31457e85ac1811) Document controller method signatures (Steve Boyd) - - 2022-09-27 [6d057eb6](https://github.com/silverstripe/developer-docs/commit/6d057eb6380a991bbc0e2d0e117acfe5c0f6cb1f) Document upgrading to TinyMCE 6 (Guy Sartorelli) - - 2022-09-19 [11123b44](https://github.com/silverstripe/developer-docs/commit/11123b44e02c61dce1cc1f81c2f18a224e405da2) Document SecurityAdmin extending ModelAdmin (Steve Boyd) - - 2022-09-15 [ebe0e9dc](https://github.com/silverstripe/developer-docs/commit/ebe0e9dcc6bf6ff934acfaf7f19c97a34c5eca06) Document breaking changes to template syntax (#81) (Guy Sartorelli) - - 2022-09-15 [4363fbfa](https://github.com/silverstripe/developer-docs/commit/4363fbfa1fdfd003adf1cfc4352e813cc210bf22) Changelog for 5.0.0-alpha1 (Steve Boyd) - - 2022-09-14 [e4b01832](https://github.com/silverstripe/developer-docs/commit/e4b018321a3ed04176cd4fce896f9b30b41d9c22) Fix links from upgrade docs (#66) (Guy Sartorelli) - - 2022-09-14 [b58b556d](https://github.com/silverstripe/developer-docs/commit/b58b556dc38fb32c8a1a842ff62c927a73f5093f) Document making models previewable via extensions (Guy Sartorelli) - - 2022-09-14 [db79fc5b](https://github.com/silverstripe/developer-docs/commit/db79fc5b0a84ca2105aa3a3bb0e125c5d77b020c) Move upgrade docs into changelog for 5.0.0 (#84) (Guy Sartorelli) - - 2022-09-07 [1f87c415](https://github.com/silverstripe/developer-docs/commit/1f87c415139ff46c16d921ea3b862655a5e963c5) Document symfony 6 dependency changes (Steve Boyd) - - 2022-09-01 [09472a53](https://github.com/silverstripe/developer-docs/commit/09472a532f8f31b7d8d38ecdadd698216ed29216) Document removal of HistoryControllerFactory (#71) (Guy Sartorelli) - - 2022-09-01 [b497e270](https://github.com/silverstripe/developer-docs/commit/b497e27061363519d734317196d9ead35ae86c9f) Document reverting a change to table names (#78) (Guy Sartorelli) - - 2022-08-31 [a1d8a3fe](https://github.com/silverstripe/developer-docs/commit/a1d8a3fe00bedf659b393301e9a1a0032775b493) Document changes in various rescued master commits (#70) (Guy Sartorelli) - - 2022-08-10 [9ca7cee9](https://github.com/silverstripe/developer-docs/commit/9ca7cee979e6335bbd238357204c9d323b75cb33) Document removing deprecated support for PHPUnit 5.7 (Guy Sartorelli) - - 2022-08-08 [e933bcef](https://github.com/silverstripe/developer-docs/commit/e933bcef102f7652b7b23f301e98a866d80fcff5) Document breaking changes for updating resources dir (#58) (Guy Sartorelli) - - 2022-08-07 [c9cd71e0](https://github.com/silverstripe/developer-docs/commit/c9cd71e073b1883f3575b3694149c77987013e48) Document SilverStripeNavigator for front-end use (Guy Sartorelli) - - 2022-08-07 [168a8c7f](https://github.com/silverstripe/developer-docs/commit/168a8c7fff09ed238a022e15bc21b8ac83b5f284) Document breaking changes from migrating SilverStripeNavigator (Guy Sartorelli) - - 2022-08-05 [79dcb6ae](https://github.com/silverstripe/developer-docs/commit/79dcb6aedbd243ffd288e6f3fbfe40cd05818fe8) Remove references to GraphQL v3 (Guy Sartorelli) - - 2022-07-21 [c8dc5b9c](https://github.com/silverstripe/developer-docs/commit/c8dc5b9cfba056c1cc66eac164fa8b21a4e5c3d3) Update references to CMS 3 and 4 (Guy Sartorelli) - -- silverstripe/registry (2.5.0 -> 3.0.0-beta1) - - 2022-08-20 [7926b3b](https://github.com/silverstripe/silverstripe-registry/commit/7926b3b2877a3054a3018dfd319b88832e223add) Correct title for userhelp (Maxime Rainville) - -### Other changes - -- silverstripe/framework (4.12.0 -> 5.0.0-beta1) - - 2023-01-27 [3e5d99ded](https://github.com/silverstripe/silverstripe-framework/commit/3e5d99dedca452159b12ebe0836e5cdef94c4dfc) Prevent backslash in class name (Thomas Portelange) - - 2022-12-13 [4a1eb0c15](https://github.com/silverstripe/silverstripe-framework/commit/4a1eb0c15889005d883006f14366d3858b46ff2e) ISSUE-10615: Respect SS_BASE_URL scheme in CLI environment. (Shiva Kerdel) - - 2022-09-01 [06b13e0fa](https://github.com/silverstripe/silverstripe-framework/commit/06b13e0fa621be58c7a9f43ffdc86c071d262fe4) Revert "Merge pull request #10450 from creative-commoners/pulls/5/rescue-master-generators" (#10483) (Guy Sartorelli) - - 2017-06-28 [81beddc16](https://github.com/silverstripe/silverstripe-framework/commit/81beddc161e7e1696b6f65b72df79617cd65dede) Add deprecated method to make CMS tests work (Sam Minnee) - - 2017-06-28 [9c7ecb1f7](https://github.com/silverstripe/silverstripe-framework/commit/9c7ecb1f798f56f9b485d7cbad6e0d57805e9801) Further work on Loz’ solution (Sam Minnee) - - 2017-06-28 [850482138](https://github.com/silverstripe/silverstripe-framework/commit/850482138b721690ddd6104a8e1cbcae5e0d1ed9) Proposed solution for caching template generator counts (Loz Calver) - - 2017-06-28 [749405170](https://github.com/silverstripe/silverstripe-framework/commit/749405170ccbcc4e8a36cd4c171a1d9991c6e5cb) Update MySQLDatabaseTest to work with new query iterators (Loz Calver) - - 2017-01-16 [2ead3746d](https://github.com/silverstripe/silverstripe-framework/commit/2ead3746d62de8df64c671a32762b52cc360710a) Replace Map_Iterator with a generator. (Sam Minnee) - -- silverstripe/cms (4.12.0 -> 5.0.0-beta1) - - 2023-01-29 [b02beba7](https://github.com/silverstripe/silverstripe-cms/commit/b02beba7babad15a66f9bc91b76872d8496783e6) Resolve a couple of behat issues (#2830) (Guy Sartorelli) - - 2022-11-21 [003f9ba7](https://github.com/silverstripe/silverstripe-cms/commit/003f9ba750212a73027e1b07b09fb9139571f78c) Revert "Merge branch '4' into 5" (Guy Sartorelli) - -- silverstripe/blog (3.11.0 -> 4.0.0-beta1) - - 2022-11-17 [20d9f45](https://github.com/silverstripe/silverstripe-blog/commit/20d9f45442c2ca5c29c4be2d0ae80a46e13a11c2) Fixed type annotation (Pascal Schneider) - -- silverstripe/comments (3.9.0 -> 4.0.0-beta1) - - 2022-11-20 [57a9617](https://github.com/silverstripe/silverstripe-comments/commit/57a9617d5b7fce47ae05e2d750f258520ee6a6fa) Add a key when enabling the CommentsExtension. (Steffen Maass) - -- cwp/cwp-search (1.7.0 -> 2.0.0-beta1) - - 2022-11-16 [899d1d2](https://github.com/silverstripe/cwp-search/commit/899d1d28b43db4a11a15e4913178fb83ba2fb4c3) Update form action to use absolute URL (James Zhu) - - 2022-11-03 [b287ed6](https://github.com/silverstripe/cwp-search/commit/b287ed66edd34c3312199c336b2d1911c8774795) Update search link & form action to use absolute URL (James Zhu) - - 2022-11-01 [701e6fa](https://github.com/silverstripe/cwp-search/commit/701e6fa17b3b8eee4a03cba49e49bd28a99abd77) Search link is using relative link (James Zhu) - -- symbiote/silverstripe-queuedjobs (4.11.0 -> 5.0.0-beta1) - - 2022-11-08 [43f7c67](https://github.com/symbiote/silverstripe-queuedjobs/commit/43f7c67e131c3d5f9122df421c414670c45b3a63) Added quotes around value in yml (Lars Prakken) - -- silverstripe/developer-docs (4.12.0 -> 5.0.0-beta1) - - 2023-02-08 [52afbd06](https://github.com/silverstripe/developer-docs/commit/52afbd06e99b65f98d6a6b1c794a95814def9c43) Last bit of feedback (Maxime Rainville) - - 2023-02-08 [d2b83aed](https://github.com/silverstripe/developer-docs/commit/d2b83aed81845b71381cbece0743387f28bfb278) Tweak spacing (Maxime Rainville) - - 2023-02-08 [1d6c051c](https://github.com/silverstripe/developer-docs/commit/1d6c051c59dd81223bb1ec9c56fc5f0739e82598) Replace references to "official support" with "commercial support" (Maxime Rainville) - - 2023-02-08 [2e2518fc](https://github.com/silverstripe/developer-docs/commit/2e2518fcc03e4fc441c4adf3875e8f59edc03759) Add a bigger explanation about composer/installer (Maxime Rainville) - - 2023-02-08 [2f5f3e49](https://github.com/silverstripe/developer-docs/commit/2f5f3e490a9b3c2b6124df961b80c6cc50413da3) Clarify expectation for testing of community supported module (Maxime Rainville) - - 2023-02-08 [79570c2a](https://github.com/silverstripe/developer-docs/commit/79570c2ab9665e69e8bea0280317c849e07ba8a6) Better last step for converting a module (Maxime Rainville) - - 2023-02-08 [1fa3b6b0](https://github.com/silverstripe/developer-docs/commit/1fa3b6b0801f8fed04b558d5aa3240cbca94e330) Remove failded builds that are now green. (Maxime Rainville) - - 2023-02-08 [283fb693](https://github.com/silverstripe/developer-docs/commit/283fb693ed64fa192b23d60d7b1e9984843e0b01) Link to contribution guideline. (Maxime Rainville) - - 2023-02-08 [e6f9da37](https://github.com/silverstripe/developer-docs/commit/e6f9da373e9a04752ec9ae5b73ae587462383830) Add missing backticks (Maxime Rainville) - - 2023-02-08 [428d5a41](https://github.com/silverstripe/developer-docs/commit/428d5a416bf045a99761bfaa3dc670f721a1a75a) Bring back line pointing the call for maintainers for some old TinyMCE plugin. (Maxime Rainville) - - 2023-02-08 [4ff1354a](https://github.com/silverstripe/developer-docs/commit/4ff1354abdd485292efe8648e82cdefbc9150341) Mark beta changelog as unreleased. (Maxime Rainville) - - 2023-02-07 [fa9fe88c](https://github.com/silverstripe/developer-docs/commit/fa9fe88ce44e92d10cd47457cc9d4f43459df0c4) Tweaks (Maxime Rainville) - - 2023-02-07 [6059447c](https://github.com/silverstripe/developer-docs/commit/6059447cc6b7da566959580976ed7b07ea70a70f) Clean up a bunch of class references (Maxime Rainville) - - 2023-02-07 [c4f1aa5a](https://github.com/silverstripe/developer-docs/commit/c4f1aa5af59243cfa0ec27f3e5bb0884899915b4) Apply feedback from peer review (Maxime Rainville) - - 2023-01-31 [84e48277](https://github.com/silverstripe/developer-docs/commit/84e48277008ba7a2224f15b69140cf263dab1a03) Apply suggestions from code review (Maxime Rainville) - - 2023-01-22 [c021f5b3](https://github.com/silverstripe/developer-docs/commit/c021f5b3d7451a659cbe3b72a6c9d6a0060b7ec9) Apply suggestions from code review (Maxime Rainville) - - 2022-12-02 [2ee68ffa](https://github.com/silverstripe/developer-docs/commit/2ee68ffae4a283e0a1d7841478fb9b70b7792cb6) 4.0 changelog example for DBComposite missing return (Christopher Darling) - - 2022-11-24 [22f5aec9](https://github.com/silverstripe/developer-docs/commit/22f5aec90d71a9828df0307db27bc24de676ab4d) Update code example to match PSR-12 standards. (Daniel) - - 2022-11-21 [b5c58741](https://github.com/silverstripe/developer-docs/commit/b5c58741d13496c5ce154d5f279d454770acfbce) Add deprecated methods in silverstripe-elemental (#113) (Sabina Talipova) - -- silverstripe/lumberjack (2.2.0 -> 3.0.0-beta1) - - 2021-12-08 [a7e6ea7](https://github.com/silverstripe/silverstripe-lumberjack/commit/a7e6ea7f94fc2ce53fee2f2959e3790da19e1e15) removed duplicate colon from lang files (Bumbus) - - 2018-06-15 [81ebf4e](https://github.com/silverstripe/silverstripe-lumberjack/commit/81ebf4ebb349329000f1992b73cadfef3a91e1b0) Add supported module badge to readme (Dylan Wagstaff) - -- symbiote/silverstripe-gridfieldextensions (3.5.0 -> 4.0.0-beta1) - - 2022-02-17 [2928504](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/2928504b3c69acc21c7065246b4150d9d1c19476) removed param (josephlewisnz) - - 2022-02-17 [8e77095](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/8e77095de01e53419da27b7c7ec292279b5cda7a) updated to create syntax (josephlewisnz) - - 2022-02-16 [07c97e4](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/07c97e45b2631e5ef7b6e2db5afbcb3115b2e7f5) Added the ability to autopublish items that are already live (josephlewisnz) - -- silverstripe/silverstripe-fluent (4.7.0 -> 7.0.0-beta1) - - 2023-01-18 [7dbd07b](https://github.com/silverstripe/silverstripe-fluent/commit/7dbd07b80af4d071cb3df17715e3ec511ea7e73c) Create a temporary fork of fluent (Maxime Rainville) - - 2022-04-28 [37b5e16](https://github.com/silverstripe/silverstripe-fluent/commit/37b5e16c2b294e822caeeab7bba5ced089ebaf44) Minor grammatical correction (Fred Condo) - - 2022-03-25 [bb46d9d](https://github.com/silverstripe/silverstripe-fluent/commit/bb46d9d2c50c31d8fc03b812129b0aa135ab033f) Lowering minimum PHP version to see if we can support it. (Mojmir Fendek) - - 2022-03-25 [bf37abb](https://github.com/silverstripe/silverstripe-fluent/commit/bf37abbb7fcde233ce9dec387ecec0a970b97e31) Fixes. (Mojmir Fendek) - - 2022-03-10 [10131cd](https://github.com/silverstripe/silverstripe-fluent/commit/10131cd6b04c09c58be2b117ef62fde1940a32d0) chore: update 5 alias to 5.2 (Damian Mooyman) - - 2022-02-28 [98db572](https://github.com/silverstripe/silverstripe-fluent/commit/98db5720a687b517c223dacdee033ddfa1b6ae7d) Update FluentAdminTrait.PHP (Rens Korswagen) - - 2021-11-04 [9ac7305](https://github.com/silverstripe/silverstripe-fluent/commit/9ac7305f6924b4da80217a255637f72252a5874b) allow PHP 8 (bumbus) - - 2021-10-18 [7acbe4e](https://github.com/silverstripe/silverstripe-fluent/commit/7acbe4eb043ebf71aeec53e9dcdd11d84b6d35c9) feat(locale admin): add hook to update fluent locales (Oliver) - - 2021-10-04 [5384deb](https://github.com/silverstripe/silverstripe-fluent/commit/5384debf24226ceff4af4acc3a50a098bb65ac91) Italian translation (Giancarlo Di Massa) - - 2021-07-12 [e120dce](https://github.com/silverstripe/silverstripe-fluent/commit/e120dcea17d6527171041eb37810381697ed362b) feat(site tree extension): add option to disable locale prepend to link (norden-oliver) - - 2021-06-30 [d68e490](https://github.com/silverstripe/silverstripe-fluent/commit/d68e490abf4ea07e5a9998e54f4e20a1db10f411) Update src/Extension/FluentExtension.PHP (Damian Mooyman) - - 2021-06-27 [37aec66](https://github.com/silverstripe/silverstripe-fluent/commit/37aec669fcf459b3bf1af8cc0cd7f0864076b595) Consolidate some redundant logic in code (Damian Mooyman) - - 2021-06-18 [4d386be](https://github.com/silverstripe/silverstripe-fluent/commit/4d386be31f61d849e8aecfef3028e0fcecee7d46) PR fixes. (Mojmir Fendek) - - 2021-06-16 [0cb3b6c](https://github.com/silverstripe/silverstripe-fluent/commit/0cb3b6ca6dffc256a4f6e3e4646fd2d6ef509e5a) PR fixes. (Mojmir Fendek) - - 2021-05-23 [cd9279d](https://github.com/silverstripe/silverstripe-fluent/commit/cd9279db1a0b85ed52a29d73b2f2e11e54600053) Unit tests for locale switching (Damian Mooyman) - - 2021-05-23 [31528e2](https://github.com/silverstripe/silverstripe-fluent/commit/31528e2e9c06629b761371be127fcbedee2b26e4) Remove redundant phpdoc (Damian Mooyman) - - 2021-05-23 [810bcef](https://github.com/silverstripe/silverstripe-fluent/commit/810bcefb9e571ccebb4c74f30835ed1017b7d0b9) Implement unit tests (Damian Mooyman) - - 2021-05-23 [f0043fd](https://github.com/silverstripe/silverstripe-fluent/commit/f0043fd62e6a0180aac156ea535830ee14580d1c) Adjust setters / getters (Damian Mooyman) - - 2021-05-21 [a281899](https://github.com/silverstripe/silverstripe-fluent/commit/a28189977ddc862da2baa70b7d5bd1bc9b4652ec) FEATURE: Add timezone field to CMS to allow dates to be shown in local timezone (Damian Mooyman) - - 2021-05-20 [e9720c2](https://github.com/silverstripe/silverstripe-fluent/commit/e9720c250292be959f5a59aa8fd983c505917292) PR fixes. (Mojmir Fendek) - - 2021-04-23 [67b472a](https://github.com/silverstripe/silverstripe-fluent/commit/67b472ab78424a1dd880c55e19d08a1bfc267b99) Revert default to prevent to same as 5.0 to prevent semver breakage (Damian Mooyman) - - 2021-04-20 [1e5f1e0](https://github.com/silverstripe/silverstripe-fluent/commit/1e5f1e0decdb64eab264e34acb3ba39ea446cf4d) Add missing CRUD permissions for Locale dataobject (Damian Mooyman) - - 2021-04-16 [8a6b778](https://github.com/silverstripe/silverstripe-fluent/commit/8a6b7781eb505b960be9a5a50234992719f3241a) Bugfix for version history viewer (Vivienne Tubbs) - - 2021-04-08 [bb7ec0c](https://github.com/silverstripe/silverstripe-fluent/commit/bb7ec0c2fefa81e1f850e0cecf3ee9dcc2af1ee4) Remove outdated link (Damian Mooyman) - - 2021-03-22 [8d4a32d](https://github.com/silverstripe/silverstripe-fluent/commit/8d4a32d05b082a0ad5df7dd34373cb4b3412bc6e) Escape query string (Vivienne Tubbs) - - 2021-03-16 [3ea287a](https://github.com/silverstripe/silverstripe-fluent/commit/3ea287afb7c1394a9db84894baf9c45744a00a1c) Import namespace for Convert (Vivienne Tubbs) - - 2021-03-16 [8b552db](https://github.com/silverstripe/silverstripe-fluent/commit/8b552dbe26ee141eba2c735a11e8e938d1457880) Add PR changes (Vivienne Tubbs) - - 2021-02-26 [ca2759d](https://github.com/silverstripe/silverstripe-fluent/commit/ca2759de0d8d5516dc71c99674b4b9c83f9c2bf5) Pair programming fixes. (Mojmir Fendek) - - 2021-01-10 [a656714](https://github.com/silverstripe/silverstripe-fluent/commit/a656714ef0cbe7ad760a9b2b665585e00aadae92) Localised versioned history (#639) (Mojmir Fendek) - - 2020-10-06 [97d83d6](https://github.com/silverstripe/silverstripe-fluent/commit/97d83d6a25af5d92e95d56805d032cb8508a7a95) Added extension point to FluentDirectorExtension (innomedia) - - 2020-10-01 [8a5300e](https://github.com/silverstripe/silverstripe-fluent/commit/8a5300e8713cfdc841cea72064215f2c8c10e126) Translation to Slovenian (sl.yml) (Tomasz Pirc) - - 2020-09-10 [5145156](https://github.com/silverstripe/silverstripe-fluent/commit/5145156728d7481557871c6a30eb578455a84674) Update branch aliases (Damian Mooyman) - - 2020-08-26 [b7e40f7](https://github.com/silverstripe/silverstripe-fluent/commit/b7e40f750cc563447a9f08331d876b1dff6c3b61) Wrap middleware state mutations inside state helpers (Damian Mooyman) - - 2020-07-22 [cddb95c](https://github.com/silverstripe/silverstripe-fluent/commit/cddb95c9d54e60451fa70c5851dea87916efd4a7) Site Tree status flags localised. (Mojmir Fendek) - - 2020-07-20 [0b57ecf](https://github.com/silverstripe/silverstripe-fluent/commit/0b57ecf17f6672b1ccaca5626ca68586703dcdee) Add BC for old config with deprecation notice (cpenny) - - 2020-07-20 [93bf32f](https://github.com/silverstripe/silverstripe-fluent/commit/93bf32f5fe230bd17778a1e541afcc5a2b400c59) Encoding configuration documentation. (Mojmir Fendek) - - 2020-07-17 [af11a3b](https://github.com/silverstripe/silverstripe-fluent/commit/af11a3b39ce9f5f2e1608ea6c2f8a33bc9558545) Source locale lookup correction. (Mojmir Fendek) - - 2020-07-16 [31029f9](https://github.com/silverstripe/silverstripe-fluent/commit/31029f9371aee6f9f6437be04319ae3d61ce3d46) Rename CMS publish required config (cpenny) - - 2020-07-16 [0243e71](https://github.com/silverstripe/silverstripe-fluent/commit/0243e713f26a880fbbce1b08eb4d27af3bbeb420) Localised copy config changed to flat list, extension points improvements. (Mojmir Fendek) - - 2020-07-14 [2fb7945](https://github.com/silverstripe/silverstripe-fluent/commit/2fb79450246216c0237cdef362476469fc1b9927) Locale detection improvements. (Mojmir Fendek) - - 2020-07-13 [bb8838a](https://github.com/silverstripe/silverstripe-fluent/commit/bb8838a0a107017a0c3fd9f7c8eb9617ec3a9b14) Global state for localised copy feature. (Mojmir Fendek) - - 2020-07-13 [6981075](https://github.com/silverstripe/silverstripe-fluent/commit/69810754dba393afa4e093643cde45574b7599f0) Global localised copy state removed. (Mojmir Fendek) - - 2020-07-12 [35f64cd](https://github.com/silverstripe/silverstripe-fluent/commit/35f64cd5410c343159ae594a3c3a937588914e77) Localised copy trait changed into an extension approach. (Mojmir Fendek) - - 2020-07-09 [cfc1925](https://github.com/silverstripe/silverstripe-fluent/commit/cfc1925437cc97d9cbd8458b1b0683712627c111) Source locale lookup correction. (Mojmir Fendek) - - 2020-07-07 [0a21272](https://github.com/silverstripe/silverstripe-fluent/commit/0a21272d160cc2bd9b8f9f62a84438967f464d49) Localised copy trait (Mojmir Fendek) - - 2020-07-06 [79c248b](https://github.com/silverstripe/silverstripe-fluent/commit/79c248babb08a1fe1da006daa96c84ded9b25ca4) PR fixes. (Mojmir Fendek) - - 2020-07-02 [ef88e32](https://github.com/silverstripe/silverstripe-fluent/commit/ef88e3274df97bc3ba320fbcd6c4252c46bbc5f2) Added a tooltip for Unlocalise action. (Mojmir Fendek) - - 2020-06-29 [9432cf9](https://github.com/silverstripe/silverstripe-fluent/commit/9432cf985ac8d3f0f9e9d9c896163e5a45d5a186) Non-versioned UI improvements (Mojmir Fendek) - - 2020-06-26 [f5bce7e](https://github.com/silverstripe/silverstripe-fluent/commit/f5bce7ec57cab19f8d4d8c5226fada0e5c8aa5f0) Publish state related fixes (Mojmir Fendek) - - 2020-06-25 [21ff3ff](https://github.com/silverstripe/silverstripe-fluent/commit/21ff3ff91b406dfe23c0809a277dc1f9ed88412c) PR fixes (Mojmir Fendek) - - 2020-06-25 [5a162c8](https://github.com/silverstripe/silverstripe-fluent/commit/5a162c8b7090fc073e22eb9aecedf595ea17d915) Badges UI improvements (Mojmir Fendek) - - 2020-06-18 [5092db1](https://github.com/silverstripe/silverstripe-fluent/commit/5092db1245f8ada32debd6debdc69a5d34b60bc3) Copy locale action extension points. (Mojmir Fendek) - - 2020-06-18 [d3abe50](https://github.com/silverstripe/silverstripe-fluent/commit/d3abe508e5094894fe2507933705949c166335af) Redundant copy locale actions prevented. (Mojmir Fendek) - - 2020-05-15 [6182ea0](https://github.com/silverstripe/silverstripe-fluent/commit/6182ea00a2b03e7e66300b66b696ccd4bc108af3) Ensure the domain detection only returns the locale if it is unambiguous (Danae Miller-Clendon) - - 2020-05-12 [7c8e8c8](https://github.com/silverstripe/silverstripe-fluent/commit/7c8e8c8e2aa345ad60e85a4243af60090f201dfd) Don't treat /graphql as admin (Damian Mooyman) - - 2020-05-12 [2a79a28](https://github.com/silverstripe/silverstripe-fluent/commit/2a79a2820a307518c65d781879c26f9eab2563d8) Update locale detection to include cloudflare logic (Damian Mooyman) - - 2020-05-12 [f68d9db](https://github.com/silverstripe/silverstripe-fluent/commit/f68d9db397b0d3ee3b9b1c245e96a191ef92c73a) more translations DE (Bumbus) - - 2020-05-12 [aff053c](https://github.com/silverstripe/silverstripe-fluent/commit/aff053cf78fd52c17d9d7d31fc293b07c5b39ac1) added missing translation keys; added de translation (Bumbus) - - 2020-05-11 [3d71d8d](https://github.com/silverstripe/silverstripe-fluent/commit/3d71d8daf3dc39c206dc0cab1608fc331f674322) Bump documented versions (Damian Mooyman) - - 2020-05-11 [33f5175](https://github.com/silverstripe/silverstripe-fluent/commit/33f5175be0d5ac5552b460af349702609eb15311) Run fluent isolated extension on requireDefaultRecords to prevent needing to dev/build twice (Damian Mooyman) - - 2020-03-24 [98806ad](https://github.com/silverstripe/silverstripe-fluent/commit/98806ad430917426171ae8d627c5c0cd3943a928) Add migration helper for isolated extension (Damian Mooyman) - - 2020-03-24 [1ffab0d](https://github.com/silverstripe/silverstripe-fluent/commit/1ffab0dd9b83625439aef6a2a20af6618810cd0d) Add extra hide / show action if filtering (Damian Mooyman) - - 2020-03-23 [6da52eb](https://github.com/silverstripe/silverstripe-fluent/commit/6da52ebf5108a7e33df58da6ec03fa578fcec829) Refactor updateFluentLocalisedFields so it can be called from third party extensions (Damian Mooyman) - - 2020-03-19 [90fc945](https://github.com/silverstripe/silverstripe-fluent/commit/90fc94559850ac9638ae86a781ba7050af7258d0) Adjust description on UseDefaultCode field (Damian Mooyman) - - 2020-03-19 [59148bb](https://github.com/silverstripe/silverstripe-fluent/commit/59148bb76311b7e6a8e3752f2a1f271deaf1749f) Update src/Model/Locale.PHP (Damian Mooyman) - - 2020-02-27 [74a68f7](https://github.com/silverstripe/silverstripe-fluent/commit/74a68f7a2352d1ee8e452e0f5f8d14ba03a0d4e5) Enable FluentBadgeTrait for filtered-only records (Damian Mooyman) - - 2020-02-14 [f55a0ea](https://github.com/silverstripe/silverstripe-fluent/commit/f55a0ead4ebf78aee824e9312bf89e647e1556d3) Support x-default locale code for SEO (Damian Mooyman) - - 2020-02-10 [b6c2a8c](https://github.com/silverstripe/silverstripe-fluent/commit/b6c2a8c5ed0c7540ad69e88e525ce46d761e4ebc) Add tests for delete (Damian Mooyman) - - 2020-02-10 [7e388fe](https://github.com/silverstripe/silverstripe-fluent/commit/7e388fe99c8989ce3380681224c330b5577c03ce) Add unit tests for admin actions. Bugfixing some versioned localisation issues. (Damian Mooyman) - - 2020-02-09 [2a6a8a6](https://github.com/silverstripe/silverstripe-fluent/commit/2a6a8a6b90056d23bb3755bac2ab661f5b0ed407) Don't show disallowed locales in CMS admin section (Damian Mooyman) - - 2020-02-07 [afa0048](https://github.com/silverstripe/silverstripe-fluent/commit/afa0048cfa01a77aa8c27566d3c77be3182b8b39) Remove redundant provider (Damian Mooyman) - - 2020-02-07 [318e7a9](https://github.com/silverstripe/silverstripe-fluent/commit/318e7a9b8f8c9019033d8977e21f96701ef45185) Test and bugfix locale-specific CMS access (Damian Mooyman) - - 2020-02-07 [f437f8b](https://github.com/silverstripe/silverstripe-fluent/commit/f437f8b1862750647cd54bd10c49e67aa21bf6d8) Reenable copy from / copy to actions (Damian Mooyman) - - 2020-02-07 [75cbb9c](https://github.com/silverstripe/silverstripe-fluent/commit/75cbb9c3e43c6084508c4ab5155699e8559d6d3a) Add permission check to global actions (Damian Mooyman) - - 2020-02-05 [ecaf135](https://github.com/silverstripe/silverstripe-fluent/commit/ecaf135a0e942f576fe961a0ab324d284ad99b3b) Simplify (Damian Mooyman) - - 2020-02-05 [2217a6a](https://github.com/silverstripe/silverstripe-fluent/commit/2217a6af8f37990afc059a471292f694153c0264) Switch to using real permissions for each locale (Damian Mooyman) - - 2020-02-03 [074f7ca](https://github.com/silverstripe/silverstripe-fluent/commit/074f7ca637d59925563cf780e5f248bc45635709) Add permission model base extensions (Damian Mooyman) - - 2020-01-12 [ea8619a](https://github.com/silverstripe/silverstripe-fluent/commit/ea8619a5d24280b14fbf47716bd6a34a0860500f) Don't show unpublished / hidden pages in meta tag alternate links (Damian Mooyman) - - 2019-12-12 [27041ac](https://github.com/silverstripe/silverstripe-fluent/commit/27041ac1f46f4c5029b1d331c3480d63abbc37b6) MINOR: update of example in scenarios (Peter Thaleikis) - - 2019-12-02 [c8818bc](https://github.com/silverstripe/silverstripe-fluent/commit/c8818bce77ca9860c2c8ae19dcd3e6b50efeeb4d) Break out updateCMSFields into a callable helper method (Damian Mooyman) - - 2019-11-20 [5404ed7](https://github.com/silverstripe/silverstripe-fluent/commit/5404ed74e7f5d260b573ad18335cdd5c18999902) Build dist files (Damian Mooyman) - - 2019-11-20 [3eed100](https://github.com/silverstripe/silverstripe-fluent/commit/3eed1008b5acc16a4d47486dd3e334173fab7e8b) Update styles (Damian Mooyman) - - 2019-11-19 [967715b](https://github.com/silverstripe/silverstripe-fluent/commit/967715bc08f27fc8aa5159cb157f472a78962383) Add extra useful gridfield components for localised records (Damian Mooyman) - - 2019-11-19 [773c1d5](https://github.com/silverstripe/silverstripe-fluent/commit/773c1d59896f1603a4155d9ad9a75ceb716216ca) Prevent FluentDirectorExtension erroring when CMS module is not installed (Damian Mooyman) - - 2019-11-19 [facdac3](https://github.com/silverstripe/silverstripe-fluent/commit/facdac34a1b7017fc5388b3db0958b5b3b98c5d0) Feature: CMS module is optional (Damian Mooyman) - - 2019-11-14 [34ab9c2](https://github.com/silverstripe/silverstripe-fluent/commit/34ab9c20492c59f1a46cc2f4217f65cf3d8e1893) Drop PHP 7.0 test (Damian Mooyman) - - 2019-11-14 [665e1aa](https://github.com/silverstripe/silverstripe-fluent/commit/665e1aa27c24f0b7a49574781876dc98ab6371f7) Add deleteFluent for non-versioned records (Damian Mooyman) - - 2019-11-14 [b9dcbe1](https://github.com/silverstripe/silverstripe-fluent/commit/b9dcbe13f8c9107d997a223fbb45599c8f7ccdd7) Move menu before RightGroup so that in the GridField Detail Form view, the menu doesn’t get cropped. (Danae Miller-Clendon) - - 2019-11-13 [88d5d57](https://github.com/silverstripe/silverstripe-fluent/commit/88d5d57558939c0341fe0cfcfc313ce3e5e3c6f4) Wrap writeToStage() in an extension check in copyFluent (should not depend on Versioned) (Danae Miller-Clendon) - - 2019-11-13 [ec1f802](https://github.com/silverstripe/silverstripe-fluent/commit/ec1f802737e8426d05ef590f6b7a9466df049049) Drop PHP 5 support, fix linting issues (Damian Mooyman) - - 2019-11-13 [5dfc1a8](https://github.com/silverstripe/silverstripe-fluent/commit/5dfc1a80361ccb30253a3e15ea444b1bbfbb669d) Add colours, fix missing "save" in save and publish (Damian Mooyman) - - 2019-11-12 [9f6c755](https://github.com/silverstripe/silverstripe-fluent/commit/9f6c7550f4b6365c083ea093f0a7429b065698fc) Work on actions (Damian Mooyman) - - 2019-11-12 [ae6469c](https://github.com/silverstripe/silverstripe-fluent/commit/ae6469c6654c9e94611d4014b9d173bd477085c3) Wrap actions in Versioned extension check (Danae Miller-Clendon) - - 2019-11-12 [c19a44e](https://github.com/silverstripe/silverstripe-fluent/commit/c19a44e08e45244b044ac1967029f8fa7aebfd76) Clean up issues with unpublish action (Damian Mooyman) - - 2019-11-12 [ac421b7](https://github.com/silverstripe/silverstripe-fluent/commit/ac421b7dc4bd53758da5efbf86298ea15c9c945c) Following on from Damian’s suggestions. TODO: Test and implement for GridField (Danae Miller-Clendon) - - 2019-11-12 [03fc69d](https://github.com/silverstripe/silverstripe-fluent/commit/03fc69d821f3ffac20aa8148148e71e7cb7b76a5) Handle the actions from Localisation menus: (Danae Miller-Clendon) - - 2019-11-11 [2761cd8](https://github.com/silverstripe/silverstripe-fluent/commit/2761cd8890ad3af3a3343acc4d572730bbe0059e) Adjust scope of 5.0.0 beta release (Damian Mooyman) - - 2019-11-06 [1bcb462](https://github.com/silverstripe/silverstripe-fluent/commit/1bcb462fa63d61ec923fa2d9d6c8eabe575931fb) Initial commit of gridfield actions (Damian Mooyman) - - 2019-11-04 [b2f4bce](https://github.com/silverstripe/silverstripe-fluent/commit/b2f4bce62f33f8fa901b0ddb4b5c9d36ee5597f5) Remove hasMethod / hasExtension bindings (Damian Mooyman) - - 2019-11-04 [63a2c04](https://github.com/silverstripe/silverstripe-fluent/commit/63a2c047de7bec37bb7db9b3ebfd4b4285363cbc) Clean up and refactor extension classes (Damian Mooyman) - - 2019-11-04 [1e2841d](https://github.com/silverstripe/silverstripe-fluent/commit/1e2841d1f8badfe7712de44a28248372634da848) Clean up menu (Damian Mooyman) - - 2019-11-03 [1d48882](https://github.com/silverstripe/silverstripe-fluent/commit/1d488822326280a13642bd270981b7f6d5e9e34c) Alias master as next major version (Damian Mooyman) - - 2019-10-30 [fd8c5b5](https://github.com/silverstripe/silverstripe-fluent/commit/fd8c5b580ff2637b19e849c6588e4ae0dc845290) Add descriptions to menu layout (Damian Mooyman) - - 2019-10-29 [b62b671](https://github.com/silverstripe/silverstripe-fluent/commit/b62b6710e6ef90458a1faafca8a193134fb5461f) WIP Initial commit of new localisation menu (Damian Mooyman) - - diff --git a/en/08_Changelogs/beta/5.1.0-beta1.md b/en/08_Changelogs/beta/5.1.0-beta1.md deleted file mode 100644 index da5590233..000000000 --- a/en/08_Changelogs/beta/5.1.0-beta1.md +++ /dev/null @@ -1,945 +0,0 @@ -# 5.1.0-beta1 - -## Overview - -A full list of module versions included in CMS Recipe 5.1.0-beta1 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -- [Security considerations](#security-considerations) -- [Features and enhancements](#features-and-enhancements) - - [Eager loading](#eager-loading) - - [ArrayList improvements](#arraylist-improvements) - - [Improvement to page search performance with Elemental](#cms-search-performance) - - [New `InheritedPermissions` option - only these members](#only-these-members) - - [Optimised queries when filtering against IDs](#filter-by-ids) - - [Session manager anonymize stored IP addresses](#session-manager-ip) - - [Static publish queue related page regeneration](#staticpublishqueue-regeneration) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Dependency changes](#dependency-changes) -- [Bug fixes](#bug-fixes) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.0.0 | -| bringyourownideas/silverstripe-maintenance | 3.0.1 | -| cwp/agency-extensions | 3.1.0-beta1 | -| cwp/starter-theme | 4.0.0 | -| cwp/watea-theme | 4.0.0 | -| dnadesign/silverstripe-elemental | 5.1.0-beta1 | -| dnadesign/silverstripe-elemental-userforms | 4.1.0-beta1 | -| silverstripe-themes/simple | 3.3.0 | -| silverstripe/admin | 2.1.0-beta1 | -| silverstripe/asset-admin | 2.1.0-beta1 | -| silverstripe/assets | 2.1.0-beta1 | -| silverstripe/auditor | 3.0.0 | -| silverstripe/blog | 4.1.0-beta1 | -| silverstripe/campaign-admin | 2.1.0-beta1 | -| silverstripe/cms | 5.1.0-beta1 | -| silverstripe/config | 2.1.0-beta1 | -| silverstripe/contentreview | 5.1.0-beta1 | -| silverstripe/crontask | 3.0.2 | -| silverstripe/documentconverter | 3.1.0-beta1 | -| silverstripe/dynamodb | 5.0.0 | -| silverstripe/elemental-bannerblock | 3.1.0-beta1 | -| silverstripe/elemental-fileblock | 3.1.0-beta1 | -| silverstripe/environmentcheck | 3.0.1 | -| silverstripe/errorpage | 2.1.0-beta1 | -| silverstripe/externallinks | 3.1.0-beta1 | -| silverstripe/framework | 5.1.0-beta1 | -| silverstripe/graphql | 5.1.0-beta1 | -| silverstripe/gridfieldqueuedexport | 3.1.0-beta1 | -| silverstripe/hybridsessions | 3.0.2 | -| silverstripe/iframe | 3.1.0-beta1 | -| silverstripe/installer | 5.1.0-beta1 | -| silverstripe/ldap | 2.1.0-beta1 | -| silverstripe/login-forms | 5.1.0-beta1 | -| silverstripe/lumberjack | 3.0.2 | -| silverstripe/mfa | 5.1.0-beta1 | -| silverstripe/mimevalidator | 3.0.0 | -| silverstripe/realme | 5.2.0-beta1 | -| silverstripe/recipe-authoring-tools | 2.1.0-beta1 | -| silverstripe/recipe-blog | 2.1.0-beta1 | -| silverstripe/recipe-cms | 5.1.0-beta1 | -| silverstripe/recipe-collaboration | 2.1.0-beta1 | -| silverstripe/recipe-content-blocks | 3.1.0-beta1 | -| silverstripe/recipe-core | 5.1.0-beta1 | -| silverstripe/recipe-form-building | 2.1.0-beta1 | -| silverstripe/recipe-kitchen-sink | 5.1.0-beta1 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.1.0-beta1 | -| silverstripe/recipe-services | 2.1.0-beta1 | -| silverstripe/registry | 3.1.0-beta1 | -| silverstripe/reports | 5.1.0-beta1 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.0.0 | -| silverstripe/segment-field | 3.1.0-beta1 | -| silverstripe/session-manager | 2.1.0-beta1 | -| silverstripe/sharedraftcontent | 3.1.0-beta1 | -| silverstripe/siteconfig | 5.1.0-beta1 | -| silverstripe/sitewidecontent-report | 4.1.0-beta1 | -| silverstripe/spamprotection | 4.1.0-beta1 | -| silverstripe/staticpublishqueue | 6.1.0-beta1 | -| silverstripe/subsites | 3.1.0-beta1 | -| silverstripe/tagfield | 3.1.0-beta1 | -| silverstripe/taxonomy | 3.1.0-beta1 | -| silverstripe/textextraction | 4.0.0 | -| silverstripe/totp-authenticator | 5.1.0-beta1 | -| silverstripe/userforms | 6.1.0-beta1 | -| silverstripe/vendor-plugin | 2.0.1 | -| silverstripe/versioned | 2.1.0-beta1 | -| silverstripe/versioned-admin | 2.1.0-beta1 | -| silverstripe/versionfeed | 3.1.0-beta1 | -| silverstripe/webauthn-authenticator | 5.1.0-beta1 | -| symbiote/silverstripe-advancedworkflow | 6.1.0-beta1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.3 | -| symbiote/silverstripe-multivaluefield | 6.0.1 | -| symbiote/silverstripe-queuedjobs | 5.0.2 | -| tractorcow/silverstripe-fluent | 7.0.0 | - -
- -## Security considerations {#security-considerations} - -This release includes a security fix. Review the vulnerability disclosure for a more detailed description of the security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerability below based on the CVSS score. Note that the impact of the vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -### Released on july 31 2023 - -A patch for the following security vulnerability was released on July 31 2023. You can learn more about this in the [blog post about this patch](https://www.silverstripe.org/blog/silverstripe-cms-security-patches/). Note that there was also a patch for a vulnerability that only affected Silverstripe CMS 4 released on the same day, which you can read about in that blog post. - -- [CVE-2023-32302 - Members with no password can be created and bypass custom login forms](https://www.silverstripe.org/download/security-releases/cve-2023-32302) Severity: None - When a new `Member` record was created in the CMS it was possible to set a blank password. If an attacker knows the email address of the user with the blank password then they can attempt to log in using an empty password. The default member authenticator, login form and basic auth all require a non-empty password, however if a custom authentication method is used it may allow a successful login with the empty password. See the security advisory for more information including how to identify affected `Member` records. - -## Features and enhancements - -### Eager loading - -When looping over nested relationships the ORM is prone to the N + 1 query problem where excessive database calls are made. Eager loading has been introduced via the new [`DataList::eagerLoad()`](api:SilverStripe\ORM\DataList::eagerLoad()) method which alleviates the N + 1 problem by querying the nested relationship tables before they are needed using a single large `WHERE ID in ($ids)` SQL query instead of many `WHERE RelationID = $id` queries. - -Imagine the following example where there is a `Team` model with 20 records, with a `has_many` relation "Players" - -```php -// Regular ORM usage without eager loading -// This would result in 21 SQL SELECT queries, 1 for Teams and 20 for Players -$teams = Team::get(); - -// Using the `eagerLoad()` method to eager load data from nested models (up to 3 relations deep) -// This will result in only 2 SQL SELECT queries, 1 for Teams and 1 for Players -$teams = Team::get()->eagerLoad('Players'); - -foreach ($teams as $team) { - foreach ($team->Players() as $player) { - echo $player->FirstName; - } -} -``` - -Read more about [eager loading](/developer_guides/model/relations/#eager-loading) including its limitations in the developer docs. - -### ArrayList improvements - -- You can now use [`SearchFilter` syntax](/developer_guides/model/searchfilters/) when calling any of the filter or exclude methods on [`ArrayList`](api:SilverStripe\ORM\ArrayList). -- For backwards compatibility, `ArrayList` filters are explicitly case sensitive by default. This differs from `DataList` which uses the database configuration to determine its default case sensitivity. See [search filter modifiers](/developer_guides/model/searchfilters/#modifiers) for more details including how to configure this for your project. -- [`ArrayList`](api:SilverStripe\ORM\ArrayList) now has an [`excludeAny()`](api:SilverStripe\ORM\ArrayList::excludeAny()) method, which mirrors the [`DataList::excludeAny()`](api:SilverStripe\ORM\DataList::excludeAny()) method. - -### Improvement to page search performance with elemental {#cms-search-performance} - -- The CMS search has been optimised to reduce the number of database queries made when searching for pages with elemental content blocks. This has resulted in a small performance improvement. In our test environment, with 1,000 pages each with 5 content blocks we observed a 9% performance improvement. Performance will vary with your environment. -- A new opt-in behaviour is available that makes a very large difference to performance when using elemental content blocks. In testing, this behaviour more than halved the response time of the sitetree search request. The opt-in feature disables the default behaviour of rendering all content blocks for CMS search. Instead, it simply extracts the database contents of the elements from its text and html fields. There is a downside to consider which is that any related content not directly on the element will not be matched against the search query. Note this does not use the `$searchable_fields` config. To opt-in to this behaviour, use the following config: - -```yml -DNADesign\Elemental\Controllers\ElementSiteTreeFilterSearch: - render_elements: false -``` - -If `render_elements` is set to `false` then individual fields on elements can be excluded from search by adding them to a config array: - -```yml -App\MyElement: - fields_excluded_from_cms_search: - - MyFieldToExclude - - AnotherFieldToExclude -``` - -### New `InheritedPermissions` option - only these members {#only-these-members} - -Applying the [`InheritedPermissionsExtension`](api:SilverStripe\Security\InheritedPermissionsExtension) to a `DataObject` class gives you the ability to declare that only users in certain groups can view or edit those records. This extension is applied by default to the [`File`](api:SilverStripe\Assets\File) and [`SiteTree`](SilverStripe\CMS\Model\SiteTree) classes. - -A new permission has been added to [`InheritedPermissions`](api:SilverStripe\Security\InheritedPermissions), which powers that extension. The new permission (`InheritedPermissions::ONLY_THESE_MEMBERS`) allows you to define which specific `Member` records should have access to your records, regardless of which groups those members belong to. - -In the CMS, this new permission is available for files and pages by setting "Who can view/edit this page/file" to "Only these users". - -### Optimised queries when filtering against iDs {#filter-by-ids} - -`DataList` queries filtering against a list of IDs have been optimised when all of the following criteria are met: - -- the column being filtered is a [`DBPrimarykey`](api:SilverStripe\ORM\FieldType\DBPrimaryKey) or a [`DBForiegnKey`](api:SilverStripe\ORM\FieldType\DBForiegnKey) -- the values being filtered are all either integers or valid integer strings -- using placeholders for integer ids has been configured off, which is the default config value. - -If you want to disable this optimisation you can do so with this configuration: - -```yml -SilverStripe\ORM\DataList: - use_placeholders_for_integer_ids: true -``` - -### Session manager anonymize stored IP addresses {#session-manager-ip} - -A configuration option has been added to [Session Manager](https://github.com/silverstripe/silverstripe-session-manager/) to anonymize stored IP addresses for enhanced privacy and compliance. - -If you want to anonymize stored IP addresses then use the following configuration: - -```yml -SilverStripe\SessionManager\Models\LoginSession: - anonymize_ip: true -``` - -### Static publish queue related page regeneration {#staticpublishqueue-regeneration} - -New configuration options have been added to [Static Publish Queue](https://github.com/silverstripe/silverstripe-staticpublishqueue) to force regeneration of related pages after publishing or unpublishing a related page. You can enable this with the following configuration: - -```yml -SilverStripe\CMS\Model\SiteTree: - regenerate_children: recursive - regenerate_parents: recursive -``` - -Available options are: - -- `none`: Do not regenerate any parent or child hierarchy -- `direct`: Regenerate only one level above or below (direct parent or children, but not grandparent or grandchildren) -- `recursive`: Regenerate the entire parent or child hierarchy - -Read more about new [configuration options](https://github.com/silverstripe/silverstripe-staticpublishqueue/blob/6/docs/en/basic_configuration.md#control-when-childparent-pages-are-regenerated-in-cache-actions). - -### Other new features - -- You can now exclude specific `DataObject` models from the check and repair step of `dev/build` - see [ORM Performance](/developer_guides/performance/orm/#skip-check-and-repair) for more information. -- You can change what `SearchFilter` the `TreeDropdownField` uses with YAML configuration - see [ORM Performance](/developer_guides/performance/orm/#treedropdownfield) for more information. -- The [`i18nTextCollector`](api:SilverStripe\i18n\TextCollection\i18nTextCollector) now collects strings for ORM properties (e.g. `$db` fields) in `DataObject` and `Extension` classes, and from themes. See [i18n - collecting text](/developer_guides/i18n/#collecting-text) for more details. -- Extensions which modify permissions for [`Group`](api:SilverStripe\Security\Group) records which return `true` will be respected, the same as when modifying permissions for any other `DataObject` record. -- The [`ListboxField`](api:SilverStripe\Forms\ListboxField) now has a react component, and can be used in react-powered contexts such as within elemental blocks -- A new [`FieldsValidator`](api:SilverStripe\Forms\FieldsValidator) class has been added, which simply calls [`validate()`](api:SilverStripe\Forms\FormField::validate()) on all data fields in the form to ensure fields have valid values. Functionally equivalent to an empty [`RequiredFields`](api:SilverStripe\Forms\RequiredFields) validator. -- A configuration option has been added to [`GarbageCollectionService`](api:SilverStripe\SessionManager\Services\GarbageCollectionService) to limit the number of items it removes each time you run garbage collection on session data. See [garbage collection](/developer_guides/cookies_and_sessions/managing_sessions/#garbage-collection) for more details. -- In your GraphQL schemas, you can now define the pagination limit at a schema level. See [limiting pagination](/developer_guides/graphql/working_with_dataobjects/query_plugins/#limiting-pagination) in the GraphQL documentation for more details. - -## API changes - -### `silverstripe/framework` - -- [`BuildTask`](api:SilverStripe\Dev\BuildTask) now has boolean `is_enabled` configuration option which has precedence over the existing `BuildTask::enabled` protected class property. The `BuildTask::enabled` property has been marked as deprecated and will be removed in CMS 6 if favour of using `is_enabled` instead. -- Passing an argument for `$limit` that is not `array|string|null` in [`SilverStripe\ORM\Search\SearchContext::getQuery()`](api:SilverStripe\ORM\Search\SearchContext::getQuery()) will throw a deprecation warning. In CMS 6 the parameter type will be changed from dynamic to `array|string|null`. -- You can now declare the default case sensitivity used by `SearchFilter` implementations, which power the `DataList` filtering functionality. See [search filter modifiers](/developer_guides/model/searchfilters/#modifiers) for more details. - -### `silverstripe/elemental-fileblock` - -- The [`FileBlock::getSummaryThumbnail()`](api:SilverStripe\ElementalFileBlock\Block\FileBlock::getSummaryThumbnail()) method has been marked as deprecated and will be removed in CMS 6 without equivalent functionality to replace it, as it is no longer required for the elemental block's preview summary. - -## Dependency changes - -- The unsupported modules `silverstripe/widgets` and `silverstripe/content-widget` were removed from `silverstripe/recipe-blog`. They were accidentally included in the `2.0.0` release of `silverstripe/recipe-blog`. The `silverstripe/widgets` and `silverstripe/content-widget` modules are CMS-5-compatible though unsupported. If your project relies on `silverstripe/widgets` or `silverstripe/content-widget`, manually update your project's `composer.json` file to explicitly require these modules. - -## Bug fixes - -- [`DataList::filterAny()`](api:SilverStripe\ORM\DataList::filterAny()) queries on many-many relations that use an aggregate `HAVING` clause now correctly use an `OR` conjunction rather than an incorrect `AND` conjunction. -- At some point shortly before the release of Silverstripe CMS 4.0.0, SSL support for database connections was accidentally removed. This has now been reinstated - see [Using SSL in database connections](/developer_guides/security/secure_coding#using-ssl-in-database-connections) for more information. -- The `cascade_duplicates` property was added to the [`InheritedPermissionsExtension`](api:SilverStripe\Security\InheritedPermissionsExtension) class so that now when duplicating any object that has the `InheritedPermissionsExtension` applied, the `GroupID` values in the `ViewerGroups` and `EditGroups` mapping tables will also be duplicated so that new object retains the same viewer and editor groups as the original. -- Any fields added to a model's `$summary_fields` configuration which are *not* backed by database fields (such as method calls) will no longer be pulled through when `searchableFields()` calls back on it (i.e. because `$searchable_fields` configuration has not been explicitly declared). This means you do not need to explicitly declare `$searchable_fields` for models which should only use the summary fields to filter by. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - -## Change log - -### Security - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-05-12 [7b21b38ac](https://github.com/silverstripe/silverstripe-framework/commit/7b21b38ac4532d06565dfcefad50540ebd2b50f4) Require password field to be non-empty (Steve Boyd) - See [cve-2023-32302](https://www.silverstripe.org/download/security-releases/cve-2023-32302) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-beta1) - - 2023-05-15 [b9bdbbbf](https://github.com/silverstripe/developer-docs/commit/b9bdbbbf645a893d7686906abcdb3630b5b6344c) Require password field to be non-empty (Steve Boyd) - See [cve-2023-32302](https://www.silverstripe.org/download/security-releases/cve-2023-32302) - -### Features and enhancements {#changelog-enhancements} - -- silverstripe/installer (5.0.0 -> 5.1.0-beta1) - - 2023-08-18 [fc510dd](https://github.com/silverstripe/silverstripe-installer/commit/fc510dd3e8c7915ad8e6dc73f49a88f7752ab06b) Change favicon to reflect new logo (Maxime Rainville) - -- silverstripe/assets (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [53e8331](https://github.com/silverstripe/silverstripe-assets/commit/53e8331750008be7f9a9ec0caed05f62cdcbdaa1) Update translations (#570) (Guy Sartorelli) - - 2023-08-17 [a67cc24](https://github.com/silverstripe/silverstripe-assets/commit/a67cc24cc2f8448dd9120ef7bbd9d46a090d8b06) Update translations (#569) (Guy Sartorelli) - - 2023-06-15 [47fa6c6](https://github.com/silverstripe/silverstripe-assets/commit/47fa6c648163ad40f6ad585fde98fc132c37a2e9) add check for specific user inherited permission (Andrew Paxley) - - 2023-06-14 [f83706e](https://github.com/silverstripe/silverstripe-assets/commit/f83706eb1f864c74357f9b1a5405a8dab3a5054f) Update translations (Steve Boyd) - - 2023-05-30 [7c0cc54](https://github.com/silverstripe/silverstripe-assets/commit/7c0cc54028ac818479e4d07b028617edc8b9dc33) Update translations (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-08-29 [d01ae8029](https://github.com/silverstripe/silverstripe-framework/commit/d01ae8029e00aa3f836bbd22bfccb22676ef87d2) Update logo (#10922) (Maxime Rainville) - - 2023-08-29 [b4463d905](https://github.com/silverstripe/silverstripe-framework/commit/b4463d90509fc1602714f949fbf7589a8b1fbf72) Enable ArrayList and EagerLoadedList to use search filters (#10925) (Guy Sartorelli) - - 2023-08-21 [3e72f5e69](https://github.com/silverstripe/silverstripe-framework/commit/3e72f5e6946b00301f326cee2f6b63fece0e2081) Update translations (#10920) (Guy Sartorelli) - - 2023-08-17 [8745890d8](https://github.com/silverstripe/silverstripe-framework/commit/8745890d842b488d4ce999efcd297630c82dbce8) Update translations (#10918) (Guy Sartorelli) - - 2023-08-08 [358cbc9ee](https://github.com/silverstripe/silverstripe-framework/commit/358cbc9ee56ff70cd50342746082ff07c7c2bf0b) Do not use placeholders by default for foreignIDFilter() (Steve Boyd) - - 2023-08-07 [5a52484d8](https://github.com/silverstripe/silverstripe-framework/commit/5a52484d881e2fedeb344f1461c3208086afc9e2) Add FieldsValidator to ensure fields get validated (Guy Sartorelli) - - 2023-08-03 [ae49e134a](https://github.com/silverstripe/silverstripe-framework/commit/ae49e134a9ee7282c991b8ea3dc4ffd0f4d7f051) Use custom list for eagerloaded relations (#10869) (Guy Sartorelli) - - 2023-07-25 [672396880](https://github.com/silverstripe/silverstripe-framework/commit/672396880d1d7d9555e8b6aa787fcfded0750549) Do not use placeholders for int ID filters (Steve Boyd) - - 2023-07-21 [93acba053](https://github.com/silverstripe/silverstripe-framework/commit/93acba053552006f7001192fc25cd895500fdda2) Update translations (Steve Boyd) - - 2023-07-05 [85e503d01](https://github.com/silverstripe/silverstripe-framework/commit/85e503d0125d0f975a05f8be1b4806d935261a23) Refactor eagerloading fetch into separate methods (Guy Sartorelli) - - 2023-07-04 [6fa71bbf5](https://github.com/silverstripe/silverstripe-framework/commit/6fa71bbf513fc7cafbfceb16b3c6fbcd8ef5cb52) avoid multiple calls to records->count() In PermissionCheckboxSetField (#10839) (Thomas Portelange) - - 2023-06-28 [e1d10a0b4](https://github.com/silverstripe/silverstripe-framework/commit/e1d10a0b4ce55f8d62d931d9ace9f8d2179e1c9a) ListboxField react field schema (Andrew Paxley) - - 2023-06-27 [46d793048](https://github.com/silverstripe/silverstripe-framework/commit/46d7930489d6f27f5dc3157530c0e8938050d843) Cache DataObject::getSchema() (Steve Boyd) - - 2023-06-27 [ed0730370](https://github.com/silverstripe/silverstripe-framework/commit/ed07303703842032b01602d040c7fafd49435be2) Cache $item->ID for eager loading (Steve Boyd) - - 2023-06-14 [2ea66922c](https://github.com/silverstripe/silverstripe-framework/commit/2ea66922cdf8026048e569e0af8b4008468351e3) Update translations (Steve Boyd) - - 2023-06-14 [34019426d](https://github.com/silverstripe/silverstripe-framework/commit/34019426dd82f3c2eace241e7cef9152d8d8653e) add OnlyTheseMembers Inherited Permission type (Andrew Paxley) - - 2023-06-07 [246735101](https://github.com/silverstripe/silverstripe-framework/commit/246735101a52ad6091cc66daa0d55e078dd6e6f6) ORM eager loading (Steve Boyd) - - 2023-05-30 [6b49b6cdb](https://github.com/silverstripe/silverstripe-framework/commit/6b49b6cdb68d70d00f9fe0bce038095db539e577) Update translations (Steve Boyd) - - 2023-04-04 [2c874a1e9](https://github.com/silverstripe/silverstripe-framework/commit/2c874a1e945e4c017dcb44b571491b9b7d3f6cc7) Exclude a list of models for checking and repairs (#10746) (Guy Sartorelli) - - 2023-03-26 [280354df0](https://github.com/silverstripe/silverstripe-framework/commit/280354df08f3a28e487ede1f58b9bdc14b7de7ae) Allow different search filters on TreeDropdownField (elliot sawyer) - -- silverstripe/admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [f5e11e41](https://github.com/silverstripe/silverstripe-admin/commit/f5e11e41ace678a69d71d8bdd99afd5d2c1f6030) Update translations (#1552) (Guy Sartorelli) - - 2023-08-17 [66242e7a](https://github.com/silverstripe/silverstripe-admin/commit/66242e7a7530dbddd5dc679775e34a81306448a6) Update translations (#1550) (Guy Sartorelli) - - 2023-06-28 [e03bc329](https://github.com/silverstripe/silverstripe-admin/commit/e03bc329f7d79ae8ce38aee6dea46ae865c215db) add ListboxField react component (Andrew Paxley) - - 2023-06-23 [4f2c5e26](https://github.com/silverstripe/silverstripe-admin/commit/4f2c5e263bb7009eecfdbd1b8de27e2a02300a36) hide permission fields we arent using (Andrew Paxley) - - 2023-06-19 [a4729ba0](https://github.com/silverstripe/silverstripe-admin/commit/a4729ba0b0bdc3e1eebef5fd45a813a59b54300a) Update JS Translations (Steve Boyd) - - 2023-06-14 [ae0952b1](https://github.com/silverstripe/silverstripe-admin/commit/ae0952b1985f5588c9afb8ef4b1d72e5642fae0c) Storybook Doc Blocks (Sabina Talipova) - - 2023-06-14 [bae6d7a1](https://github.com/silverstripe/silverstripe-admin/commit/bae6d7a1054dd4bf3f8713236d21a5a57dc095f8) Update translations (Steve Boyd) - - 2021-08-31 [a802828f](https://github.com/silverstripe/silverstripe-admin/commit/a802828f7bb2705fe9f49fd572dca3c3d84ee9c5) Pass form validation result to client (Steve Boyd) - - 2020-04-25 [b001d487](https://github.com/silverstripe/silverstripe-admin/commit/b001d487118801ceaec388a0c22ec42840ce4e80) Make CMSProfileController use required_permission_codes (mattclegg) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [6c318880](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c3188805ad13050d15a3c6fa03c05b429bee14c) Update translations (#1386) (Guy Sartorelli) - - 2023-08-08 [fa0fef24](https://github.com/silverstripe/silverstripe-asset-admin/commit/fa0fef240dc04955e25d90709d8ad8c57097f7d3) Use archive text when file archiving is enabled (Steve Boyd) - - 2023-06-15 [d48f81d5](https://github.com/silverstripe/silverstripe-asset-admin/commit/d48f81d57bbee151b2529dade7176113b2141b2f) update CMS fields to allow user-specific permissions (Andrew Paxley) - - 2023-06-14 [d278be60](https://github.com/silverstripe/silverstripe-asset-admin/commit/d278be605883144d3260c53cd2f6fe806b9f2673) Update translations (Steve Boyd) - - 2023-06-13 [71a622d8](https://github.com/silverstripe/silverstripe-asset-admin/commit/71a622d8453cc99f93a17e6834d90b68fa449e6c) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/campaign-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [d62c2c3](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d62c2c3fa243be56c0904a2f9f6564fb86d7caea) Update translations (#276) (Guy Sartorelli) - - 2023-06-14 [3b5b372](https://github.com/silverstripe/silverstripe-campaign-admin/commit/3b5b372274848c882c40a354c14bb01b4518d6d5) Update translations (Steve Boyd) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [7b61f6a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/7b61f6a3e71c053fa051aa913327637fb1358721) Update translations (#304) (Guy Sartorelli) - - 2023-08-07 [addd992](https://github.com/silverstripe/silverstripe-versioned-admin/commit/addd992bc242d3b0817797920508eb1f46e16466) Allow File.keep_archived_assets to show files archive tab (Steve Boyd) - - 2023-06-14 [afcf911](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afcf911059ccb0965b026c63451153f3050fec7c) Update translations (Steve Boyd) - -- silverstripe/cms (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [14037a77](https://github.com/silverstripe/silverstripe-cms/commit/14037a776fb10f04b78a7e5de3f5fa9af5680d19) Update translations (#2874) (Guy Sartorelli) - - 2023-08-17 [6decb069](https://github.com/silverstripe/silverstripe-cms/commit/6decb06909badbb8ab47ef9f5f17e929a6173882) Update translations (#2873) (Guy Sartorelli) - - 2023-06-15 [14eb767c](https://github.com/silverstripe/silverstripe-cms/commit/14eb767c9c7b83146c70cbd075288506c94a1e6e) update SiteTree permissions in CMS (Andrew Paxley) - - 2023-06-14 [d9b6f7ac](https://github.com/silverstripe/silverstripe-cms/commit/d9b6f7acadedb0ff82015ecd0ebb02085704042c) Update translations (Steve Boyd) - - 2023-05-30 [204ccd20](https://github.com/silverstripe/silverstripe-cms/commit/204ccd20b7df8d68fce4d1e13c4e7fbcec9d3bd3) Update translations (Steve Boyd) - -- silverstripe/errorpage (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [c0062cc](https://github.com/silverstripe/silverstripe-errorpage/commit/c0062cc391b9d3e562c8263ce30bbe8b5ee239ad) Update translations (#87) (Guy Sartorelli) - - 2023-06-14 [4225210](https://github.com/silverstripe/silverstripe-errorpage/commit/42252106e8e51fa7e467675abbe7764ff0c2f5c0) Update translations (Steve Boyd) - -- silverstripe/reports (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [03869a75](https://github.com/silverstripe/silverstripe-reports/commit/03869a7535bded903e23a0f1618af1480cb4a1e8) Update translations (#167) (Guy Sartorelli) - - 2023-06-14 [f6aee12f](https://github.com/silverstripe/silverstripe-reports/commit/f6aee12f07f506e370cb7ae3aa159476da46d35a) Update translations (Steve Boyd) - -- silverstripe/siteconfig (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [bd825dce](https://github.com/silverstripe/silverstripe-siteconfig/commit/bd825dce7dc88d87b97d5fdbcc92c12f1ab6fd74) Update translations (#143) (Guy Sartorelli) - - 2023-06-14 [e51a7aa8](https://github.com/silverstripe/silverstripe-siteconfig/commit/e51a7aa8be33d5481f2ba5a51687fce9679ca836) Update translations (Steve Boyd) - -- silverstripe/versioned (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [302aa4c](https://github.com/silverstripe/silverstripe-versioned/commit/302aa4c36a9383caa4d079e3f589315dc78bacf6) Update translations (#411) (Guy Sartorelli) - - 2023-06-14 [afb4517](https://github.com/silverstripe/silverstripe-versioned/commit/afb4517a9673194dd82ba5bd4868367e678dfd77) Update translations (Steve Boyd) - -- silverstripe/graphql (5.0.0 -> 5.1.0-beta1) - - 2023-06-27 [d8435c5](https://github.com/silverstripe/silverstripe-graphql/commit/d8435c5f1c90e8e7ff50b5a0a22fcb68995b74b9) Enable storing GraphQL schema in `silverstripe-cache/` (#534) (Guy Sartorelli) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [845aa34](https://github.com/silverstripe/silverstripe-session-manager/commit/845aa3400679b94a93e23178450e0f523fbfb3a4) Update translations (#166) (Guy Sartorelli) - - 2023-08-16 [c82efd9](https://github.com/silverstripe/silverstripe-session-manager/commit/c82efd989b83e8f2f23fa02b6e193b153d6018ef) Don't update LastAccessed if some threshold hasn't been reached (#156) (Thomas Portelange) - - 2023-08-11 [d31ab95](https://github.com/silverstripe/silverstripe-session-manager/commit/d31ab95d30489efcea065a8d282a41bd506490ca) Add option to anonymize ip requests (#161) (Thomas Portelange) - - 2023-07-04 [ad7265d](https://github.com/silverstripe/silverstripe-session-manager/commit/ad7265d6525e15d8cd592dbac6bd7e77fb5e2295) get cached Member in LoginSession (#152) (Thomas Portelange) - - 2023-07-04 [c7a59f2](https://github.com/silverstripe/silverstripe-session-manager/commit/c7a59f29c7a3d67f05fd0264e5d46d583e2f21b0) get cached Member in SessionManagerField (#151) (Thomas Portelange) - - 2023-06-14 [cb90e70](https://github.com/silverstripe/silverstripe-session-manager/commit/cb90e70e850d7bffb75e4144f6bbca54fb4973b9) Update translations (Steve Boyd) - - 2023-06-13 [65d74c9](https://github.com/silverstripe/silverstripe-session-manager/commit/65d74c95f0be810a697ae39d4aac8abf219d4f6f) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/login-forms (5.0.0 -> 5.1.0-beta1) - - 2023-08-18 [8aeb6e9](https://github.com/silverstripe/silverstripe-login-forms/commit/8aeb6e9280c7d6c673026d68ec0b4c7f36b44b10) Include new logo (Maxime Rainville) - -- silverstripe/documentconverter (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [729c9eb](https://github.com/silverstripe/silverstripe-documentconverter/commit/729c9ebf47fcbea9f7ca3f850ec4bbc592d102b2) Update translations (#56) (Guy Sartorelli) - - 2023-06-14 [f0c5641](https://github.com/silverstripe/silverstripe-documentconverter/commit/f0c5641956ca97c80283418a8d9f88a23e5b2b04) Update translations (Steve Boyd) - -- silverstripe/iframe (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [9890370](https://github.com/silverstripe/silverstripe-iframe/commit/98903708cd2aecc1b323489b60502631a2eff67e) Update translations (#74) (Guy Sartorelli) - - 2023-06-14 [ef07ff3](https://github.com/silverstripe/silverstripe-iframe/commit/ef07ff3a568f1fcd8ac8815a8e1e7adbf49c60f9) Update translations (Steve Boyd) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-beta1) - - 2023-06-13 [f667020](https://github.com/silverstripe/silverstripe-tagfield/commit/f6670206780db4525e8709ec3d6cc01ef55ecda5) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/taxonomy (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [b76ce97](https://github.com/silverstripe/silverstripe-taxonomy/commit/b76ce9782f8096a8cc6795359c7be709cfcba638) Update translations (#95) (Guy Sartorelli) - - 2023-06-14 [050cb00](https://github.com/silverstripe/silverstripe-taxonomy/commit/050cb006804a070efde629dbe807e63e1722eef0) Update translations (Steve Boyd) - -- silverstripe/blog (4.0.0 -> 4.1.0-beta1) - - 2023-08-21 [9d3a398](https://github.com/silverstripe/silverstripe-blog/commit/9d3a398901cb9207a707591c7342dd90845d444f) Update translations (#723) (Guy Sartorelli) - - 2023-08-17 [e9390c3](https://github.com/silverstripe/silverstripe-blog/commit/e9390c3525141ae8fb9769db50732a702c032525) Update translations (#722) (Guy Sartorelli) - - 2023-06-14 [cf4452f](https://github.com/silverstripe/silverstripe-blog/commit/cf4452f5e06b0df2e1604a07b184642df0ad14e1) Update translations (Steve Boyd) - - 2023-05-30 [09e79fd](https://github.com/silverstripe/silverstripe-blog/commit/09e79fd8a87325dcd9bb624d0a1647706553f756) Update translations (Steve Boyd) - -- silverstripe/spamprotection (4.0.0 -> 4.1.0-beta1) - - 2023-08-21 [19603c3](https://github.com/silverstripe/silverstripe-spamprotection/commit/19603c31bc452fb4264e80b1bbcb7059a408dbcf) Update translations (#101) (Guy Sartorelli) - - 2023-06-14 [afbcf59](https://github.com/silverstripe/silverstripe-spamprotection/commit/afbcf59ec4decaa054f78681026be654812b29bb) Update translations (Steve Boyd) - -- silverstripe/contentreview (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [20d61d7](https://github.com/silverstripe/silverstripe-contentreview/commit/20d61d7d87582a919350974be2d4257838ef7a56) Update translations (#208) (Guy Sartorelli) - - 2023-06-14 [b6e00e9](https://github.com/silverstripe/silverstripe-contentreview/commit/b6e00e9528eb35ba06862a0a798757605109f420) Update translations (Steve Boyd) - -- silverstripe/sharedraftcontent (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [bfeb2bd](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/bfeb2bdc4e5c3f485e70af4179438353c436e512) Update translations (#207) (Guy Sartorelli) - - 2023-08-18 [f1a5836](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/f1a58367c02280b3326f17c5f9b2beaa96a27c29) Use new logo (Maxime Rainville) - - 2023-06-14 [bfc5909](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/bfc5909cce70b2aaf00ccedb4eeea3270c53934f) Update translations (Steve Boyd) - - 2023-05-30 [d13d77d](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/d13d77df1d2be288cbabaac676203cb23b52ac3e) Update translations (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0-beta1) - - 2023-08-21 [af03d8d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/af03d8d0d154447e7c76a6f617da16523a4cf777) Update translations (#501) (Guy Sartorelli) - - 2023-08-17 [09e3019](https://github.com/symbiote/silverstripe-advancedworkflow/commit/09e3019be8ce050cab46297da9ab07c0729bcea1) Update translations (#500) (Guy Sartorelli) - - 2023-06-14 [e9fd460](https://github.com/symbiote/silverstripe-advancedworkflow/commit/e9fd460183abb01489657a8477db6163ab818851) Update translations (Steve Boyd) - -- silverstripe/userforms (6.0.0 -> 6.1.0-beta1) - - 2023-08-21 [c0eb6d6](https://github.com/silverstripe/silverstripe-userforms/commit/c0eb6d61e8d6595e5a1cca90fcdf68b190bbeb15) Update translations (#1231) (Guy Sartorelli) - - 2023-06-14 [c562d13](https://github.com/silverstripe/silverstripe-userforms/commit/c562d138dfdc3a0de20af4d23089aba6fece626d) Update translations (Steve Boyd) - - 2023-05-30 [ae34301](https://github.com/silverstripe/silverstripe-userforms/commit/ae34301f6a59168f3a74c86bf18a24ad3529c0b7) Update translations (Steve Boyd) - -- silverstripe/externallinks (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [20c2231](https://github.com/silverstripe/silverstripe-externallinks/commit/20c2231bff459bf3a58eb919bdf2c0c86093bf23) Update translations (#106) (Guy Sartorelli) - - 2023-06-14 [2560888](https://github.com/silverstripe/silverstripe-externallinks/commit/2560888df057645b7be08dd889336785a497057f) Update translations (Steve Boyd) - -- bringyourownideas/silverstripe-maintenance (3.0.0 -> 3.0.1) - - 2023-06-14 [17cd10c](https://github.com/bringyourownideas/silverstripe-maintenance/commit/17cd10cc627102f7505fcec507e0dc154e27c25a) Update translations (Steve Boyd) - -- silverstripe/versionfeed (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [d082606](https://github.com/silverstripe/silverstripe-versionfeed/commit/d082606ded9c73b98fc858c66c634952a6e68d6e) Update translations (#88) (Guy Sartorelli) - - 2023-06-14 [b11db96](https://github.com/silverstripe/silverstripe-versionfeed/commit/b11db96d7a93d28dc9a0852262ff3ce496c3754f) Update translations (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [4b19889](https://github.com/silverstripe/silverstripe-elemental/commit/4b19889771a5846ce53054f7077cfe354a9d181b) Update translations (#1083) (Guy Sartorelli) - - 2023-07-04 [46fd44a](https://github.com/silverstripe/silverstripe-elemental/commit/46fd44ad07fd1f8443388e0b3ac39cd7c58b6091) Optimise site search (Steve Boyd) - - 2023-06-14 [d6c0bbf](https://github.com/silverstripe/silverstripe-elemental/commit/d6c0bbf4f615cf6071b6bb33b942f31937322f6f) Update translations (Steve Boyd) - - 2023-03-13 [ddc3c32](https://github.com/silverstripe/silverstripe-elemental/commit/ddc3c32878f5bbdf74a74d16b058548fbae04c09) Include summary in elemental area by default (#948) (Michael van Schaik) - -- silverstripe/elemental-fileblock (3.0.0 -> 3.1.0-beta1) - - 2023-06-14 [d7ffcd8](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/d7ffcd829fea3eea29f040c97c533f81a60fe3df) Update translations (Steve Boyd) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0-beta1) - - 2023-06-14 [cf0fcf6](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/cf0fcf656f223cf5244b2a5090b662d45cf749c5) Update translations (Steve Boyd) - -- silverstripe/hybridsessions (3.0.0 -> 3.0.2) - - 2023-08-18 [3df783e](https://github.com/silverstripe/silverstripe-hybridsessions/commit/3df783e81b7c2a863f3c4afdedcbba004ed053b8) Update translations (Guy Sartorelli) - - 2023-05-30 [87087ff](https://github.com/silverstripe/silverstripe-hybridsessions/commit/87087ffae20037ff61415d7ab868e162ff829063) Update translations (Steve Boyd) - -- silverstripe/registry (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [a2b05fa](https://github.com/silverstripe/silverstripe-registry/commit/a2b05faf3575c5fa89399f2ee705deb5ac562685) Update translations (#87) (Guy Sartorelli) - - 2023-06-14 [6c319fc](https://github.com/silverstripe/silverstripe-registry/commit/6c319fc0449de538f566fdf5c58d7a8da64bd516) Update translations (Steve Boyd) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [736c2ad](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/736c2ad7c332bbeae1b9a21c95f54cd3d5cdbfbf) Update translations (#133) (Guy Sartorelli) - - 2023-06-14 [9ea2fa1](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/9ea2fa1cf2ee7c4066695575c8dc259762116fef) Update translations (Steve Boyd) - -- silverstripe/mfa (5.0.0 -> 5.1.0-beta1) - - 2023-06-15 [febbf9d](https://github.com/silverstripe/silverstripe-mfa/commit/febbf9d8977ba6e818bad4248bc67af085b1480c) Update translations (Steve Boyd) - - 2023-06-14 [48277a9](https://github.com/silverstripe/silverstripe-mfa/commit/48277a9cc0524192c255d2c43516959b159a1ab8) Update translations (Steve Boyd) - -- silverstripe/crontask (3.0.0 -> 3.0.2) - - 2023-08-21 [9a381d0](https://github.com/silverstripe/silverstripe-crontask/commit/9a381d0288129754b10f1d8755963b5650a5275a) Update translations (#81) (Guy Sartorelli) - - 2023-05-30 [8764d5d](https://github.com/silverstripe/silverstripe-crontask/commit/8764d5dbc9830a6dad6a1d83a9260313ce950fc7) Update translations (Steve Boyd) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [488ee05](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/488ee052f8e2a6e6dcce27aa5676bf8f379b681a) Update translations (#88) (Guy Sartorelli) - -- silverstripe/ldap (2.0.0 -> 2.1.0-beta1) - - 2023-08-21 [59d639a](https://github.com/silverstripe/silverstripe-ldap/commit/59d639aaa0f047bb7b849ae8c972a3930919e81e) Update translations (#60) (Guy Sartorelli) - - 2023-06-14 [30b22b8](https://github.com/silverstripe/silverstripe-ldap/commit/30b22b8724572531d8ae4730bd4a1dbc8a25485b) Update translations (Steve Boyd) - -- silverstripe/realme (5.0.0 -> 5.2.0-beta1) - - 2023-06-26 [5dfdf4f](https://github.com/silverstripe/silverstripe-realme/commit/5dfdf4f43fff543df16bb1e72024f8add7697feb) Update styles to match new RealME branding (#113) (Guy Sartorelli) - - 2023-06-14 [d14d24b](https://github.com/silverstripe/silverstripe-realme/commit/d14d24bb3e68f477750ab1e90d6d033af7824326) Update translations (Steve Boyd) - - 2023-05-30 [3cdc32f](https://github.com/silverstripe/silverstripe-realme/commit/3cdc32f371cb4cf234a6aff69285d54bc409564f) Update translations (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0-beta1) - - 2023-06-14 [4e6b717](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/4e6b7172868e05a982cfbda6c944e11a46c31d98) Update translations (Steve Boyd) - -- silverstripe/subsites (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [178b521](https://github.com/silverstripe/silverstripe-subsites/commit/178b521c54c4f8bc8ba99cfcc84c9b9dd54c6670) Update translations (#534) (Guy Sartorelli) - - 2023-06-14 [c847f3e](https://github.com/silverstripe/silverstripe-subsites/commit/c847f3e1d84b88b46f2c2f145db509a4590e5e9a) Update translations (Steve Boyd) - -- silverstripe/lumberjack (3.0.0 -> 3.0.2) - - 2023-08-21 [bd35b14](https://github.com/silverstripe/silverstripe-lumberjack/commit/bd35b1412d175f34b7cad6b3f8c9ee130081b1f4) Update translations (#131) (Guy Sartorelli) - - 2023-05-30 [f26bb8c](https://github.com/silverstripe/silverstripe-lumberjack/commit/f26bb8c0108ffbe9c9d6ad8bbe50943ab994a0bd) Update translations (Steve Boyd) - -- cwp/agency-extensions (3.0.0 -> 3.1.0-beta1) - - 2023-08-21 [0f68e50](https://github.com/silverstripe/cwp-agencyextensions/commit/0f68e50c3f083c8f84359961eedeb0781322d876) Update translations (#100) (Guy Sartorelli) - - 2023-06-14 [36bdf4e](https://github.com/silverstripe/cwp-agencyextensions/commit/36bdf4e9511ce789706ef323bec2e21c6d28cf73) Update translations (Steve Boyd) - - 2023-05-30 [1f403f3](https://github.com/silverstripe/cwp-agencyextensions/commit/1f403f315797481561b0bdae28b92d46527d5298) Update translations (Steve Boyd) - -- dnadesign/silverstripe-elemental-userforms (4.0.0 -> 4.1.0-beta1) - - 2023-08-21 [9ab97a3](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/9ab97a3bd01272e169713e0d6232223c148a254d) Update translations (#79) (Guy Sartorelli) - - 2023-06-14 [f9cce50](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/f9cce50d8c2a241daaa42e566368ad1492d8a007) Update translations (Steve Boyd) - - 2023-05-30 [4b6191e](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/4b6191ee807d9e3336f0670d15bcbed071a3d5c8) Update translations (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.0 -> 4.0.3) - - 2023-08-21 [1e5a1e8](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1e5a1e8056a7f82bb3d3c7442e5036c83d7103a8) Update translations (#373) (Guy Sartorelli) - - 2023-06-14 [665d231](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/665d23170b461f78af13263ab2d61f4cacdaab4c) Update translations (Steve Boyd) - - 2023-05-30 [89a7301](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/89a7301b670b8b1ddbfd2a9b91a6d9051144ff84) Update translations (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (5.0.0 -> 5.0.2) - - 2023-08-21 [6e0c8df](https://github.com/symbiote/silverstripe-queuedjobs/commit/6e0c8dfca578da0ede3b0f5a5e5a83896f74a665) Update translations (#410) (Guy Sartorelli) - - 2023-06-14 [083763e](https://github.com/symbiote/silverstripe-queuedjobs/commit/083763e6467adc01a96857a37d57862089b44f48) Update translations (Steve Boyd) - -### Bugfixes - -- silverstripe/installer (5.0.0 -> 5.1.0-beta1) - - 2023-06-04 [ab3d7bc](https://github.com/silverstripe/silverstripe-installer/commit/ab3d7bc206a7f71c5533053c5eb7aec372130d94) Fix link to V5 Docs (minimalic) - -- silverstripe/assets (2.0.0 -> 2.1.0-beta1) - - 2023-08-15 [4c04531](https://github.com/silverstripe/silverstripe-assets/commit/4c0453128d58c6647dcc567e793d9cb316333454) Ensure filenames are not duplicated when moving (Steve Boyd) - - 2023-08-10 [16ab3fa](https://github.com/silverstripe/silverstripe-assets/commit/16ab3fae648a5b7d36282666f8500487a94cb3a3) Double encoding image shortcode attributes (Sabina Talipova) - - 2023-08-07 [8597eae](https://github.com/silverstripe/silverstripe-assets/commit/8597eae2efac7df9cbe2b121cdf7bc26a7e4eff9) Fix for vips intervention image backend (#539) (Niklas Forsdahl) - - 2023-08-07 [d560dd4](https://github.com/silverstripe/silverstripe-assets/commit/d560dd4c76f0e72a2097488564c2a393b2e69f12) Multi HTML entities in image shortcodes (Sabina Talipova) - - 2023-07-11 [7f8057e](https://github.com/silverstripe/silverstripe-assets/commit/7f8057ea9af1a11fc8e4dbc3e24fdae84f97dc8b) (Sabina Talipova) - - 2023-07-11 [bd9ebb7](https://github.com/silverstripe/silverstripe-assets/commit/bd9ebb72a0fb91ed2ca3d977f5b88efd6d0f7740) getCachedMarkup returns NULL instead of string if file doesn't exist (Sabina Talipova) - - 2023-05-18 [ae5b661](https://github.com/silverstripe/silverstripe-assets/commit/ae5b661dda468af9d0addb0afe490af6f0e06a7d) Use 0775 permissions for directories (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-08-31 [374771d4d](https://github.com/silverstripe/silverstripe-framework/commit/374771d4d71f649a63f5258f4546415a5b30d3b4) Correctly implement backwards compatible null comparisons (#10935) (Guy Sartorelli) - - 2023-08-21 [57cb55d6a](https://github.com/silverstripe/silverstripe-framework/commit/57cb55d6ae8038ed7c919c210096a1eb4102861a) Typo in CheckboxSetFieldMultiEnumTest class name (closes #10689) (Loz Calver) - - 2023-08-21 [1fd495449](https://github.com/silverstripe/silverstripe-framework/commit/1fd495449b80c13b06b0ea60620208b66617eee0) Stop ManyManyThroughList join records incorrectly showing as changed (fixes #10821) (Loz Calver) - - 2023-08-14 [c7cd26299](https://github.com/silverstripe/silverstripe-framework/commit/c7cd26299a3945de0d3635bdfa845bb771cd95a6) Fix ArrayList canFilterBy to work with ArrayData (#10915) (Guy Sartorelli) - - 2023-08-09 [8da4aa863](https://github.com/silverstripe/silverstripe-framework/commit/8da4aa86379a94cffe51e3dc5f7eb0af8549234c) Regression with include argument (fixes #10911) (Loz Calver) - - 2023-08-08 [f34564648](https://github.com/silverstripe/silverstripe-framework/commit/f3456464810ec0e9d4cffbf2d22886ee41a807fc) Allow subclasses of ManyMany lists in EagerLoadedList (#10905) (Guy Sartorelli) - - 2023-08-07 [037168a4f](https://github.com/silverstripe/silverstripe-framework/commit/037168a4fe9759b7f464ee8403dab612a570bab6) Multi HTML entities in shortcodes (Sabina Talipova) - - 2023-08-04 [c9f48089c](https://github.com/silverstripe/silverstripe-framework/commit/c9f48089c9a8ce8d220b4ad42c32b8b56b0d87d1) Ensure DataList::eagerLoad() returns a clone (#10899) (Guy Sartorelli) - - 2023-08-04 [3628cec1f](https://github.com/silverstripe/silverstripe-framework/commit/3628cec1f33494632b492db51866b3a517514e93) Empty relations don't have extra DB calls with eager-loading (#10886) (Guy Sartorelli) - - 2023-07-31 [c58bc0a7f](https://github.com/silverstripe/silverstripe-framework/commit/c58bc0a7ffb94d969119da21f62534e202185f51) Use TransportFactory to prevent infinite config loop (Steve Boyd) - - 2023-07-29 [909bee810](https://github.com/silverstripe/silverstripe-framework/commit/909bee810194ec630f440fb610a45999acebd921) fix cache key (Thomas Portelange) - - 2023-07-29 [359cb1427](https://github.com/silverstripe/silverstripe-framework/commit/359cb1427afee373ea9ff00f8aea148fdd6ec9ed) include Silverstripe core files into roots (Thomas Portelange) - - 2023-07-24 [d24095aba](https://github.com/silverstripe/silverstripe-framework/commit/d24095aba8de6e3328859953f00e1c6a4ac00db3) Image in summaryfields breaks search (Sabina Talipova) - - 2023-07-20 [642321db6](https://github.com/silverstripe/silverstripe-framework/commit/642321db61b9790400a4c2c593092cab4c3ae6f2) Trigger eagerloading for first() and last() (#10875) (Guy Sartorelli) - - 2023-07-20 [7daa3fdb0](https://github.com/silverstripe/silverstripe-framework/commit/7daa3fdb0807a6360bd320eebecfc542a735bf8a) Short-array syntax for Enum (Steve Boyd) - - 2023-07-10 [3bf845a9e](https://github.com/silverstripe/silverstripe-framework/commit/3bf845a9e6c8ec2e38b3144626b0a7708d5cd6ea) Protect against loading incorrect eager-loaded relations. (Guy Sartorelli) - - 2023-07-10 [95d1c674a](https://github.com/silverstripe/silverstripe-framework/commit/95d1c674a289224e7e4b6da1ce906479cc6d6286) Allow multiple iterations of eager-loaded DataLists (Guy Sartorelli) - - 2023-07-07 [8c3ba8105](https://github.com/silverstripe/silverstripe-framework/commit/8c3ba810524f7bbcba92c36deb4194f84a0d075f) PHP 8.1 support in MySQLiConnector::query errors (#10570) (Dylan Wagstaff) - - 2023-07-06 [a03d0fdf6](https://github.com/silverstripe/silverstripe-framework/commit/a03d0fdf684e00d388b67af6ce9bdc99877709af) ListboxField entwine submissions (Andrew Paxley) - - 2023-07-06 [d0ca9cfdd](https://github.com/silverstripe/silverstripe-framework/commit/d0ca9cfdde01ae9c169decf59a95aae5b6acfa72) many_many extraFields and join records weren't in eagerloading (Guy Sartorelli) - - 2023-07-05 [612f7e734](https://github.com/silverstripe/silverstripe-framework/commit/612f7e734ff29b5a988d6840f0b90cead125bf97) Allow repeated iterations of predicated query result (#10857) (Guy Sartorelli) - - 2023-07-03 [7af0fe245](https://github.com/silverstripe/silverstripe-framework/commit/7af0fe245c1dcf45467c0c8cc0d6cf2c59c28f61) Resolve problems with eagerloading performance (Guy Sartorelli) - - 2023-06-26 [bb5378e17](https://github.com/silverstripe/silverstripe-framework/commit/bb5378e177b8924527a8a27607fc07979a2e795a) Gridfiled pagination missing after search (#10828) (Sabina Talipova) - - 2023-06-21 [ad9df9762](https://github.com/silverstripe/silverstripe-framework/commit/ad9df97626f0cba772a1f6066feb059f08f13938) LastPage method returns true if TotalPages equals 0 (Sabina Talipova) - - 2023-06-13 [35a8d79f6](https://github.com/silverstripe/silverstripe-framework/commit/35a8d79f624623527682eb3920327ca8aeb0b5cf) Show correct default value (Steve Boyd) - - 2023-06-12 [f4e0c768b](https://github.com/silverstripe/silverstripe-framework/commit/f4e0c768bdeeb3c2a379320eb219a6020c80ce08) Handle **TRAIT** in i18nTextCollector (Steve Boyd) - - 2023-06-12 [f88b7c3c2](https://github.com/silverstripe/silverstripe-framework/commit/f88b7c3c2be6fde3d02d7f1f88ffacfe89c45072) Duplicate page keeps original pages canView and canEdit permission (#10806) (Sabina Talipova) - - 2023-06-09 [33c62033f](https://github.com/silverstripe/silverstripe-framework/commit/33c62033fea1408d58721e7264725ffb65b9e04e) Fix translation key for DataObject.GENERALSEARCH (#10805) (Bram de Leeuw) - - 2023-06-07 [95eceb8d9](https://github.com/silverstripe/silverstripe-framework/commit/95eceb8d9e3652a5bc4c5b8f9f8fe74e87fffb0a) Ensure dir exists before scanning it (Steve Boyd) - - 2023-06-06 [face94371](https://github.com/silverstripe/silverstripe-framework/commit/face94371ee7fcccbe93cc5a522fc220eeaa8424) Passing 0 as first argument breaks template (dominik) - - 2023-05-22 [c4b8d9a24](https://github.com/silverstripe/silverstripe-framework/commit/c4b8d9a246c270c9bf1c4cd95a2bbbbfef79b4fa) Add back missing SSL support for database connections (#10784) (Guy Sartorelli) - - 2023-05-21 [f815a9cf2](https://github.com/silverstripe/silverstripe-framework/commit/f815a9cf2ab40921b1936b2ae76f21c89e793f7c) Provide correct replacement suggestion in deprecation message (Michal Kleiner) - - 2023-05-16 [696fe79dd](https://github.com/silverstripe/silverstripe-framework/commit/696fe79dd6f600bb35daff3cfa48182a19433252) Use OR conjuctive in filterAny aggregate queries (Steve Boyd) - - 2023-05-16 [2afb01463](https://github.com/silverstripe/silverstripe-framework/commit/2afb01463b6a116f4a1f99576b203c8837e384b8) Don't redirect admin URLs regardless of trailing slash (#10781) (Guy Sartorelli) - - 2023-05-16 [ef3b91417](https://github.com/silverstripe/silverstripe-framework/commit/ef3b91417a47fa48ece5a3499ce405a37eb05376) Get ApcuCacheFactory and MemcachedCacheFactory working again (Steve Boyd) - - 2023-05-11 [675ba9028](https://github.com/silverstripe/silverstripe-framework/commit/675ba90280e61b471dd4a77e39bcc724cd8c0009) fix issue where member without valid email can not be saved (Nicolaas / Sunny Side Up) - - 2023-05-08 [01808a831](https://github.com/silverstripe/silverstripe-framework/commit/01808a8316b182a438dfc5365cec8fffdb096c8e) Don't assume searchableFields() exists in gridfield filter (Guy Sartorelli) - - 2021-06-09 [5bb5ef80e](https://github.com/silverstripe/silverstripe-framework/commit/5bb5ef80ede8d75f2de05c8aaf367925269a14de) Form::defaultAction() didn't work if actions were in CompositeFields (fixes #9975) (Loz Calver) - -- silverstripe/admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-29 [8c71ef1d](https://github.com/silverstripe/silverstripe-admin/commit/8c71ef1d87e070380f7e17a97f24b502ed988980) Focus on first search field (Sabina Talipova) - - 2023-08-29 [baf4f501](https://github.com/silverstripe/silverstripe-admin/commit/baf4f5018d286cb9be5c8e8c1ada87fabec2843b) Update TinyMCE CSS files (Steve Boyd) - - 2023-08-28 [886a626c](https://github.com/silverstripe/silverstripe-admin/commit/886a626c7dc21e729d40dc1c6f9ded8fcf53b3f3) Don't use state unnecessarily (Guy Sartorelli) - - 2023-08-03 [ee30f31e](https://github.com/silverstripe/silverstripe-admin/commit/ee30f31ec430c10e6aaa9bc1355c1a4a35004e5c) Popover toggle (Steve Boyd) - - 2023-06-14 [d6a3c470](https://github.com/silverstripe/silverstripe-admin/commit/d6a3c47023d1bff6985bdae0be0612c2dce0b031) Don't load a second TinyMCE instance from react (#1525) (Guy Sartorelli) - - 2023-06-13 [f12d38a8](https://github.com/silverstripe/silverstripe-admin/commit/f12d38a89abdd29052e162ef1bf07f889b84c3b9) Set current locale based on actual defined dictionaries (#1523) (Guy Sartorelli) - - 2023-06-13 [5697904a](https://github.com/silverstripe/silverstripe-admin/commit/5697904aafc683a9b95768f80f49f9b039857a13) Eslint and Storybook errors (Sabina Talipova) - - 2023-06-12 [83e6bc29](https://github.com/silverstripe/silverstripe-admin/commit/83e6bc291b9fdf563ed5f255d752a57c64c6b5e9) Replace 4 space indent with 2 spaces (Sabina Talipova) - - 2023-06-02 [fdad7a87](https://github.com/silverstripe/silverstripe-admin/commit/fdad7a87e3cba7e55ac029e065cf2b00c0cb75fa) Syntax error TinyMC when using special characters (#1517) (Sabina Talipova) - - 2023-05-19 [7738c603](https://github.com/silverstripe/silverstripe-admin/commit/7738c6035cce8407e48fda7846be0f36a70024d9) fix: update docs and user help urls (Izzudin Anuar) - - 2023-05-01 [7849e187](https://github.com/silverstripe/silverstripe-admin/commit/7849e1878cbdd3d152b317c1f3498731839ff332) TinyMCE custom config issue (Sabina Talipova) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-beta1) - - 2023-07-06 [3281ee87](https://github.com/silverstripe/silverstripe-asset-admin/commit/3281ee873fba1705853d409e11f88897fa803658) ESLint issues (#1371) (Sabina Talipova) - - 2023-06-19 [4be853dd](https://github.com/silverstripe/silverstripe-asset-admin/commit/4be853dd4a5f85c5d86b8e1ff9d84d8c86f7a8f9) Upload files issue in AssetDropzone (#1368) (Sabina Talipova) - - 2023-06-12 [8bfff8ee](https://github.com/silverstripe/silverstripe-asset-admin/commit/8bfff8eefdef7395ee55e96086aa6c57e0b86c58) Replace 4 space indent with 2 spaces (Sabina Talipova) - - 2023-05-10 [206cb48a](https://github.com/silverstripe/silverstripe-asset-admin/commit/206cb48a9e5590eca850a636d4a15a009f8aa32d) Broken Insert Image behat test (Sabina Talipova) - - 2023-05-04 [b5b16f02](https://github.com/silverstripe/silverstripe-asset-admin/commit/b5b16f02f6ae6221ec8c4d7e27e3867e04828654) Update deprecation notice with correct message (Sabina Talipova) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0-beta1) - - 2023-06-15 [73cc19d](https://github.com/silverstripe/silverstripe-versioned-admin/commit/73cc19da03bdef5a7002bac546bcee8ccd50a223) Handle no trailing slash in other tab of archive admin (Steve Boyd) - -- silverstripe/cms (5.0.0 -> 5.1.0-beta1) - - 2023-06-12 [39fe63db](https://github.com/silverstripe/silverstripe-cms/commit/39fe63db8a2bdfbd649ce7f3e59e27366db5783c) Duplicate page keeps original pages canView and canEdit permission (#2859) (Sabina Talipova) - - 2023-05-08 [55eabd66](https://github.com/silverstripe/silverstripe-cms/commit/55eabd669459734f1661983dd8f6d1ff66102342) Don't require jQuery on the frontend (#2854) (Guy Sartorelli) - -- silverstripe/versioned (2.0.0 -> 2.1.0-beta1) - - 2023-06-14 [f98b817](https://github.com/silverstripe/silverstripe-versioned/commit/f98b8170bba1fa1bd5dab03d2db28f7c6e23e338) Return diff in ChangedFields() (#406) (Guy Sartorelli) - -- silverstripe/graphql (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [c74fa1c](https://github.com/silverstripe/silverstripe-graphql/commit/c74fa1cb7be7c642588b89fee2a323ddfa6dc0a8) Handle using injected subclasses (Steve Boyd) - - 2023-07-04 [2981640](https://github.com/silverstripe/silverstripe-graphql/commit/2981640b96bb9e2cfa41232b48f8a0b61e02fc5f) fix(SortPlugin): amend sorting to all fields (Chris Joe) - - 2023-05-25 [6c8d0d7](https://github.com/silverstripe/silverstripe-graphql/commit/6c8d0d743500a07ed80cc783e9872ecaaee70393) NestedInputBuilder doesn't work with nested '*' (mason) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-beta1) - - 2023-08-11 [5b82124](https://github.com/silverstripe/silverstripe-session-manager/commit/5b821243461a7c81e2bda903bedfde195f55e468) fix missing variables (Thomas Portelange) - - 2023-08-10 [7ea28df](https://github.com/silverstripe/silverstripe-session-manager/commit/7ea28df5d9a6f22e4ec8a0ebe525637dede9f236) fix conflict (Thomas) - - 2023-06-12 [b731fab](https://github.com/silverstripe/silverstripe-session-manager/commit/b731faba88cab8daa1c02e717449e2ff23335dd7) Replace 4 space indent with 2 spaces (Sabina Talipova) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-beta1) - - 2023-07-17 [efeb8b2](https://github.com/silverstripe/silverstripe-tagfield/commit/efeb8b224d34659eb903d354123729e855b898be) TagField triggers edit form change without changes (Sabina Talipova) - - 2023-06-12 [a2b1a82](https://github.com/silverstripe/silverstripe-tagfield/commit/a2b1a827347779e375025bb05cd09a96deefab94) Replace 4 space indent with 2 spaces (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0-beta1) - - 2023-05-10 [f8b2057](https://github.com/symbiote/silverstripe-advancedworkflow/commit/f8b205748756073963f3c0ebfa5d6408c9de4db0) Fix typo in userguide (Michal Kleiner) - - 2023-05-10 [788caf5](https://github.com/symbiote/silverstripe-advancedworkflow/commit/788caf5a99f3cd17cac266f3598e982c483b9413) Fix typo (Ed Wilde) - -- silverstripe/userforms (6.0.0 -> 6.1.0-beta1) - - 2023-08-17 [cf9a109](https://github.com/silverstripe/silverstripe-userforms/commit/cf9a109d3823472e54171bec29e961a5891189c0) Tighten routing rule for userforms ping action (#1224) (Tyler Trout) - - 2023-08-08 [60717e5](https://github.com/silverstripe/silverstripe-userforms/commit/60717e5c04cf3aa496b3a9838a4cd1851ef139e0) Use absolute URL for submitted file links in emails (#1226) (Guy Sartorelli) - - 2023-05-31 [bf49cab](https://github.com/silverstripe/silverstripe-userforms/commit/bf49cab67818552df3252daef4667757243a2b20) Prevent infinite recursion when field display rules are co-dependent (Steve Boyd) - - 2023-05-17 [7af0009](https://github.com/silverstripe/silverstripe-userforms/commit/7af0009321bbc7d910066cb317eb3245c5f792e2) Passing array to setReplyTo method instead of string (#1208) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-beta1) - - 2023-08-21 [e17dbf1](https://github.com/silverstripe/silverstripe-elemental/commit/e17dbf10486e1a397fe2586c7ab002fc28167191) Save repeated database queries to fetch elemental area name (fixes #928) (Loz Calver) - - 2021-09-01 [fc19dc9](https://github.com/silverstripe/silverstripe-elemental/commit/fc19dc914cfbb51ff480f4f5c6158597f22a8e67) Retain value that failed validation on client side (Steve Boyd) - -- silverstripe/elemental-fileblock (3.0.0 -> 3.1.0-beta1) - - 2023-07-10 [2f06274](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/2f06274d2978d7a80b7f375199f6ef82a618ba01) HTML showing in inline preview (Sabina Talipova) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0-beta1) - - 2023-07-10 [450666c](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/450666cc5b7c06ccfd86889c639670de3df30b1a) HTML showing in inline preview (Sabina Talipova) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-beta1) - - 2023-05-10 [2639d5a1](https://github.com/silverstripe/developer-docs/commit/2639d5a16b2f9f11526067cb93a3ddffd78b9a5b) Broken icon (#264) (Sabina Talipova) - -- silverstripe/environmentcheck (3.0.0 -> 3.0.1) - - 2023-05-19 [28ca036](https://github.com/silverstripe/silverstripe-environmentcheck/commit/28ca03634535a3cded21dc57406fb186818a14c8) Fix arguments order in SolrIndexCheck (Michal Kleiner) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-beta1) - - 2023-06-14 [4549433](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/45494338169f677c95d029a6a08a77d77b5f1ed6) Don't mark mocked response as an error (#82) (Guy Sartorelli) - - 2023-05-23 [bbfeb2d](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/bbfeb2d60fd2e239b71141f248041385af5902d2) #80 check $gridField exists before calling getConfig() (Luke Fromhold) - -- silverstripe/subsites (3.0.0 -> 3.1.0-beta1) - - 2023-08-28 [fe42821](https://github.com/silverstripe/silverstripe-subsites/commit/fe4282169b9d2e4f35e1107d87e263f1afc2a4a1) Set extraCodes to false for CMSProfileController (Steve Boyd) - -- silverstripe/lumberjack (3.0.0 -> 3.0.2) - - 2023-07-31 [ecefcdc](https://github.com/silverstripe/silverstripe-lumberjack/commit/ecefcdc48cc84516f7c173beef283b375f12577f) Remove infinite loop by reverting #127 (#129) (Guy Sartorelli) - - 2023-07-20 [fcdfcdf](https://github.com/silverstripe/silverstripe-lumberjack/commit/fcdfcdfb3037d3faa671e2606e0f242ca6d7cb62) Allow extension methods to be used in lumberjack (#127) (wernerkrauss) - -- symbiote/silverstripe-multivaluefield (6.0.0 -> 6.0.1) - - 2023-01-16 [02742df](https://github.com/symbiote/silverstripe-multivaluefield/commit/02742df60737389aeecebfb8989a9e2909d5492a) Fix saving of CheckboxSetMultivalueField (Florian Thoma) - -- symbiote/silverstripe-gridfieldextensions (4.0.0 -> 4.0.3) - - 2023-08-14 [47171ee](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/47171ee4c25f552fb7bac80c1666775c24bcaac0) Allow editing extra fields from ManyManyThroughList. (Guy Sartorelli) - -### API changes {#changelog-api-changes} - -- silverstripe/vendor-plugin (2.0.0 -> 2.0.1) - - 2023-02-06 [2b85737](https://github.com/silverstripe/vendor-plugin/commit/2b857372fc5c44580add91b8ddc685c3bd12aa88) Deprecate publicPathExists() (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-06-19 [4b22ab4df](https://github.com/silverstripe/silverstripe-framework/commit/4b22ab4dfe8ee04e19d26f70d8fcbdbe92d81c06) deprecate InheritedPermissions::getJoinTable (Andrew Paxley) - - 2023-05-16 [b51bc427a](https://github.com/silverstripe/silverstripe-framework/commit/b51bc427aa6e2f58e0b2a07826095ff1c18902e6) Remove deprecated template vars (Mohamed Alsharaf) - - 2023-04-26 [73ef035bd](https://github.com/silverstripe/silverstripe-framework/commit/73ef035bd8ddfb6f386b78d4d9c957b4859d9a99) Add AbsoluteLink method to RequestHandler (#10749) (Guy Sartorelli) - -### Dependencies - -- silverstripe/recipe-kitchen-sink (5.0.0 -> 5.1.0-beta1) - - 2023-06-12 [891be0b](https://github.com/silverstripe/recipe-kitchen-sink/commit/891be0bbc673a3ffcd07a7d567f024beceeb4665) Remove unsupported modules (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-05-30 [80c51b6bd](https://github.com/silverstripe/silverstripe-framework/commit/80c51b6bd2e719d8afe9f79d13e0ca10d4e71ffc) Explicitly require psr/HTTP-message ^1 (Steve Boyd) - - 2023-05-24 [e55451619](https://github.com/silverstripe/silverstripe-framework/commit/e554516193afd6f3cf2762b3809b48f1c05590d0) Explicitly require psr/HTTP-message ^1 (Steve Boyd) - -- silverstripe/admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-30 [724d8453](https://github.com/silverstripe/silverstripe-admin/commit/724d8453af444de927b5fce1babd45e0cbf3b0ad) Update JS dependencies (#1569) (GitHub-actions[bot]) - - 2023-08-24 [8851fe36](https://github.com/silverstripe/silverstripe-admin/commit/8851fe3603ec6b0ccd29f57e14cc353fd811990b) Update JS dependencies and update TinyMCE_sslink.js onunmatch() (Steve Boyd) - - 2023-07-11 [c0ed41ce](https://github.com/silverstripe/silverstripe-admin/commit/c0ed41ce469d7c9edc2df9d4df86fb6eba732a33) Update eslint module (#1535) (Sabina Talipova) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-23 [959966b3](https://github.com/silverstripe/silverstripe-asset-admin/commit/959966b32a21ae722652c83939a4aed2a9f1198c) Update JS dependencies (#1390) (GitHub-actions[bot]) - - 2023-07-11 [a9f6a311](https://github.com/silverstripe/silverstripe-asset-admin/commit/a9f6a3116214401b4af16acda2f3f3ff135f911a) Update eslint module (#1373) (Sabina Talipova) - -- silverstripe/campaign-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-23 [b8c3108](https://github.com/silverstripe/silverstripe-campaign-admin/commit/b8c3108a77bb1bd1b34145762e1601781e934d68) Update JS dependencies (#278) (GitHub-actions[bot]) - - 2023-07-11 [9e5e00b](https://github.com/silverstripe/silverstripe-campaign-admin/commit/9e5e00bb13b88e12e34091667ec93abcc647c890) Update eslint module (#273) (Sabina Talipova) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-23 [1ae7961](https://github.com/silverstripe/silverstripe-versioned-admin/commit/1ae79617848ffe0fff2c63e988704c31b688649b) Update JS dependencies (#306) (GitHub-actions[bot]) - - 2023-07-11 [fc60dac](https://github.com/silverstripe/silverstripe-versioned-admin/commit/fc60dac7d78699652bcfa1f3298a5d8dd70b2e5c) Update eslint module (#299) (Sabina Talipova) - -- silverstripe/cms (5.0.0 -> 5.1.0-beta1) - - 2023-08-30 [2799ef3b](https://github.com/silverstripe/silverstripe-cms/commit/2799ef3b3975f2ea0804aa32e76ed2fbc84838b5) Update JS dependencies (#2878) (GitHub-actions[bot]) - - 2023-07-11 [c831b1be](https://github.com/silverstripe/silverstripe-cms/commit/c831b1be6b2ad35b26f8b0061ffef78f32a9d769) Update eslint module (#2868) (Sabina Talipova) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-beta1) - - 2023-08-23 [1128742](https://github.com/silverstripe/silverstripe-session-manager/commit/11287422d3925e37fb1e00d4cf0634539c69f82b) Update JS dependencies (#168) (GitHub-actions[bot]) - - 2023-07-11 [b63bac3](https://github.com/silverstripe/silverstripe-session-manager/commit/b63bac3d7ca518a9588abcd8b138faa20a6c16b5) Update eslint module (Sabina Talipova) - -- silverstripe/login-forms (5.0.0 -> 5.1.0-beta1) - - 2023-08-23 [8d74414](https://github.com/silverstripe/silverstripe-login-forms/commit/8d744140003f67928717933b637d8240eae8ff5e) Update JS dependencies (#153) (GitHub-actions[bot]) - - 2023-08-03 [15f5f83](https://github.com/silverstripe/silverstripe-login-forms/commit/15f5f83e5e99366322b7815218c5a52b4b675e70) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [d7f7e6b](https://github.com/silverstripe/silverstripe-login-forms/commit/d7f7e6bcb8e1e7866d001227178c558e89bb46aa) Update eslint module (#143) (Sabina Talipova) - -- silverstripe/documentconverter (3.0.0 -> 3.1.0-beta1) - - 2023-08-03 [bde3513](https://github.com/silverstripe/silverstripe-documentconverter/commit/bde3513b692069c014a408c300c1b8ce0d3ea031) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [0112713](https://github.com/silverstripe/silverstripe-documentconverter/commit/0112713e868f79b23d8306cde84d14514b7a8aa1) Update eslint module (Sabina Talipova) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-beta1) - - 2023-08-23 [d1c02ca](https://github.com/silverstripe/silverstripe-tagfield/commit/d1c02ca80032bad041ffcd48502469d4451de5f2) Update JS dependencies (#258) (GitHub-actions[bot]) - - 2023-07-11 [61cf375](https://github.com/silverstripe/silverstripe-tagfield/commit/61cf3751ab4bbdc7dce4ef8eeb48291f5e9279c3) Update eslint module (#250) (Sabina Talipova) - -- silverstripe/recipe-blog (2.0.0 -> 2.1.0-beta1) - - 2023-06-12 [b2ae936](https://github.com/silverstripe/recipe-blog/commit/b2ae936253ee650d74f13c564008f539865975de) Remove unsupported modules (Steve Boyd) - -- silverstripe/blog (4.0.0 -> 4.1.0-beta1) - - 2023-08-23 [1f3878b](https://github.com/silverstripe/silverstripe-blog/commit/1f3878bc3f689058b6bccf90704e5810fd240dcd) Update JS dependencies (#725) (GitHub-actions[bot]) - - 2023-07-19 [23fd31c](https://github.com/silverstripe/silverstripe-blog/commit/23fd31c1058e93034b861528b27d85c465f412e8) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [1514d0b](https://github.com/silverstripe/silverstripe-blog/commit/1514d0b9824f70578d8b1dec05529a9601e67ea8) Update eslint module (#716) (Sabina Talipova) - -- silverstripe/contentreview (5.0.0 -> 5.1.0-beta1) - - 2023-08-23 [fd1fd08](https://github.com/silverstripe/silverstripe-contentreview/commit/fd1fd08db07ae0f5605c60a3fc023541d631b3e5) Update JS dependencies (#210) (GitHub-actions[bot]) - - 2023-07-11 [a571e5d](https://github.com/silverstripe/silverstripe-contentreview/commit/a571e5d8f893c8562c02884eba028a0830512f13) Update eslint module (#205) (Sabina Talipova) - -- silverstripe/sharedraftcontent (3.0.0 -> 3.1.0-beta1) - - 2023-08-04 [402eee7](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/402eee71adc2714a70c0d57a5ebb484967006192) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-08-04 [5a6c069](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/5a6c0694178d1937e03e6788519b28ba8d359992) Bump semver from 6.3.0 to 6.3.1 (dependabot[bot]) - - 2023-07-01 [69170f8](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/69170f8204a0bed26c708e3a2f0bd783daaca4d1) Update JS dependencies (GitHub-actions) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0-beta1) - - 2023-07-11 [31a7ff2](https://github.com/symbiote/silverstripe-advancedworkflow/commit/31a7ff2a66423073c132d11c19045f4e3939c03c) Update eslint module (#498) (Sabina Talipova) - -- silverstripe/segment-field (3.0.0 -> 3.1.0-beta1) - - 2023-08-23 [f3cb3f3](https://github.com/silverstripe/silverstripe-segment-field/commit/f3cb3f34e82fa96c71f9afe261f9a01fe94a3b52) Update JS dependencies (#89) (GitHub-actions[bot]) - - 2023-07-18 [0827a2a](https://github.com/silverstripe/silverstripe-segment-field/commit/0827a2a5d8546cd6dfa6fba8144d9e300a2c4476) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [727267a](https://github.com/silverstripe/silverstripe-segment-field/commit/727267ac08ced81330b2c317786ea7260985f4dc) Update eslint module (#83) (Sabina Talipova) - -- silverstripe/userforms (6.0.0 -> 6.1.0-beta1) - - 2023-08-31 [16c3c51](https://github.com/silverstripe/silverstripe-userforms/commit/16c3c5122d98055884899b8fba89a63fa0310adb) Update JS dependencies (#1235) (GitHub-actions[bot]) - - 2023-07-11 [2d89d1b](https://github.com/silverstripe/silverstripe-userforms/commit/2d89d1baaaf941cae6bd7d304b225628890227f1) Update eslint module (#1222) (Sabina Talipova) - -- silverstripe/externallinks (3.0.0 -> 3.1.0-beta1) - - 2023-07-11 [be7b01c](https://github.com/silverstripe/silverstripe-externallinks/commit/be7b01c1f8ff50faec72e8e9ded94e4af6973d5f) Update eslint module (#104) (Sabina Talipova) - -- silverstripe/sitewidecontent-report (4.0.0 -> 4.1.0-beta1) - - 2023-07-20 [9962192](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/9962192acab764698bace30d63fef994e014adc3) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [8488af8](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/8488af88acbde8d47fdf50e0b88aa5774bd8b2d2) Update eslint module (#67) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-beta1) - - 2023-08-30 [9553867](https://github.com/silverstripe/silverstripe-elemental/commit/955386728591bfc54de36dc6b1ebe2039451981a) Update JS dependencies (#1095) (GitHub-actions[bot]) - - 2023-07-11 [e8219c4](https://github.com/silverstripe/silverstripe-elemental/commit/e8219c47a368ed121fdfe2c95288d574f6ca9f4a) Update eslint module (#1075) (Sabina Talipova) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0-beta1) - - 2023-08-23 [d2d790d](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/d2d790df31a54ac99f327854755dd4af754d45a2) Update JS dependencies (#124) (GitHub-actions[bot]) - - 2023-07-18 [f4cc10a](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/f4cc10afeb7dce356798be532336177baac05bff) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [7fcf870](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7fcf870335c36f76aafa5475e85cb20289f4787c) Update eslint module (#118) (Sabina Talipova) - - 2023-07-10 [6bc48b9](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/6bc48b9da3042df91d261d8030cb960defa4f053) Bump tough-cookie from 4.1.2 to 4.1.3 (dependabot[bot]) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0-beta1) - - 2023-08-23 [778e98a](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/778e98aff8ecb606d80b4838799d4a2d437863f9) Update JS dependencies (#135) (GitHub-actions[bot]) - - 2023-07-18 [da9572c](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/da9572c9d6c2a20db371683f4220965505ac863e) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [9ea9c5e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/9ea9c5e890279d7c7f479a15f52ef800b9b3e9a8) Update eslint module (#128) (Sabina Talipova) - -- silverstripe/mfa (5.0.0 -> 5.1.0-beta1) - - 2023-08-31 [f51d8ff](https://github.com/silverstripe/silverstripe-mfa/commit/f51d8fff48eecd254c651ad3473860a66280832a) Update JS dependencies (#509) (GitHub-actions[bot]) - - 2023-07-11 [29260f1](https://github.com/silverstripe/silverstripe-mfa/commit/29260f19fc2129043ef353e93160ead235870d94) Update eslint module (#503) (Sabina Talipova) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-beta1) - - 2023-07-20 [3d6a045](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/3d6a045bc366212f5ffdf55768b6e42e49d1f8b8) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [a2d6df3](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/a2d6df3c31e039f8ed39130ad45e398dafc83594) Update eslint module (#84) (Sabina Talipova) - -- silverstripe/realme (5.0.0 -> 5.2.0-beta1) - - 2023-07-20 [e653cff](https://github.com/silverstripe/silverstripe-realme/commit/e653cff5c211d65b4dfc9ec761cacee33a5159a7) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [cc05ad3](https://github.com/silverstripe/silverstripe-realme/commit/cc05ad3ef7993cef0e33e12179d5be8e6ceb5c38) Update eslint module (#115) (Sabina Talipova) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0-beta1) - - 2023-08-23 [6f29cd1](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/6f29cd1556f8da7e39cd1c929efb7a5ae419d90a) Update JS dependencies (#155) (GitHub-actions[bot]) - - 2023-07-18 [9750907](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/97509077b94197f36ef46993cf322cd865602fd1) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [781acec](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/781acec34ed58ab3cc4f76274659b067806e9dfc) Update eslint module (#147) (Sabina Talipova) - - 2023-07-10 [a1d1476](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/a1d1476df912a3365cde742bf40590017553c2f5) Bump tough-cookie from 4.1.2 to 4.1.3 (dependabot[bot]) - -- silverstripe/subsites (3.0.0 -> 3.1.0-beta1) - - 2023-07-20 [7232bcf](https://github.com/silverstripe/silverstripe-subsites/commit/7232bcff9e2a19f71cd4b43b46fafdbcc26a2c33) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [1d1f265](https://github.com/silverstripe/silverstripe-subsites/commit/1d1f2658224b5b4dea04ec5b8706ffc41771b10d) Update eslint module (#530) (Sabina Talipova) - -- cwp/agency-extensions (3.0.0 -> 3.1.0-beta1) - - 2023-08-30 [1ee158f](https://github.com/silverstripe/cwp-agencyextensions/commit/1ee158f7a5eaa81a22b15d2d62c06b757e2e0169) Update JS dependencies (#103) (GitHub-actions[bot]) - - 2023-07-11 [4631ce7](https://github.com/silverstripe/cwp-agencyextensions/commit/4631ce7fde98800946dd3166fae2dd1cd5af3bda) Update eslint module (#98) (Sabina Talipova) - -### Documentation - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-06-21 [e9358c88a](https://github.com/silverstripe/silverstripe-framework/commit/e9358c88af35492c4af06386198ddcee5c8c1182) Update eagerLoad() docblock (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-beta1) - - 2023-02-14 [c0e4994](https://github.com/silverstripe/silverstripe-elemental/commit/c0e49940e5cccdf55f6fa446b3e5cd2083e2cadd) Update documentation for CMS 5 version of elemental (#1008) (Guy Sartorelli) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-beta1) - - 2023-08-29 [b45605ee](https://github.com/silverstripe/developer-docs/commit/b45605ee80cee3fbaac3d1f19e24cb60a678a802) Document changes from silverstripe/silverstripe-framework#10925 (#335) (Guy Sartorelli) - - 2023-08-28 [e947f451](https://github.com/silverstripe/developer-docs/commit/e947f45131b4807ea0a6dd7bfcb1da0462e16627) Close hint block (#316) (Guy Sartorelli) - - 2023-08-23 [a0d6a9a5](https://github.com/silverstripe/developer-docs/commit/a0d6a9a5fe6cff043be9b6c3cc6dbdd3fa448131) Correct hyperlink (Nate Devereux) - - 2023-08-22 [9797fc17](https://github.com/silverstripe/developer-docs/commit/9797fc171de50d3ed3c6eb9b75d0a321a8ac9e75) Staticpublishqueue changelog entry (Steve Boyd) - - 2023-08-17 [5b9afdd4](https://github.com/silverstripe/developer-docs/commit/5b9afdd4dc3c5c2b8bedda2d12c9fb6a5547c461) Document maximumLimit in GraphQL schema (#329) (Guy Sartorelli) - - 2023-08-15 [0161d551](https://github.com/silverstripe/developer-docs/commit/0161d551b2c9db2c4d6bee9f61fba8909dc8a559) Add note about limiting session garbage collection (#328) (Guy Sartorelli) - - 2023-08-15 [6c50a46b](https://github.com/silverstripe/developer-docs/commit/6c50a46b43ea07977b87e7932b3ac08ba142e962) Add session-manager documentation (Steve Boyd) - - 2023-08-14 [43b6b282](https://github.com/silverstripe/developer-docs/commit/43b6b2828b418be83175bb482c586344bb56adda) Changelog session manager anonymize IP addresses (Steve Boyd) - - 2023-08-14 [ef31438e](https://github.com/silverstripe/developer-docs/commit/ef31438ef571564554ad9a64042bfdaecab8d06b) Document FieldsValidator (#319) (Guy Sartorelli) - - 2023-08-11 [6f0f2e53](https://github.com/silverstripe/developer-docs/commit/6f0f2e53a9ff6f7e8244011b28628c825b62914f) Document fixed issue with non-db summary_fields (Guy Sartorelli) - - 2023-08-11 [a7744574](https://github.com/silverstripe/developer-docs/commit/a7744574f4ff0e7a6a6f7df9147f9135a3fe5b06) Add note about FieldsValidator to 5.1 changelog (Guy Sartorelli) - - 2023-08-08 [916cb8ec](https://github.com/silverstripe/developer-docs/commit/916cb8ec3ca3fa2f760276eff4c0ccae946b7f1e) Update namespace for use_placeholders_for_integer_ids (Steve Boyd) - - 2023-08-07 [e2fc0056](https://github.com/silverstripe/developer-docs/commit/e2fc0056fb5143d6a54edaf80114256073c9c579) Use correct class for keep_archived_assets config (Steve Boyd) - - 2023-08-03 [89c801eb](https://github.com/silverstripe/developer-docs/commit/89c801ebf20afc5ff678c61803fcdd40c608b40e) Document new EagerLoadedDataList (#305) (Guy Sartorelli) - - 2023-07-31 [b6e54b10](https://github.com/silverstripe/developer-docs/commit/b6e54b10756ab02684e913bd75d925867e0195cc) Add severity rating for CVSS score of 0 (#306) (Guy Sartorelli) - - 2023-07-31 [0a187eae](https://github.com/silverstripe/developer-docs/commit/0a187eae0ab33b460c538d7b2a90698796f22b70) Warnings about searchable_fields content (Sabina Talipova) - - 2023-07-25 [2995e23a](https://github.com/silverstripe/developer-docs/commit/2995e23ac1ca2f648ade58b60b92fe30ad962879) SQL placeholders (Steve Boyd) - - 2023-07-11 [68b1be25](https://github.com/silverstripe/developer-docs/commit/68b1be25f9d7c71935c6bfd50f10a2c6907bedad) Changelog for FileBlock::getSummaryThumbnail (Sabina Talipova) - - 2023-07-06 [32ddcf4a](https://github.com/silverstripe/developer-docs/commit/32ddcf4a8db447a7a77075a0808ce70b02f4a296) Document new "Only these users" permission (#298) (Guy Sartorelli) - - 2023-07-05 [051908d4](https://github.com/silverstripe/developer-docs/commit/051908d4f938d5b5037990583bc836882a3173f2) Changelog for SearchContext::getQuery() parameter (#294) (Sabina Talipova) - - 2023-07-05 [657246c4](https://github.com/silverstripe/developer-docs/commit/657246c472ee0bc9f39561dd2443db526bd0cfed) CMS 4 Supported modules (Steve Boyd) - - 2023-07-04 [7f5ca7ce](https://github.com/silverstripe/developer-docs/commit/7f5ca7ce9bf1bc203531ad33b5505a0a5bfddf81) Call out ListboxField react component (#295) (Guy Sartorelli) - - 2023-07-04 [24a3893c](https://github.com/silverstripe/developer-docs/commit/24a3893c1ff309c27c1a4eeafb87f53194724b7a) Changelog CMS search with elemental (Steve Boyd) - - 2023-07-03 [5ffb99ef](https://github.com/silverstripe/developer-docs/commit/5ffb99ef7a48b115b0fe4bcd52be871f8c472d9b) Update i18n (Antony Thorpe) - - 2023-06-27 [cd758f5d](https://github.com/silverstripe/developer-docs/commit/cd758f5d2af16ba31a5ada78a35144c2871912c0) Document storing gql schema in cache dir (#257) (Guy Sartorelli) - - 2023-06-25 [380b81ae](https://github.com/silverstripe/developer-docs/commit/380b81ae4289b1f49b04447ab9961f320c2316fb) Correct bad enum syntax (Maxime Rainville) - - 2023-06-22 [ef4d8a57](https://github.com/silverstripe/developer-docs/commit/ef4d8a575fe4924388346258ddcef8c5d4e37eeb) Fix typo in Introduction.md (Maxime Rainville) - - 2023-06-16 [8fa5dd06](https://github.com/silverstripe/developer-docs/commit/8fa5dd0614e11d803e65156db0fa80b1bae07fd0) Update undefinedoffset-sortablegridfield info (Sabina Talipova) - - 2023-06-14 [362f86dd](https://github.com/silverstripe/developer-docs/commit/362f86dd6887647a7e876c0c6b6786a266a596dc) Quote all YAML service definitions (#285) (Guy Sartorelli) - - 2023-06-13 [08f04c86](https://github.com/silverstripe/developer-docs/commit/08f04c86ea6f4097027e6bb1ab7fffcaaad3c5fb) Review extending docs for truthfulness (#273) (Guy Sartorelli) - - 2023-06-12 [9d5b988a](https://github.com/silverstripe/developer-docs/commit/9d5b988a14d1cf46b6cec728290941202265e5b7) silverstripe/widgets removed (Steve Boyd) - - 2023-06-12 [bcd9d7fa](https://github.com/silverstripe/developer-docs/commit/bcd9d7fae8cf9f15f14c7e465af5fa4ad96aa025) cascade_duplicates property in SiteTree class (#282) (Sabina Talipova) - - 2023-06-08 [51b63278](https://github.com/silverstripe/developer-docs/commit/51b632788f1eb2c25c1b9cba2e8f103a9c5d58bf) Eager loading (Steve Boyd) - - 2023-06-08 [b450bad0](https://github.com/silverstripe/developer-docs/commit/b450bad0cdda3638bfd17c55eaebe318ca05d22f) BuildTask is_enabled config (Steve Boyd) - - 2023-06-07 [ffbd5979](https://github.com/silverstripe/developer-docs/commit/ffbd59793b3e9003e0a8076118c89c3dd7b2ab20) Use HTMLValue (Steve Boyd) - - 2023-05-22 [08d0828d](https://github.com/silverstripe/developer-docs/commit/08d0828de3d552ea0a52aed15fba2f24238bebd9) Document the requirement to install Composer 2 (#275) (Guy Sartorelli) - - 2023-05-22 [de1a71f5](https://github.com/silverstripe/developer-docs/commit/de1a71f555e6dabd655914faa8b9187940511644) Add note in 5.1 changelog about DB SSL (#272) (Guy Sartorelli) - - 2023-05-22 [3068943e](https://github.com/silverstripe/developer-docs/commit/3068943e3516edd44a4702ac844d6eb0177de9cc) Document using SSL for db connections (#271) (Guy Sartorelli) - - 2023-05-18 [1c6adfca](https://github.com/silverstripe/developer-docs/commit/1c6adfcaca26062c574006d09e5bae6882cb9380) Update configuration docs (#268) (Guy Sartorelli) - - 2023-05-17 [588ba477](https://github.com/silverstripe/developer-docs/commit/588ba47745eb5de44726f39aa8441a9d1434ee0a) fix partial caching config example (Jono Menz) - - 2023-05-16 [f9a19089](https://github.com/silverstripe/developer-docs/commit/f9a19089f6b30e08789ff930a9ae15cd3f1b469e) Add additional context to CMS 5 changelog (#267) (Guy Sartorelli) - - 2023-05-16 [7d296b4c](https://github.com/silverstripe/developer-docs/commit/7d296b4c40ee7e371af55c506c259588a5c7e94c) filterAny() many-many aggregate conjunction (Steve Boyd) - - 2023-05-14 [c5e02441](https://github.com/silverstripe/developer-docs/commit/c5e0244193a3d049ad05bbecc9bf5dec22a3d507) Review forms section (#254) (Guy Sartorelli) - - 2023-05-08 [14b5ece1](https://github.com/silverstripe/developer-docs/commit/14b5ece1f1aef862c1427aa234f0ff63e35e88dd) Document changes to i18nTextCollector (Guy Sartorelli) - - 2023-05-04 [0c57c585](https://github.com/silverstripe/developer-docs/commit/0c57c5858ea9642c32d41b8d5a93f841289a77d7) Updated recommendation for depreceted class Silverstripe\View\Embed\EmbedResource (Sabina Talipova) - - 2023-05-04 [a1b5b8ce](https://github.com/silverstripe/developer-docs/commit/a1b5b8ce3e687791f0290ab47537fa19ad0256c5) Remove links for unsupported modules (Sabina Talipova) - - 2023-05-04 [a68fb70c](https://github.com/silverstripe/developer-docs/commit/a68fb70c7117c50daf77ce2bf71c0b2b3963bd01) Add note regarding the split of the activedirectory module into the saml and ldap modules. (Matt Peel) - - 2023-05-04 [58968964](https://github.com/silverstripe/developer-docs/commit/58968964df1da0d25eb0599c127020279aafa26f) Fix anchor link to full commits list (Guy Sartorelli) - - 2023-04-19 [1ddb6dfb](https://github.com/silverstripe/developer-docs/commit/1ddb6dfba51aba54537db64d3a6439c798699267) remove core committer (Stevie Mayhew) - - 2023-04-10 [27d4ab93](https://github.com/silverstripe/developer-docs/commit/27d4ab93620eecf440bf83231bf09701e8a6e771) Document the changes in silverstripe/silverstripe-framework#10735 (Guy Sartorelli) - - 2023-04-03 [fda0ccbd](https://github.com/silverstripe/developer-docs/commit/fda0ccbd73f9fd12dc1fff7fb937155074d3ae53) Add additional context about excluding models from db checks (Guy Sartorelli) - - 2023-04-03 [cb7f3756](https://github.com/silverstripe/developer-docs/commit/cb7f37567a1eb7eb16bbc0f925e272af01daf542) Add section on ORM performance (#201) (Guy Sartorelli) - - 2023-03-13 [e6764a37](https://github.com/silverstripe/developer-docs/commit/e6764a373ec8ea8f328e6af2b99b4aaf6a180090) Fix minor typos to Major release policy (Maxime Rainville) - - 2023-03-08 [fad702f3](https://github.com/silverstripe/developer-docs/commit/fad702f3df74be687c2535edf3c1bd13379f3b15) Clarify when we will consider changing a module name or namespace (Maxime Rainville) - -### Other changes - -- silverstripe/installer (5.0.0 -> 5.1.0-beta1) - - 2023-06-04 [d371ae7](https://github.com/silverstripe/silverstripe-installer/commit/d371ae7dc3cff1f1530e6db8a574ab4f26bbd077) Fixed link to V5 "Contributing Code" Docs (minimalic) - -- silverstripe/assets (2.0.0 -> 2.1.0-beta1) - - 2023-08-10 [418906d](https://github.com/silverstripe/silverstripe-assets/commit/418906dc504fea7863eb151b52e0060e329e38f5) use dbObject (Thomas Portelange) - - 2023-08-03 [4bf41f3](https://github.com/silverstripe/silverstripe-assets/commit/4bf41f3d2420784afde0a732e4c5c341254196c4) Update FileLinkTracking.PHP (Thomas Portelange) - - 2023-06-25 [43aecdb](https://github.com/silverstripe/silverstripe-assets/commit/43aecdb90951e35cc512c6a4520f204d3f85a998) use strong return type (Thomas Portelange) - - 2023-06-23 [41dc93c](https://github.com/silverstripe/silverstripe-assets/commit/41dc93cf47d63ff7ec4ec8df97a7f3a74a42f561) make it private (Thomas Portelange) - - 2023-06-22 [4eb92f4](https://github.com/silverstripe/silverstripe-assets/commit/4eb92f48cc6277b942b47edd32d8b9dbdb7a968b) Don't run onBefore if no assets (Thomas Portelange) - - 2023-06-22 [a7d5386](https://github.com/silverstripe/silverstripe-assets/commit/a7d538688032f74cbada50f2bce0fc044a359901) Don't make query if not needed (Thomas Portelange) - -- silverstripe/config (2.0.0 -> 2.1.0-beta1) - - 2023-07-18 [44769a6](https://github.com/silverstripe/silverstripe-config/commit/44769a61bdfc0b598a02297bbd87fd19666cb508) CachedConfigCollection is written to disk on every page load (#89) (Thomas Portelange) - -- silverstripe/framework (5.0.0 -> 5.1.0-beta1) - - 2023-08-25 [88c70b323](https://github.com/silverstripe/silverstripe-framework/commit/88c70b323475cd7879e312637f185ef286e6c589) Fixed deprecation notices in PHP 8.2 by using the AllowDynamicProperties (Niklas Forsdahl) - - 2023-08-15 [6c2b5bdbe](https://github.com/silverstripe/silverstripe-framework/commit/6c2b5bdbe174169e199c7b2d593f7b5f4697035c) Update src/Security/Member.PHP (Sunny Side Up) - - 2023-08-15 [93d03f71e](https://github.com/silverstripe/silverstripe-framework/commit/93d03f71ef8700c15d424628057d72e357c06233) MINOR: set a default password encryption for a member, if no password encryption is set. (Sunny Side Up) - - 2023-08-14 [637859a1f](https://github.com/silverstripe/silverstripe-framework/commit/637859a1f45d50978b93e12bc90f1a21079a7678) Update tests/PHP/ORM/DBCompositeTest.PHP (Thomas Portelange) - - 2023-08-11 [0d4231abb](https://github.com/silverstripe/silverstripe-framework/commit/0d4231abb8a35043d44058afdf1a2e3df1147240) comment test for ss4 (Thomas Portelange) - - 2023-08-10 [d621d00ee](https://github.com/silverstripe/silverstripe-framework/commit/d621d00eea25cacc930084f75e9b6dc837e3a9d2) DBComposite::writeToManipulation() is never called (Thomas) - - 2023-08-02 [0e839e12c](https://github.com/silverstripe/silverstripe-framework/commit/0e839e12cc4af42801b5290fc8704a5ba3fc61be) Update src/Core/Manifest/VersionProvider.PHP (Thomas Portelange) - - 2023-08-01 [c0cc129f1](https://github.com/silverstripe/silverstripe-framework/commit/c0cc129f1249ee979c2052700b4d818c30c94965) remove sprintf (Thomas Portelange) - - 2023-08-01 [d3c2fa897](https://github.com/silverstripe/silverstripe-framework/commit/d3c2fa897c06b4c8379b514a7773c74e1c3ee4ea) nicer key (Thomas Portelange) - - 2023-06-28 [a019b34fa](https://github.com/silverstripe/silverstripe-framework/commit/a019b34facc35066fce3355118a2dcb67fcf01a0) csfix (Thomas Portelange) - - 2023-06-28 [a96918043](https://github.com/silverstripe/silverstripe-framework/commit/a96918043312ab4575e79c62fbbfe8c0f3de411c) add anonymize (Thomas Portelange) - - 2023-06-23 [9391e696b](https://github.com/silverstripe/silverstripe-framework/commit/9391e696bbb4e12f58c52f3335b15b0e157cc2c1) use Member::class (Thomas Portelange) - - 2023-06-22 [2e73b5eec](https://github.com/silverstripe/silverstripe-framework/commit/2e73b5eeca692f015d63539322dccf62e25cf72a) Use cached query (Thomas Portelange) - - 2023-06-14 [b6a3e3a95](https://github.com/silverstripe/silverstripe-framework/commit/b6a3e3a9519e0adc52fb1bd75e1f4974a554c011) added an additional filter to remove empty array items (#10803) (josephlewisnz) - - 2023-06-08 [30cd4047d](https://github.com/silverstripe/silverstripe-framework/commit/30cd4047df1ae9fb5801ace59fe5732b8c71531e) Adjust isEnabled method (#10801) (kevingroeger) - - 2023-05-24 [e98f0d45a](https://github.com/silverstripe/silverstripe-framework/commit/e98f0d45af1f3684748a1a49d47d0f91f2bc0225) Use ::create instead of new in GridFieldDetailForm_ItemRequest (#10791) (Bernard Hamlin) - - 2023-05-15 [0ab36f6ae](https://github.com/silverstripe/silverstripe-framework/commit/0ab36f6ae18262b5c298a7f0d501aa5d6dac4a1c) UPD Add support new TinyMC cs_CZ.js (Sabina Talipova) - - 2023-04-27 [9660652fb](https://github.com/silverstripe/silverstripe-framework/commit/9660652fbca17870ad2bbd52aec96aff7d8d4a44) MINOR: faster checking if record exists (Nicolaas / Sunny Side Up) - - 2023-04-12 [1dbb2bc5b](https://github.com/silverstripe/silverstripe-framework/commit/1dbb2bc5badbb15a79aff7d1f2e1126086ee9fe6) remove manually added config values in test (Florian Thoma) - - 2023-04-10 [0d9724c70](https://github.com/silverstripe/silverstripe-framework/commit/0d9724c70804255ca6ee8ba7bc7941edf2f7e0de) Update tests/PHP/Forms/TreeDropdownFieldTest.PHP (elliot sawyer) - - 2023-04-05 [41c4b4ee0](https://github.com/silverstripe/silverstripe-framework/commit/41c4b4ee020011e09ff44edd7e90ca1e38176490) make Group use tri-state can* extension hooks, fixes #9580 (Florian Thoma) - - 2023-02-13 [04266f77c](https://github.com/silverstripe/silverstripe-framework/commit/04266f77ccae635fc8c3367afee2e64f041f3e42) Update i18nTextCollector to collect strings also from themes (Florian Thoma) - - 2023-02-13 [c0722308a](https://github.com/silverstripe/silverstripe-framework/commit/c0722308af48a9f1ee5d2d549c22640c55c9e5bc) add loading of automatic ORM field labels to i18nTextCollector (Florian Thoma) - -- silverstripe/admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-25 [0b59826b](https://github.com/silverstripe/silverstripe-admin/commit/0b59826bcd61522a85676e2bddae9f0eadd28199) Fixed deprecation notices in PHP 8.2 by using the AllowDynamicProperties (Niklas Forsdahl) - - 2023-08-17 [f2732691](https://github.com/silverstripe/silverstripe-admin/commit/f273269136eabaa885d34ec65107b3b6ef0f9571) Update util.js (Thomas Portelange) - - 2023-08-17 [1877b387](https://github.com/silverstripe/silverstripe-admin/commit/1877b3879ab8809945b017f9bb16c70b2aa9c309) Update collapse.js (Thomas Portelange) - - 2023-08-17 [4c285f3e](https://github.com/silverstripe/silverstripe-admin/commit/4c285f3e3fddbe070b47674f484ac68a0923e270) remove sourcemap (Thomas Portelange) - - 2023-08-14 [6ef5b9bc](https://github.com/silverstripe/silverstripe-admin/commit/6ef5b9bcbc270c6afe5326e4c4e80b5c1cdae0c5) Make security admin more easily extensible (Thomas Portelange) - - 2023-08-11 [a77f54b4](https://github.com/silverstripe/silverstripe-admin/commit/a77f54b409df4af11472d37e275a9b42ce705b5f) EHN Implement the new logo (Maxime Rainville) - - 2023-05-10 [cafc1c4d](https://github.com/silverstripe/silverstripe-admin/commit/cafc1c4de58f1553b019dc2f8a62f835cabdbeb2) [SS-2023-002] Apply TinyMCE patches for XSS vulnerabilities (Guy Sartorelli) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-beta1) - - 2023-08-08 [e0d5fca3](https://github.com/silverstripe/silverstripe-asset-admin/commit/e0d5fca37dee5ffc4d730d35f161b46581e8a836) Allows display of validation messages on assets (Bernie Hamlin) - - 2023-05-12 [5eaff19d](https://github.com/silverstripe/silverstripe-asset-admin/commit/5eaff19db8856f99717bc6b112ba0434d1119431) Adds Folder ID for TinyMCE_sslink-file to allow us to target a specific folder when user clicks on TinyMCE link to file: (Garry Yeatman) - -- silverstripe/cms (5.0.0 -> 5.1.0-beta1) - - 2023-08-18 [3295dd50](https://github.com/silverstripe/silverstripe-cms/commit/3295dd5062cfe4d78ba6242f9a00ea55fa258c23) Don't make query if not needed (#2863) (Thomas Portelange) - - 2023-07-28 [c455a828](https://github.com/silverstripe/silverstripe-cms/commit/c455a8288f1a2cf7732f21e5bdaf0e015e81598a) drop duplicated call (Thomas Portelange) - -- silverstripe/graphql (5.0.0 -> 5.1.0-beta1) - - 2023-08-14 [562c251](https://github.com/silverstripe/silverstripe-graphql/commit/562c251b7819c616c40c412dfc7d396ab424b491) Revert "NEW Enable storing GraphQL schema in `silverstripe-cache/`" (Steve Boyd) - - 2023-07-24 [ac6fdc2](https://github.com/silverstripe/silverstripe-graphql/commit/ac6fdc2ba96dbd78675f52dd8d2d4950d1d75beb) Run dev/build add-on only once (Dylan Wagstaff) - - 2023-07-07 [47811b8](https://github.com/silverstripe/silverstripe-graphql/commit/47811b88cd1ae7e39cf13ed698223f6a13b4d047) test(SortPlugin): add integration test for multi-sort (Chris Joe) - - 2023-02-09 [db1d6d3](https://github.com/silverstripe/silverstripe-graphql/commit/db1d6d37cbde903c65c9a350075bb64ea18c4f3b) Support maximumLimit in pagination (Nils Hellberg) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-beta1) - - 2023-08-14 [9bcd9e7](https://github.com/silverstripe/silverstripe-session-manager/commit/9bcd9e771338ade1065117a2af9b99a33d922090) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [78c27ed](https://github.com/silverstripe/silverstripe-session-manager/commit/78c27ed48f14b293defbd3a9f8900cb22066ba14) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-10 [be50af6](https://github.com/silverstripe/silverstripe-session-manager/commit/be50af667065123577853b23d96f5c67f9284126) Garbage collector do not work on large tables (Thomas) - - 2023-06-28 [30389d1](https://github.com/silverstripe/silverstripe-session-manager/commit/30389d1a01d391253a56c2f2e6beb448e7bd24bd) wording update (Thomas Portelange) - - 2023-06-28 [348fe08](https://github.com/silverstripe/silverstripe-session-manager/commit/348fe08e172d9bada2517032cf1c44c3a6f48bdd) allow mock time in garbage service (Thomas Portelange) - - 2023-06-28 [cef0628](https://github.com/silverstripe/silverstripe-session-manager/commit/cef06282c4edbaa71064dc3b83b0347e0a61ca30) actually show that mock time does something (Thomas Portelange) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-beta1) - - 2023-08-18 [92823c7](https://github.com/silverstripe/silverstripe-tagfield/commit/92823c790ac5fb25aebdbb33c438493e7232869c) Adds back onBlur handler (Bernie Hamlin) - -- silverstripe/blog (4.0.0 -> 4.1.0-beta1) - - 2023-08-10 [bcbb40e](https://github.com/silverstripe/silverstripe-blog/commit/bcbb40e08d7f674206fcd2fb5deaf0adea487b33) Replace deprecated sort rand with shuffle (3Dgoo) - -- silverstripe/spamprotection (4.0.0 -> 4.1.0-beta1) - - 2023-07-11 [a358621](https://github.com/silverstripe/silverstripe-spamprotection/commit/a3586210e2e0dbd6ed20961923e5d3209b4e2366) Add Cloudflare Turnstile captcha link (Bernard Hamlin) - -- silverstripe/userforms (6.0.0 -> 6.1.0-beta1) - - 2023-06-07 [0dfd299](https://github.com/silverstripe/silverstripe-userforms/commit/0dfd2990dde1cd5ee474d02d248d38b39ec1f582) Use window.ss.config provided adminUrl (#1211) (Michal Kleiner) - - 2023-04-26 [0b61d1a](https://github.com/silverstripe/silverstripe-userforms/commit/0b61d1a3bba0dc7254976cd1da8b35cf15373840) not remove Submissions, use setTitle (Lukas Erni) - - 2023-04-19 [0d7f7ed](https://github.com/silverstripe/silverstripe-userforms/commit/0d7f7ed6d0978b8f663da792318058ffcdfb2981) Submission tab translatable (Lukas Erni) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-beta1) - - 2023-05-15 [2c32dc8](https://github.com/silverstripe/silverstripe-elemental/commit/2c32dc8d875b315dc5bc41609305ca11dfd45c10) Focus PR back to original scope (Guy Sartorelli) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-beta1) - - 2023-08-14 [566fac25](https://github.com/silverstripe/developer-docs/commit/566fac25c0e031f39bba5a97fff6d1cd172ef9d0) Revert "DOC Document storing gql schema in cache dir" (Steve Boyd) - - 2023-07-24 [51ad53f3](https://github.com/silverstripe/developer-docs/commit/51ad53f3332ee7f6f8ffed98bb08e92926eeb38a) parent 1a73935fdecaa1cbeee0ad12986267d5c1e4a62f (Maxime Rainville) - - 2023-07-21 [393f13dd](https://github.com/silverstripe/developer-docs/commit/393f13dd90ddadbb1b8fa3197e1b9a0b85ac9212) Update 02_configuring_your_schema.md (Patrick Côté) - - 2023-06-22 [d61a330e](https://github.com/silverstripe/developer-docs/commit/d61a330e5baccc8940b7fd1b12034cae16bb58e1) Update 00_Introduction.md (Izzudin Anuar) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-beta1) - - 2023-06-07 [48cf053](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/48cf053f2e345a89b4914c67c099296da8a39d39) Update src/Extensions/UserFormUseQueuedExportExtension.PHP (Luke Fromhold) - -- silverstripe/realme (5.0.0 -> 5.2.0-beta1) - - 2023-04-28 [4dc8654](https://github.com/silverstripe/silverstripe-realme/commit/4dc8654c1875217782870dca514e21ca53a349e1) Replacing all occurances of $backURL with $backUrl in enforeLogin function (LABCAT) - - 2023-04-19 [fe483f4](https://github.com/silverstripe/silverstripe-realme/commit/fe483f409e121605365e82f76d98909bc8c1fcba) Fixing "Undefined variable $backURL" in enforeLogin function (LABCAT) - -- silverstripe/subsites (3.0.0 -> 3.1.0-beta1) - - 2023-08-16 [39de471](https://github.com/silverstripe/silverstripe-subsites/commit/39de47167d9eadab4d2cb89a6a91684037814911) don't trigger permissionFailure when it's not needed (Thomas Portelange) - - 2023-06-21 [a052bfd](https://github.com/silverstripe/silverstripe-subsites/commit/a052bfd5909a70825dbc654dfd16204ea661cb1c) Add extension to correctly support element preview (Michal Kleiner) - -- silverstripe/staticpublishqueue (6.0.0 -> 6.1.0-beta1) - - 2023-08-22 [c651e04](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/c651e045785b816eb99cbf7d72dde8d6bc2c5f19) Match generate and purge actions to CMS behaviours (#168) (Chris Penny) - - diff --git a/en/08_Changelogs/beta/5.2.0-beta1.md b/en/08_Changelogs/beta/5.2.0-beta1.md deleted file mode 100644 index 16f368b7f..000000000 --- a/en/08_Changelogs/beta/5.2.0-beta1.md +++ /dev/null @@ -1,1495 +0,0 @@ ---- -title: 5.2.0-beta1 ---- - -# 5.2.0-beta1 - -## Overview - -- [Security considerations](#security-considerations) -- [Official support for `silverstripe/linkfield`](#linkfield) -- [Features and enhancements](#features-and-enhancements) - - [New ORM features](#new-orm-features) - - [GridField components now work with arbitrary data](#gridfield-arbitrary-data) - - [ErrorPage allowed codes configuration](#errorpage-allowed-codes-configuration) - - [Create random passwords for new users](#create-random-passwords-for-new-users) - - [Buttons to select all files and deselect all files](#bulk-action-buttons) - - [Support for validation using `symfony/validator`](#symfony-validator) - - [New searchable dropdown fields](#searchable-dropdown-field) - - [New `UrlField`](#urlfield) - - [Create file variants with different extensions](#file-variants) - - [More nuanced permissions for `/dev/*` routes](#dev-route-permissions) - - [Generic typehints](#generics) - - [New exception in React forms](#react-forms-exception) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -A full list of module versions included in CMS Recipe 5.2.0-beta1 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.1.0-beta1 | -| bringyourownideas/silverstripe-maintenance | 3.1.0-beta1 | -| colymba/gridfield-bulk-editing-tools | 4.0.2 | -| cwp/agency-extensions | 3.2.0-beta1 | -| cwp/starter-theme | 4.1.0-beta1 | -| cwp/watea-theme | 4.1.0-beta1 | -| dnadesign/silverstripe-elemental | 5.2.0-beta1 | -| dnadesign/silverstripe-elemental-userforms | 4.1.1 | -| silverstripe-themes/simple | 3.3.1 | -| silverstripe/admin | 2.2.0-beta1 | -| silverstripe/asset-admin | 2.2.0-beta1 | -| silverstripe/assets | 2.2.0-beta1 | -| silverstripe/auditor | 3.1.0-beta1 | -| silverstripe/blog | 4.2.0-beta1 | -| silverstripe/campaign-admin | 2.2.0-beta1 | -| silverstripe/cms | 5.2.0-beta1 | -| silverstripe/config | 2.1.0 | -| silverstripe/contentreview | 5.2.0-beta1 | -| silverstripe/crontask | 3.0.3 | -| silverstripe/documentconverter | 3.2.0-beta1 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.2.0-beta1 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.1 | -| silverstripe/errorpage | 2.2.0-beta1 | -| silverstripe/externallinks | 3.2.0-beta1 | -| silverstripe/framework | 5.2.0-beta1 | -| silverstripe/graphql | 5.2.0-beta1 | -| silverstripe/gridfieldqueuedexport | 3.2.0-beta1 | -| silverstripe/hybridsessions | 3.0.3 | -| silverstripe/iframe | 3.2.0-beta1 | -| silverstripe/installer | 5.2.0-beta1 | -| silverstripe/ldap | 2.2.0-beta1 | -| silverstripe/linkfield | 4.0.0-beta1 | -| silverstripe/login-forms | 5.2.0-beta1 | -| silverstripe/lumberjack | 3.1.0-beta1 | -| silverstripe/mfa | 5.2.0-beta1 | -| silverstripe/mimevalidator | 3.1.0-beta1 | -| silverstripe/realme | 5.3.0-beta1 | -| silverstripe/recipe-authoring-tools | 2.2.0-beta1 | -| silverstripe/recipe-blog | 2.2.0-beta1 | -| silverstripe/recipe-cms | 5.2.0-beta1 | -| silverstripe/recipe-collaboration | 2.2.0-beta1 | -| silverstripe/recipe-content-blocks | 3.2.0-beta1 | -| silverstripe/recipe-core | 5.2.0-beta1 | -| silverstripe/recipe-form-building | 2.2.0-beta1 | -| silverstripe/recipe-kitchen-sink | 5.2.0-beta1 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.2.0-beta1 | -| silverstripe/recipe-services | 2.2.0-beta1 | -| silverstripe/registry | 3.2.0-beta1 | -| silverstripe/reports | 5.2.0-beta1 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.1.0-beta1 | -| silverstripe/segment-field | 3.2.0-beta1 | -| silverstripe/session-manager | 2.2.0-beta1 | -| silverstripe/sharedraftcontent | 3.2.0-beta1 | -| silverstripe/siteconfig | 5.2.0-beta1 | -| silverstripe/sitewidecontent-report | 4.2.0-beta1 | -| silverstripe/spamprotection | 4.2.0-beta1 | -| silverstripe/staticpublishqueue | 6.2.0-beta1 | -| silverstripe/subsites | 3.2.0-beta1 | -| silverstripe/tagfield | 3.2.0-beta1 | -| silverstripe/taxonomy | 3.2.0-beta1 | -| silverstripe/textextraction | 4.1.0-beta1 | -| silverstripe/totp-authenticator | 5.2.0-beta1 | -| silverstripe/userforms | 6.2.0-beta1 | -| silverstripe/vendor-plugin | 2.0.2 | -| silverstripe/versioned | 2.2.0-beta1 | -| silverstripe/versioned-admin | 2.2.0-beta1 | -| silverstripe/versionfeed | 3.2.0-beta1 | -| silverstripe/webauthn-authenticator | 5.2.0-beta1 | -| symbiote/silverstripe-advancedworkflow | 6.2.0-beta1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.5 | -| symbiote/silverstripe-multivaluefield | 6.1.0-beta1 | -| symbiote/silverstripe-queuedjobs | 5.1.0-beta1 | -| tractorcow/silverstripe-fluent | 7.1.0-beta1 | - -
- -## Security considerations {#security-considerations} - -Some security fixes that were previously released in the January security release that are mentioned in the [Silverstripe CMS security patches January 2024](https://www.silverstripe.org/blog/silverstripe-cms-security-patches-january-2024/) blog post are listed below. - -Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2023-49783 - No permission checks for editing or deleting records with CSV import form](https://www.silverstripe.org/download/security-releases/cve-2023-49783) Severity: Medium - - If you implement a custom subclass of [`BulkLoader`](api:SilverStripe\Dev\BulkLoader) or you're using a `BulkLoader` directly in your code, there may be additional actions you need to take to secure your project. -- [CVE-2023-48714 - Record titles for restricted records can be viewed if exposed by GridFieldAddExistingAutocompleter](https://www.silverstripe.org/download/security-releases/cve-2023-48714) Severity: Medium -- [CVE-2023-44401 - View permissions are bypassed for paginated lists of ORM data in GraphQL queries](https://www.silverstripe.org/download/security-releases/cve-2023-44401) Severity: Medium - -## Official support for `silverstripe/linkfield` {#linkfield} - -[`silverstripe/linkfield`](https://github.com/silverstripe/silverstripe-linkfield) 4.0.0-beta1 has been released and will become a commercially supported module. - -That means it will be covered by our [minor release policy](/project_governance/minor_release_policy/), our [major release policy](/project_governance/major_release_policy/), and our [security release process](/contributing/managing_security_issues). - -This module provides a [`Link`](api:SilverStripe\LinkField\Models\Link) model and two new form fields: [`LinkField`](api:SilverStripe\LinkField\Form\LinkField) and [`MultiLinkField`](api:SilverStripe\LinkField\Form\MultiLinkField). The intention of the module is to provide a clear and consistent approach to managing links in the CMS. - -This release of the module includes a bunch of features that were missing from earlier versions including: - -- Support for `has_many` relations -- Versioned support -- Validation -- The ability to declare which link types are allowed per field -- Improved UI including better keyboard navigation. - -> [!NOTE] -> `silverstripe/linkfield` 4.0.0 requires `silverstripe/framework` 5.2.0 or higher due to its reliance on some new API. - -You can install it as soon as you update your project. - -```bash -composer require silverstripe/linkfield -``` - -Check out [the linkfield documentation](/optional_features/linkfield/) which includes guides to migrate from similar modules that you might already be using. - -## Features and enhancements - -### New ORM features {#new-orm-features} - -This release comes jampacked with new ORM features, granting you access to some new abstractions for more powerful and efficient queries. - -#### Manipulating eager loaded relation queries {#eager-loading} - -Filtering or sorting an [`EagerLoadedList`](api:SilverStripe\ORM\EagerLoadedList) (i.e. after the eager loading query has been executed) requires filtering in PHP, which is less powerful and significantly slower than performing those manipulations on `DataList` before executing the query. For example, you can't filter or sort `EagerLoadedList` by fields on relations using dot notation (e.g. `sort('MySubRelation.Title')` won't work). - -To alleviate this problem, we've introduced a new syntax for eager loading relations that lets you manipulate the eager loading queries. - -The old syntax is still supported, because it can be used in templates for simple scenarios. - -In a test setup with looping through 100 records each with 100 related records (for a total of 10,000 records per test run), the following performance improvements were observed for different types of relations (early manipulations in the database vs manipulating results in PHP): - -- HasMany - ~581% faster (0.1080s vs 0.7358s) -- ManyMany - ~612% faster (0.1264s vs 0.9002s) -- ManyManyThrough - ~327% faster (0.2511s vs 1.0719s) - -You can pass an associative array into the [`DataList::eagerLoad()`](api:SilverStripe\ORM\DataList::eagerLoad()) method, with relation chains as the keys and callbacks as the values. The callback accepts a `DataList` argument, and must return a `DataList`. - -```php -use SilverStripe\ORM\DataList; - -$teams = Team::get()->eagerLoad([ - 'Players' => fn (DataList $list) => $list->filter(['Age:GreaterThan' => 18]), -]); -``` - -> [!WARNING] -> It is very important to remember to return the list in your callback function. - -There are a few edge cases to be aware of with this new feature. To learn more, see [eager loading](/developer_guides/model/relations/#eager-loading). - -#### Multi-relational `has_one` relations - -Traditionally, if you wanted to have multiple `has_many` relations for the same class, you would have to include a separate `has_one` relation for *each* `has_many` relation. - -This release includes a new `has_one` syntax to declare that your `has_one` should be allowed to handle multiple reciprocal `has_many` relations. The syntax for that is as follows: - -> [!TIP] -> Multi-relational `has_one` relations *must* be polymorphic. - -```php -namespace App\Model; - -use SilverStripe\ORM\DataObject; -use SilverStripe\ORM\DataObjectSchema; - -class MyExample extends DataObject -{ - // ... - - private static array $has_one = [ - 'MyMultiRelationalRelation' => [ - // The class here is the class for the has_one - it must be polymorphic. - 'class' => DataObject::class, - // Setting this to true is what defines this has_one relation as multi-relational - DataObjectSchema::HAS_ONE_MULTI_RELATIONAL => true, - ], - ]; -} -``` - -Multiple `has_many` relations on a single class can point to the above `has_one` relation, and they will be correctly saved and resolved when you get the relation list. - -> [!WARNING] -> This new feature means sometimes the value in the associative `has_one` configuration array will be an array, rather than a class name. -> If you are relying on fetching this configuration to find the class names of `has_one` relations, consider using -> [`DataObject::hasOne()`](api:SilverStripe\ORM\DataObject::hasOne()) or [`DataObjectSchema::hasOneComponent()`](api:SilverStripe\ORM\DataObjectSchema::hasOneComponent()) instead. - -See [multi-relational `has_one` in the relations docs](/developer_guides/model/relations/#multi-relational-has-one) for more details about this relation type. - -#### UNION clause {#orm-union-clause} - -Abstractions for the SQL `UNION` clause have been added to `SQLSelect` and `DataQuery`. - -To add a `UNION` clause to an `SQLSelect`, call the [`SQLSelect::addUnion()`](api:SilverStripe\ORM\Queries\SQLSelect::addUnion()) method and pass in the `SQLSelect` query you want to combine using a union. - -For the second argument, you can leave it blank for a default union (which is functionality equivalent to a distinct union in MySQL) - or you can pass in one of the `SQLSelect::UNION_ALL` or `SQLSelect::UNION_DISTINCT` constants for a `UNION ALL` or `UNION DISTINCT` clause respectively. - -```php -$baseQuery = SQLSelect::create()->setFrom($tableName)->addWhere(...); -$anotherQuery = SQLSelect::create()->setFrom($tableName)->addWhere(...); -$baseQuery->addUnion($anotherQuery, SQLSelect::UNION_DISTINCT); -``` - -To add a `UNION` clause to an `DataQuery`, call the [`DataQuery::union()`](api:SilverStripe\ORM\DataQuery::union()) method and pass in either another `DataQuery` or an `SQLSelect` query you want to combine using a union. The same constants used for `SQLSelect` can be passed in here as well. - -```php -$baseQuery = DataQuery::create(MyClass::class)->where(...); -$anotherQuery = DataQuery::create(MyClass::class)->where(...); -$baseQuery->union($anotherQuery, SQLSelect::UNION_ALL); -``` - -#### Common table expressions (CTE aka the WITH clause) {#orm-with-clause} - -Abstractions for Common Table Expressions (aka the SQL `WITH` clause) have been added to `SQLSelect` and `DataQuery`. - -Common Table Expressions are a powerful tool both for optimising complex queries, and for creating recursive queries. This functionality is abstracted in the [`SQLSelect::addWith()`](api:SilverStripe\ORM\Queries\SQLSelect::addWith()) and [`DataQuery::with()`](api:SilverStripe\ORM\DataQuery::with()) methods. - -Older database servers don't support this functionality, and the core implementation is only valid for MySQL, so if you are using this functionality in an open source module or a project that you can't guarantee the type and version of database being used, you should wrap the query in a condition checking if CTEs are supported. You can do that by calling [`DB::get_conn()->supportsCteQueries()`](api:SilverStripe\ORM\Connect\Database::supportsCteQueries()). - -Check out the [SQL Queries](/developer_guides/model/sql_select/#cte) and [Data Model and ORM](/developer_guides/model/data_model_and_orm/#cte) documentation for usage details and examples. - -#### RIGHT JOIN clause {#orm-right-join} - -Abstractions for `RIGHT JOIN` have been added with the new [`DataList::rightJoin()`](api:SilverStripe\ORM\DataList::rightJoin()), [`DataQuery::rightJoin()`](api:SilverStripe\ORM\DataQuery::rightJoin()), and [`SQLConditionalExpression::addRightJoin()`](api:SilverStripe\ORM\Queries\SQLConditionalExpression::addRightJoin()) methods. The signature for these methods is identical to their `LEFT JOIN` and `INNER JOIN` counterparts. - -#### Support for multiple (or no) tables in the FROM clause {#orm-from-clause} - -Previously the `SQLConditionalExpression` abstraction couldn't handle multiple table names being passed into its `FROM` clause. This restriction has been removed, so you can now have queries selecting from multiple tables so long as your database supports it. If you were working around that limitation by adding an explicit comma to subsequent tables in the `FROM` clause for your queries, you'll need to remove the comma. - -You can also now choose to *not* have a `FROM` clause in an `SQLSelect` query, which can be useful for setting up simple queries to be used in unit tests. - -#### Better support for custom column selections in `DataQuery` {#orm-custom-columns} - -When using `DataQuery`, it is possible to use collations and other raw SQL field statements as part of the query's `SELECT` clause. If these have an alias that matches the name of an existing database column, this results in an exception being thrown. - -You can choose to allow those conflicts to be resolved via a [`CASE`](https://dev.mysql.com/doc/refman/en/case.html) statement. In that scenario, if the value in the database column is null, the value for your custom field statement will be used. This is enabled per query by passing `true` to the new [`DataQuery::setAllowCollidingFieldStatements()`](api:SilverStripe\ORM\DataQuery::setAllowCollidingFieldStatements()) method. - -```php -$query = new DataQuery(MyClass::class); -$query->selectField('"my custom title" AS "Title"'); -$query->setAllowCollidingFieldStatements(true); -``` - -### GridField components now work with arbitrary data {#gridfield-arbitrary-data} - -It has historically been difficult to use a `GridField` to display data that isn't represented by `DataObject` records - and even more difficult to edit that data. - -We have removed several barriers to using the `GridField` to display arbitrary data. Descriptive exceptions will be thrown when specific information cannot be dynamically identified, such as which columns to display and what form fields to use when viewing or editing data. Note that these new exceptions do not break backwards compatibility. Any scenario that will throw an exception now would have already done so - but the old exception would not have been sufficiently descriptive to quickly understand what changes are required to get a functioning `GridField`. - -This applies to all `GridFieldComponent` classes in `silverstripe/framework` except for [`GridFieldAddExistingAutocompleter`](api:SilverStripe\Forms\GridField\GridFieldAddExistingAutocompleter) and [`GridFieldLevelup`](api:SilverStripe\Forms\GridField\GridFieldLevelup), which both explicitly require the model class for the associated `GridField` to be a subclass of `DataObject`. - -See [using `GridField` with arbitrary data](/developer_guides/forms/using_gridfield_with_arbitrary_data/) for more information. - -### ErrorPage allowed codes configuration - -By default, all available error codes are present in the dropdown in the CMS. This can be overwhelming and there are a few (looking at you, 418) that can -be confusing. To that end, you can limit the codes in the dropdown with the config value `allowed_error_codes` like so: - -```yml -SilverStripe\ErrorPage\ErrorPage: - allowed_error_codes: - - 400 - - 403 - - 404 - - 500 -``` - -### Create random passwords for new users - -If a new user is created in the security section of the CMS with an empty password, then a strong random password will now be automatically assigned to the user which will not be visible to the person creating the user. The user will need to click the "I've forgotten my password" link in order to receive a password reset email so they can then enter a new password. - -This is a behavioural change from the change introduced in Silverstripe CMS 5.1 where blank passwords were disallowed when creating a new user. This change in 5.1 meant the administrator setting up the user could know what the users password was until the user changed it. Prior to 5.1, blank passwords were allowed though users were unable to log in using them when the default Silverstripe member authenticator was used, thus forcing the user to reset their password. - -This only applies to users created through the security section of the CMS. Users created programatically with an empty password will not have a random password automatically assigned to them. This is the current behaviour and is often used for non-production purposes such as unit-testing. - -### Buttons to select all files and deselect all files {#bulk-action-buttons} - -The files section of the CMS now has buttons to select and deselect all files and folders currently on the screen, which is useful when you want to perform bulk operations. These buttons show at the bottom of the screen in the bulk actions toolbar. The deselect all button also shows the number of currently selected items. As these buttons are on the bulk actions toolbar they are only visible if at least one item has been selected. - -![select all functionality in the CMS](../../_images/asset-admin-select-all.png) - -### Support for validation using `symfony/validator`{#symfony-validator} - -A new [`ConstraintValidator`](api:SilverStripe\Core\Validation\ConstraintValidator) class has been added which provides an abstraction around [`symfony/validator`](https://symfony.com/doc/current/components/validator.html), so you can easily validate values against symfony's validation constraints and get a [`ValidationResult`](api:SilverStripe\ORM\ValidationResult) object as a result. - -```php -use SilverStripe\Core\Validation\ConstraintValidator; - -/** - * @var \Symfony\Component\Validator\Constraint $constraint - * @var \SilverStripe\ORM\ValidationResult $result - */ -$result = ConstraintValidator::validate($valueToValidate, $constraint); -``` - -To test if a URL is valid, for example: - -```php -use SilverStripe\Core\Validation\ConstraintValidator; -use Symfony\Component\Validator\Constraints\Url; - -$isValid = ConstraintValidator::validate($url, new Url())->isValid(); -``` - -You can use most of the constraints listed in Symfony's [supported constraints](https://symfony.com/doc/current/reference/constraints.html) documentation, though note that some of them require additional symfony dependencies. - -We explicitly don't support validation using constraints that rely on `symfony/doctrine`. - -### New searchable dropdown fields {#searchable-dropdown-field} - -A pair of new dropdown form fields have been added which are particularly useful for dropdowns with a large number of options. - -[`SearchableDropdownField`](api:SilverStripe\Forms\SearchableDropdownField) is similar to [`DropdownField`](api:SilverStripe\Forms\DropdownField) which allows selecting a single option, and [`SearchableMultiDropdownField`](api:SilverStripe\Forms\SearchableMultiDropdownField) is similar to [`ListboxField`](api:SilverStripe\Forms\ListboxField) which allows selecting multiple options. - -Both of these fields include a `setIsLazyLoaded()` method which will load a limited number of options at a time using an AJAX request matching what a user has typed in. There are quite a few options to customise these, including optionally using `SearchContext` to power the lazy-loaded search functionality. We encourage you to look at the API documentation for these new classes to see what you can do with them. - -Note that these are both powered by react components, and are only intended to be used within the CMS. If you want to use them on the front-end of your project you will need to provide your own templates and JavaScript implementation for them. - -#### Auto scaffolding of `has_one` relations - -A `SearchableDropdownField` will now be used when automatically scaffolding `has_one` relations on a form in the CMS. Previously a `DropdownField` was used, and when there were over 100 items a [`NumericField`](api:SilverStripe\Forms\NumericField) was used which was not user friendly. - -Previously the [`DBForeignKey.dropdown_field_threshold`](api:SilverStripe\ORM\FieldType\DBForeignKey->dropdown_field_threshold) config property was used as the threshold of the number of options to decide when to switch between auto-scaffolding a `DropdownField` and a `NumericField`. This configuration property is now used as the threshold of the number of options to decide when to start using lazy-loading for the `SearchableDropdownField`. - -### New `UrlField` {#urlfield} - -A new [`UrlField`](api:SilverStripe\Forms\UrlField) has been added which is a subclass of [`TextField`](api:SilverStripe\Forms\TextField) with some additional validation rules. It will validate that the value entered is a valid absolute URL with a protocol and a host. - -### Create file variants with different extensions {#file-variants} - -A low-level API has been added which allows the creation of file variants with a different extension than the original extension. A file variant is a manipulated version of the original file - for example if you resize an image or convert a file to another format, this will generate a variant (leaving the original file intact). - -Some examples of when you might want this are: - -- Generating thumbnails for videos, documents, etc -- Converting images to `.webp` for faster page load times -- Converting documents to `.pdf` so downloaded documents are more portable - -See [file manipulation](/developer_guides/files/file_manipulation/#file-conversion-lowlevel) for details about how to use this new API. - -### More nuanced permissions for `/dev/*` routes {#dev-route-permissions} - -Previously, all `/dev/*` routes registered with [`DevelopmentAdmin`](api:SilverStripe\Dev\DevelopmentAdmin) (for example `/dev/tasks/MyBuildTask`) could only be access by administrator users, and this couldn't be configured. - -Now, all of the controllers which handle these routes that come packaged in a core or supported module have a new `init_permissions` configuration property (e.g. [`TaskRunner.init_permissions`](api:SilverStripe\Dev\TaskRunner->init_permissions)). This new configuration can be used to grant non-administrative users access to these routes. - -You can also now optionally implement a `canView()` method on your `BuildTask` implementations to restrict accessed for specific tasks even further. This means you can grant access to *some* tasks to specific users or groups without granting access to *all* tasks. - -### Generic typehints {#generics} - -Typehints using PHPStan-style generic types have been added to PHPDocs in many areas of the codebase of supported modules. The primary goal of this is to improve the developer experience by correctly reporting to your IDE what types it should expect, for example when looping through a `DataList`. In many cases your IDE will now know what types to expect without needing you to prompt it with [`@var` annotation comments](https://docs.phpdoc.org/3.0/guide/references/phpdoc/tags/var.html). - -> [!NOTE] -> There are some cases where this goal conflicts with having types that are correctly identified by PHPStan itself (or other static analysis tools). For example conditional return types aren't supported as widely in IDEs as generics themselves are, so we opted to not use conditional return types even when those would result in a more accurate type for static analysis tools. - -While you should see some improvements immediately after updating, there are some changes you can make to your own codebase to best use the new generic type hints. - -See [Generics By Examples | PHPStan](https://phpstan.org/blog/generics-by-examples) and [Generics in PHP using PHP DocComments | DEVSENSE](https://blog.devsense.com/2022/generics-in-php-using-phpdoc) for more information about PHP generic typehints. - -#### Generic typehints when returning lists {#generics-return-lists} - -In your project code, any time you return an instance of `SS_List` (such as a `DataList` or `ArrayList`), you can add a generic typehint to declare what kind of object the returned list contains. This example will hint to the IDE that it returns a `DataList` containing `CarouselItem` records: - -```php -use App\Model\CarouselItem; -use SilverStripe\ORM\DataList; - -/** - * @return DataList - */ -function getCarouselItems(): DataList -{ - return CarouselItem::get(); -} -``` - -#### Generic typehints in `Extension` subclasses {#generics-extensions} - -The generic typing on the `Extension` class can be used to tell your IDE what type to expect for the [`$owner`](api:SilverStripe\Core\Extension->owner) property and [`getOwner()`](api:SilverStripe\Core\Extension::getOwner()) method. - -For this to be useful, you need to tell your IDE that your subclass `@extends` the `Extension` class, and tell it what type the owner should be. - -> [!WARNING] -> Don't forget to include a `use` statement, even if you're not explicitly referencing the type anywhere in your actual code. Your IDE needs the `use` statement to resolve the FQCN for the class you're referencing in the typehint. - -```php -namespace App\Extension; - -use SilverStripe\Core\Extension; -use SilverStripe\SiteConfig\SiteConfig; - -/** - * @extends Extension - */ -class SiteConfigExtension extends Extension -{ - // ... -} -``` - -This is also a useful way to indicate to developers at a glance what type(s) the extension is designed to be applied to. - -For example you might have an extension that can apply to any `SiteTree` class, or to `LeftAndMain` and `GridFieldDetailForm_ItemRequest` classes, which you can indicate using a union typehint: `@extends Extension`. - -#### Generic typehints in `ContentController` subclasses {#generics-contentcontroller} - -If you use the [`data()`](api:SilverStripe\CMS\Controllers\ContentController::data()) method or the [`$dataRecord`](api:SilverStripe\CMS\Controllers\ContentController->dataRecord) property in your page controllers, you may find it useful for your IDE to know specifically what page class that data represents. - -For this to work, you need to make sure your base `PageController` class has a `@template` type to extend. Any time you use `@extends`, the class being extended needs to have a `@template` type so that your IDE knows what the type you're passing in is going to be used for. - -```php -namespace { - - use SilverStripe\CMS\Controllers\ContentController; - - /** - * @template T of Page - * @extends ContentController - */ - class PageController extends ContentController - { - // ... - } -} -``` - -```php -namespace App\PageType; - -use PageController; - -/** - * @extends PageController - */ -class HomepageController extends PageController -{ - // ... -} -``` - -### New exception in react forms {#react-forms-exception} - -A [`LogicException`](https://www.php.net/manual/en/class.logicexception.php) is now thrown by [`FormSchema::getSchema()`](api:SilverStripe\Forms\Schema::getSchema()) if a react component was not found for a field type. - -> [!WARNING] -> If your project or a module you're using is currently trying to include a field which doesn't have a react component into a react-rendered form, it will have been silently failing. The form will have been rendering everything except for the field(s) which have no react component. -> -> This will now fail by throwing an exception, which means your form won't render at all until you remove or replace the field(s). - -### Other new features - -- A new [`SiteTree.hide_pagetypes`](api:SilverStripe\CMS\Model\SiteTree->hide_pagetypes) configuration property has been added. Unlike [`SiteTree.hide_ancestor`](api:SilverStripe\CMS\Model\SiteTree->hide_ancestor) (which has [now been deprecated](#api-silverstripe-cms)), this is an array. This allows you to define all page types that should be hidden in a single configuration property in your YAML configuration. -- A new [`DBText.summary_sentence_separators`](api:SilverStripe\ORM\FieldType\DBText->summary_sentence_separators) configuration property has been added. This is used to split sentences in the [`DBText::Summary()`](api:SilverStripe\ORM\FieldType\DBText::Summary()) method. The default configuration value includes `.`, `!`, and `?`. Previously, only `.` was used to split sentences. -- You can now upload [Braille ASCII file format](https://en.wikipedia.org/wiki/Braille_ASCII) (`.brf`) files to the CMS without needing to modify the [allowed file types](/developer_guides/files/allowed_file_types/). -- The assets admin section now respects the [`Upload_Validator.default_max_file_size`](api:SilverStripe\Assets\Upload_Validator->default_max_file_size) configuration if [`AssetAdmin.max_upload_size`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin->max_upload_size) has not been explicitly set for your project. Previously, asset admin would ignore `Upload_Validator.default_max_file_size` and just use the PHP `upload_max_filesize` ini configuration by default. -- Redirector pages with a link to a missing or unpublished page/file will now return a 404 response. You can revert to the previous behaviour by setting the [`RedirectorPageController.missing_redirect_is_404`](api:SilverStripe\CMS\Model\RedirectorPageController->missing_redirect_is_404) configuration property to `false`. -- Developers can now opt in to including a comment on all ORM database queries indicating where they were executed from. See [debugging database queries](/developer_guides/debugging/#debugging-database-queries) for details. - -## API changes - -### `silverstripe/framework` {#api-silverstripe-framework} - -The following legacy subclasses of [`PasswordEncryptor`](api:SilverStripe\Security\PasswordEncryptor) have been deprecated, and will be removed in a future major release. If you are using one of these password encryptors in your projects, we strongly recommend swapping to one that has not been deprecated ([`PasswordEncryptor_Blowfish`](api:SilverStripe\Security\PasswordEncryptor_Blowfish) is the current recommendation, and is the default encryptor for passwords in new installations). Note that changing the password encryptor will also require that all of your members reset their passwords. - -- [`PasswordEncryptor_None`](api:SilverStripe\Security\PasswordEncryptor_None) -- [`PasswordEncryptor_LegacyPHPHash`](api:SilverStripe\Security\PasswordEncryptor_LegacyPHPHash) -- [`PasswordEncryptor_MySQLOldPassword`](api:SilverStripe\Security\PasswordEncryptor_MySQLOldPassword) -- [`PasswordEncryptor_MySQLPassword`](api:SilverStripe\Security\PasswordEncryptor_MySQLPassword) - -The following unused API have been deprecated and will be removed in a future major release: - -- Configuration property [`DataObject.subclass_access`](api:SilverStripe\ORM\DataObject->subclass_access) -- Public static method [`DataObject::disable_subclass_access()`](api:SilverStripe\ORM\DataObject::disable_subclass_access()) -- Public static method [`DataObject::enable_subclass_access()`](api:SilverStripe\ORM\DataObject::enable_subclass_access()) - -The [`ViewableData::getIterator()`](api:SilverStripe\View\ViewableData::getIterator()) method has been deprecated and will be removed in a future major release. - -### `silverstripe/cms` {#api-silverstripe-cms} - -The [`SiteTree.hide_ancestor`](api:SilverStripe\CMS\Model\SiteTree->hide_ancestor) configuration property has been deprecated. Use [`SiteTree.hide_pagetypes`](api:SilverStripe\CMS\Model\SiteTree->hide_pagetypes) instead. - -### `silverstripe/versioned` {#api-silverstripe-versioned} - -The `$having` parameter in the [`Versioned::Versions()`](api:SilverStripe\Versioned\Versioned::Versions()) method has been deprecated. This parameter was never used, and has been removed from the method signature. - -## Bug fixes - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - - -## Change log - -### Security {#changelog-security} - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2023-12-06 [4b1b48704](https://github.com/silverstripe/silverstripe-framework/commit/4b1b487041536f958a68a17400686d16eb77d1bb) Allow permission checks in BulkLoader (Guy Sartorelli) - See [cve-2023-49783](https://www.silverstripe.org/download/security-releases/cve-2023-49783) - - 2023-11-29 [873b721b6](https://github.com/silverstripe/silverstripe-framework/commit/873b721b6b999c5ac189326cf9e1893a4df7d1f8) Don't show or add records the member isn't allowed to (Guy Sartorelli) - See [cve-2023-48714](https://www.silverstripe.org/download/security-releases/cve-2023-48714) - -- silverstripe/admin (2.1.0 -> 2.2.0-beta1) - - 2023-12-06 [9b96bbde](https://github.com/silverstripe/silverstripe-admin/commit/9b96bbde2857c9143ce6266093b6935e0a0e1d2c) Opt in to permission checks in bulk loaders (Guy Sartorelli) - See [cve-2023-49783](https://www.silverstripe.org/download/security-releases/cve-2023-49783) - -- silverstripe/graphql (5.1.0 -> 5.2.0-beta1) - - 2023-10-31 [8e64567](https://github.com/silverstripe/silverstripe-graphql/commit/8e645670aecd6858069f33bc092485d09ee9f734) Ensure canView() checks are run (Steve Boyd) - See [cve-2023-44401](https://www.silverstripe.org/download/security-releases/cve-2023-44401) - -### Features and enhancements {#changelog-features-and-enhancements} - -- silverstripe/recipe-cms (5.1.0 -> 5.2.0-beta1) - - 2024-01-17 [9dbd01e](https://github.com/silverstripe/recipe-cms/commit/9dbd01e7046135c17235e870bc9c787f1ab70c9b) Add generic types (#79) (Guy Sartorelli) - -- silverstripe/assets (2.1.0 -> 2.2.0-beta1) - - 2024-01-25 [3326749](https://github.com/silverstripe/silverstripe-assets/commit/3326749de4848186f6649b692248dce017bf0ae6) Refactor FileIDHelper classes to reduce code duplication (#587) (Guy Sartorelli) - - 2024-01-17 [2ed92f8](https://github.com/silverstripe/silverstripe-assets/commit/2ed92f8f357eb550a8c4a3b2e956ab0c8b54605e) Add generic types (#584) (Guy Sartorelli) - - 2024-01-16 [a40ab50](https://github.com/silverstripe/silverstripe-assets/commit/a40ab5085a7bf2d46f33effa950814e58a014523) Allow file variants with different extensions (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2024-02-20 [528344d1b](https://github.com/silverstripe/silverstripe-framework/commit/528344d1b0c9d02787aed0acca42b022e8c14b98) Allow manipulating eagerloading queries (#11140) (Guy Sartorelli) - - 2024-02-16 [a3ce922f1](https://github.com/silverstripe/silverstripe-framework/commit/a3ce922f1dea4beea797639bd33d10b87eaf8a9f) Allow better subclassing of MoneyField (Dominik Beerbohm) - - 2024-02-16 [8664d2c4e](https://github.com/silverstripe/silverstripe-framework/commit/8664d2c4e9ce10377f1df0b2a5dd759db43da748) Allow all valid true-like ini values (Guy Sartorelli) - - 2024-02-08 [5e53dbcdb](https://github.com/silverstripe/silverstripe-framework/commit/5e53dbcdbcf0cc5361ea808b951829092c03ec27) Add a trace comment for queries in dev mode (#11065) (Guy Sartorelli) - - 2024-02-02 [2e4bc9515](https://github.com/silverstripe/silverstripe-framework/commit/2e4bc9515730b5fc95d163e21682f2cb0082e92e) Add UrlField (Steve Boyd) - - 2024-02-02 [7f7169533](https://github.com/silverstripe/silverstripe-framework/commit/7f716953358118dc2763a6b2217f82e8eb69a92a) Wire up symfony/validator (#11123) (Guy Sartorelli) - - 2024-01-30 [9d335f73d](https://github.com/silverstripe/silverstripe-framework/commit/9d335f73d6853281ef4bd1a66e353dfd13a7b945) HasOneRelationFieldInterface (Steve Boyd) - - 2024-01-17 [357ed7ad7](https://github.com/silverstripe/silverstripe-framework/commit/357ed7ad7e6f9e1b7e7bb939a118a4448dbc4ec7) Add generic types (#11108) (Guy Sartorelli) - - 2023-12-21 [2487c4085](https://github.com/silverstripe/silverstripe-framework/commit/2487c4085d13dd14e1935f496f3f339c6d1ebcc0) Create Requirements::customScriptWithAttributes (#11076) (Finlay Metcalfe) - - 2023-12-18 [e66c1aec0](https://github.com/silverstripe/silverstripe-framework/commit/e66c1aec0614c5c30e16d1c58cd9813aa7d6b4bc) Use SearchableDropdownField for autoscaffolded has_one relationships (Steve Boyd) - - 2023-12-14 [23eca53df](https://github.com/silverstripe/silverstripe-framework/commit/23eca53dfbd81576db6b35946d5872f58ae4526d) SearchableDropdownField (Steve Boyd) - - 2023-12-11 [c405ed6cf](https://github.com/silverstripe/silverstripe-framework/commit/c405ed6cf3977f2502be158432816aa1a06957dd) Allow a single has_one to manage multiple reciprocal has_many (#11084) (Guy Sartorelli) - - 2023-11-22 [fdb329913](https://github.com/silverstripe/silverstripe-framework/commit/fdb329913c6e71f55c88543ed32ef55d0bfde9aa) Throw exception when no react component (Steve Boyd) - - 2023-11-14 [3d64eac12](https://github.com/silverstripe/silverstripe-framework/commit/3d64eac1293a7522646be0fbae54d185a9ea3a72) Make most GridField components work with arbitrary data (Guy Sartorelli) - - 2023-11-14 [5838772b1](https://github.com/silverstripe/silverstripe-framework/commit/5838772b193df35ee7665770ccd32bf19f65355b) Explicitly require DataObject for some gridfield components (Guy Sartorelli) - - 2023-11-13 [b1295af28](https://github.com/silverstripe/silverstripe-framework/commit/b1295af281c042281df01dde4bde0443c5867498) Provide an easy way to filter arbitrary ViewableData in gridfields (Guy Sartorelli) - - 2023-11-03 [b9b891d05](https://github.com/silverstripe/silverstripe-framework/commit/b9b891d05096ccf6370decc8f09500ee9be0e48f) handle sub-urls (Andrew Paxley) - - 2023-11-02 [2cb84e90d](https://github.com/silverstripe/silverstripe-framework/commit/2cb84e90d481e4635168e47061304373b552a78f) remove devbuild bypass (Andrew Paxley) - - 2023-11-02 [5d4327b23](https://github.com/silverstripe/silverstripe-framework/commit/5d4327b23834b4b090ca5e9c8d9aad93497319ed) replace permission checks with canView check on TestDBTask (Andrew Paxley) - - 2023-10-31 [78444a44c](https://github.com/silverstripe/silverstripe-framework/commit/78444a44ca8b77e304537023cf176a640355ba23) add DevAdminConfirmationMiddleware (Andrew Paxley) - - 2023-10-19 [159112ca8](https://github.com/silverstripe/silverstripe-framework/commit/159112ca8b5e3c02e6c31dff54851a76f13465bc) Generate a random password if a blank password is entered (Steve Boyd) - - 2023-10-03 [a0cbebb2d](https://github.com/silverstripe/silverstripe-framework/commit/a0cbebb2d1d8459284343132340d5180e0b69213) allow stacked messages on FormMessage (Andrew Paxley) - - 2023-10-02 [44b170098](https://github.com/silverstripe/silverstripe-framework/commit/44b170098ea2ff5f361ec01577b570c75c0d85f1) Add ORM abstraction for "WITH" clauses (#10943) (Guy Sartorelli) - - 2023-09-27 [7d5c62ed5](https://github.com/silverstripe/silverstripe-framework/commit/7d5c62ed5f0cbdb0f64ecaecf3ed245d8dc40d78) Add rightJoin method to DataList (#10961) (Guy Sartorelli) - - 2023-09-24 [fac335673](https://github.com/silverstripe/silverstripe-framework/commit/fac33567390b9a58a700820a1de5278f4a3e4937) Enable allowing collisions for field statements (#10957) (Guy Sartorelli) - - 2023-09-24 [bbc0295f8](https://github.com/silverstripe/silverstripe-framework/commit/bbc0295f86dc23ab590e3e1455db51cc3826cec8) Add abstraction for sql RIGHT JOIN (#10954) (Guy Sartorelli) - - 2023-09-24 [b28749db4](https://github.com/silverstripe/silverstripe-framework/commit/b28749db440a4ab0d859e1c7284155c18b86ff4e) Allow selecting multiple (or no) tables (#10953) (Guy Sartorelli) - - 2023-09-19 [b3b1d0761](https://github.com/silverstripe/silverstripe-framework/commit/b3b1d07616b3bdb96f27c632f1511d00ec45c532) Deprecate old password encryptors (#10948) (Guy Sartorelli) - - 2023-08-04 [76da701b6](https://github.com/silverstripe/silverstripe-framework/commit/76da701b6b356214cbc1b3f3f0c8e9fd19ba26a6) Add sql UNION abstraction (Guy Sartorelli) - - 2023-07-12 [3244b44a5](https://github.com/silverstripe/silverstripe-framework/commit/3244b44a54aa6b227617bc1177449dac742ad64a) add permissions for build tasks (Andrew Paxley) - - 2021-12-04 [bf629dfab](https://github.com/silverstripe/silverstripe-framework/commit/bf629dfabd0587447384bda4b997760478b302a0) Split sentences by configurable punctuation for summary (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-26 [41f8bd3f](https://github.com/silverstripe/silverstripe-admin/commit/41f8bd3ffde5d7875e6edc007b877348bb6d0982) Refactor FormBuilderModal and split up the Modal into its own component (#1631) (Maxime Rainville) - - 2024-02-13 [6d183e4d](https://github.com/silverstripe/silverstripe-admin/commit/6d183e4d38e0e91f8f804c845c372d34d9488c8a) Add `extra_requirements_i18n` config to `LeftAndMain` (#1678) (Guy Sartorelli) - - 2024-01-29 [73e30a0f](https://github.com/silverstripe/silverstripe-admin/commit/73e30a0fbb680bd719e7c8830de9eaf12c02309d) Add jsonSuccess() (Steve Boyd) - - 2024-01-25 [c16fb0f3](https://github.com/silverstripe/silverstripe-admin/commit/c16fb0f3c11ff25884586926554e912aaa44025f) Refactor sslink slightly for easier maintenance (#1661) (Guy Sartorelli) - - 2024-01-24 [493909d0](https://github.com/silverstripe/silverstripe-admin/commit/493909d07df2878ce248345dc7429c12f79cd0b1) Remove background form description and unclickable fields (#1652) (Sabina Talipova) - - 2024-01-17 [75b51fc1](https://github.com/silverstripe/silverstripe-admin/commit/75b51fc19ca6d124fc848782b6958dfe92cb1a1f) Add generic types (#1648) (Guy Sartorelli) - - 2023-12-13 [c63d0136](https://github.com/silverstripe/silverstripe-admin/commit/c63d01365c92b263483e93b080a5dd49cc3c5f9b) SearchableDropdownField (Steve Boyd) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-18 [badbc4fd](https://github.com/silverstripe/silverstripe-asset-admin/commit/badbc4fddd20f6c917fea8d96b6e172af837f60d) Add generic types (#1433) (Guy Sartorelli) - - 2024-01-08 [a144ac18](https://github.com/silverstripe/silverstripe-asset-admin/commit/a144ac1884fe04d8521eddebe8ce992ef74057c3) Let AssetAdmin default to Upload_Validator default upload limits (#1430) (Guy Sartorelli) - - 2023-12-13 [32480e20](https://github.com/silverstripe/silverstripe-asset-admin/commit/32480e20367abe3a8ec9ff5349f246e9088f4ff8) Use SearchableMultiDropdownField (Steve Boyd) - - 2023-11-07 [b160b1c6](https://github.com/silverstripe/silverstripe-asset-admin/commit/b160b1c6622ccb041bdcfec19c863efef0b15f93) Select all and clear all functionality (Steve Boyd) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-17 [5b75cb2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5b75cb2f51f77c62cced3c9e649eca2a4e072c63) Add generic types (#291) (Guy Sartorelli) - - 2023-11-07 [1c20dbf](https://github.com/silverstripe/silverstripe-campaign-admin/commit/1c20dbfa9db78df6ea1f23b1c65c005d56c2dec9) More Actions button is hidden if Campaign is published (#288) (Sabina Talipova) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-18 [ad08d76](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ad08d7632c4db63d59f361f92002d2a87af102f6) Add generic types (#319) (Guy Sartorelli) - -- silverstripe/cms (5.1.0 -> 5.2.0-beta1) - - 2024-01-18 [3847b3ea](https://github.com/silverstripe/silverstripe-cms/commit/3847b3ea19529f08f313891c5ec5c015e407ec8a) Add generic types (#2914) (Guy Sartorelli) - - 2024-01-08 [a5d2b3bb](https://github.com/silverstripe/silverstripe-cms/commit/a5d2b3bb32fc9709e81b2087d0e013e4bcdc4206) Return 404 when redirector page wants to link to missing page (#2663) (Marco Hermo) - - 2023-12-13 [3d94a0e3](https://github.com/silverstripe/silverstripe-cms/commit/3d94a0e3d002da4ba76e677ff175a5907e887699) Use SearchableMultiDropdownField to select Members (Steve Boyd) - -- silverstripe/errorpage (2.1.0 -> 2.2.0-beta1) - - 2024-01-17 [93f6715](https://github.com/silverstripe/silverstripe-errorpage/commit/93f6715ca3d1457913db5e74351d4bf9784c0c4c) Add generic types (#95) (Guy Sartorelli) - - 2023-09-25 [b4f0088](https://github.com/silverstripe/silverstripe-errorpage/commit/b4f00881f9b7bef724d42f9a037df196ecc888f1) add config for allowed_error_codes (Andrew Paxley) - - 2023-09-25 [9e1cde4](https://github.com/silverstripe/silverstripe-errorpage/commit/9e1cde4593601f89f132d5df87dd8613f8a6a641) additional error codes, tidy translations (Andrew Paxley) - -- silverstripe/siteconfig (5.1.0 -> 5.2.0-beta1) - - 2023-12-18 [37e8a4f3](https://github.com/silverstripe/silverstripe-siteconfig/commit/37e8a4f3ac5065755726b96b9e08cdcdcb326e47) Use SearchableMultiDropdownField (Steve Boyd) - - 2023-10-19 [7ab6480b](https://github.com/silverstripe/silverstripe-siteconfig/commit/7ab6480b3e0058c6d4903e629bba32a567e7d59b) Add "only these users" option to siteconfig access settings (Guy Sartorelli) - -- silverstripe/versioned (2.1.0 -> 2.2.0-beta1) - - 2024-01-19 [96736c2](https://github.com/silverstripe/silverstripe-versioned/commit/96736c2aafd52fbe0138e797e06df66cc17217bb) Add generic types (#431) (Guy Sartorelli) - - 2023-12-12 [1e73253](https://github.com/silverstripe/silverstripe-versioned/commit/1e7325381bdaf16d05c09e3b24d0995b58caccf7) Respect new has_one config (#427) (Guy Sartorelli) - - 2023-11-03 [044bdb0](https://github.com/silverstripe/silverstripe-versioned/commit/044bdb06913dba7ed8d540dcf420221fea586b52) add CAN_DEV_BUILD to non_live_permissions (Andrew Paxley) - - 2021-02-26 [1735fd6](https://github.com/silverstripe/silverstripe-versioned/commit/1735fd6f075c7a9373475555c4b99d41c329b77a) Stages differ recursive. (Danaë Miller-Clendon) - -- silverstripe/graphql (5.1.0 -> 5.2.0-beta1) - - 2024-01-17 [8fd1bdc](https://github.com/silverstripe/silverstripe-graphql/commit/8fd1bdc4a5f92c6889e27ad77be781f1727e5c13) Add generic types (#567) (Guy Sartorelli) - - 2023-10-31 [b47487d](https://github.com/silverstripe/silverstripe-graphql/commit/b47487df198180f8ac9a37ebfacd0987953fb4ff) use init_permissions to match core PR (Andrew Paxley) - -- silverstripe/session-manager (2.1.0 -> 2.2.0-beta1) - - 2024-01-18 [94c0603](https://github.com/silverstripe/silverstripe-session-manager/commit/94c0603894e9f4c833ae7f8892bafdf2ced0e25a) Add generic types (#177) (Guy Sartorelli) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-beta1) - - 2024-01-18 [3a820bd](https://github.com/silverstripe/silverstripe-login-forms/commit/3a820bdf746c717fbf4a1596396876427128e143) Add generic types (#162) (Guy Sartorelli) - -- silverstripe/iframe (3.1.0 -> 3.2.0-beta1) - - 2024-01-23 [53008d0](https://github.com/silverstripe/silverstripe-iframe/commit/53008d047323a78c3103e26400ba71ebadeb58b4) Add generic types (#77) (Guy Sartorelli) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-beta1) - - 2024-01-23 [556772b](https://github.com/silverstripe/silverstripe-tagfield/commit/556772b7be1620d034dbd0ac837b138d3b80e593) Add generic types (#277) (Guy Sartorelli) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0-beta1) - - 2024-01-23 [336d1c7](https://github.com/silverstripe/silverstripe-taxonomy/commit/336d1c768e83ddcd0b8612702a878ee77cf18a91) Add generic types (#102) (Guy Sartorelli) - -- silverstripe/blog (4.1.0 -> 4.2.0-beta1) - - 2024-01-18 [3b80922](https://github.com/silverstripe/silverstripe-blog/commit/3b8092272be26bf34126f15dc6cfbef9eed6f075) Add generic types (#739) (Guy Sartorelli) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-beta1) - - 2024-01-18 [77aba75](https://github.com/silverstripe/silverstripe-spamprotection/commit/77aba75ffae109ba97e9903900031e48b4aec76c) Add generic types (#108) (Guy Sartorelli) - -- silverstripe/contentreview (5.1.0 -> 5.2.0-beta1) - - 2024-01-18 [f04e9fa](https://github.com/silverstripe/silverstripe-contentreview/commit/f04e9fa4cabe1daeec5c9589ab0a6516dda34704) Add generic types (#220) (Guy Sartorelli) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-beta1) - - 2024-01-18 [b78b1af](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/b78b1af802ad797a23cdb1b64e3210cc10dedc87) Add generic types (#222) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-beta1) - - 2024-01-23 [65ec116](https://github.com/symbiote/silverstripe-advancedworkflow/commit/65ec11693a111b280a17d3b8ef7ab6a0af947334) Add generic types (#511) (Guy Sartorelli) - -- silverstripe/userforms (6.1.0 -> 6.2.0-beta1) - - 2024-01-18 [ca972ff](https://github.com/silverstripe/silverstripe-userforms/commit/ca972ff5f2fa1d059a542b0afb3921ae285b9ef1) Add generic types (#1261) (Guy Sartorelli) - - 2023-12-20 [5bcbad6](https://github.com/silverstripe/silverstripe-userforms/commit/5bcbad6a79e3df41ba9b1ef150fb578a80e1ec6c) Remove LastEdited from summary_fields (#1173) (Bauke) - -- silverstripe/externallinks (3.1.0 -> 3.2.0-beta1) - - 2024-01-23 [e8bdf12](https://github.com/silverstripe/silverstripe-externallinks/commit/e8bdf1203d7b1c2c8c4970400f41fc34759fe286) Add generic types (#117) (Guy Sartorelli) - - 2023-11-08 [8797f1f](https://github.com/silverstripe/silverstripe-externallinks/commit/8797f1f41e1a58e6866351a6eb20ebc1a6e24a88) Restrict access to getJobStatus execution (#113) (Sabina Talipova) - -- silverstripe/securityreport (3.0.0 -> 3.1.0-beta1) - - 2024-01-18 [2e8f342](https://github.com/silverstripe/silverstripe-securityreport/commit/2e8f342f6a0393c29dc2b8df7fbe9110e370599b) Add generic types (#72) (Guy Sartorelli) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0-beta1) - - 2024-01-18 [00ca457](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/00ca45728cc07f06c51c5fb0238b9b9dbf74785d) Add generic types (#76) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.0.1 -> 3.1.0-beta1) - - 2023-06-14 [32cccc9](https://github.com/bringyourownideas/silverstripe-maintenance/commit/32cccc9e9ebdc92c0c04b4509b08b1e4a773d742) Update translations (Steve Boyd) - -- bringyourownideas/silverstripe-composer-update-checker (4.0.0 -> 4.1.0-beta1) - - 2023-06-14 [3719b52](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/3719b52a740e6aed79402f4ab75046ebc9447d33) Update translations (Steve Boyd) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0-beta1) - - 2024-01-18 [b7b4ff8](https://github.com/silverstripe/silverstripe-versionfeed/commit/b7b4ff8fbd312871c8f63b226d310d5c39d459d3) Add generic types (#94) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-beta1) - - 2024-01-29 [7351e65](https://github.com/silverstripe/silverstripe-elemental/commit/7351e65ecb8b08702c05056a2a2190d83ffcd78d) Versioned badge to elements (Sabina Talipova) - - 2024-01-22 [b25ed5f](https://github.com/silverstripe/silverstripe-elemental/commit/b25ed5f761b514b38418287993ce49d506ddb1af) Add generic types (#1131) (Guy Sartorelli) - - 2024-01-19 [bf8d867](https://github.com/silverstripe/silverstripe-elemental/commit/bf8d867ede2cd6d2ad14b37d02140c6b85c653f7) BaseElement::getType() use static::class instead of `__CLASS__` for better defaults (Christopher Darling) - -- silverstripe/auditor (3.0.0 -> 3.1.0-beta1) - - 2024-01-18 [8c847f5](https://github.com/silverstripe/silverstripe-auditor/commit/8c847f59c6381a1f8cee5584c71f58aaf9db740e) Add generic types (#67) (Guy Sartorelli) - -- silverstripe/registry (3.1.0 -> 3.2.0-beta1) - - 2024-01-23 [a42be22](https://github.com/silverstripe/silverstripe-registry/commit/a42be22b2798c3215a6a4869bf5a4f38d7c4c0ed) Add generic types (#90) (Guy Sartorelli) - -- silverstripe/mfa (5.1.0 -> 5.2.0-beta1) - - 2024-01-19 [97e6c80](https://github.com/silverstripe/silverstripe-mfa/commit/97e6c80f4514e5a083ec576ab15b8735147adc7e) Add generic types (#524) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-beta1) - - 2024-01-18 [6fb435f](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/6fb435f88dad4d5d8bc9b96e6b9afc911223eb93) Add generic types (#94) (Guy Sartorelli) - -- silverstripe/ldap (2.1.0 -> 2.2.0-beta1) - - 2024-01-19 [894f204](https://github.com/silverstripe/silverstripe-ldap/commit/894f204e433dc4119ea483ce806fe706d43f93bb) Add generic types (#67) (Guy Sartorelli) - -- silverstripe/textextraction (4.0.0 -> 4.1.0-beta1) - - 2024-01-22 [cc43a12](https://github.com/silverstripe/silverstripe-textextraction/commit/cc43a120c8b2033009c10a67d0af53337c8e0929) Add generic types (#86) (Guy Sartorelli) - -- silverstripe/realme (5.2.0 -> 5.3.0-beta1) - - 2024-01-18 [5971936](https://github.com/silverstripe/silverstripe-realme/commit/59719369503ba98d4696c41453cf5a7626cdea77) Add generic types (#128) (Guy Sartorelli) - -- silverstripe/subsites (3.1.0 -> 3.2.0-beta1) - - 2024-01-23 [11a941f](https://github.com/silverstripe/silverstripe-subsites/commit/11a941f63784d5e4b60667fcd79977d4269c4486) Add generic types (#554) (Guy Sartorelli) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0-beta1) - - 2024-01-17 [dd5f929](https://github.com/silverstripe/silverstripe-lumberjack/commit/dd5f929b2b829b150aef312031b86e835bceb80b) Add generic types (#137) (Guy Sartorelli) - -- silverstripe/staticpublishqueue (6.1.0 -> 6.2.0-beta1) - - 2024-01-19 [192ea76](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/192ea76dca70f303a5ddd39d55e377f95cfb6119) Add generic types (#182) (Guy Sartorelli) - - 2023-12-22 [50519cd](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/50519cd04249e4d023623b820507c1a19a85dcfa) Extension points for FilesystemPublisher. (Mojmir Fendek) - - 2023-11-30 [ebde61e](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/ebde61e72a0df37ac19cee78d690c6458f4545ef) Configuration property for disallowed status codes (#178) (Guy Sartorelli) - -- cwp/agency-extensions (3.1.0 -> 3.2.0-beta1) - - 2024-01-22 [0dc9d10](https://github.com/silverstripe/cwp-agencyextensions/commit/0dc9d10d01ae400b053e17676fd467c1bfb9d055) Add generic types (#110) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2024-01-23 [78fa8ba](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/78fa8ba747a7edc66e7524441f4c3adcc182791e) Make toast message "Records reordered." localisable (#321) (Tom Oude Rengerink) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0-beta1) - - 2024-01-23 [9cf0162](https://github.com/symbiote/silverstripe-queuedjobs/commit/9cf01629d66dfdb8d6129d5b4d6761bcd60f3f43) Add generic types (#415) (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0-beta1) - - 2024-01-12 [b55dcf4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b55dcf49692ef41bec590e4f9b8544eadcd3f1d3) Add generic types (Guy Sartorelli) - - 2023-06-14 [ef3fed4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ef3fed434b6113f8f697097548960d26973078cf) Update translations (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-beta1) - - 2024-02-20 [87e8c17](https://github.com/silverstripe/silverstripe-linkfield/commit/87e8c178ed6ac1460b7f7f0b7c4c853fde7d766b) Avoid potential data disclosure (#233) (Guy Sartorelli) - - 2024-02-15 [c75615f](https://github.com/silverstripe/silverstripe-linkfield/commit/c75615f93d5fb3c899e2b9ee40e8528614e0a644) More standardisation (#223) (Guy Sartorelli) - - 2024-02-14 [3e97f0d](https://github.com/silverstripe/silverstripe-linkfield/commit/3e97f0d121e60a7cbc446df46a7b7398f6b1e43f) Better versioned history (Steve Boyd) - - 2024-02-13 [0c0cdaa](https://github.com/silverstripe/silverstripe-linkfield/commit/0c0cdaaee4dccf1c9b34ac7515b1fd7f6f8cda2d) Globally disallow link types (Steve Boyd) - - 2024-02-13 [f3de6ac](https://github.com/silverstripe/silverstripe-linkfield/commit/f3de6ac0672cebd60d0929b9a55e517675017f62) LinkField Behat tests (#201) (Sabina Talipova) - - 2024-02-13 [5d604a7](https://github.com/silverstripe/silverstripe-linkfield/commit/5d604a775fd9a8a31943538bb4eb5d1d1732984f) Icon alignment (Sabina Talipova) - - 2024-02-12 [fac2d31](https://github.com/silverstripe/silverstripe-linkfield/commit/fac2d310863bbc939e44af3d126eb4a283ef65d1) Improve keyboard support (Steve Boyd) - - 2024-02-12 [05c7b42](https://github.com/silverstripe/silverstripe-linkfield/commit/05c7b42065f64b484a265ef26daa5efb745dc289) Remove unused code (Guy Sartorelli) - - 2024-02-12 [28b833f](https://github.com/silverstripe/silverstripe-linkfield/commit/28b833fc4e009718a44ae3e4f154ee059357820f) Standardise naming and improve code quality (Guy Sartorelli) - - 2024-02-12 [51acf4f](https://github.com/silverstripe/silverstripe-linkfield/commit/51acf4f1fe6d9740a6694524df70665469882724) Add strong typing where possible (Guy Sartorelli) - - 2024-02-12 [d334cbc](https://github.com/silverstripe/silverstripe-linkfield/commit/d334cbc9fa87198130ac91672e3d6de313ab8e27) Move LeftAndMain requirements into config (Guy Sartorelli) - - 2024-02-12 [04ae65c](https://github.com/silverstripe/silverstripe-linkfield/commit/04ae65c3656e44f15a0866873191f06283f94e15) Allow developers to exclude LinkText field (#215) (Guy Sartorelli) - - 2024-02-12 [afef74f](https://github.com/silverstripe/silverstripe-linkfield/commit/afef74f1c62e6c33b8cf357d19beb5fb34ebde12) Refactor link field traits into abstract class (Guy Sartorelli) - - 2024-02-08 [4e43d54](https://github.com/silverstripe/silverstripe-linkfield/commit/4e43d547016193c223a504b949aed9178cfb6dbf) Rename and move Title field (Steve Boyd) - - 2024-02-06 [0099636](https://github.com/silverstripe/silverstripe-linkfield/commit/00996361724c73e0010006d587db99a6c86f02b2) Improved validation (Steve Boyd) - - 2024-01-31 [5155f17](https://github.com/silverstripe/silverstripe-linkfield/commit/5155f178808613bdca30e9dd681eea9bc7642ad0) Set Published button dirty state when Link is an unpublished state (Steve Boyd) - - 2024-01-29 [8fbe94b](https://github.com/silverstripe/silverstripe-linkfield/commit/8fbe94baf0a9f27d9ccb9d8a613821bae8198a17) Standardise API responses (Steve Boyd) - - 2024-01-29 [836d665](https://github.com/silverstripe/silverstripe-linkfield/commit/836d665540367f29a28669ac794018c921490661) Improve hover active and focus state styling (Steve Boyd) - - 2024-01-25 [4ba8267](https://github.com/silverstripe/silverstripe-linkfield/commit/4ba82670e5a827933f069e53a5e44a2b9d30e85a) Add disabled field state (Steve Boyd) - - 2024-01-24 [0c01fcf](https://github.com/silverstripe/silverstripe-linkfield/commit/0c01fcf461c50af5fab464c196bbf35d4ca04090) Hide the open in new window checkbox from phone and email links (Steve Boyd) - - 2024-01-24 [9bb3a1a](https://github.com/silverstripe/silverstripe-linkfield/commit/9bb3a1a4791f9762d7eede88336b28057fc104ed) Add Readonly field status (#172) (Sabina Talipova) - - 2024-01-24 [e6f7705](https://github.com/silverstripe/silverstripe-linkfield/commit/e6f7705c596fe486ad9d793c25c3bd59ec380887) Confirm user wishes to delete link (Steve Boyd) - - 2024-01-18 [2927d50](https://github.com/silverstripe/silverstripe-linkfield/commit/2927d505711890c503560a66eb755e05586dd8a8) Show a cannot create message when types is empty (Steve Boyd) - - 2024-01-17 [343c3d2](https://github.com/silverstripe/silverstripe-linkfield/commit/343c3d2292ff661eff855d38b52dcbd27525d0e6) MutliLinkField sorting (Steve Boyd) - - 2024-01-16 [eb88dd0](https://github.com/silverstripe/silverstripe-linkfield/commit/eb88dd0398a1188ef8c9afa7fa01fa1630d38d44) Join endpoint path segments (Steve Boyd) - - 2024-01-11 [6644853](https://github.com/silverstripe/silverstripe-linkfield/commit/6644853cf998f38f10992a2d8f1ca688cd1a34d9) Link type icon (Sabina Talipova) - - 2024-01-11 [912816c](https://github.com/silverstripe/silverstripe-linkfield/commit/912816cea9276147143ea26cf7f4cd388e2de2c8) Add sorting by link type (Sabina Talipova) - - 2024-01-10 [09ca349](https://github.com/silverstripe/silverstripe-linkfield/commit/09ca3496832dcc4485103d042c44fd7bf4962f68) Show loading component during ajax read requests (Steve Boyd) - - 2024-01-10 [9d3a6f0](https://github.com/silverstripe/silverstripe-linkfield/commit/9d3a6f0e4e914a07526a907c83f5e4edbaecaae8) Gracefully handle AJAX failures (Steve Boyd) - - 2024-01-10 [c563394](https://github.com/silverstripe/silverstripe-linkfield/commit/c563394eedce2017c88f620427a41524a16a2720) Show save record first text on unsaved owners (Steve Boyd) - - 2024-01-09 [0ea34be](https://github.com/silverstripe/silverstripe-linkfield/commit/0ea34be7b05a43c2451dba7aef2f8963ea55a948) Used on table extension (Steve Boyd) - - 2024-01-09 [2086a38](https://github.com/silverstripe/silverstripe-linkfield/commit/2086a38dc9a4c534f441e783c6778ba1d7fac964) Change clear text to delete (Steve Boyd) - - 2023-12-22 [279cfb5](https://github.com/silverstripe/silverstripe-linkfield/commit/279cfb585dcbe4ad6dc8031877808420e5cf0416) Save relations on link creation (Steve Boyd) - - 2023-12-19 [ea28fe1](https://github.com/silverstripe/silverstripe-linkfield/commit/ea28fe199ecc14c78ff406a48cdd27d726f11930) Remove LinkFieldController from cms menu (Steve Boyd) - - 2023-12-14 [84824c7](https://github.com/silverstripe/silverstripe-linkfield/commit/84824c7acf4318f85b6a2fe52dfa63aad3e154b2) Allowed link types (Sabina Talipova) - - 2023-12-11 [ffb1ae0](https://github.com/silverstripe/silverstripe-linkfield/commit/ffb1ae021b0f47d2260ec4f7bb85eab4e5361d5c) Add versioning to Link (Steve Boyd) - - 2023-12-05 [5e35a84](https://github.com/silverstripe/silverstripe-linkfield/commit/5e35a84b13a92ba9d51f23559a32621d9590a41f) Add permission methods based on owner (Guy Sartorelli) - - 2023-11-30 [1e1083d](https://github.com/silverstripe/silverstripe-linkfield/commit/1e1083d96badd101f8f37e18f182836bd655a7f0) Default link title for each link type (Sabina Talipova) - - 2023-11-28 [1be5f0d](https://github.com/silverstripe/silverstripe-linkfield/commit/1be5f0d456f2296bf460960c51482e0ff1af2761) Add MultiLinkField for managing many-type relations (Guy Sartorelli) - - 2023-11-28 [acb9c84](https://github.com/silverstripe/silverstripe-linkfield/commit/acb9c84297dda1825541c0d6512b7eae349cf3c1) Refactor LinkField in preparation for MultiLinkField (Guy Sartorelli) - - 2023-11-14 [64f5829](https://github.com/silverstripe/silverstripe-linkfield/commit/64f58293d0eaa06b1d792004904ba2a3b51f7fe6) Add localization support (#119) (Sabina Talipova) - - 2023-11-06 [6035de8](https://github.com/silverstripe/silverstripe-linkfield/commit/6035de8c0326c3f34d479659bf0cf21bce13d10b) LinkFieldController to handle FormSchema (Steve Boyd) - - 2023-09-26 [345c828](https://github.com/silverstripe/silverstripe-linkfield/commit/345c828ab1d65cdf06febf5cfc950c46ed11719f) Allow projects to define their own subclass templates (Steve Boyd) - - 2023-06-21 [d667d94](https://github.com/silverstripe/silverstripe-linkfield/commit/d667d94f83437fb5242b9b472d2da1406582b5d1) Query string support. (Mojmir Fendek) - - 2023-06-20 [6b69001](https://github.com/silverstripe/silverstripe-linkfield/commit/6b69001799889e378cc3c95d64cea90562766aa8) New extension points added (JSON field). (Mojmir Fendek) - - 2023-06-14 [3478f28](https://github.com/silverstripe/silverstripe-linkfield/commit/3478f28c227f2647970ab16e5135bb514751258c) Extension points for link model manipulation. (Mojmir Fendek) - - 2023-06-07 [77c7319](https://github.com/silverstripe/silverstripe-linkfield/commit/77c7319142168da70c8ca2da607c5c24c63aaeae) Allow form validation. (Mojmir Fendek) - - 2023-06-06 [3041730](https://github.com/silverstripe/silverstripe-linkfield/commit/3041730c055a243a98cdb663bfa1cbd3a917a00c) Insert / edit link button label. (Mojmir Fendek) - - 2023-06-06 [d425b33](https://github.com/silverstripe/silverstripe-linkfield/commit/d425b33513a5b2fa14a2793d3639eb90fd24964c) Allow model-level for customisation. (Mojmir Fendek) - - 2023-06-05 [6e8183a](https://github.com/silverstripe/silverstripe-linkfield/commit/6e8183ac9c1b8e1aa7726cdd071653a8620c8ee8) Extensibility improvements for link migration task. (Mojmir Fendek) - - 2021-11-11 [3e0f699](https://github.com/silverstripe/silverstripe-linkfield/commit/3e0f6997c53e6bea11681ac8926d9483a830b0a1) Empty link title fallbacks to Page. (#37) (Mojmir Fendek) - -### Bugfixes {#changelog-bugfixes} - -- silverstripe/vendor-plugin (2.0.1 -> 2.0.2) - - 2023-10-10 [175505b](https://github.com/silverstripe/vendor-plugin/commit/175505bf7286a02e47a3cba087d026f8b110b3e3) Method CopyMethod::copy as deprecated (Sabina Talipova) - -- silverstripe/assets (2.1.0 -> 2.2.0-beta1) - - 2024-01-18 [d9d5dac](https://github.com/silverstripe/silverstripe-assets/commit/d9d5dac314e01e3de4298dca0eb10af3b2f0f97e) Pass variant args into array_merge correctly (Guy Sartorelli) - - 2024-01-08 [46e07eb](https://github.com/silverstripe/silverstripe-assets/commit/46e07eb8ceddfb3fbe4fadc81a56f42f1932739f) Ensure the setAllowedMaxFileSize wont allow config values to exceed PHP limits (#469) (Nick) - - 2023-12-19 [6e3fd80](https://github.com/silverstripe/silverstripe-assets/commit/6e3fd806ca4a95b4df3f33cd7c5963b8ed842b04) Allow inconclusive mimetypes (#582) (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2024-02-14 [d33332cb9](https://github.com/silverstripe/silverstripe-framework/commit/d33332cb9e7aededfb73a3cbf362490ee1e77ca4) Add eagerloaded data to ALL relevant lists (#11139) (Guy Sartorelli) - - 2024-02-12 [b56e771ed](https://github.com/silverstripe/silverstripe-framework/commit/b56e771ed5804fe1d6fd54aebd60051988e389ad) add missing rawurlencode (#11105) (Thomas Portelange) - - 2024-02-08 [e87c72470](https://github.com/silverstripe/silverstripe-framework/commit/e87c7247004ce6d5a5760eb6dade4e68043982c1) Don't assume mysql handle is an object (#11129) (Guy Sartorelli) - - 2024-02-07 [1dd81488a](https://github.com/silverstripe/silverstripe-framework/commit/1dd81488aace798dc196610e75240b452e392ce9) fix unknown table (Thomas Portelange) - - 2024-01-24 [afd53d1d6](https://github.com/silverstripe/silverstripe-framework/commit/afd53d1d6a39204fe7cc8867b1a91742c3d525bc) HTMLEditorField::setRows with Elemental (Sabina Talipova) - - 2024-01-11 [ff3a6f72d](https://github.com/silverstripe/silverstripe-framework/commit/ff3a6f72df39cca2bf40e46c10a6a9e20b39f78f) HTMLEditorField::setRows minimal hieght (#10965) (Sabina Talipova) - - 2024-01-09 [9bfb731bc](https://github.com/silverstripe/silverstripe-framework/commit/9bfb731bc3a36deae2147d830aa8485584ff2f17) Handle polymorphic relationships that use Owner instead of Parent (Steve Boyd) - - 2024-01-08 [e456de11b](https://github.com/silverstripe/silverstripe-framework/commit/e456de11b03f856599b9fc09c276fdf07ebb2541) Fix clobbering of the upload size validation (#10059) (Nick) - - 2023-12-19 [7dc1a7a12](https://github.com/silverstripe/silverstripe-framework/commit/7dc1a7a12b5e14d8ed1bfc93a6e3fac5dbb9aa4f) Correctly mark ConfirmedPasswordField children as required (Guy Sartorelli) - - 2023-12-13 [dd3a0dba2](https://github.com/silverstripe/silverstripe-framework/commit/dd3a0dba242d3c826614c4d87a1808ea2bac5769) Don't break the page if password recover email fails to send (Guy Sartorelli) - - 2023-12-13 [446810bc5](https://github.com/silverstripe/silverstripe-framework/commit/446810bc5e38a9319a72f21464c52f5502d5db56) Allow new password to save even if there's an error sending email (Guy Sartorelli) - - 2023-12-04 [40b888eaf](https://github.com/silverstripe/silverstripe-framework/commit/40b888eaf30f6c6899134f7fcbfb0705987516e1) UnsavedRelationList::last() sometimes returned an ID instead of an item (Loz Calver) - - 2023-12-04 [e28af9a5a](https://github.com/silverstripe/silverstripe-framework/commit/e28af9a5a7d41fe6bf240a3f51165f95acc5a98a) UnsavedRelationList first/last to return null if list is empty (fixes #11083) (Loz Calver) - - 2023-11-29 [6d903848a](https://github.com/silverstripe/silverstripe-framework/commit/6d903848ab2ce46875c7bca8cb67fed77b29a132) Don't replace config manifest for nested kernels (#11082) (Guy Sartorelli) - - 2023-11-21 [7eab49f85](https://github.com/silverstripe/silverstripe-framework/commit/7eab49f850070e1a2df5f7a2e38baad031aa1d54) Ensure environment is checked before enabling deprecations (#11055) (Guy Sartorelli) - - 2023-11-16 [05f1d9ab8](https://github.com/silverstripe/silverstripe-framework/commit/05f1d9ab863060fd2e7c66753f782e7cae2530c8) Make deprecation enabled check faster (Guy Sartorelli) - - 2023-11-13 [4dbbf04ba](https://github.com/silverstripe/silverstripe-framework/commit/4dbbf04ba5a68e68f2241380edc0e12145f0075c) Add extraEmptyValues to TreedropdownField (Steve Boyd) - - 2023-10-31 [d883719c1](https://github.com/silverstripe/silverstripe-framework/commit/d883719c16075412640e623557a2df4275965de1) ModelAdmin toast elements (Sabina Talipova) - - 2023-09-25 [55e42683f](https://github.com/silverstripe/silverstripe-framework/commit/55e42683f80d1a62c966917f262fbd05b33495b9) Match multi-line JOIN statements (#10960) (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-26 [60563dbd](https://github.com/silverstripe/silverstripe-admin/commit/60563dbd4cbb162a55e504973ee460465cb78dd9) Support nested redux forms (Guy Sartorelli) - - 2024-02-25 [7918318d](https://github.com/silverstripe/silverstripe-admin/commit/7918318db45229d66ec82e8cb25fc541ed9617c7) Don't panic if classname isn't set (#1687) (Guy Sartorelli) - - 2024-02-22 [129a94a2](https://github.com/silverstripe/silverstripe-admin/commit/129a94a28d8652e6138eab1b441de8099d31d84f) Rebuild bundle (Mohamed Alsharaf) - - 2024-02-22 [b3e16081](https://github.com/silverstripe/silverstripe-admin/commit/b3e160818c4098d6bee742bed6cf747dd47c4ab6) Remove current active tab from session storage after use (Mohamed Alsharaf) - - 2024-02-08 [8a3833e8](https://github.com/silverstripe/silverstripe-admin/commit/8a3833e8128eb44d32da743772e579219284e3c1) Set the CSV importer based on the tab, not the model (#1676) (Guy Sartorelli) - - 2024-02-01 [725a9a11](https://github.com/silverstripe/silverstripe-admin/commit/725a9a11c332de7d33692e0ecabd02fbbf379e04) Use valid class for model importers (#1670) (Guy Sartorelli) - - 2024-01-25 [359a3953](https://github.com/silverstripe/silverstripe-admin/commit/359a39531b91994ca77538ce8fdd0dc9a191819b) Type error (Sabina Talipova) - - 2024-01-24 [925e06f4](https://github.com/silverstripe/silverstripe-admin/commit/925e06f4f5bee9cfd562f66c22bc89e2503a6f84) Add tinymce link menuitems per editor instance (#1653) (Guy Sartorelli) - - 2024-01-24 [799add9e](https://github.com/silverstripe/silverstripe-admin/commit/799add9e9ac2bf7d6a53394291dc59fce37f154b) HTMLEditorField::setRows with Elemental (Sabina Talipova) - - 2024-01-23 [c06b2f2a](https://github.com/silverstripe/silverstripe-admin/commit/c06b2f2adb0c683110ce50aaed97c55b22497412) Use valid class for model importers (Guy Sartorelli) - - 2024-01-17 [79955d24](https://github.com/silverstripe/silverstripe-admin/commit/79955d24314c8d1781b849683282c1d642476a04) Elemental no longer allows saving of HTMLEditorField (#1651) (Sabina Talipova) - - 2024-01-11 [bc92e1f1](https://github.com/silverstripe/silverstripe-admin/commit/bc92e1f14f7ef7f2093875866ec35fae74825404) HTMLEditorField::setRows method (#1588) (Sabina Talipova) - - 2024-01-09 [4dd2432b](https://github.com/silverstripe/silverstripe-admin/commit/4dd2432bd81f84750a3f2a208f7af4d5a0e5e08c) Remove unstable prefix from useBlocker (Steve Boyd) - - 2024-01-07 [12e97880](https://github.com/silverstripe/silverstripe-admin/commit/12e97880a145f0d126b5d94b5434d59f00e39883) Rebuild bundle (Steve Boyd) - - 2023-12-21 [d949db14](https://github.com/silverstripe/silverstripe-admin/commit/d949db1433dfc25086c6e3b03b4e62c00da7ba13) decode entities in toast message (Thomas Portelange) - - 2023-12-19 [0755502d](https://github.com/silverstripe/silverstripe-admin/commit/0755502de7eedfc21f2ab02870c85a07d9d8fc03) Ensure react-select field menus are always on top (#1637) (Guy Sartorelli) - - 2023-12-15 [5d39d877](https://github.com/silverstripe/silverstripe-admin/commit/5d39d8776975e073462f5fa304a9ed5054fbfb7a) Set z-index of list (Steve Boyd) - - 2023-12-01 [4c53dece](https://github.com/silverstripe/silverstripe-admin/commit/4c53dece05a4b6df391a57a07fdbaadc36a18dd3) Prevents horizontal scrollbar in non-firefox (Lukas Erni) - - 2023-11-08 [c862349c](https://github.com/silverstripe/silverstripe-admin/commit/c862349cfa71c34ab3578c27bf254186305a3832) Handle extra empty values (Steve Boyd) - - 2023-10-31 [22d5471f](https://github.com/silverstripe/silverstripe-admin/commit/22d5471f5dd8dee68eb1307479d82a21d3b46e54) ModelAdmin toast elements (Sabina Talipova) - - 2023-10-19 [d393424b](https://github.com/silverstripe/silverstripe-admin/commit/d393424bcbbd19f46f502bb94c54e1519dd46af6) Make CanView/Edit group toggle logic more robust (#1610) (Guy Sartorelli) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-25 [bb3894ef](https://github.com/silverstripe/silverstripe-asset-admin/commit/bb3894efebc95baf2b640554b1e1062186f6c8da) TinyMCE Insert link from Files (Sabina Talipova) - - 2024-01-24 [b9db9c33](https://github.com/silverstripe/silverstripe-asset-admin/commit/b9db9c3348399d4c87c7a23a6b09bef3d7088b40) Add tinymce link menuitems per editor instance (#1435) (Guy Sartorelli) - - 2023-11-08 [a50f9e40](https://github.com/silverstripe/silverstripe-asset-admin/commit/a50f9e40e98b4e1dc0a2db5ad7f76c5a1b7d083a) Limit Member map to 100 (Steve Boyd) - - 2023-09-11 [fd811f95](https://github.com/silverstripe/silverstripe-asset-admin/commit/fd811f9567193036fb462be9cba4e49d4e360048) fix: expose ShowInSearch field in access UI (Will Rossiter) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-12 [cd3fcb2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/cd3fcb202e8fc26bcafb0df38fd9f7e7d0f6dc5e) Use correct modelClass with others tab (Steve Boyd) - -- silverstripe/cms (5.1.0 -> 5.2.0-beta1) - - 2024-01-24 [dfc42e7c](https://github.com/silverstripe/silverstripe-cms/commit/dfc42e7c86c304c23ffa822149be07059eed70a3) Add tinymce link menuitems per editor instance (#2916) (Guy Sartorelli) - - 2023-12-19 [9202ce9a](https://github.com/silverstripe/silverstripe-cms/commit/9202ce9a6896e3b0b736ba5d4ded2e4651222cb7) Ensure react-select field menus are always on top (#2910) (Guy Sartorelli) - - 2023-11-19 [579986a6](https://github.com/silverstripe/silverstripe-cms/commit/579986a69160ebfff63ead6d8c108ef8658933e5) Handle exceptions when using /0 as a URL (#2825) (Will Rossiter) - - 2023-11-07 [dd2bd613](https://github.com/silverstripe/silverstripe-cms/commit/dd2bd6138720587525a7d117b1593f6641650093) Limit Member map to 100 (Steve Boyd) - -- silverstripe/versioned (2.1.0 -> 2.2.0-beta1) - - 2024-02-19 [11d24ae](https://github.com/silverstripe/silverstripe-versioned/commit/11d24ae9d7693e66f9a8cc5153152cebf20c8dc4) use rawurlencode when setting toast headers (#440) (Thomas Portelange) - - 2023-11-01 [c52c166](https://github.com/silverstripe/silverstripe-versioned/commit/c52c1661cb9fc3cb81345373a18fff75313f009b) ModelAdmin toast elements (Sabina Talipova) - - 2023-10-24 [d614204](https://github.com/silverstripe/silverstripe-versioned/commit/d6142046ee5dd1697a3cdef2c98e9df5841be400) Remove implicitly added item (Sabina Talipova) - -- silverstripe/graphql (5.1.0 -> 5.2.0-beta1) - - 2023-11-26 [f929eb6](https://github.com/silverstripe/silverstripe-graphql/commit/f929eb650be15b3a85834ffcafbddf93318c20be) Add test cases for SortPlugin (Sabina Talipova) - - 2023-11-22 [5781c46](https://github.com/silverstripe/silverstripe-graphql/commit/5781c46614ac2d40d025c71837f3dbc090361e53) QuerySort::sort method should support sorting for multi arguments (Sabina Talipova) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-beta1) - - 2023-12-13 [18e5df1](https://github.com/silverstripe/silverstripe-tagfield/commit/18e5df1b921fb162962e1cb1ed6b5b3cffabc71f) z-index of select dropdown clashing with TinyMCE toolbar (Christopher Darling) - - 2023-09-22 [c931056](https://github.com/silverstripe/silverstripe-tagfield/commit/c9310566895a355bd8c974af0c3c66f03214b50c) Added the state changed checks and bubble up event - pending build (josephlewisnz) - -- silverstripe/blog (4.1.0 -> 4.2.0-beta1) - - 2022-08-22 [99d1063](https://github.com/silverstripe/silverstripe-blog/commit/99d1063361018e924662fd9392209df28710873e) Allow multibyte to be configured (#605) (Will Rossiter) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-beta1) - - 2023-09-10 [17106d8](https://github.com/silverstripe/silverstripe-spamprotection/commit/17106d8f30bfb2327a47e20c2b7b7cd21c29f423) fix: if no spam protector set, fail sliently (Will Rossiter) - -- colymba/gridfield-bulk-editing-tools (4.0.0 -> 4.0.2) - - 2023-11-22 [9a8cc37](https://github.com/colymba/GridFieldBulkEditingTools/commit/9a8cc3792ea51146325c9709625bd8792c4995c2) Remove deprecated convert API for SS5.0 (#260) (Bram de Leeuw) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-beta1) - - 2023-11-09 [e490370](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/e49037024c5a92ddb76ee59d4ca90e2fb84327af) Infinite recursion sanity checks with more helpful error messages (#214) (Nathan J. Brauer) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-beta1) - - 2023-12-14 [7286f14](https://github.com/symbiote/silverstripe-advancedworkflow/commit/7286f144e28fbc3740c6376cb16973400507da1b) Use correct namespace for imports (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0-beta1) - - 2024-01-24 [e6638ec](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/e6638ecfb0e8f20134f15795d1aad9f28d9a01ce) update defensive check on tags field method (Phillip King) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0-beta1) - - 2024-02-29 [66da923](https://github.com/silverstripe/silverstripe-versionfeed/commit/66da9235029584a1cb731beceba18d16111162f4) Ensure page has extension before calling method (Steve Boyd) - - 2024-01-23 [c10085c](https://github.com/silverstripe/silverstripe-versionfeed/commit/c10085c99e08828d042ef46808a8d6953ba5bd3d) Make sureHtmlDiff::compareHTML is not passed null values (Alexandre Saelens) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-beta1) - - 2024-02-26 [f571da9](https://github.com/silverstripe/silverstripe-elemental/commit/f571da95abcf0f5edb9498934af8d5579b6dece8) Remove workaround for nested redux form. (Guy Sartorelli) - - 2024-01-30 [95c31bd](https://github.com/silverstripe/silverstripe-elemental/commit/95c31bdcc51c6569f059e2de4887bf613c88d614) Failed Behat test (Sabina Talipova) - - 2024-01-29 [b23847a](https://github.com/silverstripe/silverstripe-elemental/commit/b23847a5099d0bbfb6f0d1192db7be23f5f06019) Behat test for badges (Sabina Talipova) - - 2024-01-18 [935e46d](https://github.com/silverstripe/silverstripe-elemental/commit/935e46dcc8ed2603805f063662edd053d2b51c6c) Null submit handler for element component (Steve Boyd) - - 2023-12-06 [d986b7d](https://github.com/silverstripe/silverstripe-elemental/commit/d986b7d7efd559ed69bfa199ebfe520a5304475a) Handle empty element formstate (Steve Boyd) - - 2023-09-20 [7f1daf8](https://github.com/silverstripe/silverstripe-elemental/commit/7f1daf858438549d4f6a26e09e728ccf553c700b) Element::getPage returning the wrong page (Will Rossiter) - - 2023-09-19 [215fadf](https://github.com/silverstripe/silverstripe-elemental/commit/215fadf524f32940bd0e567e9ed2b3ab3e092949) Fix some bits in the readme (Ed Wilde) - -- silverstripe/auditor (3.0.0 -> 3.1.0-beta1) - - 2023-12-21 [567136d](https://github.com/silverstripe/silverstripe-auditor/commit/567136d36d1fdb0b161950ed9f357482afefa58b) Adjust logic to account for custom table names (Maxime Rainville) - - 2023-12-19 [44ee87d](https://github.com/silverstripe/silverstripe-auditor/commit/44ee87dccb84a6da6a7a6d7a4a9b6c3f403a9ea4) Fix logging of failed logins & unknown users (Ralph Slooten) - - 2023-12-14 [780b9af](https://github.com/silverstripe/silverstripe-auditor/commit/780b9afc880a2a16e222074810a64b8b7246b15b) Use correct namespace for import (Steve Boyd) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-beta1) - - 2024-01-16 [48b454f](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/48b454f71bf89ee43c965c5eba20a6503e077290) Undefined Exception on makeDir method (Marco Hermo) - -- cwp/watea-theme (4.0.0 -> 4.1.0-beta1) - - 2023-09-04 [8bfba56](https://github.com/silverstripe/cwp-watea-theme/commit/8bfba563ac39e231c1b489218a937326d0b58659) Update .nvmrc (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0-beta1) - - 2022-10-04 [7cdce8f](https://github.com/symbiote/silverstripe-queuedjobs/commit/7cdce8f678f9443e1fc13450a333bb87b6da9c3a) grabMutex job lock query on SQLite (Maxime Rainville) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0-beta1) - - 2023-08-15 [28056e5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/28056e5405ee09b1438e3134c944d10bcf2cb95b) fix stylesheet path (Thomas Portelange) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-beta1) - - 2024-02-26 [1a30c3e](https://github.com/silverstripe/silverstripe-linkfield/commit/1a30c3e298a1afc5569fca46200a3761b390bb9b) Remove workaround for nested redux form. (Guy Sartorelli) - - 2024-02-12 [c347b35](https://github.com/silverstripe/silverstripe-linkfield/commit/c347b35042c2ed164e7b685785f0fd7dd169865f) Archive record from live table on delete (Steve Boyd) - - 2024-02-07 [31d9ffa](https://github.com/silverstripe/silverstripe-linkfield/commit/31d9ffa15e98ed7c226d4fe0d67a53eb4b207879) Do not show delete button when disabled (Steve Boyd) - - 2024-01-31 [09f637c](https://github.com/silverstripe/silverstripe-linkfield/commit/09f637c26384069db0cc8749f619c50c67336403) Add HasOneRelationFieldInterface to LinkField (Steve Boyd) - - 2024-01-30 [790c561](https://github.com/silverstripe/silverstripe-linkfield/commit/790c561cca07f39f62412df3f247c6d6faa9e82d) Elemental non-inline editing (Steve Boyd) - - 2024-01-25 [da9ce9b](https://github.com/silverstripe/silverstripe-linkfield/commit/da9ce9b47dc3d8c2aa4124a300e66b1a0baf4433) Prevent nested asset-admin forms from submitting modal (Steve Boyd) - - 2024-01-19 [15f02d3](https://github.com/silverstripe/silverstripe-linkfield/commit/15f02d33641d8b286ee4b94a53a99a4491384e72) Defaul link type title and icon for disabled link types (Sabina Talipova) - - 2024-01-15 [f7fd63a](https://github.com/silverstripe/silverstripe-linkfield/commit/f7fd63a32b6c116b5cf51622f1d26581bdfe745a) Don't change scroll position when loading (#171) (Guy Sartorelli) - - 2024-01-11 [082657d](https://github.com/silverstripe/silverstripe-linkfield/commit/082657d1043936885a5f1050ace9a489cd0643c2) Console warning about required type (#163) (Sabina Talipova) - - 2024-01-08 [bdf0b36](https://github.com/silverstripe/silverstripe-linkfield/commit/bdf0b36225ba63a4f2784c369d1915582a821ee8) Nicely truncate link title/URL (#153) (Guy Sartorelli) - - 2023-12-04 [3c8edfd](https://github.com/silverstripe/silverstripe-linkfield/commit/3c8edfdc02846e43c3ae4b5d044bd4046e224679) Don't render links that don't exist (#130) (Guy Sartorelli) - - 2023-08-03 [f2fd7bb](https://github.com/silverstripe/silverstripe-linkfield/commit/f2fd7bb3335d967857387cb9d85b0b82ea0c1414) Revert change that broke file modal (Maxime Rainville) - - 2023-06-20 [8533d27](https://github.com/silverstripe/silverstripe-linkfield/commit/8533d278f0f44a84b9540428bdc68dc12ee1cd34) Allow CMS fields customisations via extension to be executed after the default setup. (Mojmir Fendek) - - 2023-06-11 [61a27e5](https://github.com/silverstripe/silverstripe-linkfield/commit/61a27e58837eaef8f5a3341ff331304de49b5f77) File link URL generation corrected. (Mojmir Fendek) - - 2023-06-06 [8df6554](https://github.com/silverstripe/silverstripe-linkfield/commit/8df65541242d93a165e944fee010a7a174d32cea) Corrected variable name (typo). (Mojmir Fendek) - - 2023-06-06 [f09a385](https://github.com/silverstripe/silverstripe-linkfield/commit/f09a38589649e848a758b4d76516d9bfb337943e) URL generation fix for internal link. (Mojmir Fendek) - - 2023-06-01 [b328570](https://github.com/silverstripe/silverstripe-linkfield/commit/b328570d36bd63fe39d2e964aebe123a8a0bb281) Fix link migration task. (Mojmir Fendek) - - 2023-05-25 [9744bd8](https://github.com/silverstripe/silverstripe-linkfield/commit/9744bd8dc23ebe70129555b5b7573ac5295232b4) List types can now be disabled via configuration (existing config, missing feature). (Mojmir Fendek) - - 2023-02-15 [677ae80](https://github.com/silverstripe/silverstripe-linkfield/commit/677ae80e6941e7016b6c3edc1ee1cddef1432efb) Fix Github actions. (Mojmir Fendek) - - 2022-05-13 [1e9c0ec](https://github.com/silverstripe/silverstripe-linkfield/commit/1e9c0ec5428d626622392165fd39a81c2550127e) Bump PHP versions. (Mojmir Fendek) - - 2022-05-12 [5239704](https://github.com/silverstripe/silverstripe-linkfield/commit/523970490db436bc7948bf67257c1f39a425ff93) Fix Composer autoload settings. (Mojmir Fendek) - - 2021-10-21 [2eb755e](https://github.com/silverstripe/silverstripe-linkfield/commit/2eb755eb15d26bfb6d59c7d07c52c67fbdad6e7d) Change link type in via a GridField edit form. (Mojmir Fendek) - -### Api changes {#changelog-api-changes} - -- silverstripe/assets (2.1.0 -> 2.2.0-beta1) - - 2021-07-20 [595c5a5](https://github.com/silverstripe/silverstripe-assets/commit/595c5a5bb5c0f0498ade4316935068a3e84fc177) allow chaining for Upload_Validator (Will Rossiter) - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2024-01-16 [8b427f4e7](https://github.com/silverstripe/silverstripe-framework/commit/8b427f4e74474fb30dc660bac6eda7ecff062b12) Deprecate some unused API (Guy Sartorelli) - - 2023-11-27 [3fe42b84a](https://github.com/silverstripe/silverstripe-framework/commit/3fe42b84afcb74f80b27a4fe0e679c909248496f) Use correct param types (Steve Boyd) - -- silverstripe/cms (5.1.0 -> 5.2.0-beta1) - - 2023-11-02 [e826152f](https://github.com/silverstripe/silverstripe-cms/commit/e826152fd1d316d9aa010764e3ca1ca6f99efa1d) Add new SiteTree.hide_pagetypes configuration (Guy Sartorelli) - -- silverstripe/versioned (2.1.0 -> 2.2.0-beta1) - - 2023-11-05 [4d38781](https://github.com/silverstripe/silverstripe-versioned/commit/4d3878139ebb063e909153436e58290b7b0f081d) Deprecate Versions() having parameter (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-beta1) - - 2023-12-12 [7f65d4f](https://github.com/silverstripe/silverstripe-linkfield/commit/7f65d4fdee873fc7746acdc82e3bc2b591138a02) Add new Owner relation for handling permissions (#127) (Guy Sartorelli) - -### Dependencies {#changelog-dependencies} - -- silverstripe/recipe-kitchen-sink (5.1.0 -> 5.2.0-beta1) - - 2023-09-28 [fa436ba](https://github.com/silverstripe/recipe-kitchen-sink/commit/fa436ba2898779121eeb21b5da9c02f7d0445e35) Add silverstripe/linkfield (Steve Boyd) - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2023-11-12 [bc47d65cc](https://github.com/silverstripe/silverstripe-framework/commit/bc47d65cc5120afcb5b7a97c5e89e3267ad4fc5c) Deprecate configurable silent failures in GridField components (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-08 [45a41970](https://github.com/silverstripe/silverstripe-admin/commit/45a419702ce4dbe4d170fcef41a4d232274e892e) Update JS dependencies (#1645) (Guy Sartorelli) - - 2023-10-03 [fb996163](https://github.com/silverstripe/silverstripe-admin/commit/fb9961638f172866b991be8574b79fdaa7ca1f43) Update JS dependencies (github-actions) - - 2023-09-25 [48e88977](https://github.com/silverstripe/silverstripe-admin/commit/48e88977445aa0fbbf67c503274bc57e1d9b8117) Bump semver from 5.7.1 to 5.7.2 (dependabot[bot]) - - 2023-09-21 [76faebbe](https://github.com/silverstripe/silverstripe-admin/commit/76faebbe4af9e6f4b865841e8207b36c6871ee12) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-01 [e405cafd](https://github.com/silverstripe/silverstripe-asset-admin/commit/e405cafd6ce9b8533358957bf920574f3d022d60) Update JS dependencies (github-actions) - - 2023-10-01 [f84ff32f](https://github.com/silverstripe/silverstripe-asset-admin/commit/f84ff32fff17ac2c648f292ddad69ebb3a135952) Update JS dependencies (github-actions) - - 2023-09-21 [35ab766e](https://github.com/silverstripe/silverstripe-asset-admin/commit/35ab766e1a8be9712410400f64ba8147435af458) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-01 [848cb54](https://github.com/silverstripe/silverstripe-campaign-admin/commit/848cb541460691d6b552b2a1ccd64c4288f5e6fc) Update JS dependencies (github-actions) - - 2023-10-01 [d28008a](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d28008acf9d7c8eb99ebccefb65666ba1def5924) Update JS dependencies (github-actions) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-beta1) - - 2024-01-01 [ce3efde](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ce3efdeda2bf914d02a33110e6a0de5325571066) Update JS dependencies (github-actions) - - 2023-10-01 [591b938](https://github.com/silverstripe/silverstripe-versioned-admin/commit/591b93816f8f08aadd52d9e5514a7d912327ead9) Update JS dependencies (github-actions) - - 2023-09-21 [82ed02a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/82ed02a7dc22213793d519fa322f46546ca26506) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/cms (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [a6cbf65d](https://github.com/silverstripe/silverstripe-cms/commit/a6cbf65d8ffd9306b2c3c65090198b07c618a361) Update JS dependencies (github-actions) - - 2023-10-01 [7d1d93ab](https://github.com/silverstripe/silverstripe-cms/commit/7d1d93ab896dee4363e628d6430dca4e6a4801bb) Update JS dependencies (github-actions) - - 2023-09-21 [da660479](https://github.com/silverstripe/silverstripe-cms/commit/da66047987f37af2746787f4c7f12cb5542b3691) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/session-manager (2.1.0 -> 2.2.0-beta1) - - 2024-01-01 [67555fa](https://github.com/silverstripe/silverstripe-session-manager/commit/67555faab3943e795096cf8e3426b6ef1b25bcc9) Update JS dependencies (github-actions) - - 2023-10-01 [22bf989](https://github.com/silverstripe/silverstripe-session-manager/commit/22bf989756e8b9b2d8701b94ef892ac28cd83357) Update JS dependencies (github-actions) - -- silverstripe-themes/simple (3.3.0 -> 3.3.1) - - 2023-11-17 [d3228db](https://github.com/silverstripe/silverstripe-simple/commit/d3228db60dbbb1463448b1f41cf7f9afc91eae50) Update jQuery to 3.7.1 (Garion Herman) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [64b1ad4](https://github.com/silverstripe/silverstripe-login-forms/commit/64b1ad46392a68ae857d7a1c359a2c4756a0d005) Update JS dependencies (github-actions) - - 2023-10-01 [4647dc2](https://github.com/silverstripe/silverstripe-login-forms/commit/4647dc28967025097b471b5aa62304f5efc90bad) Update JS dependencies (github-actions) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [7435c07](https://github.com/silverstripe/silverstripe-documentconverter/commit/7435c073f5748776a32e901e7176c67973e1c7c7) Update JS dependencies (github-actions) - - 2023-10-01 [ea949aa](https://github.com/silverstripe/silverstripe-documentconverter/commit/ea949aa814cc0d7b09f6b4a263d138f46b252fab) Update JS dependencies (github-actions) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [5212c33](https://github.com/silverstripe/silverstripe-tagfield/commit/5212c33d40dabc42965cbe01024a8310fc4dfe13) Update JS dependencies (github-actions) - - 2023-10-01 [036319b](https://github.com/silverstripe/silverstripe-tagfield/commit/036319be08876610235b05e411db4cee01dccad2) Update JS dependencies (github-actions) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0-beta1) - - 2024-01-08 [8a4a0b1](https://github.com/silverstripe/silverstripe-taxonomy/commit/8a4a0b184745215b6a75dae98df9e7d16d6fc2bf) Update deps to specify new auto-scaffolded has-one field (Steve Boyd) - -- silverstripe/blog (4.1.0 -> 4.2.0-beta1) - - 2024-01-01 [6351690](https://github.com/silverstripe/silverstripe-blog/commit/63516905a4f8f0282bf62e5d964c8bdd74e63f08) Update JS dependencies (github-actions) - - 2023-10-19 [2ef3981](https://github.com/silverstripe/silverstripe-blog/commit/2ef3981000210747f5853c3e1168dd792dd3aeb1) Bump @babel/traverse from 7.23.0 to 7.23.2 (dependabot[bot]) - - 2023-10-01 [e363b0e](https://github.com/silverstripe/silverstripe-blog/commit/e363b0e59035fa232fe1afa5205e2fdbcf952ae0) Update JS dependencies (github-actions) - -- silverstripe/contentreview (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [4124322](https://github.com/silverstripe/silverstripe-contentreview/commit/41243227dc3ea579147bff89bafcbcffcea77cb4) Update JS dependencies (github-actions) - - 2023-10-01 [1f750b9](https://github.com/silverstripe/silverstripe-contentreview/commit/1f750b91fe7972bafc4afeac611f10d329c5cbb2) Update JS dependencies (github-actions) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [429dfd2](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/429dfd2a67a3cdf65a9e13c78f7ff085c4ee6d6f) Update JS dependencies (github-actions) - - 2023-10-07 [f3d77c4](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/f3d77c453dfaf8779656d9c9d77ebce02b264322) Bump postcss from 8.4.24 to 8.4.31 (dependabot[bot]) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-beta1) - - 2023-08-31 [85e3f97](https://github.com/symbiote/silverstripe-advancedworkflow/commit/85e3f97213a4c150bd57d1d8ddce72000cc1db73) Update JS dependencies (Steve Boyd) - -- silverstripe/segment-field (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [16a2718](https://github.com/silverstripe/silverstripe-segment-field/commit/16a2718bda6433335774e1e03be26de03ece5c5b) Update JS dependencies (github-actions) - - 2023-10-01 [7986025](https://github.com/silverstripe/silverstripe-segment-field/commit/79860256f4634eee44255b528d2279a89910341f) Update JS dependencies (github-actions) - -- silverstripe/userforms (6.1.0 -> 6.2.0-beta1) - - 2024-01-01 [7796ec5](https://github.com/silverstripe/silverstripe-userforms/commit/7796ec53bbe73d492d9e52e2fb8a71b286ecee78) Update JS dependencies (github-actions) - - 2023-10-01 [0a33a7e](https://github.com/silverstripe/silverstripe-userforms/commit/0a33a7e5dfc14c13a02dbe5911e525d413ea2415) Update JS dependencies (github-actions) - -- silverstripe/externallinks (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [01104bf](https://github.com/silverstripe/silverstripe-externallinks/commit/01104bf66916a4d7404966ae96ae9ef30c4d71d7) Update JS dependencies (github-actions) - - 2023-10-01 [6b6b05e](https://github.com/silverstripe/silverstripe-externallinks/commit/6b6b05ee0a6ec31732a712ffd2ade45d54dc227d) Update JS dependencies (github-actions) - - 2023-09-29 [204e7c5](https://github.com/silverstripe/silverstripe-externallinks/commit/204e7c5ee0ab0235f806effcf38358587bb9f38d) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0-beta1) - - 2024-01-01 [d0dc6d0](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/d0dc6d07ede215a15e012f70879536bd131414e4) Update JS dependencies (github-actions) - - 2023-10-01 [57805fd](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/57805fd1e50d0c987fc053e4d1b2e7684300d4a1) Update JS dependencies (github-actions) - -- bringyourownideas/silverstripe-maintenance (3.0.1 -> 3.1.0-beta1) - - 2023-08-31 [e4014d7](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e4014d78209edabd965817a993323644c7e3af4f) Update JS dependencies (Steve Boyd) - - 2023-07-11 [efba968](https://github.com/bringyourownideas/silverstripe-maintenance/commit/efba968eb97c261e3f675135815fcfe4013a0efc) Update eslint module (#200) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [d5108cb](https://github.com/silverstripe/silverstripe-elemental/commit/d5108cb59a084c3354397a9e357b1a047ef73857) Update JS dependencies (github-actions) - - 2023-10-01 [f425d9d](https://github.com/silverstripe/silverstripe-elemental/commit/f425d9dbb45e9f5b097eb1aef3cd208acea7fd69) Update JS dependencies (github-actions) - - 2023-09-21 [b84791f](https://github.com/silverstripe/silverstripe-elemental/commit/b84791f124ada2ef63e77f6172c94c6a09a9bcbd) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - - 2023-09-04 [9ea6ead](https://github.com/silverstripe/silverstripe-elemental/commit/9ea6ead57ac68ae79d81093dc3330d195a5daed0) Update JS dependencies (github-actions) - -- silverstripe/elemental-bannerblock (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [f31ca86](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/f31ca86c3db6c8df84fc10e61095d4b35f2e705a) Update JS dependencies (github-actions) - - 2023-10-19 [59a81dc](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/59a81dcc10ee17b715a1de14ec61ae92d21b7fe9) Bump @babel/traverse from 7.22.10 to 7.23.2 (dependabot[bot]) - - 2023-10-08 [7166c18](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7166c183fd4d9a13aeffd02ae2eb45ac4cd4a7c2) Bump postcss from 8.4.28 to 8.4.31 (dependabot[bot]) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [d1ce73e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/d1ce73ea82f35db4eb7f61a24b3c76d7ede4acfb) Update JS dependencies (github-actions) - - 2023-10-01 [5e14c36](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/5e14c3667fd5c60485f98d09e267421d0b9acd45) Update JS dependencies (github-actions) - -- silverstripe/mfa (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [9cce064](https://github.com/silverstripe/silverstripe-mfa/commit/9cce064d70547617857d9a2bfdb57b3963429053) Update JS dependencies (github-actions) - - 2023-10-01 [9ed339d](https://github.com/silverstripe/silverstripe-mfa/commit/9ed339ddc438d3d3c0604918a662409f6429875f) Update JS dependencies (github-actions) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [c6ba6c4](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/c6ba6c47754d7587f1972d4545a21e2977ab4169) Update JS dependencies (github-actions) - - 2023-10-01 [2cbe9d5](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/2cbe9d56d7dfa57f6c1755693d843d1a813b69e2) Update JS dependencies (github-actions) - -- silverstripe/realme (5.2.0 -> 5.3.0-beta1) - - 2024-01-01 [08baf2d](https://github.com/silverstripe/silverstripe-realme/commit/08baf2de745e4bf5ad9dae86c22ce2bdbfe946fb) Update JS dependencies (github-actions) - - 2023-10-01 [77345e7](https://github.com/silverstripe/silverstripe-realme/commit/77345e76ed6278a77598735439c7bb637f731d02) Update JS dependencies (github-actions) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0-beta1) - - 2024-01-01 [c2c7bf0](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/c2c7bf05044e8ad413bc005205fd472a713be22c) Update JS dependencies (github-actions) - - 2023-10-19 [3e39b93](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/3e39b93e11dfa0e16dc7a3a423cffe45be3e0b67) Bump @babel/traverse from 7.22.10 to 7.23.2 (dependabot[bot]) - - 2023-10-08 [f5b3005](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/f5b300516a1c4990bacf84d603a177710078445d) Bump postcss from 8.4.28 to 8.4.31 (dependabot[bot]) - -- silverstripe/subsites (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [17a729f](https://github.com/silverstripe/silverstripe-subsites/commit/17a729f04c70b0e928c5b914b3f543b475420c13) Update JS dependencies (github-actions) - - 2023-10-01 [e56425e](https://github.com/silverstripe/silverstripe-subsites/commit/e56425e548a09d3d93cd3f44bdfd657123c0210e) Update JS dependencies (github-actions) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0-beta1) - - 2024-01-01 [a139526](https://github.com/silverstripe/silverstripe-lumberjack/commit/a13952696a7baf847a53d0d36f38c8796dfb30af) Update JS dependencies (github-actions) - - 2023-10-01 [4056a91](https://github.com/silverstripe/silverstripe-lumberjack/commit/4056a918b110bccfab668c06c070147f1d1dbe7e) Update JS dependencies (github-actions) - - 2023-09-29 [1655e8b](https://github.com/silverstripe/silverstripe-lumberjack/commit/1655e8b4cc49fed12041801fb57b20cb623aec94) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [b9a2082](https://github.com/silverstripe/silverstripe-lumberjack/commit/b9a20827ff9c93fc4bad4700aae498be3fc8e51d) Update eslint module (#124) (Sabina Talipova) - -- cwp/starter-theme (4.0.0 -> 4.1.0-beta1) - - 2024-01-08 [d762ea9](https://github.com/silverstripe/cwp-starter-theme/commit/d762ea99c36ab91758a47b7aa82788140b8e51fc) Update JS dependencies (#240) (Guy Sartorelli) - - 2024-01-08 [fdf930e](https://github.com/silverstripe/cwp-starter-theme/commit/fdf930e73262e82a23736c546f85fe26cabe866f) Bump @babel/traverse from 7.23.0 to 7.23.7 (dependabot[bot]) - - 2023-10-28 [6a2dff8](https://github.com/silverstripe/cwp-starter-theme/commit/6a2dff8889e6229f925121153e5c884293abc814) Bump browserify-sign from 4.2.1 to 4.2.2 (dependabot[bot]) - - 2023-10-03 [5de9fba](https://github.com/silverstripe/cwp-starter-theme/commit/5de9fbaacdb0485eafbdaa27763a57b43bb1e409) Update JS dependencies (#233) (github-actions[bot]) - - 2023-08-31 [b79bcbd](https://github.com/silverstripe/cwp-starter-theme/commit/b79bcbdfadf307369f2a5c21962cbcec167fbbdb) Bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2023-08-29 [0adbddc](https://github.com/silverstripe/cwp-starter-theme/commit/0adbddc5468e55885df159f13c35ce356c317347) Bump semver from 5.7.1 to 5.7.2 (dependabot[bot]) - - 2023-08-28 [2a0d10f](https://github.com/silverstripe/cwp-starter-theme/commit/2a0d10f500e186004ca40f4be3ede1610637834c) Bump url-parse from 1.5.1 to 1.5.10 (dependabot[bot]) - - 2023-08-28 [2ee7c94](https://github.com/silverstripe/cwp-starter-theme/commit/2ee7c941142c6b56012725486eb0d7aefd2b2974) Bump eventsource from 1.0.7 to 1.1.2 (dependabot[bot]) - - 2023-08-28 [8b3912f](https://github.com/silverstripe/cwp-starter-theme/commit/8b3912fa1d79b4a1cd17ef92de8ec4f1884f54eb) Bump follow-redirects from 1.13.0 to 1.15.2 (dependabot[bot]) - - 2023-08-28 [3bec8aa](https://github.com/silverstripe/cwp-starter-theme/commit/3bec8aaa6f6a4b76fb24f1f013dc50e9a7499096) Bump async from 2.6.3 to 2.6.4 (dependabot[bot]) - - 2023-08-28 [e8cb249](https://github.com/silverstripe/cwp-starter-theme/commit/e8cb249640c2a75dd4607d13d86ccc7f94db4647) Bump path-parse from 1.0.6 to 1.0.7 (dependabot[bot]) - - 2023-08-28 [83b1e25](https://github.com/silverstripe/cwp-starter-theme/commit/83b1e255a596c109791af6d7b2016d0ff423d2d8) Bump hosted-git-info from 2.8.5 to 2.8.9 (dependabot[bot]) - - 2023-08-28 [743463a](https://github.com/silverstripe/cwp-starter-theme/commit/743463a29ec371690722f5ce5a322f8134a91f72) Bump tar from 4.4.15 to 4.4.19 (dependabot[bot]) - - 2023-08-28 [f0ef7f0](https://github.com/silverstripe/cwp-starter-theme/commit/f0ef7f05ba319e0794e5d179ddeec19507b07aeb) Bump color-string from 1.5.3 to 1.9.1 (dependabot[bot]) - - 2023-08-28 [5a84ae2](https://github.com/silverstripe/cwp-starter-theme/commit/5a84ae2c4ef6e2951aa881d67e1800df5b18bf16) Bump ajv from 6.10.2 to 6.12.3 (dependabot[bot]) - - 2023-08-28 [81c5a23](https://github.com/silverstripe/cwp-starter-theme/commit/81c5a23e2d4d6c7722c80951ede0536dbb1677eb) Bump lodash from 4.17.19 to 4.17.21 (dependabot[bot]) - - 2023-08-28 [167a10f](https://github.com/silverstripe/cwp-starter-theme/commit/167a10f5d3a4635a10664df36df2ffc862cbcc36) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - - 2023-08-28 [eeee5c7](https://github.com/silverstripe/cwp-starter-theme/commit/eeee5c77d3fa8bd210f729fe8c8c01ac8379763e) Bump json5 from 1.0.1 to 1.0.2 (dependabot[bot]) - - 2022-12-10 [c3c8d4a](https://github.com/silverstripe/cwp-starter-theme/commit/c3c8d4ac9e6cbbf3f2e2e8b876237d30be6c1653) Bump express from 4.17.1 to 4.18.2 (dependabot[bot]) - -- cwp/agency-extensions (3.1.0 -> 3.2.0-beta1) - - 2024-01-01 [0b3354c](https://github.com/silverstripe/cwp-agencyextensions/commit/0b3354c3fad9a086dfbd7d2598c96e84f398502a) Update JS dependencies (github-actions) - - 2023-10-01 [db01219](https://github.com/silverstripe/cwp-agencyextensions/commit/db01219a229ba11c443855c024907fd8bb7c65a2) Update JS dependencies (github-actions) - -- cwp/watea-theme (4.0.0 -> 4.1.0-beta1) - - 2024-01-01 [415858c](https://github.com/silverstripe/cwp-watea-theme/commit/415858cca4857f2bbe5ff1323ebf32511c14b3ff) Update JS dependencies (github-actions) - - 2023-10-01 [c407d54](https://github.com/silverstripe/cwp-watea-theme/commit/c407d54db397abcd8cb2bd9a3afa6364b62adb3d) Update JS dependencies (github-actions) - - 2023-08-29 [902113b](https://github.com/silverstripe/cwp-watea-theme/commit/902113b635a5eec72c62bf8b24d8e2dc45254226) build(deps): bump semver from 5.6.0 to 5.7.2 (dependabot[bot]) - - 2023-08-28 [78c47a5](https://github.com/silverstripe/cwp-watea-theme/commit/78c47a53a8b0277719b8b8bb459c57f6805bd4cb) build(deps): bump dot-prop from 4.2.0 to 4.2.1 (dependabot[bot]) - - 2023-08-28 [3f0de59](https://github.com/silverstripe/cwp-watea-theme/commit/3f0de59b4f62706295e20cb25d71e8dfecd6e709) build(deps): bump path-parse from 1.0.6 to 1.0.7 (dependabot[bot]) - - 2023-08-28 [878cc6a](https://github.com/silverstripe/cwp-watea-theme/commit/878cc6a8456886dd91051087ee593e12681907b4) build(deps): bump hosted-git-info from 2.7.1 to 2.8.9 (dependabot[bot]) - - 2023-08-28 [8781c5a](https://github.com/silverstripe/cwp-watea-theme/commit/8781c5aee9f5f91ab47280ef936ccfca7edc1004) build(deps): bump json5 from 1.0.1 to 1.0.2 (dependabot[bot]) - -- symbiote/silverstripe-multivaluefield (6.0.2 -> 6.1.0-beta1) - - 2023-07-11 [99564be](https://github.com/symbiote/silverstripe-multivaluefield/commit/99564be8c783cf7fd4e2778ec8218a97b8bb6645) Update eslint module (#97) (Sabina Talipova) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-beta1) - - 2024-01-08 [bddcb6e](https://github.com/silverstripe/silverstripe-linkfield/commit/bddcb6e098e5941d7c80031ae6583331242c28cc) Explicitly require framework ^5.2 (Steve Boyd) - -### Documentation {#changelog-documentation} - -- silverstripe/session-manager (2.1.0 -> 2.2.0-beta1) - - 2023-11-05 [2305049](https://github.com/silverstripe/silverstripe-session-manager/commit/23050493b4f0b354e567f64c19a5ab8a1d655822) Fix link (Steve Boyd) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-beta1) - - 2023-11-20 [946d92a](https://github.com/silverstripe/silverstripe-tagfield/commit/946d92a7e8b5e2e1e3b9e2aeea54291d30e249e3) Update readme example (Steve Boyd) - -- silverstripe/userforms (6.1.0 -> 6.2.0-beta1) - - 2024-02-01 [c893194](https://github.com/silverstripe/silverstripe-userforms/commit/c89319477561e60ce9752ffc62f12a74fa55522b) Update syntax for callout blocks (#1263) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-beta1) - - 2023-08-30 [fe95f59](https://github.com/silverstripe/silverstripe-elemental/commit/fe95f59b2b6768f2ee6c823e6972b1e070eded71) fix not needed duplication when restoring a page from archived state (Aljoša Balažic) - -- silverstripe/developer-docs (5.1.0 -> 5.2.0-beta1) - - 2024-03-04 [cc5be721](https://github.com/silverstripe/developer-docs/commit/cc5be721e3a0c0c897eec624f15b973a81185fc0) Add composer runtime api mention (#464) (Thomas Portelange) - - 2024-02-29 [164b66f1](https://github.com/silverstripe/developer-docs/commit/164b66f1461b3a1975f9acc4b0e3f868d7c22b1a) Refer to release policies to avoid stale information (#462) (Guy Sartorelli) - - 2024-02-28 [6bc37ea3](https://github.com/silverstripe/developer-docs/commit/6bc37ea398725e9c4c18c773e502e88fae88b0c1) Document LTS support for databases (Guy Sartorelli) - - 2024-02-23 [621a9f40](https://github.com/silverstripe/developer-docs/commit/621a9f409747a48026978670e9aaea41c6ae5c0b) Fix placement of urlfield docs (#460) (Guy Sartorelli) - - 2024-02-20 [aa9ef537](https://github.com/silverstripe/developer-docs/commit/aa9ef537cfcf1d6a21027c81e54f95a406d1161e) Document manipulating eager loading queries (#456) (Guy Sartorelli) - - 2024-02-18 [22fd700d](https://github.com/silverstripe/developer-docs/commit/22fd700d374ebb1c2dd581fe2b90458afd95a273) Document official support for linkfield (#457) (Guy Sartorelli) - - 2024-02-08 [fee67b67](https://github.com/silverstripe/developer-docs/commit/fee67b6775c2476d20b78714acb8f5be4f87e2ca) Add new query trace comment to changelog (#404) (Guy Sartorelli) - - 2024-02-02 [b8012e86](https://github.com/silverstripe/developer-docs/commit/b8012e86993b31abb37425bbddcea54c19cf5962) Document using symfony/validator (#454) (Guy Sartorelli) - - 2024-02-02 [e5f5434b](https://github.com/silverstripe/developer-docs/commit/e5f5434bc708a1fa43a7a8bf82393e2ad159f2a8) Update syntax for callout blocks (#455) (Guy Sartorelli) - - 2024-02-01 [e77dd474](https://github.com/silverstripe/developer-docs/commit/e77dd474f1f7f0f4b1fdd3e3b0335357e1e508de) Update syntax for callout blocks (#452) (Guy Sartorelli) - - 2024-02-01 [c47892db](https://github.com/silverstripe/developer-docs/commit/c47892db13f880561b6f205a28331ceeec286163) Update syntax for callout blocks (#449) (Guy Sartorelli) - - 2024-01-30 [d9735932](https://github.com/silverstripe/developer-docs/commit/d973593293b56697bc43a22fc5e5a06b2bc9b3cb) Add UrlField (Steve Boyd) - - 2024-01-29 [f5a095af](https://github.com/silverstripe/developer-docs/commit/f5a095af472c7a07620f27505062e1d76b28d227) CMS JSON API's (Steve Boyd) - - 2024-01-29 [9f5ea80e](https://github.com/silverstripe/developer-docs/commit/9f5ea80e5582bbe7d648873f10eabea74cf956f0) Document PHPDoc as a PHP coding standard (#448) (Guy Sartorelli) - - 2024-01-25 [3136033f](https://github.com/silverstripe/developer-docs/commit/3136033fb9920698fd7048fd050e0ce0131f1f57) Add description for type/other label and clarify affects labels (Steve Boyd) - - 2024-01-18 [8ec4dfd6](https://github.com/silverstripe/developer-docs/commit/8ec4dfd616e83d50f69dec7e2a7a06f7b576d6f4) fix minor typo on class name in code sample (Ravindu) - - 2024-01-18 [04437708](https://github.com/silverstripe/developer-docs/commit/044377087e92cb44c22fee44fee6eb168346c5c9) Document making variants with different file extensions (Guy Sartorelli) - - 2024-01-17 [65b1ab1c](https://github.com/silverstripe/developer-docs/commit/65b1ab1c13d71173dddb4e9eff2f1025b61c7d6c) Refactor docs about file manipulation into its own page (Guy Sartorelli) - - 2024-01-17 [81574844](https://github.com/silverstripe/developer-docs/commit/815748443feb91317339e85b01bb95d0863d4b51) Document deprecated API (#440) (Guy Sartorelli) - - 2024-01-14 [9fffd6d8](https://github.com/silverstripe/developer-docs/commit/9fffd6d865bff22cad60b3191f5c5fe85e13fa72) Document added generic types (Guy Sartorelli) - - 2024-01-08 [980c4b95](https://github.com/silverstripe/developer-docs/commit/980c4b95e8367e5ab8095f6e774637ca805cb180) Document new redirector 404 in changelog (#437) (Guy Sartorelli) - - 2024-01-08 [3ad9dce5](https://github.com/silverstripe/developer-docs/commit/3ad9dce5af4747ef5588c76097e90ad4d411dc27) Document new config for splitting summary sentences (#428) (Guy Sartorelli) - - 2024-01-08 [c3f61e59](https://github.com/silverstripe/developer-docs/commit/c3f61e595c33b0822c518a5052fa7887f68145a6) Document changes to asset admin file size config (#430) (Guy Sartorelli) - - 2024-01-08 [d01a1eb4](https://github.com/silverstripe/developer-docs/commit/d01a1eb440a4841f379a02bb30c4440a646c6ba7) Fix spelling issue (#436) (Sabina Talipova) - - 2024-01-07 [52c71d71](https://github.com/silverstripe/developer-docs/commit/52c71d717c81799f9bb73697332d8bc22fc89186) Update changelog for `.brf` support (Ed Wilde) - - 2023-12-19 [1d517716](https://github.com/silverstripe/developer-docs/commit/1d517716ff78f317ea670495af1037538ee5fb7f) Auto scaffolding has_one relations (Steve Boyd) - - 2023-12-18 [a0054052](https://github.com/silverstripe/developer-docs/commit/a0054052de182fe195de894eec7cd1b7f867b939) Document lazy loading (Guy Sartorelli) - - 2023-12-14 [ea47bc59](https://github.com/silverstripe/developer-docs/commit/ea47bc5971447a451badb86d9b35bde77ab24d91) Document another exception to catch when dealing with email (#421) (Guy Sartorelli) - - 2023-12-14 [e1cc2c28](https://github.com/silverstripe/developer-docs/commit/e1cc2c28dbba5aceb6ab7c4a9d63bb9cc7bc28a6) Add SearchableDropdownField to 5.2.0 changelog (Steve Boyd) - - 2023-12-12 [e2c2ff19](https://github.com/silverstripe/developer-docs/commit/e2c2ff19c73a3af676a8dce57856e32f3d60618e) Update supported PHP version for CMS 5.2 (Sabina Talipova) - - 2023-12-11 [fd9af106](https://github.com/silverstripe/developer-docs/commit/fd9af106dc54690c388b4ff0c1a077dd0b5f6ce3) Document multi-reciprocal has_one relations (#417) (Guy Sartorelli) - - 2023-12-11 [137bdaa0](https://github.com/silverstripe/developer-docs/commit/137bdaa0a79253966caf2c46e7fd17c3e456e28e) Update changelog for security patches (Guy Sartorelli) - - 2023-12-10 [3657480d](https://github.com/silverstripe/developer-docs/commit/3657480d00064ced7eb47dd9c240687dfd78e775) Document gridfield with arbitrary data (Guy Sartorelli) - - 2023-12-10 [78e53226](https://github.com/silverstripe/developer-docs/commit/78e5322660f63c7096baaa9e96017163d9aa0daa) Nested RequestHandlers (Steve Boyd) - - 2023-11-29 [1a514d10](https://github.com/silverstripe/developer-docs/commit/1a514d1070a1303b6135a5d8dcf43a5aa617cce7) Document new staticpublishqueue configuration (#413) (Guy Sartorelli) - - 2023-11-27 [7aaf5358](https://github.com/silverstripe/developer-docs/commit/7aaf5358c96a8293a3f83f661d229ed9382edc0b) Document using GridField with arbitrary data (Guy Sartorelli) - - 2023-11-26 [2dcd339c](https://github.com/silverstripe/developer-docs/commit/2dcd339c73ab86b9fa0eed3d57f4709e8549d3da) Update coding conventions (Steve Boyd) - - 2023-11-26 [0786b201](https://github.com/silverstripe/developer-docs/commit/0786b2014bafc57f679432bd77440ae1bd7a8873) Add SortPlugin to the docs (Sabina Talipova) - - 2023-11-23 [554e4f0c](https://github.com/silverstripe/developer-docs/commit/554e4f0c4fa87154e51b27c859a63e62c893d13c) Include method signatures in public API definition (Guy Sartorelli) - - 2023-11-22 [51cba6cc](https://github.com/silverstripe/developer-docs/commit/51cba6cc5474e33b41154ca047791fc668ce9060) LogicException when no react component (Steve Boyd) - - 2023-11-14 [d9893215](https://github.com/silverstripe/developer-docs/commit/d989321526f521d40ee567658b67548ef2325ea6) Document new dev admin permissions (#399) (Guy Sartorelli) - - 2023-11-07 [6f0861b0](https://github.com/silverstripe/developer-docs/commit/6f0861b0117147c7912ac6ebf9aa3e663c2539cb) Select all and deselect all files (Steve Boyd) - - 2023-11-06 [3b59d4e2](https://github.com/silverstripe/developer-docs/commit/3b59d4e23b28da107f96a98523e0f54f8b6ef113) Deprecated $having parameter (Steve Boyd) - - 2023-11-02 [adb81fb1](https://github.com/silverstripe/developer-docs/commit/adb81fb19bd5b0387b7ebbfe460e5371d349e896) prefix (Steve Boyd) - - 2023-11-02 [5b23e3e7](https://github.com/silverstripe/developer-docs/commit/5b23e3e72c3552a00a10527c33e514bf3a5b0cb3) Remove references to old Addons website (#389) (Maxime Rainville) - - 2023-11-02 [7c7ed947](https://github.com/silverstripe/developer-docs/commit/7c7ed9470c56d7a9c8df49b8a62a13040062da06) Document new community roles (Guy Sartorelli) - - 2023-11-02 [c04c2e03](https://github.com/silverstripe/developer-docs/commit/c04c2e039dfbef58416baa01406c3a7b8eb2fe05) Document new hide_pagetypes config (Guy Sartorelli) - - 2023-10-25 [951c9c81](https://github.com/silverstripe/developer-docs/commit/951c9c817efc6fbebeddcefe84186070cc64e41a) Update 01_Code.md (Andrew Paxley) - - 2023-10-25 [f708c403](https://github.com/silverstripe/developer-docs/commit/f708c40355752dc64c998f125f38700990e2252f) Restructure the contributing docs (#385) (Guy Sartorelli) - - 2023-10-24 [3dcdc188](https://github.com/silverstripe/developer-docs/commit/3dcdc18866eeba26b453a0c252999b92baf12e5e) Update maintainer guidelines (#383) (Guy Sartorelli) - - 2023-10-24 [8566c1f0](https://github.com/silverstripe/developer-docs/commit/8566c1f040e86e9777291717c554d04ed902c316) Update contributing code docs (#379) (Guy Sartorelli) - - 2023-10-24 [caf0c452](https://github.com/silverstripe/developer-docs/commit/caf0c452e83f6ccd7c9bf236df04be31824e72c5) Specify what makes a "core" module different (#384) (Guy Sartorelli) - - 2023-10-24 [94aff599](https://github.com/silverstripe/developer-docs/commit/94aff5999f00c58a78ec2161b016d70564b727bb) Update triage resources (#382) (Guy Sartorelli) - - 2023-10-24 [a6d4f746](https://github.com/silverstripe/developer-docs/commit/a6d4f7465a2a4ec73eb8f0f1bfa0e74c2c395e14) Update documentation about documenation (#380) (Guy Sartorelli) - - 2023-10-24 [4bdfce04](https://github.com/silverstripe/developer-docs/commit/4bdfce04189842c99fce835703800a3165748de9) Update issues/bugs page (#378) (Guy Sartorelli) - - 2023-10-24 [71785917](https://github.com/silverstripe/developer-docs/commit/717859176a0b8b1826261ce82b5089909fa053c0) Update translation doc (#381) (Guy Sartorelli) - - 2023-10-19 [4e669f12](https://github.com/silverstripe/developer-docs/commit/4e669f12c5fcd6cc88e54f31f8a11accc03f70dd) Create new users with random passwords (Steve Boyd) - - 2023-10-17 [36f9313a](https://github.com/silverstripe/developer-docs/commit/36f9313aed059a83d2b8d386b2b26a5006b304d9) Update eagerloading docs to explicitly say no relation filter (#376) (Guy Sartorelli) - - 2023-10-17 [a9966929](https://github.com/silverstripe/developer-docs/commit/a99669290e6fb2a4c131c4ed7d94c8eed3771788) Mention that SS_TRUSTED_PROXY_IPS supports subnets (Johannes Hammersen) - - 2023-10-02 [c6525f22](https://github.com/silverstripe/developer-docs/commit/c6525f22b95158ebaee3b57ff9df6f9be23a9cf8) Document ORM changes for CMS 5.2 (#351) (Guy Sartorelli) - - 2023-09-25 [ce291746](https://github.com/silverstripe/developer-docs/commit/ce2917464f19de9a856cd1295146c1c90840e1f2) add errorpage allowed_error_codes to 5.2.0 changelog (Andrew Paxley) - - 2023-09-19 [2177d6a9](https://github.com/silverstripe/developer-docs/commit/2177d6a960cd26f0ba03b30ac2d67222e3cbee98) Document deprecation of old password encryptors (#348) (Guy Sartorelli) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-beta1) - - 2024-02-25 [d820d0b](https://github.com/silverstripe/silverstripe-linkfield/commit/d820d0b98a04656b9bfb205c8c231f7c08d4b50e) Fix docs links in readme (Guy Sartorelli) - - 2024-02-20 [7c11469](https://github.com/silverstripe/silverstripe-linkfield/commit/7c114696b6faf41ab2982892f4db8ada894c52b7) Link field User manual (Sabina Talipova) - - 2024-02-18 [a79f97d](https://github.com/silverstripe/silverstripe-linkfield/commit/a79f97d680ec4bb425579ff768c60f3a76d20ef2) Provide proper developer documentation (#224) (Guy Sartorelli) - - 2024-02-13 [2b0eef1](https://github.com/silverstripe/silverstripe-linkfield/commit/2b0eef18e79a20c14c02ec8116797b2069104f51) Automatic publishing of linked pages and files (Steve Boyd) - - 2024-02-12 [c5f91c4](https://github.com/silverstripe/silverstripe-linkfield/commit/c5f91c4ae92378a59f4f09be2c68f74d873490e1) Update PHPDocs (Guy Sartorelli) - - 2023-12-05 [22fcdcc](https://github.com/silverstripe/silverstripe-linkfield/commit/22fcdcc1415e09e775e47fe081f1921e4ff83ac2) Update PHPDoc for link models (#136) (Guy Sartorelli) - - 2023-12-05 [5b86669](https://github.com/silverstripe/silverstripe-linkfield/commit/5b866698633c83d0c1bb533f126a53eb20910f89) Update sentence in README (Steve Boyd) - - 2023-11-29 [cc21f8a](https://github.com/silverstripe/silverstripe-linkfield/commit/cc21f8acc3fe3b0ba04b6585763372596aca1065) Update README (Guy Sartorelli) - -### Translations {#changelog-translations} - -- silverstripe/assets (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [577d3f5](https://github.com/silverstripe/silverstripe-assets/commit/577d3f5eaf2c2613d5fba90073039dd13cdd5747) Update translations (#591) (Guy Sartorelli) - - 2024-02-07 [65c5d2a](https://github.com/silverstripe/silverstripe-assets/commit/65c5d2a88975723ca145006587dff8d343174138) Update translations (#590) (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2024-02-08 [c40602957](https://github.com/silverstripe/silverstripe-framework/commit/c40602957310e265355dfc3b5b6fc1d0ba905832) Update translations (#11130) (Guy Sartorelli) - - 2024-02-07 [f952183cd](https://github.com/silverstripe/silverstripe-framework/commit/f952183cdf6c066d1e1d3cd1d006752a21f258e5) Update translations (#11126) (Guy Sartorelli) - - 2024-02-06 [26273bf37](https://github.com/silverstripe/silverstripe-framework/commit/26273bf3719dbcf7c1f57f893acddee76c551d25) Update translations (#11125) (Guy Sartorelli) - - 2023-11-06 [3c98264f8](https://github.com/silverstripe/silverstripe-framework/commit/3c98264f82f539680de2c2a48d6b2a16a4599bc9) Update translations (Steve Boyd) - - 2023-11-03 [5ff6811b0](https://github.com/silverstripe/silverstripe-framework/commit/5ff6811b007bc5a95786324e87db60e78fd2cba7) Update translations (Steve Boyd) - -- silverstripe/mimevalidator (3.0.0 -> 3.1.0-beta1) - - 2024-02-07 [7fd4a96](https://github.com/silverstripe/silverstripe-mimevalidator/commit/7fd4a964eac6f696a88a4af0abcc57d7db3e745b) Update translations (#72) (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [b4f13ed4](https://github.com/silverstripe/silverstripe-admin/commit/b4f13ed47830cfff78732dfa449bb243d7aa208f) Update translations (#1675) (Guy Sartorelli) - - 2024-02-07 [29e978be](https://github.com/silverstripe/silverstripe-admin/commit/29e978be4660147aa82958788053d10af6f05da3) Update translations (#1673) (Guy Sartorelli) - - 2023-11-06 [1c78d8f6](https://github.com/silverstripe/silverstripe-admin/commit/1c78d8f6596f318ca5d75985f80d92c3ee9ae922) Update translations (Steve Boyd) - - 2023-11-05 [9463da40](https://github.com/silverstripe/silverstripe-admin/commit/9463da40a1b2da36e1b6ab07c5183b02eb6ee3b3) Update translations (Steve Boyd) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [2a4a4a3d](https://github.com/silverstripe/silverstripe-asset-admin/commit/2a4a4a3d5142622c0f8c0135b8460150c7d0c16c) Update translations (#1442) (Guy Sartorelli) - - 2024-02-06 [55c1b3f2](https://github.com/silverstripe/silverstripe-asset-admin/commit/55c1b3f27b8c83ec6c63c328b30f4803f30348e4) Update translations (#1439) (Guy Sartorelli) - - 2023-11-07 [7e9d7cd7](https://github.com/silverstripe/silverstripe-asset-admin/commit/7e9d7cd7b8f203e880e4e4d56351251f49531dc3) Update translations (Steve Boyd) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-07 [7d3c679](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7d3c679756b08915e691f073acb60c6913c13c25) Update translations (#294) (Guy Sartorelli) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [9f01c01](https://github.com/silverstripe/silverstripe-versioned-admin/commit/9f01c0170d3a0458e93fb19f147cf00ec02b80cb) Update translations (#324) (Guy Sartorelli) - - 2024-02-07 [6e9c8e8](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6e9c8e8dabb61897ee820a7950046fcb391d4cd9) Update translations (#322) (Guy Sartorelli) - -- silverstripe/cms (5.1.0 -> 5.2.0-beta1) - - 2024-02-08 [ac348693](https://github.com/silverstripe/silverstripe-cms/commit/ac3486938f90d37347093f41720de92883c98f95) Update translations (#2921) (Guy Sartorelli) - - 2024-02-07 [9dfc5dea](https://github.com/silverstripe/silverstripe-cms/commit/9dfc5dea2eb4923179b5ba7d2b39f8db7fd1e32d) Update translations (#2920) (Guy Sartorelli) - - 2023-11-06 [a51effa2](https://github.com/silverstripe/silverstripe-cms/commit/a51effa2acdcb3eed04949900ea987a0ee40076c) Update translations (Steve Boyd) - -- silverstripe/errorpage (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [14ce510](https://github.com/silverstripe/silverstripe-errorpage/commit/14ce5105559c359289a999b1b0f4826948e31c6b) Update translations (#101) (Guy Sartorelli) - - 2024-02-06 [df9b24b](https://github.com/silverstripe/silverstripe-errorpage/commit/df9b24beafc25e53fa4e67e6d341d514de1a53f9) Update translations (#98) (Guy Sartorelli) - - 2023-11-06 [8660060](https://github.com/silverstripe/silverstripe-errorpage/commit/8660060a92748167572e7e4667c6919ffaed1c8a) Update translations (Steve Boyd) - -- silverstripe/reports (5.1.0 -> 5.2.0-beta1) - - 2024-02-08 [c9c6c3ff](https://github.com/silverstripe/silverstripe-reports/commit/c9c6c3ff1e579e7b800c644565451b4578a3db39) Update translations (#176) (Guy Sartorelli) - - 2024-02-07 [f5b5daa7](https://github.com/silverstripe/silverstripe-reports/commit/f5b5daa71199a93bd301746de076283f3ba29563) Update translations (#175) (Guy Sartorelli) - -- silverstripe/siteconfig (5.1.0 -> 5.2.0-beta1) - - 2024-02-08 [e3c7621e](https://github.com/silverstripe/silverstripe-siteconfig/commit/e3c7621e710933e8e2adc5e473586c319b87d22c) Update translations (#156) (Guy Sartorelli) - - 2024-02-07 [3a46ee94](https://github.com/silverstripe/silverstripe-siteconfig/commit/3a46ee94c52fd460df92adc4c516ea0fd4cb5a18) Update translations (#155) (Guy Sartorelli) - - 2023-11-06 [d3073a87](https://github.com/silverstripe/silverstripe-siteconfig/commit/d3073a874e4ead79e82a52cbac6d71bedfdac075) Update translations (Steve Boyd) - - 2023-11-03 [5842dac1](https://github.com/silverstripe/silverstripe-siteconfig/commit/5842dac1bdc4dfc802c392f93a1710967fe4e8af) Update translations (Steve Boyd) - -- silverstripe/versioned (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [6871553](https://github.com/silverstripe/silverstripe-versioned/commit/6871553f5299b2caca2cbc5df3c07470c5a37728) Update translations (#437) (Guy Sartorelli) - - 2024-02-07 [a323d94](https://github.com/silverstripe/silverstripe-versioned/commit/a323d947f273a52f37fba3ed3489e4e68619b2b9) Update translations (#435) (Guy Sartorelli) - - 2024-02-06 [da1ba52](https://github.com/silverstripe/silverstripe-versioned/commit/da1ba526777e3de4836569b99b3b167db7cdfe36) Update translations (#434) (Guy Sartorelli) - -- silverstripe/session-manager (2.1.0 -> 2.2.0-beta1) - - 2024-02-08 [cc59d9c](https://github.com/silverstripe/silverstripe-session-manager/commit/cc59d9ca1215feb636996c300923c2076d99bf65) Update translations (#182) (Guy Sartorelli) - - 2024-02-07 [3e98627](https://github.com/silverstripe/silverstripe-session-manager/commit/3e986279f32ce9a5016111b117813d9678d6c977) Update translations (#181) (Guy Sartorelli) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-beta1) - - 2024-02-08 [f9738e1](https://github.com/silverstripe/silverstripe-login-forms/commit/f9738e17fd734436d13d636c2ed7ae5966c15409) Update translations (#166) (Guy Sartorelli) - - 2024-02-07 [86f6214](https://github.com/silverstripe/silverstripe-login-forms/commit/86f6214512fbe056778689c30cbe1c322ea11b45) Update translations (#165) (Guy Sartorelli) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [1bd09d5](https://github.com/silverstripe/silverstripe-documentconverter/commit/1bd09d508780951692598117e8ba31dca91bb204) Update translations (#69) (Guy Sartorelli) - -- silverstripe/iframe (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [a8243f3](https://github.com/silverstripe/silverstripe-iframe/commit/a8243f3bcb823a2d1d15d14c3c670b63b0dd2384) Update translations (#80) (Guy Sartorelli) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [241c257](https://github.com/silverstripe/silverstripe-taxonomy/commit/241c2577d59e58a7d7c16652aeea6c20a2006e9c) Update translations (#105) (Guy Sartorelli) - - 2023-11-06 [2711d00](https://github.com/silverstripe/silverstripe-taxonomy/commit/2711d003740143a53ffc736652071035ac4db903) Update translations (Steve Boyd) - -- silverstripe/blog (4.1.0 -> 4.2.0-beta1) - - 2024-02-07 [95a2808](https://github.com/silverstripe/silverstripe-blog/commit/95a2808c04656f655dd27a0722ad85b85d140b64) Update translations (#742) (Guy Sartorelli) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-beta1) - - 2024-02-07 [5badc34](https://github.com/silverstripe/silverstripe-spamprotection/commit/5badc345defa7298f35c9ca9912adcbcbb7d3ff0) Update translations (#111) (Guy Sartorelli) - -- silverstripe/contentreview (5.1.0 -> 5.2.0-beta1) - - 2024-02-07 [bb3eec1](https://github.com/silverstripe/silverstripe-contentreview/commit/bb3eec116048a4b2653eb80a7542ca9ccc5b84b5) Update translations (#223) (Guy Sartorelli) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [5531318](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/5531318c64be3da83815212f243411955dd53ebf) Update translations (#225) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-beta1) - - 2024-02-07 [e147a4d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/e147a4db5ab54207839b3081642d22e7d9cb8b5e) Update translations (#520) (Guy Sartorelli) - - 2023-11-06 [5efa077](https://github.com/symbiote/silverstripe-advancedworkflow/commit/5efa0771b8f904d911e45eb410cad6a42270d920) Update translations (Steve Boyd) - -- silverstripe/segment-field (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [8e0e850](https://github.com/silverstripe/silverstripe-segment-field/commit/8e0e850cacc6875b11f61426f663268027619226) Update translations (#98) (Guy Sartorelli) - -- silverstripe/userforms (6.1.0 -> 6.2.0-beta1) - - 2024-02-07 [d070e7d](https://github.com/silverstripe/silverstripe-userforms/commit/d070e7dcf93f149aa30489278831e07de016acdf) Update translations (#1265) (Guy Sartorelli) - - 2023-11-06 [b9df907](https://github.com/silverstripe/silverstripe-userforms/commit/b9df907abfb14b4f59fa87abccbb6554313b453f) Update translations (Steve Boyd) - -- silverstripe/externallinks (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [b12e686](https://github.com/silverstripe/silverstripe-externallinks/commit/b12e6868bc4ae8513921aee078e14e5497406ff8) Update translations (#120) (Guy Sartorelli) - -- silverstripe/securityreport (3.0.0 -> 3.1.0-beta1) - - 2024-02-07 [51c745e](https://github.com/silverstripe/silverstripe-securityreport/commit/51c745eb36231481cf1aedd12c2f7a81d477a357) Update translations (#75) (Guy Sartorelli) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [8287278](https://github.com/silverstripe/silverstripe-versionfeed/commit/82872780eb98b12729adabd4a10134e9862c20d3) Update translations (#99) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-beta1) - - 2024-02-07 [e1d6370](https://github.com/silverstripe/silverstripe-elemental/commit/e1d637079dedc0792ba370de3d79da91bc3c2942) Update translations (#1144) (Guy Sartorelli) - -- silverstripe/hybridsessions (3.0.2 -> 3.0.3) - - 2024-02-06 [402c6e4](https://github.com/silverstripe/silverstripe-hybridsessions/commit/402c6e40a7e34cd725af1c0539370328a4e22fcc) Update translations (Guy Sartorelli) - -- silverstripe/registry (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [8209e0d](https://github.com/silverstripe/silverstripe-registry/commit/8209e0de8fb30bc74543e9ce58f501a5b7a052ad) Update translations (#93) (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0-beta1) - - 2024-02-07 [bc196b2](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/bc196b2a5b67822dd7d09a47a145e062c3ba8038) Update translations (#145) (Guy Sartorelli) - -- silverstripe/mfa (5.1.0 -> 5.2.0-beta1) - - 2023-11-07 [9390a7d](https://github.com/silverstripe/silverstripe-mfa/commit/9390a7d560663d4de507f44e40896b94684b714d) Update translations (Steve Boyd) - -- silverstripe/crontask (3.0.2 -> 3.0.3) - - 2024-02-07 [1d2db78](https://github.com/silverstripe/silverstripe-crontask/commit/1d2db788db8445b44016ec0c8bf1a59aadfb1065) Update translations (#86) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [299929e](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/299929e0147fc49ec4a15634770a86279bcb14a4) Update translations (#98) (Guy Sartorelli) - -- silverstripe/realme (5.2.0 -> 5.3.0-beta1) - - 2023-11-06 [96974a0](https://github.com/silverstripe/silverstripe-realme/commit/96974a0f0c79e6361625933665b3f3016823816b) Update translations (Steve Boyd) - - 2023-11-03 [f420ac8](https://github.com/silverstripe/silverstripe-realme/commit/f420ac8d41caf60f6316386798946cdd91d87932) Update translations (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0-beta1) - - 2023-11-07 [81e45fe](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/81e45fe237ef8372e07f9e2f08890def9c95df66) Update translations (Steve Boyd) - -- silverstripe/subsites (3.1.0 -> 3.2.0-beta1) - - 2024-02-07 [d66e723](https://github.com/silverstripe/silverstripe-subsites/commit/d66e723a511ebc656efc07dcb86f5c5743dda62e) Update translations (#557) (Guy Sartorelli) - - 2023-11-06 [dd3073f](https://github.com/silverstripe/silverstripe-subsites/commit/dd3073f41aa0d3d724ade8c3630ebd14eaefdad3) Update translations (Steve Boyd) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0-beta1) - - 2024-02-07 [cae40f4](https://github.com/silverstripe/silverstripe-lumberjack/commit/cae40f4367b0dcceb776abb9c2644e0dc7821629) Update translations (#140) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental-userforms (4.1.0 -> 4.1.1) - - 2024-02-07 [ce60338](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/ce603388464d93c21010ddde3c849363ccc133a9) Update translations (#88) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2024-02-07 [c84d8af](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c84d8afa7a082b314609eb23f57483c54cb1c813) Update translations (#381) (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0-beta1) - - 2024-02-07 [892dbba](https://github.com/symbiote/silverstripe-queuedjobs/commit/892dbba99626cc2a9e4ecec6efd03600008b7aca) Update translations (#419) (Guy Sartorelli) - -### Other changes {#changelog-other-changes} - -- silverstripe/assets (2.1.0 -> 2.2.0-beta1) - - 2023-10-25 [63bd612](https://github.com/silverstripe/silverstripe-assets/commit/63bd6126b228452dd692d7a41b6e841e1c990d92) Add support for braille format files (#574) (Ed Wilde) - -- silverstripe/framework (5.1.0 -> 5.2.0-beta1) - - 2024-02-27 [59177dd31](https://github.com/silverstripe/silverstripe-framework/commit/59177dd3157f5b0894d5e7c07244a76a327c7c40) Delete tests/php/Core/Manifest/fixtures/VersionProviderTest directory (Thomas Portelange) - - 2024-02-27 [2921d68a5](https://github.com/silverstripe/silverstripe-framework/commit/2921d68a57ed718a5d0633b90c186d24b90c98dc) Update composer.json (Thomas Portelange) - - 2024-02-26 [a06ce0493](https://github.com/silverstripe/silverstripe-framework/commit/a06ce0493a5507bd78d35805f114b57927c14223) use VersionParser instead of comparator (Thomas Portelange) - - 2024-02-26 [80e197fe4](https://github.com/silverstripe/silverstripe-framework/commit/80e197fe4ffffc12136bb1dad49944971bddfe76) make error message more readable (Thomas Portelange) - - 2024-02-26 [a1d1e977c](https://github.com/silverstripe/silverstripe-framework/commit/a1d1e977c5912bcc5ed4a9a46901c523da1e7bbe) use composer/semver (Thomas Portelange) - - 2024-02-26 [071333f77](https://github.com/silverstripe/silverstripe-framework/commit/071333f774419f8f4549e9a5a027ead0796646c9) add composer/semver (Thomas Portelange) - - 2024-02-26 [68b79e11e](https://github.com/silverstripe/silverstripe-framework/commit/68b79e11ee6cca43637f6746c2c3ea64ee3af0a2) missing import (Thomas Portelange) - - 2024-02-26 [269692202](https://github.com/silverstripe/silverstripe-framework/commit/2696922023297943b1a5a9189490aa9a7f3a1243) update return type (Thomas Portelange) - - 2024-02-26 [1cf3dde9f](https://github.com/silverstripe/silverstripe-framework/commit/1cf3dde9f15623d61399814ee90360d225691b53) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [2b64e98af](https://github.com/silverstripe/silverstripe-framework/commit/2b64e98afc6e2368cce156e7c55dda7accfc8f00) Update VersionProviderTest.php (Thomas Portelange) - - 2024-02-26 [b53148c03](https://github.com/silverstripe/silverstripe-framework/commit/b53148c034394a37b7c16ce34a340a83da3f4afe) add deprecation, remove class_exists (Thomas Portelange) - - 2024-02-26 [2600b2661](https://github.com/silverstripe/silverstripe-framework/commit/2600b266172a51215963ebbb0dc640d77f6ded95) add composer-runtime-api (Thomas Portelange) - - 2024-02-26 [e649310f7](https://github.com/silverstripe/silverstripe-framework/commit/e649310f7bb96f1970156d07a31d990dde317e0f) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [a2486c085](https://github.com/silverstripe/silverstripe-framework/commit/a2486c085948c65545670fb903c99b92636eed7e) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [a19671950](https://github.com/silverstripe/silverstripe-framework/commit/a196719502e96019c5a0cf00cad9c33ea0c0fed7) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-23 [bc0912718](https://github.com/silverstripe/silverstripe-framework/commit/bc091271826aa7be800d961c4739bc2482ff7a00) use composer runtime api (Thomas Portelange) - - 2024-02-08 [e0107e020](https://github.com/silverstripe/silverstripe-framework/commit/e0107e0202914edd25629443a044b6883c18bb83) Update src/ORM/DataQuery.php (Thomas Portelange) - - 2024-02-08 [2ac68a55a](https://github.com/silverstripe/silverstripe-framework/commit/2ac68a55a4a806a64459b744f76a49e37367ee0d) rename var (Thomas Portelange) - - 2023-12-12 [b6c646ffb](https://github.com/silverstripe/silverstripe-framework/commit/b6c646ffbea586a9ffaa15e6d8fb27e5e14b683a) Also remove the unused `$last_idx` assignment (Ed Wilde) - - 2023-12-12 [81541db89](https://github.com/silverstripe/silverstripe-framework/commit/81541db892b17db0caf9b349bd807ef9efdb117d) Remove unused line in `findTab()` (Ed Wilde) - - 2023-11-09 [b9da08a30](https://github.com/silverstripe/silverstripe-framework/commit/b9da08a3017128271ea25675a9de12c0147a79c8) Update task-not-found messaging (Andrew Paxley) - - 2023-11-09 [c77a77d58](https://github.com/silverstripe/silverstripe-framework/commit/c77a77d584bff98d9bc335d61ab3f46372954a90) Flip canView logic and combine into taskEnabled check (Andrew Paxley) - - 2023-10-15 [e5eb98cc3](https://github.com/silverstripe/silverstripe-framework/commit/e5eb98cc3491785cbae17bb53be0be05fd5a6f42) Use field editorconfig when sanitising content (Bernie Hamlin) - - 2023-10-11 [af536a88d](https://github.com/silverstripe/silverstripe-framework/commit/af536a88d22a450604b090810bf8800f39aec66e) Add support for braille format files (Ed Wilde) - -- silverstripe/mimevalidator (3.0.0 -> 3.1.0-beta1) - - 2023-10-11 [25bfefc](https://github.com/silverstripe/silverstripe-mimevalidator/commit/25bfefc1459e81015c623619354a60db2b1debae) Add support for braille format files (Ed Wilde) - -- silverstripe/admin (2.1.0 -> 2.2.0-beta1) - - 2024-02-15 [6f468685](https://github.com/silverstripe/silverstripe-admin/commit/6f468685ebb14383dafb0607c589ff201c7035f4) rename var (Thomas Portelange) - - 2024-02-14 [6bcccbbf](https://github.com/silverstripe/silverstripe-admin/commit/6bcccbbf7f0eaedcd0ca1d428a2a46a369c1d66d) use innerText, rename (Thomas Portelange) - - 2024-02-07 [4c0247cd](https://github.com/silverstripe/silverstripe-admin/commit/4c0247cd9975559a0ad416245f3ba01a439bcf32) Revert "TLN Update translations (#1673)" (Steve Boyd) - - 2023-10-27 [3c969733](https://github.com/silverstripe/silverstripe-admin/commit/3c969733bb3154a09e45f1905a6c8fe6bf12ba87) Define a minimum width for the logo (Ed Wilde) - - 2023-10-27 [050b8b93](https://github.com/silverstripe/silverstripe-admin/commit/050b8b93c89c40b1d5a3dc5a58b585bb961bf239) Add the new CMS logo locally (Ed Wilde) - - 2023-10-12 [7cda7c7e](https://github.com/silverstripe/silverstripe-admin/commit/7cda7c7e729c4c07658cd9bad90ea2f6fa5481b8) Update Storybook logo to the 5.1 OSS logo (Ed Wilde) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-beta1) - - 2023-12-12 [4fe280ed](https://github.com/silverstripe/silverstripe-asset-admin/commit/4fe280ed41dc452cac8bf8c82c170f7b00949dc7) Update sort param (Vivienne Tubbs) - -- silverstripe/cms (5.1.0 -> 5.2.0-beta1) - - 2023-01-11 [79acadc0](https://github.com/silverstripe/silverstripe-cms/commit/79acadc0bba1b84c1d4d9f85d8a0281e3c10fb43) PATCH: remove jQuery reference (Nicolaas / Sunny Side Up) - - 2023-01-09 [8d403a1d](https://github.com/silverstripe/silverstripe-cms/commit/8d403a1d83fc7cf30c4ffb4f28481004f9b63fe1) PATCH: fixing jquery link to thirdparty/jquery-query/jquery.query.js (Nicolaas / Sunny Side Up) - -- silverstripe/versioned (2.1.0 -> 2.2.0-beta1) - - 2023-10-30 [7eddb6b](https://github.com/silverstripe/silverstripe-versioned/commit/7eddb6b944b4c0f76a5deb4090f35aacbde88803) Apply suggestions from code review (Mojmir Fendek) - - 2023-10-19 [f21edce](https://github.com/silverstripe/silverstripe-versioned/commit/f21edce874766c6a195f4fb3ed6bc727dd182504) PR fixes. (Mojmir Fendek) - - 2023-10-19 [5ed82fe](https://github.com/silverstripe/silverstripe-versioned/commit/5ed82fe06eb104846762b88e8b38f4e1c832dd18) PR fixes. (Mojmir Fendek) - - 2023-10-19 [76568ac](https://github.com/silverstripe/silverstripe-versioned/commit/76568ac021abd442aa7ad53eff7dfbb7e468ee29) PR fixes. (Mojmir Fendek) - - 2023-10-18 [d6490ce](https://github.com/silverstripe/silverstripe-versioned/commit/d6490cef97a6d3efab6fa03e712a06739d8405ae) PR fixes. (Mojmir Fendek) - - 2023-10-16 [d2efe5a](https://github.com/silverstripe/silverstripe-versioned/commit/d2efe5acba12462d816ee6db4ca28f6c9b2ca06d) PR fixes. (Mojmir Fendek) - - 2021-04-06 [97d1ac6](https://github.com/silverstripe/silverstripe-versioned/commit/97d1ac66fadaf93613e48d8c46919723c7893604) PR fixes. (Mojmir Fendek) - - 2021-04-06 [dd2674f](https://github.com/silverstripe/silverstripe-versioned/commit/dd2674fa064dae94ec0bf4077f4886234d55a31a) Update src/RecursiveStagesService.php (Mojmir Fendek) - -- silverstripe/graphql (5.1.0 -> 5.2.0-beta1) - - 2023-10-19 [addf529](https://github.com/silverstripe/silverstripe-graphql/commit/addf529b5c26affd35a787529fc776d04d3dc15c) add canInit method and CAN_DEV_GRAPHQL permissions (Andrew Paxley) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-beta1) - - 2023-09-11 [b0d6c3e](https://github.com/silverstripe/silverstripe-login-forms/commit/b0d6c3ed805c8e3ca2892f11a8dcbed4f617db9a) Small typo in README.md (Vinnie) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-beta1) - - 2023-09-28 [9257956](https://github.com/silverstripe/silverstripe-tagfield/commit/92579562553441e2a203ff00156441848a10a633) fixed reference issue now that we've changed ref from createRef() (josephlewisnz) - - 2023-09-28 [f7af10a](https://github.com/silverstripe/silverstripe-tagfield/commit/f7af10a8372096c48e5ddfe10446ef33f713f125) build (josephlewisnz) - -- silverstripe/blog (4.1.0 -> 4.2.0-beta1) - - 2023-12-18 [b2f0d12](https://github.com/silverstripe/silverstripe-blog/commit/b2f0d12dd6199f09c3cf021979fa937a1974d1dc) Remove icons from gridfield add button (Mohamed Alsharaf) - - 2023-11-20 [d6375c5](https://github.com/silverstripe/silverstripe-blog/commit/d6375c5048c0bccefa8afe3afca95814a01f9bd7) addition to #685 also, respect mb in controller (Lukas Erni) - - 2023-11-16 [926ce56](https://github.com/silverstripe/silverstripe-blog/commit/926ce562f164c63eb01ed91b1e0aee45f8e3779c) remove plus icon for consistency (Lukas Erni) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-beta1) - - 2023-09-11 [2210891](https://github.com/silverstripe/silverstripe-spamprotection/commit/221089136f82f778f4f2281630cbe0a28618a402) Revert "fix: if no spam protector set, fail sliently" (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (4.0.0 -> 4.0.2) - - 2023-06-01 [3006076](https://github.com/colymba/GridFieldBulkEditingTools/commit/3006076c82f90ec7ae4779daa0263230f3702814) SS5 Fix: Replace json2array with json_decode (James Cocker) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-beta1) - - 2023-10-16 [58a795e](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/58a795e50a940c29bbdd8761ce50c010830f79ec) Fixes internal infinite recursion on Nginx/PHP-FPM environments (Nathan J. Brauer) - -- silverstripe/userforms (6.1.0 -> 6.2.0-beta1) - - 2023-11-12 [26a4816](https://github.com/silverstripe/silverstripe-userforms/commit/26a48162ff0e5c9fccb3d764bd449ec2e8309429) Add extension hook to control file attachments per recipient and field (Michal Kleiner) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-beta1) - - 2023-09-21 [eeb4546](https://github.com/silverstripe/silverstripe-elemental/commit/eeb45461b62ca697552220e56bde0d303a88f114) Revert Github specific markdown to maintain portability (Ed Wilde) - -- silverstripe/developer-docs (5.1.0 -> 5.2.0-beta1) - - 2023-12-14 [844f4755](https://github.com/silverstripe/developer-docs/commit/844f4755751319ff2d584285f08ea245c41643ad) Update 05_Simple_Contact_Form.md (erangaddd) - - 2023-12-06 [c516a99b](https://github.com/silverstripe/developer-docs/commit/c516a99bb67fbc15ebb0ad1337ccd1c293de1c33) Update 04_Upgrading_project.md (Tim) - - 2023-11-28 [deacfc1a](https://github.com/silverstripe/developer-docs/commit/deacfc1a179329cf72cce99707a81d63b58222ec) Fixed: link to formatting/modifying/casting variables (Patrick Côté) - - 2023-11-02 [0033a971](https://github.com/silverstripe/developer-docs/commit/0033a9715e5815e37d10dc4009e1a32eb2096ec0) Update a example code comment (Nate Devereux) - - 2023-10-19 [3e546176](https://github.com/silverstripe/developer-docs/commit/3e546176f9554657030d4f1268ac096026ebcdde) Apply suggestions from code review (Johannes Hammersen) - -- silverstripe/subsites (3.1.0 -> 3.2.0-beta1) - - 2023-09-06 [e020766](https://github.com/silverstripe/silverstripe-subsites/commit/e02076609543732432aac88aba6564222980fdd6) Revert "Switch to listing views of subsite-filtered sections" (Steve Boyd) - - 2022-09-27 [8ba7070](https://github.com/silverstripe/silverstripe-subsites/commit/8ba7070b02b4941520a2afc9d4ebde34c6e4d85e) Switch to listing views of subsite-filtered sections (Michael van Schaik) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2023-03-07 [1637e78](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1637e78ea1398217e143002ac85124917f83bf5a) Make link color white. (Robin) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0-beta1) - - 2024-02-18 [ee8d7d1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ee8d7d1e4773985f252dd4d35297ad1cfcb27dda) use AsoluteLink method for xml styles to make sure link works with SS5 trailings slash setup, fixes #818 (Florian Thoma) - - 2023-10-17 [cf27342](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cf273429b96c76db6ae454f23f8387cdb52609fe) MSSQL database doesn't allow aliases in GROUP BY (Klemen Dolinšek) - - 2023-04-12 [69a9df5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/69a9df5febb0eeab74ac83a5b55ceb4cc0d69284) skip empty 'where' clauses (mikey-harveycameron) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-beta1) - - 2023-10-18 [653071d](https://github.com/silverstripe/silverstripe-linkfield/commit/653071d4332bc3882732466d0a1e8f2eab60b259) Fixing typo of $Link.OpenInew to $Link.OpenInNew (Daniel Hurd) - - 2023-08-30 [245cdcc](https://github.com/silverstripe/silverstripe-linkfield/commit/245cdcce725164bd03e52371d1bb4e3d00b76f24) MISC: Docs update. (Mojmir Fendek) - - 2023-07-28 [437a915](https://github.com/silverstripe/silverstripe-linkfield/commit/437a9154bea6d15eb5a17d1bf394b549bff6c9f9) MISC: File link test. (Mojmir Fendek) - - 2022-10-27 [8f1a258](https://github.com/silverstripe/silverstripe-linkfield/commit/8f1a258f7f34a908936262e489cdf4125cf27db7) Add PhoneField. Add migration helpers from Linkable (#48) (Chris Penny) - - 2022-06-29 [636c679](https://github.com/silverstripe/silverstripe-linkfield/commit/636c6792ebf8c266e802814956eb1a8a954f92a7) PHP 8.1: Suppress deprecation notice (Chris Penny) - - 2022-05-13 [c1f42f2](https://github.com/silverstripe/silverstripe-linkfield/commit/c1f42f28efaf91065886c6e4f9dd8a37bc44d2e3) Debug. (Mojmir Fendek) - - 2021-11-16 [1068b78](https://github.com/silverstripe/silverstripe-linkfield/commit/1068b7830187a1fd9eed89a112a55bdd1e4bbd7f) Update namespace. Add table_name config to all models (#39) (Chris Penny) - - diff --git a/en/08_Changelogs/beta/5.3.0-beta1.md b/en/08_Changelogs/beta/5.3.0-beta1.md deleted file mode 100644 index 9f0f575f6..000000000 --- a/en/08_Changelogs/beta/5.3.0-beta1.md +++ /dev/null @@ -1,1150 +0,0 @@ -# 5.3.0-beta1 - -## Overview - -- [Security considerations](#security-considerations) -- [Features and enhancements](#features-and-enhancements) - - [Changes to `TinyMCEConfig`](#changes-to-tinymce) - - [High-level API for converting files](#file-converter) - - [Improve customisability of rendered images](#image-rendering) - - [Validation for inline-editable elemental blocks](#elemental-validation) - - [`FormField` scaffolding for `DataObject` models](#scaffolding) - - [Support for `JOIN` in SQL `UPDATE`](#sql-update-join) - - [Autologin token regeneration changes](#autologin-token-regeneration) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -A full list of module versions included in CMS Recipe 5.3.0-beta1 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.1.2 | -| bringyourownideas/silverstripe-maintenance | 3.2.0-beta1 | -| colymba/gridfield-bulk-editing-tools | 4.1.0-beta1 | -| cwp/agency-extensions | 3.3.0-beta1 | -| cwp/starter-theme | 4.2.0-beta1 | -| cwp/watea-theme | 4.2.0-beta1 | -| dnadesign/silverstripe-elemental | 5.3.0-beta1 | -| dnadesign/silverstripe-elemental-userforms | 4.1.1 | -| silverstripe-themes/simple | 3.3.2 | -| silverstripe/admin | 2.3.0-beta1 | -| silverstripe/asset-admin | 2.3.0-beta1 | -| silverstripe/assets | 2.3.0-beta1 | -| silverstripe/auditor | 3.2.0-beta1 | -| silverstripe/blog | 4.3.0-beta1 | -| silverstripe/campaign-admin | 2.3.0-beta1 | -| silverstripe/cms | 5.3.0-beta1 | -| silverstripe/config | 2.1.1 | -| silverstripe/contentreview | 5.3.0-beta1 | -| silverstripe/crontask | 3.0.4 | -| silverstripe/documentconverter | 3.3.0-beta1 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.3.0-beta1 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.2 | -| silverstripe/errorpage | 2.3.0-beta1 | -| silverstripe/externallinks | 3.3.0-beta1 | -| silverstripe/framework | 5.3.0-beta1 | -| silverstripe/graphql | 5.2.3 | -| silverstripe/gridfieldqueuedexport | 3.3.0-beta1 | -| silverstripe/hybridsessions | 3.0.5 | -| silverstripe/iframe | 3.2.1 | -| silverstripe/installer | 5.3.0-beta1 | -| silverstripe/ldap | 2.2.3 | -| silverstripe/linkfield | 4.1.0-beta1 | -| silverstripe/login-forms | 5.3.0-beta1 | -| silverstripe/lumberjack | 3.2.0-beta1 | -| silverstripe/mfa | 5.3.0-beta1 | -| silverstripe/mimevalidator | 3.1.0 | -| silverstripe/realme | 5.4.0-beta1 | -| silverstripe/recipe-authoring-tools | 2.3.0-beta1 | -| silverstripe/recipe-blog | 2.3.0-beta1 | -| silverstripe/recipe-cms | 5.3.0-beta1 | -| silverstripe/recipe-collaboration | 2.3.0-beta1 | -| silverstripe/recipe-content-blocks | 3.3.0-beta1 | -| silverstripe/recipe-core | 5.3.0-beta1 | -| silverstripe/recipe-form-building | 2.3.0-beta1 | -| silverstripe/recipe-kitchen-sink | 5.3.0-beta1 | -| silverstripe/recipe-plugin | 2.0.1 | -| silverstripe/recipe-reporting-tools | 2.3.0-beta1 | -| silverstripe/recipe-services | 2.3.0-beta1 | -| silverstripe/registry | 3.2.0 | -| silverstripe/reports | 5.3.0-beta1 | -| silverstripe/restfulserver | 3.0.1 | -| silverstripe/securityreport | 3.1.1 | -| silverstripe/segment-field | 3.3.0-beta1 | -| silverstripe/session-manager | 2.3.0-beta1 | -| silverstripe/sharedraftcontent | 3.3.0-beta1 | -| silverstripe/siteconfig | 5.3.0-beta1 | -| silverstripe/sitewidecontent-report | 4.3.0-beta1 | -| silverstripe/spamprotection | 4.2.1 | -| silverstripe/staticpublishqueue | 6.2.2 | -| silverstripe/subsites | 3.3.0-beta1 | -| silverstripe/tagfield | 3.3.0-beta1 | -| silverstripe/taxonomy | 3.2.2 | -| silverstripe/textextraction | 4.1.1 | -| silverstripe/totp-authenticator | 5.3.0-beta1 | -| silverstripe/userforms | 6.3.0-beta1 | -| silverstripe/vendor-plugin | 2.0.3 | -| silverstripe/versioned | 2.3.0-beta1 | -| silverstripe/versioned-admin | 2.3.0-beta1 | -| silverstripe/versionfeed | 3.2.3 | -| silverstripe/webauthn-authenticator | 5.3.0-beta1 | -| symbiote/silverstripe-advancedworkflow | 6.3.0-beta1 | -| symbiote/silverstripe-gridfieldextensions | 4.1.0-beta1 | -| symbiote/silverstripe-multivaluefield | 6.1.0 | -| symbiote/silverstripe-queuedjobs | 5.2.0-beta1 | -| tractorcow/silverstripe-fluent | 7.2.0-beta1 | - -
- -## Security considerations {#security-considerations} - -Three security fixes that were previously released in the July security release are mentioned in the [Silverstripe CMS security patches July 2024](https://www.silverstripe.org/blog/silverstripe-cms-security-patches-july-2024/) blog post are listed below. - -Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2024-29885 - Reports are still accessible even when canView is set to false](https://www.silverstripe.org/download/security-releases/cve-2024-29885) Severity: Medium -- [CVE-2024-32981 - XSS Vulnerability with text/html base64-encoded payload](https://www.silverstripe.org/download/security-releases/cve-2024-32981) Severity: Medium -- [SS-2024-001 - TinyMCE allows svg files linked in object tags](https://www.silverstripe.org/download/security-releases/ss-2024-001) Severity: Medium - -## Features and enhancements - -### Changes to `TinyMCEConfig` {#changes-to-tinymce} - -In order to facilitate fixing a bug related to the sanitisation of HTML content via the [`HTMLEditorSanitiser`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorSanitiser) class, some changes had to be made to the [`TinyMCEConfig`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig) class. Those changes are as follows: - -- If `valid_elements` and `extended_valid_elements` are both empty, all HTML elements will be stripped out of the HTML content. -- A default set of `valid_elements` has been defined for all `TinyMCEConfig` instances. If you use custom `TinyMCEConfig` definitions and have not explicitly set the `valid_elements` option, you may have more elements permitted than you were expecting. -- There is a new [`TinyMCEConfig.default_options`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig->default_options) configuration property which allows you to define the default options for all `TinyMCEConfig` instances. - -> [!WARNING] -> If you use custom `TinyMCEConfig` definitions, we strongly recommend double checking if they include a definition of `valid_elements`, and if they don't, validate whether the default set defined in `TinyMCEConfig.default_options` is suitable for you. -> -> You can either change the `TinyMCEConfig.default_options` configuration value to affect the options for all `TinyMCEConfig` definitions, or explicitly define `valid_elements` for your specific configuration instances. See [setting options](/developer_guides/forms/field_types/htmleditorfield/#setting-options) for more details. - -See [sanitisation of HTML](#sanitisation-of-html) for more information about the bug that was fixed. - -### High-level API for converting files {#file-converter} - -There is now a high-level API for converting files from one format to another. This builds on top of the low-level API which was [added in 5.2.0](/changelogs/5.2.0/#file-variants). - -Files can be converted both in PHP code and in templates: - -```php -// Convert an image to webp format and apply the FitMax manipulation to the result -$this->MyImage()->Convert('webp')->FitMax(100, 100); -``` - -```ss -<%-- Convert an image to webp format and apply the FitMax manipulation to the result --%> -$MyImage.Convert('webp').FitMax(100, 100) -``` - -Out of the box `silverstripe/assets` provides the new [`InterventionImageFileConverter`](api:SilverStripe\Assets\Conversion\InterventionImageFileConverter) class which converts images to other image formats using [Intervention Image](https://image.intervention.io/v2). You can add your own `FileConverter` implementations in projects or modules for any file convertions you might need. - -See [convert a file to a different format](/developer_guides/files/file_manipulation/#file-conversion) for more details. - -### Improve customisability of rendered images {#image-rendering} - -We've aligned how images added to an [`HTMLEditorField`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorField) and images invoked in templates are rendered. The markup up for both `` tags are now generated from the same template file. This makes it easier to customise how images are rendered on your site. - -The template for this is `templates/SilverStripe/Assets/Storage/DBFile_Image.ss`. Add a file with that path to your Silverstripe CMS theme if you want to override it. - -This opens many interesting possibilities. For example, this code snippet will provide a WebP version of any image rendered on your site. - -```html - - - - -``` - -You can also choose to have different rendering logic for `HTMLEditorField` images and for images invoked in templates by overriding different templates. - -- Add a `SilverStripe/Assets/Shortcodes/ImageShortcodeProvider_Image.ss` to your theme to control images added to an HTMLEditorField. -- Add a `DBFile_Image.ss` file to the root of your theme to control only images invoked in templates. - -### Validation for inline-editable elemental blocks {#elemental-validation} - -Elemental content blocks now support validation when saving or publishing individual content blocks using the "three-dot" context menu in the top-right of the block. - -Validation can be added to a content block using standard [Model Validation and Constraints](https://docs.silverstripe.org/en/5/developer_guides/model/validation/#validation-and-constraints) by implementing a [`DataObject::validate()`](api:SilverStripe\ORM\DataObject::validate()) method on a content block, or by using [Form Validation](https://docs.silverstripe.org/en/5/developer_guides/forms/validation/#form-validation) where there are several options available. - -Elemental data is no longer sent when saving the parent `DataObject` (usually a `Page`) that contains an [`ElementalAreaField`](api:DNADesign\Elemental\Forms\ElementalAreaField). Instead, when saving the parent `DataObject`, all the child inline-editable elements that have unsaved changes are inline saved at the same time. This change was done to consolidate the saving process down to a single code path. The code that was previously used to process any element data sent with the parent data has been removed. - -### `FormField` scaffolding for `DataObject` models {#scaffolding} - -We've made a few improvements to how form fields are scaffolded for [`DataObject::getCMSFields()`](api:SilverStripe\ORM\DataObject::getCMSFields()). - -#### Define scaffolded form fields for relations {#scaffolding-relation-formfields} - -Most `DataObject` classes will rely on some amount of automatic scaffolding of form fields in their `getCMSFields()` implementations. However, it's common for modules to provide a specialised form field which is intended to always be used with a specific `DataObject` class. In those cases, even though you always want to use that form field with that class, you have to copy some boilerplate code from the module's documentation to set it up. - -You can now define what form fields should be used when scaffolding form fields for `has_one`, `has_many`, and `many_many` relations. This is defined on the class on the child-side of the relationship. For example, for the below `has_one` relation you would implement [`scaffoldFormFieldForHasOne()`](api:SilverStripe\ORM\DataObject::scaffoldFormFieldForHasOne()) on the `MyChild` class. - -```php -namespace App\Model; - -use SilverStripe\ORM\DataObject; - -class MyParent extends DataObject -{ - // ... - private static array $has_one = [ - 'MyChild' => MyChild::class, - ]; -} -``` - -```php -namespace App\Model; - -use SilverStripe\Forms\FormField; -use SilverStripe\ORM\DataObject; - -class MyChild extends DataObject -{ - // ... - - public function scaffoldFormFieldForHasOne( - string $fieldName, - ?string $fieldTitle, - string $relationName, - DataObject $ownerRecord - ): FormField { - return /* instantiate some FormField here */; - } -} -``` - -This means modules can pre-define the form field that should be used for their custom models, which reduces the amount of boilerplate code developers need to include in their `getCMSFields()` implementations. - -For more information see [scaffolding for relations](/developer_guides/model/scaffolding/#scaffolding-for-relations). - -#### `FormScaffolder` options {#scaffolding-options} - -The [`FormScaffolder`](api:SilverStripe\Forms\FormScaffolder) class (which is responsible for scaffolding form fields for `getCMSFields()`) has some new options: - -|option|description| -|---|---| -|`mainTabOnly`|Only set up the "Root.Main" tab, but skip scaffolding actual form fields or relation tabs. If `tabbed` is false, the `FieldList` will be empty.| -|`ignoreFields`|Deny list of field names. If populated, database fields and fields representing `has_one` relations which *are* in this array won't be scaffolded.| -|`ignoreRelations`|Deny list of field names. If populated, form fields representing `has_many` and `many_many` relations which *are* in this array won't be scaffolded.| -|`restrictRelations`|Allow list of field names. If populated, form fields representing `has_many` and `many_many` relations not in this array won't be scaffolded.| - -In particular, the `ignoreFields` and `ignoreRelations` options are useful ways to prevent form fields from being scaffolded at all. You can use this instead of calling `$fields->removeFieldByName()`, for example if you are adding database fields that you don't want to be edited with form fields in the CMS. - -These options are now also configurable using the new [`DataObject.scaffold_cms_fields_settings`](api:SilverStripe\ORM\DataObject->scaffold_cms_fields_settings) configuration property. - -See the [scaffolding](/developer_guides/model/scaffolding/#scaffolding-options) section for more details. - -### Support for `JOIN` in SQL `UPDATE` {#sql-update-join} - -The [`SQLUpdate`](api:SilverStripe\ORM\Queries\SQLUpdate) class now supports all of the same `JOIN` operations (using the same methods) that [`SQLSelect`](api:SilverStripe\ORM\Queries\SQLSelect) does. - -This is particularly helpful if you need to update columns in one table to match values from another table. - -### Autologin token regeneration changes {#autologin-token-regeneration} - -The Autologin ('remember me') feature stores cookies in the user's browser to allow recreation of their session when it expires. Currently, one of the cookies is regenerated whenever a user's session is recreated. This can cause unexpected logouts in certain situations, and has minimal value from a security standpoint. - -In 5.3, the current behaviour is retained, but can be disabled via configuration: - -```yml -SilverStripe\Security\RememberLoginHash: - replace_token_during_session_renewal: false -``` - -This will cause the token to be generated once during login, and not be regenerated during session renewal. - -From 6.0 onwards, tokens will never be regenerated during session renewal, and this configuration will be removed. - -### Other new features - -- `silverstripe/linkfield` now has improved accessibility support for screen readers and keyboard navigation. Focus states have also been made consistent between keyboard and mouse interaction. -- `silverstripe/graphql-devtools` contains a new `GraphQLSchemaInitTask` to help you initialise a basic GraphQL schema. -- [`GridFieldDetailForm_ItemRequest`](api:SilverStripe\Forms\GridField\GridFieldDetailForm_ItemRequest) now uses a [`PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) to handle PJAX responses for the save and publish actions. This aligns it with responses from other form submissions in the CMS. -- Primitive types inside an iterable object will now be automatically converted to relevant [`DBField`](api:SilverStripe\ORM\FieldType\DBField) types so can be rendered in a template. This allows the use of `return ArrayList::create(['lorem', 123]);` from a [`ContentController`](api:SilverStripe\CMS\Controllers\ContentController) method that is then looped over in a template. -- A new [`TabSet::changeTabOrder()`](api:SilverStripe\Forms\TabSet::changeTabOrder()) method has been added that allows you to change the order of tabs in a `TabSet`. See [tabbed forms](/developer_guides/forms/tabbed_forms/#change-the-order-of-tabs) for details. - -## API changes - -- Passing a non-array `$fields` argument to both [`FieldList::addFieldsToTab()`](api:SilverStripe\Forms\FieldList::addFieldsToTab()) and [`FieldList::removeFieldsFromTab()`](api:SilverStripe\Forms\FieldList::removeFieldsFromTab()) has been deprecated. -- The [`BaseElement::getDescription()`](api:DNADesign\Elemental\Models\BaseElement::getDescription()) method has been deprecated. To update or get the CMS description of elemental blocks, use the [`description`](api:DNADesign\Elemental\Models\BaseElement->description) configuration property and the localisation API. -- The [`RememberLoginHash::renew()`](api:SilverStripe\Security\RememberLoginHash::renew()) method has been deprecated without replacement, since the associated behaviour will be removed in 6.0. - - The `onAfterRenewToken` extension point within this method will likely be replaced with a new extension point in 6.0. -- The [`RememberLoginHash.replace_token_during_session_renewal`](api:SilverStripe\Security\RememberLoginHash->replace_token_during_session_renewal) configuration property has been added to allow disabling token regeneration during session renewal. This property will be removed in 6.0. -- Code for the CMS GraphQL `admin` schema which provided endpoints for the CMS has been deprecated and will be removed in CMS 6. Functionality which the GraphQL endpoints are currently responsible for will be replaced with regular Silverstripe controller endpoints instead. Extension hooks will be added to the new controller endpoints that return data to allow for customisation. Frontend schemas, such the `default` schema, will continue to work in CMS 6. -- [`IPUtils`](api:SilverStripe\Control\Util\IPUtils) has been deprecated and its usage has been replaced with the `IPUtils` class from `symfony/http-foundation` which is now included as a composer dependency in `silverstripe/framework`. -- Code in [`silverstripe/blog`](https://github.com/silverstripe/silverstripe-blog) which supported integration with [`silverstripe/widgets`](https://github.com/silverstripe/silverstripe-widgets) has been deprecated and will be removed in CMS 6.0. -- [`DataExtension`](api:SilverStripe\ORM\DataExtension), [`SiteTreeExtension`](api:SilverStripe\CMS\Model\SiteTreeExtension), and [`LeftAndMainExtension`](api:SilverStripe\Admin\LeftAndMainExtension) have been deprecated and will be removed in CMS 6.0. If you subclass any of these classes, you should now subclass [`Extension`](api:SilverStripe\Core\Extension) directly instead. - -## Bug fixes - -- If you use `<% loop %>` in your templates without telling it what to loop, previously the behaviour was to fail silently. This will now loop over what is currently in scope. See [looping over lists](/developer_guides/templates/syntax/#looping-over-lists) for more details. -- Reordering elemental blocks used to update the published sort order immediately, without pressing the publish button. That wasn't consistent with the way any other sort order updates happen in the CMS. We've changed this so that the sort order won't update in your published site until you publish one of the blocks in the elemental area that the reordered blocks live in. This is consistent with what happens when you reorder pages in the site tree. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -### Sanitisation of HTML - -When you save content in a `HTMLEditorField`, the [`HTMLEditorSanitiser`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorSanitiser) class is responsible for ensuring the HTML content is safe and matches the `valid_elements` and `extended_valid_elements` options you've defined. - -There was a bug that resulted in `HTMLEditorSanitiser` using the 'active' `HTMLEditorConfig` instance rather than the instance which was defined for the field. In many cases this goes unnoticed because the default active instance is very permissive, and TinyMCE does a lot of this work on the client-side, but it was possible to bypass the defined allowed HTML elements by sending requests directly to the server. - -This bug has been fixed, but some additional changes were required to facilitate it. See [changes to `TinyMCEConfig`](#changes-to-tinymce) for more details about those changes. - -### Restore batch action removed - -The "Restore" batch action was removed from the batch actions dropdown menu in the CMS as it has not functioned correctly for a long time. There is no intention at this stage to reintroduce this feature. - - - - -## Change log - -### Security {#changelog-security} - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-04-22 [60155dad4](https://github.com/silverstripe/silverstripe-framework/commit/60155dad417b6f78bd6bd9d8ac412bad47de6aa8) [SS-2024-001] Set convert_unsafe_embeds to true (Steve Boyd) - See [ss-2024-001](https://www.silverstripe.org/download/security-releases/ss-2024-001) - - 2024-04-16 [b8d20dc9d](https://github.com/silverstripe/silverstripe-framework/commit/b8d20dc9d531550e06fd7da7a0eafa551922e2e1) `Disallow data:text/html in data attributes` (Guy Sartorelli) - See [cve-2024-32981](https://www.silverstripe.org/download/security-releases/cve-2024-32981) - -- silverstripe/reports (5.2.0 -> 5.3.0-beta1) - - 2024-03-27 [0351106c](https://github.com/silverstripe/silverstripe-reports/commit/0351106c18ad4246d983b5f4e082c09c382121f4) Respect canView permissions for viewing reports (Guy Sartorelli) - See [cve-2024-29885](https://www.silverstripe.org/download/security-releases/cve-2024-29885) - -### Features and enhancements {#changelog-features-and-enhancements} - -- silverstripe/recipe-plugin (2.0.0 -> 2.0.1) - - 2024-06-05 [955a8d2](https://github.com/silverstripe/recipe-plugin/commit/955a8d23b15a7a01ec8e9703d9956824a09c4738) Use class name instead of self (Steve Boyd) - -- silverstripe/vendor-plugin (2.0.2 -> 2.0.3) - - 2024-06-05 [34f656b](https://github.com/silverstripe/vendor-plugin/commit/34f656b8c5ce96549c9658a8bf77f14f75996a39) Use class name instead of self (Steve Boyd) - -- silverstripe/assets (2.2.0 -> 2.3.0-beta1) - - 2024-08-21 [9584c31](https://github.com/silverstripe/silverstripe-assets/commit/9584c314a36123fd42da9b49a200e3eb0fbdf42a) ensure file title constructed from original filenam (Mohamed Alsharaf) - - 2024-07-29 [401277c](https://github.com/silverstripe/silverstripe-assets/commit/401277cedcc3572308e305dc0f53ff70d1926780) `Don't use keyword "self" (#622)` (Guy Sartorelli) - - 2024-06-30 [cf787b0](https://github.com/silverstripe/silverstripe-assets/commit/cf787b008619996e39160bb4ac4f6221ec25f636) Align rendering of image genercated by ImageShortCodeProvider with generic Image generation (#596) (Maxime Rainville) - - 2024-06-14 [7979fd7](https://github.com/silverstripe/silverstripe-assets/commit/7979fd73b88ed3a506b596ed99836890a20440e0) Use class name instead of self (Steve Boyd) - - 2024-06-07 [20cc083](https://github.com/silverstripe/silverstripe-assets/commit/20cc083e353205d741044553c60d3c5f581e8fe3) Scaffold formfields for File and Image using new API (#613) (Guy Sartorelli) - - 2024-06-04 [db48540](https://github.com/silverstripe/silverstripe-assets/commit/db4854046998b9e9fba4bbeb5a0b1f24d13e6426) Allow devs to define support for third-party intervention drivers (#610) (Guy Sartorelli) - - 2024-04-10 [ff5e8a7](https://github.com/silverstripe/silverstripe-assets/commit/ff5e8a743eea9cdddb900579a6e8c3d77a48e8ba) File converter API (#595) (Guy Sartorelli) - -- silverstripe/config (2.1.0 -> 2.1.1) - - 2024-06-05 [6563cb0](https://github.com/silverstripe/silverstripe-config/commit/6563cb0c4030e820bfbc70fae5317bcae3b259f4) Use class name instead of self (Steve Boyd) - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-08-12 [dca62c738](https://github.com/silverstripe/silverstripe-framework/commit/dca62c7380724fc44c8f390f4d129834c3ec1111) Make CMSFields scaffolding configurable, plus new options (#11328) (Guy Sartorelli) - - 2024-08-11 [eee7a84a4](https://github.com/silverstripe/silverstripe-framework/commit/eee7a84a480b028a3d925bc7483cae9c45e9d252) Add new method TabSet::changeTabOrder(). (#11329) (Guy Sartorelli) - - 2024-07-31 [9091ecfd3](https://github.com/silverstripe/silverstripe-framework/commit/9091ecfd3a59aa88d45134568552362245a4d9fb) `Don't use the keyword "self" (#11315)` (Guy Sartorelli) - - 2024-07-29 [d9bccaff3](https://github.com/silverstripe/silverstripe-framework/commit/d9bccaff3db5c76480d5879d6f5a312b29dca9c6) Don't use keywords self (#11313) (Guy Sartorelli) - - 2024-06-17 [620c1b046](https://github.com/silverstripe/silverstripe-framework/commit/620c1b04699daa1d306de130dbecd1f1a92583fc) Use class name instead of self (Steve Boyd) - - 2024-06-07 [be0eab2ba](https://github.com/silverstripe/silverstripe-framework/commit/be0eab2bae7cd3d0739a990ea83e46faba4928b6) Allow DataObject classes to define scaffolded relation formfields (#11269) (Guy Sartorelli) - - 2024-05-28 [e35f12c66](https://github.com/silverstripe/silverstripe-framework/commit/e35f12c66fcb1fbae73d7ed95f7ea5dc431d8817) Update AttributesHTML to output alt attribute even if it's empty (#11217) (Maxime Rainville) - - 2024-05-16 [56625081b](https://github.com/silverstripe/silverstripe-framework/commit/56625081b43d2d49530fae577cdaa3d8fa572c17) Use allowed view button for readonly GridField (#11228) (Guy Sartorelli) - - 2024-05-15 [12a741fee](https://github.com/silverstripe/silverstripe-framework/commit/12a741feee8443e7a55f1153c315b9beb01abdb5) Rendering scalars in ArrayList in templates (Steve Boyd) - - 2024-04-26 [142a318fa](https://github.com/silverstripe/silverstripe-framework/commit/142a318fa8f24f7f4bc5042fa3852beb4bd6d9aa) Return PJAX responses from gridfield edit forms (#11206) (Guy Sartorelli) - - 2024-04-18 [72692f9f1](https://github.com/silverstripe/silverstripe-framework/commit/72692f9f1017c932dde5fac77970bdfbe9de2f46) Make default TinyMCE settings configurable (Guy Sartorelli) - - 2024-04-18 [2bdc24c86](https://github.com/silverstripe/silverstripe-framework/commit/2bdc24c86a4474106a85f9e648379290408f057e) Set default valid_elements for new TinyMCE config (Guy Sartorelli) - - 2024-04-01 [b442d9d45](https://github.com/silverstripe/silverstripe-framework/commit/b442d9d45ad208e5a41987afdd3c2f237efe2f13) Let unit tests manipulate the DB before loading fixtures (#11182) (Guy Sartorelli) - - 2024-03-25 [492cb800f](https://github.com/silverstripe/silverstripe-framework/commit/492cb800fa09f7c1448a217393e61fed69b2cec6) store tableList in cache (#11183) (Thomas Portelange) - - 2024-03-21 [b167f470d](https://github.com/silverstripe/silverstripe-framework/commit/b167f470d768f246869ca517fed3f5b781aa15f3) Add Nice to DBField (Thomas Portelange) - -- silverstripe/admin (2.2.0 -> 2.3.0-beta1) - - 2024-07-18 [ef327402](https://github.com/silverstripe/silverstripe-admin/commit/ef32740246481b7beaa99941cb0a78423853eca7) Wait for promises before submitting forms (Steve Boyd) - - 2024-06-18 [cca9ed5f](https://github.com/silverstripe/silverstripe-admin/commit/cca9ed5f4051396e1ed790b92341732fec5f7b7a) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [7daeee4d](https://github.com/silverstripe/silverstripe-admin/commit/7daeee4d9dd700c055c82c998ee6c59575a76dba) Use class name instead of self (Steve Boyd) - - 2024-05-22 [65c0adb4](https://github.com/silverstripe/silverstripe-admin/commit/65c0adb4e03c30463adb9542e08097a318127fcc) Highlight the tabs which have validation errors (#1753) (Guy Sartorelli) - - 2024-05-09 [2fea8ca3](https://github.com/silverstripe/silverstripe-admin/commit/2fea8ca3adfe453b4e44a0cf5c2e9c84c2c535cf) Rebuild bundle (Steve Boyd) - - 2024-04-26 [d43e6dcc](https://github.com/silverstripe/silverstripe-admin/commit/d43e6dcc31f431723e1905d5011291a394c6894f) move private method to framework (#1730) (Guy Sartorelli) - - 2024-04-18 [d03d790c](https://github.com/silverstripe/silverstripe-admin/commit/d03d790c4457cf171d6a903efbda35fe1fec965c) Remove duplicated default settings from cms TinyMCE config (#1725) (Guy Sartorelli) - - 2024-04-17 [447fd34b](https://github.com/silverstripe/silverstripe-admin/commit/447fd34b0258f678ffde0bee9cfd204bb0251396) Add workflow permissions (Steve Boyd) - - 2021-11-08 [7130ae94](https://github.com/silverstripe/silverstripe-admin/commit/7130ae945bf8baec8d8c9ef16284e28bd7684cee) Open GridField rows in a new tab with Shift/Ctrl/Meta key (Sergey Shevchenko) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-15 [ea422107](https://github.com/silverstripe/silverstripe-asset-admin/commit/ea4221077174992525b065aa06ecef8e204f1f19) Don't emit deprecation warnings for unavoidable API calls (#1483) (Guy Sartorelli) - - 2024-06-20 [32ede202](https://github.com/silverstripe/silverstripe-asset-admin/commit/32ede202576c6db4d761e23b1af363bb73e4ed50) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [1f32e330](https://github.com/silverstripe/silverstripe-asset-admin/commit/1f32e3304a67cc9d7a1d59ae9db0a59d4641a337) Use class name instead of self (Steve Boyd) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-beta1) - - 2024-06-05 [6a731c2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6a731c250251404c3560bb87c3d91ed409635307) Use class name instead of self (Steve Boyd) - -- silverstripe/cms (5.2.0 -> 5.3.0-beta1) - - 2024-08-15 [96ce0927](https://github.com/silverstripe/silverstripe-cms/commit/96ce0927458d3ae2961f1e266e4e91b2bbbc1592) Don't emit deprecation warnings for unavoidable API calls (#2985) (Guy Sartorelli) - - 2024-06-17 [ea38c43e](https://github.com/silverstripe/silverstripe-cms/commit/ea38c43ea5352d4877c95c15118850f5456c4449) Use class name instead of self (Steve Boyd) - -- silverstripe/errorpage (2.2.0 -> 2.3.0-beta1) - - 2024-06-14 [f70cfc9](https://github.com/silverstripe/silverstripe-errorpage/commit/f70cfc994d4d358835d55801e21372ddd48848b7) Use class name instead of self (Steve Boyd) - -- silverstripe/reports (5.2.0 -> 5.3.0-beta1) - - 2024-06-05 [5819a3bd](https://github.com/silverstripe/silverstripe-reports/commit/5819a3bde4b3168a587d627cd3a1a7516aabf810) Use class name instead of self (Steve Boyd) - -- silverstripe/siteconfig (5.2.0 -> 5.3.0-beta1) - - 2024-06-05 [c7260fbe](https://github.com/silverstripe/silverstripe-siteconfig/commit/c7260fbed0124c7afcf75eb99c893b16a7081696) Use class name instead of self (Steve Boyd) - -- silverstripe/versioned (2.2.0 -> 2.3.0-beta1) - - 2024-06-18 [cde029b](https://github.com/silverstripe/silverstripe-versioned/commit/cde029be7fb495e3952d838f9d74e76da2d109ab) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-05 [09902f9](https://github.com/silverstripe/silverstripe-versioned/commit/09902f9b000abbf0b567377bcb1b7e7dc14528a6) Use class name instead of self (Steve Boyd) - -- silverstripe/graphql (5.2.0 -> 5.2.3) - - 2024-06-17 [c965269](https://github.com/silverstripe/silverstripe-graphql/commit/c965269b4f80c4badb849e581d50a554d4216cd1) Use self::class::method() syntax (Steve Boyd) - - 2024-06-14 [fb18d9d](https://github.com/silverstripe/silverstripe-graphql/commit/fb18d9d3a0de78374b38f70fea3583cfb8405b70) Use class name instead of self (Steve Boyd) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-beta1) - - 2024-06-14 [7552424](https://github.com/silverstripe/silverstripe-session-manager/commit/75524242cbc7d54bc342772a1251773a75542f0c) Use class name instead of self (Steve Boyd) - -- silverstripe/login-forms (5.2.0 -> 5.3.0-beta1) - - 2024-06-05 [b34ad95](https://github.com/silverstripe/silverstripe-login-forms/commit/b34ad95e9422c5eb44f4d4bfbe98bab363288cf1) Use class name instead of self (Steve Boyd) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0-beta1) - - 2024-06-05 [0ba82ee](https://github.com/silverstripe/silverstripe-documentconverter/commit/0ba82eeab731d96a048f417d3d6834d0d2237de9) Use class name instead of self (Steve Boyd) - -- silverstripe/tagfield (3.2.0 -> 3.3.0-beta1) - - 2024-06-05 [5bc5479](https://github.com/silverstripe/silverstripe-tagfield/commit/5bc54796a19fa616d6e8a15b6c90450fd3065168) Use class name instead of self (Steve Boyd) - -- silverstripe/blog (4.2.0 -> 4.3.0-beta1) - - 2024-06-05 [6c37e8f](https://github.com/silverstripe/silverstripe-blog/commit/6c37e8f77400b03bfb4c4db3925f662538031625) Use class name instead of self (Steve Boyd) - -- silverstripe/spamprotection (4.2.0 -> 4.2.1) - - 2024-06-14 [7ad6f85](https://github.com/silverstripe/silverstripe-spamprotection/commit/7ad6f8584fe596f288d5446ec445dd81307e0b2c) Use class name instead of self (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-beta1) - - 2023-08-21 [2f3f149](https://github.com/colymba/GridFieldBulkEditingTools/commit/2f3f149dd6ee77fcae7ab0ecf76fc60667bc94c1) Update translations (#245) (Guy Sartorelli) - - 2023-06-15 [0b610fb](https://github.com/colymba/GridFieldBulkEditingTools/commit/0b610fb06fdf24036c0847a55e233ea717f56e9b) Update translations (Steve Boyd) - - 2023-06-14 [e038dc3](https://github.com/colymba/GridFieldBulkEditingTools/commit/e038dc3a6d12522fe7d2f918015ad163f3062fcc) Update translations (Steve Boyd) - - 2023-05-30 [c818128](https://github.com/colymba/GridFieldBulkEditingTools/commit/c8181281c15900a82e3e6130d2d0052cefb4f184) Update translations (Steve Boyd) - -- silverstripe/contentreview (5.2.0 -> 5.3.0-beta1) - - 2024-06-05 [061245f](https://github.com/silverstripe/silverstripe-contentreview/commit/061245fe8e514f0676d56106a3e03f03ee09e253) Use class name instead of self (Steve Boyd) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-beta1) - - 2024-06-05 [be78f89](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/be78f890b612e5d77d57636bdd65bad8927ddef4) Use class name instead of self (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0-beta1) - - 2024-06-05 [ef49170](https://github.com/symbiote/silverstripe-advancedworkflow/commit/ef49170e64c505bf91816774ebc6e92479a48381) Use class name instead of self (Steve Boyd) - -- silverstripe/userforms (6.2.0 -> 6.3.0-beta1) - - 2024-06-14 [6541365](https://github.com/silverstripe/silverstripe-userforms/commit/6541365a8ea00a5692a649b5becbb8769055dcf8) Use class name instead of self (Steve Boyd) - - 2024-04-15 [1eb0c5f](https://github.com/silverstripe/silverstripe-userforms/commit/1eb0c5fa948d1dd2286e99bae60a83d1ad1ce4e1) Add classname to p tag (#1280) (Annie Kyles) - - 2024-03-17 [32d0158](https://github.com/silverstripe/silverstripe-userforms/commit/32d0158954b048b963405475140c40aa5c035d95) Add 'Includes' condition option to EmailRecipientCondition (#1275) (Sukhwinder Singh) - - 2024-03-12 [6191b49](https://github.com/silverstripe/silverstripe-userforms/commit/6191b4984dda38e7dd4631d599a951d373dfae46) Add extension hook for modifying submissions GridField (#1273) (James Cocker) - -- silverstripe/externallinks (3.2.0 -> 3.3.0-beta1) - - 2024-06-05 [e9de952](https://github.com/silverstripe/silverstripe-externallinks/commit/e9de9529808b8691ffe4154267a0d46e984e9de7) Use class name instead of self (Steve Boyd) - -- silverstripe/securityreport (3.1.0 -> 3.1.1) - - 2024-06-05 [32575f4](https://github.com/silverstripe/silverstripe-securityreport/commit/32575f49152e67642aadbf0befdfc00375a1feae) Use class name instead of self (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.2.0 -> 4.3.0-beta1) - - 2024-06-05 [7b8e23f](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/7b8e23f818cc02f9995737749c7034c901b3016f) Use class name instead of self (Steve Boyd) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0-beta1) - - 2024-05-09 [e894458](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e89445872e74ebb8d6ef01efd4b3ec05a5e0b983) Update reference to supported modules data (#220) (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (4.1.0 -> 4.1.2) - - 2024-06-05 [94ba665](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/94ba6652ff98e20fdc3bfdb8609c1327b30dbfe9) Use class name instead of self (Steve Boyd) - -- silverstripe/restfulserver (3.0.0 -> 3.0.1) - - 2024-06-14 [d395845](https://github.com/silverstripe/silverstripe-restfulserver/commit/d395845eb1b2641ec3426efe00ec47e29ea3badd) Use class name instead of self (Steve Boyd) - -- silverstripe/versionfeed (3.2.0 -> 3.2.3) - - 2024-06-05 [b2dd034](https://github.com/silverstripe/silverstripe-versionfeed/commit/b2dd034d1be8cb20ae4066857ebe93383609c8b3) Use class name instead of self (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-beta1) - - 2024-08-15 [4f4a006](https://github.com/silverstripe/silverstripe-elemental/commit/4f4a00677918f72adf866464d532aad099a8431b) Don't emit deprecation warnings for unavoidable API calls (#1233) (Guy Sartorelli) - - 2024-07-24 [823cc53](https://github.com/silverstripe/silverstripe-elemental/commit/823cc5334f7c097d45becf064d0dedb60d1c810d) Inline save all rendered element forms on parent form submit (Steve Boyd) - - 2024-06-18 [e58f939](https://github.com/silverstripe/silverstripe-elemental/commit/e58f93911b030649de2b17330697a5533688584c) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [51b178c](https://github.com/silverstripe/silverstripe-elemental/commit/51b178cdb75e1676180620de38608ec59e028c8a) Use class name instead of self (Steve Boyd) - - 2024-04-30 [344bc54](https://github.com/silverstripe/silverstripe-elemental/commit/344bc54e0214ef5f4ef0062fb47b46afb751ebd4) Refactor Element and graphql hoc (Steve Boyd) - - 2024-04-18 [e3dd091](https://github.com/silverstripe/silverstripe-elemental/commit/e3dd091135c02417151a123768655bb6cfa58639) Refactor Element to function component (Steve Boyd) - - 2024-04-16 [4789b34](https://github.com/silverstripe/silverstripe-elemental/commit/4789b34ea93b90e936024c62a47947752ddb7a43) Validation of fields when inline saving (Steve Boyd) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0-beta1) - - 2024-07-29 [fbbad23](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/fbbad2379663b92ad0417cf197b2672767e78569) `Don't use keyword "self" (#155)` (Guy Sartorelli) - -- silverstripe/environmentcheck (3.0.1 -> 3.0.2) - - 2024-06-05 [0908db8](https://github.com/silverstripe/silverstripe-environmentcheck/commit/0908db80168f427cfb6716092d6ffae81995c702) Use class name instead of self (Steve Boyd) - -- silverstripe/hybridsessions (3.0.3 -> 3.0.5) - - 2024-06-05 [70b760d](https://github.com/silverstripe/silverstripe-hybridsessions/commit/70b760d0d660f87bee48a76393f9b5c0cf32ff75) Use class name instead of self (Steve Boyd) - -- silverstripe/mfa (5.2.0 -> 5.3.0-beta1) - - 2024-06-05 [84cdae1](https://github.com/silverstripe/silverstripe-mfa/commit/84cdae1f7c29682c1e24c003272b0868d5eab0c0) Use class name instead of self (Steve Boyd) - -- silverstripe/crontask (3.0.3 -> 3.0.4) - - 2024-06-05 [cadce9e](https://github.com/silverstripe/silverstripe-crontask/commit/cadce9eac9b65268d122abb7758f286fbe3dd669) Use class name instead of self (Steve Boyd) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-06-05 [b200f00](https://github.com/silverstripe/silverstripe-ldap/commit/b200f000dccb6e197cd47b9d43e6e698b35ce581) Use class name instead of self (Steve Boyd) - -- silverstripe/textextraction (4.1.0 -> 4.1.1) - - 2024-06-05 [7149050](https://github.com/silverstripe/silverstripe-textextraction/commit/714905014702ad15eae5ec29d5021f8a330d80f4) Use class name instead of self (Steve Boyd) - -- silverstripe/realme (5.3.0 -> 5.4.0-beta1) - - 2024-06-05 [aae799a](https://github.com/silverstripe/silverstripe-realme/commit/aae799a5fbea18dabf31a046c4d53a4a93a763d8) Use class name instead of self (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0-beta1) - - 2024-06-05 [14806b2](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/14806b2ab00ce97467f01e546fc2f2af069ee552) Use class name instead of self (Steve Boyd) - -- silverstripe/subsites (3.2.0 -> 3.3.0-beta1) - - 2024-06-05 [ad2c5d8](https://github.com/silverstripe/silverstripe-subsites/commit/ad2c5d8eded8542588fe7cd305d3802f1b0b5059) Use class name instead of self (Steve Boyd) - - 2024-03-28 [6ba7385](https://github.com/silverstripe/silverstripe-subsites/commit/6ba7385f5dc4c283efd1e27430a959bd82f31e3a) Use cached table list from ClassInfo (#564) (Thomas Portelange) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-beta1) - - 2024-06-05 [9f5dbbe](https://github.com/silverstripe/silverstripe-lumberjack/commit/9f5dbbeae5240bb0cb605612359641d7f869e906) Use class name instead of self (Steve Boyd) - -- silverstripe/staticpublishqueue (6.2.0 -> 6.2.2) - - 2024-06-14 [ade614c](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/ade614c2314341d6f1686ffa4bfd726c21004976) Use class name instead of self (Steve Boyd) - -- cwp/agency-extensions (3.2.0 -> 3.3.0-beta1) - - 2024-06-05 [dc59615](https://github.com/silverstripe/cwp-agencyextensions/commit/dc596155dc3c4a81f025d7c773158994bdf3ba72) Use class name instead of self (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-beta1) - - 2024-08-01 [6c6f43c](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/6c6f43ca84a6b85b00f3f8f60bc4045d7a2de875) `Don't use keyword "self" (#410)` (Guy Sartorelli) - - 2024-06-05 [abe2359](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/abe2359f7890f4d923a2b75d7bd7afc8d026f84b) Use class name instead of self (Steve Boyd) - - 2024-04-12 [db3edd7](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/db3edd7f1644788cfd3717b89ebcdce6d21565fa) Initial nested gridfield component (Niklas Forsdahl) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0-beta1) - - 2024-06-27 [dbbcd67](https://github.com/symbiote/silverstripe-queuedjobs/commit/dbbcd67896693d4ac79e1fe12e69dcc7f449e582) Send an email notification when a job is broken (Steve Boyd) - - 2024-06-14 [793e73d](https://github.com/symbiote/silverstripe-queuedjobs/commit/793e73da01bb91394ab4576bdc258fc6bdaf8e86) Use class name instead of self (Steve Boyd) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2024-07-29 [8c9745e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8c9745e0e273e7c11dfd2b92ca73598931f35747) Don't use keyword self (Guy Sartorelli) - - 2024-06-10 [201826e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/201826ed8225873fc11e57efc0004b65b1df3ec7) Revert temporary locale fix (Steve Boyd) - - 2024-06-05 [092638a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/092638a56fbde6778a27b2cf46d383b8bb0bd143) Use class name instead of self (Steve Boyd) - - 2024-04-04 [d426370](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d42637098a790617db459560e2230e56269b5ab8) Localisation manager links available for CMS edit link capable models. (Mojmir Fendek) - - 2024-03-27 [9aea31d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9aea31d68c63b7b834afb4140678aec95db1bdfd) Added dev/task to initialise DataObjects for existing datasets (Nathan J. Brauer) - - 2024-03-20 [fd05311](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fd053115adb5b27305667cec2101beb9e1f17827) Add ability to ignore domains entirely (Thomas Portelange) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-beta1) - - 2024-08-15 [c76fdba](https://github.com/silverstripe/silverstripe-linkfield/commit/c76fdba2b7f0c3a1ece58d702c631f5552eb6073) Don't emit deprecation warnings for unavoidable API calls (#319) (Guy Sartorelli) - - 2024-06-05 [81a65c0](https://github.com/silverstripe/silverstripe-linkfield/commit/81a65c03a2c96b7f82b1a04570123ce630674089) Use class name instead of self (Steve Boyd) - - 2024-04-02 [ef75425](https://github.com/silverstripe/silverstripe-linkfield/commit/ef754257eb97fbea46e536e593274334fd4a4b3b) Better use of ARIA attributes (Steve Boyd) - - 2024-04-02 [b5c56e9](https://github.com/silverstripe/silverstripe-linkfield/commit/b5c56e91cbbb23f997336905f94515af385bd350) Improve component focusing (Steve Boyd) - - 2024-04-02 [5864546](https://github.com/silverstripe/silverstripe-linkfield/commit/5864546dade05a4ef3aad8530142515394fc91b9) Use li for multi links (Steve Boyd) - - 2024-04-01 [495dc35](https://github.com/silverstripe/silverstripe-linkfield/commit/495dc35b99f88b1d1998a61688c933654f08022c) Add migration task from gorriecoe/silverstripe-link (#253) (Guy Sartorelli) - - 2024-03-20 [4d9c84f](https://github.com/silverstripe/silverstripe-linkfield/commit/4d9c84f4a1187bbe800b7b0225476ee82c965057) LinkableMigrationTask for migrating sheadawson-linkable links (Sabina Talipova) - - 2024-03-19 [393f64f](https://github.com/silverstripe/silverstripe-linkfield/commit/393f64fe3e88b3be1afb16542d4dbd97dd476f4d) Add migration task from older versions of the module (#244) (Guy Sartorelli) - -### Bugfixes {#changelog-bugfixes} - -- silverstripe/assets (2.2.0 -> 2.3.0-beta1) - - 2024-06-04 [c4081b9](https://github.com/silverstripe/silverstripe-assets/commit/c4081b956807b197d1a7df4eb0fa4b112121e9e2) Ensure manipulations start with base file (#612) (Guy Sartorelli) - - 2024-05-15 [7266f83](https://github.com/silverstripe/silverstripe-assets/commit/7266f8337a3cb3a3ce9842b1a7fcf93623e71262) Ensure public url slashes are forward slashes (Steve Boyd) - - 2024-04-30 [41378dc](https://github.com/silverstripe/silverstripe-assets/commit/41378dc6054c04ff6a09a1d191b1aab5c4d17920) Make sure the cache shortcode value is used in FileShortcodeProvider (#598) (Maxime Rainville) - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-08-14 [25a41de8b](https://github.com/silverstripe/silverstripe-framework/commit/25a41de8b59c5c111a7d4895e4df9561fca273ec) Run ANALYZE TABLE before fetching table stats (Steve Boyd) - - 2024-08-08 [7b91207c1](https://github.com/silverstripe/silverstripe-framework/commit/7b91207c12405cb42f2f7658fbf1db72be1cc2d6) Don't error if template global is null (#11331) (Guy Sartorelli) - - 2024-08-06 [8c80a4fd1](https://github.com/silverstripe/silverstripe-framework/commit/8c80a4fd1e92b1d0d019f4653065bd749730b358) Do not suffix trailing slash to external links (Steve Boyd) - - 2024-08-06 [9fae48bbd](https://github.com/silverstripe/silverstripe-framework/commit/9fae48bbd74f8f710bb5f72c2fa7f68e1f959c9f) Allow clearing lazyloaded SearchableDropdownField. (#11324) (Guy Sartorelli) - - 2024-08-06 [c3f0104a8](https://github.com/silverstripe/silverstripe-framework/commit/c3f0104a89aafea617690697dfcefa39980f04b1) Clear table logic for MySQL 8 (Steve Boyd) - - 2024-07-25 [fb7b1734e](https://github.com/silverstripe/silverstripe-framework/commit/fb7b1734eb58f01a466bdb002c50647d221332bf) Readonly transformation of lazy-loaded searchable dropdown (#11297) (Johannes Hammersen) - - 2024-07-25 [f91b279ef](https://github.com/silverstripe/silverstripe-framework/commit/f91b279ef0fd7e8ff26de971352fcb8731528d37) `Don't generate table alias for "from" statement that are not column names.` (Maxime Rainville) - - 2024-07-19 [539d4645b](https://github.com/silverstripe/silverstripe-framework/commit/539d4645b98b07c9d6c6cae0e971df2a1386fca2) Truncate table to clear table (Steve Boyd) - - 2024-07-09 [c13ec3411](https://github.com/silverstripe/silverstripe-framework/commit/c13ec34113737626058b8b68792c9e8c527dba5e) `Don't strip <header> tag from HTMLValue (#11302)` (Guy Sartorelli) - - 2024-07-08 [0bb88d098](https://github.com/silverstripe/silverstripe-framework/commit/0bb88d0988bffdc9dbd0f083e1e32f440f85030f) Don't pass labelfield as value for SEarchableDropdownField (#11303) (Guy Sartorelli) - - 2024-07-03 [1943f9d41](https://github.com/silverstripe/silverstripe-framework/commit/1943f9d4173df4cb39992b960b870d5e41780348) DBForeignKey scaffolding missing parameter (#11295) (Johannes Hammersen) - - 2024-06-19 [ce5cfcac6](https://github.com/silverstripe/silverstripe-framework/commit/ce5cfcac61e42c0457aa6709dd2ab0b314bacd48) Remove write from SearchableDropdownTrait (johannes.hammersen) - - 2024-06-16 [1e0b9056f](https://github.com/silverstripe/silverstripe-framework/commit/1e0b9056f5309363ee0a31d7619a85f030e415dc) Don't load data up front for lazy-loaded searchable dropdown (#11278) (Guy Sartorelli) - - 2024-05-21 [f0aaba550](https://github.com/silverstripe/silverstripe-framework/commit/f0aaba5504aa070519792db8d63445f73b26362a) HTMLEditorField is not able to show html or xml code examples (#11243) (Sabina Talipova) - - 2024-05-19 [470293a6d](https://github.com/silverstripe/silverstripe-framework/commit/470293a6d215c446d66806990def0631fd99f923) 'which' check in 'sake' now works for aliases (#11232) (Hernold Koch) - - 2024-05-17 [699a8bf2d](https://github.com/silverstripe/silverstripe-framework/commit/699a8bf2daf1b7f28c034c68d0b69d499ee53a0e) Loop over current scope when no argument passed to loop block (Guy Sartorelli) - - 2024-05-13 [50a001836](https://github.com/silverstripe/silverstripe-framework/commit/50a00183639f6fb1816d42bafa3cb7cfb881c5ee) many_many through should allow subclasses (#11230) (Guy Sartorelli) - - 2024-05-07 [0f6d21060](https://github.com/silverstripe/silverstripe-framework/commit/0f6d2106021add81fbe8bd5fd4e143cd74633e45) Correctly eagerload polymorphic has_one relations (#11204) (Dominik Beerbohm) - - 2024-05-06 [3449d8bf2](https://github.com/silverstripe/silverstripe-framework/commit/3449d8bf212685908bddabd07e7d2b35d3c4cd33) `Revert "ENH Add Nice to DBField" (#11222)` (Guy Sartorelli) - - 2024-05-06 [a198c9162](https://github.com/silverstripe/silverstripe-framework/commit/a198c91628fa42c8841170a745ec5cf0a75f475b) Don't throw exception for empty eagerloaded relation (#11220) (Guy Sartorelli) - - 2024-05-06 [a92baeaf6](https://github.com/silverstripe/silverstripe-framework/commit/a92baeaf6fffb217260f118ad7335f1791144740) Allow double dots in path when not attempting directory traversal (#11219) (Guy Sartorelli) - - 2024-05-02 [b8f0b8ca4](https://github.com/silverstripe/silverstripe-framework/commit/b8f0b8ca4f72a12f22e5c4d8d91d04be276a3439) Handle getting HasOneRelationFieldInterface passed as an array (Steve Boyd) - - 2024-04-18 [a4adad60e](https://github.com/silverstripe/silverstripe-framework/commit/a4adad60e96cdcb8ebc87ea9f935cce47ac06a3a) Don't skip sanitisation when no valid elements are defined (Guy Sartorelli) - - 2024-04-15 [a53301f67](https://github.com/silverstripe/silverstripe-framework/commit/a53301f6739534841a8946d050344c9cf5c082ad) OutOfBoundsException when recipe-core isn't installed (fixes #11197) (Loz Calver) - - 2024-03-26 [135f9c6d3](https://github.com/silverstripe/silverstripe-framework/commit/135f9c6d3025259b519dfec351e3e85ecf2f46c5) Ensure eagerLoading don't load has_one twice (#11170) (Dominik Beerbohm) - - 2024-03-14 [9361382be](https://github.com/silverstripe/silverstripe-framework/commit/9361382be3d97e1fffe518f85b7d5f802ae7a2e6) mark a successful login attempt when completing a password reset (#10099) (Will Rossiter) - - 2023-10-15 [99e965b5d](https://github.com/silverstripe/silverstripe-framework/commit/99e965b5d7b3a90ce6be0b1233c3e9828c9a79b7) Use field editorconfig when sanitising content (Bernie Hamlin) - -- silverstripe/admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-25 [27a2da76](https://github.com/silverstripe/silverstripe-admin/commit/27a2da76a74fc66c3bd38e9173b9090cfb57341f) Fix TinyMCE edit link when link contains html (#1814) (Mo Alsharaf) - - 2024-07-29 [806ba31e](https://github.com/silverstripe/silverstripe-admin/commit/806ba31ea82a3beb8649a7d17542b820829b5fa2) Correctly set img tag attributes for WYSIWYG (#1798) (Guy Sartorelli) - - 2024-06-20 [2730ef73](https://github.com/silverstripe/silverstripe-admin/commit/2730ef73c51858f996429aa10099a8489eb3741c) Restore correct margin for gridfield (#1790) (Guy Sartorelli) - - 2024-06-19 [a11d448e](https://github.com/silverstripe/silverstripe-admin/commit/a11d448e3c013d22ef773d8c70d43237c924fafa) Use correct argument for FormBuilder context (Steve Boyd) - - 2024-05-31 [effbe4f3](https://github.com/silverstripe/silverstripe-admin/commit/effbe4f37d48e26040fa0874f939a6aa986d76ec) Allow reloading react forms based on changes to a prop (#1771) (Guy Sartorelli) - - 2024-05-22 [8dc91bd1](https://github.com/silverstripe/silverstripe-admin/commit/8dc91bd195fd82658594478ab1a7480354bf506b) Ensure tab is highlighted for validation error (#1751) (Guy Sartorelli) - - 2024-05-08 [78eb1775](https://github.com/silverstripe/silverstripe-admin/commit/78eb177565cf01e7a0eebb7cf111d35a18a15fae) Update model class importers (Mike Nuguid) - - 2024-05-07 [98096401](https://github.com/silverstripe/silverstripe-admin/commit/98096401fb1930986d5fe587d79912b3eccd9da9) Rebuild bundle (Steve Boyd) - - 2024-05-05 [038173c2](https://github.com/silverstripe/silverstripe-admin/commit/038173c2934546163fa30fd88eb969ecb39889e1) SearchableDropdownField pass incorrect value on onChange event (Sabina Talipova) - - 2024-04-30 [34348736](https://github.com/silverstripe/silverstripe-admin/commit/3434873604624bbd6bffc2d51885c49a7bd49936) Repalce mouseDown with keyDown event on treedropdown option button (#1732) (Sabina Talipova) - - 2024-04-17 [494203ea](https://github.com/silverstripe/silverstripe-admin/commit/494203ea7bb99c23352eabb65da070d6d7ea4b7b) Ensure message events are handled correctly (#1724) (Guy Sartorelli) - - 2024-03-14 [64135431](https://github.com/silverstripe/silverstripe-admin/commit/64135431a2b7f42c47fe5a750de8dcfa19a635b1) Enable bypassing entwine onsubmit handler (Steve Boyd) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-beta1) - - 2024-06-18 [0c02307](https://github.com/silverstripe/silverstripe-versioned-admin/commit/0c02307020afaf94445bcbcbc08fb16431c72156) Allow no recordId to be passed in to avoid console error in dev (#347) (Steve Boyd) - -- silverstripe/cms (5.2.0 -> 5.3.0-beta1) - - 2024-07-18 [90723451](https://github.com/silverstripe/silverstripe-cms/commit/907234511ee1deaf04e37ff109ba29b8c41f85aa) Don't double up the breadcrumb on list views (Maxime Rainville) - - 2024-05-09 [687c69c5](https://github.com/silverstripe/silverstripe-cms/commit/687c69c515e3387bd790236580b7c7c178a1e3ff) Remove broken restore batch action (Steve Boyd) - -- silverstripe/versioned (2.2.0 -> 2.3.0-beta1) - - 2024-08-19 [0650135](https://github.com/silverstripe/silverstripe-versioned/commit/0650135529a128ee8408ac7e7c11c5a6ef37ab2b) Include deprecation import (Steve Boyd) - -- silverstripe/graphql (5.2.0 -> 5.2.3) - - 2024-05-08 [d6e7735](https://github.com/silverstripe/silverstripe-graphql/commit/d6e7735562538d1432e968cf3ba1491419a2ed4a) Don't attempt to correct sort when passed as an argument (closes #571) (Loz Calver) - -- silverstripe-themes/simple (3.3.1 -> 3.3.2) - - 2019-02-05 [2ba821e](https://github.com/silverstripe/silverstripe-simple/commit/2ba821edd53ab323dfdb4e7aaeaa75de227ca1ed) `#64: TinyMCE text and image alignment issue` (Shenghan Chen) - -- silverstripe/blog (4.2.0 -> 4.3.0-beta1) - - 2024-05-10 [bad865d](https://github.com/silverstripe/silverstripe-blog/commit/bad865dc65fcf4cd95289c6127c11aea4f394f28) Don't hardcode table name (#629) (Werner Krauß) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-beta1) - - 2024-05-29 [e6b27ac](https://github.com/colymba/GridFieldBulkEditingTools/commit/e6b27ac50165758980f8ed08532d5865131f1d78) No more floating checkboxes (#286) (Guy Sartorelli) - - 2024-04-29 [f842a30](https://github.com/colymba/GridFieldBulkEditingTools/commit/f842a301cd8e6e8975103709808180832c278653) fix missing import (Thomas Portelange) - - 2024-03-04 [379fda0](https://github.com/colymba/GridFieldBulkEditingTools/commit/379fda091b63db890abeb18fb7143d67d1f9f34a) `HTTPBulkToolsResponse.addSuccessRecords() fn` (Peter Schiffer) - -- silverstripe/userforms (6.2.0 -> 6.3.0-beta1) - - 2024-08-27 [db8adf5](https://github.com/silverstripe/silverstripe-userforms/commit/db8adf589071ccc2252dc355eca1f9126aef05a0) Duplicate userforms using cascade_duplicates config (#1320) (Guy Sartorelli) - - 2024-08-05 [c822f24](https://github.com/silverstripe/silverstripe-userforms/commit/c822f240af2c6dc8bef0bad3f020d7a444d92195) Update EditableFormHeading.php to output unique ID attributes to comply with accessibility standards (Dan) - - 2024-05-30 [cccc3f7](https://github.com/silverstripe/silverstripe-userforms/commit/cccc3f7ec3d97308541efc2549c341fa9c935c47) fix: prevent CMS requirements from leaking into preview email (Will Rossiter) - - 2024-05-30 [b429efb](https://github.com/silverstripe/silverstripe-userforms/commit/b429efb2ba277a3628d5abb669b8cbe1cb8700ab) Fix layout issues with userform in elemental context (#1294) (Mo Alsharaf) - - 2024-05-24 [24ba62a](https://github.com/silverstripe/silverstripe-userforms/commit/24ba62ab069c8fc6d5c539474302ceb900702264) Don't emit deprecation warning for calling deprecated methods (#1293) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-beta1) - - 2024-08-16 [42fc926](https://github.com/silverstripe/silverstripe-elemental/commit/42fc92646c9b02aa00ddb4c16f52454c995c64e8) Don't update sort order in live until a block has been published (#1234) (Guy Sartorelli) - - 2024-06-20 [3ce68e5](https://github.com/silverstripe/silverstripe-elemental/commit/3ce68e51c3ac6309196b6ee27610f13f38fd84d9) Restore correct margin for elemental history (#1213) (Guy Sartorelli) - - 2024-05-07 [e2f742b](https://github.com/silverstripe/silverstripe-elemental/commit/e2f742b7ee4706196d119d1904798ee8ac0c051c) Improve non-inline validation (Steve Boyd) - -- silverstripe/auditor (3.1.0 -> 3.2.0-beta1) - - 2024-04-24 [7a1b7b1](https://github.com/silverstripe/silverstripe-auditor/commit/7a1b7b1c9b59bcf6b2f42884029acaf1d800408e) Use correct namespace for session manager controller (Steve Boyd) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0-beta1) - - 2024-04-11 [cdfaf149](https://github.com/silverstripe/developer-docs/commit/cdfaf14960a279ccca687353c98f21af068d1009) Fix FieldName typo (Corey Sewell) - -- silverstripe/subsites (3.2.0 -> 3.3.0-beta1) - - 2024-08-13 [6536e8f](https://github.com/silverstripe/silverstripe-subsites/commit/6536e8f524771190c0170b583bacd1602b5b3191) Correct trailing slash for subsite in another domain (#590) (Guy Sartorelli) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-beta1) - - 2019-03-19 [126a7df](https://github.com/silverstripe/silverstripe-lumberjack/commit/126a7dfea69bbbe02874c477dcbeb46b6cb3295b) Ensure correct link is used when gridfield is readonly (Aljoša Balažic) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-beta1) - - 2024-06-21 [c8cbc47](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c8cbc470e84e059c67bfef1407eed0c30b2ceb81) Prevent popping open cms-menu when using nested gridfield (Steve Boyd) - - 2024-05-21 [945ea7f](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/945ea7fc0b7396e9c351577ebc83f8280f85fa11) Make child responsible for its own nested gridfield (Guy Sartorelli) - - 2020-06-01 [80a4d9c](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/80a4d9c3119eaeacc663c2b797f5efe04167c29b) Fixed move to prev/next page functionality (fixes #307) (Loz Calver) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2024-08-19 [4448bef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4448bef7b8d9a3addd34a919c7af358e14e83c48) Remove header filter from localisation grid field (Mohamed Alsharaf) - - 2024-08-13 [8f7d803](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8f7d8032690da59e9c8aca9ff8ad4140da2a97c0) Correct trailing slash for locale in another domain (#872) (Guy Sartorelli) - - 2024-06-10 [713786b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/713786bdb89b973926c273c7a2e68bb346d02c7e) Preview link when no locale set (Steve Boyd) - - 2024-06-06 [2714bff](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2714bff77c5baebcabf63e5aa281be57f9b05dbf) Create a temp locale if there is not a default (Steve Boyd) - - 2024-06-06 [eaece0a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/eaece0a7e1c8e3a4492d3d290c84993b52c82b4c) Only select columns from the current database (Steve Boyd) - - 2024-03-24 [11e92f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/11e92f4ca2a8d7e8012db31b7a6b9ff2c7a12689) fix: check for request prior to access (Damian Mooyman) - - 2024-03-24 [8985d8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8985d8c8db9f69ae7d1c9e44bb3e1b122c94f074) fix: check for request prior to access (Damian Mooyman) - - 2024-03-24 [6961bc7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6961bc7b0bd54ab1fa5d60f7e3586fbbb0184f21) fix: don't invoke db for ready check outside of dev urls (Damian Mooyman) - - 2024-03-20 [05ef577](https://github.com/tractorcow-farm/silverstripe-fluent/commit/05ef5774130a5102d7e2fd089516536745850900) fix: redundant import (Damian Mooyman) - - 2024-03-20 [f79f0f9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f79f0f90174f1b1ae49bd4656dc2accd7a2add62) fix: don't invoke db for ready check outside of dev urls (Damian Mooyman) - - 2024-02-08 [14ecdb1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/14ecdb1f6b03328f76c7c8adfe2eb6e222725e56) allows i18nTextCollector to concatenate keys (David Toews) - - 2023-11-14 [f18bc71](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f18bc716ff94f1f7b55eb4bd7b5ac7d9a388fb76) fix: allow plugins (Damian Mooyman) - - 2023-05-23 [f07b036](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f07b03663d3acdbfd55bb9f8f2934ab8680757a9) Don't try to preview unlocalised objects (#781) (Guy Sartorelli) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-beta1) - - 2024-08-07 [05f0bd7](https://github.com/silverstripe/silverstripe-linkfield/commit/05f0bd7dd9832c39e4011f31e3dc673c397ba647) Check canArchive() permission instead of canDelete() (Steve Boyd) - - 2024-05-23 [33621d0](https://github.com/silverstripe/silverstripe-linkfield/commit/33621d0a9104de2297fc175fd97937486590da9a) Don't pass null into ArrayList (#290) (Guy Sartorelli) - - 2024-05-02 [e5cc291](https://github.com/silverstripe/silverstripe-linkfield/commit/e5cc291aec0c4de54289ffc7c28a7d7ed663a1bd) `Handle a string "0" value` (Steve Boyd) - - 2024-03-26 [8e8a47a](https://github.com/silverstripe/silverstripe-linkfield/commit/8e8a47aeba0f2ed3331f5344c38bae2036f2ec0a) Linkfield sorting issue (Sabina Talipova) - -### Api changes {#changelog-api-changes} - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-08-20 [743fe245a](https://github.com/silverstripe/silverstripe-framework/commit/743fe245aa7a1f06a1083e511cddf77300c758bc) Deprecate DataExtension (Steve Boyd) - - 2024-07-03 [724e813b8](https://github.com/silverstripe/silverstripe-framework/commit/724e813b8fe0367601b918276fbf376855967983) Make token regeneration optional during autologin session renewal (Garion Herman) - - 2024-06-12 [049e54624](https://github.com/silverstripe/silverstripe-framework/commit/049e546247ac6957885f862124d23cc50daf5dc9) Deprecate references to installation tool (#11275) (Guy Sartorelli) - - 2024-05-14 [0ba85bc1d](https://github.com/silverstripe/silverstripe-framework/commit/0ba85bc1d00281c79f8623186b2e5ba6a3ec2929) Deprecate passing non-arrays to FieldList methods (Steve Boyd) - -- silverstripe/admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-20 [611dc588](https://github.com/silverstripe/silverstripe-admin/commit/611dc588e0c4138ff74a07b896db54d951c03058) Deprecate LeftAndMainExtension (Steve Boyd) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-22 [ae7c21eb](https://github.com/silverstripe/silverstripe-asset-admin/commit/ae7c21eb4c6d1da8d0b889f87437a9c2459a1747) Deprecate extension to be replaced with config (#1489) (Guy Sartorelli) - - 2024-08-18 [81b03208](https://github.com/silverstripe/silverstripe-asset-admin/commit/81b0320809f5a55a578d4c46869c490110e3e3c7) Deprecate GraphQL (Steve Boyd) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-22 [af19bc1](https://github.com/silverstripe/silverstripe-campaign-admin/commit/af19bc100146d4776e5b3eae0a724e04ee7b3ab8) Deprecate extension to be replaced with config (#325) (Guy Sartorelli) - -- silverstripe/cms (5.2.0 -> 5.3.0-beta1) - - 2024-08-20 [5e3e8479](https://github.com/silverstripe/silverstripe-cms/commit/5e3e8479980da2bda81290783fd8c5c0a5af0727) Deprecate SiteTreeExtension (Steve Boyd) - - 2024-08-18 [391c1cea](https://github.com/silverstripe/silverstripe-cms/commit/391c1cea0ca3811ae32a05f34fe932320b790bdf) Deprecate GraphQL (Steve Boyd) - - 2024-06-12 [8fa7bffd](https://github.com/silverstripe/silverstripe-cms/commit/8fa7bffd78279c0125a3b103845987e534565885) Deprecate references to installation tool (#2962) (Guy Sartorelli) - -- silverstripe/versioned (2.2.0 -> 2.3.0-beta1) - - 2024-08-18 [812d1a1](https://github.com/silverstripe/silverstripe-versioned/commit/812d1a1a776e3866909d9a0dc00ea351c2d5e737) Deprecate GraphQL (Steve Boyd) - - 2024-08-15 [4bc9abd](https://github.com/silverstripe/silverstripe-versioned/commit/4bc9abdfa9a1b41b194b61606bbbc997b3205906) Deprecate Versioned::canArchive() (#461) (Guy Sartorelli) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-beta1) - - 2024-08-19 [8c23041](https://github.com/silverstripe/silverstripe-session-manager/commit/8c23041c63cb119d9574bb82f5a12e4ee6181dbb) Use symfony for IPUtils (Steve Boyd) - -- silverstripe/blog (4.2.0 -> 4.3.0-beta1) - - 2024-08-20 [7ad58bb](https://github.com/silverstripe/silverstripe-blog/commit/7ad58bb9a0c9e3897bf3afa7abbd167f0a2f980c) Deprecate widget classes (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-beta1) - - 2024-08-19 [13809b9](https://github.com/colymba/GridFieldBulkEditingTools/commit/13809b999ab76f7c446c9fc78bddf81c47b97c65) Added fileID and record variables to onBulkUpload hook (Benjamin Blake) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-beta1) - - 2024-08-22 [9453721](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/94537216366201a766e6463a6b30f06121263d78) Deprecate extension to be replaced with config (#255) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-beta1) - - 2024-08-22 [35e3eb9](https://github.com/silverstripe/silverstripe-elemental/commit/35e3eb9ce645a78a9dc93492077be62143fcc990) Deprecate extension to be replaced with config (#1243) (Guy Sartorelli) - - 2024-08-19 [c3f3660](https://github.com/silverstripe/silverstripe-elemental/commit/c3f3660b70bcaa3338ce1323f2acfb3fb6fb7170) Deprecate GraphQL (Steve Boyd) - - 2024-05-29 [35c723d](https://github.com/silverstripe/silverstripe-elemental/commit/35c723d79458a766d6153f101d4c839cb92dae26) Deprecate BaseElement::getDescription() (#1196) (Guy Sartorelli) - -- silverstripe/auditor (3.1.0 -> 3.2.0-beta1) - - 2024-04-28 [5fe202e](https://github.com/silverstripe/silverstripe-auditor/commit/5fe202ec9d20f2188213af21f12d659d9f3ad17e) Deprecate ProxyDBExtension (Steve Boyd) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2023-02-17 [43dc86d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/43dc86d3ba361cd5e55737022335e1ff04f316c3) Standardise deprecations (Guy Sartorelli) - -### Dependencies {#changelog-dependencies} - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-08-19 [16a8132be](https://github.com/silverstripe/silverstripe-framework/commit/16a8132bec7299e97581f221920dd9d966a43d7a) Use symfony for IPUtils (Steve Boyd) - -- silverstripe/admin (2.2.0 -> 2.3.0-beta1) - - 2024-09-01 [c21cf6d2](https://github.com/silverstripe/silverstripe-admin/commit/c21cf6d2a955ce8a172307e7b4fbd4e84fda8553) Update JS dependencies (#1821) (github-actions[bot]) - - 2024-07-29 [5df97257](https://github.com/silverstripe/silverstripe-admin/commit/5df9725764fa5cb094adae1e92c9881a27068a08) Conflict with incompatible version of elemental (#1800) (Guy Sartorelli) - - 2024-06-10 [df02655f](https://github.com/silverstripe/silverstripe-admin/commit/df02655fda905b483dc85cfed8b1c761b48ad8f6) Update validator js dep to fix date validation bug (#1775) (Guy Sartorelli) - - 2024-06-05 [fc76d17d](https://github.com/silverstripe/silverstripe-admin/commit/fc76d17d9c9ca425cfa1771695dcdb44c6e8a9b8) Bump ejs from 3.1.9 to 3.1.10 (#1735) (dependabot[bot]) - - 2024-04-01 [a667c2d7](https://github.com/silverstripe/silverstripe-admin/commit/a667c2d7405c26d9c6911bcd0de835976b741ea1) Update JS dependencies (#1716) (github-actions[bot]) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-beta1) - - 2024-09-01 [18cd4095](https://github.com/silverstripe/silverstripe-asset-admin/commit/18cd409505de6480296ff03620366c952a5d1f26) Update JS dependencies (github-actions) - - 2024-06-05 [a40e4102](https://github.com/silverstripe/silverstripe-asset-admin/commit/a40e4102b1dd39d852c885af4e16f91c10a36b95) Move babel to devDependencies (Steve Boyd) - - 2024-04-02 [0abb6ac8](https://github.com/silverstripe/silverstripe-asset-admin/commit/0abb6ac8aaf7848857f4b00392588df13b12e4c0) Update JS dependencies (#1449) (github-actions[bot]) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0-beta1) - - 2024-09-01 [5855f59](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5855f59916fbc9dadb73b33229532429f68ba2ee) Update JS dependencies (github-actions) - - 2024-04-01 [70a0629](https://github.com/silverstripe/silverstripe-campaign-admin/commit/70a06291ed7b8701a1e2d1a3ec0502da5ba90185) Update JS dependencies (#298) (github-actions[bot]) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-beta1) - - 2024-09-01 [4ecee4e](https://github.com/silverstripe/silverstripe-versioned-admin/commit/4ecee4ef6056ef6908135c65b9631e8ff0e6c526) Update JS dependencies (github-actions) - - 2024-04-02 [bd47d34](https://github.com/silverstripe/silverstripe-versioned-admin/commit/bd47d34cc99c765e4d31e08ce716cbd3e5ff565b) Update JS dependencies (#333) (github-actions[bot]) - -- silverstripe/cms (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [0b6f9c02](https://github.com/silverstripe/silverstripe-cms/commit/0b6f9c0250361307e21e839eda5e66081fcdcbcd) Update JS dependencies (github-actions) - - 2024-04-02 [6a19ed9a](https://github.com/silverstripe/silverstripe-cms/commit/6a19ed9a3572485583f5b46d841598bfa7569512) Update JS dependencies (#2928) (github-actions[bot]) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-beta1) - - 2024-09-01 [b5b898e](https://github.com/silverstripe/silverstripe-session-manager/commit/b5b898ea0733751edd28f0aaaa870baeab57acd1) Update JS dependencies (github-actions) - - 2024-04-01 [17eb0bc](https://github.com/silverstripe/silverstripe-session-manager/commit/17eb0bc40233db3eb2e071b64dc917bf967430f0) Update JS dependencies (#187) (github-actions[bot]) - -- silverstripe/login-forms (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [b8af4b0](https://github.com/silverstripe/silverstripe-login-forms/commit/b8af4b06a94b616ee82fec90b055d58d39761216) Update JS dependencies (github-actions) - - 2024-04-01 [6757f0a](https://github.com/silverstripe/silverstripe-login-forms/commit/6757f0ab7ee14ee0322da91f17f18106d7764610) Update JS dependencies (#170) (github-actions[bot]) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [533e918](https://github.com/silverstripe/silverstripe-documentconverter/commit/533e91889ebb392f7006e42bdf396573470b63ad) Bump braces from 3.0.2 to 3.0.3 (dependabot[bot]) - - 2024-09-01 [ba7f07b](https://github.com/silverstripe/silverstripe-documentconverter/commit/ba7f07bebc4c9ab34f6162a3393c1d169754401f) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-08-31 [72a04e6](https://github.com/silverstripe/silverstripe-documentconverter/commit/72a04e6f9d8b4a74f696dacf5268b26b16cb88e8) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-08-02 [a1e9d62](https://github.com/silverstripe/silverstripe-documentconverter/commit/a1e9d62b6942d3237593e21eba05807da8af5ab3) Bump requirejs from 2.3.6 to 2.3.7 (dependabot[bot]) - - 2024-06-18 [52688c8](https://github.com/silverstripe/silverstripe-documentconverter/commit/52688c85621d61a94d7d7bbfdc2d580ce4eda244) Bump ws from 7.5.9 to 7.5.10 (dependabot[bot]) - - 2024-04-01 [045f6a9](https://github.com/silverstripe/silverstripe-documentconverter/commit/045f6a9632912ba19639e862ff8de16466e37868) Update JS dependencies (#74) (github-actions[bot]) - -- silverstripe/tagfield (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [6687921](https://github.com/silverstripe/silverstripe-tagfield/commit/6687921601b5c4bb157acbfbd40a6c525112f9ae) Update JS dependencies (github-actions) - - 2024-07-09 [2b29c42](https://github.com/silverstripe/silverstripe-tagfield/commit/2b29c427fc5f41e83bfd62ca08b663149cc3f6f5) Bump minimum version of framework (Steve Boyd) - - 2024-04-02 [45d5a10](https://github.com/silverstripe/silverstripe-tagfield/commit/45d5a104a2223012e9385857acfbc8f01b59ba3f) Update JS dependencies (#284) (github-actions[bot]) - -- silverstripe/blog (4.2.0 -> 4.3.0-beta1) - - 2024-09-01 [67be150](https://github.com/silverstripe/silverstripe-blog/commit/67be1508989006e4749709e23001c6aad4ef18fc) Update JS dependencies (#783) (github-actions[bot]) - - 2024-04-01 [b4605f3](https://github.com/silverstripe/silverstripe-blog/commit/b4605f3d86d0fb7efb7c348d56273c261b4d6d1d) Update JS dependencies (#751) (github-actions[bot]) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-beta1) - - 2024-06-20 [a13e101](https://github.com/colymba/GridFieldBulkEditingTools/commit/a13e1015812d11469a505fa2f3caecfbf2bae139) Update eslint-config dependency (#292) (Guy Sartorelli) - - 2024-04-02 [3c38967](https://github.com/colymba/GridFieldBulkEditingTools/commit/3c38967ab656424480b34d626f27110139535b1f) Update JS dependencies (Steve Boyd) - - 2023-10-03 [5b21477](https://github.com/colymba/GridFieldBulkEditingTools/commit/5b214779a53df0fe9c36230490d87a91cc2cc74a) Update javascript dependencies (#254) (Guy Sartorelli) - -- silverstripe/contentreview (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [440e434](https://github.com/silverstripe/silverstripe-contentreview/commit/440e43477fe37147d0d4bbc4d4068606d2c804ae) Update JS dependencies (github-actions) - - 2024-07-09 [4ea50b3](https://github.com/silverstripe/silverstripe-contentreview/commit/4ea50b34f058f05bebbcb6e028575762ffd6cc95) Bump minimum version of framework (Steve Boyd) - - 2024-04-02 [efa4dda](https://github.com/silverstripe/silverstripe-contentreview/commit/efa4ddad616df126f84b9c386780490381a6b5ce) Update JS dependencies (#228) (github-actions[bot]) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [9bb4569](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/9bb45695f97e4055ccfd690ee645d21dac010d48) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [9fe444e](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/9fe444ee4ae6f32974a979581bf897f3df8ba675) Update JS dependencies (#229) (github-actions[bot]) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0-beta1) - - 2024-07-09 [f78f120](https://github.com/symbiote/silverstripe-advancedworkflow/commit/f78f120b5c716d1fd6f3f5b66499ee4b016f6725) Bump minimum version of framework (Steve Boyd) - - 2024-06-05 [07c3fee](https://github.com/symbiote/silverstripe-advancedworkflow/commit/07c3feeac5dd30cb5398bb142fa45dca682f713d) Bump remarkable from 1.7.1 to 1.7.4 (#534) (dependabot[bot]) - - 2024-04-02 [54bfc48](https://github.com/symbiote/silverstripe-advancedworkflow/commit/54bfc48fb8bf3b080e09915ec40e0231d9a56027) Update JS dependencies (Steve Boyd) - -- silverstripe/segment-field (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [d9ab70a](https://github.com/silverstripe/silverstripe-segment-field/commit/d9ab70adfd09b9066e34841153261333892b8e93) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [9b3845b](https://github.com/silverstripe/silverstripe-segment-field/commit/9b3845bc8b8c9a637a11796f53530e84568847ed) Update JS dependencies (#102) (github-actions[bot]) - -- silverstripe/userforms (6.2.0 -> 6.3.0-beta1) - - 2024-09-01 [11e5994](https://github.com/silverstripe/silverstripe-userforms/commit/11e59945fccf3ef4a03d1ce3b9d8f6105baa9d47) Update JS dependencies (github-actions) - - 2024-07-09 [843353f](https://github.com/silverstripe/silverstripe-userforms/commit/843353f440606ad3e84b01582c9048cff454d8de) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [4d17efd](https://github.com/silverstripe/silverstripe-userforms/commit/4d17efd6373303f2ecf6fcecdbae05a89629c560) Update JS dependencies (#1277) (github-actions[bot]) - -- silverstripe/externallinks (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [4a22b96](https://github.com/silverstripe/silverstripe-externallinks/commit/4a22b9679f99635c53b4f99e95b4738019992941) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-02 [d6d537b](https://github.com/silverstripe/silverstripe-externallinks/commit/d6d537b85d250e61bec12f419dc93e43e357d6bb) Update JS dependencies (#122) (github-actions[bot]) - -- silverstripe/sitewidecontent-report (4.2.0 -> 4.3.0-beta1) - - 2024-09-01 [479a252](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/479a2520e6bfadf5799a33fe9f149a306dd6213b) Update JS dependencies (github-actions) - - 2024-04-01 [38cb2aa](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/38cb2aa33a933658ffb8256d1dfe684a8a3618e6) Update JS dependencies (#84) (github-actions[bot]) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0-beta1) - - 2024-06-21 [eab0c25](https://github.com/bringyourownideas/silverstripe-maintenance/commit/eab0c258f0b4ed433ade85ff5062681f5f7d6820) Rebuild yarn.lock (#231) (Guy Sartorelli) - - 2024-04-02 [5f7caec](https://github.com/bringyourownideas/silverstripe-maintenance/commit/5f7caec887cbb8e03205e238e89673fe05f56aef) Update JS dependencies (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [d832181](https://github.com/silverstripe/silverstripe-elemental/commit/d832181327b9370b875b4c8ef388bd1c5119a7d4) Update JS dependencies (github-actions) - - 2024-07-23 [6306618](https://github.com/silverstripe/silverstripe-elemental/commit/63066182f45628fec2a11cc3826b9f066c4b9b96) Update minimum dependencies (#1223) (Guy Sartorelli) - - 2024-07-10 [8776381](https://github.com/silverstripe/silverstripe-elemental/commit/8776381f2c61fcf5f42b82afb3e3838aa69d6e76) Bump framework dependency (Steve Boyd) - - 2024-05-21 [d7bdd13](https://github.com/silverstripe/silverstripe-elemental/commit/d7bdd13725a511540fa1b36470ae2466e688c54b) Bump framework dependency (Steve Boyd) - - 2024-04-01 [0e7dffe](https://github.com/silverstripe/silverstripe-elemental/commit/0e7dffe43244532ea4364f0b46aa80ab46d66bde) Update JS dependencies (#1159) (github-actions[bot]) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [41bc938](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/41bc938e5fb53d650ae1899ab7aca33d9ae0b5a1) Update JS dependencies (github-actions) - - 2024-04-02 [7b705ca](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7b705ca5ca6545f625a4f6661da197ad60bfd2b3) Update JS dependencies (#140) (github-actions[bot]) - -- silverstripe/auditor (3.1.0 -> 3.2.0-beta1) - - 2024-07-09 [52f459a](https://github.com/silverstripe/silverstripe-auditor/commit/52f459ad2f8019887a2e373f39181ceb2fdb96db) Bump minimum version of framework (Steve Boyd) - - 2024-03-26 [a9627f9](https://github.com/silverstripe/silverstripe-auditor/commit/a9627f9f5cc00be36a44fd2cf8519f322d8b9ea5) Use the canonical repository for proxy-db (#72) (Michal Kleiner) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0-beta1) - - 2024-07-01 [b8dfee95](https://github.com/silverstripe/developer-docs/commit/b8dfee95473734fbc38f12447f891a95a8d3a47d) Update JS dependencies (github-actions) - - 2024-04-01 [eae39d5f](https://github.com/silverstripe/developer-docs/commit/eae39d5fa25d64674a7ac70aedc2ee4f1e1772a3) Update JS dependencies (#488) (github-actions[bot]) - -- silverstripe/totp-authenticator (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [851087b](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/851087b1c7707e3ddd206ed9078d4e06b54827b4) Update JS dependencies (github-actions) - - 2024-04-02 [252803e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/252803e5e9e8bc94376f0e256211532d271cd300) Update JS dependencies (#149) (github-actions[bot]) - -- silverstripe/mfa (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [1e93852](https://github.com/silverstripe/silverstripe-mfa/commit/1e9385296958fe07480178001a00fc842c966cd6) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-07-09 [84022f7](https://github.com/silverstripe/silverstripe-mfa/commit/84022f769be2a515cc96ba4cc7d18ce2b9242bff) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [23fc087](https://github.com/silverstripe/silverstripe-mfa/commit/23fc0877b3fe7d1e60d2f7ba1270bad0f7911398) Update JS dependencies (#532) (github-actions[bot]) - -- silverstripe/gridfieldqueuedexport (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [4f5fbd9](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/4f5fbd902ce2447abb8a353a6c9d6c97ee66ec30) Update JS dependencies (github-actions) - - 2024-04-01 [d7925bf](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/d7925bfdafefb7e8a968229da5313de819a6ef44) Update JS dependencies (#102) (github-actions[bot]) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-07-09 [267667e](https://github.com/silverstripe/silverstripe-ldap/commit/267667edb2d31d17b3fd4e0af353b5ab0c53ffac) Bump minimum version of framework (Steve Boyd) - -- silverstripe/realme (5.3.0 -> 5.4.0-beta1) - - 2024-09-01 [814b340](https://github.com/silverstripe/silverstripe-realme/commit/814b34015c977b43b183dded11922e5c422adf96) Update JS dependencies (github-actions) - - 2024-04-02 [dff66ae](https://github.com/silverstripe/silverstripe-realme/commit/dff66ae15ede91fd5e1ef7a76cf90a207564f52e) Update JS dependencies (#135) (github-actions[bot]) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0-beta1) - - 2024-09-01 [1e8dbfd](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/1e8dbfd91febc86cddbf8d049db7076427261c72) Update JS dependencies (github-actions) - - 2024-07-09 [da521b1](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/da521b1e20a526177df339a83ed513d0ff6bf94e) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [57ea49b](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/57ea49ba08005a6153c03fabd2ff634ad79eda2f) Update JS dependencies (#173) (github-actions[bot]) - -- silverstripe/subsites (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [ff50db1](https://github.com/silverstripe/silverstripe-subsites/commit/ff50db144db996bd214335c88eeab5a6b98f0d0d) Update JS dependencies (github-actions) - - 2024-07-09 [5025c32](https://github.com/silverstripe/silverstripe-subsites/commit/5025c32fc71d92942af324fd768f79eebf1dbfca) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [f337fdc](https://github.com/silverstripe/silverstripe-subsites/commit/f337fdce25012ee6ec12ae124cc2f8a9afa59979) Update JS dependencies (#565) (github-actions[bot]) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-beta1) - - 2024-09-01 [465d794](https://github.com/silverstripe/silverstripe-lumberjack/commit/465d794e1a17cc9d1402b4b3e345e039351d8496) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [6a05f4a](https://github.com/silverstripe/silverstripe-lumberjack/commit/6a05f4a1b7eedf4a45f4f0e294f898604bcc75ce) Update JS dependencies (#142) (github-actions[bot]) - -- silverstripe/staticpublishqueue (6.2.0 -> 6.2.2) - - 2024-07-11 [f9d8410](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/f9d841074cd62566244ca9fec163d9c6a3adc6d7) Bump minimum version for framework (Steve Boyd) - - 2024-05-07 [5092eb4](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/5092eb4ee3442f8776e7c588cedb28552182dc9a) Bump minimum queuedjobs version (Steve Boyd) - -- cwp/starter-theme (4.1.0 -> 4.2.0-beta1) - - 2024-08-31 [44b9922](https://github.com/silverstripe/cwp-starter-theme/commit/44b9922c87766c8181a6f71b93d3b235e63c6d7a) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-06-18 [83bb5d3](https://github.com/silverstripe/cwp-starter-theme/commit/83bb5d3128198ce41185134f24caebd065661219) Bump ws from 8.16.0 to 8.17.1 (dependabot[bot]) - - 2024-04-02 [55d7616](https://github.com/silverstripe/cwp-starter-theme/commit/55d761682ca1175e23fa81ec12c9f6d56a9ea071) Update JS dependencies (Steve Boyd) - -- cwp/agency-extensions (3.2.0 -> 3.3.0-beta1) - - 2024-09-01 [5d5c123](https://github.com/silverstripe/cwp-agencyextensions/commit/5d5c123f14ffea52f022b2d497da44b6b969d617) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-08-31 [f1fafa8](https://github.com/silverstripe/cwp-agencyextensions/commit/f1fafa8a2cfa366902e6fc5c671b32d60198f2c5) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-08-02 [e4a0b8c](https://github.com/silverstripe/cwp-agencyextensions/commit/e4a0b8cf790b90db4ff34d69c1aa920810972fe6) Bump requirejs from 2.3.6 to 2.3.7 (dependabot[bot]) - - 2024-06-18 [0cd5225](https://github.com/silverstripe/cwp-agencyextensions/commit/0cd522568dbdd7a5eab5a58ffa63d5303c695f6a) Bump ws from 7.5.9 to 7.5.10 (dependabot[bot]) - - 2024-04-01 [9424879](https://github.com/silverstripe/cwp-agencyextensions/commit/94248792c611ace592e537871483539291851426) Update JS dependencies (#116) (github-actions[bot]) - -- cwp/watea-theme (4.1.0 -> 4.2.0-beta1) - - 2024-09-01 [8cea89c](https://github.com/silverstripe/cwp-watea-theme/commit/8cea89c0ecb54d85f02d89c6c9483dc5114befd2) Update JS dependencies (github-actions) - - 2024-04-02 [7507d01](https://github.com/silverstripe/cwp-watea-theme/commit/7507d01284a7dc55cd902053d5707ea32c78b13d) Update JS dependencies (#184) (github-actions[bot]) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2024-09-01 [1f327ef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1f327ef155696c5238cd7b6733141c80371e8c58) Update JS dependencies (github-actions) - - 2024-04-02 [aa2953b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/aa2953b7e8ff925b39adc543ef12b1f1ae8f42b1) Update JS dependencies (Steve Boyd) - - 2024-04-01 [4628a66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4628a66a5090720e6e8ad125f399f73fb3186e75) Update JS dependencies (github-actions) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-beta1) - - 2024-09-01 [7d4db3c](https://github.com/silverstripe/silverstripe-linkfield/commit/7d4db3c646f6d6aa159c3c20a7b7b6a198480e55) Update JS dependencies (github-actions) - - 2024-07-11 [9c87e9c](https://github.com/silverstripe/silverstripe-linkfield/commit/9c87e9c5d9ee7a67a6290cf8573ff8167202efda) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [fc56c05](https://github.com/silverstripe/silverstripe-linkfield/commit/fc56c0527fb0df1c86d7c98b866d7c83e3e0a20c) Update JS dependencies (#266) (github-actions[bot]) - -### Documentation {#changelog-documentation} - -- silverstripe/recipe-plugin (2.0.0 -> 2.0.1) - - 2023-04-19 [190bf80](https://github.com/silverstripe/recipe-plugin/commit/190bf80dbefde6d2d344c8fedcfa34fabb9eb9c7) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/taxonomy (3.2.0 -> 3.2.2) - - 2024-05-27 [5801fce](https://github.com/silverstripe/silverstripe-taxonomy/commit/5801fced5f64e6e66623a9bba575a175f73ef40d) Update doc structure for docs.silverstripe.org (#114) (Guy Sartorelli) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0-beta1) - - 2024-08-25 [814b856b](https://github.com/silverstripe/developer-docs/commit/814b856bce638b7c919a793d487c37487e81d6fb) Deprecate DataExtension and others (Steve Boyd) - - 2024-08-20 [8f61725a](https://github.com/silverstripe/developer-docs/commit/8f61725a5781755d75f2374c1d13cee53c9f0195) Deprecate widgets code (Steve Boyd) - - 2024-08-19 [54677c32](https://github.com/silverstripe/developer-docs/commit/54677c32827fa57342637ae18d613101ae6e0f02) Deprecate IPUtils (Steve Boyd) - - 2024-08-19 [e592d10e](https://github.com/silverstripe/developer-docs/commit/e592d10e3b7ce5252b0d8910930d015f47ced665) Deprecate CMS GraphQL endpoints (Steve Boyd) - - 2024-08-16 [5b809f87](https://github.com/silverstripe/developer-docs/commit/5b809f876aabf2c91a1bed1df4cb0a7dcb08c6d6) Document change to sorting elemental blocks (#554) (Guy Sartorelli) - - 2024-08-15 [782ce192](https://github.com/silverstripe/developer-docs/commit/782ce19290909fcf7ab3a7649b92e3d5f337ae2b) Remove recommendation for GraphQL (Steve Boyd) - - 2024-08-14 [8634522e](https://github.com/silverstripe/developer-docs/commit/8634522e3bfc77ff54176ec401a08eaa952a71ec) Update docs about community peer reviewers (Guy Sartorelli) - - 2024-08-08 [f0dcf5b0](https://github.com/silverstripe/developer-docs/commit/f0dcf5b0e2232aa14ccf4a768eb70db632629815) Document changes to FormScaffolder options. (Guy Sartorelli) - - 2024-08-08 [9c5801a9](https://github.com/silverstripe/developer-docs/commit/9c5801a9491b54147c57ade46f44d330edfeaee2) Document new TabSet::changeTabOrder() method. (Guy Sartorelli) - - 2024-07-22 [64ae2316](https://github.com/silverstripe/developer-docs/commit/64ae23166c3f9ddf59431399365d77fd1db6a601) Document always inline saving elements (Steve Boyd) - - 2024-07-10 [40411277](https://github.com/silverstripe/developer-docs/commit/40411277d2400867514c37b810c51ef54d2258ac) Stop implying we don't support webp out of the box (#546) (Guy Sartorelli) - - 2024-07-08 [ac654801](https://github.com/silverstripe/developer-docs/commit/ac65480107f6664fd5cba95ac94a48aaa6e93c42) Update links to elvis (#544) (Guy Sartorelli) - - 2024-07-04 [41bbb211](https://github.com/silverstripe/developer-docs/commit/41bbb211c7f17fe297ee3ca0c6c7cc7152788589) Add autologin token regeneration changes to 5.3 changelog (Garion Herman) - - 2024-06-30 [81c3f935](https://github.com/silverstripe/developer-docs/commit/81c3f9359ac2416811f9087d30d5e11465d289e7) Explain how to customise image rendering (#529) (Maxime Rainville) - - 2024-06-27 [19a1c294](https://github.com/silverstripe/developer-docs/commit/19a1c294416f9c4ca6c649dd8745d3283d95e699) Clarify we test with the latest LTS for MariaDB and MySQL (#535) (Guy Sartorelli) - - 2024-06-26 [79b8f5ec](https://github.com/silverstripe/developer-docs/commit/79b8f5ec926540634f4fd1b2ecd5ebc89b5c3f25) Remove Guy Marriott from Core Committers page (#536) (Guy Sartorelli) - - 2024-06-18 [cf989d29](https://github.com/silverstripe/developer-docs/commit/cf989d29879433e0f49a3aece89df39d9b88c25a) Document new community contributions project on GitHub (#534) (Guy Sartorelli) - - 2024-06-17 [38d394b9](https://github.com/silverstripe/developer-docs/commit/38d394b9d2b74ecc19633e76e8c721aad17faebf) Do not use self (Steve Boyd) - - 2024-06-07 [a87b9885](https://github.com/silverstripe/developer-docs/commit/a87b9885160eec3a8721f6961c97aaaa225bff1a) Document scaffolding formfields for model relations (#527) (Guy Sartorelli) - - 2024-06-04 [6e577201](https://github.com/silverstripe/developer-docs/commit/6e577201dbb3c23d00d4ada57967e550c6212d3f) Document update to convert API (#526) (Guy Sartorelli) - - 2024-05-29 [0e3245c9](https://github.com/silverstripe/developer-docs/commit/0e3245c943fccfc4062a5cc5c90043d81da5e101) `Update cascade_deletes information for many_many relationships (#523)` (Ed Wilde) - - 2024-05-29 [2076fd8b](https://github.com/silverstripe/developer-docs/commit/2076fd8bd64c4aff2f8314b43347d5235c113e9d) Update branch protection rules (Steve Boyd) - - 2024-05-29 [50e0b9ae](https://github.com/silverstripe/developer-docs/commit/50e0b9aea7d4a2102301dcc6beadaaf579c54cc5) Document deprecation of BaseElement::getDescription() (#521) (Guy Sartorelli) - - 2024-05-17 [c441d972](https://github.com/silverstripe/developer-docs/commit/c441d9728f4dac97e8337bb0470d780dce7fc4b6) Document the current scope loop (Guy Sartorelli) - - 2024-05-16 [0ded0112](https://github.com/silverstripe/developer-docs/commit/0ded0112c7d11b65acdc56f2cba66b393e4f7462) Deprecate passing non-array $field argument (Steve Boyd) - - 2024-05-15 [400b86e9](https://github.com/silverstripe/developer-docs/commit/400b86e9dc42c02be3d370b755ce25e7f67a4f21) Update writing style guide (Steve Boyd) - - 2024-05-14 [aadcbbc2](https://github.com/silverstripe/developer-docs/commit/aadcbbc2c39738cb9cef51e3bef78342c648b98c) Convert primitves to DBField in iterables (Steve Boyd) - - 2024-05-13 [d10e7634](https://github.com/silverstripe/developer-docs/commit/d10e7634550ed4bcffd31d35a56d0c2c77352eed) Document using raw SQL to query join tables (#508) (Guy Sartorelli) - - 2024-05-13 [100dbf25](https://github.com/silverstripe/developer-docs/commit/100dbf2589d1ba7d54695d5a08960597291de2a2) Use table name, not class name. (#509) (Guy Sartorelli) - - 2024-05-09 [d88efe54](https://github.com/silverstripe/developer-docs/commit/d88efe5410304d7ecd22da14fd55d87b4dd251c3) Mention that restore batch action has been removed (Steve Boyd) - - 2024-04-30 [1d9ff216](https://github.com/silverstripe/developer-docs/commit/1d9ff21609d16bc2e804af445417c6bc19c73855) Change hint to tip (Steve Boyd) - - 2024-04-26 [faf1f2ac](https://github.com/silverstripe/developer-docs/commit/faf1f2acbaf3d378d44371ac58c91e291a0c73df) Document using pjax response from gridfield (#502) (Guy Sartorelli) - - 2024-04-18 [f27be141](https://github.com/silverstripe/developer-docs/commit/f27be141f0ebcb9add7ab6f7967711270f58e9c2) Document TinyMCE changes (#498) (Guy Sartorelli) - - 2024-04-18 [f6d9ea60](https://github.com/silverstripe/developer-docs/commit/f6d9ea60d41831e3702d20c65c2e0ff41d91718c) type/i18n label (Steve Boyd) - - 2024-04-10 [c93e8a88](https://github.com/silverstripe/developer-docs/commit/c93e8a885030c22590144b91289dd861a6e32167) Document new file conversion API (#491) (Guy Sartorelli) - - 2024-04-10 [d11fd21b](https://github.com/silverstripe/developer-docs/commit/d11fd21b8d3f4fd2abb5597bbf94c8743508cad4) GraphQL schema init task (Steve Boyd) - - 2024-04-09 [8e8903cc](https://github.com/silverstripe/developer-docs/commit/8e8903cc30c04a8a129aee4e5bf52d76b4fe2c1b) Update model validation docs (Steve Boyd) - - 2024-04-02 [8e49ea18](https://github.com/silverstripe/developer-docs/commit/8e49ea180a70ce1639cdbaafb847d3744f42c213) linkfield accesibility improvements (Steve Boyd) - - 2024-04-01 [395fa14c](https://github.com/silverstripe/developer-docs/commit/395fa14ca4aad6df599616dee566ccc4526f17b6) Document creating fixtures in custom DB tables (#484) (Guy Sartorelli) - - 2024-03-19 [bcb3bf4a](https://github.com/silverstripe/developer-docs/commit/bcb3bf4ac4bbd02b95262304fda490492a439c60) Add changelog note about SQLUpdate supporting JOIN (#481) (Guy Sartorelli) - - 2024-03-17 [3b7f9e05](https://github.com/silverstripe/developer-docs/commit/3b7f9e0533373f0530249484e605582fec9e89b9) Add elemental block validation to 5.3.0 changelog (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-beta1) - - 2024-07-03 [ae80302](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/ae8030211ee0ce99e622ffeee23225ec029e710a) Correct spacing in YML example for nested gridfield (#408) (Maxime Rainville) - - 2024-05-27 [7f4413a](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/7f4413a12ff8ffe9006e5be69dfdc4989e4a4b73) Updated Nested GridField docs (Sabina Talipova) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2024-04-02 [07328cf](https://github.com/tractorcow-farm/silverstripe-fluent/commit/07328cf9f0dde51107916a4b4a3b5b922c4b48c5) Updated documentation for new DataObject initialisation task (Nathan J. Brauer) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-beta1) - - 2024-04-10 [0d81597](https://github.com/silverstripe/silverstripe-linkfield/commit/0d8159783af6940cdd429d8858a053ae5f8024d4) Linting (Steve Boyd) - - 2024-04-03 [69c6099](https://github.com/silverstripe/silverstripe-linkfield/commit/69c6099e6ffdb70a21325a20c5d5ec2e152bd08b) Enable deprecations for linkfield v3 (Steve Boyd) - -### Translations {#changelog-translations} - -- silverstripe/assets (2.2.0 -> 2.3.0-beta1) - - 2024-08-06 [b363901](https://github.com/silverstripe/silverstripe-assets/commit/b36390172c43beb4f46d7ba45dedba21d66f4784) Update translations (#626) (Guy Sartorelli) - - 2024-05-07 [82e5f58](https://github.com/silverstripe/silverstripe-assets/commit/82e5f58f842a9632eece44217fbc4a25541b6ed5) Update translations (#601) (Guy Sartorelli) - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-08-06 [a8d0d1ef5](https://github.com/silverstripe/silverstripe-framework/commit/a8d0d1ef587023f8dd8ea7fca4c7cc2ca760ab5d) Update translations (#11323) (Guy Sartorelli) - - 2024-05-07 [241d03b35](https://github.com/silverstripe/silverstripe-framework/commit/241d03b3527d341a8454eab86860f639017ff8ea) Update translations (#11224) (Guy Sartorelli) - - 2024-05-06 [e468b719c](https://github.com/silverstripe/silverstripe-framework/commit/e468b719cfcd6ac92c5c25d1f0b6cbf25f854495) Update translations (#11221) (Guy Sartorelli) - -- silverstripe/admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-06 [b3eeb088](https://github.com/silverstripe/silverstripe-admin/commit/b3eeb088a83f32564d80d3ccecdf716fba0a95f5) Update translations (#1807) (Guy Sartorelli) - - 2024-05-07 [66a937af](https://github.com/silverstripe/silverstripe-admin/commit/66a937afe0de80bc029efe4d9c02371cb81d6ecd) Update translations (#1740) (Guy Sartorelli) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-06 [f61698d9](https://github.com/silverstripe/silverstripe-asset-admin/commit/f61698d96eabf000356da92aa0c2a43e7110b724) Update translations (#1480) (Guy Sartorelli) - - 2024-05-07 [56e98869](https://github.com/silverstripe/silverstripe-asset-admin/commit/56e98869f0c76bdffa1e4b8f63fcc88bd2ec7cf6) Update translations (#1456) (Guy Sartorelli) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0-beta1) - - 2024-08-06 [f59bcba](https://github.com/silverstripe/silverstripe-campaign-admin/commit/f59bcba1359e7fac2ac93df7cc33aa6b2f98fc74) Update translations (#319) (Guy Sartorelli) - - 2024-05-07 [611ffaf](https://github.com/silverstripe/silverstripe-campaign-admin/commit/611ffafecde24830d7182ce434944af57212e396) Update translations (#303) (Guy Sartorelli) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-beta1) - - 2024-05-07 [17aa581](https://github.com/silverstripe/silverstripe-versioned-admin/commit/17aa581182b6d2b5f8a3ff94dafb54150392be60) Update translations (#337) (Guy Sartorelli) - -- silverstripe/cms (5.2.0 -> 5.3.0-beta1) - - 2024-08-06 [003df23c](https://github.com/silverstripe/silverstripe-cms/commit/003df23cb780550430df88b804d9cb64b8cb9912) Update translations (#2982) (Guy Sartorelli) - - 2024-05-07 [5e1706e6](https://github.com/silverstripe/silverstripe-cms/commit/5e1706e64471509ed36f1428c5f9a024ac25762b) Update translations (#2937) (Guy Sartorelli) - -- silverstripe/errorpage (2.2.0 -> 2.3.0-beta1) - - 2024-08-06 [859e696](https://github.com/silverstripe/silverstripe-errorpage/commit/859e6967a99b4e2811079786eaa214a0bc888c27) Update translations (#116) (Guy Sartorelli) - - 2024-05-07 [e22c8bc](https://github.com/silverstripe/silverstripe-errorpage/commit/e22c8bc095d591875858073c29bfb81e03902438) Update translations (#104) (Guy Sartorelli) - -- silverstripe/reports (5.2.0 -> 5.3.0-beta1) - - 2024-05-07 [3e7e8e91](https://github.com/silverstripe/silverstripe-reports/commit/3e7e8e91c1155b35028d7567060d2c157369bb2f) Update translations (#179) (Guy Sartorelli) - -- silverstripe/siteconfig (5.2.0 -> 5.3.0-beta1) - - 2024-08-06 [7d95ee06](https://github.com/silverstripe/silverstripe-siteconfig/commit/7d95ee0628f228c8552ef5a71150a17615e3fd01) Update translations (#172) (Guy Sartorelli) - - 2024-05-07 [cbf0bbc1](https://github.com/silverstripe/silverstripe-siteconfig/commit/cbf0bbc10fc1161c6e9822901f362324ec8e6d58) Update translations (#159) (Guy Sartorelli) - -- silverstripe/versioned (2.2.0 -> 2.3.0-beta1) - - 2024-08-06 [5bb8eb0](https://github.com/silverstripe/silverstripe-versioned/commit/5bb8eb0a93493016b16d623bff60909c82c2ff7e) Update translations (#459) (Guy Sartorelli) - - 2024-05-07 [22c72a4](https://github.com/silverstripe/silverstripe-versioned/commit/22c72a4bd9b8c17418b18f9dfb0cbf5c523d3cda) Update translations (#442) (Guy Sartorelli) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-beta1) - - 2024-05-07 [6dc6d14](https://github.com/silverstripe/silverstripe-session-manager/commit/6dc6d1426ebee83044b3032fa97d92341c18a370) Update translations (#192) (Guy Sartorelli) - -- silverstripe/login-forms (5.2.0 -> 5.3.0-beta1) - - 2024-08-06 [9e8654f](https://github.com/silverstripe/silverstripe-login-forms/commit/9e8654f3f82d73520ce953aa8209f226b2e1a31f) Update translations (#195) (Guy Sartorelli) - - 2024-05-07 [7d5c403](https://github.com/silverstripe/silverstripe-login-forms/commit/7d5c40303bcbc88a2f06c0af7810c4fc33ff7c5c) Update translations (#174) (Guy Sartorelli) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0-beta1) - - 2024-05-07 [e33c5f1](https://github.com/silverstripe/silverstripe-documentconverter/commit/e33c5f13eb1982f2344fec03b675e78675ef2d43) Update translations (#76) (Guy Sartorelli) - -- silverstripe/iframe (3.2.0 -> 3.2.1) - - 2024-05-07 [3f8f6ca](https://github.com/silverstripe/silverstripe-iframe/commit/3f8f6caac579a7114908a2665c9b11074d8c43b5) Update translations (#83) (Guy Sartorelli) - -- silverstripe/taxonomy (3.2.0 -> 3.2.2) - - 2024-05-07 [71b0294](https://github.com/silverstripe/silverstripe-taxonomy/commit/71b02946104b0e3a8e9b2488797f3ee3ff51a9ca) Update translations (#109) (Guy Sartorelli) - -- silverstripe/blog (4.2.0 -> 4.3.0-beta1) - - 2024-08-06 [d77d90b](https://github.com/silverstripe/silverstripe-blog/commit/d77d90bf1322640a50506fc6649d3af0270ea194) Update translations (#774) (Guy Sartorelli) - - 2024-05-07 [799cc44](https://github.com/silverstripe/silverstripe-blog/commit/799cc44b462dfea91f544a7717e6976993c44b4a) Update translations (#754) (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-beta1) - - 2024-08-05 [dd8a557](https://github.com/colymba/GridFieldBulkEditingTools/commit/dd8a557c85e9ca5f422c72f32f92d0a5687ac572) Update translations (#300) (Guy Sartorelli) - - 2024-05-07 [dfd07f7](https://github.com/colymba/GridFieldBulkEditingTools/commit/dfd07f78f66f0bc2de2fc3e8e762a488c1dad860) Update translations (#280) (Guy Sartorelli) - - 2024-02-29 [1e4b319](https://github.com/colymba/GridFieldBulkEditingTools/commit/1e4b319110ec5b6e1600f7fb39ff8dd449f7ce5c) `Allow to translate column name Select` (Peter Schiffer) - - 2023-11-07 [fab0f95](https://github.com/colymba/GridFieldBulkEditingTools/commit/fab0f953bfacf5df7cfe0b2735e975b642f535ad) Update translations (Steve Boyd) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-beta1) - - 2024-05-07 [d5a6198](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/d5a6198d8e62b85b0b1a7966090e43e5b60be7b7) Update translations (#231) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0-beta1) - - 2024-08-06 [90314a3](https://github.com/symbiote/silverstripe-advancedworkflow/commit/90314a3d1435552e9b809f60b6564d55e5269083) Update translations (#544) (Guy Sartorelli) - - 2024-05-07 [3310709](https://github.com/symbiote/silverstripe-advancedworkflow/commit/3310709ca25c2902f937cdbf40df868f43a9d3ac) Update translations (#527) (Guy Sartorelli) - -- silverstripe/userforms (6.2.0 -> 6.3.0-beta1) - - 2024-08-06 [da53d26](https://github.com/silverstripe/silverstripe-userforms/commit/da53d26b54d1ee7852e7098686bb9d4bdd7c4a02) Update translations (#1313) (Guy Sartorelli) - - 2024-05-07 [83fafdf](https://github.com/silverstripe/silverstripe-userforms/commit/83fafdf53d214e153a1057e1feeab6eaac1cbf44) Update translations (#1284) (Guy Sartorelli) - -- silverstripe/externallinks (3.2.0 -> 3.3.0-beta1) - - 2024-08-06 [3e6198f](https://github.com/silverstripe/silverstripe-externallinks/commit/3e6198f8df418fd9bc1f815cc8036790ebc9a1fe) Update translations (#139) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0-beta1) - - 2024-08-06 [4306da1](https://github.com/bringyourownideas/silverstripe-maintenance/commit/4306da1dbb57706e6115bf2416e347355256b326) Update translations (#235) (Guy Sartorelli) - - 2024-08-05 [26303eb](https://github.com/bringyourownideas/silverstripe-maintenance/commit/26303ebdad56cb34a79cc20d4a1439fca2443963) Update translations (#233) (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (4.1.0 -> 4.1.2) - - 2024-05-07 [8f4969b](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/8f4969bdea563c1d1b3484f80c19fbd7a83087e5) Update translations (#83) (Guy Sartorelli) - -- silverstripe/versionfeed (3.2.0 -> 3.2.3) - - 2024-05-07 [fe86df7](https://github.com/silverstripe/silverstripe-versionfeed/commit/fe86df7b6f8743b8a0e10373002fe404ddcb489c) Update translations (#105) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-beta1) - - 2024-08-06 [ddf8565](https://github.com/silverstripe/silverstripe-elemental/commit/ddf8565e40f1b2f2b371a96512052dfab795c5b8) Update translations (#1230) (Guy Sartorelli) - - 2024-05-07 [0093776](https://github.com/silverstripe/silverstripe-elemental/commit/0093776d88a082a12dd2d1743c49b1f7ffb50501) Update translations (#1185) (Guy Sartorelli) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0-beta1) - - 2024-05-07 [363f83f](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/363f83fc0da9d4f8f7f88f4f71f52d6967f29bfd) Update translations (#142) (Guy Sartorelli) - -- silverstripe/hybridsessions (3.0.3 -> 3.0.5) - - 2024-05-07 [534478e](https://github.com/silverstripe/silverstripe-hybridsessions/commit/534478ef06743b18f9f5cb6d2d8c3138bae9a0a6) Update translations (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.2.0 -> 5.3.0-beta1) - - 2024-05-07 [385e0d9](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/385e0d992552098c3f29e9db68605f10e8eda169) Update translations (#154) (Guy Sartorelli) - -- silverstripe/mfa (5.2.0 -> 5.3.0-beta1) - - 2024-08-06 [9f34765](https://github.com/silverstripe/silverstripe-mfa/commit/9f34765916679acd30827f048be461fa5b6ce197) Update translations (#557) (Guy Sartorelli) - - 2024-05-07 [384a78b](https://github.com/silverstripe/silverstripe-mfa/commit/384a78b042c5c6af1e8c0580a0ebfa85c2934eff) Update translations (#537) (Guy Sartorelli) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-05-07 [40aeb78](https://github.com/silverstripe/silverstripe-ldap/commit/40aeb78fbfe4b6f109ca3333aa9539d919833aaf) Update translations (#73) (Guy Sartorelli) - -- silverstripe/realme (5.3.0 -> 5.4.0-beta1) - - 2024-05-07 [5c09680](https://github.com/silverstripe/silverstripe-realme/commit/5c0968012d13344235860a42b0dabd8f183a0875) Update translations (#138) (Guy Sartorelli) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0-beta1) - - 2024-05-07 [bf6c6eb](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/bf6c6eb5e5c1eb0cd6fc8f7f2993d8deddbd228a) Update translations (#177) (Guy Sartorelli) - -- silverstripe/subsites (3.2.0 -> 3.3.0-beta1) - - 2024-08-06 [f78ad58](https://github.com/silverstripe/silverstripe-subsites/commit/f78ad5838d8a85aa7516d0170876b4eeab87a175) Update translations (#588) (Guy Sartorelli) - - 2024-05-07 [dbbfded](https://github.com/silverstripe/silverstripe-subsites/commit/dbbfded3e8097d4ac55202cf6a311899350b7a3c) Update translations (#568) (Guy Sartorelli) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-beta1) - - 2024-08-06 [f6a0e10](https://github.com/silverstripe/silverstripe-lumberjack/commit/f6a0e108f924491ea6d5cce41d18d1dcaaad40ca) Update translations (#165) (Guy Sartorelli) - - 2024-05-07 [8970ea9](https://github.com/silverstripe/silverstripe-lumberjack/commit/8970ea9ac8bfcf038ab84f34d999a9d5b0e38753) Update translations (#145) (Guy Sartorelli) - -- cwp/agency-extensions (3.2.0 -> 3.3.0-beta1) - - 2024-05-07 [c4efc2f](https://github.com/silverstripe/cwp-agencyextensions/commit/c4efc2f82674a9c8da90502e9372ab6eef43b0bd) Update translations (#117) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-beta1) - - 2024-08-06 [54b5fc1](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/54b5fc148369cfbff815d9e5d84c3df952951328) Update translations (#412) (Guy Sartorelli) - - 2024-05-07 [1bd74e0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1bd74e0070f50f5d0d14802097e7d284b895be2e) Update translations (#387) (Guy Sartorelli) - - 2024-05-06 [256d06b](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/256d06b36cd1efba3ca3cad91421d771ebb75b82) Update translations (#385) (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0-beta1) - - 2024-08-06 [9f6dea6](https://github.com/symbiote/silverstripe-queuedjobs/commit/9f6dea66ad248a35d404307cd98c144ec8c36e62) Update translations (#441) (Guy Sartorelli) - - 2024-08-05 [aed2991](https://github.com/symbiote/silverstripe-queuedjobs/commit/aed2991e17d5b96e2dfd62119f73d33b95e65d1e) Update translations (#439) (Guy Sartorelli) - - 2024-05-07 [374d41c](https://github.com/symbiote/silverstripe-queuedjobs/commit/374d41cd303b3834668ac730500799e91fb74e4d) Update translations (#424) (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2024-08-06 [41015aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/41015aac1e318378c8074ae5ec01494cb839d89f) Update translations (#870) (Guy Sartorelli) - - 2024-05-07 [5d66753](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5d667539b7a85ce38c1712e59fbf2daede6e5029) Update translations (Guy Sartorelli) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-beta1) - - 2024-08-06 [77a1497](https://github.com/silverstripe/silverstripe-linkfield/commit/77a1497ec7033c5abc19ea96d460e975419e1902) Update translations (#314) (Guy Sartorelli) - - 2024-05-07 [a55f48f](https://github.com/silverstripe/silverstripe-linkfield/commit/a55f48f9616ba7c45cb979345ef609fa89deb06a) Update translations (#283) (Guy Sartorelli) - -### Other changes {#changelog-other-changes} - -- silverstripe/framework (5.2.0 -> 5.3.0-beta1) - - 2024-06-22 [90eac66ea](https://github.com/silverstripe/silverstripe-framework/commit/90eac66ea83682302224a207ec96bb01385e625c) Update sake (Giancarlo Di Massa) - - 2024-05-30 [9546450cf](https://github.com/silverstripe/silverstripe-framework/commit/9546450cf242574efa8f5817a80ed040b3ade27d) improve DataList and ArrayList docblock comments for PHPStorm (#11263) (Mason Dechaineux) - - 2024-03-19 [25f61141c](https://github.com/silverstripe/silverstripe-framework/commit/25f61141cb1d907ee6f318c3ee454da809dd9423) Enhancements required for linkfield migration (#11171) (Guy Sartorelli) - - 2024-01-30 [90a3d60b5](https://github.com/silverstripe/silverstripe-framework/commit/90a3d60b59758de66056df4ec5630e02aa28bf62) Update DropdownField.php (Antony Thorpe) - -- silverstripe/admin (2.2.0 -> 2.3.0-beta1) - - 2024-03-08 [cdcf2506](https://github.com/silverstripe/silverstripe-admin/commit/cdcf25063b68220bb62b92ade99d61a92c49c11d) Abstract out GridField 'open link in new tab' logic (Loz Calver) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-beta1) - - 2024-05-15 [a42cd43](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/a42cd4378042a0b8ea416a079f20b3f57470e15b) Only allow one GridFieldNestedForm component per GridField. (Niklas Forsdahl) - - 2024-05-15 [c476ced](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c476cedff0b5e721285c3784a0714a1f913b53c9) Added more documentation for nested gridfields. (Niklas Forsdahl) - - 2024-05-07 [a9b0a70](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/a9b0a70155eb46fd659893fa6f42cdf28aad5bf7) Throw 404 error on grid field nested form move-to-parent action, (Niklas Forsdahl) - - 2024-05-07 [8f50565](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/8f505659f06e65bf6881d050c6cdb022f5f539b6) Only add nested form to nested gridfield child if that child is of (Niklas Forsdahl) - - 2024-05-07 [9ab3ed6](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/9ab3ed67a75c0060e9303abd9822a9751bf6afe4) Throw an exception in Nesed Gridfield if an invalid relation is configured. (Niklas Forsdahl) - - 2024-05-07 [1993acb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1993acba3a1bf94e4e4440362620fb16e6e172f5) Linting and typehinting fixes for nested grid field (Niklas Forsdahl) - - 2024-04-24 [1ad6acb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1ad6acbb84f235e29fc364e28fe2ee332a590eb9) Refactored grid field nested form link to be a button with aria-attributes, (Niklas Forsdahl) - - 2024-04-24 [46e5ccc](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/46e5cccdb47be6d4a9e8fa85585768dfab066184) Changed some PHPDoc return types to real typehings in nested gridfield. (Niklas Forsdahl) - - 2024-04-24 [bc1180b](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/bc1180b62cd32284c25db9061656615acf0c6367) Throw exception in nested gridfields if the relation is invalid. (Niklas Forsdahl) - - 2024-04-24 [5e60972](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/5e6097214e1140d9899af0ae1247363a4171e39a) Added phpdoc for nested grid field item request handler class. (Niklas Forsdahl) - - 2024-04-24 [70b838e](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/70b838ea8c4ffb54528b3342397b003331445fe0) Removed legacy disabling of security token and strict form method check (Niklas Forsdahl) - - 2024-04-24 [c517c69](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c517c693f9b4ed1a98df27ace83ed53eb34d8c51) Don't assume records are DataObjects in nested gridfields. (Niklas Forsdahl) - - 2024-04-24 [f7b8aea](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/f7b8aea3f8dc3de09b282fb6927dcdb45209a508) PHPDoc additions and linting fixes for gridfield nested form (Niklas Forsdahl) - - 2024-04-24 [847ce07](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/847ce07ab0273732ca8cfa50aede8ad8213c1ee5) Fixes and some refactoring for max nesting level handling in (Niklas Forsdahl) - - 2024-04-23 [cfcf8d2](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/cfcf8d2e8e9ec2b669fabff2eb3d3119b4237a9d) Refactored nested GridField move to parent functionality. (Niklas Forsdahl) - - 2024-04-23 [32d980e](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/32d980e13c35128703b1a70c86d5a635a5aa30e3) Fixed moving nested gridfield items to other gridfields (Niklas Forsdahl) - - 2024-04-18 [fc40420](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/fc40420daaa460ce3dc27a819c0085d5c7859430) Added configurable max nesting level for nested GridFields (Niklas Forsdahl) - - 2024-04-18 [4fc20fb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/4fc20fb771fc9914fc91d10786887df7ef089e94) Added one more unit test for GridFieldNestedForm (Niklas Forsdahl) - - 2024-04-18 [f8c777d](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/f8c777dcc5d93e4b44ae249476dd92dea6b923e7) Changed naming schema for nested GridFields, to not include [ or ] (Niklas Forsdahl) - - 2024-04-18 [c415d43](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c415d43731a8ef3d5e58106b88bfe13a323a9795) Fixed linting issues (Niklas Forsdahl) - - 2024-04-18 [c043220](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c043220949b2fc8bb97eb8189843e6515b344f8a) Changed base-class of GridFieldNestedForm, it doesn't share much with (Niklas Forsdahl) - - 2024-04-18 [654b729](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/654b7294fa565f983ebd12198bb8e9b2999bd30a) Renamed GridFieldNestedForm_ItemRequest, to conform with coding styles. (Niklas Forsdahl) - - 2024-04-15 [bcc4ea1](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/bcc4ea14bbf49088d708987451fa9800bc2eb3bf) Added initial user documentation for Nested GridFields. (Niklas Forsdahl) - - 2024-04-15 [19a7cff](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/19a7cffa88f31e1877d240ecb6e1634dc31cdeff) Added initial unit test for GridFieldNestedForm (Niklas Forsdahl) - - 2024-04-15 [27dc636](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/27dc6360ae2bd1eeb6ca3ed89ce538dfb22eaf18) Styling for nested GridFields without title. (Niklas Forsdahl) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0-beta1) - - 2024-04-24 [d90ebc1](https://github.com/symbiote/silverstripe-queuedjobs/commit/d90ebc1a06e46006113ee92d566a5f91e3202a3e) Replace assignment with intended comparison (Fred Condo) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-beta1) - - 2024-06-06 [b14687a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b14687a9d09eb8ad8ef54c722e87895e4d256939) . (Steve Boyd) - - 2024-04-08 [07f2821](https://github.com/tractorcow-farm/silverstripe-fluent/commit/07f282123297068d40e7ce764a280e295a6f76a1) PR feedback. (Mojmir Fendek) - - 2024-02-09 [2a8e81e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a8e81ef37f33d3e04c5fa35ac0020ecdfbb6a62) Adds full namespace to string literal (David Toews) - - 2023-11-14 [9ab08d1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9ab08d10516aa0d5350ff9727992ddccd8d90922) `copy Bugfix from here https://github.com/tractorcow-farm/silverstripe-fluent/pull/793 to Version 6.0` (“mlindenhofer”) - - 2023-09-01 [904e3f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/904e3f450d4b21e5a8b9bf5ce652290556027985) chore: fix linting (Damian Mooyman) - - 2023-08-31 [9d04d7a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9d04d7a2fbbb087d1f36fe955d15abf062fe9b42) feat: add absolute base url for locale (Damian Mooyman) - - 2023-06-16 [43b4214](https://github.com/tractorcow-farm/silverstripe-fluent/commit/43b4214b1c1b16faf4c5d1a89155af27649654e3) Add onAfterDuplicate to FluentVersionedExtension (Remy Vaartjes) - - 2023-06-16 [336dca2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/336dca26d2cf0bb040cc028b005ba0c369fc21ce) Implement onAfterDuplicate (Remy Vaartjes) - - 2023-05-31 [034dd15](https://github.com/tractorcow-farm/silverstripe-fluent/commit/034dd15197ada07594436d4d337246eeda734a36) Update FluentExtension.php (mikey-harveycameron) - - diff --git a/en/08_Changelogs/index.md b/en/08_Changelogs/index.md index 401867e12..402f38eb8 100644 --- a/en/08_Changelogs/index.md +++ b/en/08_Changelogs/index.md @@ -13,7 +13,7 @@ We also keep an overview of [security-related releases](http://silverstripe.org/ For information on how to upgrade to newer versions consult the [upgrading](/upgrading) guide. -As of Silverstripe CMS 4, these changelogs track **recipe** versions (`silverstripe/installer`, `silverstripe/recipe-core`, and `silverstripe/recipe-cms`), rather than versions of individual modules like `framework` or `cms`, which can vary from the recipe version and from each other. We recommend referencing recipes in your Composer dependencies, rather than individual modules. See [Recipes](/getting_started/recipes) for more information. +These changelogs track **recipe** versions (`silverstripe/installer`, `silverstripe/recipe-core`, and `silverstripe/recipe-cms`), rather than versions of individual modules like `framework` or `cms`, which can vary from the recipe version and from each other. We recommend referencing recipes in your Composer dependencies, rather than individual modules. See [Recipes](/getting_started/recipes) for more information. ___ diff --git a/en/08_Changelogs/rc/5.0.0-rc1.md b/en/08_Changelogs/rc/5.0.0-rc1.md deleted file mode 100644 index 81fb5b9d2..000000000 --- a/en/08_Changelogs/rc/5.0.0-rc1.md +++ /dev/null @@ -1,2877 +0,0 @@ ---- -title: 5.0.0-rc1 ---- - -# 5.0.0-rc1 - -## Post CMS 5 RC freeze - -Once the initial CMS 5.0 RC is released, API changes will no longer be accepted and will have to be targeted to CMS 5.1. - -Bug fixes may be accepted if they can be solved without changing APIs. - -## Overview - -- [Change to commercially supported modules](#supported-modules) - - [Modules with upgrade guides](#modules-with-upgrade-guides) - - [Modules not supported going forward](#modules-not-supported-going-forward) -- [Fixed dependencies](#fixed-dependencies) -- [Dependency changes](#dependency-changes) - - [General changes](#dep-general) - - [TinyMCE upgraded from 4 to 6](#tinymce6) -- [Front-end build stack upgrades](#front-end) - - [Webpack config](#webpack-config) - - [Updated JavaScript dependencies](#updated-javascript-dependencies) - - [Common upgrade patterns](#common-upgrade-patterns) - - [Breaking changes in *our* JavaScript components or API](#js-api) -- [Other Breaking Changes](#other-breaking-changes) - - [URLs generated by Silverstripe CMS don't include a trailing slash by default](#trailing-slash) - - [CWP Agency Extensions](#cwp-agency-extensions) - - [silverstripe/security-extensions module is folded into core](#security-extensions-is-core) -- [Features and enhancements](#features-and-enhancements) - - [Extension changes](#extension-changes) - - [Other new features](#other-features) -- [Bugfixes](#bugfixes) -- [API changes](#api-changes) - - [General changes](#api-general) - - [Email](#api-email) - - [ORM](#api-orm) - - [Dynamic properties](#dynamic-properties) - - [Templates](#templates) - - [Removed and changed API (by module, alphabetically)](#api-removed-and-changed) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.0.0-rc1 | -| bringyourownideas/silverstripe-maintenance | 3.0.0-rc1 | -| colymba/gridfield-bulk-editing-tools | 4.0.0-beta1 | -| cwp/agency-extensions | 3.0.0-rc1 | -| cwp/cwp | 3.0.0-rc1 | -| cwp/cwp-core | 3.0.0-rc1 | -| cwp/cwp-search | 2.0.0-rc1 | -| cwp/starter-theme | 4.0.0-rc1 | -| cwp/watea-theme | 4.0.0-rc1 | -| dnadesign/silverstripe-elemental | 5.0.0-rc1 | -| dnadesign/silverstripe-elemental-userforms | 4.0.0-rc1 | -| silverstripe/admin | 2.0.0-rc1 | -| silverstripe/asset-admin | 2.0.0-rc1 | -| silverstripe/assets | 2.0.0-rc1 | -| silverstripe/auditor | 3.0.0-rc1 | -| silverstripe/blog | 4.0.0-rc1 | -| silverstripe/campaign-admin | 2.0.0-rc1 | -| silverstripe/ckan-registry | 2.0.0-rc1 | -| silverstripe/cms | 5.0.0-rc1 | -| silverstripe/comment-notifications | 3.0.0-rc1 | -| silverstripe/comments | 4.0.0-rc1 | -| silverstripe/config | 2.0.0-rc1 | -| silverstripe/content-widget | 3.0.0-rc1 | -| silverstripe/contentreview | 5.0.0-rc1 | -| silverstripe/crontask | 3.0.0-rc1 | -| silverstripe/developer-docs | 5.0.0-rc1 | -| silverstripe/documentconverter | 3.0.0-rc1 | -| silverstripe/dynamodb | 5.0.0-rc1 | -| silverstripe/elemental-bannerblock | 3.0.0-rc1 | -| silverstripe/elemental-fileblock | 3.0.0-rc1 | -| silverstripe/environmentcheck | 3.0.0-rc1 | -| silverstripe/errorpage | 2.0.0-rc1 | -| silverstripe/externallinks | 3.0.0-rc1 | -| silverstripe/framework | 5.0.0-rc1 | -| silverstripe/fulltextsearch | 4.0.0-rc1 | -| silverstripe/graphql | 5.0.0-rc1 | -| silverstripe/gridfieldqueuedexport | 3.0.0-rc1 | -| silverstripe/hybridsessions | 3.0.0-rc1 | -| silverstripe/iframe | 3.0.0-rc1 | -| silverstripe/installer | 5.0.0-rc1 | -| silverstripe/ldap | 2.0.0-rc1 | -| silverstripe/login-forms | 5.0.0-rc1 | -| silverstripe/lumberjack | 3.0.0-rc1 | -| silverstripe/mfa | 5.0.0-rc1 | -| silverstripe/mimevalidator | 3.0.0-rc1 | -| silverstripe/realme | 5.0.0-rc1 | -| silverstripe/recipe-authoring-tools | 2.0.0-rc1 | -| silverstripe/recipe-blog | 2.0.0-rc1 | -| silverstripe/recipe-ccl | 3.0.0-rc1 | -| silverstripe/recipe-cms | 5.0.0-rc1 | -| silverstripe/recipe-collaboration | 2.0.0-rc1 | -| silverstripe/recipe-content-blocks | 3.0.0-rc1 | -| silverstripe/recipe-core | 5.0.0-rc1 | -| silverstripe/recipe-form-building | 2.0.0-rc1 | -| silverstripe/recipe-kitchen-sink | 5.0.0-rc1 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.0.0-rc1 | -| silverstripe/recipe-services | 2.0.0-rc1 | -| silverstripe/recipe-solr-search | 3.0.0-rc1 | -| silverstripe/registry | 3.0.0-rc1 | -| silverstripe/reports | 5.0.0-rc1 | -| silverstripe/restfulserver | 3.0.0-rc1 | -| silverstripe/securityreport | 3.0.0-rc1 | -| silverstripe/segment-field | 3.0.0-rc1 | -| silverstripe/session-manager | 2.0.0-rc1 | -| silverstripe/sharedraftcontent | 3.0.0-rc1 | -| silverstripe/siteconfig | 5.0.0-rc1 | -| silverstripe/sitewidecontent-report | 4.0.0-rc1 | -| silverstripe/spamprotection | 4.0.0-rc1 | -| silverstripe/staticpublishqueue | 6.0.0-rc1 | -| silverstripe/subsites | 3.0.0-rc1 | -| silverstripe/tagfield | 3.0.0-rc1 | -| silverstripe/taxonomy | 3.0.0-rc1 | -| silverstripe/textextraction | 4.0.0-rc1 | -| silverstripe/totp-authenticator | 5.0.0-rc1 | -| silverstripe/userforms | 6.0.0-rc1 | -| silverstripe/vendor-plugin | 2.0.0 | -| silverstripe/versioned | 2.0.0-rc1 | -| silverstripe/versioned-admin | 2.0.0-rc1 | -| silverstripe/versionfeed | 3.0.0-rc1 | -| silverstripe/webauthn-authenticator | 5.0.0-rc1 | -| silverstripe/widgets | 3.0.0-rc1 | -| symbiote/silverstripe-advancedworkflow | 6.0.0-rc1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.0-rc1 | -| symbiote/silverstripe-multivaluefield | 6.0.0-rc1 | -| symbiote/silverstripe-queuedjobs | 5.0.0-rc1 | -| tractorcow/silverstripe-fluent | 7.0.0-beta1 | - -
- -## Change to supported modules {#supported-modules} - -Some Silverstripe CMS modules are commercially supported. Silverstripe commits to looking after those modules for the duration of the Silverstripe CMS 5 lifecycle. - -Review the list of [Commercially Supported Modules for Silverstripe CMS 5](/project_governance/supported_modules). - -### Modules with upgrade guides - -`silverstripe/graphql` and `tractorcow/silverstripe-fluent` each have multiple major release lines which are compatible with Silverstripe CMS 4. If you use either of these modules, you should upgrade to the latest CMS 4 compatible version *before* upgrading to CMS 5. - -- [Upgrade guide for `silverstripe/graphql`](https://docs.silverstripe.org/en/4/upgrading/upgrading_to_graphql_4) -- [Upgrade guide for `tractorcow/silverstripe-fluent`](https://docs.silverstripe.org/en/4/upgrading/upgrading_fluent) - -### Modules not supported going forward - -Some modules that were commercially supported in Silverstripe CMS 4 will not be supported in Silverstripe CMS 5. Some of those modules will provide CMS5-compatible versions. Others will be dropped altogether. - -Just because a module is not "commercially supported", doesn't mean that you shouldn't be using it. Community supported modules are maintained on a "best-effort" basis. You should take this into consideration when choosing to install a community supported module in your project. - -Email [community@silverstripe.org](mailto:community@silverstripe.org) if you are keen to help maintain some of the modules that will no longer be commercially supported. - -Module | Status | Notes --- | -- | -- -[bringyourownideas/silverstripe-composer-security-checker](https://packagist.org/packages/bringyourownideas/silverstripe-composer-security-checker) | Dropped | Underlying service has been discontinued. -[composer/installers](https://packagist.org/packages/composer/installers) | Removed | Calling Composer a "supported module" was nonsensical. The Silverstripe CMS development team has no access to manage Composer or the underlying Packagist service. Composer is a development tool required to build Silverstripe CMS sites, not a module maintained by Silverstripe. | -[cwp-themes/default](https://packagist.org/packages/cwp-themes/default) | Dropped | -[cwp/cwp](https://packagist.org/packages/cwp/cwp) | CMS5 compatible without commercial support | -[cwp/cwp-core](https://packagist.org/packages/cwp/cwp-core) | CMS5 compatible without commercial support | -[cwp/cwp-pdfexport](https://packagist.org/packages/cwp/cwp-pdfexport) | Dropped | -[cwp/cwp-search](https://packagist.org/packages/cwp/cwp-search) | CMS5 compatible without commercial support | -[dnadesign/silverstripe-elemental-subsites](https://packagist.org/packages/dnadesign/silverstripe-elemental-subsites) | Dropped | Elemental works fine with Subsite out-of-the-box. -[hafriedlander/phockito](https://packagist.org/packages/hafriedlander/phockito) | Dropped | -[hafriedlander/silverstripe-phockito](https://packagist.org/packages/hafriedlander/silverstripe-phockito) | Dropped | -[lekoala/silverstripe-debugbar](https://packagist.org/packages/lekoala/silverstripe-debugbar) | CMS5 compatible without commercial support | Debug bar is a development tool that should not be installed in production. -[silverstripe/activedirectory](https://packagist.org/packages/silverstripe/activedirectory) | Dropped | -[silverstripe/akismet](https://packagist.org/packages/silverstripe/akismet) | Dropped | The parent library is outdated and there are better alternatives like [UndefinedOffset/silverstripe-nocaptcha](https://packagist.org/packages/undefinedoffset/silverstripe-nocaptcha) -[silverstripe/behat-extension](https://packagist.org/packages/silverstripe/behat-extension) | CMS5 compatible without commercial support | -[silverstripe/ckan-registry](https://packagist.org/packages/silverstripe/ckan-registry) | CMS5 compatible without commercial support | -[silverstripe/comment-notifications](https://packagist.org/packages/silverstripe/comment-notifications) | CMS5 compatible without commercial support | -[silverstripe/comments](https://packagist.org/packages/silverstripe/comments) | CMS5 compatible without commercial support | -[silverstripe/content-widget](https://packagist.org/packages/silverstripe/content-widget) | CMS5 compatible without commercial support | -[silverstripe/fulltextsearch](https://packagist.org/packages/silverstripe/fulltextsearch) | CMS5 compatible without commercial support | -[silverstripe/graphql-devtools](https://packagist.org/packages/silverstripe/graphql-devtools) | CMS5 compatible without commercial support | -[silverstripe/html5](https://packagist.org/packages/silverstripe/html5) | Folded back in core | -[silverstripe/postgresql](https://packagist.org/packages/silverstripe/postgresql) | CMS5 compatible without commercial support | -[silverstripe/recipe-ccl](https://packagist.org/packages/silverstripe/recipe-ccl) | CMS5 compatible without commercial support | -[silverstripe/recipe-solr-search](https://packagist.org/packages/silverstripe/recipe-solr-search) | CMS5 compatible without commercial support | -[silverstripe/security-extensions](https://packagist.org/packages/silverstripe/security-extensions) | Folded back in core | -[silverstripe/spellcheck](https://packagist.org/packages/silverstripe/spellcheck) | Dropped | -[silverstripe/sqlite3](https://packagist.org/packages/silverstripe/sqlite3) | CMS5 compatible without commercial support | -[silverstripe/widgets](https://packagist.org/packages/silverstripe/widgets) | CMS5 compatible without commercial support | -[tijsverkoyen/akismet](https://packagist.org/packages/tijsverkoyen/akismet) | Dropped | -[tractorcow/classproxy](https://packagist.org/packages/tractorcow/classproxy) | CMS5 compatible without commercial support | -[tractorcow/silverstripe-proxy-db](https://packagist.org/packages/tractorcow/silverstripe-proxy-db) | CMS5 compatible without commercial support | -[undefinedoffset/sortablegridfield](https://packagist.org/packages/undefinedoffset/sortablegridfield) | Dropped | [symbiote/silverstripe-gridfieldextensions](https://packagist.org/packages/symbiote/silverstripe-gridfieldextensions) provides equivalent functionality. - -## Fixed dependencies - -Silverstripe CMS relies on third party dependencies to implement many features. We have defined several *fixed dependencies* to provide certainty to Silverstripe CMS project owners and minimise the risk of composer conflicts. These dependencies will not be upgraded to new major versions within the Silverstripe CMS 5 release line. - -Review [Silverstripe CMS 5 fixed dependencies](/project_governance/fixed_dependencies) for more details. - -## Dependency changes - -### General changes {#dep-general} - -- `swiftmailer/swiftmailer` has been removed and replaced with `symfony/mailer` -- Various Symfony dependencies have been upgraded from 4.x to 6.x. A small number of code changes were made in `silverstripe/framework` to work with the symfony 6.x dependencies. -- `silverstripe/graphql` v3 is no longer supported. It is recommended that you ensure you are using `silverstripe/graphl` v4 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. There is [documentation for the upgrade process here](https://docs.silverstripe.org/en/4/upgrading/upgrading_to_graphql_4/). -- PHPUnit 5.7 is no longer supported. It is recommended that you ensure your tests are running with PHPUnit 9 in your Silverstripe CMS 4 project before upgrading to Silverstripe CMS 5. There is [documentation for the upgrade process here](https://docs.silverstripe.org/en/4/upgrading/phpunit9/). -- `masterminds/html5` is now used to parse HTML content instead of `DomDocument::loadHTML()`. This may cause slight changes in rendered content if the content being saved contains invalid HTML. The optional module `silverstripe/html5` is no longer required for rendering HTML 5 content. - -### TinyMCE upgraded from 4 to 6 {#tinymce6} - -TinyMCE has been upgraded up two major versions from 4 to 6. The API for [`HTMLEditorConfig`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorConfig) and [`TinyMCEConfig`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig) haven't changed at all, but there have been some changes to plugins and options which may affect your projects. Here are some notable changes: - -- The `styleselect` option for selecting a CSS style has changed to `styles`. -- The `spellchecker` plugin is now a premium "[Spell Checker Pro](https://www.tiny.cloud/docs/tinymce/6/introduction-to-tiny-spellchecker/)" plugin through TinyMCE cloud (though the `browser_spellcheck` options still works and is enabled by default). -- The *paste from Microsoft Word* functionality is now part of a premium "[PowerPaste](https://www.tiny.cloud/docs/tinymce/6/introduction-to-powerpaste/)" plugin through TinyMCE cloud. - - There is an [open call for maintainers](https://github.com/tinymce/tinymce/discussions/7487) for converting the old functionality into a new open source plugin. -- The UI API has changed, which will affect any custom plugins you may be using. Notably: - - most `addX()` functions have been moved from `editor` to `editor.ui.registry` - e.g. `editor.addButton()` is now `editor.ui.registry.addButton()`. - - `onclick` functions on buttons have been changed to `onAction`. - -There were a lot more changes than just those, so you may want to also check out the following resources: - -- [Docs for upgrading from 4 to 5](https://www.tiny.cloud/docs/migration-from-4x/) -- [Docs for upgrading from 5 to 6](https://www.tiny.cloud/docs/tinymce/6/migration-from-5x/) -- [List of open source plugins for TinyMCE 6](https://www.tiny.cloud/docs/tinymce/6/plugins/#open-source-plugins) -- [List of toolbar buttons available for TinyMCE 6](https://www.tiny.cloud/docs/tinymce/6/available-toolbar-buttons/) -- [Create a plugin](https://www.tiny.cloud/docs/tinymce/6/creating-a-plugin/) - -## Front-end build stack upgrades {#front-end} - -> [!NOTE] -> "Front-end" in this section refers to the JavaScript and CSS in the CMS. It doesn't have any impact on your website's public-facing front-end. - -We've upgraded the front-end build stack for the CMS, along with most of the JavaScript dependencies. - -### Webpack config - -The [`@silverstripe/webpack-config`](https://www.npmjs.com/package/@silverstripe/webpack-config) and [`@silverstripe/eslint-config`](https://www.npmjs.com/package/@silverstripe/eslint-config) NPM libraries, along with the build stack for all supported modules, has been updated to be compatible with node 18 and webpack 5. This will only impact you if your module or project uses one or both of those NPM packages - you will need to make sure you update your own dependencies to be compatible with them, along with the dependencies listed below if you use them. - -With this comes a change to the API for `@silverstripe/webpack-config`. There is a new (optional) abstracted API for declaring the webpack config for transpiling the JavaScript and CSS for your CMS customisations, which has been documented extensively in the readme for that library. - -You can continue to use the old API if you want to, but you will need to account for the following breaking changes: - -- The `UglifyJsPlugin` is no longer used to remove comments from transpiled code. Refer to the `optimisation` config in [the abstracted JavascriptWebpackConfig class](https://github.com/silverstripe/webpack-config/blob/2/configMeta/javascriptWebpackConfig.js) instead. -- `script-loader`, `file-loader`, and `url-loader` have all been replaced with the relevant [webpack assets](https://webpack.js.org/guides/asset-modules/) configuration. -- `ExtractTextPlugin` and its associated configuration has been replaced with `MiniCssExtractPlugin`. -- Supported browser configuration has been replaced with setting an appropriate [browserslist](https://browsersl.ist) configuration in your `package.json` file. - -### Updated JavaScript dependencies - -The following JavaScript dependencies (which are used in the CMS, and may impact your customisations) have been updated to new major versions, or replaced: - -|old package and version|new package and version|upgrade guide| -|---|---|---| -|apollo-client `^2.3.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-cache-inmemory `^1.2.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link `^1.2.2`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-batch-HTTP `^1.2.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-error `^1.0.9`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-HTTP `^1.5.4`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|apollo-link-state `^0.4.1`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|GraphQL `^14.0.0`|GraphQL `^16.6.0`|[GitHub changelog][graphql-changelog]| -|merge `^1.2.1`|merge `^2.1.1`|N/A| -|react `^16.6.1`|react `^18.2.0`|[upgrade guide][react-guide]| -|react-apollo `^2.1.0`|@apollo/client `^3.7.1`|[upgrade guide][apollo-guide]| -|react-redux `^5.0.7`|react-redux `^8.0.5`|[GitHub changelog][react-redux-changelog]| -|react-router `^4.4.0`|react-router `^6.7`|[upgrade guide][react-router-guide]| -|react-router-config `^4.4.0`|react-router `^6.7`|[upgrade guide][react-router-guide]| -|react-router-dom `^4.4.0`|react-router-dom `^6.7`|[upgrade guide][react-router-guide]| -|react-select `^1.3`|react-select `^5.5.8`|[upgrade guides][react-select-guide]| -|redux-form `^7.4.2`|redux-form `^8.3.8`|[GitHub changelogs][react-form-changelog]| -|validator `^6.1.0`|validator `^13.7.0`|[changelog][validator-changelog]| -|dropzone `^5.7.2`|dropdown `^6.0.0-beta.2`|[changelog][dropzone-changelog]| - -[apollo-guide]: https://www.apollographql.com/docs/react/migrating/apollo-client-3-migration -[graphql-changelog]: https://github.com/graphql/graphql-js/releases/tag/v16.0.0 -[react-guide]: https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html -[react-router-guide]: https://github.com/remix-run/react-router/blob/main/docs/upgrading/v5.md -[react-select-guide]: https://react-select.com/upgrade -[react-form-changelog]: https://github.com/redux-form/redux-form/releases/tag/v8.0.0 -[validator-changelog]: https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md -[dropzone-changelog]: https://github.com/dropzone/dropzone/blob/main/CHANGELOG.md -[react-redux-changelog]: https://github.com/reduxjs/react-redux/releases - -### Common upgrade patterns - -While upgrading core modules, there were a few common patterns we found that might be useful for you. Those are listed here for your convenience. - -#### `ReactDOM.render()` replaced with `ReactDOM.createRoot().render()` - -If you are injecting a React component in a section of the CMS that uses entwine, you likely have something like this: - -```js -import React from 'react'; -import ReactDOM from 'react-dom'; - -$('.grid-field').entwine({ - onmatch() { - ReactDOM.render(, this[0]); - }, - - onunmatch() { - const container = this[0]; - if (container) { - ReactDOM.unmountComponentAtNode(container); - } - }, -}); -``` - -Instead of using `ReactDOM.render()`, you should now call `ReactDOM.createRoot().render()` - but if you try to use `createRoot()` multiple times on the same element, react will complain, so you'll want to keep a reference to the root you made the first time. The above example turns into this: - -```js -import React from 'react'; -import ReactDOM from 'react-dom'; - -$('.grid-field').entwine({ - ReactRoot: null, - - onmatch() { - let root = this.getReactRoot(); - if (!root) { - root = ReactDOM.createRoot(this[0]); - } - root.render(); - this.setReactRoot(root); - }, - - onunmatch() { - const root = this.getReactRoot(); - if (root) { - root.unmount(); - this.setReactRoot(null); - } - }, -}); -``` - -#### React route paths are now relative to their parent routes - -The update to `react-router` has changed the paths for routes in react-only sections of the CMS (such as /admin/assets) to be relative to the parent routes. If you have a custom react CMS section, you'll need to make sure you're using the relative path. This is included as `reactRoutePath` in the array returned by [`LeftAndMain::getClientConfig()`](api:SilverStripe\Admin\LeftAndMain::getClientConfig()) by default, but you may need to double check your custom admin section is returning the correct value. - -Then, in your JavaScript implementation where you are adding your route to the `ReactRouteRegister`, simple change your route's path from using the `url` key to use the new `reactRoutePath` key. - -```diff - import ConfigHelpers from 'lib/Config'; - import reactRouteRegister from 'lib/ReactRouteRegister'; - import MyAdmin from './MyAdmin'; - - document.addEventListener('DOMContentLoaded', () => { - const sectionConfig = ConfigHelpers.getSection('MyAdmin'); - reactRouteRegister.add({ -- path: sectionConfig.url, -+ path: sectionConfig.reactRoutePath, - component: MyAdminComponent, - }); - }); -``` - -#### `react-router` no longer has a `withRouter` HOC - -In the old version of react-router, the `withRouter` Higher Order Component could be used to wrap your component which needs access to the router and its functionality. - -This has been removed. The ideal way to upgrade will be to rewrite your components to work with the new API as per the upgrade guide referenced in the table above. - -If you don't have time or resources to rewrite your components, we do have a temporary solution for you - but bear in mind that this is just kicking the can down the road. You *will* have to upgrade to use the new react-router API eventually. - -Silverstripe CMS 5 includes a replacement `withRouter` Higher Order Component that you can use until you have the resources necessary to upgrade properly. It passes different props than the old one did, so you will still need to make some changes. For example: - -```js -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; -import { withRouter } from 'react-router-dom'; - -class MyAdmin extends Component { - // Your implementation here -} - -MyAdmin.propTypes = { - location: PropTypes.shape({ - pathname: PropTypes.string, - query: PropTypes.object, - search: PropTypes.string, - }), - match: PropTypes.shape({ - params: PropTypes.shape({ - view: PropTypes.string, - id: PropTypes.number, - }), - }), - // eslint-disable-next-line react/no-unused-prop-types - history: PropTypes.object, -}; - -export default withRouter(MyAdmin); -``` - -The above expects the `match` and `history` props from the `withRouter` HOC. These are no longer passed. What's more, you don't have to declare your own proptypes, we've exported that for you. The above now becomes this: - -```js -import React, { Component } from 'react'; -import withRouter, { routerPropTypes } from 'lib/withRouter'; - -class MyAdmin extends Component { - // Your implementation here -} - -MyAdmin.propTypes = { - // eslint-disable-next-line react/no-unused-prop-types - router: routerPropTypes, -}; - -export default withRouter(MyAdmin); -``` - -The new props that our `withRouter` HOC passes in is a single prop called `router` which has the following `PropTypes` definition: - -```js -PropTypes.shape({ - location: PropTypes.shape({ - pathname: PropTypes.string, - query: PropTypes.object, - search: PropTypes.string, - }), - navigate: PropTypes.func, - params: PropTypes.object, -}); -``` - -`router.params` is a one-to-one replacement for the old `match.params`, and `router.location` is a one-to-one replacement for the old `location` prop. - -Refer to the upgrade guide from the table above to learn how to replace the old `history` prop with the new `router.navigate` prop. - -### Breaking changes in *our* JavaScript components or API {#js-api} - -For the most part we were able to retain our existing API and not make any drastic changes to our react components through upgrading our dependencies, but there was one notable exception. - -To conform with the API changes in the new version of `react-select`, the `TreeDropdownField` component has changed considerably, and the `TreeDropdownFieldMenu` component has been removed entirely. - -If you were customising the `TreeDropdownField` React component at all or injecting a custom version of `TreeDropdownFieldMenu`, you will want to take a look at the source code for the `TreeDropdownField` component and maybe have a look at the upgrade guides for `react-select` referenced in the table above to see what changes you need to make. - -Some of the CSS classes related to `TreeDropdownField` have also changed, as a result of the upgrade to `react-select`. - -## Other breaking changes - -### URLs generated by Silverstripe CMS don't include a trailing slash by default {#trailing-slash} - -The URLs generated by Silverstripe CMS have previously been inconsistent as to whether a trailing slash is included or not. This lead to the creation of [at least one module](https://github.com/axllent/silverstripe-trailing-slash) which normalises the trailing slash at the end of URLs. - -By default, all URLs created by Silverstripe CMS will now *not* end with a slash. You can configure this to instead explicitly add a trailing slash to all URLs with the following YML configuration: - -```yml -SilverStripe\Control\Controller: - add_trailing_slash: true -``` - -> [!WARNING] -> Because this can be controlled with configuration, it is best practice to avoid explicitly expecting a trailing slash to either be present or be omitted. -> -> In PHP, you can use methods like [`Controller::join_links()`](api:SilverStripe\Control\Controller::join_links()) or [`Controller::normaliseTrailingSlash()`](api:SilverStripe\Control\Controller::normaliseTrailingSlash()). In JavaScript in your CMS customisations, we recommend using using the `joinUrlPaths()` utility function `silverstripe/admin` which you can access with `import { joinUrlPaths } from 'lib/urls;` if your project uses [@silverstripe/webpack-config](https://www.npmjs.com/package/@silverstripe/webpack-config). In your templates, you should use appropriate methods from your controller or model such as [`SiteTree::Link()`](api:SilverStripe\CMS\Model\SiteTree::Link()) which uses `Controller::join_links()` under the hood. - -The [`CanonicalURLMiddleware`](api:SilverStripe\Control\Middleware\CanonicalURLMiddleware) will also, by default, redirect traffic to include or omit the trailing slash according to the above configuration. By default, this means that traffic directed to `/about-us/` will be redirected to `/about-us`. You can disable this behaviour with the following YML configuration: - -```yml -SilverStripe\Core\Injector\Injector: - SilverStripe\Control\Middleware\CanonicalURLMiddleware: - properties: - enforceTrailingSlashConfig: false -``` - -> [!NOTE] -> Redirects will not be performed for any route starting with `admin/` or `dev/` by default. You can configure this, as well as exclude specific user agents from being redirected, with the following YML configuration: -> -> ```yml -> SilverStripe\Core\Injector\Injector: -> SilverStripe\Control\Middleware\CanonicalURLMiddleware: -> properties: -> enforceTrailingSlashConfigIgnorePaths: -> - 'my-ajax-controller/' -> enforceTrailingSlashConfigIgnoreUserAgents: -> - 'my-dev-user-agent' -> ``` - -### CWP agency extensions - -The [cwp/agency-extensions](https://github.com/silverstripe/cwp-agencyextensions) module used to provide a Font Awesome v4 plugin for TinyMCE 4. This plugin is not compatible with TinyMCE 6 and we couldn't see an appropriate alternative plugin to use instead. The fact that such a replacement doesn't seem to exist in the wild suggests to us that the use-case is very narrow, so we have opted to remove this plugin without replacing it. - -If your project has no content which used the Font Awesome plugin provided by this module, you don't need to make any changes - though you can remove the `CWP_AGENCY_DISABLE_FONTAWESOME_PLUGIN` environment variable from your `.env` file if it was set. - -If your project does have some content which contains Font Awesome icons from that plugin, you will need to set `CWP_AGENCY_ENABLE_FONTAWESOME_STYLES` to true in your environment variables. This will allow you to see the existing icons in the TinyMCE field in the CMS, as well as ensuring that they will not be removed when you save content. The front-end will not be impacted, as you already had to inject an appropriate stylesheet into the front-end for the icons to appear there. - -If you cannot set environment variables in your project, you can set the following configuration manually in your project: - -```php -// app/_config.php -use SilverStripe\Forms\HTMLEditor\TinyMCEConfig; - -TinyMCEConfig::get('cwp')->setOption( - 'extended_valid_elements', - $cwpEditor->getOption('extended_valid_elements') - . ',span[class|align|style|aria-hidden]' -); -``` - -```yml -# app/_config/font-awesome.yml -SilverStripe\Forms\HTMLEditor\TinyMCEConfig: - editor_css: - - "https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" -``` - -If you need the ability to add icons in your content, a suitable alternative may be the [emoticons plugin for TinyMCE 6](https://www.tiny.cloud/docs/plugins/opensource/emoticons/). You can compare the icons provided by that plugin with the [icons in Font Awesome v4](https://fontawesome.com/v4/icons/) to see if it would be a suitable replacement for your project. - -### `silverstripe/security-extensions` module is folded into core {#security-extensions-is-core} - -The functionality from [silverstripe/security-extensions](https://github.com/silverstripe/silverstripe-security-extensions) has been folded into the core modules. This means you no longer need to install that module to benefit from the features it provided - and indeed there will not be a CMS 5 compatible version of that module. If you have `silverstripe/security-extensions` as a dependency in your composer.json file, you will need to remove it. - -With this change you now have access to the following features: - -#### Require password change on next log in - -Administrators with the ability to administer members can see a checkbox in the CMS under the area to set the member's password. Checking this box will set the password expiry to the current date, meaning the next time the member logs in they will be required to choose a new password for their account. - -No change is made when setting this field and the password is already expired for auditing purposes (an administrator could see how long ago a password expired). Similarly no change is made when unsetting this field and the expiry date is in the future, it should remain so - the checkbox is for immediately requiring a new password on the *next* log in. - -See the [secure coding section](/developer_guides/security/secure_coding/#other-options) for information about setting the password expiry itself, or the ["Changing and managing users" user help guide](https://userhelp.silverstripe.org/en/5/managing_your_website/changing_and_managing_users/#changing-a-user-s-password) to see how this appears to the user. - -#### Sudo mode - -Sudo mode represents a heightened level of permission in that you are more certain that the current user is actually the person whose account is logged in. This is performed by re-validating that the account's password is correct, and will then last for a certain amount of time (configurable) until it will be checked again. - -Out of the box this is currently only used by the [silverstripe/mfa](https://github.com/silverstripe/silverstripe-mfa) module - see [MAnaging your MFA settings](https://userhelp.silverstripe.org/en/5/optional_features/multi-factor_authentication/user_manual/managing_your_mfa_settings/#managing-your-mfa-settings) - but you can use it in your own projects as well. Read the [Sudo Mode documentation](/developer_guides/security/sudo_mode/) to find out how. - -Note that as part of this change the namespaces of several classes changed. Refer to the table below if you were referring to these classes (e.g. to set configuration values or replace classes via dependency injection). - -|Old namespace|New namespace| -|---|---| -|`SilverStripe\SecurityExtensions\Control\SudoModeController`|[`SilverStripe\Admin\SudoModeController`](api:SilverStripe\Admin\SudoModeController)| -|`SilverStripe\SecurityExtensions\Service\SudoModeService`|[`SilverStripe\Security\SudoMode\SudoModeService`](api:SilverStripe\Security\SudoMode\SudoModeService)| -|`SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface`|[`SilverStripe\Security\SudoMode\SudoModeServiceInterface`](api:SilverStripe\Security\SudoMode\SudoModeServiceInterface)| - -## Features and enhancements {#features-and-enhancements} - -### Extension changes - -[Extension](api:SilverStripe\Core\Extension) classes don't expose `protected` methods, but they *can* be used for extension hooks. This reduces the surface of methods exposed from your extensions into `Extensible` classes. For example, you might have a `protected function updateCMSFields()` method which will be called after writing some `DataObject` - but because this method is `protected`, it *cannot* be accessed directly from the `DataObject` instances. You can however still expose some method from the `Extension` by making it `public` - and that method *can* be accessed directly from the `DataObject` instances. - -When invoking an extension hook (e.g. via `extend()`), methods prefixed with "extend" will take precedence. i.e. if an `Extension` class has a `onAfterWrite()` method and an `extendOnAfterWrite()` method and I call `$this->extend('onAfterWrite')` - the `extendOnAfterWrite()` method on that `Extension` will be called, and `onAfterWrite()` will not. -This empowers advanced `Extension` functionality such as [Versioned::canPublish()](api:SilverStripe\Versioned\Versioned::canPublish()) which invokes `$owner->extendedCan('canPublish')` but doesn't result in a cycle, because the same class also implements [extendCanPublish()](api:SilverStripe\Versioned\Versioned::extendCanPublish()). - -### Other new features {#other-features} - -- [`DataObject::get_one()`](api:SilverStripe\ORM\DataObject::get_one()) can now be called directly from subclasses of `DataObject` without passing in a class as the first argument (e.g. `SiteTree::get_one(filter: ['Title:startsWith' => 'About'])`). -- Strings returned from the [getSummary()](api:DNADesign\Elemental\Models\BaseElement::getSummary()) method in elemental blocks will automatically be displayed as the summary for the element in the [ElementalArea](api:DNADesign\Elemental\Models\ElementalArea) - this no longer needs to be manually added in [provideBlockSchema()](api:DNADesign\Elemental\Models\BaseElement::provideBlockSchema()). -- The elemental [TopPage DataExtension](api:DNADesign\Elemental\TopPage\DataExtension) is applied to [`BaseElement`](api:DNADesign\Elemental\Models\BaseElement) and [`ElementalArea`](api:DNADesign\Elemental\Models\ElementalArea) by default, and the corresponding [`SiteTreeExtension`](api:DNADesign\Elemental\TopPage\SiteTreeExtension) is applied to [`SiteTree`](api:SilverStripe\CMS\Model\SiteTree) by default. This allows you to use `$TopPage` in your elemental block templates as a more performant alternative to `$Page` when referring to the page the element belongs to. -- Void HTML elements such as `` are no longer rendered as self-closing tags e.g. `bar` is now rendered, previously `bar` was rendered. -- It’s now possible to hook into FormField validation via the `updateValidationResult` extension hook. Module authors releasing form fields should opt-in to this functionality by calling the new `extendValidationResult` method to enable developers to extend and customise validation. See the [form validation documentation](/developer_guides/forms/validation/#extensions) for more information. - -## Bugfixes {#bugfixes} - -- If a page which is a child of a root-level page gets archived, and then its former parent is removed, it can only be restored if `can_be_root` for that page's class is true. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -## Environment variable changes - -- `SS_MANIFESTCACHE` can no longer use the now removed symfony/cache 4.x "Simple" cache classes e.g. `Symfony\Component\Cache\Simple\PhpFilesCache`. Instead use the corresponding "Adapter" class e.g. `Symfony\Component\Cache\Adapter\PhpFilesAdapter`. -- `APP_SMTP_USERNAME` and `APP_SMTP_PASSWORD` have been removed. Use a `MAILER_DSN` environment variable instead to configure SMTP email (see [the email documentation](/developer_guides/email/) for more details). - -## API changes {#api-changes} - -This is a major release and contains many breaking API changes. Deprecation warnings have been added to the latest Silverstripe CMS 4 release to advise you of APIs that have been removed in Silverstripe CMS 5. - -[Enable deprecation warnings](/upgrading/deprecations) prior to upgrading to Silverstripe CMS 5 to see if your project relies on any APIs that are no longer unavailable. - -### General changes {#api-general} - -- [`SecurityAdmin`](api:SilverStripe\Admin\SecurityAdmin) is a [`SilverStripe\Admin\ModelAdmin`](api:SilverStripe\Admin\ModelAdmin). - - Previous extension hook implementations of `SecurityAdmin::updateEditForm($form)` still works as the extension hook is called in [`ModelAdmin::getEditForm()`](api:SilverStripe\Admin\ModelAdmin::getEditForm()). - - The *Users*, *Groups* and *Roles* tabs no longer share the `/admin/security` path and instead have their own dedicated paths. e.g. `/admin/security/users` -- `isDev` and `isTest` query string arguments have been removed due to security concerns (see [ss-2018-005](https://www.silverstripe.org/download/security-releases/ss-2018-005/)). -- The `updateRelativeLink()` extension hook for updating the result of [SiteTree::RelativeLink()](api:SilverStripe\CMS\Model\SiteTree::RelativeLink()) has changed signature, allowing you to update the resultant link itself instead of just the component parts. If you are using this extension hook you will need to update the method signature and logic to match. See [SiteTreeExtension::updateRelativeLink()](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) for more details. -- The default value for the `RESOURCES_DIR` const has been changed to to "_resources" - - The [`Library::DEFAULT_RESOURCES_DIR`](api:SilverStripe\VendorPlugin\Library::DEFAULT_RESOURCES_DIR) constant in `silverstripe/vendor-plugin` has been changed to match. - - This can still be customised using `extra.resources-dir` in your `composer.json` file ([see relevant docs](/developer_guides/templates/requirements/#configuring-your-project-exposed-folders)). - - If your `composer.json` file has its `extra.resources-dir` key set to `_resources`, you can remove that now. - - If your `composer.json` file already does not have an `extra.resources-dir` key and you want to keep your resources in the `resources` directory, you can set `extra.resources-dir` to `resources`. - - If your `composer.json` file already does not have an `extra.resources-dir` key and you want to use the new default `_resources` directory, you may need to check that your code and templates don't assume the directory name for those resources. In your templates it is preferred to [use `$resourePath()` or `$resourceURL()`](/developer_guides/templates/requirements/#direct-resource-urls) to get paths for resources. -- The use of the `public/` directory for the public web root is now mandatory. This was introduced as the default for new projects in CMS 4.1.0. If you are still not using the `public/` directory as your public web root, follow the [instructions in the Silverstripe CMS 4.1.0 changelog](https://docs.silverstripe.org/en/4/changelogs/4.1.0#public-folder/). -- The legacy file resolution strategy introduced in CMS 4.4.0 is no longer available. If you still use the legacy file resolution strategy, follow the [file migration instructions](https://docs.silverstripe.org/en/4/developer_guides/files/file_migration/) and then change your file resolution configuration to match the defaults in [the assets.yml file in silverstripe/installer](https://github.com/silverstripe/silverstripe-installer/blob/4/app/_config/assets.yml). -- Removed the `HTMLValue` injection "shorthand", use the fully qualified [`HTMLValue`](api:SilverStripe\View\Parsers\HTMLValue) instead. -- In `silverstripe/staticpublishqueue` the class [`SilverStripe\StaticPublishQueue\Dev\StaticPublisherState`](api:SilverStripe\StaticPublishQueue\Dev\StaticPublisherState) is no longer enabled by default and can be enabled via opt-in. There are opt-in instructions in the `README.md` of the module. - -### Email {#api-email} - -- Email was sent in CMS 4 using [SwiftMailer](https://swiftmailer.symfony.com/docs/introduction.html), which has since [gone End Of Life](https://symfony.com/blog/the-end-of-swiftmailer). In CMS 5, this has been replaced with [symfony/mailer](https://symfony.com/doc/current/mailer.html). `symfony/mailer` is the currently maintained email package from Symfony. It's a more flexible email system that allows easier integration with third-party email providers. -- In CMS 4, the [`SilverStripe\Control\Email\Email`](api:SilverStripe\Control\Email\Email) class subclassed [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData). In CMS 5, it now subclasses `Symfony\Component\Mime\Email`. -- `MailTransport`, which used the PHP native `mail()` function, is no longer present in CMS 5. This is because [Symfony considers `mail()` to be insecure](https://github.com/swiftmailer/swiftmailer/issues/866#issuecomment-289291228). -- If your site has a custom email configuration e.g. SMTP configuration, this will need to be updated, as the configuration has changed from Silverstripe yml to a much more flexible and standardised [DSN string](https://symfony.com/doc/current/mailer.html#transport-setup). See [the email documentation](/developer_guides/email/) for more details. The configuration for email has changed completely - read the updated documentation carefully. -- The following return types were changed on the following methods in [`SilverStripe\Control\Email\Email`](api:SilverStripe\Control\Email\Email). - - Used to return a `string`, now returns an nullable [`Address`](https://symfony.com/doc/current/mailer.html#email-addresses) object. - - `getReturnPath()` - - `getSender()` - - Used to return an array of strings, now returns an array of `Address` objects. - - `getFrom()` - - `getTo()` - - `getBCC()` - note - changed casing to `getBcc()` - - `getCC()` - note - changed casing to `getCc()` - - Used to return `bool`, now return `void`: - - [`send()`](api:SilverStripe\Control\Email\Email::send()) - - [`sendPlain()`](api:SilverStripe\Control\Email\Email::sendPlain()) - - Catch [`TransportExceptionInterface`](https://github.com/symfony/symfony/blob/6.2/src/Symfony/Component/Mailer/Exception/TransportExceptionInterface.php) from Symfony Mailer to handle failure to send email. - - Various other methods have added strong typing to parameter and return types. Also, some parameter names have changed. - -### ORM {#api-orm} - -- [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) no longer accepts raw SQL. A new [`DataList::orderBy()`](api:SilverStripe\ORM\DataList::orderBy()) method has been created which accepts raw SQL, though it's recommended to continue using [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) if possible to reduce the chance of SQL injection vulnerabilities. -- Passing `null` to [`DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) i.e. `sort(null)` now clears any existing sort values on a DataList. Passing an empty string (i.e. `sort('')` or array i.e. `sort([])`) now causes an `InvalidArgumentException` to be thrown. -- Prior to 5.0.0, when using [`SQLSelect::setFrom()`](api:SilverStripe\ORM\Queries\SQLSelect::setFrom()) or [`SQLSelect::create('*', $from)`](api:SilverStripe\ORM\Queries\SQLSelect::create) to set table or subselect definitions, their aliases (applied by setting a string key for the array) were being ignored. This bug has been fixed - if you were working around this by manually setting the alias e.g. in a join, you can remove those workarounds now. -- [`Query`](api:SilverStripe\ORM\Connect\Query) now implements `IteratorAggregate` instead of `Iterator`. This means `seek()` and other iterator methods are no longer available on this class and its subclasses. Use `getIterator()` instead. -- [`DataList`](api:SilverStripe\ORM\DataList), its subclasses, [`Map`](api:SilverStripe\ORM\Map), and [`ArrayList`](api:SilverStripe\ORM\ArrayList) all now return generators from `getIterator()`. This reduces memory usage when looping over large result sets. As a result of this, `getGenerator()` has been removed as it is no longer needed. Note that [`DataList::chunkedFetch()`](api:SilverStripe\ORM\DataList::chunkedFetch()) has not been removed, as it may still be useful for very large result sets to fetch results in smaller chunks at a time. -- [`Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) is now strongly typed. Calling `limit()` with a `0` or `false` length now limits the list to 0 entry. In Silverstripe CMS 4, any "falsy" value would unset the limit. To unset a list's limit in Silverstripe CMS 5 , call `limit()` with an explicit `null`. This affects [`DataList`](api:SilverStripe\ORM\DataList), [`ArrayList`](api:SilverStripe\ORM\ArrayList) and all other classes implementing [`Limitable`](api:SilverStripe\ORM\Limitable). - - In Silverstripe CMS 4, calling [`SQLSelect::setLimit()`](api:SilverStripe\ORM\Queries\SQLSelect::setLimit()) with `0` as argument would unset the limit. In Silverstripe CMS 5, it sets a limit of `0` causing the query to return no results. Call `setLimit()` with `null` to unset the limit. -- [`ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) in Silverstripe CMS 5 throws an `InvalidArgumentException` when called with a negative `$length` or `$offset`. -- PDO database connector support has been fully removed. Update the `SS_DATABASE_CLASS` environment variable to use a regular connector instead. For instance change `MySQLPDOConnector` to `MySQLDatabase`. - -### Dynamic properties - -- PHP Dynamic properties were deprecated in PHP 8.2 to minimise the confusion caused by having API that was not explicitly declared. -- To support backwards compatibility with project and module code, the magic methods `__get()` and `__set()` on [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData) will simulate dynamic properties by writing values to an array stored as a private property. -- This functionality may not work if subclasses override any of the following methods: `__get()`, `__set()`, `getField()`, `setField()`, `hasField()`. -- If these method overrides don't call the parent methods, they may need access to the dynamic data. The private property array that stores the values can be accessed with via the following methods: [`SilverStripe\View\ViewableData::getDynamicData()`](api:SilverStripe\View\ViewableData::getDynamicData()), [`SilverStripe\View\ViewableData::setDynamicData()`](api:SilverStripe\View\ViewableData::setDynamicData()), [`SilverStripe\View\ViewableData::hasDynamicData()`](api:SilverStripe\View\ViewableData::hasDynamicData()) - -### Templates - -- `<% loop %>` and `<% with %>` now only ever result in one new scope level. See [Template Syntax](/developer_guides/templates/syntax#up) for more details. - - For example `<% loop $Pages.Limit(5) %>{$Up.Up.Title}<% end_loop %>` previously would go up once to the `$Pages` scope (out of the `$Pages.limit(5)` scope), then up a second time to the parent scope. Now there is only the parent scope and the `$Pages.limit(5)` scope - there is no implied `$Pages` scope. - - You may need to do a search for `$Up.Up` in your templates to resolve situations where you have worked around this - with the example above, you would need to rewrite it to `$Up.Title` (removing the second `Up`). - -- Numeric, boolean and null values passed to methods in templates will now preserve their type, rather than always being cast to strings. E.g. `$Foo(true)` would previously pass a string argument `'true'` to the `Foo()` method, but will now pass an actual boolean. - - You may need to check for situations where you were working around this limitation, such as checking in PHP code for `$param === 'false'` if you were passing `false` into some method from a template. - -### Removed and changed API (by module, alphabetically) {#api-removed-and-changed} - -#### `cwp/cwp-core` - -- Removed deprecated class `CWP\Core\Extension\CWPVersionExtension` - -#### `cwp/cwp-search` - -- Removed deprecated class `CWP\Search\Solr\CwpSolrConfigStore` - -#### `dnadesign/silverstripe-elemental` - -- Removed deprecated class `DNADesign\Elemental\Search\ElementalSolrIndex` -- Removed deprecated class `DNADesign\Elemental\TopPage\TestState` -- Removed deprecated method `DNADesign\Elemental\Extensions\ElementalAreaUsedOnTableExtension::updateUsage()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::disableTopPageUpdate()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::enableTopPageUpdate()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::getTopPageUpdate()` -- Removed deprecated method `DNADesign\Elemental\TopPage\DataExtension::withTopPageUpdate()` -- Changed return type for [`DNADesign\Elemental\TopPage\DataExtension::getTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::getTopPage()) from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed return type for [`DNADesign\Elemental\TopPage\DataExtension::getTopPageFromCachedData()`](api:DNADesign\Elemental\TopPage\DataExtension::getTopPageFromCachedData()) from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed parameter type in [`DNADesign\Elemental\TopPage\DataExtension::assignTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::assignTopPage()) for `$page` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\DataExtension::setTopPage()`](api:DNADesign\Elemental\TopPage\DataExtension::setTopPage()) for `$page` from `Page|null` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree)`|null` -- Changed parameter type in [`DNADesign\Elemental\TopPage\FluentExtension::assignTopPage()`](api:DNADesign\Elemental\TopPage\FluentExtension::assignTopPage()) for `$page` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::initDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::initDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::onAfterDuplicate()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::onAfterDuplicate()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::onBeforeDuplicate()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::onBeforeDuplicate()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::processDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::processDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) -- Changed parameter type in [`DNADesign\Elemental\TopPage\SiteTreeExtension::writeDuplication()`](api:DNADesign\Elemental\TopPage\SiteTreeExtension::writeDuplication()) for `$original` from `Page` to [`SilverStripe\CMS\Model\SiteTree`](api:SilverStripe\CMS\Model\SiteTree) - -#### `silverstripe/admin` - -- [`SilverStripe\Admin\SecurityAdmin`](api:SilverStripe\Admin\SecurityAdmin) now extends [`SilverStripe\Admin\ModelAdmin`](api:SilverStripe\Admin\ModelAdmin) instead of [`SilverStripe\Admin\LeftAndMain`](api:SilverStripe\Admin\LeftAndMain) -- Removed deprecated class `SilverStripe\Admin\GroupImportForm` -- Removed deprecated class `SilverStripe\Admin\MemberImportForm` -- Removed deprecated method `SilverStripe\Admin\LeftAndMain::menu_title_for_class()` -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::getSearchContext()` -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::SearchForm()` -- Removed deprecated method `SilverStripe\Admin\ModelAdmin::SearchSummary()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::Backlink()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::groupimport()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::GroupImportForm()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::groups()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::memberimport()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::MemberImportForm()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::roles()` -- Removed deprecated method `SilverStripe\Admin\SecurityAdmin::users()` -- Removed deprecated config `SilverStripe\Admin\LeftAndMain.help_link` -- Removed deprecated config `SilverStripe\Admin\SecurityAdmin.subitem_class` -- Removed deprecated config `SilverStripe\Admin\SecurityAdmin.url_rule` -- Removed deprecated parameter in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) named `$request` -- Changed return type for [`SilverStripe\Admin\AdminRootController::handleRequest()`](api:SilverStripe\Admin\AdminRootController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::batchaction()`](api:SilverStripe\Admin\CMSBatchAction::batchaction()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::response()`](api:SilverStripe\Admin\CMSBatchAction::response()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchAction::run()`](api:SilverStripe\Admin\CMSBatchAction::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\CMSMenu::getIterator()`](api:SilverStripe\Admin\CMSMenu::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::getResponseNegotiator()`](api:SilverStripe\Admin\LeftAndMain::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::getSchemaResponse()`](api:SilverStripe\Admin\LeftAndMain::getSchemaResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::handleRequest()`](api:SilverStripe\Admin\LeftAndMain::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::index()`](api:SilverStripe\Admin\LeftAndMain::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::schema()`](api:SilverStripe\Admin\LeftAndMain::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\LeftAndMain::show()`](api:SilverStripe\Admin\LeftAndMain::show()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleApplicablePages()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleBatchAction()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()`](api:SilverStripe\Admin\CMSBatchActionHandler::handleConfirmation()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\CMSProfileController::save()`](api:SilverStripe\Admin\CMSProfileController::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::delete()`](api:SilverStripe\Admin\LeftAndMain::delete()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::index()`](api:SilverStripe\Admin\LeftAndMain::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::methodSchema()`](api:SilverStripe\Admin\LeftAndMain::methodSchema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::redirect()`](api:SilverStripe\Admin\LeftAndMain::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::save()`](api:SilverStripe\Admin\LeftAndMain::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::schema()`](api:SilverStripe\Admin\LeftAndMain::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\LeftAndMain::show()`](api:SilverStripe\Admin\LeftAndMain::show()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Admin\ModelAdmin::import()`](api:SilverStripe\Admin\ModelAdmin::import()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/asset-admin` - -- Removed deprecated class `SilverStripe\AssetAdmin\Model\EmbedResource` -- Removed deprecated interface `SilverStripe\AssetAdmin\Model\Embeddable` -- Removed deprecated method `SilverStripe\AssetAdmin\Extensions\UsedOnTableExtension::updateUsage()` -- Changed return type for [`SilverStripe\AssetAdmin\BatchAction\DeleteAssets::run()`](api:SilverStripe\AssetAdmin\BatchAction\DeleteAssets::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::addtocampaign()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::createfolder()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::getRecordUpdatedResponse()) for `$record` from dynamic to [`SilverStripe\Assets\File`](api:SilverStripe\Assets\File) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::legacyRedirectForEditView()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::publish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::save()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::saveOrPublish()) for `$doPublish` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin::unpublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/assets` - -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\FileMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\FolderMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\LegacyThumbnailMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\NormaliseAccessMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\SecureAssetsMigrationHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\TagsToShortcodeHelper` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\TagsToShortcodeTask` -- Removed deprecated class `SilverStripe\Assets\Dev\Tasks\VersionedFilesMigrationTask` -- Removed deprecated class `SilverStripe\Assets\Dev\VersionedFilesMigrator` -- Removed deprecated class `SilverStripe\Assets\FilenameParsing\LegacyFileIDHelper` -- Removed deprecated class `SilverStripe\Dev\Tasks\FixFolderPermissionsHelper` -- Removed deprecated method `SilverStripe\Assets\File::ini2bytes()` -- Removed deprecated method `SilverStripe\Assets\File::RelativeLink()` -- Removed deprecated method `SilverStripe\Assets\Filesystem::fixfiles()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::cleanFilename()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFilesystem()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::findVariants()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getFilesystemFor()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getOriginalFilename()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getStreamSHA1()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::getVariant()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFilesystems()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::parseFileID()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::removeVariant()` -- Removed deprecated method `SilverStripe\Assets\Flysystem\FlysystemAssetStore::useLegacyFilenames()` -- Removed deprecated method `SilverStripe\Assets\Shortcodes\FileLinkTracking::ImageTracking()` -- Removed deprecated config `SilverStripe\Assets\Flysystem\FlysystemAssetStore.legacy_filenames` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::current()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::current()) from dynamic to `string` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::key()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::key()) from dynamic to `int` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::next()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::rewind()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\Assets\Storage\DefaultAssetNameGenerator::valid()`](api:SilverStripe\Assets\Storage\DefaultAssetNameGenerator::valid()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::cleanFilename()`](api:SilverStripe\Assets\Dev\TestAssetStore::cleanFilename()) for `$filename` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::getFilesystemFor()`](api:SilverStripe\Assets\Dev\TestAssetStore::getFilesystemFor()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::getOriginalFilename()`](api:SilverStripe\Assets\Dev\TestAssetStore::getOriginalFilename()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::parseFileID()`](api:SilverStripe\Assets\Dev\TestAssetStore::parseFileID()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Dev\TestAssetStore::removeVariant()`](api:SilverStripe\Assets\Dev\TestAssetStore::removeVariant()) for `$fileID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::createResponseFor()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::createResponseFor()) for `$flysystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::deleteFromFileStore()) for `$fs` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()) for `$from` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::moveBetweenFileStore()) for `$to` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::setProtectedFilesystem()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::setProtectedFilesystem()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::setPublicFilesystem()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::setPublicFilesystem()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\FlysystemAssetStore::truncateDirectory()`](api:SilverStripe\Assets\Flysystem\FlysystemAssetStore::truncateDirectory()) for `$filesystem` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) -- Changed parameter type in [`SilverStripe\Assets\Flysystem\GeneratedAssets::setFilesystem()`](api:SilverStripe\Assets\Flysystem\GeneratedAssets::setFilesystem()) for `$store` from `League\Flysystem\Filesystem` to [`SilverStripe\Assets\Flysystem\Filesystem`](api:SilverStripe\Assets\Flysystem\Filesystem) - -#### `silverstripe/auditor` - -- Removed deprecated method `SilverStripe\Auditor\AuditHook::bind_manipulation_capture()` -- Removed deprecated method `SilverStripe\Auditor\AuditHook::onBeforeInit()` -- Changed parameter type in [`SilverStripe\Auditor\RealIPProcessor::__invoke()`](api:SilverStripe\Auditor\RealIPProcessor::__invoke()) for `$record` from `array` to `Monolog\LogRecord` - -#### `silverstripe/behat-extension` - -- Removed deprecated method `SilverStripe\BehatExtension\Context\BasicContext::iAttachTheFileTo()` -- Changed return type for [`SilverStripe\BehatExtension\Utility\TestMailer::clearEmails()`](api:SilverStripe\BehatExtension\Utility\TestMailer::clearEmails()) from dynamic to `void` -- Changed return type for [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$to` from dynamic to `string` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$from` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$subject` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::findEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::findEmail()) for `$content` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\BehatExtension\Utility\TestMailer::saveEmail()`](api:SilverStripe\BehatExtension\Utility\TestMailer::saveEmail()) for `$data` from dynamic to `array` -- Changed parameter name in [`SilverStripe\BehatExtension\Context\BasicContext::iAddToTheTagField()`](api:SilverStripe\BehatExtension\Context\BasicContext::iAddToTheTagField()) from `$locator` to `$selector` - -#### `silverstripe/campaign-admin` - -- Removed deprecated method `SilverStripe\CampaignAdmin\AddToCampaignHandler::handle()` -- Changed return type for [`SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()`](api:SilverStripe\CampaignAdmin\AddToCampaignHandler::addToCampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CampaignAdmin\CampaignAdmin::save()`](api:SilverStripe\CampaignAdmin\CampaignAdmin::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/cms` - -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigator` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed as [`SilverStripe\Admin\Navigator\SilverStripeNavigator`](api:SilverStripe\Admin\Navigator\SilverStripeNavigator) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed as [`SilverStripe\Admin\Navigator\SilverStripeNavigatorItem`](api:SilverStripe\Admin\Navigator\SilverStripeNavigatorItem) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_Unversioned` has been moved from `silverstripe/cms` to `silverstripe/admin` and renamed as [`SilverStripe\Admin\Navigator\SilverStripeNavigatorItem_Unversioned`](api:SilverStripe\Admin\Navigator\SilverStripeNavigatorItem_Unversioned) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_ArchiveLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed as [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_ArchiveLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_ArchiveLink) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_LiveLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed as [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_LiveLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_LiveLink) -- Class `SilverStripe\CMS\Controllers\SilverStripeNavigatorItem_StageLink` has been moved from `silverstripe/cms` to `silverstripe/versioned-admin` and renamed as [`SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_StageLink`](api:SilverStripe\VersionedAdmin\Navigator\SilverStripeNavigatorItem_StageLink) -- Removed deprecated class `SilverStripe\CMS\Controllers\CMSPageHistoryController` -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFileExtension` -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension` -- Removed deprecated class `SilverStripe\CMS\Model\SiteTreeFolderExtension` -- Removed deprecated class `SilverStripe\CMS\Tasks\MigrateSiteTreeLinkingTask` -- Removed deprecated class `SilverStripe\CMS\Tasks\RemoveOrphanedPagesTask` -- Removed deprecated class `SilverStripe\CMS\Tasks\SiteTreeMaintenanceTask` -- Removed deprecated method `SilverStripe\CMS\Controllers\CMSMain::publishall()` -- Removed deprecated method `SilverStripe\CMS\Model\SiteTree::creatableChildren()` -- Removed deprecated method `SilverStripe\CMS\Model\VirtualPage::updateImageTracking()` -- Removed deprecated config `SilverStripe\CMS\Controllers\CMSMain.subitem_class` -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Archive::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Archive::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Publish::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Publish::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Restore::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Restore::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\BatchActions\CMSBatchAction_Unpublish::run()`](api:SilverStripe\CMS\BatchActions\CMSBatchAction_Unpublish::run()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::childfilter()`](api:SilverStripe\CMS\Controllers\CMSMain::childfilter()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::duplicate()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicate()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::getResponseNegotiator()`](api:SilverStripe\CMS\Controllers\CMSMain::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::getsubtree()`](api:SilverStripe\CMS\Controllers\CMSMain::getsubtree()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::index()`](api:SilverStripe\CMS\Controllers\CMSMain::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::savetreenode()`](api:SilverStripe\CMS\Controllers\CMSMain::savetreenode()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()`](api:SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\ContentController::handleRequest()`](api:SilverStripe\CMS\Controllers\ContentController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::controller_for()`](api:SilverStripe\CMS\Controllers\ModelAsController::controller_for()) from dynamic to [`SilverStripe\CMS\Controllers\ContentController`](api:SilverStripe\CMS\Controllers\ContentController) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::getNestedController()`](api:SilverStripe\CMS\Controllers\ModelAsController::getNestedController()) from dynamic to [`SilverStripe\CMS\Controllers\ContentController`](api:SilverStripe\CMS\Controllers\ContentController) -- Changed return type for [`SilverStripe\CMS\Controllers\ModelAsController::handleRequest()`](api:SilverStripe\CMS\Controllers\ModelAsController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\CMS\Controllers\RootURLController::handleRequest()`](api:SilverStripe\CMS\Controllers\RootURLController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::archive()`](api:SilverStripe\CMS\Controllers\CMSMain::archive()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::childfilter()`](api:SilverStripe\CMS\Controllers\CMSMain::childfilter()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::delete()`](api:SilverStripe\CMS\Controllers\CMSMain::delete()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::doSearch()`](api:SilverStripe\CMS\Controllers\CMSMain::doSearch()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::duplicate()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicate()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()`](api:SilverStripe\CMS\Controllers\CMSMain::duplicatewithchildren()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::getsubtree()`](api:SilverStripe\CMS\Controllers\CMSMain::getsubtree()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::index()`](api:SilverStripe\CMS\Controllers\CMSMain::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::publish()`](api:SilverStripe\CMS\Controllers\CMSMain::publish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::restore()`](api:SilverStripe\CMS\Controllers\CMSMain::restore()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::revert()`](api:SilverStripe\CMS\Controllers\CMSMain::revert()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::save()`](api:SilverStripe\CMS\Controllers\CMSMain::save()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::savetreenode()`](api:SilverStripe\CMS\Controllers\CMSMain::savetreenode()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::unpublish()`](api:SilverStripe\CMS\Controllers\CMSMain::unpublish()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()`](api:SilverStripe\CMS\Controllers\CMSMain::updatetreenodes()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doAdd()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()`](api:SilverStripe\CMS\Controllers\CMSPageAddController::doCancel()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()`](api:SilverStripe\CMS\Controllers\CMSPageEditController::addtocampaign()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter type in [`SilverStripe\CMS\Controllers\OldPageRedirector::onBeforeHTTPError404()`](api:SilverStripe\CMS\Controllers\OldPageRedirector::onBeforeHTTPError404()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter name in [`SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()`](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) from `$base` to `$link` -- Changed parameter name in [`SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()`](api:SilverStripe\CMS\Model\SiteTreeExtension::updateRelativeLink()) from `$action` to `$base` - -#### `silverstripe/comments` - -- Removed deprecated class `SilverStripe\Comments\Admin\CommentsGridFieldAction` -- Removed deprecated class `SilverStripe\Comments\Admin\CommentsGridFieldBulkAction\Handler` -- Removed deprecated method `SilverStripe\Comments\Model\Comment::getParent()` -- Changed return type for [`SilverStripe\Comments\Controllers\CommentingController::redirectBack()`](api:SilverStripe\Comments\Controllers\CommentingController::redirectBack()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) - -#### `silverstripe/config` - -- Removed deprecated method `SilverStripe\Config\Collections\DeltaConfigCollection::unserialize()` -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::serialize()` -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::unserialize()` -- Removed deprecated method `SilverStripe\Config\Collections\MemoryConfigCollection::update()` -- Removed deprecated method `SilverStripe\Config\Middleware\MiddlewareCommon::serialize()` -- Removed deprecated method `SilverStripe\Config\Middleware\MiddlewareCommon::unserialize()` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) from dynamic to `static` -- Changed return type for [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) from dynamic to `static` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::merge()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::remove()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$data` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\DeltaConfigCollection::set()`](api:SilverStripe\Config\Collections\DeltaConfigCollection::set()) for `$metadata` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::merge()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::remove()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$data` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\MemoryConfigCollection::set()`](api:SilverStripe\Config\Collections\MemoryConfigCollection::set()) for `$metadata` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::merge()) for `$value` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::remove()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$name` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()`](api:SilverStripe\Config\Collections\MutableConfigCollectionInterface::set()) for `$metadata` from dynamic to `array` - -#### `silverstripe/crontask` - -- Removed deprecated method `SilverStripe\CronTask\Controllers\CronTaskController::setQuiet()` -- Removed deprecated property `SilverStripe\CronTask\Controllers\CronTaskController::$quiet` - -#### `silverstripe/environmentcheck` - -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_email_results()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_from_email_address()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::get_to_email_address()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_email_results()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_from_email_address()` -- Removed deprecated method `SilverStripe\EnvironmentCheck\EnvironmentChecker::set_to_email_address()` - -#### `silverstripe/errorpage` - -- Changed return type for [`SilverStripe\ErrorPage\ErrorPageController::handleRequest()`](api:SilverStripe\ErrorPage\ErrorPageController::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) - -#### `silverstripe/framework` - -- Removed deprecated class `SilverStripe\Control\Email\SwiftMailer` -- Removed deprecated class `SilverStripe\Control\Email\SwiftPlugin` -- Removed deprecated class `SilverStripe\Control\RequestProcessor` -- Removed deprecated class `SilverStripe\Core\Startup\AbstractConfirmationToken` -- Removed deprecated class `SilverStripe\Core\Startup\ConfirmationTokenChain` -- Removed deprecated class `SilverStripe\Core\Startup\ErrorControlChain` -- Removed deprecated class `SilverStripe\Core\Startup\ErrorControlChainMiddleware` -- Removed deprecated class `SilverStripe\Core\Startup\ErrorDirector` -- Removed deprecated class `SilverStripe\Core\Startup\ParameterConfirmationToken` -- Removed deprecated class `SilverStripe\Core\Startup\URLConfirmationToken` -- Removed deprecated class `SilverStripe\Dev\CSVParser` -- Removed deprecated class `SilverStripe\Dev\InstallerTest` -- Removed deprecated class `SilverStripe\Dev\SapphireInfo` -- Removed deprecated class `SilverStripe\Dev\Tasks\MigrateFileTask` -- Removed deprecated class `SilverStripe\Dev\TestSession_STResponseWrapper` -- Removed deprecated class `SilverStripe\Forms\GridField\GridFieldVersionedState` -- Removed deprecated class `SilverStripe\Forms\HTMLEditor\TinyMCEGZIPGenerator` -- Removed deprecated class `SilverStripe\ORM\Connect\PDOConnector` -- Removed deprecated class `SilverStripe\ORM\Connect\PDOQuery` -- Removed deprecated class `SilverStripe\ORM\Connect\PDOStatementHandle` -- Removed deprecated class `SilverStripe\ORM\Map_Iterator` -- Removed deprecated class `SilverStripe\View\Embed\EmbedResource` -- Removed deprecated class `SilverStripe\View\Parsers\HTML4Value` -- Removed deprecated interface `SilverStripe\Control\Email\Mailer` -- Removed deprecated interface `SilverStripe\Control\RequestFilter` -- Removed deprecated interface `SilverStripe\View\Requirements_Minifier` -- Removed deprecated method `SilverStripe\Control\Controller::disableBasicAuth()` -- Removed deprecated method `SilverStripe\Control\Director::isManifestFlushed()` -- Removed deprecated method `SilverStripe\Control\Email\Email::BaseURL()` -- Removed deprecated method `SilverStripe\Control\Email\Email::debug()` -- Removed deprecated method `SilverStripe\Control\Email\Email::findPlainPart()` -- Removed deprecated method `SilverStripe\Control\Email\Email::generatePlainPartFromBody()` -- Removed deprecated method `SilverStripe\Control\Email\Email::getFailedRecipients()` -- Removed deprecated method `SilverStripe\Control\Email\Email::getSwiftMessage()` -- Removed deprecated method `SilverStripe\Control\Email\Email::hasPlainPart()` -- Removed deprecated method `SilverStripe\Control\Email\Email::invalidateBody()` -- Removed deprecated method `SilverStripe\Control\Email\Email::IsEmail()` -- Removed deprecated method `SilverStripe\Control\Email\Email::mergeConfiguredEmails()` -- Removed deprecated method `SilverStripe\Control\Email\Email::render()` -- Removed deprecated method `SilverStripe\Control\Email\Email::setFailedRecipients()` -- Removed deprecated method `SilverStripe\Control\Email\Email::setSwiftMessage()` -- Removed deprecated method `SilverStripe\Control\HTTP::add_cache_headers()` -- Removed deprecated method `SilverStripe\Control\HTTP::augmentState()` -- Removed deprecated method `SilverStripe\Control\HTTP::get_cache_age()` -- Removed deprecated method `SilverStripe\Control\HTTP::gmt_date()` -- Removed deprecated method `SilverStripe\Control\HTTP::register_etag()` -- Removed deprecated method `SilverStripe\Control\HTTP::register_modification_date()` -- Removed deprecated method `SilverStripe\Control\HTTP::register_modification_timestamp()` -- Removed deprecated method `SilverStripe\Control\HTTP::set_cache_age()` -- Removed deprecated method `SilverStripe\Control\HTTPRequest::detect_method()` -- Removed deprecated method `SilverStripe\Control\SimpleResourceURLGenerator::resolveUnsecuredResource()` -- Removed deprecated method `SilverStripe\Core\BaseKernel::getIgnoredCIConfigs()` -- Removed deprecated method `SilverStripe\Core\BaseKernel::sessionEnvironment()` -- Removed deprecated method `SilverStripe\Core\ClassInfo::baseDataClass()` -- Removed deprecated method `SilverStripe\Core\ClassInfo::table_for_object_field()` -- Removed deprecated method `SilverStripe\Core\Config\Config_ForClass::update()` -- Removed deprecated method `SilverStripe\Core\Config\Configurable::set_stat()` -- Removed deprecated method `SilverStripe\Core\Config\Configurable::stat()` -- Removed deprecated method `SilverStripe\Core\Convert::array2json()` -- Removed deprecated method `SilverStripe\Core\Convert::json2array()` -- Removed deprecated method `SilverStripe\Core\Convert::json2obj()` -- Removed deprecated method `SilverStripe\Core\Convert::raw2json()` -- Removed deprecated method `SilverStripe\Core\Convert::xml2array()` -- Removed deprecated method `SilverStripe\Core\CustomMethods::findMethodsFromExtension()` -- Removed deprecated method `SilverStripe\Core\Extensible::constructExtensions()` -- Removed deprecated method `SilverStripe\Core\Injector\Injector::hasService()` -- Removed deprecated method `SilverStripe\Core\Manifest\ClassLoader::classExists()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getCIConfig()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getRelativeResourcePath()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getResourcePath()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::getResourceURL()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::hasResource()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::serialize()` -- Removed deprecated method `SilverStripe\Core\Manifest\Module::unserialize()` -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::getNewSplitFileName()` -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::processChunk()` -- Removed deprecated method `SilverStripe\Dev\CsvBulkLoader::splitFile()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeError()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeFooter()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeHeader()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeInfo()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeSourceFragment()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeTrace()` -- Removed deprecated method `SilverStripe\Dev\DebugView::writeVariable()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::dump_settings()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::get_calling_module_from_trace()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::get_enabled()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::notification_version()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::restore_settings()` -- Removed deprecated method `SilverStripe\Dev\Deprecation::set_enabled()` -- Removed deprecated method `SilverStripe\Dev\FunctionalTest::get_use_draft_site()` -- Removed deprecated method `SilverStripe\Dev\FunctionalTest::useDraftSite()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSAllMatch()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSContains()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertDOSEquals()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::assertNotDOSContains()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::getFixtureFactory()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::loadFixture()` -- Removed deprecated method `SilverStripe\Dev\SapphireTest::setFixtureFactory()` -- Removed deprecated method `SilverStripe\Dev\TestKernel::getIgnoredCIConfigs()` -- Removed deprecated method `SilverStripe\Dev\TestKernel::setIgnoredCIConfigs()` -- Removed deprecated method `SilverStripe\Dev\TestMailer::saveEmail()` -- Removed deprecated method `SilverStripe\Forms\FieldList::collateDataFields()` -- Removed deprecated method `SilverStripe\Forms\Form::formHtmlContent()` -- Removed deprecated method `SilverStripe\Forms\GridField\GridFieldFilterHeader::__construct()` -- Removed deprecated method `SilverStripe\Forms\GridField\GridFieldFilterHeader::getLegacyFilterHeader()` -- Removed deprecated method `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getAdminModule()` -- Removed deprecated method `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::getTinyMCEPath()` -- Removed deprecated method `SilverStripe\Forms\TextField::InternallyLabelledField()` -- Removed deprecated method `SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::serialize()` -- Removed deprecated method `SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::unserialize()` -- Removed deprecated method `SilverStripe\Logging\MonologErrorHandler::getLogger()` -- Removed deprecated method `SilverStripe\Logging\MonologErrorHandler::setLogger()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLQuery::nextRecord()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLQuery::seek()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLStatement::nextRecord()` -- Removed deprecated method `SilverStripe\ORM\Connect\MySQLStatement::seek()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::current()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::first()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::key()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::next()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::nextRecord()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::rewind()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::seek()` -- Removed deprecated method `SilverStripe\ORM\Connect\Query::valid()` -- Removed deprecated method `SilverStripe\ORM\DatabaseAdmin::updateLegacyClassNames()` -- Removed deprecated method `SilverStripe\ORM\DataExtension::unload_extra_statics()` -- Removed deprecated method `SilverStripe\ORM\DataList::getGenerator()` -- Removed deprecated method `SilverStripe\ORM\DataObject::doValidate()` -- Removed deprecated method `SilverStripe\ORM\DataObject::duplicateManyManyRelations()` -- Removed deprecated method `SilverStripe\ORM\DB::getConn()` -- Removed deprecated method `SilverStripe\ORM\FieldType\DBClassName::clear_classname_cache()` -- Removed deprecated method `SilverStripe\ORM\ValidationResult::__construct()` -- Removed deprecated method `SilverStripe\ORM\ValidationResult::serialize()` -- Removed deprecated method `SilverStripe\ORM\ValidationResult::unserialize()` -- Removed deprecated method `SilverStripe\Security\Member::checkPassword()` -- Removed deprecated method `SilverStripe\Security\Member::create_new_password()` -- Removed deprecated method `SilverStripe\Security\Member::currentUser()` -- Removed deprecated method `SilverStripe\Security\Member::currentUserID()` -- Removed deprecated method `SilverStripe\Security\Member::default_admin()` -- Removed deprecated method `SilverStripe\Security\Member::logged_in_session_exists()` -- Removed deprecated method `SilverStripe\Security\Member::logIn()` -- Removed deprecated method `SilverStripe\Security\Member::logOut()` -- Removed deprecated method `SilverStripe\Security\Member::set_title_columns()` -- Removed deprecated method `SilverStripe\Security\PasswordValidator::characterStrength()` -- Removed deprecated method `SilverStripe\Security\PasswordValidator::checkHistoricalPasswords()` -- Removed deprecated method `SilverStripe\Security\PasswordValidator::minLength()` -- Removed deprecated method `SilverStripe\Security\Permission::get_declared_permissions_list()` -- Removed deprecated method `SilverStripe\Security\Permission::get_label_for_permission()` -- Removed deprecated method `SilverStripe\Security\Permission::traverse_declared_permissions()` -- Removed deprecated method `SilverStripe\Security\RandomGenerator::generateEntropy()` -- Removed deprecated method `SilverStripe\Security\Security::check_default_admin()` -- Removed deprecated method `SilverStripe\Security\Security::clear_default_admin()` -- Removed deprecated method `SilverStripe\Security\Security::default_admin_password()` -- Removed deprecated method `SilverStripe\Security\Security::default_admin_username()` -- Removed deprecated method `SilverStripe\Security\Security::findAnAdministrator()` -- Removed deprecated method `SilverStripe\Security\Security::getLoginForms()` -- Removed deprecated method `SilverStripe\Security\Security::has_default_admin()` -- Removed deprecated method `SilverStripe\Security\Security::setDefaultAdmin()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::getMinifier()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::getMinifyCombinedFiles()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::setMinifier()` -- Removed deprecated method `SilverStripe\View\Requirements_Backend::setMinifyCombinedFiles()` -- Removed deprecated method `SilverStripe\View\Shortcodes\EmbedShortcodeProvider::embedForTemplate()` -- Removed deprecated method `SilverStripe\View\SSViewer::set_theme()` -- Removed deprecated method `SilverStripe\View\SSViewer_BasicIteratorSupport::First()` -- Removed deprecated method `SilverStripe\View\SSViewer_BasicIteratorSupport::Last()` -- Removed deprecated method `SilverStripe\View\ViewableData::ThemeDir()` -- Removed deprecated config `SilverStripe\Control\Director.alternate_public_dir` -- Removed deprecated config `SilverStripe\Control\HTTP.cache_ajax_requests` -- Removed deprecated config `SilverStripe\Control\HTTP.cache_control` -- Removed deprecated config `SilverStripe\Control\HTTP.disable_http_cache` -- Removed deprecated config `SilverStripe\Control\HTTP.vary` -- Removed deprecated config `SilverStripe\Forms\GridField\GridFieldFilterHeader.force_legacy` -- Removed deprecated config `SilverStripe\Security\Permission.declared_permissions` -- Removed deprecated config `SilverStripe\Security\Permission.declared_permissions_list` -- Removed deprecated config `SilverStripe\Security\Security.word_list` -- Removed deprecated config `SilverStripe\View\SSViewer.theme` -- Removed deprecated constant `SilverStripe\Core\Manifest\ManifestFileFinder::RESOURCES_DIR` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_PHPUNIT_FIVE` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_PHPUNIT_NINE` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::CI_UNKNOWN` -- Removed deprecated constant `SilverStripe\Core\Manifest\Module::TRIM_CHARS` -- Removed deprecated property `SilverStripe\Control\Controller::$basicAuthEnabled` -- Removed deprecated property `SilverStripe\Control\HTTP::$cache_age` -- Removed deprecated property `SilverStripe\Control\HTTP::$etag` -- Removed deprecated property `SilverStripe\Control\HTTP::$modification_date` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$enabled` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$module_version_overrides` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$notice_level` -- Removed deprecated property `SilverStripe\Dev\Deprecation::$version` -- Removed deprecated property `SilverStripe\Dev\FunctionalTest::$use_draft_site` -- Removed deprecated property `SilverStripe\Dev\TestMailer::$emailsSent` -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$updateSearchContextCallback` -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$updateSearchFormCallback` -- Removed deprecated property `SilverStripe\Forms\GridField\GridFieldFilterHeader::$useLegacyFilterHeader` -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$currentRecord` -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$queryHasBegun` -- Removed deprecated property `SilverStripe\ORM\Connect\Query::$rowNum` -- Removed deprecated property `SilverStripe\ORM\DataObject::$destroyed` -- Removed deprecated property `SilverStripe\ORM\Search\SearchContext::$connective` -- Removed deprecated property `SilverStripe\Security\LoginForm::$authenticator_class` -- Removed deprecated property `SilverStripe\View\Requirements_Backend::$minifier` -- Removed deprecated property `SilverStripe\View\Requirements_Backend::$minifyCombinedFiles` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a2` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a3` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a4` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a5` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a6` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) named `$a7` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a2` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a3` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a4` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a5` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a6` -- Removed deprecated parameter in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) named `$a7` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassLoader::init()`](api:SilverStripe\Core\Manifest\ClassLoader::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassManifest::init()`](api:SilverStripe\Core\Manifest\ClassManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ClassManifest::regenerate()`](api:SilverStripe\Core\Manifest\ClassManifest::regenerate()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleLoader::init()`](api:SilverStripe\Core\Manifest\ModuleLoader::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleManifest::init()`](api:SilverStripe\Core\Manifest\ModuleManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Core\Manifest\ModuleManifest::regenerate()`](api:SilverStripe\Core\Manifest\ModuleManifest::regenerate()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLContains()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLContains()) named `$checkForObjectIdentity` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$delta` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$maxDepth` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$canonicalize` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLEquals()`](api:SilverStripe\Dev\SapphireTest::assertSQLEquals()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLNotContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLNotContains()) named `$ignoreCase` -- Removed deprecated parameter in [`SilverStripe\Dev\SapphireTest::assertSQLNotContains()`](api:SilverStripe\Dev\SapphireTest::assertSQLNotContains()) named `$checkForObjectIdentity` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\Database::transactionEnd()`](api:SilverStripe\ORM\Connect\Database::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\ORM\Connect\NullDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\NullDatabase::transactionEnd()) named `$chain` -- Removed deprecated parameter in [`SilverStripe\Security\Member::generateAutologinTokenAndStoreHash()`](api:SilverStripe\Security\Member::generateAutologinTokenAndStoreHash()) named `$lifetime` -- Removed deprecated parameter in [`SilverStripe\View\Requirements::add_i18n_javascript()`](api:SilverStripe\View\Requirements::add_i18n_javascript()) named `$langOnly` -- Removed deprecated parameter in [`SilverStripe\View\ThemeManifest::init()`](api:SilverStripe\View\ThemeManifest::init()) named `$ignoredCIConfigs` -- Removed deprecated parameter in [`SilverStripe\View\ThemeManifest::regenerate()`](api:SilverStripe\View\ThemeManifest::regenerate()) named `$ignoredCIConfigs` -- [`SilverStripe\Dev\FunctionalTest`](api:SilverStripe\Dev\FunctionalTest) is now abstract. -- [`SilverStripe\Dev\MigrationTask`](api:SilverStripe\Dev\MigrationTask) is now abstract. -- [`SilverStripe\Dev\SapphireTest`](api:SilverStripe\Dev\SapphireTest) is now abstract. -- Method `SilverStripe\Control\Email\Email::addBCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addFrom()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addReplyTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::addTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getBCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getBody()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getCC()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getFrom()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getPriority()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getReplyTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getReturnPath()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getSender()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getSubject()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Control\Email\Email::getTo()` is now defined in `Symfony\Component\Mime\Email` with a different method signature -- Method `SilverStripe\Dev\SapphireTest::assertContains()` is now defined in `PHPUnit\Framework\Assert` with a different method signature -- Method `SilverStripe\Dev\SapphireTest::assertNotContains()` is now defined in `PHPUnit\Framework\Assert` with a different method signature -- Changed return type for [`SilverStripe\Control\Controller::getResponse()`](api:SilverStripe\Control\Controller::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::handleRequest()`](api:SilverStripe\Control\Controller::handleRequest()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\Controller::setRequest()`](api:SilverStripe\Control\Controller::setRequest()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) from dynamic to `string|bool` -- Changed return type for [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::getBCCAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getBCCAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getCCAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getCCAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getData()`](api:SilverStripe\Control\Email\Email::getData()) from dynamic to [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData) -- Changed return type for [`SilverStripe\Control\Email\Email::getHTMLTemplate()`](api:SilverStripe\Control\Email\Email::getHTMLTemplate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::getPlainTemplate()`](api:SilverStripe\Control\Email\Email::getPlainTemplate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::getSendAllEmailsFrom()`](api:SilverStripe\Control\Email\Email::getSendAllEmailsFrom()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::getSendAllEmailsTo()`](api:SilverStripe\Control\Email\Email::getSendAllEmailsTo()) from dynamic to `array` -- Changed return type for [`SilverStripe\Control\Email\Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) from dynamic to `string` -- Changed return type for [`SilverStripe\Control\Email\Email::send()`](api:SilverStripe\Control\Email\Email::send()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\Email\Email::sendPlain()`](api:SilverStripe\Control\Email\Email::sendPlain()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setBody()`](api:SilverStripe\Control\Email\Email::setBody()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setHTMLTemplate()`](api:SilverStripe\Control\Email\Email::setHTMLTemplate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setPlainTemplate()`](api:SilverStripe\Control\Email\Email::setPlainTemplate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setPriority()`](api:SilverStripe\Control\Email\Email::setPriority()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setReturnPath()`](api:SilverStripe\Control\Email\Email::setReturnPath()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setSubject()`](api:SilverStripe\Control\Email\Email::setSubject()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetExists()`](api:SilverStripe\Control\HTTPRequest::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetGet()`](api:SilverStripe\Control\HTTPRequest::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\HTTPRequest::offsetUnset()`](api:SilverStripe\Control\HTTPRequest::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) from dynamic to `static` -- Changed return type for [`SilverStripe\Control\HTTPResponse_Exception::getResponse()`](api:SilverStripe\Control\HTTPResponse_Exception::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\PjaxResponseNegotiator::getResponse()`](api:SilverStripe\Control\PjaxResponseNegotiator::getResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\PjaxResponseNegotiator::respond()`](api:SilverStripe\Control\PjaxResponseNegotiator::respond()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::redirectBack()`](api:SilverStripe\Control\RequestHandler::redirectBack()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Control\RequestHandler::setRequest()`](api:SilverStripe\Control\RequestHandler::setRequest()) from dynamic to `static` -- Changed return type for [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) from dynamic to `Psr\SimpleCache\CacheInterface` -- Changed return type for [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Dev\BulkLoader_Result::Count()`](api:SilverStripe\Dev\BulkLoader_Result::Count()) from dynamic to `int` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::checkIfItemEvaluatesRemainingMatches()`](api:SilverStripe\Dev\Constraint\SSListContains::checkIfItemEvaluatesRemainingMatches()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::evaluate()`](api:SilverStripe\Dev\Constraint\SSListContains::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::getStubForToString()`](api:SilverStripe\Dev\Constraint\SSListContains::getStubForToString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContains::toString()`](api:SilverStripe\Dev\Constraint\SSListContains::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::evaluate()`](api:SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::toString()`](api:SilverStripe\Dev\Constraint\SSListContainsOnlyMatchingItems::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\Constraint\ViewableDataContains::evaluate()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::evaluate()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Dev\Constraint\ViewableDataContains::toString()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::toString()) from dynamic to `string` -- Changed return type for [`SilverStripe\Dev\DevBuildController::build()`](api:SilverStripe\Dev\DevBuildController::build()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Dev\FunctionalTest::setUp()`](api:SilverStripe\Dev\FunctionalTest::setUp()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Dev\FunctionalTest::tearDown()`](api:SilverStripe\Dev\FunctionalTest::tearDown()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::setUp()`](api:SilverStripe\Dev\SapphireTest::setUp()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::setUpBeforeClass()`](api:SilverStripe\Dev\SapphireTest::setUpBeforeClass()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::tearDown()`](api:SilverStripe\Dev\SapphireTest::tearDown()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\SapphireTest::tearDownAfterClass()`](api:SilverStripe\Dev\SapphireTest::tearDownAfterClass()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestMailer::clearEmails()`](api:SilverStripe\Dev\TestMailer::clearEmails()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) from dynamic to `array|null` -- Changed return type for [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) from dynamic to `void` -- Changed return type for [`SilverStripe\Dev\TestSession::lastPage()`](api:SilverStripe\Dev\TestSession::lastPage()) from dynamic to `Symfony\Component\DomCrawler\Crawler` -- Changed return type for [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField)`|bool` -- Changed return type for [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField)`|bool` -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::getAjaxErrorResponse()`](api:SilverStripe\Forms\FormRequestHandler::getAjaxErrorResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::getValidationErrorResponse()`](api:SilverStripe\Forms\FormRequestHandler::getValidationErrorResponse()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Forms\FormRequestHandler::redirectBackToForm()`](api:SilverStripe\Forms\FormRequestHandler::redirectBackToForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()) from dynamic to `bool` -- Changed return type for [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) from dynamic to `Symfony\Component\Translation\MessageCatalogue` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::getDefaultFormatter()`](api:SilverStripe\Logging\HTTPOutputHandler::getDefaultFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::getFormatter()`](api:SilverStripe\Logging\HTTPOutputHandler::getFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`SilverStripe\Logging\HTTPOutputHandler::write()`](api:SilverStripe\Logging\HTTPOutputHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\Logging\PreformattedEchoHandler::write()`](api:SilverStripe\Logging\PreformattedEchoHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ArrayList::count()`](api:SilverStripe\ORM\ArrayList::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\ArrayList::getIterator()`](api:SilverStripe\ORM\ArrayList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetExists()`](api:SilverStripe\ORM\ArrayList::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetGet()`](api:SilverStripe\ORM\ArrayList::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ArrayList::offsetUnset()`](api:SilverStripe\ORM\ArrayList::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\Connect\Database::transactionEnd()`](api:SilverStripe\ORM\Connect\Database::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\MySQLDatabase::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\Connect\NullDatabase::transactionEnd()`](api:SilverStripe\ORM\Connect\NullDatabase::transactionEnd()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\ORM\DataList::count()`](api:SilverStripe\ORM\DataList::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\DataList::getIterator()`](api:SilverStripe\ORM\DataList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataList::offsetExists()`](api:SilverStripe\ORM\DataList::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\DataList::offsetGet()`](api:SilverStripe\ORM\DataList::offsetGet()) from dynamic to [`SilverStripe\ORM\DataObject`](api:SilverStripe\ORM\DataObject)`|null` -- Changed return type for [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\DataList::offsetUnset()`](api:SilverStripe\ORM\DataList::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\DataList::sort()`](api:SilverStripe\ORM\DataList::sort()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) from dynamic to `static` -- Changed return type for [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) from dynamic to [`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::Count()`](api:SilverStripe\ORM\ListDecorator::Count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\ListDecorator::getIterator()`](api:SilverStripe\ORM\ListDecorator::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\ListDecorator::getList()`](api:SilverStripe\ORM\ListDecorator::getList()) from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetExists()`](api:SilverStripe\ORM\ListDecorator::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetGet()`](api:SilverStripe\ORM\ListDecorator::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ListDecorator::offsetUnset()`](api:SilverStripe\ORM\ListDecorator::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\ListDecorator::setList()`](api:SilverStripe\ORM\ListDecorator::setList()) from dynamic to `self` -- Changed return type for [`SilverStripe\ORM\Map::count()`](api:SilverStripe\ORM\Map::count()) from dynamic to `int` -- Changed return type for [`SilverStripe\ORM\Map::getIterator()`](api:SilverStripe\ORM\Map::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\Map::offsetExists()`](api:SilverStripe\ORM\Map::offsetExists()) from dynamic to `bool` -- Changed return type for [`SilverStripe\ORM\Map::offsetGet()`](api:SilverStripe\ORM\Map::offsetGet()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\Map::offsetUnset()`](api:SilverStripe\ORM\Map::offsetUnset()) from dynamic to `void` -- Changed return type for [`SilverStripe\ORM\PaginatedList::getIterator()`](api:SilverStripe\ORM\PaginatedList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\ORM\UnsavedRelationList::getIterator()`](api:SilverStripe\ORM\UnsavedRelationList::getIterator()) from dynamic to `Traversable` -- Changed return type for [`SilverStripe\Security\Member::isPasswordExpired()`](api:SilverStripe\Security\Member::isPasswordExpired()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Security\Member::mapInCMSGroups()`](api:SilverStripe\Security\Member::mapInCMSGroups()) from dynamic to [`SilverStripe\ORM\Map`](api:SilverStripe\ORM\Map) -- Changed return type for [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\Security\Security::permissionFailure()`](api:SilverStripe\Security\Security::permissionFailure()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\View\ViewableData::getIterator()`](api:SilverStripe\View\ViewableData::getIterator()) from dynamic to `Traversable` -- Changed parameter type in [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Controller::redirect()`](api:SilverStripe\Control\Controller::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\Controller::setRequest()`](api:SilverStripe\Control\Controller::setRequest()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Director::absoluteURL()`](api:SilverStripe\Control\Director::absoluteURL()) for `$relativeParent` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$from` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$to` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$subject` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$body` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$cc` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$bcc` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::__construct()`](api:SilverStripe\Control\Email\Email::__construct()) for `$returnPath` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$alias` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachment()`](api:SilverStripe\Control\Email\Email::addAttachment()) for `$mime` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addAttachmentFromData()`](api:SilverStripe\Control\Email\Email::addAttachmentFromData()) for `$mime` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) for `$nameOrData` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\Email\Email::is_valid_address()`](api:SilverStripe\Control\Email\Email::is_valid_address()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) for `$email` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::obfuscate()`](api:SilverStripe\Control\Email\Email::obfuscate()) for `$method` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::removeData()`](api:SilverStripe\Control\Email\Email::removeData()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBCC()`](api:SilverStripe\Control\Email\Email::setBCC()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setBody()`](api:SilverStripe\Control\Email\Email::setBody()) for `$body` from dynamic to `Symfony\Component\Mime\Part\AbstractPart|string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setCC()`](api:SilverStripe\Control\Email\Email::setCC()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setData()`](api:SilverStripe\Control\Email\Email::setData()) for `$data` from dynamic to [`SilverStripe\View\ViewableData`](api:SilverStripe\View\ViewableData)`|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setFrom()`](api:SilverStripe\Control\Email\Email::setFrom()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setHTMLTemplate()`](api:SilverStripe\Control\Email\Email::setHTMLTemplate()) for `$template` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setPlainTemplate()`](api:SilverStripe\Control\Email\Email::setPlainTemplate()) for `$template` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setPriority()`](api:SilverStripe\Control\Email\Email::setPriority()) for `$priority` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReplyTo()`](api:SilverStripe\Control\Email\Email::setReplyTo()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setReturnPath()`](api:SilverStripe\Control\Email\Email::setReturnPath()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) for `$address` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSender()`](api:SilverStripe\Control\Email\Email::setSender()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setSubject()`](api:SilverStripe\Control\Email\Email::setSubject()) for `$subject` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) for `$address` from dynamic to `string|array` -- Changed parameter type in [`SilverStripe\Control\Email\Email::setTo()`](api:SilverStripe\Control\Email\Email::setTo()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetExists()`](api:SilverStripe\Control\HTTPRequest::offsetExists()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetGet()`](api:SilverStripe\Control\HTTPRequest::offsetGet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetSet()`](api:SilverStripe\Control\HTTPRequest::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPRequest::offsetUnset()`](api:SilverStripe\Control\HTTPRequest::offsetUnset()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) for `$dest` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\HTTPResponse::redirect()`](api:SilverStripe\Control\HTTPResponse::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\PjaxResponseNegotiator::__construct()`](api:SilverStripe\Control\PjaxResponseNegotiator::__construct()) for `$response` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Control\PjaxResponseNegotiator::setResponse()`](api:SilverStripe\Control\PjaxResponseNegotiator::setResponse()) for `$response` from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) for `$url` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Control\RequestHandler::redirect()`](api:SilverStripe\Control\RequestHandler::redirect()) for `$code` from dynamic to `int` -- Changed parameter type in [`SilverStripe\Control\RequestHandler::setRequest()`](api:SilverStripe\Control\RequestHandler::setRequest()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) for `$class` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Core\Cache\DefaultCacheFactory::createCache()`](api:SilverStripe\Core\Cache\DefaultCacheFactory::createCache()) for `$args` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Core\Injector\Injector::has()`](api:SilverStripe\Core\Injector\Injector::has()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\Constraint\SSListContains::__construct()`](api:SilverStripe\Dev\Constraint\SSListContains::__construct()) for `$matches` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\Constraint\ViewableDataContains::__construct()`](api:SilverStripe\Dev\Constraint\ViewableDataContains::__construct()) for `$match` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\DevBuildController::build()`](api:SilverStripe\Dev\DevBuildController::build()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$formID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$button` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\FunctionalTest::submitForm()`](api:SilverStripe\Dev\FunctionalTest::submitForm()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$to` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$from` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$subject` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::findEmail()`](api:SilverStripe\Dev\TestMailer::findEmail()) for `$content` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) for `$message` from dynamic to `Symfony\Component\Mime\RawMessage` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$formID` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$button` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Dev\TestSession::submitForm()`](api:SilverStripe\Dev\TestSession::submitForm()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$item` from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField) -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertAfter()`](api:SilverStripe\Forms\FieldList::insertAfter()) for `$appendIfMissing` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$item` from dynamic to [`SilverStripe\Forms\FormField`](api:SilverStripe\Forms\FormField) -- Changed parameter type in [`SilverStripe\Forms\FieldList::insertBefore()`](api:SilverStripe\Forms\FieldList::insertBefore()) for `$appendIfMissing` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()`](api:SilverStripe\i18n\Messages\Symfony\FlushInvalidatedResource::isFresh()) for `$timestamp` from dynamic to `int` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$resource` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$locale` from dynamic to `string` -- Changed parameter type in [`SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()`](api:SilverStripe\i18n\Messages\Symfony\ModuleYamlLoader::load()) for `$domain` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Logging\DebugViewFriendlyErrorFormatter::format()`](api:SilverStripe\Logging\DebugViewFriendlyErrorFormatter::format()) for `$record` from `array` to `array|Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\DetailedErrorFormatter::format()`](api:SilverStripe\Logging\DetailedErrorFormatter::format()) for `$record` from `array` to `array|Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\HTTPOutputHandler::write()`](api:SilverStripe\Logging\HTTPOutputHandler::write()) for `$record` from `array` to `Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\Logging\PreformattedEchoHandler::write()`](api:SilverStripe\Logging\PreformattedEchoHandler::write()) for `$record` from `array` to `Monolog\LogRecord` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::limit()`](api:SilverStripe\ORM\ArrayList::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetExists()`](api:SilverStripe\ORM\ArrayList::offsetExists()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetGet()`](api:SilverStripe\ORM\ArrayList::offsetGet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetSet()`](api:SilverStripe\ORM\ArrayList::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ArrayList::offsetUnset()`](api:SilverStripe\ORM\ArrayList::offsetUnset()) for `$offset` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetExists()`](api:SilverStripe\ORM\DataList::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetGet()`](api:SilverStripe\ORM\DataList::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetSet()`](api:SilverStripe\ORM\DataList::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataList::offsetUnset()`](api:SilverStripe\ORM\DataList::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\ORM\DataObject::duplicate()`](api:SilverStripe\ORM\DataObject::duplicate()) for `$relations` from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) for `$limit` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\DataQuery::limit()`](api:SilverStripe\ORM\DataQuery::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::__construct()`](api:SilverStripe\ORM\ListDecorator::__construct()) for `$list` from [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List) to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) for `$length` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) for `$offset` from dynamic to `int` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetExists()`](api:SilverStripe\ORM\ListDecorator::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetGet()`](api:SilverStripe\ORM\ListDecorator::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetSet()`](api:SilverStripe\ORM\ListDecorator::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::offsetUnset()`](api:SilverStripe\ORM\ListDecorator::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\ListDecorator::setList()`](api:SilverStripe\ORM\ListDecorator::setList()) for `$list` from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)|[`SilverStripe\ORM\Sortable`](api:SilverStripe\ORM\Sortable)|[`SilverStripe\ORM\Filterable`](api:SilverStripe\ORM\Filterable)|[`SilverStripe\ORM\Limitable`](api:SilverStripe\ORM\Limitable) -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$joinClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$localKey` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$foreignKey` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$foreignClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()`](api:SilverStripe\ORM\ManyManyThroughQueryManipulator::__construct()) for `$parentClass` from dynamic to `string` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetExists()`](api:SilverStripe\ORM\Map::offsetExists()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetGet()`](api:SilverStripe\ORM\Map::offsetGet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetSet()`](api:SilverStripe\ORM\Map::offsetSet()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\ORM\Map::offsetUnset()`](api:SilverStripe\ORM\Map::offsetUnset()) for `$key` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Security\Member::mapInCMSGroups()`](api:SilverStripe\Security\Member::mapInCMSGroups()) for `$groups` from dynamic to [`SilverStripe\ORM\SS_List`](api:SilverStripe\ORM\SS_List)`|array|null` -- Changed parameter type in [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()`](api:SilverStripe\Security\MemberAuthenticator\LostPasswordHandler::forgotPassword()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) -- Changed parameter name in [`SilverStripe\Control\Email\Email::addData()`](api:SilverStripe\Control\Email\Email::addData()) from `$name` to `$nameOrData` -- Changed parameter name in [`SilverStripe\Core\Extensible::extend()`](api:SilverStripe\Core\Extensible::extend()) from `$a1` to `$arguments` and modified it to accept variable arguments using the splat operator -- Changed parameter name in [`SilverStripe\Core\Extensible::invokeWithExtensions()`](api:SilverStripe\Core\Extensible::invokeWithExtensions()) from `$a1` to `$arguments` and modified it to accept variable arguments using the splat operator -- Changed parameter name in [`SilverStripe\Dev\TestMailer::send()`](api:SilverStripe\Dev\TestMailer::send()) from `$email` to `$message` -- Changed parameter name in [`SilverStripe\ORM\DataList::limit()`](api:SilverStripe\ORM\DataList::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\ORM\DataObject::get_one()`](api:SilverStripe\ORM\DataObject::get_one()) from `$orderby` to `$sort` -- Changed parameter name in [`SilverStripe\ORM\Limitable::limit()`](api:SilverStripe\ORM\Limitable::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\ORM\ListDecorator::limit()`](api:SilverStripe\ORM\ListDecorator::limit()) from `$limit` to `$length` -- Changed parameter name in [`SilverStripe\View\Parsers\HTMLValue::setContent()`](api:SilverStripe\View\Parsers\HTMLValue::setContent()) from `$fragment` to `$content` -- Changed parameter name in [`SilverStripe\View\ViewableData::cachedCall()`](api:SilverStripe\View\ViewableData::cachedCall()) from `$field` to `$fieldName` -- Changed parameter name in [`SilverStripe\View\ViewableData_Customised::cachedCall()`](api:SilverStripe\View\ViewableData_Customised::cachedCall()) from `$field` to `$fieldName` - -#### `silverstripe/fulltextsearch` - -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_MySQLDatabase` -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_PostgreSQLDatabase` -- Removed deprecated class `SilverStripe\FullTextSearch\Search\Captures\SearchManipulateCapture_SQLite3Database` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::exclude()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::filter()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::fuzzysearch()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::inClass()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::limit()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::page()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::search()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery::start()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range::end()` -- Removed deprecated method `SilverStripe\FullTextSearch\Search\Queries\SearchQuery_Range::start()` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::current()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::current()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::key()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::key()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::next()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::rewind()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::valid()`](api:SilverStripe\FullTextSearch\Utils\CombinationsArrayIterator::valid()) from dynamic to `bool` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()`](api:SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::current()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::current()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::key()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::key()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::next()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::next()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::rewind()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::rewind()) from dynamic to `void` -- Changed return type for [`SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::valid()`](api:SilverStripe\FullTextSearch\Utils\MultipleArrayIterator::valid()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()`](api:SilverStripe\FullTextSearch\Utils\Logging\QueuedJobLogHandler::write()) for `$record` from `array` to `Monolog\LogRecord` - -#### `silverstripe/graphql` - -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::alert()`](api:SilverStripe\GraphQL\Schema\Logger::alert()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::critical()`](api:SilverStripe\GraphQL\Schema\Logger::critical()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::debug()`](api:SilverStripe\GraphQL\Schema\Logger::debug()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::emergency()`](api:SilverStripe\GraphQL\Schema\Logger::emergency()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::error()`](api:SilverStripe\GraphQL\Schema\Logger::error()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::info()`](api:SilverStripe\GraphQL\Schema\Logger::info()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::log()`](api:SilverStripe\GraphQL\Schema\Logger::log()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::notice()`](api:SilverStripe\GraphQL\Schema\Logger::notice()) from dynamic to `void` -- Changed return type for [`SilverStripe\GraphQL\Schema\Logger::warning()`](api:SilverStripe\GraphQL\Schema\Logger::warning()) from dynamic to `void` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::alert()`](api:SilverStripe\GraphQL\Schema\Logger::alert()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::critical()`](api:SilverStripe\GraphQL\Schema\Logger::critical()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::debug()`](api:SilverStripe\GraphQL\Schema\Logger::debug()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::emergency()`](api:SilverStripe\GraphQL\Schema\Logger::emergency()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::error()`](api:SilverStripe\GraphQL\Schema\Logger::error()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::info()`](api:SilverStripe\GraphQL\Schema\Logger::info()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::log()`](api:SilverStripe\GraphQL\Schema\Logger::log()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::notice()`](api:SilverStripe\GraphQL\Schema\Logger::notice()) for `$message` from dynamic to `Stringable|string` -- Changed parameter type in [`SilverStripe\GraphQL\Schema\Logger::warning()`](api:SilverStripe\GraphQL\Schema\Logger::warning()) for `$message` from dynamic to `Stringable|string` - -#### `silverstripe/hybridsessions` - -- Removed deprecated class `SilverStripe\HybridSessions\Crypto\McryptCrypto` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::close()`](api:SilverStripe\HybridSessions\HybridSession::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::destroy()`](api:SilverStripe\HybridSessions\HybridSession::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::gc()`](api:SilverStripe\HybridSessions\HybridSession::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::getHandlers()`](api:SilverStripe\HybridSessions\HybridSession::getHandlers()) from dynamic to `array` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::is_enabled()`](api:SilverStripe\HybridSessions\HybridSession::is_enabled()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::read()`](api:SilverStripe\HybridSessions\HybridSession::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::setHandlers()`](api:SilverStripe\HybridSessions\HybridSession::setHandlers()) from dynamic to `static` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::setKey()`](api:SilverStripe\HybridSessions\HybridSession::setKey()) from dynamic to `void` -- Changed return type for [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::getKey()) from dynamic to `string|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getLifetime()`](api:SilverStripe\HybridSessions\Store\BaseStore::getLifetime()) from dynamic to `int` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::getNow()`](api:SilverStripe\HybridSessions\Store\BaseStore::getNow()) from dynamic to `int` -- Changed return type for [`SilverStripe\HybridSessions\Store\BaseStore::setKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::setKey()) from dynamic to `void` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::canWrite()`](api:SilverStripe\HybridSessions\Store\CookieStore::canWrite()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::close()`](api:SilverStripe\HybridSessions\Store\CookieStore::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::destroy()`](api:SilverStripe\HybridSessions\Store\CookieStore::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::gc()`](api:SilverStripe\HybridSessions\Store\CookieStore::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::getCrypto()`](api:SilverStripe\HybridSessions\Store\CookieStore::getCrypto()) from dynamic to [`SilverStripe\HybridSessions\Crypto\CryptoHandler`](api:SilverStripe\HybridSessions\Crypto\CryptoHandler)`|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::read()`](api:SilverStripe\HybridSessions\Store\CookieStore::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()) from dynamic to `string|null` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()) from dynamic to `string` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::close()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::close()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::destroy()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::destroy()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::gc()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::gc()) from dynamic to `int|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::isDatabaseReady()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::isDatabaseReady()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) from dynamic to `bool` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::read()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::read()) from dynamic to `string|false` -- Changed return type for [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) from dynamic to `bool` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::destroy()`](api:SilverStripe\HybridSessions\HybridSession::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::gc()`](api:SilverStripe\HybridSessions\HybridSession::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::init()`](api:SilverStripe\HybridSessions\HybridSession::init()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::open()`](api:SilverStripe\HybridSessions\HybridSession::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::read()`](api:SilverStripe\HybridSessions\HybridSession::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::setHandlers()`](api:SilverStripe\HybridSessions\HybridSession::setHandlers()) for `$handlers` from dynamic to `array` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::setKey()`](api:SilverStripe\HybridSessions\HybridSession::setKey()) for `$key` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\HybridSession::write()`](api:SilverStripe\HybridSessions\HybridSession::write()) for `$session_data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\BaseStore::setKey()`](api:SilverStripe\HybridSessions\Store\BaseStore::setKey()) for `$key` from dynamic to `string|null` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::destroy()`](api:SilverStripe\HybridSessions\Store\CookieStore::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::gc()`](api:SilverStripe\HybridSessions\Store\CookieStore::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::getCrypto()`](api:SilverStripe\HybridSessions\Store\CookieStore::getCrypto()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::open()`](api:SilverStripe\HybridSessions\Store\CookieStore::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::read()`](api:SilverStripe\HybridSessions\Store\CookieStore::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\CookieStore::write()`](api:SilverStripe\HybridSessions\Store\CookieStore::write()) for `$session_data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonDecode()) for `$text` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::binaryDataJsonEncode()) for `$data` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::destroy()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::destroy()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::gc()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::gc()) for `$maxlifetime` from dynamic to `int` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) for `$save_path` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::open()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::open()) for `$name` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::read()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::read()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) for `$session_id` from dynamic to `string` -- Changed parameter type in [`SilverStripe\HybridSessions\Store\DatabaseStore::write()`](api:SilverStripe\HybridSessions\Store\DatabaseStore::write()) for `$session_data` from dynamic to `string` - -#### `silverstripe/ldap` - -- Removed deprecated method `SilverStripe\LDAP\Extensions\LDAPMemberExtension::memberLoggedIn()` - -#### `silverstripe/mfa` - -- Removed deprecated method `SilverStripe\MFA\Report\EnabledMembers::formatDefaultMethodColumn()` -- Removed deprecated method `SilverStripe\MFA\Report\EnabledMembers::formatMethodsColumn()` -- Removed deprecated method `SilverStripe\MFA\Store\SessionStore::serialize()` -- Removed deprecated method `SilverStripe\MFA\Store\SessionStore::unserialize()` -- Changed return type for [`SilverStripe\MFA\RequestHandler\BaseHandlerTrait::getSudoModeService()`](api:SilverStripe\MFA\RequestHandler\BaseHandlerTrait::getSudoModeService()) from [`SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface`](api:SilverStripe\SecurityExtensions\Service\SudoModeServiceInterface) to [`SilverStripe\Security\SudoMode\SudoModeServiceInterface`](api:SilverStripe\Security\SudoMode\SudoModeServiceInterface) - -#### `silverstripe/recipe-plugin` - -- Removed deprecated method `SilverStripe\RecipePlugin\RecipeInstaller::rewriteFilePath()` - -#### `silverstripe/registry` - -- Removed deprecated parameter in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) named `$request` -- Changed return type for [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\Registry\RegistryAdmin::import()`](api:SilverStripe\Registry\RegistryAdmin::import()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/securityreport` - -- Removed deprecated class `SilverStripe\SecurityReport\Subsites\SubsiteSecurityReport` - -#### `silverstripe/sharedraftcontent` - -- Removed deprecated method `SilverStripe\ShareDraftContent\Controllers\ShareDraftController::getRenderedPageByURLSegment()` - -#### `silverstripe/subsites` - -- Removed deprecated class `SilverStripe\Subsites\Tasks\SubsiteMigrateFileTask` -- Removed deprecated method `SilverStripe\Subsites\Extensions\SiteTreeSubsites::alternatePreviewLink()` -- Removed deprecated method `SilverStripe\Subsites\Model\Subsite::currentSubsiteID()` -- Removed deprecated method `SilverStripe\Subsites\Reports\SubsiteReportWrapper::afterQuery()` -- Removed deprecated method `SilverStripe\Subsites\Reports\SubsiteReportWrapper::beforeQuery()` -- Removed deprecated property `SilverStripe\Subsites\Model\Subsite::$force_subsite` -- Changed return type for [`SilverStripe\Subsites\Controller\SubsiteXHRController::getResponseNegotiator()`](api:SilverStripe\Subsites\Controller\SubsiteXHRController::getResponseNegotiator()) from dynamic to [`SilverStripe\Control\PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) -- Changed return type for [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteId()) from dynamic to `int|null` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getSubsiteIdWasChanged()`](api:SilverStripe\Subsites\State\SubsiteState::getSubsiteIdWasChanged()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::getUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::getUseSessions()) from dynamic to `bool|null` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::reset()`](api:SilverStripe\Subsites\State\SubsiteState::reset()) from dynamic to `void` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::resetState()`](api:SilverStripe\Subsites\State\SubsiteState::resetState()) from dynamic to `void` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::setSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::setSubsiteId()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::setUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::setUseSessions()) from dynamic to `static` -- Changed return type for [`SilverStripe\Subsites\State\SubsiteState::withState()`](api:SilverStripe\Subsites\State\SubsiteState::withState()) from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\Subsites\Model\Subsite::duplicate()`](api:SilverStripe\Subsites\Model\Subsite::duplicate()) for `$manyMany` from dynamic to `array|null` -- Changed parameter type in [`SilverStripe\Subsites\State\SubsiteState::setSubsiteId()`](api:SilverStripe\Subsites\State\SubsiteState::setSubsiteId()) for `$id` from dynamic to `int|null` -- Changed parameter type in [`SilverStripe\Subsites\State\SubsiteState::setUseSessions()`](api:SilverStripe\Subsites\State\SubsiteState::setUseSessions()) for `$useSessions` from dynamic to `bool|null` - -#### `silverstripe/tagfield` - -- Removed deprecated config `SilverStripe\TagField\StringTagField.immediate_write_enabled` - -#### `silverstripe/userforms` - -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField::EffectiveDisplayRules()` -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField::getEscapedTitle()` -- Removed deprecated method `SilverStripe\UserForms\Model\EditableFormField\EditableOption::getEscapedTitle()` -- Changed return type for [`SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()`](api:SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) from dynamic to `static` -- Changed parameter type in [`SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()`](api:SilverStripe\UserForms\Control\UserDefinedFormAdmin::index()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) for `$doWrite` from dynamic to `bool` -- Changed parameter type in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) for `$relations` from dynamic to `array|null` -- Changed parameter name in [`SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()`](api:SilverStripe\UserForms\Model\EditableFormField\EditableMultipleOptionField::duplicate()) from `$manyMany` to `$relations` - -#### `silverstripe/vendor-plugin` - -- Removed deprecated class `SilverStripe\VendorPlugin\VendorModule` -- Removed deprecated method `SilverStripe\VendorPlugin\Console\VendorExposeCommand::getAllModules()` -- Removed deprecated method `SilverStripe\VendorPlugin\Library::installedIntoVendor()` -- Removed deprecated method `SilverStripe\VendorPlugin\Library::publicPathExists()` -- Removed deprecated method `SilverStripe\VendorPlugin\VendorPlugin::getVendorModule()` -- Removed deprecated constant `SilverStripe\VendorPlugin\Library::RESOURCES_PATH` -- Removed deprecated constant `SilverStripe\VendorPlugin\VendorPlugin::MODULE_FILTER` -- Removed deprecated constant `SilverStripe\VendorPlugin\VendorPlugin::MODULE_TYPE` - -#### `silverstripe/versioned` - -- Removed deprecated method `SilverStripe\Versioned\Versioned::allVersions()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::doPublish()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::doRollbackTo()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::getLastEditedForVersion()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::migrateVersion()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRevertToLive()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::onAfterRollback()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::publish()` -- Removed deprecated method `SilverStripe\Versioned\Versioned::VersionsList()` -- Removed deprecated parameter in [`SilverStripe\Versioned\Versioned::copyVersionToStage()`](api:SilverStripe\Versioned\Versioned::copyVersionToStage()) named `$createNewVersion` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::clear()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::clear()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()) from dynamic to `mixed` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()) from dynamic to `iterable` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::prune()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::prune()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) from dynamic to `bool` -- Changed return type for [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()) from dynamic to `bool` -- [`SilverStripe\Versioned\Versioned::__construct()`](api:SilverStripe\Versioned\Versioned::__construct()) now explicitly only accepts `$mode` as a single argument. -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::delete()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::deleteMultiple()) for `$keys` from dynamic to `iterable` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::get()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::getMultiple()) for `$keys` from dynamic to `iterable` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::has()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) for `$key` from dynamic to `string` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::set()) for `$value` from dynamic to `mixed` -- Changed parameter type in [`SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()`](api:SilverStripe\Versioned\Caching\ProxyCacheAdapter::setMultiple()) for `$items` from dynamic to `iterable` - -#### `silverstripe/versioned-admin` - -- Removed deprecated class `SilverStripe\VersionedAdmin\Controllers\HistoryControllerFactory` -- Removed deprecated class `SilverStripe\VersionedAdmin\Extensions\CMSMainExtension` -- Changed return type for [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::generateSchemaForForm()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::generateSchemaForForm()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed return type for [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) from dynamic to [`SilverStripe\Control\HTTPResponse`](api:SilverStripe\Control\HTTPResponse) -- Changed parameter type in [`SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()`](api:SilverStripe\VersionedAdmin\Controllers\HistoryViewerController::schema()) for `$request` from dynamic to [`SilverStripe\Control\HTTPRequest`](api:SilverStripe\Control\HTTPRequest) -- Changed parameter type in [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) for `$data` from dynamic to `array` -- Changed parameter type in [`SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()`](api:SilverStripe\VersionedAdmin\Extensions\ArchiveRestoreAction::doRestore()) for `$form` from dynamic to [`SilverStripe\Forms\Form`](api:SilverStripe\Forms\Form) - -#### `silverstripe/versionfeed` - -- Removed deprecated method `SilverStripe\VersionFeed\VersionFeed::getDiffedChanges()` - -#### `silverstripe/webauthn-authenticator` - -- Removed deprecated method `SilverStripe\WebAuthn\BaseHandlerTrait::getDecoder()` -- Removed deprecated method `SilverStripe\WebAuthn\CredentialRepository::serialize()` -- Removed deprecated method `SilverStripe\WebAuthn\CredentialRepository::unserialize()` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationObjectLoader()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationObjectLoader()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationStatementSupportManager()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getAttestationStatementSupportManager()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\BaseHandlerTrait::getPublicKeyCredentialLoader()`](api:SilverStripe\WebAuthn\BaseHandlerTrait::getPublicKeyCredentialLoader()) named `$decoder` -- Removed deprecated parameter in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) named `$store` -- Changed parameter type in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) for `$store` from `CBOR\Decoder` to [`SilverStripe\MFA\Store\StoreInterface`](api:SilverStripe\MFA\Store\StoreInterface) -- Changed parameter name in [`SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()`](api:SilverStripe\WebAuthn\VerifyHandler::getAuthenticatorAssertionResponseValidator()) from `$decoder` to `$store` - -#### `symbiote/silverstripe-advancedworkflow` - -- Removed deprecated property `Symbiote\AdvancedWorkflow\Extensions\WorkflowEmbargoExpiryExtension::$showTimePicker` - -#### `symbiote/silverstripe-queuedjobs` - -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::getDefaultFormatter()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::getDefaultFormatter()) from dynamic to `Monolog\Formatter\FormatterInterface` -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::handleBatch()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::handleBatch()) from dynamic to `void` -- Changed return type for [`Symbiote\QueuedJobs\Services\QueuedJobHandler::write()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::write()) from dynamic to `void` -- Changed parameter type in [`Symbiote\QueuedJobs\Services\QueuedJobHandler::write()`](api:Symbiote\QueuedJobs\Services\QueuedJobHandler::write()) for `$record` from `array` to `Monolog\LogRecord` - -#### `tractorcow/silverstripe-fluent` - -- Removed deprecated method `TractorCow\Fluent\Extension\FluentExtension::getLinkingMode()` -- Removed deprecated method `TractorCow\Fluent\Extension\FluentExtension::LocaleLink()` - -## Change Log - -### Features and enhancements - -- silverstripe/installer (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-23 [c9bfb0e](https://github.com/silverstripe/silverstripe-installer/commit/c9bfb0e2a6d739628ba457e7594b35836588ff7a) Remove duplicated configuration (Guy Sartorelli) - - 2022-08-05 [1f718dc](https://github.com/silverstripe/silverstripe-installer/commit/1f718dcf544ba6068b27442d2a59d29e99c4a7dc) Remove resources-dir config from composer.json (#330) (Guy Sartorelli) - -- silverstripe/vendor-plugin (1.7.0 -> 2.0.0) - - 2022-08-03 [b9ca004](https://github.com/silverstripe/vendor-plugin/commit/b9ca004d85f14f01e61240632cef72806b57c5f1) Set the default resources dir to "_resources" (Guy Sartorelli) - -- silverstripe/recipe-cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-08-05 [b61004e](https://github.com/silverstripe/recipe-cms/commit/b61004ebe1a6fb6190f8ba9f039b798a59d70d5a) Remove resources-dir config from composer.json (#59) (Guy Sartorelli) - -- silverstripe/recipe-core (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-12-15 [9745b0d](https://github.com/silverstripe/recipe-core/commit/9745b0da2e7048a71172551e7ae558e750a12093) Pull .htaccess file when required as a dependency (#83) (Guy Sartorelli) - - 2022-08-05 [e6fb2d6](https://github.com/silverstripe/recipe-core/commit/e6fb2d67a32078fb6c404004891768126a7ee64c) Remove resources-dir config from composer.json (#76) (Guy Sartorelli) - -- silverstripe/assets (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-02-23 [28cd27e](https://github.com/silverstripe/silverstripe-assets/commit/28cd27e68f2726c5a2df7637beb1f0cb20ef3418) Use the optimal file resolution strat by default (Guy Sartorelli) - - 2022-12-12 [dfc3919](https://github.com/silverstripe/silverstripe-assets/commit/dfc391912e3120a618e7213c5c282c961dd2bfb4) PHP 8.2 support (Steve Boyd) - - 2022-10-03 [a730c06](https://github.com/silverstripe/silverstripe-assets/commit/a730c06283e19d5e241adb2a774c08dae48adee9) Check canViewFile permissions before automatically grant Session access to the file (#517) (Sabina Talipova) - -- silverstripe/framework (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-21 [0075bf6e4](https://github.com/silverstripe/silverstripe-framework/commit/0075bf6e49973ac357a56a55d1053b86497fe98b) Access dynamic data inside ViewableData (Steve Boyd) - - 2023-02-08 [9a5ccdba5](https://github.com/silverstripe/silverstripe-framework/commit/9a5ccdba51db811926ea9503a285adc89fa24976) Protect against possible unexpected values (Guy Sartorelli) - - 2023-01-30 [af72f4ada](https://github.com/silverstripe/silverstripe-framework/commit/af72f4adade243b25d1b43c47d292861a5820ba7) Add translations from security-extensions module (Guy Sartorelli) - - 2023-01-29 [fecb7ba4d](https://github.com/silverstripe/silverstripe-framework/commit/fecb7ba4d8341e21c8d95d6cfe7bbf1095281645) Add sudo mode service (Guy Sartorelli) - - 2023-01-29 [0f4014650](https://github.com/silverstripe/silverstripe-framework/commit/0f4014650c33b08264d4ed529953023d7f32457f) Add easy way to dismiss all toasts in behat (#10661) (Guy Sartorelli) - - 2023-01-26 [8ddedb038](https://github.com/silverstripe/silverstripe-framework/commit/8ddedb038ea0866917ea7b39a853a6ab21a2373c) Allow admins to require password reset for members (Guy Sartorelli) - - 2023-01-18 [d1e0e1e30](https://github.com/silverstripe/silverstripe-framework/commit/d1e0e1e305d3276b8f2b1dfe8ed6af97f1274c44) Make limit method return no results when zero is provided (Maxime Rainville) - - 2023-01-17 [d7ddb0025](https://github.com/silverstripe/silverstripe-framework/commit/d7ddb00254ac21be78c3b227b59bd8bc61d9b0f9) Use masterminds/html5 for HTMLValue (Steve Boyd) - - 2023-01-17 [1a59bf50d](https://github.com/silverstripe/silverstripe-framework/commit/1a59bf50d1db6878b821e26ca84d460efb815000) Remove unused Translatable code (Steve Boyd) - - 2022-12-21 [c1a773310](https://github.com/silverstripe/silverstripe-framework/commit/c1a773310d088b22bea7ae1a6e1930050f0a33e2) PHP 8.2 support (Steve Boyd) - - 2022-11-04 [97f7be502](https://github.com/silverstripe/silverstripe-framework/commit/97f7be502fa48ad27e27fdd5dc7b34e1e1dbb914) Add extension hook for field-specific validation (Loz Calver) - - 2022-10-21 [df1d4a4b9](https://github.com/silverstripe/silverstripe-framework/commit/df1d4a4b9abe855a75bd70fb1d6c11804e545d79) Move email to data conversion to protected method (Steve Boyd) - - 2022-10-19 [2e85674cc](https://github.com/silverstripe/silverstripe-framework/commit/2e85674cccc1586b8ee7085d0d277a0528b7c918) Migrate from swiftmailer/swiftmailer to symfony/mailer (Steve Boyd) - - 2022-08-03 [ee4144fc3](https://github.com/silverstripe/silverstripe-framework/commit/ee4144fc359d3a0226c19b33420ec4a8c0269f03) Set the default resources dir to "_resources" (Guy Sartorelli) - - 2020-03-26 [a666814a8](https://github.com/silverstripe/silverstripe-framework/commit/a666814a80d7e97c43afe71ea36762c82dd1a62e) CSV BOM stripping is now handled internally by league/csv (Dan Hensby) - - 2018-10-05 [4339e4d02](https://github.com/silverstripe/silverstripe-framework/commit/4339e4d02c9b1c61140a9995dc9280f4ed68ed84) Add support for native nulls as template lookup arguments (Loz Calver) - - 2017-11-06 [156f63bce](https://github.com/silverstripe/silverstripe-framework/commit/156f63bce38a6b95d0f117eedbeb8819eb51d1b7) shorten auto-generated table names (Christopher Joe) - - 2017-01-17 [77c7552c3](https://github.com/silverstripe/silverstripe-framework/commit/77c7552c3fc2c53b08cc774c3734e3243b07c4e4) ORM’ Query is a generator-based IteratorAggregate (Sam Minnee) - - 2017-01-16 [6c136c9cf](https://github.com/silverstripe/silverstripe-framework/commit/6c136c9cf24223748db122c817b09e6cbd0e9472) Iterate ArrayList via a generator (Sam Minnee) - - 2017-01-12 [1b8f60102](https://github.com/silverstripe/silverstripe-framework/commit/1b8f601023a7a705b9fd22146e31f5addd15868a) Make DataList::getIterator a generator (Loz Calver) - -- silverstripe/admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-03-26 [e7d45a80](https://github.com/silverstripe/silverstripe-admin/commit/e7d45a8063a73ec03b05e1fb8878bb830d3f740b) Default GraphQL abstractions to gql v5 style (Guy Sartorelli) - - 2023-01-29 [8aa9b0c3](https://github.com/silverstripe/silverstripe-admin/commit/8aa9b0c3e68963f8fcfc224ed0782fdd8b6805c4) Add HOC to provide sudo mode to child components (Guy Sartorelli) - - 2023-01-29 [ec6567c0](https://github.com/silverstripe/silverstripe-admin/commit/ec6567c05e9d0988c97b725495a493260821129b) Add new circular loading react component (Guy Sartorelli) - - 2023-01-29 [3c63b6d1](https://github.com/silverstripe/silverstripe-admin/commit/3c63b6d127d12fd263c0f31d479f24d7cd15c840) Add sudo mode controller (Guy Sartorelli) - - 2023-01-26 [29f70676](https://github.com/silverstripe/silverstripe-admin/commit/29f70676d7f7544ffdeab865cf1be2bcae533bdf) Remove unnecessary JS imports. (Guy Sartorelli) - - 2023-01-20 [54b29aff](https://github.com/silverstripe/silverstripe-admin/commit/54b29affec34a8a8093914b0dba42ee070ce7c04) Allow base URL to not have trailing slash (#1438) (Guy Sartorelli) - - 2023-01-17 [dc2c4522](https://github.com/silverstripe/silverstripe-admin/commit/dc2c45222f82f6c806093edfe01f4eb7bb192f5c) Remove unused Translatable code (Steve Boyd) - - 2023-01-11 [828ef08e](https://github.com/silverstripe/silverstripe-admin/commit/828ef08e16e0e0c47fce43cfefcc68bd33b74c1f) Expose ApolloClient for other modules to use (Guy Sartorelli) - - 2023-01-09 [af2b8c82](https://github.com/silverstripe/silverstripe-admin/commit/af2b8c82256c0bd5178404bdd7b33363bf52998b) Export emotion cache provider. (Guy Sartorelli) - - 2022-09-29 [6b1496fb](https://github.com/silverstripe/silverstripe-admin/commit/6b1496fb5d897d4e1185f523c415589739f43d04) Implement our TinyMCE skin for TinyMCE 6 (Guy Sartorelli) - - 2022-09-14 [2d2985c4](https://github.com/silverstripe/silverstripe-admin/commit/2d2985c433a7f895a45c9e715b77147fb22ba1a1) Records can be made previewable with an extension (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-02-13 [2590c822](https://github.com/silverstripe/silverstripe-asset-admin/commit/2590c8229a65d5a0cf9eb5e167f92f1519c720b9) Add delete buttons for images/embeds in wysiwyg (#1331) (Guy Sartorelli) - - 2023-01-12 [447beaa0](https://github.com/silverstripe/silverstripe-asset-admin/commit/447beaa0a89c1b9cf7bd79f353d29d0fee5a408f) Allow URLs without trailing slashes (Guy Sartorelli) - - 2022-11-04 [15c4c024](https://github.com/silverstripe/silverstripe-asset-admin/commit/15c4c024a170a8ffce5d8222aece713188f4878d) Add extension hook for field-specific validation (Loz Calver) - - 2022-08-31 [6c9f9ecc](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c9f9eccde979b4aa0943c8ea99f75ef725bf461) Don't call deprecated constructExtensions method (#1290) (Guy Sartorelli) - -- silverstripe/campaign-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-01-12 [a2a95ae](https://github.com/silverstripe/silverstripe-campaign-admin/commit/a2a95aec84051ac0044dfd9b2a9d203b63b1b098) Allow URLs without trailing slashes (Guy Sartorelli) - -- silverstripe/versioned-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-03-28 [20588d7](https://github.com/silverstripe/silverstripe-versioned-admin/commit/20588d72c53682aa1ec29e3fc8bd7873c75b4a2d) Do not use deprecated lifecycle methods (Steve Boyd) - - 2022-09-01 [8ee61fd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/8ee61fd184bbcc7c9584af7baeceeca0325af2de) Remove deprecated HistoryControllerFactory. (#251) (Guy Sartorelli) - -- silverstripe/cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-01-18 [b57d557b](https://github.com/silverstripe/silverstripe-cms/commit/b57d557bc7a6529e58ad40137ae5f87dd564743d) Remove unused Translatable code (Steve Boyd) - - 2023-01-11 [ef4122da](https://github.com/silverstripe/silverstripe-cms/commit/ef4122da04ba38e5b5a563beea276fe45277adc4) Use the EmotionCssCacheProvider component (Guy Sartorelli) - - 2022-09-14 [6ff98c42](https://github.com/silverstripe/silverstripe-cms/commit/6ff98c42012c58bd790dae9eea3e8962b881f21d) Records can be made previewable via an extension (Guy Sartorelli) - - 2022-08-29 [adcea213](https://github.com/silverstripe/silverstripe-cms/commit/adcea213a27b73d57c59077349f6dad714e3f724) Remove CSS for CMSPageHistoryController. (Guy Sartorelli) - -- silverstripe/siteconfig (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-10-07 [458f5dd4](https://github.com/silverstripe/silverstripe-siteconfig/commit/458f5dd4059b05a836bfa21bce8e52bbeefbad9e) Let SiteConfig be previewable (Guy Sartorelli) - -- silverstripe/documentconverter (2.5.0-rc1 -> 3.0.0-rc1) - - 2023-01-19 [34d3c29](https://github.com/silverstripe/silverstripe-documentconverter/commit/34d3c293b059997c34884a411a6db4fcb3e61b1d) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/iframe (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-19 [ad4342f](https://github.com/silverstripe/silverstripe-iframe/commit/ad4342f1d064bbb10587f777e93be5776c7e0cb7) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/tagfield (2.11.0-rc1 -> 3.0.0-rc1) - - 2023-02-22 [8b8bd13](https://github.com/silverstripe/silverstripe-tagfield/commit/8b8bd1309710864df98f184fe54dd9a5c145c26a) Add extension hooks for field-specific validation (Loz Calver) - -- silverstripe/widgets (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-20 [28d16bf](https://github.com/silverstripe/silverstripe-widgets/commit/28d16bfdc974f8eb321140b2488237010e490ba4) Fix linting issues (Guy Sartorelli) - - 2023-01-20 [4f04dd8](https://github.com/silverstripe/silverstripe-widgets/commit/4f04dd8b9bd37c7634c7231f3e792eefc31eeb66) Use frontend build stack (Guy Sartorelli) - -- silverstripe/comments (3.10.0-rc1 -> 4.0.0-rc1) - - 2023-01-19 [71a09ea](https://github.com/silverstripe/silverstripe-comments/commit/71a09eaecacfdee3eda409e23b4270a54631307c) Update regex to most recent jQuery.validate (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (2.7.0-rc1 -> 3.0.0-rc1) - - 2023-03-14 [ec027ab](https://github.com/bringyourownideas/silverstripe-maintenance/commit/ec027ab3ff166607b5d47305af0c89c9512113c5) Work with official list of supported modules (Steve Boyd) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0-rc1) - - 2022-04-26 [ab967ee](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/ab967ee9cd8e1f56f529a575deb22b4dcf7e8bad) Use composer 2 (#62) (Steve Boyd) - -- dnadesign/silverstripe-elemental (4.11.0-rc1 -> 5.0.0-rc1) - - 2021-11-20 [57b508a](https://github.com/silverstripe/silverstripe-elemental/commit/57b508a5c688f303e57ae86e3ca3be12774839f8) Include summary in elemental area by default (Michael van Schaik) - -- silverstripe/fulltextsearch (3.12.0-rc1 -> 4.0.0-rc1) - - 2023-01-19 [723ff53](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/723ff530dd6e51060a998faf93094472781bd7a0) PHP 8.2 compatibility (Steve Boyd) - -- cwp/cwp-core (2.12.0-rc1 -> 3.0.0-rc1) - - 2023-01-19 [5887669](https://github.com/silverstripe/cwp-core/commit/588766969031a98620124e8210a77d37b7bf1f5d) PHP 8.2 compatibility (Steve Boyd) - -- silverstripe/subsites (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-02-22 [05f775a](https://github.com/silverstripe/silverstripe-subsites/commit/05f775a78dff42d679f4b7623a96c2adb8aa9859) Add extension hook for field-specific validation (Loz Calver) - - 2023-01-24 [f397ab3](https://github.com/silverstripe/silverstripe-subsites/commit/f397ab352bf28a3dd955f3a02b397f2c9c121f29) Prepare correct JS/CSS structure to use webpack (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0-beta1) - - 2022-03-24 [182c95e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/182c95e4da1cf932d53270c35fb243cda141a979) GitHub workflows setup. (Mojmir Fendek) - - 2022-03-09 [4bdabcb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4bdabcbcb3201f4f497825fb567c7501dbc33c72) Locale performance / extensibility enhancements. (Mojmir Fendek) - - 2022-02-08 [9cb3ff5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9cb3ff5afc53f871eb6fab8c1e109b6f535f1a9c) More granular permissions for GridField actions. (Mojmir Fendek) - - 2022-01-27 [708ff73](https://github.com/tractorcow-farm/silverstripe-fluent/commit/708ff73fa7246f20a988bfbfd0138c7e4d05a609) Copy to locale enhancements. (Mojmir Fendek) - - 2021-05-20 [f8f8845](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f8f88456a6917e7a715874bfc8de6e4250f27396) Locale fallback configuration enhancement. (Mojmir Fendek) - - 2021-04-22 [f5c8dce](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f5c8dcef5da29711d5766f68ea3a58897d7d1b75) Allow isolated items to appear in the CMS if conditionally queried by ID / FK explicitly (configurable) (Damian Mooyman) - - 2021-02-26 [9db534e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9db534e82e6725d6a16dd25c42687fbf80c3143f) Clickable links on page info for localisation tab. (Vivienne Tubbs) - - 2021-01-13 [2b6ca3f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2b6ca3f6a6644791588a85ecaefa292cb6f7a5a4) Initial page localisation task (for single language sites import). (Mojmir Fendek) - - 2020-11-11 [87c4652](https://github.com/tractorcow-farm/silverstripe-fluent/commit/87c46529134b5801de422438d7bf9ad6e8a03a61) If changing locales in the CMS, ensure that 404 errors redirect to the CMS home page (Damian Mooyman) - - 2020-06-22 [4363d9e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4363d9e0f8967d92b7c68582df6bb8fb9e2eba77) Localisation manager UI improvements. (Mojmir Fendek) - -- silverstripe/dynamodb (4.1.0 -> 5.0.0-rc1) - - 2023-02-13 [c96e48a](https://github.com/silverstripe/silverstripe-dynamodb/commit/c96e48ab586128ad36c0880ac6e069db3ac4162c) Replace deprecated doctrine/cache (Guy Sartorelli) - -### Bugfixes - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-12-14 [f003b8d](https://github.com/silverstripe/recipe-plugin/commit/f003b8d56d6e62e7828782f3263f9769232dcf8f) Always put public resources in a public/ dir (#31) (Guy Sartorelli) - -- silverstripe/assets (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-08 [459d421](https://github.com/silverstripe/silverstripe-assets/commit/459d421ddcb253bf86ce0904c52692781fb6cf7c) Cast absoluteUrl() argument to string (Steve Boyd) - -- silverstripe/framework (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-03-27 [84273b804](https://github.com/silverstripe/silverstripe-framework/commit/84273b80451cb85f14d5b35a40516cb93d7468bf) Remove legacy filter icon (Steve Boyd) - - 2023-03-01 [e3a94b9d1](https://github.com/silverstripe/silverstripe-framework/commit/e3a94b9d10790c66b0ac247f3dc2f258b57c0aaa) Ensure getters and setters are respected (#10708) (Guy Sartorelli) - - 2023-02-20 [e455aa5c5](https://github.com/silverstripe/silverstripe-framework/commit/e455aa5c5ef1aed8dda9f1f3fde8e829563e60e8) Handle null returns in GridFieldDetailForm_ItemRequest::getNumPages() (Steve Boyd) - - 2023-02-01 [738ca487a](https://github.com/silverstripe/silverstripe-framework/commit/738ca487ac7ebc037d9bff9d2f5b9b417797df26) Allow public extension getter methods to work (#10676) (Guy Sartorelli) - - 2023-02-01 [826028082](https://github.com/silverstripe/silverstripe-framework/commit/826028082bc1295af0a1b3969cdfdf570d13e174) Sort without specifying a table name (#10675) (Guy Sartorelli) - - 2023-01-31 [dca4e0bcb](https://github.com/silverstripe/silverstripe-framework/commit/dca4e0bcb85d71574c391895e37700674ad06521) Remove unused action from allowed_actions (#10672) (Guy Sartorelli) - - 2023-01-30 [14a449fea](https://github.com/silverstripe/silverstripe-framework/commit/14a449feaa1b142152593c3c131b34d957d46309) Don't try to access private properties/methods (Guy Sartorelli) - - 2023-01-11 [6d4542561](https://github.com/silverstripe/silverstripe-framework/commit/6d4542561bcb279a21d935095c2381baf40f8be4) Check is_callable parent methods before invoke (#10637) (Sabina Talipova) - - 2022-12-13 [700288d5c](https://github.com/silverstripe/silverstripe-framework/commit/700288d5cae473b9f6a887708220a64218438148) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-09-19 [ef8a02dfd](https://github.com/silverstripe/silverstripe-framework/commit/ef8a02dfdcbc82c82f7fe02d750a9b986101ae6d) Update config to support tinymce6 (Guy Sartorelli) - - 2022-09-13 [a2028a281](https://github.com/silverstripe/silverstripe-framework/commit/a2028a28175afc7f6af1e29e0a1f887ec25b9c55) Pass PSR6 caches to ChainAdapter (Steve Boyd) - - 2022-09-09 [e140c3786](https://github.com/silverstripe/silverstripe-framework/commit/e140c3786c96ac146127a92e08dee470c6c6682c) Ensure consistent behaviour with repeat iterations (Guy Sartorelli) - - 2022-09-08 [62ee63706](https://github.com/silverstripe/silverstripe-framework/commit/62ee63706f7d97bdd96faffed44db65b6090b280) PHP 8.1 compatability for iterators. (Guy Sartorelli) - - 2022-08-31 [89a0f59ef](https://github.com/silverstripe/silverstripe-framework/commit/89a0f59ef189e8c7b99b0f973768dc41106e0397) Remove accidental deprecation warnings. (Guy Sartorelli) - - 2022-08-17 [d55683d02](https://github.com/silverstripe/silverstripe-framework/commit/d55683d02b08f368263771c354661e9de73e1244) Ensure PHP 8.1 compatible version of oscarotero/html-parser is installed (Steve Boyd) - - 2022-08-11 [bf331072d](https://github.com/silverstripe/silverstripe-framework/commit/bf331072df0c9c3f3b941a4405c1c9de5f58315c) Don't try to call count() on an iterator (Guy Sartorelli) - - 2019-05-06 [e07671a89](https://github.com/silverstripe/silverstripe-framework/commit/e07671a8903870b7c7f2d24e446963f9460ef68c) Fix SQLConditionalExpression::getJoins so it always adds explicit aliases (Serge Latyntcev) - - 2018-10-05 [3a6c48cdd](https://github.com/silverstripe/silverstripe-framework/commit/3a6c48cddbccf1f467993e2838daaa1d6602d41b) template parser erroring on strings partially matching true/false/null (Loz Calver) - - 2018-10-05 [d6e822935](https://github.com/silverstripe/silverstripe-framework/commit/d6e822935205c44534054a2a96a31df2fbe40a09) Fix type preservation in <% include %> arguments (Loz Calver) - - 2018-02-20 [f2211d690](https://github.com/silverstripe/silverstripe-framework/commit/f2211d690f292886a29e1a5d4117cd9cdc7fe840) Fix extend() failing on protected extend-prefixed methods (Damian Mooyman) - - 2017-11-28 [b36a01a8f](https://github.com/silverstripe/silverstripe-framework/commit/b36a01a8fd7d83aa5abaa09dd76778c8b6c1db7d) Fix table name test (Christopher Joe) - - 2017-06-28 [9eb9e1307](https://github.com/silverstripe/silverstripe-framework/commit/9eb9e1307103e3c758dad58fcf24195c88eba0dc) Re-set finalisedQuery to allow recreation of iterator. (Sam Minnee) - - 2017-06-28 [8e0e797b4](https://github.com/silverstripe/silverstripe-framework/commit/8e0e797b402b1b2ca8916594a9c9a27b22f6a6d1) Fix code style (Loz Calver) - - 2017-01-17 [6ef5785fc](https://github.com/silverstripe/silverstripe-framework/commit/6ef5785fc5338eac1213af8feddf9f407e7ff43f) pre-cache loop content within SSViewer. (Sam Minnee) - - 2017-01-17 [d8735633a](https://github.com/silverstripe/silverstripe-framework/commit/d8735633a765d19fcd8261a99310a1093d398506) Don’t call PaginatedList::getIterator() directly. (Sam Minnee) - - 2017-01-17 [1efe2b46f](https://github.com/silverstripe/silverstripe-framework/commit/1efe2b46ffcd524cbe0e5cbc1593be47e2de589a) Fix PaginatedList::toArray() (Sam Minnee) - -- silverstripe/admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-03-27 [76609055](https://github.com/silverstripe/silverstripe-admin/commit/766090551a2937606210ca47760696079f1cd40e) Action Edit button UI (#1485) (Sabina Talipova) - - 2023-03-27 [f793831b](https://github.com/silverstripe/silverstripe-admin/commit/f793831b45d86f95d7b4fba8c82b9a2ab48c2db6) Use v1 of popper.js for thirdparty bootstrap (Steve Boyd) - - 2023-03-27 [61ba6ab9](https://github.com/silverstripe/silverstripe-admin/commit/61ba6ab945ab6c950d4d5cf770109e343a4f74f2) Translation merge-up (Steve Boyd) - - 2023-03-15 [cc63942a](https://github.com/silverstripe/silverstripe-admin/commit/cc63942affd4485cd1850f29981e9970d013b33e) Update CSS after PR (Sabina Talipova) - - 2023-03-10 [a396a90c](https://github.com/silverstripe/silverstripe-admin/commit/a396a90c486efc4c0a0983a174a678cd32aa8604) React warnings (Sabina Talipova) - - 2023-03-09 [cef56c38](https://github.com/silverstripe/silverstripe-admin/commit/cef56c3864af711f2c50a8680229c3c564a0df4b) TagList prop type tags.key is invalid (Sabina Talipova) - - 2023-03-08 [349fc385](https://github.com/silverstripe/silverstripe-admin/commit/349fc385f5bbff0bba9412bf6998807383daf926) Styles warnings (Sabina Talipova) - - 2023-03-07 [a5f74a30](https://github.com/silverstripe/silverstripe-admin/commit/a5f74a3039e45a91c631c3f45a502e1905b88ae2) Changed import for createRoot function (Sabina Talipova) - - 2023-02-27 [2cfc4012](https://github.com/silverstripe/silverstripe-admin/commit/2cfc4012dcd82496f571dd24c07d7604a2a1ddaa) Reinstate unsaved changes dialog (#1458) (Guy Sartorelli) - - 2023-02-09 [dbe8ada6](https://github.com/silverstripe/silverstripe-admin/commit/dbe8ada66c9eb817ffafca79a33860a650ea5618) Remove redundant memoisation (Guy Sartorelli) - - 2023-01-19 [4a1b488a](https://github.com/silverstripe/silverstripe-admin/commit/4a1b488ad06668f5aa7ca67f5f5d5e5ff6429609) Reuse emotion cache to avoid conflicts (Guy Sartorelli) - - 2023-01-19 [edb97adc](https://github.com/silverstripe/silverstripe-admin/commit/edb97adc9807054c7dfe79082537d599f7e3a1c4) Expose sublibraries of dependencies (Guy Sartorelli) - - 2023-01-08 [118681ad](https://github.com/silverstripe/silverstripe-admin/commit/118681ada4317694375d3e36b2b97c1907c67ef1) Set the value correctly when passed as prop. (Guy Sartorelli) - - 2022-12-08 [ce799e55](https://github.com/silverstripe/silverstripe-admin/commit/ce799e559abc6da6ae40f521892600f98f8cbe4b) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-12-01 [8d6c1acb](https://github.com/silverstripe/silverstripe-admin/commit/8d6c1acb4dfac5e0f6106fe99a75da2350e5a91e) Rebuild JS bundles (#1401) (Sabina Talipova) - - 2022-10-11 [3f30aa21](https://github.com/silverstripe/silverstripe-admin/commit/3f30aa214a7f3d41edb47def11e15e53c2d331c2) Set name of TinyMCE i18n file to be correct (Guy Sartorelli) - - 2022-10-07 [e5badb5d](https://github.com/silverstripe/silverstripe-admin/commit/e5badb5db705cc3a1c99cd0b29acf669e11dd356) Let admins get navigators for their own records (Guy Sartorelli) - - 2022-09-30 [7b3ac231](https://github.com/silverstripe/silverstripe-admin/commit/7b3ac2317e44650cf8b8f680edce32ebf6a8f79e) Use correct TinyMCE selection logic (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-04-03 [336643b0](https://github.com/silverstripe/silverstripe-asset-admin/commit/336643b05e6450ba1132f6c5e910ced5c67ec6e1) Ensure img is fetched and exists in TinyMCE plugin (#1332) (Guy Sartorelli) - - 2023-03-13 [45e7461a](https://github.com/silverstripe/silverstripe-asset-admin/commit/45e7461a549ae858999eacd8d11eaeb4bbe13515) CSS warnings (Sabina Talipova) - - 2023-03-13 [bd6da03b](https://github.com/silverstripe/silverstripe-asset-admin/commit/bd6da03b4d321a9850994a2040b59302f93db88a) Replaced deprecated React functions (Sabina Talipova) - - 2023-02-13 [f800799a](https://github.com/silverstripe/silverstripe-asset-admin/commit/f800799aba673a52dd8d56ae5ae8215587f1c6f1) Get JS tests passing again (#1330) (Guy Sartorelli) - - 2023-02-08 [1bb852ea](https://github.com/silverstripe/silverstripe-asset-admin/commit/1bb852ea198e6c1bfbab40e79a8321943612a227) Don't enter infinite loop when saving form (#1329) (Guy Sartorelli) - - 2023-01-29 [0dfc61e0](https://github.com/silverstripe/silverstripe-asset-admin/commit/0dfc61e0cfa23720824fb1317edb94d62e13ffad) update react render (#1322) (Guy Sartorelli) - - 2023-01-10 [ba67f151](https://github.com/silverstripe/silverstripe-asset-admin/commit/ba67f1518fa7dd5e2aa3665720d011e2daaebde3) Correctly reset file details after bulk publish (Guy Sartorelli) - - 2022-12-08 [379ddb52](https://github.com/silverstripe/silverstripe-asset-admin/commit/379ddb52f863a4b40fb84853ded0e79684dbc262) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-09-30 [46a25f15](https://github.com/silverstripe/silverstripe-asset-admin/commit/46a25f15c13623db941cca6e6e6a353c580d4a22) Use correct selection logic for TinyMCE (Guy Sartorelli) - - 2022-09-30 [c29a14b4](https://github.com/silverstripe/silverstripe-asset-admin/commit/c29a14b416b23f5d73c7874094276d5aac68535f) Publish assets in WYSIWYG when publishing page. (Guy Sartorelli) - - 2022-09-19 [67d6966c](https://github.com/silverstripe/silverstripe-asset-admin/commit/67d6966c1a64944187e878d53394438a250aca55) Update plugins to work with TinyMCE 6 (Guy Sartorelli) - -- silverstripe/campaign-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-03-13 [4cce0ff](https://github.com/silverstripe/silverstripe-campaign-admin/commit/4cce0ffb57ef98637a21a264279145007be0b618) Replaced deprecated CSS and React functions (Sabina Talipova) - -- silverstripe/versioned-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-03-22 [ebca186](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ebca186bd86050783231327a5b176789c1dc413b) ESLint, SASS-Lint warnings (Sabina Talipova) - - 2023-02-02 [90ee112](https://github.com/silverstripe/silverstripe-versioned-admin/commit/90ee112a1432cc6575171299f6b44599068cd39e) Use the new HtmlDiff class (Guy Sartorelli) - - 2023-01-29 [5ad5cd4](https://github.com/silverstripe/silverstripe-versioned-admin/commit/5ad5cd42bee4ca5823a2da73ef04e8a471f0b807) Remove unused import (#270) (Guy Sartorelli) - -- silverstripe/cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-08 [93f57d23](https://github.com/silverstripe/silverstripe-cms/commit/93f57d2300809c6c9f2bcc61f58b40df4ec3eaed) Replace Diff class with HtmlDiff (Sabina Talipova) - - 2023-01-09 [b9115f3f](https://github.com/silverstripe/silverstripe-cms/commit/b9115f3f6d9037c0ada8d07788f141d6d1420f56) Fix anchor select field component (Guy Sartorelli) - - 2022-12-08 [605daf50](https://github.com/silverstripe/silverstripe-cms/commit/605daf5026164c0f80876ce853bff5dec11f1524) Cast absoluteUrl() argument to string (Steve Boyd) - - 2022-12-05 [3186e0e1](https://github.com/silverstripe/silverstripe-cms/commit/3186e0e129777ec463a5c7612be4e08b48d23cf4) Use orderBy() instead of sort() (Steve Boyd) - - 2022-10-19 [af1a482d](https://github.com/silverstripe/silverstripe-cms/commit/af1a482d20c32dfe20718861d3b5edb5dcfd905d) Loosen config order to allow "after: '*'" in framework (#2793) (Guy Sartorelli) - - 2022-09-30 [bedd6455](https://github.com/silverstripe/silverstripe-cms/commit/bedd64554f0d6786a7f033c328b0bb7a657e4358) Use correct TinyMCE selection logic (Guy Sartorelli) - - 2022-09-19 [7368df87](https://github.com/silverstripe/silverstripe-cms/commit/7368df875730eb176c8223bef636e917c12842b1) Fix link plugins to support tinymce6 (Guy Sartorelli) - - 2022-08-25 [803b4add](https://github.com/silverstripe/silverstripe-cms/commit/803b4add7bc6efa5a249b15d16aec22e44d9362c) Resolve CI failure (Guy Sartorelli) - - 2018-05-01 [b46876b8](https://github.com/silverstripe/silverstripe-cms/commit/b46876b8a8959b15274bef9163530be3a6e2d678) Don't offer to restore to root if can_be_root is false (Mike Cochrane) - -- silverstripe/siteconfig (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-01-23 [4155b889](https://github.com/silverstripe/silverstripe-siteconfig/commit/4155b889fcc3fcfe042936846e2f223df3804d72) Bring back empty _config.PHP file (Maxime Rainville) - -- silverstripe/versioned (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-03-02 [04344c7](https://github.com/silverstripe/silverstripe-versioned/commit/04344c7ddabed7a679b3326896ec04a33c1dd480) Remove diff code (Steve Boyd) - - 2023-02-13 [54a0bac](https://github.com/silverstripe/silverstripe-versioned/commit/54a0bac13d7bda8efc7c589abc443bd12c27b70e) Null value in HtmlDiff::compareHtml() (#394) (Sabina Talipova) - - 2023-02-02 [4796ab4](https://github.com/silverstripe/silverstripe-versioned/commit/4796ab4d29e915626d03c575b0c54f9eeb049d3e) Use the new HtmlDiff class (Guy Sartorelli) - - 2022-12-15 [20e681d](https://github.com/silverstripe/silverstripe-versioned/commit/20e681d721bc83c844f35eb75cc4f9e6cdb89d63) Handle a bool return type from DateTime::getLastErrors() (Steve Boyd) - - 2022-12-05 [76fbb52](https://github.com/silverstripe/silverstripe-versioned/commit/76fbb521b1ec5b6b222df7112f1d6c5dfdcac2ac) Ensure sort is not empty (Steve Boyd) - -- silverstripe/graphql (4.3.0-rc1 -> 5.0.0-rc1) - - 2023-04-04 [47e60a8](https://github.com/silverstripe/silverstripe-graphql/commit/47e60a83ea5ea5dcb4bcec54123189b3504e6312) Reverse conditional (Steve Boyd) - - 2023-04-04 [1816f4c](https://github.com/silverstripe/silverstripe-graphql/commit/1816f4c8ea6efd6d0e24663475571a788f7a0467) Don't error silently when arguments are enabled (#523) (Guy Sartorelli) - - 2022-09-12 [a52cabd](https://github.com/silverstripe/silverstripe-graphql/commit/a52cabd4a041527f82e935a7dba65906e5f53540) Use symfony6 cache classes (Steve Boyd) - -- silverstripe/recipe-authoring-tools (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [0bc9677](https://github.com/silverstripe/recipe-authoring-tools/commit/0bc967735ec0d18e2b49d923e176863970021828) Revert wrong merge (#25) (Sabina Talipova) - -- silverstripe/recipe-blog (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [8b61de9](https://github.com/silverstripe/recipe-blog/commit/8b61de96515a0b717254084dcfb5441767dd36b4) Revert wrong merge (#39) (Sabina Talipova) - -- silverstripe/comments (3.10.0-rc1 -> 4.0.0-rc1) - - 2023-01-19 [5c2552e](https://github.com/silverstripe/silverstripe-comments/commit/5c2552e4c994c5abdff102f02477538ed5d90b48) Parameter order (Steve Boyd) - - 2023-01-19 [0048a7a](https://github.com/silverstripe/silverstripe-comments/commit/0048a7abb9c1e73d9e6357d594a7bc39a61af629) Resolve linting issues (Guy Sartorelli) - -- silverstripe/recipe-collaboration (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [880c4b5](https://github.com/silverstripe/recipe-collaboration/commit/880c4b53520bd9e869f2aa9b40025e11cb5a607d) Revert wrong merge (#22) (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (5.9.0-rc1 -> 6.0.0-rc1) - - 2023-03-14 [a9f1f6c](https://github.com/symbiote/silverstripe-advancedworkflow/commit/a9f1f6c15f09a83ecb667d32599567c2eb13d876) CSS and JS warnings (Sabina Talipova) - -- silverstripe/recipe-form-building (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [d56ed8b](https://github.com/silverstripe/recipe-form-building/commit/d56ed8b17edd214be68120383b9cc17a1abc33a6) Revert wrong merge (#24) (Sabina Talipova) - -- silverstripe/recipe-reporting-tools (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [11965af](https://github.com/silverstripe/recipe-reporting-tools/commit/11965af8f80b29b3bd7e79d94d02023b88afb31f) Revert wrong merge (#33) (Sabina Talipova) - -- silverstripe/externallinks (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-03-24 [fe056b5](https://github.com/silverstripe/silverstripe-externallinks/commit/fe056b5e24fda21a2ccdc9e53aea47cabc522e86) ESLint warnings (Sabina Talipova) - - 2023-03-06 [ef0ee30](https://github.com/silverstripe/silverstripe-externallinks/commit/ef0ee302f60a3cfd8ba69afa978013a508106183) Reload External broken links report content when new report was generated (Sabina Talipova) - - 2023-01-17 [8456e46](https://github.com/silverstripe/silverstripe-externallinks/commit/8456e46f836c4b4265373ec218a41ccd90336b31) Use HTMLValue::class (Steve Boyd) - -- silverstripe/versionfeed (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-02-13 [002fbf7](https://github.com/silverstripe/silverstripe-versionfeed/commit/002fbf766c516ba272590ded4dea467ceb67bd00) Replace Diff class to HtmlDiff (#80) (Sabina Talipova) - -- silverstripe/recipe-content-blocks (2.13.0-rc1 -> 3.0.0-rc1) - - 2022-12-18 [ccf7737](https://github.com/silverstripe/recipe-content-blocks/commit/ccf7737622faf05aecdd4316e2294dee69883f28) Revert wrong merge (#29) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.11.0-rc1 -> 5.0.0-rc1) - - 2023-01-26 [c552d2e](https://github.com/silverstripe/silverstripe-elemental/commit/c552d2e70de0cd4102d3e4b943dc02cb2341e42d) Don't refer to removed class (Guy Sartorelli) - - 2022-12-08 [4cf4027](https://github.com/silverstripe/silverstripe-elemental/commit/4cf4027e9b3a0ec6b63ec02c582ae6f9439266b6) Cast possibly null link to string (Steve Boyd) - - 2022-08-29 [ce8a102](https://github.com/silverstripe/silverstripe-elemental/commit/ce8a102b69f33d67b01510b856725cfd9291dfa4) Use correct return type for permission checks (Guy Sartorelli) - -- cwp/cwp-search (1.8.0-rc1 -> 2.0.0-rc1) - - 2023-03-02 [eaece08](https://github.com/silverstripe/cwp-search/commit/eaece08591b865cc54a71f128922486b3f70e3dc) Add slash before search action in Search form URL (Sabina Talipova) - -- silverstripe/fulltextsearch (3.12.0-rc1 -> 4.0.0-rc1) - - 2023-02-15 [72dc54b](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/72dc54b0f852e9384b6e75dd33336dc5e997b208) Always use ?int for subsite state (#341) (Guy Sartorelli) - - 2023-02-15 [4f92bcd](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/4f92bcdbf507c374e5109ea1b9a6f4691b01923d) Broken builds (Sabina Talipova) - -- symbiote/silverstripe-queuedjobs (4.12.0-rc1 -> 5.0.0-rc1) - - 2022-12-14 [0c18b40](https://github.com/symbiote/silverstripe-queuedjobs/commit/0c18b401a5cd3c14b66e30a67c2c9d66c840948f) Use record() instead of first() (Steve Boyd) - -- silverstripe/hybridsessions (2.7.0-rc1 -> 3.0.0-rc1) - - 2023-02-20 [6365414](https://github.com/silverstripe/silverstripe-hybridsessions/commit/63654146346c058fde0f8f3c810acf368b110287) Always return something (Steve Boyd) - - 2023-02-15 [7aede67](https://github.com/silverstripe/silverstripe-hybridsessions/commit/7aede67440c4e6a0a3fa9b0711de98366e9c5af3) Return an emtpy string instead of false from HybridSession::read() (Steve Boyd) - -- silverstripe/developer-docs (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-08 [a69490b4](https://github.com/silverstripe/developer-docs/commit/a69490b479fc24b5a6a621db6a874d40ef7edccf) Fix a bunch of API links (Maxime Rainville) - - 2023-02-08 [5cc10ba8](https://github.com/silverstripe/developer-docs/commit/5cc10ba8063c6d20561bfc01ac9352ced42d53a3) Fix bad GitHub link by poiting to packagist instead. (Maxime Rainville) - - 2022-09-15 [81f4565d](https://github.com/silverstripe/developer-docs/commit/81f4565d4b579a6c0ee949360252df3e939d5d67) Show alpha directory (#89) (Guy Sartorelli) - -- silverstripe/registry (2.6.0-rc1 -> 3.0.0-rc1) - - 2023-02-13 [97987d7](https://github.com/silverstripe/silverstripe-registry/commit/97987d734246c90aaa91a6f354f9a6ac273aae3a) Implement support new league/flysystem v3 (Sabina Talipova) - -- silverstripe/mfa (4.8.0-rc1 -> 5.0.0-rc1) - - 2023-02-07 [fa5b8dc](https://github.com/silverstripe/silverstripe-mfa/commit/fa5b8dc0a9c3f5a254a54c8ba918cc929f717ba0) Add back in sudo mode activation on login (Steve Boyd) - - 2023-01-17 [34af8cd](https://github.com/silverstripe/silverstripe-mfa/commit/34af8cd73cc03bd7427b59fc1544e1eb685e69b3) Update SecurityAdminExtension::sendResetEmail() to account new returned type for Email::send() (Maxime Rainville) - - 2023-01-16 [8482176](https://github.com/silverstripe/silverstripe-mfa/commit/84821769219f2b73ae0cf59969c553ba9f7d2689) Change the AJAX endpoint to reset the MFA set up for a user (Maxime Rainville) - -- silverstripe/ckan-registry (1.7.0-rc1 -> 2.0.0-rc1) - - 2023-03-13 [bc77572](https://github.com/silverstripe/silverstripe-ckan-registry/commit/bc77572eaa6d5f82d28bda726c10b0128725a34b) CSS warnings (Sabina Talipova) - -- silverstripe/webauthn-authenticator (4.7.0-rc1 -> 5.0.0-rc1) - - 2023-02-07 [0523fed](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/0523fed85f2813852b903bc20e1663e3ebcb6972) Remove padding to work with web-auth/webauthn-lib 4.1.0+ (Steve Boyd) - -- silverstripe/subsites (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-01-26 [80eb9ec](https://github.com/silverstripe/silverstripe-subsites/commit/80eb9ec15a2e29af688e56e8bfe5da9eb8fc1c4b) Remove wildcard from config (Steve Boyd) - - 2023-01-19 [f50cd3e](https://github.com/silverstripe/silverstripe-subsites/commit/f50cd3e348155acde224d79f5760a047be4e658c) Parameter order (Steve Boyd) - -- silverstripe/lumberjack (2.3.0 -> 3.0.0-rc1) - - 2023-01-19 [fccf95e](https://github.com/silverstripe/silverstripe-lumberjack/commit/fccf95edf52606540c7804ce85eaa85e9986200f) Parameter order (Steve Boyd) - -- cwp/starter-theme (3.3.0-rc1 -> 4.0.0-rc1) - - 2023-01-29 [4ddc59c](https://github.com/silverstripe/cwp-starter-theme/commit/4ddc59c6450c10dfaa04b4db860317ca6592f29b) Remove reference to empty CSS file. (#219) (Guy Sartorelli) - -- cwp/agency-extensions (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-04-03 [8d5bbab](https://github.com/silverstripe/cwp-agencyextensions/commit/8d5bbab5396ef7326eb0cdfe71a922a207d67dc6) Do not expose directory that was removed (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (3.6.0 -> 4.0.0-rc1) - - 2023-01-18 [fd24736](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/fd24736b52f7ac18f08d813f042da3e18aa9c278) Use DataList::orderBy() (#353) (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0-beta1) - - 2023-02-01 [563f253](https://github.com/colymba/GridFieldBulkEditingTools/commit/563f253f36af93cf6680d515f2c669cf10f21dcf) Don't use removed method. (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0-beta1) - - 2023-02-07 [d77907f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d77907fcec3dcbe2b0dd419492f05714cd1ae3b7) fix: update master alias to new major version 7 (Damian Mooyman) - - 2023-01-26 [bb4891d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb4891d883064b17e00b7b2653cbb0ceb4814463) Don't use removed API (Guy Sartorelli) - - 2023-01-18 [820e1f5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/820e1f51b44bb84ea40edd8ebc5704c08c6b55b5) Get fluent to dev/build (Steve Boyd) - - 2023-01-13 [4531289](https://github.com/tractorcow-farm/silverstripe-fluent/commit/45312894e7885273646fb2732ad514e668071ab9) GitHub actions setup (linting). (Mojmir Fendek) - - 2022-03-27 [b22973f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b22973f3ab2f4c767b19b7f91c2cb617bec6b8d0) Legacy permissions migration fix. (Mojmir Fendek) - - 2022-03-27 [4a1f86d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4a1f86db6324412ff73bcfde0586e019edfd37bb) Explicit PHP version for scrutinizer.. (Mojmir Fendek) - - 2022-03-25 [56337af](https://github.com/tractorcow-farm/silverstripe-fluent/commit/56337af2373ea141cba679fd53dc6e5677454f43) PHP 8 compatibility patch. (Mojmir Fendek) - - 2022-03-10 [c2d0abe](https://github.com/tractorcow-farm/silverstripe-fluent/commit/c2d0abea14625768e289e72c6401335eb28bf36c) fix: issue with "all CMS sections" permission erroneously handling fluent permissions (Damian Mooyman) - - 2022-03-01 [33ac317](https://github.com/tractorcow-farm/silverstripe-fluent/commit/33ac31727d3a478a064a887ff8ac4ce092c9948f) Fix missing locale in callback signature (Rens Korswagen) - - 2022-02-10 [7353136](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7353136113fb9618169df5a231498ec1e9e49663) SiteTree item styles should not trickle down the sub-tree. (Mojmir Fendek) - - 2022-02-03 [32452fb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/32452fb31d85acad8ed9960863bf90b1298766b4) Localisation manager / Live state flag and stages differ correction. (Mojmir Fendek) - - 2022-01-13 [cc1116c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cc1116c13023d6de05956e8998bcbb3e14f1c3e7) Localisation manager / Locale link fix for AJAX requests. (Mojmir Fendek) - - 2021-11-08 [a49afa4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a49afa4ca910d8ff27f7e31fc7db86c0bb53ac3c) Fix fallback locales chain (Mikhail Shchedrakov) - - 2021-10-20 [6e248c1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6e248c1d775fec26083828d7c0383c5c63736286) Fix for FluentAdminTraitTest. (Mojmir Fendek) - - 2021-06-18 [d9e12b3](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d9e12b3e8600617c50ac7bf91f9f6bbc60c3d778) Missing version tables related indexes. (Mojmir Fendek) - - 2021-06-09 [15611e0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/15611e0480fcf86bc17e088fbbc04b860266f46a) Localised copy support for ClassName changes. (Mojmir Fendek) - - 2021-05-20 [18d3899](https://github.com/tractorcow-farm/silverstripe-fluent/commit/18d3899581f287e3490eb899716d74fa19f78c3d) Fix issue with apply_isolated_locales_to_byid = false not respecting many_many joins (Damian Mooyman) - - 2021-04-29 [1666329](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1666329c0254cb74ce3aaf80e77ddaeb08b872ff) GridField buttons UI improvements for versioned models. (Mojmir Fendek) - - 2021-03-01 [12196e3](https://github.com/tractorcow-farm/silverstripe-fluent/commit/12196e33894dce8d555c83af38a723a9062c8150) Fix Travis setup to run with correct requirements. (Mojmir Fendek) - - 2021-02-08 [74aa604](https://github.com/tractorcow-farm/silverstripe-fluent/commit/74aa6042994eddff4b13383fd0d248109b352a66) Stages differ in locale correction, Copy-to localise buttons restored. (Mojmir Fendek) - - 2020-09-02 [fa58ad7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fa58ad79f81af945ac1ea7ec8a4bd22a381ba671) Resolve regression in middleware behaviour breaking routing bootstrapping (Damian Mooyman) - - 2020-07-29 [2062c0d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2062c0dff1520d8a666365b8d4ccab2394ddacac) Fix invalid test namespaces (Damian Mooyman) - - 2020-07-28 [1cd753a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1cd753a76ac901c3fd87dcd88d829b958dd3a885) Fix test namespaces (Damian Mooyman) - - 2020-07-28 [d7466ef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d7466ef00d93d1092e7d7265c1f69628e3c659a8) Fix composer notice on invalid psr-4 path for test files (Damian Mooyman) - - 2020-07-06 [2577a34](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2577a341340b66f673d66b30bb6c9131c46405d6) fix issue with member permissions erroring before fluent state is initialised (Damian Mooyman) - - 2020-06-18 [81eff09](https://github.com/tractorcow-farm/silverstripe-fluent/commit/81eff09f554551d8a9999c6c64f0286d18c5dbcb) Fix from / to (Damian Mooyman) - - 2020-05-20 [8c8af6e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8c8af6e497c9e1b6aa964040a1f7c95a0367251f) Fix sitemap x-default reference (Damian Mooyman) - - 2020-05-20 [381a351](https://github.com/tractorcow-farm/silverstripe-fluent/commit/381a351057fc6c8235f3efebc12b900c265299f9) Properly handle x-default for home page tags (Damian Mooyman) - - 2020-05-12 [3b1bd95](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3b1bd9521cd08bbc0b401dde3afb40fc879b768f) Fix linting issues (Damian Mooyman) - - 2020-05-12 [a93ad8f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a93ad8f54012cc63953c8cba49f871d702233dfd) Fix unit tests (Damian Mooyman) - - 2020-05-12 [7e5fe14](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7e5fe149d6a709501476301f1f7c8cf4ae2c3a49) Fix issue where gridfield has no Actions column (Damian Mooyman) - - 2020-05-11 [5f67c66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5f67c660b1fb2643f55ed1085cb8788350b2ac10) Fix tests (Damian Mooyman) - - 2020-05-11 [a41b319](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a41b319141239cdbd223dd1fce3f0ded773e3728) Fix hreflang case issue (Damian Mooyman) - - 2020-04-09 [ec6340a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ec6340a1bb5d22de836d95a2775259c8b94eaa4c) Fix UnpublishAction using incorrect locale (Damian Mooyman) - - 2020-03-10 [01972dc](https://github.com/tractorcow-farm/silverstripe-fluent/commit/01972dc636a56cadefe51bca4b0ecea977070730) fix issue where rows were not written to _Localised tables (Damian Mooyman) - - 2020-02-10 [d864f5b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d864f5b6b5662fd00711633b8f3ae4f39dc8c287) Fix unit tests for updates to extensions and middleware (Damian Mooyman) - - 2020-02-10 [a8b05ad](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a8b05ad14ce9caa66695b57fcc3d6cbea82a406d) Fix unit tests (Damian Mooyman) - - 2020-02-09 [44cbe21](https://github.com/tractorcow-farm/silverstripe-fluent/commit/44cbe21c75977bbedbb1ff493788f09fd6c80b4f) Fix unit tests for badge trait (Damian Mooyman) - - 2020-02-07 [ce6eea9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ce6eea912cb3d03c4c977bec88103ef9b5c593ae) Fix crash on logout (Damian Mooyman) - - 2019-11-21 [68a32aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/68a32aab25c533821d87455b382bdfb63ae21ba6) Fix issue with gridfield actions (Damian Mooyman) - - 2019-11-20 [4a78844](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4a78844a0ae840d37c3e3f9c1e9afa15fc2b5332) Fix visibility logic issues with versioned records (Damian Mooyman) - - 2019-11-19 [0e87761](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0e877615bfcf341748eb45d51ce3a95bdc5bdad0) Fix dependency constraints (Damian Mooyman) - - 2019-11-13 [780d4f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/780d4f4579c43d3270ffcb6aec4da8bc29ae0dc5) Fix issue with slashes in prefix (Damian Mooyman) - - 2019-11-13 [ee951cc](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ee951cc2942441f862f789004ab0fc21a6393142) Fix unit tests (Damian Mooyman) - - 2019-11-12 [0d2ab8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0d2ab8cb632ecf1ffd066ef75e55bb03a99412f1) Fix invalid variable name (Damian Mooyman) - -### API changes - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-12-07 [cb22983](https://github.com/silverstripe/recipe-plugin/commit/cb22983fa804607d88b8fc47c4e7a122c80ee18c) Remove deprecated code (#30) (Sabina Talipova) - - 2022-10-25 [e5dceb4](https://github.com/silverstripe/recipe-plugin/commit/e5dceb4546f9eed0cd346beed3dab5af63b1869c) Update deprecations (#27) (Steve Boyd) - -- silverstripe/vendor-plugin (1.7.0 -> 2.0.0) - - 2022-12-14 [86600ce](https://github.com/silverstripe/vendor-plugin/commit/86600cead02300885e2020929126a2d95cb246e5) Make the public folder mandatory (#64) (Guy Sartorelli) - - 2022-12-07 [4e2135f](https://github.com/silverstripe/vendor-plugin/commit/4e2135f3c6f9354d87bed147b4e87c953fe7bde8) Remove deprecated code (#63) (Sabina Talipova) - - 2022-08-03 [ddbf19a](https://github.com/silverstripe/vendor-plugin/commit/ddbf19a9d54fb030e036affeaf8e1deb73c7ad9c) Remove deprecated Library::RESOURCES_PATH const (Guy Sartorelli) - -- silverstripe/assets (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-01-16 [9a1e094](https://github.com/silverstripe/silverstripe-assets/commit/9a1e0941f93d876b5d6e188cb669512490ff13f4) Use more specific return type than those mandated by the interface (Maxime Rainville) - - 2023-01-10 [0784372](https://github.com/silverstripe/silverstripe-assets/commit/0784372755c8201284faaa4b08cd976ba6e3abb3) Removed ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-12-07 [3495084](https://github.com/silverstripe/silverstripe-assets/commit/349508447b66591671b8930a25cd3fc1f78fb97e) Remove deprecated code (#530) (Sabina Talipova) - -- silverstripe/config (1.6.0-rc1 -> 2.0.0-rc1) - - 2022-12-07 [c0cd27a](https://github.com/silverstripe/silverstripe-config/commit/c0cd27a330a52e222c4b41da6348dd0a0ac3cd4b) Restore nullable params (Steve Boyd) - - 2022-12-07 [3e7097e](https://github.com/silverstripe/silverstripe-config/commit/3e7097e27971187b80c89c97b00a6d826804be6c) Remove deprecated code (#75) (Sabina Talipova) - -- silverstripe/framework (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-03-21 [b4f330d73](https://github.com/silverstripe/silverstripe-framework/commit/b4f330d7340da3655364c99cb0fe483a17a24a33) Remove configurability of attributes (Steve Boyd) - - 2023-03-06 [6d239d0b8](https://github.com/silverstripe/silverstripe-framework/commit/6d239d0b88d8e40a1273e8e81c69ce696f05306e) Remove deprecated code (Steve Boyd) - - 2023-02-01 [603723e8f](https://github.com/silverstripe/silverstripe-framework/commit/603723e8f388d0a5e697527bb7c3783ee2597644) Rename Diff to HtmlDiff (Guy Sartorelli) - - 2023-01-26 [ec4a8b88e](https://github.com/silverstripe/silverstripe-framework/commit/ec4a8b88e5df07303dd6707c79f3d1b6a1fad801) Allow array style email addresses (Steve Boyd) - - 2023-01-10 [99dc6df38](https://github.com/silverstripe/silverstripe-framework/commit/99dc6df38adf0a80ab43e8871c3994e0da5417ca) Replace thirdparty difflib with maintained lib (Guy Sartorelli) - - 2023-01-10 [944722f34](https://github.com/silverstripe/silverstripe-framework/commit/944722f34fd4980874485c2670ad1ada014715e6) Removed #[\ReturnTypeWillChange] annotations (Maxime Rainville) - - 2022-12-14 [b14de847a](https://github.com/silverstripe/silverstripe-framework/commit/b14de847a55f8f82779bd878b8c623a87e8f7eda) Make the public directory mandatory (#10617) (Guy Sartorelli) - - 2022-12-07 [53c0147f1](https://github.com/silverstripe/silverstripe-framework/commit/53c0147f112a011f8cbdfb964a92dc4eb81a8b7f) Remove deprecated code (#10594) (Sabina Talipova) - - 2022-12-06 [ae4d7fa09](https://github.com/silverstripe/silverstripe-framework/commit/ae4d7fa0909c6846bbc4ab72549020fa0d44a87a) Create orderBy() method to handle raw SQL (Steve Boyd) - - 2022-11-30 [7860e461e](https://github.com/silverstripe/silverstripe-framework/commit/7860e461ed99cb192f2656170f87f731bf5737c0) Remove deprecated CIConfig functionality (Steve Boyd) - - 2022-10-17 [a57c7315a](https://github.com/silverstripe/silverstripe-framework/commit/a57c7315a28bafbcf41a84f38a35d5dfda041516) Strongly-type action method signatures (Steve Boyd) - - 2022-10-10 [fbcf7dc3e](https://github.com/silverstripe/silverstripe-framework/commit/fbcf7dc3e7484f2d55dcb323ed6e2ba9b7dd5de9) Normalise trailing slashes for all paths (Florian Thoma) - - 2022-09-19 [433926fc1](https://github.com/silverstripe/silverstripe-framework/commit/433926fc11f1c0226310f07c26e595cf27672fe5) Remove deprecated TinyMCE generator class (Guy Sartorelli) - - 2022-09-15 [03b929dd3](https://github.com/silverstripe/silverstripe-framework/commit/03b929dd331f87b3a36f3c021c813a24529e29cc) Remove support for PDO (#10499) (Guy Sartorelli) - - 2022-09-07 [a87a65736](https://github.com/silverstripe/silverstripe-framework/commit/a87a657367aed051c945ba1d674a4c39137c38f3) Update translation to use symfony 6 (Steve Boyd) - - 2022-09-07 [c9bc01473](https://github.com/silverstripe/silverstripe-framework/commit/c9bc01473cd16d195073147e9841dd06828a0d6b) Update caching to use symfony 6 (Steve Boyd) - - 2022-09-01 [1bf86cf39](https://github.com/silverstripe/silverstripe-framework/commit/1bf86cf39f9451787b3a4e92545442f59f1ee00b) Revert shorten auto-generated table names (#10482) (Guy Sartorelli) - - 2022-08-22 [a4521a734](https://github.com/silverstripe/silverstripe-framework/commit/a4521a734812186c697b557dad317c88e6a31e24) Undeprecate table warning message (Guy Sartorelli) - - 2022-08-11 [a76fa32a3](https://github.com/silverstripe/silverstripe-framework/commit/a76fa32a390064b7571a2b318cda48357d918eb8) Remove unnecessary `getGenerator()` method. (Guy Sartorelli) - - 2022-08-09 [3284c0670](https://github.com/silverstripe/silverstripe-framework/commit/3284c067030c37ed79c4ac8412c0a095a939ef61) Remove PHPUnit 5.7 compatability hacks (Guy Sartorelli) - - 2022-08-03 [37dc0daac](https://github.com/silverstripe/silverstripe-framework/commit/37dc0daacc11e5f7c7ce1dfd7b15660a07c1f0e1) Remove deprecated ManifestFileFinder::RESOURCES_DIR const (Guy Sartorelli) - - 2020-03-16 [e42ed95be](https://github.com/silverstripe/silverstripe-framework/commit/e42ed95be180145af1a20c657ce0626ccff2d25a) Update MigrationTask class to be an abstract class (Michal Kleiner) - - 2018-10-15 [f2de39162](https://github.com/silverstripe/silverstripe-framework/commit/f2de39162dc1f197de2fcf8e2c8e2947acdb3754) Allow dataobject get_one without passing a class (Andrew Aitken-Fincham) - - 2018-06-08 [4cda967ea](https://github.com/silverstripe/silverstripe-framework/commit/4cda967eae203126668b95008a549aff9aededf0) Preserve variable types in template lookup args (Loz Calver) - - 2018-06-07 [47337782a](https://github.com/silverstripe/silverstripe-framework/commit/47337782a2d23bc91ff0ba940b79ce3102962e97) <% loop %> and <% with %> only ever create one new scope level (Loz Calver) - - 2018-04-08 [08d1cd383](https://github.com/silverstripe/silverstripe-framework/commit/08d1cd3834fd97293d85b164e63023435a5f92fa) Remove isDev / isTest querystring arguments (Damian Mooyman) - - 2018-03-01 [2c102c61a](https://github.com/silverstripe/silverstripe-framework/commit/2c102c61a9d5837dc74fd731c92df4dc3834d37e) TestCase classes should be abstract to prevent warnings (Daniel Hensby) - - 2018-01-12 [76fc8f159](https://github.com/silverstripe/silverstripe-framework/commit/76fc8f1596f5d9e82acbf5b81a5eebb2e868a5dd) Only expose public extension methods (Damian Mooyman) - -- silverstripe/admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-01-10 [f4633cae](https://github.com/silverstripe/silverstripe-admin/commit/f4633caebad05e64836a6457b1fff3b820f35cad) Remove ReturnTypeWillChange annotation (Maxime Rainville) - - 2022-12-07 [33a80f1c](https://github.com/silverstripe/silverstripe-admin/commit/33a80f1cc44911565af06a1eeb204edd98407406) Remove deprecated code (#1393) (Sabina Talipova) - - 2022-10-17 [a1e70ed0](https://github.com/silverstripe/silverstripe-admin/commit/a1e70ed05a7c8370a8647b756bcdb16d695c358d) Strongly-type action method signatures (Steve Boyd) - - 2022-09-19 [48108c1b](https://github.com/silverstripe/silverstripe-admin/commit/48108c1b31952b250f1d8c3192e49c05cfc6fa48) Convert SecurityAdmin to be a ModelAdmin (Steve Boyd) - - 2022-08-06 [981d5a93](https://github.com/silverstripe/silverstripe-admin/commit/981d5a93405b45a47cdc2c14dc680696b1e928d6) Migrate SilverStripeNagivator (Guy Sartorelli) - -- silverstripe/asset-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-07 [38328d8b](https://github.com/silverstripe/silverstripe-asset-admin/commit/38328d8b08107a9629d8759a191f1f5300d48f48) Remove deprecated code (#1307) (Sabina Talipova) - - 2022-10-18 [a6eba071](https://github.com/silverstripe/silverstripe-asset-admin/commit/a6eba071052cb7e88190050f4919e33f9e35dbed) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/campaign-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-07 [426db3e](https://github.com/silverstripe/silverstripe-campaign-admin/commit/426db3e4e14f7800910754f7a9b077b7a07453a0) Remove deprecated code (#249) (Sabina Talipova) - - 2022-10-17 [af7f3ec](https://github.com/silverstripe/silverstripe-campaign-admin/commit/af7f3ecaa49cd9736352a46648c78526e3acce7a) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/versioned-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-07 [bb10c07](https://github.com/silverstripe/silverstripe-versioned-admin/commit/bb10c072869fc27f5f761f1e062dfcb063e73ca8) Remove deprecated code (#265) (Sabina Talipova) - - 2022-10-17 [a80b368](https://github.com/silverstripe/silverstripe-versioned-admin/commit/a80b368f3ab6d454131f449dc7e9a8455493d7d7) Strongly-type action method signatures (Steve Boyd) - - 2022-09-14 [99e50c2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/99e50c20a4c8ba4bb47f7fb0f0647d7cdbdae8c8) Migrate SilverStripeNagivator (Guy Sartorelli) - -- silverstripe/cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-01-17 [97fdff4b](https://github.com/silverstripe/silverstripe-cms/commit/97fdff4bb236498b9ccd3b758dc7930c89b3445d) Remove deprecated CMSMain::$subitem_class config (#2821) (Maxime Rainville) - - 2023-01-16 [1bd578fc](https://github.com/silverstripe/silverstripe-cms/commit/1bd578fc969fc40149d523ccde346122f49a74d6) Remove legacy tasks (Steve Boyd) - - 2022-12-07 [0e5428b7](https://github.com/silverstripe/silverstripe-cms/commit/0e5428b78beaaa228709b7771a908e094907f922) Remove deprecated code (#2800) (Sabina Talipova) - - 2022-10-18 [6e19ae73](https://github.com/silverstripe/silverstripe-cms/commit/6e19ae737feb0e820d60e1628aabc0cefda6f609) Strongly-type action method signatures (Steve Boyd) - - 2022-08-31 [1711c0c8](https://github.com/silverstripe/silverstripe-cms/commit/1711c0c88eeaf24c4170a2ab511398e719c57f89) Move updateRelativeLink hook after concatination (#2770) (Florian Thoma) - - 2022-08-26 [18cb6d49](https://github.com/silverstripe/silverstripe-cms/commit/18cb6d499df3b5adfcf7d118d8a25491be0e2ff8) Normalise trailing slashes in links (Florian Thoma) - - 2022-08-06 [d7857ebb](https://github.com/silverstripe/silverstripe-cms/commit/d7857ebbe001f20de59e29902089108f2a8bf465) Migrate SilverStripeNagivator classes (Guy Sartorelli) - - 2019-07-12 [cda7857e](https://github.com/silverstripe/silverstripe-cms/commit/cda7857e129b05d8d1b11c738d481203b375e6c1) Remove deprecated CMSPageHistoryViewer (Aaron Carlino) - -- silverstripe/errorpage (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-10-10 [f89cd0b](https://github.com/silverstripe/silverstripe-errorpage/commit/f89cd0bf3d0c9f66d4aa69d7fdc48ee5abc77c5b) Strongly-type action method signatures (Steve Boyd) - -- silverstripe/versioned (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-07 [561275b](https://github.com/silverstripe/silverstripe-versioned/commit/561275bc110790aa25d670cf52d9ded90940cee8) Remove deprecated code (#381) (Sabina Talipova) - - 2022-09-01 [e2924d2](https://github.com/silverstripe/silverstripe-versioned/commit/e2924d2ed1905c4c1c01240fb005317f19c5f554) Symfony 6 compatibility (Steve Boyd) - - 2018-01-12 [9eb2aee](https://github.com/silverstripe/silverstripe-versioned/commit/9eb2aee199778276cd8b31932fee5f12785cdfea) Support new extend*() format for extension methods (Damian Mooyman) - -- silverstripe/graphql (4.3.0-rc1 -> 5.0.0-rc1) - - 2022-12-07 [f80bdec](https://github.com/silverstripe/silverstripe-graphql/commit/f80bdec41fae8ab2b61e6d1ca174e65a8e76325b) Remove deprecated code (#510) (Sabina Talipova) - - 2022-10-20 [14d9ef2](https://github.com/silverstripe/silverstripe-graphql/commit/14d9ef2897776ec8dfa5ce703c8118be501413be) Support of upgrading installer dependencies (#499) (Sabina Talipova) - -- silverstripe/tagfield (2.11.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [6f203a3](https://github.com/silverstripe/silverstripe-tagfield/commit/6f203a36af3535190ac171faf44d44743f442ff7) Remove deprecated code (#228) (Sabina Talipova) - -- silverstripe/comments (3.10.0-rc1 -> 4.0.0-rc1) - - 2023-01-17 [ff3ce69](https://github.com/silverstripe/silverstripe-comments/commit/ff3ce6978bd6d58ec573fbf2d1e4ddab2bbbc189) Remove deprecated code (Sabina Talipova) - -- silverstripe/sharedraftcontent (2.9.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [c2ceb88](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/c2ceb880aa326d12e476441ba265f8c88ea25940) Remove deprecated code (#183) (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (5.9.0-rc1 -> 6.0.0-rc1) - - 2023-01-25 [99559c5](https://github.com/symbiote/silverstripe-advancedworkflow/commit/99559c5f8fcee06ada972860e5a97fb595fe66e5) Remove deprecated code (#476) (Sabina Talipova) - -- silverstripe/userforms (5.15.0-rc1 -> 6.0.0-rc1) - - 2023-01-25 [1ea2b8e](https://github.com/silverstripe/silverstripe-userforms/commit/1ea2b8e87f197b5c726d8b3815890f388a684bc8) Remove deprecated code (#1185) (Sabina Talipova) - -- silverstripe/securityreport (2.6.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [b2c7a99](https://github.com/silverstripe/silverstripe-securityreport/commit/b2c7a9975d2ed02d29c58688f5509fef274ac457) Remove deprecated code (#60) (Sabina Talipova) - -- silverstripe/versionfeed (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [a753712](https://github.com/silverstripe/silverstripe-versionfeed/commit/a753712806dbaa336fc6e7e9695c4288ef1d039c) Remove deprecated code (#78) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.11.0-rc1 -> 5.0.0-rc1) - - 2023-01-25 [f6e0266](https://github.com/silverstripe/silverstripe-elemental/commit/f6e0266eea523e7c9d283009b261e946923622bf) Remove deprecated code (#1034) (Sabina Talipova) - - 2022-11-21 [9f0df28](https://github.com/silverstripe/silverstripe-elemental/commit/9f0df28608e1e9fe34952212f232c21ba391b6c0) Apply TopPage extensions by default. (#1010) (Guy Sartorelli) - - 2019-08-02 [005f8a9](https://github.com/silverstripe/silverstripe-elemental/commit/005f8a9f13a4c0c75b6c5cd0a1e0a6424471320d) Remove ElementalSolrIndex (Ingo Schommer) - -- cwp/cwp-search (1.8.0-rc1 -> 2.0.0-rc1) - - 2023-01-25 [d7fb9db](https://github.com/silverstripe/cwp-search/commit/d7fb9db5e881102ec81d1ee7c71e084bd76bcffc) Remove deprecated code (#52) (Sabina Talipova) - -- silverstripe/fulltextsearch (3.12.0-rc1 -> 4.0.0-rc1) - - 2023-01-25 [3663996](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/36639967aed7fd1b810ce27e4f0a25b39f88e726) Remove deprcated code (#336) (Sabina Talipova) - - 2023-01-20 [35340d4](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/35340d40057f1533687268997262185fdcff9084) Strongly type iterator classes and remove ReturnTypeWillChange annotation (Maxime Rainville) - -- symbiote/silverstripe-queuedjobs (4.12.0-rc1 -> 5.0.0-rc1) - - 2023-03-06 [40e869c](https://github.com/symbiote/silverstripe-queuedjobs/commit/40e869cf2c6ae2cd92d38f3e8c634c9de092957e) Remove deprecated code (Steve Boyd) - - 2022-10-26 [952727e](https://github.com/symbiote/silverstripe-queuedjobs/commit/952727e06ab2a339b2c30465abc96cfa7ef40f8e) Use correct typing for new version of monolog (Guy Sartorelli) - -- cwp/cwp-core (2.12.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [b8a6e11](https://github.com/silverstripe/cwp-core/commit/b8a6e11c1e1c547935b11e1acd21200deb1997c2) Remove deprecated code (#115) (Sabina Talipova) - -- silverstripe/auditor (2.6.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [c20c342](https://github.com/silverstripe/silverstripe-auditor/commit/c20c3428eaa6e94afda1f0d23397c6a5f3ca32f2) Remove deprecated code (#48) (Sabina Talipova) - -- silverstripe/environmentcheck (2.7.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [56b3753](https://github.com/silverstripe/silverstripe-environmentcheck/commit/56b37530d68b4aa90f7b3d655cf5c829916ca1dc) Remove deprecated code (#83) (Sabina Talipova) - -- silverstripe/hybridsessions (2.7.0-rc1 -> 3.0.0-rc1) - - 2023-01-17 [67bc3bd](https://github.com/silverstripe/silverstripe-hybridsessions/commit/67bc3bd8933d80688ed9572f49c99e1b9ccfd311) Remove deprecated code (Sabina Talipova) - - 2023-01-13 [443a927](https://github.com/silverstripe/silverstripe-hybridsessions/commit/443a92749d05c5ce3ea8aab6d9cbb8e67cde5b1b) Remove ReturnTypeWillChange annotation (Maxime Rainville) - -- silverstripe/registry (2.6.0-rc1 -> 3.0.0-rc1) - - 2022-12-08 [1ff8d18](https://github.com/silverstripe/silverstripe-registry/commit/1ff8d1837d69b8d076b9c662ce0141ca66b473ac) Update import() signature (Steve Boyd) - -- silverstripe/mfa (4.8.0-rc1 -> 5.0.0-rc1) - - 2023-01-25 [096ea96](https://github.com/silverstripe/silverstripe-mfa/commit/096ea96600a17e0c301dee505b458ce20ee6a261) Remove deprecated code (#480) (Sabina Talipova) - -- silverstripe/crontask (2.6.0-rc1 -> 3.0.0-rc1) - - 2023-01-25 [412cfeb](https://github.com/silverstripe/silverstripe-crontask/commit/412cfeb4cdb775941103783ad0d3fca6d9cc4a59) Remove deprecated code (#73) (Sabina Talipova) - -- silverstripe/ldap (1.6.0-rc1 -> 2.0.0-rc1) - - 2023-01-25 [b9c070e](https://github.com/silverstripe/silverstripe-ldap/commit/b9c070e467950f9027087eca2978852e093e594a) Remove deprecated code (#47) (Sabina Talipova) - - 2023-01-20 [c71c2f0](https://github.com/silverstripe/silverstripe-ldap/commit/c71c2f0ee7cb4e9eada3588279d143226da6388a) Remove ReturnTypeWillChange annotation (Maxime Rainville) - -- silverstripe/webauthn-authenticator (4.7.0-rc1 -> 5.0.0-rc1) - - 2023-02-07 [724925d](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/724925daf0e1994b0689ee03d94b102a3c1a9b7d) Remove deprecated code (#125) (Sabina Talipova) - -- silverstripe/subsites (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-03-06 [1336c7e](https://github.com/silverstripe/silverstripe-subsites/commit/1336c7e48db59bab0057eb76148a7f497d2b3ba7) Remove deprecated code (Steve Boyd) - - 2023-01-26 [d4bc28e](https://github.com/silverstripe/silverstripe-subsites/commit/d4bc28e65cf211c92a1471921b74f51cfca26047) Remove deprecated code (Steve Boyd) - -- cwp/cwp (2.11.0-rc1 -> 3.0.0-rc1) - - 2023-03-09 [0d1927e](https://github.com/silverstripe/cwp/commit/0d1927e3d26af678bc1165df1fb1e2117b402e23) Remove CwpSiteSummaryExtension (Steve Boyd) - - 2023-01-25 [dec2a6f](https://github.com/silverstripe/cwp/commit/dec2a6f77cd7ddbc108bbe9f60176b411f267e0e) Remove deprecated code (#318) (Sabina Talipova) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0-beta1) - - 2023-01-25 [2f7109a](https://github.com/colymba/GridFieldBulkEditingTools/commit/2f7109ac5224b9e9b6afa3e7d7a1064c6b7ca75c) Remove deprecated code (#230) (Sabina Talipova) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0-beta1) - - 2023-02-16 [1af962f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1af962fc34eada5e8830b1ad23c680c2afa0abdf) Remove deprecated methods. (Guy Sartorelli) - - 2020-03-19 [cf3b646](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cf3b6468f5c8eb5590204c06f8175a5e0da19271) Add FluentIsolatedExtension for objects which only belong to a single locale (Damian Mooyman) - -- silverstripe/dynamodb (4.1.0 -> 5.0.0-rc1) - - 2023-02-13 [ebc58bf](https://github.com/silverstripe/silverstripe-dynamodb/commit/ebc58bf666cc81bab675935e40a5877d720ff501) Add strong typing and update code syntax (Guy Sartorelli) - -### Dependencies - -- silverstripe/recipe-kitchen-sink (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-21 [202ccae](https://github.com/silverstripe/recipe-kitchen-sink/commit/202ccae2ab807a69078ec4b4810b44c33dc314b8) Stop using the fork of fluent (Guy Sartorelli) - - 2023-02-14 [eb33da1](https://github.com/silverstripe/recipe-kitchen-sink/commit/eb33da1637e61251da90e99f8359a9c151fe9f75) Add silverstripe/dynamodb (Steve Boyd) - - 2023-02-08 [fea0e62](https://github.com/silverstripe/recipe-kitchen-sink/commit/fea0e62f99b090a9cab32844f8e4dc20c1005a93) Add more modules (Steve Boyd) - - 2023-02-08 [36483f4](https://github.com/silverstripe/recipe-kitchen-sink/commit/36483f4a13b75ba852c8c7df68cb0755a82c8b7a) Use caret for silverstripe/recipe-plugin (Steve Boyd) - - 2023-01-29 [3979d78](https://github.com/silverstripe/recipe-kitchen-sink/commit/3979d7840b050abdaef6ad5c7bbb3874734eb230) Remove silverstripe/security-extensions (Guy Sartorelli) - - 2023-01-18 [6701348](https://github.com/silverstripe/recipe-kitchen-sink/commit/67013489e4d50f89d043f7e0336540a97b698322) remove cwp/cwp-pdfexport (Steve Boyd) - - 2022-12-19 [cd343c3](https://github.com/silverstripe/recipe-kitchen-sink/commit/cd343c3a60684074433cce756a5de8fa6f32812c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-plugin (1.7.0 -> 2.0.0) - - 2022-10-26 [b81b640](https://github.com/silverstripe/recipe-plugin/commit/b81b640235d5b18e99278268af4c39df30787dd3) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [e0aeb69](https://github.com/silverstripe/recipe-plugin/commit/e0aeb694a91fc2aea056ea9421adcadc0d146d39) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/installer (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-07 [7b49f0e](https://github.com/silverstripe/silverstripe-installer/commit/7b49f0e12980b0ed1560f3f04380765d1e7584a8) Use caret for plugins (Steve Boyd) - - 2022-12-14 [406ee71](https://github.com/silverstripe/silverstripe-installer/commit/406ee71a48d0dc05dde81fbebafbe41876f7d9af) Require dev branches for composer plugins (#340) (Guy Sartorelli) - - 2022-08-04 [8ca19d5](https://github.com/silverstripe/silverstripe-installer/commit/8ca19d5eb778e62aff776b585f77054a7e9fcac3) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/vendor-plugin (1.7.0 -> 2.0.0) - - 2022-10-26 [6d322f9](https://github.com/silverstripe/vendor-plugin/commit/6d322f944312caed0135dec87c802f512c011bb3) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [c2e1c7f](https://github.com/silverstripe/vendor-plugin/commit/c2e1c7f451d27f4f6b1ae44105d01ac78364cbab) Require composer/installers ^2 (Steve Boyd) - - 2022-08-04 [de85c78](https://github.com/silverstripe/vendor-plugin/commit/de85c7817947656b40efcefc69bc632ccfbf796d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-08-04 [6e7dce8](https://github.com/silverstripe/recipe-cms/commit/6e7dce8f2e0574737b3ff3b114f39c1d6a6c3d06) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-core (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-08-09 [7716a27](https://github.com/silverstripe/recipe-core/commit/7716a27a70adbf2048a7004edf51102a15e4a3e9) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5a447f9](https://github.com/silverstripe/recipe-core/commit/5a447f93b30951916b0d846c1cb494a427c60438) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/assets (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-10-31 [a2733b9](https://github.com/silverstripe/silverstripe-assets/commit/a2733b90fae4f441ded07ce526621e13822c6ae8) Upgrade legue/flysystem to version 3.0 (#524) (Sabina Talipova) - - 2022-09-01 [32dd083](https://github.com/silverstripe/silverstripe-assets/commit/32dd083867d71ad26494f61fe15c607c8c17cc5d) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [22ab6c3](https://github.com/silverstripe/silverstripe-assets/commit/22ab6c3101f212df9cc4d5a736e1b7f44c3cea2c) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [35fd723](https://github.com/silverstripe/silverstripe-assets/commit/35fd723748f7bd6cd4dd4ed06639f52316051c54) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/config (1.6.0-rc1 -> 2.0.0-rc1) - - 2023-03-17 [e4a66ae](https://github.com/silverstripe/silverstripe-config/commit/e4a66ae63348bbd95f4c30b70789ad8380409e82) Decouple from silverstripe/framework (Guy Sartorelli) - - 2022-10-25 [48b1336](https://github.com/silverstripe/silverstripe-config/commit/48b1336f7b4c78daec794dc2f448dd95cd35e409) Upgrade dependencies CMS5 (Sabina Talipova) - - 2022-09-01 [6ec9ca3](https://github.com/silverstripe/silverstripe-config/commit/6ec9ca350fbb4984803db9b089b556c54e6add19) Require symfony ^6.1 (Steve Boyd) - - 2022-08-09 [b00bfbc](https://github.com/silverstripe/silverstripe-config/commit/b00bfbccdfae47e81a69a64610a53d0fae33d954) Require latest patch versions of dependencies (Steve Boyd) - - 2022-08-04 [52a9dd5](https://github.com/silverstripe/silverstripe-config/commit/52a9dd572a8052d484e2dc5fd6adf1445d6c0fbb) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/framework (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-03-02 [9868eca7e](https://github.com/silverstripe/silverstripe-framework/commit/9868eca7eb29ff89cc90d9263f74e762cb9f8233) Bump masterminds/html5 to 2.7.6 to fix deperaction warning (#10714) (Maxime Rainville) - - 2023-01-16 [05fc1df89](https://github.com/silverstripe/silverstripe-framework/commit/05fc1df8965be69582e0b3391f707303792d396f) Allow psr/container ^1.1 or ^2.0 (Steve Boyd) - - 2023-01-11 [7c20ade54](https://github.com/silverstripe/silverstripe-framework/commit/7c20ade5488f2347fbb6559cf066a27191aeacd7) Replace thirdparty simpletest with symfony domcrawler (Guy Sartorelli) - - 2023-01-10 [3f3772dc6](https://github.com/silverstripe/silverstripe-framework/commit/3f3772dc660add611902ad4949997ce3c160847e) Remove unnecessary bramus/monolog-colored-line-formatter (Guy Sartorelli) - - 2022-12-21 [156c6ca59](https://github.com/silverstripe/silverstripe-framework/commit/156c6ca59501b2435787da51a4f1f446c66c36ae) Update minimum version of oscarotero/html-parser (Steve Boyd) - - 2022-10-20 [3601b7ab8](https://github.com/silverstripe/silverstripe-framework/commit/3601b7ab8b506e6aaa41e1e89078df99ca484942) Upgrade installer dependencies (#10534) (Sabina Talipova) - - 2022-09-01 [e6fb9634b](https://github.com/silverstripe/silverstripe-framework/commit/e6fb9634b5c7b233538b3ecb3db703e58af9242b) Revert change to dependency that was made during a merge-up (#10479) (Guy Sartorelli) - - 2022-08-09 [470753194](https://github.com/silverstripe/silverstripe-framework/commit/470753194c837a8db9a7b00634c5f23ecce7dbfc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [eb62db6db](https://github.com/silverstripe/silverstripe-framework/commit/eb62db6dba91f87941404360f6d6acfa6afbe33d) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/mimevalidator (2.5.0-rc1 -> 3.0.0-rc1) - - 2022-10-26 [d0982dc](https://github.com/silverstripe/silverstripe-mimevalidator/commit/d0982dca4f8c52a3c806c5edf119123ebd1328b7) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [19251bf](https://github.com/silverstripe/silverstripe-mimevalidator/commit/19251bfd2f1cea32183f6c0ffafb42496bc5cfe2) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c8916a3](https://github.com/silverstripe/silverstripe-mimevalidator/commit/c8916a307d7ce42a07916cadf985742b9d7fea67) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [2b8f53e9](https://github.com/silverstripe/silverstripe-admin/commit/2b8f53e9bc3729b6ce05776c5e559c1586212170) Upgrade front-end build stack (#1389) (Guy Sartorelli) - - 2022-09-19 [e8f3f353](https://github.com/silverstripe/silverstripe-admin/commit/e8f3f353782f99303acbc5fc22b3b4b94e4bf115) Upgrade TinyMCE from 4 to 6 (Guy Sartorelli) - - 2022-08-09 [5fc5071c](https://github.com/silverstripe/silverstripe-admin/commit/5fc5071c49b3f70302560804c17a2129ce6c0ae1) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [c80be4ee](https://github.com/silverstripe/silverstripe-admin/commit/c80be4ee7e41b3e36f2ab8b1c4ffe1496a127ba8) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/asset-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [6b95cde8](https://github.com/silverstripe/silverstripe-asset-admin/commit/6b95cde82e3cff1f7d1b94fdb2258db4826674e7) Upgrade build stack (#1303) (Guy Sartorelli) - - 2022-08-09 [c12dcfe4](https://github.com/silverstripe/silverstripe-asset-admin/commit/c12dcfe4fdcf3f837eb2b96a137c4c86185d8c7a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [1ad9dcd2](https://github.com/silverstripe/silverstripe-asset-admin/commit/1ad9dcd2db3d0596ddb9a0035a6422d10a46e731) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/campaign-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [708e384](https://github.com/silverstripe/silverstripe-campaign-admin/commit/708e384671671ebc7db5e6e4d64b404fcc43d3af) Upgrade build stack (#248) (Guy Sartorelli) - - 2022-08-09 [45b4b3c](https://github.com/silverstripe/silverstripe-campaign-admin/commit/45b4b3cff6026ea22b4f0bed828566ae9309db30) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7c949f2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7c949f2030325d7c6309b23112e4dbdfa8584ef3) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned-admin (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [afc0dbd](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afc0dbd8411dd3ff0f70015f3305cf44acbd724b) Upgrade webpack build stack (#263) (Guy Sartorelli) - - 2022-10-26 [c26a921](https://github.com/silverstripe/silverstripe-versioned-admin/commit/c26a921f59d93dc57989591b10b7311c8d974b8f) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [6c60865](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6c60865978c54f651922563d01ed1e35dae3f811) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-12-18 [5e843d26](https://github.com/silverstripe/silverstripe-cms/commit/5e843d26194ddfbac7d1bdb760b8de73901f6b28) Upgrade build stack (#2795) (Guy Sartorelli) - - 2022-08-09 [7381de15](https://github.com/silverstripe/silverstripe-cms/commit/7381de15e87d4f6feaada2ec7e9d4124b058506d) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [72f8e5f7](https://github.com/silverstripe/silverstripe-cms/commit/72f8e5f71db0d0ae8390206156a3a2170284f5cd) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/errorpage (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-08-09 [f5a177c](https://github.com/silverstripe/silverstripe-errorpage/commit/f5a177ca97a665ceebd96dc35f3ebd25863ba05a) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [5700408](https://github.com/silverstripe/silverstripe-errorpage/commit/57004082dac802d74e3aa328e67228d416ab9566) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/reports (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-10-26 [23786e5d](https://github.com/silverstripe/silverstripe-reports/commit/23786e5daffcb3167dbce162e9a53ad261cacc8d) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [65bc353f](https://github.com/silverstripe/silverstripe-reports/commit/65bc353f43165a81c7c6295ece2c13465cbf8241) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/siteconfig (4.13.0-rc1 -> 5.0.0-rc1) - - 2022-10-26 [30197074](https://github.com/silverstripe/silverstripe-siteconfig/commit/30197074e97c0b30e9161d8030d94e131416e415) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [400b82c4](https://github.com/silverstripe/silverstripe-siteconfig/commit/400b82c48b62b3c92b80a42998c56ca51fe4871a) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/versioned (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-10-26 [3f55378](https://github.com/silverstripe/silverstripe-versioned/commit/3f5537817d7711a9e439726d3a43d4042656191c) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-04 [c9dbdd6](https://github.com/silverstripe/silverstripe-versioned/commit/c9dbdd63f886039873484b46b7b8b27d6d5d941c) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/graphql (4.3.0-rc1 -> 5.0.0-rc1) - - 2023-01-13 [1149129](https://github.com/silverstripe/silverstripe-graphql/commit/11491291871068f9e9e115cce089e860aad61d9b) Use webonyx/graphq-PHP 15 (Steve Boyd) - - 2022-10-26 [32d25c7](https://github.com/silverstripe/silverstripe-graphql/commit/32d25c79a368d4c03034a3e1acde2d2315fb382d) Upgrade installer dependencies (Sabina Talipova) - - 2022-08-09 [5b5971f](https://github.com/silverstripe/silverstripe-graphql/commit/5b5971fdafb12703b7e9697d21b27662bb61942b) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e63d41d](https://github.com/silverstripe/silverstripe-graphql/commit/e63d41d8db4cbe1d07092eece5e096a0be2c21ad) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/session-manager (1.5.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [4043291](https://github.com/silverstripe/silverstripe-session-manager/commit/4043291c197567bf9d931fcb93660890229b8a86) Upgrade build stack (#123) (Guy Sartorelli) - - 2022-08-17 [8712b4b](https://github.com/silverstripe/silverstripe-session-manager/commit/8712b4b52ca6f7008c3ca61ee79173c6e374578e) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [e0092bf](https://github.com/silverstripe/silverstripe-session-manager/commit/e0092bf2aa912840c0906cb78bd177f322243762) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/login-forms (4.9.0-rc1 -> 5.0.0-rc1) - - 2022-12-18 [4f4e68e](https://github.com/silverstripe/silverstripe-login-forms/commit/4f4e68e9f016875c013b7889a5c79f7fdc49e44e) Upgrade build stack (#128) (Guy Sartorelli) - - 2022-08-09 [89769f4](https://github.com/silverstripe/silverstripe-login-forms/commit/89769f4e90a0694362fb284705ac66f6bf280bbc) Update dependencies for CMS 5 (Steve Boyd) - - 2022-08-04 [7948d1e](https://github.com/silverstripe/silverstripe-login-forms/commit/7948d1ecc6d88c63e710690567be4855e8f614ab) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-authoring-tools (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [3ec9b66](https://github.com/silverstripe/recipe-authoring-tools/commit/3ec9b666cd1738dd2469c145ecdbcd33cde1ed7e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/documentconverter (2.5.0-rc1 -> 3.0.0-rc1) - - 2023-01-31 [fc23e53](https://github.com/silverstripe/silverstripe-documentconverter/commit/fc23e53084ad7040ae037704bcdb9b8468304d25) Upgrade frontend build stack (#38) (Guy Sartorelli) - - 2022-12-18 [5bbaed1](https://github.com/silverstripe/silverstripe-documentconverter/commit/5bbaed1a4b1ad998165efbb9d8aab25aad13558b) PHP Support in CMS5 (#35) (Sabina Talipova) - -- silverstripe/iframe (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-10 [031d47c](https://github.com/silverstripe/silverstripe-iframe/commit/031d47ce207b8b5e886ad446cb3c31e6ae7e0ef0) PHP Support in CMS5 (#63) (Sabina Talipova) - -- silverstripe/tagfield (2.11.0-rc1 -> 3.0.0-rc1) - - 2023-02-01 [249842f](https://github.com/silverstripe/silverstripe-tagfield/commit/249842fab884d33e4fc3177ebe42c65bb648c164) Upgrade frontend build stack (#229) (Guy Sartorelli) - - 2022-12-18 [08d1646](https://github.com/silverstripe/silverstripe-tagfield/commit/08d1646e4c7b09558f94255c5f572dd3b1e0a305) PHP Support in CMS5 (#224) (Sabina Talipova) - -- silverstripe/taxonomy (2.5.0-rc1 -> 3.0.0-rc1) - - 2022-12-18 [95a13ed](https://github.com/silverstripe/silverstripe-taxonomy/commit/95a13edd6445c94ba1208a6f3a52252ba38dc969) PHP Support in CMS5 (#85) (Sabina Talipova) - -- silverstripe/recipe-blog (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [3e5a612](https://github.com/silverstripe/recipe-blog/commit/3e5a61232ebb99b3c1fdb555cb083089921f99a0) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/blog (3.12.0-rc1 -> 4.0.0-rc1) - - 2023-02-07 [ffea8ac](https://github.com/silverstripe/silverstripe-blog/commit/ffea8acb0e7e2bb4ed571c1ba9bf1dd3621b8599) Upgrade frontend build stack (#697) (Guy Sartorelli) - - 2022-12-09 [29f0b39](https://github.com/silverstripe/silverstripe-blog/commit/29f0b392717295091b212826091170a6e3bd3e2c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/widgets (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-09 [9df1794](https://github.com/silverstripe/silverstripe-widgets/commit/9df179450eb56a98a62452a571dca8ece5c55dbe) PHP Support in CMS5 (#193) (Sabina Talipova) - -- silverstripe/content-widget (2.4.0 -> 3.0.0-rc1) - - 2022-12-18 [0b65d10](https://github.com/silverstripe/silverstripe-content-widget/commit/0b65d105c3e23782c8bb85afdeefe617fd5a92a6) PHP Support in CMS5 (#35) (Sabina Talipova) - -- silverstripe/spamprotection (3.4.0-rc1 -> 4.0.0-rc1) - - 2022-12-13 [d669b42](https://github.com/silverstripe/silverstripe-spamprotection/commit/d669b42cc96af2920cc021f99bb5ffc7334a2eef) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/comments (3.10.0-rc1 -> 4.0.0-rc1) - - 2023-01-20 [3aee737](https://github.com/silverstripe/silverstripe-comments/commit/3aee7377a94b952363bc48214b7a6bdcebc87483) Upgrade frontend build stack (Guy Sartorelli) - - 2022-12-09 [d6b44f2](https://github.com/silverstripe/silverstripe-comments/commit/d6b44f2385db141a428c35a48b3bf6c17f85e43c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/comment-notifications (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-02-07 [11528c7](https://github.com/silverstripe/comment-notifications/commit/11528c7adf36cb095a5f9d4f48233339858a55de) Explicitly require framework (Steve Boyd) - - 2022-12-09 [5fed9b2](https://github.com/silverstripe/comment-notifications/commit/5fed9b29007e9933651839d33c17051f3a642bc8) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-collaboration (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-01-10 [30038f1](https://github.com/silverstripe/recipe-collaboration/commit/30038f199dbf6933b780103b2735f149fab74a0d) PHP Support in CMS5 (#21) (Sabina Talipova) - -- silverstripe/contentreview (4.7.0-rc1 -> 5.0.0-rc1) - - 2023-01-30 [dc66fe8](https://github.com/silverstripe/silverstripe-contentreview/commit/dc66fe86c9c95731651b927b7b09859205211403) Upgrade frontend build stack (#182) (Guy Sartorelli) - - 2023-01-09 [f4b409e](https://github.com/silverstripe/silverstripe-contentreview/commit/f4b409e0d32fe6c5f1951ded11e4da5322475ea4) PHP Support in CMS5 (#178) (Sabina Talipova) - -- silverstripe/sharedraftcontent (2.9.0-rc1 -> 3.0.0-rc1) - - 2023-01-30 [2ae00a0](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/2ae00a014657eec6777ba4f5bb56e185fd5bc821) Upgrade build stack (#186) (Guy Sartorelli) - - 2022-12-18 [ecb33ba](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/ecb33ba101ca7a746301fd4515a4ae377eeb5057) PHP Support in CMS5 (#181) (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (5.9.0-rc1 -> 6.0.0-rc1) - - 2023-02-07 [6f8b057](https://github.com/symbiote/silverstripe-advancedworkflow/commit/6f8b057ad4c1815ec6c34e796861233b04eaa611) Upgrade frontend build stack (#478) (Guy Sartorelli) - - 2023-01-10 [579fbb0](https://github.com/symbiote/silverstripe-advancedworkflow/commit/579fbb0f05275acdd3cfc3f11b41a2ecad8e1d0f) PHP Support in CMS5 (#474) (Sabina Talipova) - -- silverstripe/recipe-form-building (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [317c7c2](https://github.com/silverstripe/recipe-form-building/commit/317c7c219a24c98c08c8e0ad5e64b6ef082c739e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/segment-field (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-01-31 [e431f24](https://github.com/silverstripe/silverstripe-segment-field/commit/e431f243ea9803273c4126a919af1edc17df4b7b) Upgrade frontend build stack (#74) (Guy Sartorelli) - - 2022-12-18 [c820963](https://github.com/silverstripe/silverstripe-segment-field/commit/c820963a9f4667150b05c0946355028c5a4b7dc2) PHP Support in CMS5 (#72) (Sabina Talipova) - -- silverstripe/userforms (5.15.0-rc1 -> 6.0.0-rc1) - - 2023-01-30 [1c0dd09](https://github.com/silverstripe/silverstripe-userforms/commit/1c0dd0944515b4f20011c8ff7fd1b2064775148a) Upgrade frontend build stack (#1191) (Guy Sartorelli) - - 2022-12-13 [2b9d983](https://github.com/silverstripe/silverstripe-userforms/commit/2b9d9833b3c706a56a54b7c725f42afca90674a5) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-reporting-tools (1.13.0-rc1 -> 2.0.0-rc1) - - 2022-12-18 [adcb4e1](https://github.com/silverstripe/recipe-reporting-tools/commit/adcb4e1fb15623f43d04863a743888f9fb8aaeaa) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/externallinks (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-30 [8ce91fb](https://github.com/silverstripe/silverstripe-externallinks/commit/8ce91fb84f98f4987084ba5bf750307209d1ad95) Upgrade frontend build stack (#90) (Guy Sartorelli) - - 2022-12-18 [fc8f9d5](https://github.com/silverstripe/silverstripe-externallinks/commit/fc8f9d55c77eb273f4bd5fb47b4cc0863f045526) PHP Support in CMS5 (#87) (Sabina Talipova) - -- silverstripe/securityreport (2.6.0-rc1 -> 3.0.0-rc1) - - 2023-01-10 [731da75](https://github.com/silverstripe/silverstripe-securityreport/commit/731da7578aadbfb7df8633b16803277960b19e02) PHP Support in CMS5 (#59) (Sabina Talipova) - -- silverstripe/sitewidecontent-report (3.4.0-rc1 -> 4.0.0-rc1) - - 2023-01-30 [5e5ab46](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/5e5ab46b9764c73d927737fcf4126e9ab8908b1a) Upgrade frontend build stack (#59) (Guy Sartorelli) - - 2023-01-10 [8b12ef8](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/8b12ef857e58f696e33ee1116c0a93bdc734725e) PHP Support in CMS5 (#57) (Sabina Talipova) - -- bringyourownideas/silverstripe-maintenance (2.7.0-rc1 -> 3.0.0-rc1) - - 2023-01-31 [1ecb60e](https://github.com/bringyourownideas/silverstripe-maintenance/commit/1ecb60eb4db38599552d1a8b5c22bee685106c5e) Upgrade frontend build stack (#187) (Guy Sartorelli) - - 2022-12-08 [9cadfaf](https://github.com/bringyourownideas/silverstripe-maintenance/commit/9cadfaf7448cbea8b2c6a66dff55b1146f5ed47b) PHP Support in CMS5 (Sabina Talipova) - -- bringyourownideas/silverstripe-composer-update-checker (3.0.0 -> 4.0.0-rc1) - - 2022-12-08 [3c9044b](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/3c9044b7c57839c90875cdc5665f5f115f80a81c) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-services (1.13.0-rc1 -> 2.0.0-rc1) - - 2023-01-10 [4ff9f8c](https://github.com/silverstripe/recipe-services/commit/4ff9f8c931569c13b3f57e6229f5f0c50646cd47) PHP Support in CMS5 (#23) (Sabina Talipova) - -- silverstripe/restfulserver (2.6.0-rc1 -> 3.0.0-rc1) - - 2022-12-18 [d788f5d](https://github.com/silverstripe/silverstripe-restfulserver/commit/d788f5dcd01e4195d488741d2e615b745578bdbd) PHP Support in CMS5 (#102) (Sabina Talipova) - -- silverstripe/versionfeed (2.4.0-rc1 -> 3.0.0-rc1) - - 2023-01-10 [9b92ba8](https://github.com/silverstripe/silverstripe-versionfeed/commit/9b92ba8d6c9f5b8ba0bf8c4f305322d4e591724e) PHP Support in CMS5 (#77) (Sabina Talipova) - -- silverstripe/recipe-content-blocks (2.13.0-rc1 -> 3.0.0-rc1) - - 2023-01-17 [522442c](https://github.com/silverstripe/recipe-content-blocks/commit/522442c5a0bc4b65e26d509f6dde4d6ad11043c0) PHP Support in CMS5 (#28) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (4.11.0-rc1 -> 5.0.0-rc1) - - 2023-01-13 [bfed1ab](https://github.com/silverstripe/silverstripe-elemental/commit/bfed1abbe9d75bdeea99939545481a6ffacd29e2) Upgrade front-end build stack (Guy Sartorelli) - - 2022-08-10 [02c3ed0](https://github.com/silverstripe/silverstripe-elemental/commit/02c3ed06d305e23dd9845a15fb4373b56cff2e7f) Update dependencies for CMS 5 (Steve Boyd) - -- silverstripe/elemental-fileblock (2.5.0-rc1 -> 3.0.0-rc1) - - 2022-12-12 [405c688](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/405c68842fc42617e1400e24c9fb1a88aa74e304) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/elemental-bannerblock (2.7.0-rc1 -> 3.0.0-rc1) - - 2023-01-30 [91190b8](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/91190b85eccee6893015e85a5da6c3611fca15f6) Upgrade frontend build stack (#98) (Guy Sartorelli) - - 2023-01-16 [732f442](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/732f442b835d187bb97d904111edd33f00bc5b57) Loosen the elemental constrain to avoid conflicts on other PRs (Maxime Rainville) - - 2022-12-12 [e9cac1b](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/e9cac1b3d2aded9892bb9fb60017c7a8a20a6fa9) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/recipe-solr-search (2.13.0-rc1 -> 3.0.0-rc1) - - 2022-12-18 [bf4c9ab](https://github.com/silverstripe/recipe-solr-search/commit/bf4c9abe34b93bed4afe57c7959c48ba7cda026b) PHP Support in CMS5 (Sabina Talipova) - -- cwp/cwp-search (1.8.0-rc1 -> 2.0.0-rc1) - - 2023-01-17 [c47f5a4](https://github.com/silverstripe/cwp-search/commit/c47f5a45af87f843c4480697822d463f15dfa2bc) PHP Support in CMS5 (#51) (Sabina Talipova) - -- silverstripe/fulltextsearch (3.12.0-rc1 -> 4.0.0-rc1) - - 2022-12-12 [525eb9a](https://github.com/silverstripe/silverstripe-fulltextsearch/commit/525eb9aa24d5006264e3e511c7cec955e1790b01) PHP Support in CMS5 (Sabina Talipova) - -- symbiote/silverstripe-queuedjobs (4.12.0-rc1 -> 5.0.0-rc1) - - 2022-08-10 [4db7317](https://github.com/symbiote/silverstripe-queuedjobs/commit/4db73170a5c4eb07be75c21e41924040bde856ee) Update dependencies for CMS 5 (Steve Boyd) - -- silverstripe/recipe-ccl (2.13.0-rc1 -> 3.0.0-rc1) - - 2023-01-17 [9f43099](https://github.com/silverstripe/recipe-ccl/commit/9f430997893405cb657f63e765470fa0cce662da) PHP Support in CMS5 (#7) (Sabina Talipova) - -- cwp/cwp-core (2.12.0-rc1 -> 3.0.0-rc1) - - 2023-01-17 [0e416b0](https://github.com/silverstripe/cwp-core/commit/0e416b001ac8d047c2242ef7589b6dbb6d550568) PHP Support in CMS5 (#114) (Sabina Talipova) - -- silverstripe/auditor (2.6.0-rc1 -> 3.0.0-rc1) - - 2023-01-17 [e5162c8](https://github.com/silverstripe/silverstripe-auditor/commit/e5162c86be7156cb1bd966cf076a9dcaf6429a96) PHP Support in CMS5 (#47) (Sabina Talipova) - -- silverstripe/environmentcheck (2.7.0-rc1 -> 3.0.0-rc1) - - 2022-12-18 [d038843](https://github.com/silverstripe/silverstripe-environmentcheck/commit/d03884338bf26fe2e021a2d5328e52900ea1eacd) PHP Support in CMS5 (#82) (Sabina Talipova) - -- silverstripe/hybridsessions (2.7.0-rc1 -> 3.0.0-rc1) - - 2022-12-12 [495ebfb](https://github.com/silverstripe/silverstripe-hybridsessions/commit/495ebfb45cf71b14307987f8164534b5fa29b80f) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/registry (2.6.0-rc1 -> 3.0.0-rc1) - - 2022-08-04 [212ad7d](https://github.com/silverstripe/silverstripe-registry/commit/212ad7d5d75c6eba12bc199d655cfa46d6780d69) Update core dependencies for CMS 5 (Steve Boyd) - -- silverstripe/totp-authenticator (4.6.0-rc1 -> 5.0.0-rc1) - - 2023-03-08 [0973c8c](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/0973c8c829ceffdf06eac1a207eeb0aa8b6badff) Require spomky-labs/otphp ^11.1 (Steve Boyd) - - 2023-01-30 [2518a69](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/2518a6978bdf62d38e80610ce4e9bbbdc78d3ec7) Upgrade frontend build stack (#109) (Guy Sartorelli) - - 2023-01-17 [113f966](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/113f96614405256283378c7a7065afe013de6ac8) PHP Support in CMS5 (#107) (Sabina Talipova) - -- silverstripe/mfa (4.8.0-rc1 -> 5.0.0-rc1) - - 2023-01-30 [9859c77](https://github.com/silverstripe/silverstripe-mfa/commit/9859c775a8c49d0a247c16fb9a057f203708ad05) Remove silverstripe/security-extensions dependency (Guy Sartorelli) - - 2023-01-30 [a86914c](https://github.com/silverstripe/silverstripe-mfa/commit/a86914cef92de2ef38bebe7f3e531233002aadc0) Upgrade frontend build stack (#481) (Guy Sartorelli) - - 2022-12-13 [99b454b](https://github.com/silverstripe/silverstripe-mfa/commit/99b454bdb9363ccdc3131c3128d7766ec910cb0a) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/crontask (2.6.0-rc1 -> 3.0.0-rc1) - - 2022-12-18 [463023e](https://github.com/silverstripe/silverstripe-crontask/commit/463023edafd14128904137ebef84e9cc36104bf5) PHP Support in CMS5 (#72) (Sabina Talipova) - -- silverstripe/gridfieldqueuedexport (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-01-31 [65963b5](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/65963b5ac327d55d9716d8a0ec8b7252c61e75e2) Upgrade frontend build stack (#71) (Guy Sartorelli) - - 2022-12-18 [7cd8e1d](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/7cd8e1d465dd0822c28c6fda03cc59033854ec84) PHP Support in CMS5 (#69) (Sabina Talipova) - -- silverstripe/ldap (1.6.0-rc1 -> 2.0.0-rc1) - - 2022-12-12 [5b77ab8](https://github.com/silverstripe/silverstripe-ldap/commit/5b77ab8e03b9fb1272a1bf973a4efd3e59f08b41) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/textextraction (3.5.0-rc1 -> 4.0.0-rc1) - - 2022-12-13 [862fb81](https://github.com/silverstripe/silverstripe-textextraction/commit/862fb811bc97b7896bfcf7153c632eef5df057b5) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/realme (4.4.0-rc1 -> 5.0.0-rc1) - - 2023-01-31 [aae6510](https://github.com/silverstripe/silverstripe-realme/commit/aae6510af0e6f4dc575ec9f0fde40fff8edd71e2) Upgrade frontend build stack (#94) (Guy Sartorelli) - - 2022-12-18 [3fd94ed](https://github.com/silverstripe/silverstripe-realme/commit/3fd94ed75b27ee0e51aeedea5ddb6bb646d2ac11) PHP Support in CMS5 (#92) (Sabina Talipova) - -- silverstripe/ckan-registry (1.7.0-rc1 -> 2.0.0-rc1) - - 2023-01-29 [5b2ded4](https://github.com/silverstripe/silverstripe-ckan-registry/commit/5b2ded4f7b6716142613d75b07bd86a1f9b4cde2) Upgrade frontend build stack (#281) (Guy Sartorelli) - - 2022-12-09 [1d70aa5](https://github.com/silverstripe/silverstripe-ckan-registry/commit/1d70aa5697971cec74d60de6b9f1ea5a4404071e) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/webauthn-authenticator (4.7.0-rc1 -> 5.0.0-rc1) - - 2023-01-30 [1e8cfb3](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/1e8cfb31e6d7ba30aa2b3ac0ab46a4912a64d76e) Upgrade frontend build stack (#126) (Guy Sartorelli) - - 2022-12-13 [33d4507](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/33d45072f592cb7789774c88e270f964e58a4ce6) PHP Support in CMS5 (Sabina Talipova) - -- silverstripe/subsites (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-01-24 [47e293b](https://github.com/silverstripe/silverstripe-subsites/commit/47e293bdeb4c475e3d51fc57b2b625e0f85570f3) Upgrade frontend build stack (Guy Sartorelli) - - 2023-01-10 [a67b7ef](https://github.com/silverstripe/silverstripe-subsites/commit/a67b7ef45f54f92a035ef7274d9dfca93a7b424c) PHP Support in CMS5 (#497) (Sabina Talipova) - -- silverstripe/lumberjack (2.3.0 -> 3.0.0-rc1) - - 2023-01-31 [7a953b0](https://github.com/silverstripe/silverstripe-lumberjack/commit/7a953b0ac4ef5808204bddef8a73e806f169d916) Upgrade frontend build stack (#117) (Guy Sartorelli) - - 2022-12-18 [e238865](https://github.com/silverstripe/silverstripe-lumberjack/commit/e238865074dfaa50b9f310bc26aa84eb19de54fe) PHP Support in CMS5 (#114) (Sabina Talipova) - -- silverstripe/staticpublishqueue (5.3.0 -> 6.0.0-rc1) - - 2022-12-18 [5432813](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/5432813d961c077f3eee6c90e63a102df8e097e8) PHP Support in CMS5 (#157) (Sabina Talipova) - -- cwp/starter-theme (3.3.0-rc1 -> 4.0.0-rc1) - - 2022-12-18 [a12e58a](https://github.com/silverstripe/cwp-starter-theme/commit/a12e58a9e7b851eb0545eaaab77c3a2446618361) PHP Support in CMS5 (#216) (Sabina Talipova) - -- cwp/agency-extensions (2.8.0-rc1 -> 3.0.0-rc1) - - 2023-01-31 [8e40f56](https://github.com/silverstripe/cwp-agencyextensions/commit/8e40f5621a7356bdc946cc29d655b5c025161b11) Upgrade frontend build stack (#82) (Guy Sartorelli) - - 2023-01-17 [3d1ae3d](https://github.com/silverstripe/cwp-agencyextensions/commit/3d1ae3d3080f26c73cc847813ec0275960e5c83e) PHP Support in CMS5 (#81) (Sabina Talipova) - -- cwp/watea-theme (3.2.0-rc1 -> 4.0.0-rc1) - - 2022-12-18 [0b71677](https://github.com/silverstripe/cwp-watea-theme/commit/0b71677b8ef1288429048e2cc0611c0247069c2a) PHP Support in CMS5 (#159) (Sabina Talipova) - -- cwp/cwp (2.11.0-rc1 -> 3.0.0-rc1) - - 2023-01-17 [ac2a374](https://github.com/silverstripe/cwp/commit/ac2a374ef0e1eb92ae932c41b18f79292ba8c48c) PHP Support in CMS5 (#317) (Sabina Talipova) - -- dnadesign/silverstripe-elemental-userforms (3.3.0-rc1 -> 4.0.0-rc1) - - 2022-12-09 [98ebc6f](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/98ebc6f3b135d30c4a5cc411af814e02b46e6427) PHP Support in CMS5 (Sabina Talipova) - -- symbiote/silverstripe-multivaluefield (5.4.0-rc1 -> 6.0.0-rc1) - - 2023-01-31 [95b8cea](https://github.com/symbiote/silverstripe-multivaluefield/commit/95b8ceadddef2a22a2fa903761bba6df22b20575) Upgrade frontend build stack (#88) (Guy Sartorelli) - - 2022-12-18 [ab0bf06](https://github.com/symbiote/silverstripe-multivaluefield/commit/ab0bf06ba3ea222cc34cda82afaf381558c0b97c) PHP Support in CMS5 (#86) (Sabina Talipova) - -- symbiote/silverstripe-gridfieldextensions (3.6.0 -> 4.0.0-rc1) - - 2022-08-10 [d0c0cc0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/d0c0cc08f0d6a337db7b033063694cf10662c769) Update dependencies for CMS 5 (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (3.1.0 -> 4.0.0-beta1) - - 2023-01-18 [dfcc4ce](https://github.com/colymba/GridFieldBulkEditingTools/commit/dfcc4ce48293cb83fbcfb92231ed2091c5b624c9) Upgrade frontend build stack (Guy Sartorelli) - - 2022-12-18 [1ec807c](https://github.com/colymba/GridFieldBulkEditingTools/commit/1ec807ccbe4371110c2b694ce99cc06ddd1382c8) PHP Support in CMS5 (#228) (Sabina Talipova) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0-beta1) - - 2023-01-26 [e85e5b8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e85e5b82daf904374628d87fbc9a15c319acf435) Upgrade frontend build stack (Guy Sartorelli) - - 2023-01-18 [0d9fc05](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0d9fc0593b56d0e319028885ce1475b7269c6acd) Upgrade dependencies for CMS 5 compatibility (Maxime Rainville) - - 2020-12-14 [f31e2c0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f31e2c0e82b094b65218e8b4445f21dd46d322e4) Bump ini from 1.3.4 to 1.3.7 (#661) (dependabot[bot]) - - 2020-09-04 [da92793](https://github.com/tractorcow-farm/silverstripe-fluent/commit/da927936e644894235b681feb8cb303222dbcece) Bump node-sass from 4.6.0 to 4.14.1 (dependabot[bot]) - - 2020-09-04 [6371f64](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6371f643708d5bc58ee6798325bbb5749a4bd062) Bump is-my-json-valid from 2.16.1 to 2.20.5 (dependabot[bot]) - - 2020-09-04 [7e51d10](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7e51d10b0e4cfeec8ede8d60b02067a70fe4de4d) Bump lodash.mergewith from 4.6.0 to 4.6.2 (dependabot[bot]) - - 2020-07-30 [4588efd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4588efdaf5ecc773745f9f90c326c0431ed5de09) Bump elliptic from 6.4.0 to 6.5.3 (dependabot[bot]) - - 2020-04-30 [5906b6c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5906b6c66f8ca499688db3b114f39b6be33e4080) Bump jQuery from 3.2.1 to 3.5.0 (dependabot[bot]) - -- silverstripe/dynamodb (4.1.0 -> 5.0.0-rc1) - - 2023-02-12 [1f8e3b4](https://github.com/silverstripe/silverstripe-dynamodb/commit/1f8e3b4d490654a08800b27cbbb4b980d75471be) Upgrade dependencies for CMS 5 compatability (Guy Sartorelli) - -### Documentation - -- silverstripe/developer-docs (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-03-21 [d00ef6bd](https://github.com/silverstripe/developer-docs/commit/d00ef6bd5a7db723d9944045a3f7263fbbcec0d0) Handle email send exceptions (Steve Boyd) - - 2023-03-20 [9f8e25e2](https://github.com/silverstripe/developer-docs/commit/9f8e25e27b5563967a390736c8d2125d7847abeb) Remove references to PDO (Steve Boyd) - - 2023-03-13 [682e8de5](https://github.com/silverstripe/developer-docs/commit/682e8de5823ad1432312ed3ab96b8e45216ae146) Document setting summary by default (#93) (Guy Sartorelli) - - 2023-03-13 [f0f83591](https://github.com/silverstripe/developer-docs/commit/f0f83591ab201564c349c05f99f0b59da9898d02) Document changes to the updateRelativeLink (#75) (Guy Sartorelli) - - 2023-03-13 [c58bac41](https://github.com/silverstripe/developer-docs/commit/c58bac4131eea03177a40e6f64d838de38c7af23) Fix preview docs link and info (#99) (Guy Sartorelli) - - 2023-03-08 [5ce64db4](https://github.com/silverstripe/developer-docs/commit/5ce64db4891edfb8b8684e578703f6009b6eb095) Add fluent changes and upgrade guides (#176) (Guy Sartorelli) - - 2023-02-27 [367a4b09](https://github.com/silverstripe/developer-docs/commit/367a4b094d98a2c70f6efe6bd734b5defa6a0042) Change react-router constraint in 5.0 changelog (#168) (Guy Sartorelli) - - 2023-02-24 [915e19f8](https://github.com/silverstripe/developer-docs/commit/915e19f8ef303f75c76a9f0df9d874f0704940ef) Document some behaviours that aren't supported anymore (Guy Sartorelli) - - 2023-02-24 [58480822](https://github.com/silverstripe/developer-docs/commit/58480822eba6fa5edd2ba09d3f107726388ceb09) Move templates to where it should be. (Guy Sartorelli) - - 2023-02-24 [9fee07d8](https://github.com/silverstripe/developer-docs/commit/9fee07d83e7bbcd389cb2aa31b03f3411f9a5535) Remove 4.x alpha changelogs (Guy Sartorelli) - - 2023-02-23 [32ca3d0e](https://github.com/silverstripe/developer-docs/commit/32ca3d0ea8fc50600553748be0834b39df72134c) Clarification for some removed deprecated class and methods in 5.0.0 and 5.0.0-beta1 (Sabina Talipova) - - 2023-02-21 [b9f820dd](https://github.com/silverstripe/developer-docs/commit/b9f820dd9afb551c0da3dc0cd3f9abf42c9db2f4) DBComposite dynamic data (Steve Boyd) - - 2023-02-16 [42aac1fe](https://github.com/silverstripe/developer-docs/commit/42aac1fe2af7cffdfcdaeb2431a3c641b51fd838) StaticPublishQueue is now opt-in (Steve Boyd) - - 2023-02-14 [1782bef5](https://github.com/silverstripe/developer-docs/commit/1782bef5cc99741f9c149460ebe3917265970167) Update docs for deprecations (#160) (Guy Sartorelli) - - 2023-02-09 [282c839d](https://github.com/silverstripe/developer-docs/commit/282c839d09d3de5c88886c489b8c098ee5d48d61) Rearrange 5.0.0-beta1 changelog (Steve Boyd) - - 2023-02-09 [4cfe9d1c](https://github.com/silverstripe/developer-docs/commit/4cfe9d1c2fe07528e3fd837eae6e7fc8ed1496db) Update 5.0.0-beta1 changelog (Steve Boyd) - - 2023-02-08 [f9fed249](https://github.com/silverstripe/developer-docs/commit/f9fed24913bd58a14597515e135d849e38e56dad) Last changes for the changelog before beta release (#154) (Guy Sartorelli) - - 2023-02-08 [8b5ac996](https://github.com/silverstripe/developer-docs/commit/8b5ac9964baece9263b0dc3c9dfb6ee896d4d853) 5.0.0 changelog removed and changed API (Steve Boyd) - - 2023-02-01 [1c427090](https://github.com/silverstripe/developer-docs/commit/1c427090caf0bae7179b214f37fe5418994d5c73) Add supported module (Maxime Rainville) - - 2023-01-30 [a2e18b5a](https://github.com/silverstripe/developer-docs/commit/a2e18b5adbd49bfec075b28a8777c083b9ddf1e0) New limit behaviour (Maxime Rainville) - - 2023-01-30 [a9a435ea](https://github.com/silverstripe/developer-docs/commit/a9a435ea93d5de898d073b8d5cb175a9bdabc7de) Document features from security-extensions (Guy Sartorelli) - - 2023-01-30 [ac19d46f](https://github.com/silverstripe/developer-docs/commit/ac19d46f094db6f37863cf3995f62fc69277a4d5) Document changes required to upgrade build stack (#137) (Guy Sartorelli) - - 2023-01-26 [23e2e6a8](https://github.com/silverstripe/developer-docs/commit/23e2e6a80f6663fb3d5ab1e6e1089f09781fe534) Update docs to include new FormField validation hook (Loz Calver) - - 2023-01-26 [6bef21e2](https://github.com/silverstripe/developer-docs/commit/6bef21e244c9703fd21a3171e88eb806da73fb46) Update Email docs (Steve Boyd) - - 2023-01-20 [77c8932b](https://github.com/silverstripe/developer-docs/commit/77c8932bbdd9b8a6f421d55958d45585244d0cca) Define what can be merge post beta (Maxime Rainville) - - 2023-01-19 [67aa583d](https://github.com/silverstripe/developer-docs/commit/67aa583db1c8e8b7d0d23751a9be32e2fa4261a1) parameter order (Steve Boyd) - - 2023-01-17 [9482f5ed](https://github.com/silverstripe/developer-docs/commit/9482f5ed9a21c4066ce77bde59b074c7eeeeccc6) Document changes to trailing slash in URLs (Guy Sartorelli) - - 2023-01-17 [9270e025](https://github.com/silverstripe/developer-docs/commit/9270e0252519893fe0ec69b67cdb28232160f4de) Removed HTMLValue shorthand (Steve Boyd) - - 2023-01-17 [05178763](https://github.com/silverstripe/developer-docs/commit/051787638d15f437088ce9c07b5329ebd90d20db) Mark the removal of subitem_class config (Maxime Rainville) - - 2023-01-16 [035c139d](https://github.com/silverstripe/developer-docs/commit/035c139d3774b615a83a4b34af47fd738187c593) masterminds/html5 (Steve Boyd) - - 2023-01-16 [4f1ad36f](https://github.com/silverstripe/developer-docs/commit/4f1ad36fdcb0230264533b0bfdbdf6d78d479c2e) List which classes had ReturnTypeWillChange annotation removed (Maxime Rainville) - - 2022-12-20 [995b414e](https://github.com/silverstripe/developer-docs/commit/995b414eb7dc66869aa95b2f3eb29853bb6d6f93) Update changelog with breaking JS changes (Guy Sartorelli) - - 2022-12-20 [2252967e](https://github.com/silverstripe/developer-docs/commit/2252967e7e3baea4b4fb3e1d02a396ace7c8c29a) Update JavaScript docs (Guy Sartorelli) - - 2022-12-20 [deb228b3](https://github.com/silverstripe/developer-docs/commit/deb228b39341bed54d8ddba0f650b02cc78f7dfb) Update entwine docs to match current behaviour (Guy Sartorelli) - - 2022-12-20 [3d26b219](https://github.com/silverstripe/developer-docs/commit/3d26b219c3d3226106cf4bcb364374bbce523204) Add entwine docs from readme (Guy Sartorelli) - - 2022-12-05 [c0599764](https://github.com/silverstripe/developer-docs/commit/c0599764f126e3dbc1ff493544358efc01eed613) DataList::sort() and orderBy() (Steve Boyd) - - 2022-11-21 [ef798631](https://github.com/silverstripe/developer-docs/commit/ef798631264cd9665d2cecf12352a58736752809) Document adding TopPage extensions by default (#94) (Guy Sartorelli) - - 2022-10-18 [a44164ab](https://github.com/silverstripe/developer-docs/commit/a44164ab21936798a8c496bb544c95f45a65d25e) Updates for symfony/mailer (Steve Boyd) - - 2022-10-18 [aeded78b](https://github.com/silverstripe/developer-docs/commit/aeded78b08fe08e524e22ef29c31457e85ac1811) Document controller method signatures (Steve Boyd) - - 2022-09-27 [6d057eb6](https://github.com/silverstripe/developer-docs/commit/6d057eb6380a991bbc0e2d0e117acfe5c0f6cb1f) Document upgrading to TinyMCE 6 (Guy Sartorelli) - - 2022-09-19 [11123b44](https://github.com/silverstripe/developer-docs/commit/11123b44e02c61dce1cc1f81c2f18a224e405da2) Document SecurityAdmin extending ModelAdmin (Steve Boyd) - - 2022-09-15 [ebe0e9dc](https://github.com/silverstripe/developer-docs/commit/ebe0e9dcc6bf6ff934acfaf7f19c97a34c5eca06) Document breaking changes to template syntax (#81) (Guy Sartorelli) - - 2022-09-15 [4363fbfa](https://github.com/silverstripe/developer-docs/commit/4363fbfa1fdfd003adf1cfc4352e813cc210bf22) Changelog for 5.0.0-alpha1 (Steve Boyd) - - 2022-09-14 [e4b01832](https://github.com/silverstripe/developer-docs/commit/e4b018321a3ed04176cd4fce896f9b30b41d9c22) Fix links from upgrade docs (#66) (Guy Sartorelli) - - 2022-09-14 [b58b556d](https://github.com/silverstripe/developer-docs/commit/b58b556dc38fb32c8a1a842ff62c927a73f5093f) Document making models previewable via extensions (Guy Sartorelli) - - 2022-09-14 [db79fc5b](https://github.com/silverstripe/developer-docs/commit/db79fc5b0a84ca2105aa3a3bb0e125c5d77b020c) Move upgrade docs into changelog for 5.0.0 (#84) (Guy Sartorelli) - - 2022-09-07 [1f87c415](https://github.com/silverstripe/developer-docs/commit/1f87c415139ff46c16d921ea3b862655a5e963c5) Document symfony 6 dependency changes (Steve Boyd) - - 2022-09-01 [09472a53](https://github.com/silverstripe/developer-docs/commit/09472a532f8f31b7d8d38ecdadd698216ed29216) Document removal of HistoryControllerFactory (#71) (Guy Sartorelli) - - 2022-09-01 [b497e270](https://github.com/silverstripe/developer-docs/commit/b497e27061363519d734317196d9ead35ae86c9f) Document reverting a change to table names (#78) (Guy Sartorelli) - - 2022-08-31 [a1d8a3fe](https://github.com/silverstripe/developer-docs/commit/a1d8a3fe00bedf659b393301e9a1a0032775b493) Document changes in various rescued master commits (#70) (Guy Sartorelli) - - 2022-08-10 [9ca7cee9](https://github.com/silverstripe/developer-docs/commit/9ca7cee979e6335bbd238357204c9d323b75cb33) Document removing deprecated support for PHPUnit 5.7 (Guy Sartorelli) - - 2022-08-08 [e933bcef](https://github.com/silverstripe/developer-docs/commit/e933bcef102f7652b7b23f301e98a866d80fcff5) Document breaking changes for updating resources dir (#58) (Guy Sartorelli) - - 2022-08-07 [c9cd71e0](https://github.com/silverstripe/developer-docs/commit/c9cd71e073b1883f3575b3694149c77987013e48) Document SilverStripeNavigator for front-end use (Guy Sartorelli) - - 2022-08-07 [168a8c7f](https://github.com/silverstripe/developer-docs/commit/168a8c7fff09ed238a022e15bc21b8ac83b5f284) Document breaking changes from migrating SilverStripeNavigator (Guy Sartorelli) - - 2022-08-05 [79dcb6ae](https://github.com/silverstripe/developer-docs/commit/79dcb6aedbd243ffd288e6f3fbfe40cd05818fe8) Remove references to GraphQL v3 (Guy Sartorelli) - - 2022-07-21 [c8dc5b9c](https://github.com/silverstripe/developer-docs/commit/c8dc5b9cfba056c1cc66eac164fa8b21a4e5c3d3) Update references to CMS 3 and 4 (Guy Sartorelli) - -### Other changes - -- silverstripe/framework (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-22 [c82d11ef7](https://github.com/silverstripe/silverstripe-framework/commit/c82d11ef70b59daeabd386e16cf871bb25e5bb70) Add isFlushed() to Kernel interface (Chris Penny) - - 2023-02-22 [0633f2ed0](https://github.com/silverstripe/silverstripe-framework/commit/0633f2ed0d298985927805685be81bb6ae8d305e) Add kitchensink fields to formfield validation test (Loz Calver) - - 2022-09-01 [06b13e0fa](https://github.com/silverstripe/silverstripe-framework/commit/06b13e0fa621be58c7a9f43ffdc86c071d262fe4) Revert "Merge pull request #10450 from creative-commoners/pulls/5/rescue-master-generators" (#10483) (Guy Sartorelli) - - 2017-06-28 [81beddc16](https://github.com/silverstripe/silverstripe-framework/commit/81beddc161e7e1696b6f65b72df79617cd65dede) Add deprecated method to make CMS tests work (Sam Minnee) - - 2017-06-28 [9c7ecb1f7](https://github.com/silverstripe/silverstripe-framework/commit/9c7ecb1f798f56f9b485d7cbad6e0d57805e9801) Further work on Loz’ solution (Sam Minnee) - - 2017-06-28 [850482138](https://github.com/silverstripe/silverstripe-framework/commit/850482138b721690ddd6104a8e1cbcae5e0d1ed9) Proposed solution for caching template generator counts (Loz Calver) - - 2017-06-28 [749405170](https://github.com/silverstripe/silverstripe-framework/commit/749405170ccbcc4e8a36cd4c171a1d9991c6e5cb) Update MySQLDatabaseTest to work with new query iterators (Loz Calver) - - 2017-01-16 [2ead3746d](https://github.com/silverstripe/silverstripe-framework/commit/2ead3746d62de8df64c671a32762b52cc360710a) Replace Map_Iterator with a generator. (Sam Minnee) - -- silverstripe/cms (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-01-29 [b02beba7](https://github.com/silverstripe/silverstripe-cms/commit/b02beba7babad15a66f9bc91b76872d8496783e6) Resolve a couple of behat issues (#2830) (Guy Sartorelli) - - 2022-11-21 [003f9ba7](https://github.com/silverstripe/silverstripe-cms/commit/003f9ba750212a73027e1b07b09fb9139571f78c) Revert "Merge branch '4' into 5" (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (4.11.0-rc1 -> 5.0.0-rc1) - - 2023-03-06 [27f2622](https://github.com/silverstripe/silverstripe-elemental/commit/27f2622ca3bb2bb6b9684cabdedf4e1fdbd2bf5a) Prevent mapStateToProps re-rendering on formstate changes (Bernie Hamlin) - -- silverstripe/developer-docs (4.13.0-rc1 -> 5.0.0-rc1) - - 2023-02-08 [52afbd06](https://github.com/silverstripe/developer-docs/commit/52afbd06e99b65f98d6a6b1c794a95814def9c43) Last bit of feedback (Maxime Rainville) - - 2023-02-08 [d2b83aed](https://github.com/silverstripe/developer-docs/commit/d2b83aed81845b71381cbece0743387f28bfb278) Tweak spacing (Maxime Rainville) - - 2023-02-08 [1d6c051c](https://github.com/silverstripe/developer-docs/commit/1d6c051c59dd81223bb1ec9c56fc5f0739e82598) Replace references to "official support" with "commercial support" (Maxime Rainville) - - 2023-02-08 [2e2518fc](https://github.com/silverstripe/developer-docs/commit/2e2518fcc03e4fc441c4adf3875e8f59edc03759) Add a bigger explanation about composer/installer (Maxime Rainville) - - 2023-02-08 [2f5f3e49](https://github.com/silverstripe/developer-docs/commit/2f5f3e490a9b3c2b6124df961b80c6cc50413da3) Clarify expectation for testing of community supported module (Maxime Rainville) - - 2023-02-08 [79570c2a](https://github.com/silverstripe/developer-docs/commit/79570c2ab9665e69e8bea0280317c849e07ba8a6) Better last step for converting a module (Maxime Rainville) - - 2023-02-08 [1fa3b6b0](https://github.com/silverstripe/developer-docs/commit/1fa3b6b0801f8fed04b558d5aa3240cbca94e330) Remove failded builds that are now green. (Maxime Rainville) - - 2023-02-08 [283fb693](https://github.com/silverstripe/developer-docs/commit/283fb693ed64fa192b23d60d7b1e9984843e0b01) Link to contribution guideline. (Maxime Rainville) - - 2023-02-08 [e6f9da37](https://github.com/silverstripe/developer-docs/commit/e6f9da373e9a04752ec9ae5b73ae587462383830) Add missing backticks (Maxime Rainville) - - 2023-02-08 [428d5a41](https://github.com/silverstripe/developer-docs/commit/428d5a416bf045a99761bfaa3dc670f721a1a75a) Bring back line pointing the call for maintainers for some old TinyMCE plugin. (Maxime Rainville) - - 2023-02-08 [4ff1354a](https://github.com/silverstripe/developer-docs/commit/4ff1354abdd485292efe8648e82cdefbc9150341) Mark beta changelog as unreleased. (Maxime Rainville) - - 2023-02-07 [fa9fe88c](https://github.com/silverstripe/developer-docs/commit/fa9fe88ce44e92d10cd47457cc9d4f43459df0c4) Tweaks (Maxime Rainville) - - 2023-02-07 [6059447c](https://github.com/silverstripe/developer-docs/commit/6059447cc6b7da566959580976ed7b07ea70a70f) Clean up a bunch of class references (Maxime Rainville) - - 2023-02-07 [c4f1aa5a](https://github.com/silverstripe/developer-docs/commit/c4f1aa5af59243cfa0ec27f3e5bb0884899915b4) Apply feedback from peer review (Maxime Rainville) - - 2023-01-31 [84e48277](https://github.com/silverstripe/developer-docs/commit/84e48277008ba7a2224f15b69140cf263dab1a03) Apply suggestions from code review (Maxime Rainville) - - 2023-01-22 [c021f5b3](https://github.com/silverstripe/developer-docs/commit/c021f5b3d7451a659cbe3b72a6c9d6a0060b7ec9) Apply suggestions from code review (Maxime Rainville) - -- silverstripe/staticpublishqueue (5.3.0 -> 6.0.0-rc1) - - 2023-03-30 [2546677](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/25466779d93cdcc78efca62b827be54993a82006) Bugfix: Use copy() and unlink() instead of rename() (Chris Penny) - -- tractorcow/silverstripe-fluent (4.8.0 -> 7.0.0-beta1) - - 2023-02-07 [b3e55b9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b3e55b97acf8f1996ed1b6bbad183917ba44f129) chore: remove redundant alias (Damian Mooyman) - - 2022-04-28 [37b5e16](https://github.com/tractorcow-farm/silverstripe-fluent/commit/37b5e16c2b294e822caeeab7bba5ced089ebaf44) Minor grammatical correction (Fred Condo) - - 2022-03-25 [bb46d9d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb46d9d2c50c31d8fc03b812129b0aa135ab033f) Lowering minimum PHP version to see if we can support it. (Mojmir Fendek) - - 2022-03-25 [bf37abb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bf37abbb7fcde233ce9dec387ecec0a970b97e31) Fixes. (Mojmir Fendek) - - 2022-03-10 [10131cd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/10131cd6b04c09c58be2b117ef62fde1940a32d0) chore: update 5 alias to 5.2 (Damian Mooyman) - - 2022-02-28 [98db572](https://github.com/tractorcow-farm/silverstripe-fluent/commit/98db5720a687b517c223dacdee033ddfa1b6ae7d) Update FluentAdminTrait.PHP (Rens Korswagen) - - 2021-11-04 [9ac7305](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9ac7305f6924b4da80217a255637f72252a5874b) allow PHP 8 (bumbus) - - 2021-10-18 [7acbe4e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7acbe4eb043ebf71aeec53e9dcdd11d84b6d35c9) feat(locale admin): add hook to update fluent locales (Oliver) - - 2021-10-04 [5384deb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5384debf24226ceff4af4acc3a50a098bb65ac91) Italian translation (Giancarlo Di Massa) - - 2021-07-12 [e120dce](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e120dcea17d6527171041eb37810381697ed362b) feat(site tree extension): add option to disable locale prepend to link (norden-oliver) - - 2021-06-30 [d68e490](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d68e490abf4ea07e5a9998e54f4e20a1db10f411) Update src/Extension/FluentExtension.PHP (Damian Mooyman) - - 2021-06-27 [37aec66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/37aec669fcf459b3bf1af8cc0cd7f0864076b595) Consolidate some redundant logic in code (Damian Mooyman) - - 2021-06-18 [4d386be](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4d386be31f61d849e8aecfef3028e0fcecee7d46) PR fixes. (Mojmir Fendek) - - 2021-06-16 [0cb3b6c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0cb3b6ca6dffc256a4f6e3e4646fd2d6ef509e5a) PR fixes. (Mojmir Fendek) - - 2021-05-23 [cd9279d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cd9279db1a0b85ed52a29d73b2f2e11e54600053) Unit tests for locale switching (Damian Mooyman) - - 2021-05-23 [31528e2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/31528e2e9c06629b761371be127fcbedee2b26e4) Remove redundant phpdoc (Damian Mooyman) - - 2021-05-23 [810bcef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/810bcefb9e571ccebb4c74f30835ed1017b7d0b9) Implement unit tests (Damian Mooyman) - - 2021-05-23 [f0043fd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f0043fd62e6a0180aac156ea535830ee14580d1c) Adjust setters / getters (Damian Mooyman) - - 2021-05-21 [a281899](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a28189977ddc862da2baa70b7d5bd1bc9b4652ec) FEATURE: Add timezone field to CMS to allow dates to be shown in local timezone (Damian Mooyman) - - 2021-05-20 [e9720c2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/e9720c250292be959f5a59aa8fd983c505917292) PR fixes. (Mojmir Fendek) - - 2021-04-23 [67b472a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/67b472ab78424a1dd880c55e19d08a1bfc267b99) Revert default to prevent to same as 5.0 to prevent semver breakage (Damian Mooyman) - - 2021-04-20 [1e5f1e0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1e5f1e0decdb64eab264e34acb3ba39ea446cf4d) Add missing CRUD permissions for Locale dataobject (Damian Mooyman) - - 2021-04-16 [8a6b778](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8a6b7781eb505b960be9a5a50234992719f3241a) Bugfix for version history viewer (Vivienne Tubbs) - - 2021-04-08 [bb7ec0c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb7ec0c2fefa81e1f850e0cecf3ee9dcc2af1ee4) Remove outdated link (Damian Mooyman) - - 2021-03-22 [8d4a32d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8d4a32d05b082a0ad5df7dd34373cb4b3412bc6e) Escape query string (Vivienne Tubbs) - - 2021-03-16 [3ea287a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3ea287afb7c1394a9db84894baf9c45744a00a1c) Import namespace for Convert (Vivienne Tubbs) - - 2021-03-16 [8b552db](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8b552dbe26ee141eba2c735a11e8e938d1457880) Add PR changes (Vivienne Tubbs) - - 2021-02-26 [ca2759d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ca2759de0d8d5516dc71c99674b4b9c83f9c2bf5) Pair programming fixes. (Mojmir Fendek) - - 2021-01-10 [a656714](https://github.com/tractorcow-farm/silverstripe-fluent/commit/a656714ef0cbe7ad760a9b2b665585e00aadae92) Localised versioned history (#639) (Mojmir Fendek) - - 2020-10-06 [97d83d6](https://github.com/tractorcow-farm/silverstripe-fluent/commit/97d83d6a25af5d92e95d56805d032cb8508a7a95) Added extension point to FluentDirectorExtension (innomedia) - - 2020-10-01 [8a5300e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8a5300e8713cfdc841cea72064215f2c8c10e126) Translation to Slovenian (sl.yml) (Tomasz Pirc) - - 2020-09-10 [5145156](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5145156728d7481557871c6a30eb578455a84674) Update branch aliases (Damian Mooyman) - - 2020-08-26 [b7e40f7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b7e40f750cc563447a9f08331d876b1dff6c3b61) Wrap middleware state mutations inside state helpers (Damian Mooyman) - - 2020-07-22 [cddb95c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cddb95c9d54e60451fa70c5851dea87916efd4a7) Site Tree status flags localised. (Mojmir Fendek) - - 2020-07-20 [0b57ecf](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0b57ecf17f6672b1ccaca5626ca68586703dcdee) Add BC for old config with deprecation notice (cpenny) - - 2020-07-20 [93bf32f](https://github.com/tractorcow-farm/silverstripe-fluent/commit/93bf32f5fe230bd17778a1e541afcc5a2b400c59) Encoding configuration documentation. (Mojmir Fendek) - - 2020-07-17 [af11a3b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/af11a3b39ce9f5f2e1608ea6c2f8a33bc9558545) Source locale lookup correction. (Mojmir Fendek) - - 2020-07-16 [31029f9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/31029f9371aee6f9f6437be04319ae3d61ce3d46) Rename CMS publish required config (cpenny) - - 2020-07-16 [0243e71](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0243e713f26a880fbbce1b08eb4d27af3bbeb420) Localised copy config changed to flat list, extension points improvements. (Mojmir Fendek) - - 2020-07-14 [2fb7945](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2fb79450246216c0237cdef362476469fc1b9927) Locale detection improvements. (Mojmir Fendek) - - 2020-07-13 [bb8838a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/bb8838a0a107017a0c3fd9f7c8eb9617ec3a9b14) Global state for localised copy feature. (Mojmir Fendek) - - 2020-07-13 [6981075](https://github.com/tractorcow-farm/silverstripe-fluent/commit/69810754dba393afa4e093643cde45574b7599f0) Global localised copy state removed. (Mojmir Fendek) - - 2020-07-12 [35f64cd](https://github.com/tractorcow-farm/silverstripe-fluent/commit/35f64cd5410c343159ae594a3c3a937588914e77) Localised copy trait changed into an extension approach. (Mojmir Fendek) - - 2020-07-09 [cfc1925](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cfc1925437cc97d9cbd8458b1b0683712627c111) Source locale lookup correction. (Mojmir Fendek) - - 2020-07-07 [0a21272](https://github.com/tractorcow-farm/silverstripe-fluent/commit/0a21272d160cc2bd9b8f9f62a84438967f464d49) Localised copy trait (Mojmir Fendek) - - 2020-07-06 [79c248b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/79c248babb08a1fe1da006daa96c84ded9b25ca4) PR fixes. (Mojmir Fendek) - - 2020-07-02 [ef88e32](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ef88e3274df97bc3ba320fbcd6c4252c46bbc5f2) Added a tooltip for Unlocalise action. (Mojmir Fendek) - - 2020-06-29 [9432cf9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9432cf985ac8d3f0f9e9d9c896163e5a45d5a186) Non-versioned UI improvements (Mojmir Fendek) - - 2020-06-26 [f5bce7e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f5bce7ec57cab19f8d4d8c5226fada0e5c8aa5f0) Publish state related fixes (Mojmir Fendek) - - 2020-06-25 [21ff3ff](https://github.com/tractorcow-farm/silverstripe-fluent/commit/21ff3ff91b406dfe23c0809a277dc1f9ed88412c) PR fixes (Mojmir Fendek) - - 2020-06-25 [5a162c8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5a162c8b7090fc073e22eb9aecedf595ea17d915) Badges UI improvements (Mojmir Fendek) - - 2020-06-18 [5092db1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5092db1245f8ada32debd6debdc69a5d34b60bc3) Copy locale action extension points. (Mojmir Fendek) - - 2020-06-18 [d3abe50](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d3abe508e5094894fe2507933705949c166335af) Redundant copy locale actions prevented. (Mojmir Fendek) - - 2020-05-15 [6182ea0](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6182ea00a2b03e7e66300b66b696ccd4bc108af3) Ensure the domain detection only returns the locale if it is unambiguous (Danae Miller-Clendon) - - 2020-05-12 [7c8e8c8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7c8e8c8e2aa345ad60e85a4243af60090f201dfd) Don't treat /graphql as admin (Damian Mooyman) - - 2020-05-12 [2a79a28](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a79a2820a307518c65d781879c26f9eab2563d8) Update locale detection to include cloudflare logic (Damian Mooyman) - - 2020-05-12 [f68d9db](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f68d9db397b0d3ee3b9b1c245e96a191ef92c73a) more translations DE (Bumbus) - - 2020-05-12 [aff053c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/aff053cf78fd52c17d9d7d31fc293b07c5b39ac1) added missing translation keys; added de translation (Bumbus) - - 2020-05-11 [3d71d8d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3d71d8daf3dc39c206dc0cab1608fc331f674322) Bump documented versions (Damian Mooyman) - - 2020-05-11 [33f5175](https://github.com/tractorcow-farm/silverstripe-fluent/commit/33f5175be0d5ac5552b460af349702609eb15311) Run fluent isolated extension on requireDefaultRecords to prevent needing to dev/build twice (Damian Mooyman) - - 2020-03-24 [98806ad](https://github.com/tractorcow-farm/silverstripe-fluent/commit/98806ad430917426171ae8d627c5c0cd3943a928) Add migration helper for isolated extension (Damian Mooyman) - - 2020-03-24 [1ffab0d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1ffab0dd9b83625439aef6a2a20af6618810cd0d) Add extra hide / show action if filtering (Damian Mooyman) - - 2020-03-23 [6da52eb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6da52ebf5108a7e33df58da6ec03fa578fcec829) Refactor updateFluentLocalisedFields so it can be called from third party extensions (Damian Mooyman) - - 2020-03-19 [90fc945](https://github.com/tractorcow-farm/silverstripe-fluent/commit/90fc94559850ac9638ae86a781ba7050af7258d0) Adjust description on UseDefaultCode field (Damian Mooyman) - - 2020-03-19 [59148bb](https://github.com/tractorcow-farm/silverstripe-fluent/commit/59148bb76311b7e6a8e3752f2a1f271deaf1749f) Update src/Model/Locale.PHP (Damian Mooyman) - - 2020-02-27 [74a68f7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/74a68f7a2352d1ee8e452e0f5f8d14ba03a0d4e5) Enable FluentBadgeTrait for filtered-only records (Damian Mooyman) - - 2020-02-14 [f55a0ea](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f55a0ead4ebf78aee824e9312bf89e647e1556d3) Support x-default locale code for SEO (Damian Mooyman) - - 2020-02-10 [b6c2a8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b6c2a8c5ed0c7540ad69e88e525ce46d761e4ebc) Add tests for delete (Damian Mooyman) - - 2020-02-10 [7e388fe](https://github.com/tractorcow-farm/silverstripe-fluent/commit/7e388fe99c8989ce3380681224c330b5577c03ce) Add unit tests for admin actions. Bugfixing some versioned localisation issues. (Damian Mooyman) - - 2020-02-09 [2a6a8a6](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a6a8a6b90056d23bb3755bac2ab661f5b0ed407) Don't show disallowed locales in CMS admin section (Damian Mooyman) - - 2020-02-07 [afa0048](https://github.com/tractorcow-farm/silverstripe-fluent/commit/afa0048cfa01a77aa8c27566d3c77be3182b8b39) Remove redundant provider (Damian Mooyman) - - 2020-02-07 [318e7a9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/318e7a9b8f8c9019033d8977e21f96701ef45185) Test and bugfix locale-specific CMS access (Damian Mooyman) - - 2020-02-07 [f437f8b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f437f8b1862750647cd54bd10c49e67aa21bf6d8) Reenable copy from / copy to actions (Damian Mooyman) - - 2020-02-07 [75cbb9c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/75cbb9c3e43c6084508c4ab5155699e8559d6d3a) Add permission check to global actions (Damian Mooyman) - - 2020-02-05 [ecaf135](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ecaf135a0e942f576fe961a0ab324d284ad99b3b) Simplify (Damian Mooyman) - - 2020-02-05 [2217a6a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2217a6af8f37990afc059a471292f694153c0264) Switch to using real permissions for each locale (Damian Mooyman) - - 2020-02-03 [074f7ca](https://github.com/tractorcow-farm/silverstripe-fluent/commit/074f7ca637d59925563cf780e5f248bc45635709) Add permission model base extensions (Damian Mooyman) - - 2020-01-12 [ea8619a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ea8619a5d24280b14fbf47716bd6a34a0860500f) Don't show unpublished / hidden pages in meta tag alternate links (Damian Mooyman) - - 2019-12-12 [27041ac](https://github.com/tractorcow-farm/silverstripe-fluent/commit/27041ac1f46f4c5029b1d331c3480d63abbc37b6) MINOR: update of example in scenarios (Peter Thaleikis) - - 2019-12-02 [c8818bc](https://github.com/tractorcow-farm/silverstripe-fluent/commit/c8818bce77ca9860c2c8ae19dcd3e6b50efeeb4d) Break out updateCMSFields into a callable helper method (Damian Mooyman) - - 2019-11-20 [5404ed7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5404ed74e7f5d260b573ad18335cdd5c18999902) Build dist files (Damian Mooyman) - - 2019-11-20 [3eed100](https://github.com/tractorcow-farm/silverstripe-fluent/commit/3eed1008b5acc16a4d47486dd3e334173fab7e8b) Update styles (Damian Mooyman) - - 2019-11-19 [967715b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/967715bc08f27fc8aa5159cb157f472a78962383) Add extra useful gridfield components for localised records (Damian Mooyman) - - 2019-11-19 [773c1d5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/773c1d59896f1603a4155d9ad9a75ceb716216ca) Prevent FluentDirectorExtension erroring when CMS module is not installed (Damian Mooyman) - - 2019-11-19 [facdac3](https://github.com/tractorcow-farm/silverstripe-fluent/commit/facdac34a1b7017fc5388b3db0958b5b3b98c5d0) Feature: CMS module is optional (Damian Mooyman) - - 2019-11-14 [34ab9c2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/34ab9c20492c59f1a46cc2f4217f65cf3d8e1893) Drop PHP 7.0 test (Damian Mooyman) - - 2019-11-14 [665e1aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/665e1aa27c24f0b7a49574781876dc98ab6371f7) Add deleteFluent for non-versioned records (Damian Mooyman) - - 2019-11-14 [b9dcbe1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b9dcbe13f8c9107d997a223fbb45599c8f7ccdd7) Move menu before RightGroup so that in the GridField Detail Form view, the menu doesn’t get cropped. (Danae Miller-Clendon) - - 2019-11-13 [88d5d57](https://github.com/tractorcow-farm/silverstripe-fluent/commit/88d5d57558939c0341fe0cfcfc313ce3e5e3c6f4) Wrap writeToStage() in an extension check in copyFluent (should not depend on Versioned) (Danae Miller-Clendon) - - 2019-11-13 [ec1f802](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ec1f802737e8426d05ef590f6b7a9466df049049) Drop PHP 5 support, fix linting issues (Damian Mooyman) - - 2019-11-13 [5dfc1a8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5dfc1a80361ccb30253a3e15ea444b1bbfbb669d) Add colours, fix missing "save" in save and publish (Damian Mooyman) - - 2019-11-12 [9f6c755](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9f6c7550f4b6365c083ea093f0a7429b065698fc) Work on actions (Damian Mooyman) - - 2019-11-12 [ae6469c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ae6469c6654c9e94611d4014b9d173bd477085c3) Wrap actions in Versioned extension check (Danae Miller-Clendon) - - 2019-11-12 [c19a44e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/c19a44e08e45244b044ac1967029f8fa7aebfd76) Clean up issues with unpublish action (Damian Mooyman) - - 2019-11-12 [ac421b7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ac421b7dc4bd53758da5efbf86298ea15c9c945c) Following on from Damian’s suggestions. TODO: Test and implement for GridField (Danae Miller-Clendon) - - 2019-11-12 [03fc69d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/03fc69d821f3ffac20aa8148148e71e7cb7b76a5) Handle the actions from Localisation menus: (Danae Miller-Clendon) - - 2019-11-11 [2761cd8](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2761cd8890ad3af3a3343acc4d572730bbe0059e) Adjust scope of 5.0.0 beta release (Damian Mooyman) - - 2019-11-06 [1bcb462](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1bcb462fa63d61ec923fa2d9d6c8eabe575931fb) Initial commit of gridfield actions (Damian Mooyman) - - 2019-11-04 [b2f4bce](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b2f4bce62f33f8fa901b0ddb4b5c9d36ee5597f5) Remove hasMethod / hasExtension bindings (Damian Mooyman) - - 2019-11-04 [63a2c04](https://github.com/tractorcow-farm/silverstripe-fluent/commit/63a2c047de7bec37bb7db9b3ebfd4b4285363cbc) Clean up and refactor extension classes (Damian Mooyman) - - 2019-11-04 [1e2841d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1e2841d1f8badfe7712de44a28248372634da848) Clean up menu (Damian Mooyman) - - 2019-11-03 [1d48882](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1d488822326280a13642bd270981b7f6d5e9e34c) Alias master as next major version (Damian Mooyman) - - 2019-10-30 [fd8c5b5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fd8c5b580ff2637b19e849c6588e4ae0dc845290) Add descriptions to menu layout (Damian Mooyman) - - 2019-10-29 [b62b671](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b62b6710e6ef90458a1faafca8a193134fb5461f) WIP Initial commit of new localisation menu (Damian Mooyman) - - diff --git a/en/08_Changelogs/rc/5.1.0-rc1.md b/en/08_Changelogs/rc/5.1.0-rc1.md deleted file mode 100644 index e8ec32be7..000000000 --- a/en/08_Changelogs/rc/5.1.0-rc1.md +++ /dev/null @@ -1,1096 +0,0 @@ -# 5.1.0-rc1 - -## Overview - -A full list of module versions included in CMS Recipe 5.1.0-rc1 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -- [Security considerations](#security-considerations) -- [Features and enhancements](#features-and-enhancements) - - [New logo](#new-logo) - - [Eager loading](#eager-loading) - - [ArrayList improvements](#arraylist-improvements) - - [Improvement to page search performance with Elemental](#cms-search-performance) - - [New `InheritedPermissions` option - only these members](#only-these-members) - - [Optimised queries when filtering against IDs](#filter-by-ids) - - [Session manager changes](#session-manager) - - [Static publish queue related page regeneration](#staticpublishqueue-regeneration) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Dependency changes](#dependency-changes) -- [Bug fixes](#bug-fixes) - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.0.0 | -| bringyourownideas/silverstripe-maintenance | 3.0.1 | -| cwp/agency-extensions | 3.1.0-rc1 | -| cwp/starter-theme | 4.0.0 | -| cwp/watea-theme | 4.0.0 | -| dnadesign/silverstripe-elemental | 5.1.0-rc1 | -| dnadesign/silverstripe-elemental-userforms | 4.1.0-rc1 | -| silverstripe-themes/simple | 3.3.0 | -| silverstripe/admin | 2.1.0-rc1 | -| silverstripe/asset-admin | 2.1.0-rc1 | -| silverstripe/assets | 2.1.0-rc1 | -| silverstripe/auditor | 3.0.0 | -| silverstripe/blog | 4.1.0-rc1 | -| silverstripe/campaign-admin | 2.1.0-rc1 | -| silverstripe/cms | 5.1.0-rc1 | -| silverstripe/config | 2.1.0-rc1 | -| silverstripe/contentreview | 5.1.0-rc1 | -| silverstripe/crontask | 3.0.2 | -| silverstripe/documentconverter | 3.1.0-rc1 | -| silverstripe/dynamodb | 5.0.0 | -| silverstripe/elemental-bannerblock | 3.1.0-rc1 | -| silverstripe/elemental-fileblock | 3.1.0-rc1 | -| silverstripe/environmentcheck | 3.0.1 | -| silverstripe/errorpage | 2.1.0-rc1 | -| silverstripe/externallinks | 3.1.0-rc1 | -| silverstripe/framework | 5.1.0-rc1 | -| silverstripe/graphql | 5.1.0-rc1 | -| silverstripe/gridfieldqueuedexport | 3.1.0-rc1 | -| silverstripe/hybridsessions | 3.0.2 | -| silverstripe/iframe | 3.1.0-rc1 | -| silverstripe/installer | 5.1.0-rc1 | -| silverstripe/ldap | 2.1.0-rc1 | -| silverstripe/login-forms | 5.1.0-rc1 | -| silverstripe/lumberjack | 3.0.2 | -| silverstripe/mfa | 5.1.0-rc1 | -| silverstripe/mimevalidator | 3.0.0 | -| silverstripe/realme | 5.2.0-rc1 | -| silverstripe/recipe-authoring-tools | 2.1.0-rc1 | -| silverstripe/recipe-blog | 2.1.0-rc1 | -| silverstripe/recipe-cms | 5.1.0-rc1 | -| silverstripe/recipe-collaboration | 2.1.0-rc1 | -| silverstripe/recipe-content-blocks | 3.1.0-rc1 | -| silverstripe/recipe-core | 5.1.0-rc1 | -| silverstripe/recipe-form-building | 2.1.0-rc1 | -| silverstripe/recipe-kitchen-sink | 5.1.0-rc1 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.1.0-rc1 | -| silverstripe/recipe-services | 2.1.0-rc1 | -| silverstripe/registry | 3.1.0-rc1 | -| silverstripe/reports | 5.1.0-rc1 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.0.0 | -| silverstripe/segment-field | 3.1.0-rc1 | -| silverstripe/session-manager | 2.1.0-rc1 | -| silverstripe/sharedraftcontent | 3.1.0-rc1 | -| silverstripe/siteconfig | 5.1.0-rc1 | -| silverstripe/sitewidecontent-report | 4.1.0-rc1 | -| silverstripe/spamprotection | 4.1.0 | -| silverstripe/staticpublishqueue | 6.1.0-rc1 | -| silverstripe/subsites | 3.1.0-rc1 | -| silverstripe/tagfield | 3.1.0-rc1 | -| silverstripe/taxonomy | 3.1.0-rc1 | -| silverstripe/textextraction | 4.0.0 | -| silverstripe/totp-authenticator | 5.1.0-rc1 | -| silverstripe/userforms | 6.1.0-rc1 | -| silverstripe/vendor-plugin | 2.0.1 | -| silverstripe/versioned | 2.1.0-rc1 | -| silverstripe/versioned-admin | 2.1.0-rc1 | -| silverstripe/versionfeed | 3.1.0-rc1 | -| silverstripe/webauthn-authenticator | 5.1.0-rc1 | -| symbiote/silverstripe-advancedworkflow | 6.1.0-rc1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.3 | -| symbiote/silverstripe-multivaluefield | 6.0.1 | -| symbiote/silverstripe-queuedjobs | 5.0.2 | -| tractorcow/silverstripe-fluent | 7.0.0 | - -
- -## Release candidate - -This version of Silverstripe CMS is a **release candidate** for an upcoming stable version, and should not be applied to production websites. We encourage developers to test this version in development / testing environments and [report any issues they encounter via GitHub](/contributing/issues_and_bugs/). - -## Security considerations {#security-considerations} - -This release includes a security fix. Review the vulnerability disclosure for a more detailed description of the security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerability below based on the CVSS score. Note that the impact of the vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -### Released on july 31 2023 - -A patch for the following security vulnerability was released on July 31 2023. You can learn more about this in the [blog post about this patch](https://www.silverstripe.org/blog/silverstripe-cms-security-patches/). Note that there was also a patch for a vulnerability that only affected Silverstripe CMS 4 released on the same day, which you can read about in that blog post. - -- [CVE-2023-32302 - Members with no password can be created and bypass custom login forms](https://www.silverstripe.org/download/security-releases/cve-2023-32302) Severity: None - When a new `Member` record was created in the CMS it was possible to set a blank password. If an attacker knows the email address of the user with the blank password then they can attempt to log in using an empty password. The default member authenticator, login form and basic auth all require a non-empty password, however if a custom authentication method is used it may allow a successful login with the empty password. See the security advisory for more information including how to identify affected `Member` records. - -## Features and enhancements - -### New logo - -Silverstripe CMS has a new logo! It will be rolling out on our web presence as we find instances of the old one and now you can see it in this release of Silverstripe CMS. A new logo provides a clearer distinction between Silverstripe (the company) and Silverstripe CMS. - -### Eager loading - -When looping over nested relationships the ORM is prone to the N + 1 query problem where excessive database calls are made. Eager loading has been introduced via the new [`DataList::eagerLoad()`](api:SilverStripe\ORM\DataList::eagerLoad()) method which alleviates the N + 1 problem by querying the nested relationship tables before they are needed using a single large `WHERE ID in ($ids)` SQL query instead of many `WHERE RelationID = $id` queries. - -Imagine the following example where there is a `Team` model with 20 records, with a `has_many` relation "Players" - -```php -// Regular ORM usage without eager loading -// This would result in 21 SQL SELECT queries, 1 for Teams and 20 for Players -$teams = Team::get(); - -// Using the `eagerLoad()` method to eager load data from nested models (up to 3 relations deep) -// This will result in only 2 SQL SELECT queries, 1 for Teams and 1 for Players -$teams = Team::get()->eagerLoad('Players'); - -foreach ($teams as $team) { - foreach ($team->Players() as $player) { - echo $player->FirstName; - } -} -``` - -In a test setup with looping through 100 DataObjects each with 100 related DataObjects for a total of 10,000 records per test run, the following performance improvements were observed for different types of relations (eager-loading vs not eager-loading): - -- HasOne - 3227% faster (0.0078s vs 0.2595s) -- HasMany - 25% faster (0.1453s vs 0.1819s) -- ManyMany - 25% faster (0.1664s vs 0.2083s) -- ManyManyThrough - 16% faster (0.6586s vs 0.7681s) - -Note that those observations were made using MySQL. - -Read more about [eager loading](/developer_guides/model/relations/#eager-loading) including its limitations in the developer docs. - -### `ArrayList` improvements {#arraylist-improvements} - -#### `ArrayList` now supports `SearchFilter` syntax for filtering {#arraylist-improvements-searchfilter} - -You can now use [`SearchFilter` syntax](/developer_guides/model/searchfilters/) when calling any of the filter or exclude methods on [`ArrayList`](api:SilverStripe\ORM\ArrayList). For example: - -```php -use SilverStripe\ORM\ArrayList; - -$list = ArrayList::create([ - [ - 'Title' => 'Silverstripe CMS is awesome', - ], - [ - 'Title' => 'ArrayList is now more powerful than ever', - ], -]); - -// This will contain only the item with the title "Silverstripe CMS is awesome" -$filteredList = $list->filter('Title:PartialMatch', 'CMS'); -``` - -For backwards compatibility, `ArrayList` filters are explicitly case sensitive by default. This differs from `DataList` which uses the database configuration to determine its default case sensitivity. See [search filter modifiers](/developer_guides/model/searchfilters/#modifiers) for more details including how to configure this for your project. - -#### New `ArrayList::excludeAny()` method {#arraylist-improvements-excludeany} - -[`ArrayList`](api:SilverStripe\ORM\ArrayList) now has an [`excludeAny()`](api:SilverStripe\ORM\ArrayList::excludeAny()) method, which mirrors the [`DataList::excludeAny()`](api:SilverStripe\ORM\DataList::excludeAny()) method. - -### Improvement to page search performance with elemental {#cms-search-performance} - -- The CMS search has been optimised to reduce the number of database queries made when searching for pages with elemental content blocks. This has resulted in a small performance improvement. In our test environment, with 1,000 pages each with 5 content blocks we observed a 9% performance improvement using MySQL. Performance will vary with your environment. -- A new opt-in behaviour is available that makes a very large difference to performance when using elemental content blocks. In testing, this behaviour was more than 100% faster (i.e. halving the response time) of the sitetree search request. The opt-in feature disables the default behaviour of rendering all content blocks for CMS search. Instead, it simply extracts the database contents of the elements from its text and html fields. There is a downside to consider which is that any related content not directly on the element will not be matched against the search query. Note this does not use the `$searchable_fields` config. To opt-in to this behaviour, use the following config: - -```yml -DNADesign\Elemental\Controllers\ElementSiteTreeFilterSearch: - render_elements: false -``` - -If `render_elements` is set to `false` then individual fields on elements can be excluded from search by adding them to a config array: - -```yml -App\MyElement: - fields_excluded_from_cms_search: - - MyFieldToExclude - - AnotherFieldToExclude -``` - -### New `InheritedPermissions` option - only these members {#only-these-members} - -Applying the [`InheritedPermissionsExtension`](api:SilverStripe\Security\InheritedPermissionsExtension) to a `DataObject` class gives you the ability to declare that only users in certain groups can view or edit those records. This extension is applied by default to the [`File`](api:SilverStripe\Assets\File) and [`SiteTree`](SilverStripe\CMS\Model\SiteTree) classes. - -A new permission has been added to [`InheritedPermissions`](api:SilverStripe\Security\InheritedPermissions), which powers that extension. The new permission (`InheritedPermissions::ONLY_THESE_MEMBERS`) allows you to define which specific `Member` records should have access to your records, regardless of which groups those members belong to. - -In the CMS, this new permission is available for files and pages by setting "Who can view/edit this page/file" to "Only these users". - -### Optimised queries when filtering against iDs {#filter-by-ids} - -`DataList` queries filtering against a list of IDs have been optimised when all of the following criteria are met: - -- the column being filtered is a [`DBPrimarykey`](api:SilverStripe\ORM\FieldType\DBPrimaryKey) or a [`DBForiegnKey`](api:SilverStripe\ORM\FieldType\DBForiegnKey) -- the values being filtered are all either integers or valid integer strings -- using placeholders for integer ids has been configured off, which is the default config value. - -If you want to disable this optimisation you can do so with this configuration: - -```yml -SilverStripe\ORM\DataList: - use_placeholders_for_integer_ids: true -``` - -The following performance improvements were measured in a test setup where 10,000 record IDs were passed in: - -- DataList::byIDs() - 198% faster - (0.0608s vs 0.1812s) -- RelationList::foreignIDFilter() - - HasManyList::foreignIDFilter() - 108% faster (0.1584s vs 0.3304s) - - ManyManyList::foreignIDFilter() - 108% faster (0.1529s vs 0.3119s) - - ManyManyThroughList::foreignIDFilter() - 27% faster (0.6901s vs 0.8766s) - -Note that those observations were made using MySQL. - -### Session manager changes {#session-manager} - -#### Anonymize stored IP addresses {#session-manager-ip} - -A configuration option has been added to [Session Manager](https://github.com/silverstripe/silverstripe-session-manager/) to anonymize stored IP addresses for enhanced privacy and compliance. - -If you want to anonymize stored IP addresses then use the following configuration: - -```yml -SilverStripe\SessionManager\Models\LoginSession: - anonymize_ip: true -``` - -#### `GarbageCollectionService` can remove data in batches {#session-manager-gc} - -A configuration option has been added to [`GarbageCollectionService`](api:SilverStripe\SessionManager\Services\GarbageCollectionService) to limit the number of items it removes each time you run garbage collection on session data. It will not be limited by default but you can optionally limit the number of items it will remove in a single run by setting the following YAML configuration: - -```yml -SilverStripe\SessionManager\Services\GarbageCollectionService: - batch_remove_limit: 1000 -``` - -See [garbage collection](/developer_guides/cookies_and_sessions/managing_sessions/#garbage-collection) for more details. - -#### Threshold for updating `LastAccessed` in `LoginSession` {#session-manager-last-accessed} - -[`LoginSession`](api:SilverStripe\SessionManager\Models\LoginSession) used to write to the database on every request to update the `LastAccessed` field for the logged in user. This adds a bit of overhead to every request that adds up. - -A timed threshold (with a default of 300 seconds, or 5 minutes) is now used. The `LastAccessed` value will only be updated and written to the database if the last time the user made a request to the server was longer than this threshold. You can change the threshold to meet the requirements of your auditing with the following YAML configuration: - -```yml -SilverStripe\SessionManager\Models\LoginSession: - last_accessed_threshold: 150 -``` - -### Static publish queue related page regeneration {#staticpublishqueue-regeneration} - -New configuration options have been added to [Static Publish Queue](https://github.com/silverstripe/silverstripe-staticpublishqueue) to force regeneration of related pages after publishing or unpublishing a related page. You can enable this with the following configuration: - -```yml -SilverStripe\CMS\Model\SiteTree: - regenerate_children: recursive - regenerate_parents: recursive -``` - -Available options are: - -- `none`: Do not regenerate any parent or child hierarchy -- `direct`: Regenerate only one level above or below (direct parent or children, but not grandparent or grandchildren) -- `recursive`: Regenerate the entire parent or child hierarchy - -Read more about new [configuration options](https://github.com/silverstripe/silverstripe-staticpublishqueue/blob/6/docs/en/basic_configuration.md#control-when-childparent-pages-are-regenerated-in-cache-actions). - -### Other new features - -- You can now exclude specific `DataObject` models from the check and repair step of `dev/build` - see [ORM Performance](/developer_guides/performance/orm/#skip-check-and-repair) for more information. -- You can change what `SearchFilter` the `TreeDropdownField` uses with YAML configuration - see [ORM Performance](/developer_guides/performance/orm/#treedropdownfield) for more information. -- The [`i18nTextCollector`](api:SilverStripe\i18n\TextCollection\i18nTextCollector) now collects strings for ORM properties (e.g. `$db` fields) in `DataObject` and `Extension` classes, and from themes. See [i18n - collecting text](/developer_guides/i18n/#collecting-text) for more details. -- Extensions which modify permissions for [`Group`](api:SilverStripe\Security\Group) records which return `true` will be respected, the same as when modifying permissions for any other `DataObject` record. -- The [`ListboxField`](api:SilverStripe\Forms\ListboxField) now has a react component, and can be used in react-powered contexts such as within elemental blocks -- A new [`FieldsValidator`](api:SilverStripe\Forms\FieldsValidator) class has been added, which simply calls [`validate()`](api:SilverStripe\Forms\FormField::validate()) on all data fields in the form to ensure fields have valid values. Functionally equivalent to an empty [`RequiredFields`](api:SilverStripe\Forms\RequiredFields) validator. -- In your GraphQL schemas, you can now define the pagination limit at a schema level. See [limiting pagination](/developer_guides/graphql/working_with_dataobjects/query_plugins/#limiting-pagination) in the GraphQL documentation for more details. - -## API changes - -### `silverstripe/framework` - -- [`BuildTask`](api:SilverStripe\Dev\BuildTask) now has boolean `is_enabled` configuration option which has precedence over the existing `BuildTask::enabled` protected class property. The `BuildTask::enabled` property has been marked as deprecated and will be removed in CMS 6 if favour of using `is_enabled` instead. -- Passing an argument for `$limit` that is not `array|string|null` in [`SilverStripe\ORM\Search\SearchContext::getQuery()`](api:SilverStripe\ORM\Search\SearchContext::getQuery()) will throw a deprecation warning. In CMS 6 the parameter type will be changed from dynamic to `array|string|null`. -- You can now declare the default case sensitivity used by `SearchFilter` implementations, which power the `DataList` filtering functionality. See [search filter modifiers](/developer_guides/model/searchfilters/#modifiers) for more details. - -### `silverstripe/elemental-fileblock` - -- The [`FileBlock::getSummaryThumbnail()`](api:SilverStripe\ElementalFileBlock\Block\FileBlock::getSummaryThumbnail()) method has been marked as deprecated and will be removed in CMS 6 without equivalent functionality to replace it, as it is no longer required for the elemental block's preview summary. - -## Dependency changes - -- The unsupported modules `silverstripe/widgets` and `silverstripe/content-widget` were removed from `silverstripe/recipe-blog`. They were accidentally included in the `2.0.0` release of `silverstripe/recipe-blog`. The `silverstripe/widgets` and `silverstripe/content-widget` modules are CMS-5-compatible though unsupported. If your project relies on `silverstripe/widgets` or `silverstripe/content-widget`, manually update your project's `composer.json` file to explicitly require these modules. - -## Bug fixes - -- [`DataList::filterAny()`](api:SilverStripe\ORM\DataList::filterAny()) queries on many-many relations that use an aggregate `HAVING` clause now correctly use an `OR` conjunction rather than an incorrect `AND` conjunction. -- At some point shortly before the release of Silverstripe CMS 4.0.0, SSL support for database connections was accidentally removed. This has now been reinstated - see [Using SSL in database connections](/developer_guides/security/secure_coding#using-ssl-in-database-connections) for more information. -- The `cascade_duplicates` property was added to the [`InheritedPermissionsExtension`](api:SilverStripe\Security\InheritedPermissionsExtension) class so that now when duplicating any object that has the `InheritedPermissionsExtension` applied, the `GroupID` values in the `ViewerGroups` and `EditGroups` mapping tables will also be duplicated so that new object retains the same viewer and editor groups as the original. -- Any fields added to a model's `$summary_fields` configuration which are *not* backed by database fields (such as method calls) will no longer be pulled through when `searchableFields()` calls back on it (i.e. because `$searchable_fields` configuration has not been explicitly declared). This means you do not need to explicitly declare `$searchable_fields` for models which should only use the summary fields to filter by. -- The [Storybook pattern library](https://silverstripe.github.io/silverstripe-pattern-lib/) for Silverstripe CMS wasn't working when we released Silverstripe CMS 5.0.0, but that has now been fixed. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - -## Change log - -### Security - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-05-12 [7b21b38ac](https://github.com/silverstripe/silverstripe-framework/commit/7b21b38ac4532d06565dfcefad50540ebd2b50f4) Require password field to be non-empty (Steve Boyd) - See [cve-2023-32302](https://www.silverstripe.org/download/security-releases/cve-2023-32302) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-rc1) - - 2023-05-15 [b9bdbbbf](https://github.com/silverstripe/developer-docs/commit/b9bdbbbf645a893d7686906abcdb3630b5b6344c) Require password field to be non-empty (Steve Boyd) - See [cve-2023-32302](https://www.silverstripe.org/download/security-releases/cve-2023-32302) - -### Features and enhancements {#changelog-enhancements} - -- silverstripe/installer (5.0.0 -> 5.1.0-rc1) - - 2023-08-18 [fc510dd](https://github.com/silverstripe/silverstripe-installer/commit/fc510dd3e8c7915ad8e6dc73f49a88f7752ab06b) Change favicon to reflect new logo (Maxime Rainville) - -- silverstripe/assets (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [53e8331](https://github.com/silverstripe/silverstripe-assets/commit/53e8331750008be7f9a9ec0caed05f62cdcbdaa1) Update translations (#570) (Guy Sartorelli) - - 2023-08-17 [a67cc24](https://github.com/silverstripe/silverstripe-assets/commit/a67cc24cc2f8448dd9120ef7bbd9d46a090d8b06) Update translations (#569) (Guy Sartorelli) - - 2023-06-15 [47fa6c6](https://github.com/silverstripe/silverstripe-assets/commit/47fa6c648163ad40f6ad585fde98fc132c37a2e9) add check for specific user inherited permission (Andrew Paxley) - - 2023-06-14 [f83706e](https://github.com/silverstripe/silverstripe-assets/commit/f83706eb1f864c74357f9b1a5405a8dab3a5054f) Update translations (Steve Boyd) - - 2023-06-14 [05732c0](https://github.com/silverstripe/silverstripe-assets/commit/05732c00ff0b1bd662db8feaef4f41b979280951) Update translations (Steve Boyd) - - 2023-05-30 [7c0cc54](https://github.com/silverstripe/silverstripe-assets/commit/7c0cc54028ac818479e4d07b028617edc8b9dc33) Update translations (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-08-29 [d01ae8029](https://github.com/silverstripe/silverstripe-framework/commit/d01ae8029e00aa3f836bbd22bfccb22676ef87d2) Update logo (#10922) (Maxime Rainville) - - 2023-08-29 [b4463d905](https://github.com/silverstripe/silverstripe-framework/commit/b4463d90509fc1602714f949fbf7589a8b1fbf72) Enable ArrayList and EagerLoadedList to use search filters (#10925) (Guy Sartorelli) - - 2023-08-21 [3e72f5e69](https://github.com/silverstripe/silverstripe-framework/commit/3e72f5e6946b00301f326cee2f6b63fece0e2081) Update translations (#10920) (Guy Sartorelli) - - 2023-08-17 [8745890d8](https://github.com/silverstripe/silverstripe-framework/commit/8745890d842b488d4ce999efcd297630c82dbce8) Update translations (#10918) (Guy Sartorelli) - - 2023-08-08 [358cbc9ee](https://github.com/silverstripe/silverstripe-framework/commit/358cbc9ee56ff70cd50342746082ff07c7c2bf0b) Do not use placeholders by default for foreignIDFilter() (Steve Boyd) - - 2023-08-07 [5a52484d8](https://github.com/silverstripe/silverstripe-framework/commit/5a52484d881e2fedeb344f1461c3208086afc9e2) Add FieldsValidator to ensure fields get validated (Guy Sartorelli) - - 2023-08-03 [ae49e134a](https://github.com/silverstripe/silverstripe-framework/commit/ae49e134a9ee7282c991b8ea3dc4ffd0f4d7f051) Use custom list for eagerloaded relations (#10869) (Guy Sartorelli) - - 2023-07-25 [672396880](https://github.com/silverstripe/silverstripe-framework/commit/672396880d1d7d9555e8b6aa787fcfded0750549) Do not use placeholders for int ID filters (Steve Boyd) - - 2023-07-21 [93acba053](https://github.com/silverstripe/silverstripe-framework/commit/93acba053552006f7001192fc25cd895500fdda2) Update translations (Steve Boyd) - - 2023-07-05 [85e503d01](https://github.com/silverstripe/silverstripe-framework/commit/85e503d0125d0f975a05f8be1b4806d935261a23) Refactor eagerloading fetch into separate methods (Guy Sartorelli) - - 2023-07-04 [6fa71bbf5](https://github.com/silverstripe/silverstripe-framework/commit/6fa71bbf513fc7cafbfceb16b3c6fbcd8ef5cb52) avoid multiple calls to records->count() In PermissionCheckboxSetField (#10839) (Thomas Portelange) - - 2023-06-28 [e1d10a0b4](https://github.com/silverstripe/silverstripe-framework/commit/e1d10a0b4ce55f8d62d931d9ace9f8d2179e1c9a) ListboxField react field schema (Andrew Paxley) - - 2023-06-27 [46d793048](https://github.com/silverstripe/silverstripe-framework/commit/46d7930489d6f27f5dc3157530c0e8938050d843) Cache DataObject::getSchema() (Steve Boyd) - - 2023-06-27 [ed0730370](https://github.com/silverstripe/silverstripe-framework/commit/ed07303703842032b01602d040c7fafd49435be2) Cache $item->ID for eager loading (Steve Boyd) - - 2023-06-14 [2ea66922c](https://github.com/silverstripe/silverstripe-framework/commit/2ea66922cdf8026048e569e0af8b4008468351e3) Update translations (Steve Boyd) - - 2023-06-14 [34019426d](https://github.com/silverstripe/silverstripe-framework/commit/34019426dd82f3c2eace241e7cef9152d8d8653e) add OnlyTheseMembers Inherited Permission type (Andrew Paxley) - - 2023-06-14 [76e9b78b0](https://github.com/silverstripe/silverstripe-framework/commit/76e9b78b0c2a8782cc86f2964d9220752bce50e8) Update translations (Steve Boyd) - - 2023-06-07 [246735101](https://github.com/silverstripe/silverstripe-framework/commit/246735101a52ad6091cc66daa0d55e078dd6e6f6) ORM eager loading (Steve Boyd) - - 2023-05-30 [6b49b6cdb](https://github.com/silverstripe/silverstripe-framework/commit/6b49b6cdb68d70d00f9fe0bce038095db539e577) Update translations (Steve Boyd) - - 2023-04-04 [2c874a1e9](https://github.com/silverstripe/silverstripe-framework/commit/2c874a1e945e4c017dcb44b571491b9b7d3f6cc7) Exclude a list of models for checking and repairs (#10746) (Guy Sartorelli) - - 2023-03-26 [280354df0](https://github.com/silverstripe/silverstripe-framework/commit/280354df08f3a28e487ede1f58b9bdc14b7de7ae) Allow different search filters on TreeDropdownField (elliot sawyer) - -- silverstripe/admin (2.0.0 -> 2.1.0-rc1) - - 2023-09-05 [4dd12690](https://github.com/silverstripe/silverstripe-admin/commit/4dd1269029d8e614b55cb9bdaa7cb03d1af20058) Do not show loading spinner when there was a loading error (Steve Boyd) - - 2023-09-04 [105b5ce5](https://github.com/silverstripe/silverstripe-admin/commit/105b5ce52bee19f19e04e5f697559039432bcd3d) Allow disabling of help_links (Steve Boyd) - - 2023-08-21 [f5e11e41](https://github.com/silverstripe/silverstripe-admin/commit/f5e11e41ace678a69d71d8bdd99afd5d2c1f6030) Update translations (#1552) (Guy Sartorelli) - - 2023-08-17 [66242e7a](https://github.com/silverstripe/silverstripe-admin/commit/66242e7a7530dbddd5dc679775e34a81306448a6) Update translations (#1550) (Guy Sartorelli) - - 2023-06-28 [e03bc329](https://github.com/silverstripe/silverstripe-admin/commit/e03bc329f7d79ae8ce38aee6dea46ae865c215db) add ListboxField react component (Andrew Paxley) - - 2023-06-23 [4f2c5e26](https://github.com/silverstripe/silverstripe-admin/commit/4f2c5e263bb7009eecfdbd1b8de27e2a02300a36) hide permission fields we arent using (Andrew Paxley) - - 2023-06-19 [a4729ba0](https://github.com/silverstripe/silverstripe-admin/commit/a4729ba0b0bdc3e1eebef5fd45a813a59b54300a) Update JS Translations (Steve Boyd) - - 2023-06-14 [ae0952b1](https://github.com/silverstripe/silverstripe-admin/commit/ae0952b1985f5588c9afb8ef4b1d72e5642fae0c) Storybook Doc Blocks (Sabina Talipova) - - 2023-06-14 [bae6d7a1](https://github.com/silverstripe/silverstripe-admin/commit/bae6d7a1054dd4bf3f8713236d21a5a57dc095f8) Update translations (Steve Boyd) - - 2023-06-14 [868b2655](https://github.com/silverstripe/silverstripe-admin/commit/868b2655b74bbae6111fc676fd3a3d76d218fd13) Update translations (Steve Boyd) - - 2021-08-31 [a802828f](https://github.com/silverstripe/silverstripe-admin/commit/a802828f7bb2705fe9f49fd572dca3c3d84ee9c5) Pass form validation result to client (Steve Boyd) - - 2020-04-25 [b001d487](https://github.com/silverstripe/silverstripe-admin/commit/b001d487118801ceaec388a0c22ec42840ce4e80) Make CMSProfileController use required_permission_codes (mattclegg) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [6c318880](https://github.com/silverstripe/silverstripe-asset-admin/commit/6c3188805ad13050d15a3c6fa03c05b429bee14c) Update translations (#1386) (Guy Sartorelli) - - 2023-08-08 [fa0fef24](https://github.com/silverstripe/silverstripe-asset-admin/commit/fa0fef240dc04955e25d90709d8ad8c57097f7d3) Use archive text when file archiving is enabled (Steve Boyd) - - 2023-06-15 [d48f81d5](https://github.com/silverstripe/silverstripe-asset-admin/commit/d48f81d57bbee151b2529dade7176113b2141b2f) update CMS fields to allow user-specific permissions (Andrew Paxley) - - 2023-06-14 [d278be60](https://github.com/silverstripe/silverstripe-asset-admin/commit/d278be605883144d3260c53cd2f6fe806b9f2673) Update translations (Steve Boyd) - - 2023-06-14 [be112c2e](https://github.com/silverstripe/silverstripe-asset-admin/commit/be112c2e6276ad04651b1c03d1168af42a75d647) Update translations (Steve Boyd) - - 2023-06-13 [71a622d8](https://github.com/silverstripe/silverstripe-asset-admin/commit/71a622d8453cc99f93a17e6834d90b68fa449e6c) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/campaign-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [d62c2c3](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d62c2c3fa243be56c0904a2f9f6564fb86d7caea) Update translations (#276) (Guy Sartorelli) - - 2023-06-14 [3b5b372](https://github.com/silverstripe/silverstripe-campaign-admin/commit/3b5b372274848c882c40a354c14bb01b4518d6d5) Update translations (Steve Boyd) - - 2023-06-14 [42e5db4](https://github.com/silverstripe/silverstripe-campaign-admin/commit/42e5db44a581b71f419b156c87594dbec6bd7d0f) Update translations (Steve Boyd) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [7b61f6a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/7b61f6a3e71c053fa051aa913327637fb1358721) Update translations (#304) (Guy Sartorelli) - - 2023-08-07 [addd992](https://github.com/silverstripe/silverstripe-versioned-admin/commit/addd992bc242d3b0817797920508eb1f46e16466) Allow File.keep_archived_assets to show files archive tab (Steve Boyd) - - 2023-06-14 [afcf911](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afcf911059ccb0965b026c63451153f3050fec7c) Update translations (Steve Boyd) - - 2023-06-14 [33880e7](https://github.com/silverstripe/silverstripe-versioned-admin/commit/33880e7658290fb0c1c82bdb993182fd27a3d0f1) Update translations (Steve Boyd) - -- silverstripe/cms (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [14037a77](https://github.com/silverstripe/silverstripe-cms/commit/14037a776fb10f04b78a7e5de3f5fa9af5680d19) Update translations (#2874) (Guy Sartorelli) - - 2023-08-17 [6decb069](https://github.com/silverstripe/silverstripe-cms/commit/6decb06909badbb8ab47ef9f5f17e929a6173882) Update translations (#2873) (Guy Sartorelli) - - 2023-06-15 [14eb767c](https://github.com/silverstripe/silverstripe-cms/commit/14eb767c9c7b83146c70cbd075288506c94a1e6e) update SiteTree permissions in CMS (Andrew Paxley) - - 2023-06-14 [d9b6f7ac](https://github.com/silverstripe/silverstripe-cms/commit/d9b6f7acadedb0ff82015ecd0ebb02085704042c) Update translations (Steve Boyd) - - 2023-06-14 [cdd6e54f](https://github.com/silverstripe/silverstripe-cms/commit/cdd6e54fce6fa4ea3f638da038758a47db15ffbc) Update translations (Steve Boyd) - - 2023-05-30 [204ccd20](https://github.com/silverstripe/silverstripe-cms/commit/204ccd20b7df8d68fce4d1e13c4e7fbcec9d3bd3) Update translations (Steve Boyd) - -- silverstripe/errorpage (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [c0062cc](https://github.com/silverstripe/silverstripe-errorpage/commit/c0062cc391b9d3e562c8263ce30bbe8b5ee239ad) Update translations (#87) (Guy Sartorelli) - - 2023-06-14 [4225210](https://github.com/silverstripe/silverstripe-errorpage/commit/42252106e8e51fa7e467675abbe7764ff0c2f5c0) Update translations (Steve Boyd) - - 2023-06-14 [6fb1a24](https://github.com/silverstripe/silverstripe-errorpage/commit/6fb1a24e9c6c9c36b4fd715f3da951231b11bc6c) Update translations (Steve Boyd) - -- silverstripe/reports (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [03869a75](https://github.com/silverstripe/silverstripe-reports/commit/03869a7535bded903e23a0f1618af1480cb4a1e8) Update translations (#167) (Guy Sartorelli) - - 2023-06-14 [f6aee12f](https://github.com/silverstripe/silverstripe-reports/commit/f6aee12f07f506e370cb7ae3aa159476da46d35a) Update translations (Steve Boyd) - - 2023-06-14 [d2a5d6ea](https://github.com/silverstripe/silverstripe-reports/commit/d2a5d6ea535b866182534f5f438efaa17cdd44c3) Update translations (Steve Boyd) - -- silverstripe/siteconfig (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [bd825dce](https://github.com/silverstripe/silverstripe-siteconfig/commit/bd825dce7dc88d87b97d5fdbcc92c12f1ab6fd74) Update translations (#143) (Guy Sartorelli) - - 2023-06-14 [e51a7aa8](https://github.com/silverstripe/silverstripe-siteconfig/commit/e51a7aa8be33d5481f2ba5a51687fce9679ca836) Update translations (Steve Boyd) - - 2023-06-14 [014a428e](https://github.com/silverstripe/silverstripe-siteconfig/commit/014a428e9d82dcb5449e4989f7de3ec4cb529df1) Update translations (Steve Boyd) - -- silverstripe/versioned (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [302aa4c](https://github.com/silverstripe/silverstripe-versioned/commit/302aa4c36a9383caa4d079e3f589315dc78bacf6) Update translations (#411) (Guy Sartorelli) - - 2023-06-14 [afb4517](https://github.com/silverstripe/silverstripe-versioned/commit/afb4517a9673194dd82ba5bd4868367e678dfd77) Update translations (Steve Boyd) - - 2023-06-14 [5bae587](https://github.com/silverstripe/silverstripe-versioned/commit/5bae5877f879adfe104b14b51832148afb7056cb) Update translations (Steve Boyd) - -- silverstripe/graphql (5.0.0 -> 5.1.0-rc1) - - 2023-06-27 [d8435c5](https://github.com/silverstripe/silverstripe-graphql/commit/d8435c5f1c90e8e7ff50b5a0a22fcb68995b74b9) Enable storing GraphQL schema in `silverstripe-cache/` (#534) (Guy Sartorelli) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [845aa34](https://github.com/silverstripe/silverstripe-session-manager/commit/845aa3400679b94a93e23178450e0f523fbfb3a4) Update translations (#166) (Guy Sartorelli) - - 2023-08-16 [c82efd9](https://github.com/silverstripe/silverstripe-session-manager/commit/c82efd989b83e8f2f23fa02b6e193b153d6018ef) Don't update LastAccessed if some threshold hasn't been reached (#156) (Thomas Portelange) - - 2023-08-11 [d31ab95](https://github.com/silverstripe/silverstripe-session-manager/commit/d31ab95d30489efcea065a8d282a41bd506490ca) Add option to anonymize ip requests (#161) (Thomas Portelange) - - 2023-07-04 [ad7265d](https://github.com/silverstripe/silverstripe-session-manager/commit/ad7265d6525e15d8cd592dbac6bd7e77fb5e2295) get cached Member in LoginSession (#152) (Thomas Portelange) - - 2023-07-04 [c7a59f2](https://github.com/silverstripe/silverstripe-session-manager/commit/c7a59f29c7a3d67f05fd0264e5d46d583e2f21b0) get cached Member in SessionManagerField (#151) (Thomas Portelange) - - 2023-06-14 [cb90e70](https://github.com/silverstripe/silverstripe-session-manager/commit/cb90e70e850d7bffb75e4144f6bbca54fb4973b9) Update translations (Steve Boyd) - - 2023-06-14 [f9d423e](https://github.com/silverstripe/silverstripe-session-manager/commit/f9d423e9bf043b1b1c79fb29e70832c3e610a194) Update translations (Steve Boyd) - - 2023-06-13 [65d74c9](https://github.com/silverstripe/silverstripe-session-manager/commit/65d74c95f0be810a697ae39d4aac8abf219d4f6f) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/login-forms (5.0.0 -> 5.1.0-rc1) - - 2023-08-18 [8aeb6e9](https://github.com/silverstripe/silverstripe-login-forms/commit/8aeb6e9280c7d6c673026d68ec0b4c7f36b44b10) Include new logo (Maxime Rainville) - -- silverstripe/documentconverter (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [729c9eb](https://github.com/silverstripe/silverstripe-documentconverter/commit/729c9ebf47fcbea9f7ca3f850ec4bbc592d102b2) Update translations (#56) (Guy Sartorelli) - - 2023-06-14 [f0c5641](https://github.com/silverstripe/silverstripe-documentconverter/commit/f0c5641956ca97c80283418a8d9f88a23e5b2b04) Update translations (Steve Boyd) - - 2023-06-14 [d12916b](https://github.com/silverstripe/silverstripe-documentconverter/commit/d12916b8cd9b259bbfe5e365a11dbf5b7581b1e5) Update translations (Steve Boyd) - -- silverstripe/iframe (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [9890370](https://github.com/silverstripe/silverstripe-iframe/commit/98903708cd2aecc1b323489b60502631a2eff67e) Update translations (#74) (Guy Sartorelli) - - 2023-06-14 [ef07ff3](https://github.com/silverstripe/silverstripe-iframe/commit/ef07ff3a568f1fcd8ac8815a8e1e7adbf49c60f9) Update translations (Steve Boyd) - - 2023-06-14 [7070529](https://github.com/silverstripe/silverstripe-iframe/commit/70705292023a6f37297c39f752f0a55e92692f79) Update translations (Steve Boyd) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-rc1) - - 2023-06-13 [f667020](https://github.com/silverstripe/silverstripe-tagfield/commit/f6670206780db4525e8709ec3d6cc01ef55ecda5) Storybook Doc Blocks (Sabina Talipova) - -- silverstripe/taxonomy (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [b76ce97](https://github.com/silverstripe/silverstripe-taxonomy/commit/b76ce9782f8096a8cc6795359c7be709cfcba638) Update translations (#95) (Guy Sartorelli) - - 2023-06-14 [050cb00](https://github.com/silverstripe/silverstripe-taxonomy/commit/050cb006804a070efde629dbe807e63e1722eef0) Update translations (Steve Boyd) - - 2023-06-14 [6baddb9](https://github.com/silverstripe/silverstripe-taxonomy/commit/6baddb9af915964fba932b23424810defdd490a3) Update translations (Steve Boyd) - -- silverstripe/blog (4.0.0 -> 4.1.0-rc1) - - 2023-08-21 [9d3a398](https://github.com/silverstripe/silverstripe-blog/commit/9d3a398901cb9207a707591c7342dd90845d444f) Update translations (#723) (Guy Sartorelli) - - 2023-08-17 [e9390c3](https://github.com/silverstripe/silverstripe-blog/commit/e9390c3525141ae8fb9769db50732a702c032525) Update translations (#722) (Guy Sartorelli) - - 2023-06-14 [cf4452f](https://github.com/silverstripe/silverstripe-blog/commit/cf4452f5e06b0df2e1604a07b184642df0ad14e1) Update translations (Steve Boyd) - - 2023-06-14 [7cbeb90](https://github.com/silverstripe/silverstripe-blog/commit/7cbeb902809278113ca0e1269d8cd0ec14eb3083) Update translations (Steve Boyd) - - 2023-05-30 [09e79fd](https://github.com/silverstripe/silverstripe-blog/commit/09e79fd8a87325dcd9bb624d0a1647706553f756) Update translations (Steve Boyd) - -- silverstripe/spamprotection (4.0.0 -> 4.1.0) - - 2023-08-21 [19603c3](https://github.com/silverstripe/silverstripe-spamprotection/commit/19603c31bc452fb4264e80b1bbcb7059a408dbcf) Update translations (#101) (Guy Sartorelli) - - 2023-06-14 [afbcf59](https://github.com/silverstripe/silverstripe-spamprotection/commit/afbcf59ec4decaa054f78681026be654812b29bb) Update translations (Steve Boyd) - - 2023-06-14 [e08ac10](https://github.com/silverstripe/silverstripe-spamprotection/commit/e08ac1065811db19d8183ab5556f68e0ff87c8d8) Update translations (Steve Boyd) - -- silverstripe/contentreview (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [20d61d7](https://github.com/silverstripe/silverstripe-contentreview/commit/20d61d7d87582a919350974be2d4257838ef7a56) Update translations (#208) (Guy Sartorelli) - - 2023-06-14 [b6e00e9](https://github.com/silverstripe/silverstripe-contentreview/commit/b6e00e9528eb35ba06862a0a798757605109f420) Update translations (Steve Boyd) - - 2023-06-14 [91fa889](https://github.com/silverstripe/silverstripe-contentreview/commit/91fa889d8d935b9ccbff07afc75b5e8c24789af0) Update translations (Steve Boyd) - -- silverstripe/sharedraftcontent (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [bfeb2bd](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/bfeb2bdc4e5c3f485e70af4179438353c436e512) Update translations (#207) (Guy Sartorelli) - - 2023-08-18 [f1a5836](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/f1a58367c02280b3326f17c5f9b2beaa96a27c29) Use new logo (Maxime Rainville) - - 2023-06-14 [bfc5909](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/bfc5909cce70b2aaf00ccedb4eeea3270c53934f) Update translations (Steve Boyd) - - 2023-06-14 [b336507](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/b336507f474cbd3e110af64fc4ba28d27b92cc51) Update translations (Steve Boyd) - - 2023-05-30 [d13d77d](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/d13d77df1d2be288cbabaac676203cb23b52ac3e) Update translations (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0-rc1) - - 2023-08-21 [af03d8d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/af03d8d0d154447e7c76a6f617da16523a4cf777) Update translations (#501) (Guy Sartorelli) - - 2023-08-17 [09e3019](https://github.com/symbiote/silverstripe-advancedworkflow/commit/09e3019be8ce050cab46297da9ab07c0729bcea1) Update translations (#500) (Guy Sartorelli) - - 2023-06-14 [e9fd460](https://github.com/symbiote/silverstripe-advancedworkflow/commit/e9fd460183abb01489657a8477db6163ab818851) Update translations (Steve Boyd) - - 2023-06-14 [0e7caa8](https://github.com/symbiote/silverstripe-advancedworkflow/commit/0e7caa8eace59dfb3c9630afb29e671158d8d135) Update translations (Steve Boyd) - -- silverstripe/userforms (6.0.0 -> 6.1.0-rc1) - - 2023-08-21 [c0eb6d6](https://github.com/silverstripe/silverstripe-userforms/commit/c0eb6d61e8d6595e5a1cca90fcdf68b190bbeb15) Update translations (#1231) (Guy Sartorelli) - - 2023-06-14 [c562d13](https://github.com/silverstripe/silverstripe-userforms/commit/c562d138dfdc3a0de20af4d23089aba6fece626d) Update translations (Steve Boyd) - - 2023-06-14 [95d3cee](https://github.com/silverstripe/silverstripe-userforms/commit/95d3ceec3be741cbaf30b6b183d5a0057404e546) Update translations (Steve Boyd) - - 2023-05-30 [ae34301](https://github.com/silverstripe/silverstripe-userforms/commit/ae34301f6a59168f3a74c86bf18a24ad3529c0b7) Update translations (Steve Boyd) - -- silverstripe/externallinks (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [20c2231](https://github.com/silverstripe/silverstripe-externallinks/commit/20c2231bff459bf3a58eb919bdf2c0c86093bf23) Update translations (#106) (Guy Sartorelli) - - 2023-06-14 [2560888](https://github.com/silverstripe/silverstripe-externallinks/commit/2560888df057645b7be08dd889336785a497057f) Update translations (Steve Boyd) - - 2023-06-14 [61b99e8](https://github.com/silverstripe/silverstripe-externallinks/commit/61b99e881cce49806856b75ee69df51d95e6b721) Update translations (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.0.0 -> 4.1.0-rc1) - - 2023-08-21 [720336d](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/720336dd78c0242a6ea79ec8fb22c32a00fc4fa8) Update translations (#70) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.0.0 -> 3.0.1) - - 2023-06-14 [17cd10c](https://github.com/bringyourownideas/silverstripe-maintenance/commit/17cd10cc627102f7505fcec507e0dc154e27c25a) Update translations (Steve Boyd) - -- silverstripe/versionfeed (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [d082606](https://github.com/silverstripe/silverstripe-versionfeed/commit/d082606ded9c73b98fc858c66c634952a6e68d6e) Update translations (#88) (Guy Sartorelli) - - 2023-06-14 [b11db96](https://github.com/silverstripe/silverstripe-versionfeed/commit/b11db96d7a93d28dc9a0852262ff3ce496c3754f) Update translations (Steve Boyd) - - 2023-06-14 [2450e85](https://github.com/silverstripe/silverstripe-versionfeed/commit/2450e85c874f29d9f2558e14b0578b08ba4fa842) Update translations (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [4b19889](https://github.com/silverstripe/silverstripe-elemental/commit/4b19889771a5846ce53054f7077cfe354a9d181b) Update translations (#1083) (Guy Sartorelli) - - 2023-07-04 [46fd44a](https://github.com/silverstripe/silverstripe-elemental/commit/46fd44ad07fd1f8443388e0b3ac39cd7c58b6091) Optimise site search (Steve Boyd) - - 2023-06-14 [d6c0bbf](https://github.com/silverstripe/silverstripe-elemental/commit/d6c0bbf4f615cf6071b6bb33b942f31937322f6f) Update translations (Steve Boyd) - - 2023-06-14 [34d9faf](https://github.com/silverstripe/silverstripe-elemental/commit/34d9faff47db47d6de03ba68ffd0ed8491090b5e) Update translations (Steve Boyd) - - 2023-03-13 [ddc3c32](https://github.com/silverstripe/silverstripe-elemental/commit/ddc3c32878f5bbdf74a74d16b058548fbae04c09) Include summary in elemental area by default (#948) (Michael van Schaik) - -- silverstripe/elemental-fileblock (3.0.0 -> 3.1.0-rc1) - - 2023-06-14 [d7ffcd8](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/d7ffcd829fea3eea29f040c97c533f81a60fe3df) Update translations (Steve Boyd) - - 2023-06-14 [8c15457](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/8c154578d73157f23c3e4797fa08fe89c65e7c44) Update translations (Steve Boyd) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0-rc1) - - 2023-06-14 [cf0fcf6](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/cf0fcf656f223cf5244b2a5090b662d45cf749c5) Update translations (Steve Boyd) - - 2023-06-14 [060b065](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/060b065bd727a29fc9229f45ab4c6f93888da138) Update translations (Steve Boyd) - -- silverstripe/hybridsessions (3.0.0 -> 3.0.2) - - 2023-08-18 [3df783e](https://github.com/silverstripe/silverstripe-hybridsessions/commit/3df783e81b7c2a863f3c4afdedcbba004ed053b8) Update translations (Guy Sartorelli) - - 2023-05-30 [87087ff](https://github.com/silverstripe/silverstripe-hybridsessions/commit/87087ffae20037ff61415d7ab868e162ff829063) Update translations (Steve Boyd) - -- silverstripe/registry (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [a2b05fa](https://github.com/silverstripe/silverstripe-registry/commit/a2b05faf3575c5fa89399f2ee705deb5ac562685) Update translations (#87) (Guy Sartorelli) - - 2023-06-14 [6c319fc](https://github.com/silverstripe/silverstripe-registry/commit/6c319fc0449de538f566fdf5c58d7a8da64bd516) Update translations (Steve Boyd) - - 2023-06-14 [55a748f](https://github.com/silverstripe/silverstripe-registry/commit/55a748fec1874925e943dae1a88c5b0e1c0779be) Update translations (Steve Boyd) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [736c2ad](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/736c2ad7c332bbeae1b9a21c95f54cd3d5cdbfbf) Update translations (#133) (Guy Sartorelli) - - 2023-06-14 [9ea2fa1](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/9ea2fa1cf2ee7c4066695575c8dc259762116fef) Update translations (Steve Boyd) - -- silverstripe/mfa (5.0.0 -> 5.1.0-rc1) - - 2023-06-15 [febbf9d](https://github.com/silverstripe/silverstripe-mfa/commit/febbf9d8977ba6e818bad4248bc67af085b1480c) Update translations (Steve Boyd) - - 2023-06-14 [48277a9](https://github.com/silverstripe/silverstripe-mfa/commit/48277a9cc0524192c255d2c43516959b159a1ab8) Update translations (Steve Boyd) - -- silverstripe/crontask (3.0.0 -> 3.0.2) - - 2023-08-21 [9a381d0](https://github.com/silverstripe/silverstripe-crontask/commit/9a381d0288129754b10f1d8755963b5650a5275a) Update translations (#81) (Guy Sartorelli) - - 2023-05-30 [8764d5d](https://github.com/silverstripe/silverstripe-crontask/commit/8764d5dbc9830a6dad6a1d83a9260313ce950fc7) Update translations (Steve Boyd) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [488ee05](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/488ee052f8e2a6e6dcce27aa5676bf8f379b681a) Update translations (#88) (Guy Sartorelli) - -- silverstripe/ldap (2.0.0 -> 2.1.0-rc1) - - 2023-08-21 [59d639a](https://github.com/silverstripe/silverstripe-ldap/commit/59d639aaa0f047bb7b849ae8c972a3930919e81e) Update translations (#60) (Guy Sartorelli) - - 2023-06-14 [30b22b8](https://github.com/silverstripe/silverstripe-ldap/commit/30b22b8724572531d8ae4730bd4a1dbc8a25485b) Update translations (Steve Boyd) - - 2023-06-14 [d5c18e0](https://github.com/silverstripe/silverstripe-ldap/commit/d5c18e0fc820098976f36c0b9987873acd38f201) Update translations (Steve Boyd) - -- silverstripe/realme (5.0.0 -> 5.2.0-rc1) - - 2023-08-21 [d84abc3](https://github.com/silverstripe/silverstripe-realme/commit/d84abc3a771625dff3943a064910029f835cc523) Update translations (#118) (Guy Sartorelli) - - 2023-06-26 [5dfdf4f](https://github.com/silverstripe/silverstripe-realme/commit/5dfdf4f43fff543df16bb1e72024f8add7697feb) Update styles to match new RealME branding (#113) (Guy Sartorelli) - - 2023-06-14 [d14d24b](https://github.com/silverstripe/silverstripe-realme/commit/d14d24bb3e68f477750ab1e90d6d033af7824326) Update translations (Steve Boyd) - - 2023-06-14 [193486d](https://github.com/silverstripe/silverstripe-realme/commit/193486d8615e5334d7d2dbdc98b77920ab1c4b87) Update translations (Steve Boyd) - - 2023-05-30 [3cdc32f](https://github.com/silverstripe/silverstripe-realme/commit/3cdc32f371cb4cf234a6aff69285d54bc409564f) Update translations (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0-rc1) - - 2023-06-14 [4e6b717](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/4e6b7172868e05a982cfbda6c944e11a46c31d98) Update translations (Steve Boyd) - -- silverstripe/subsites (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [178b521](https://github.com/silverstripe/silverstripe-subsites/commit/178b521c54c4f8bc8ba99cfcc84c9b9dd54c6670) Update translations (#534) (Guy Sartorelli) - - 2023-06-14 [c847f3e](https://github.com/silverstripe/silverstripe-subsites/commit/c847f3e1d84b88b46f2c2f145db509a4590e5e9a) Update translations (Steve Boyd) - - 2023-06-14 [6a8b57b](https://github.com/silverstripe/silverstripe-subsites/commit/6a8b57b72e41caf9ea71471aa7fbf224db4ba42f) Update translations (Steve Boyd) - -- silverstripe/lumberjack (3.0.0 -> 3.0.2) - - 2023-08-21 [bd35b14](https://github.com/silverstripe/silverstripe-lumberjack/commit/bd35b1412d175f34b7cad6b3f8c9ee130081b1f4) Update translations (#131) (Guy Sartorelli) - - 2023-05-30 [f26bb8c](https://github.com/silverstripe/silverstripe-lumberjack/commit/f26bb8c0108ffbe9c9d6ad8bbe50943ab994a0bd) Update translations (Steve Boyd) - -- cwp/agency-extensions (3.0.0 -> 3.1.0-rc1) - - 2023-08-21 [0f68e50](https://github.com/silverstripe/cwp-agencyextensions/commit/0f68e50c3f083c8f84359961eedeb0781322d876) Update translations (#100) (Guy Sartorelli) - - 2023-06-14 [36bdf4e](https://github.com/silverstripe/cwp-agencyextensions/commit/36bdf4e9511ce789706ef323bec2e21c6d28cf73) Update translations (Steve Boyd) - - 2023-06-14 [0eb21e7](https://github.com/silverstripe/cwp-agencyextensions/commit/0eb21e75071045fb7f86e8867f5179c67b079e08) Update translations (Steve Boyd) - - 2023-05-30 [1f403f3](https://github.com/silverstripe/cwp-agencyextensions/commit/1f403f315797481561b0bdae28b92d46527d5298) Update translations (Steve Boyd) - -- dnadesign/silverstripe-elemental-userforms (4.0.0 -> 4.1.0-rc1) - - 2023-08-21 [9ab97a3](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/9ab97a3bd01272e169713e0d6232223c148a254d) Update translations (#79) (Guy Sartorelli) - - 2023-06-14 [f9cce50](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/f9cce50d8c2a241daaa42e566368ad1492d8a007) Update translations (Steve Boyd) - - 2023-06-14 [5dc8b52](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/5dc8b523cf25ce25d687b8b8182ba034dbee0ff9) Update translations (Steve Boyd) - - 2023-05-30 [4b6191e](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/4b6191ee807d9e3336f0670d15bcbed071a3d5c8) Update translations (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.0 -> 4.0.3) - - 2023-08-21 [1e5a1e8](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1e5a1e8056a7f82bb3d3c7442e5036c83d7103a8) Update translations (#373) (Guy Sartorelli) - - 2023-06-14 [665d231](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/665d23170b461f78af13263ab2d61f4cacdaab4c) Update translations (Steve Boyd) - - 2023-05-30 [89a7301](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/89a7301b670b8b1ddbfd2a9b91a6d9051144ff84) Update translations (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (5.0.0 -> 5.0.2) - - 2023-08-21 [6e0c8df](https://github.com/symbiote/silverstripe-queuedjobs/commit/6e0c8dfca578da0ede3b0f5a5e5a83896f74a665) Update translations (#410) (Guy Sartorelli) - - 2023-06-14 [083763e](https://github.com/symbiote/silverstripe-queuedjobs/commit/083763e6467adc01a96857a37d57862089b44f48) Update translations (Steve Boyd) - - 2023-06-14 [bed9514](https://github.com/symbiote/silverstripe-queuedjobs/commit/bed951439d1c68f990c6f72cd939be339da8f2a7) Update translations (Steve Boyd) - -### Bugfixes - -- silverstripe/installer (5.0.0 -> 5.1.0-rc1) - - 2023-06-04 [ab3d7bc](https://github.com/silverstripe/silverstripe-installer/commit/ab3d7bc206a7f71c5533053c5eb7aec372130d94) Fix link to V5 Docs (minimalic) - -- silverstripe/assets (2.0.0 -> 2.1.0-rc1) - - 2023-08-15 [4c04531](https://github.com/silverstripe/silverstripe-assets/commit/4c0453128d58c6647dcc567e793d9cb316333454) Ensure filenames are not duplicated when moving (Steve Boyd) - - 2023-08-10 [16ab3fa](https://github.com/silverstripe/silverstripe-assets/commit/16ab3fae648a5b7d36282666f8500487a94cb3a3) Double encoding image shortcode attributes (Sabina Talipova) - - 2023-08-07 [8597eae](https://github.com/silverstripe/silverstripe-assets/commit/8597eae2efac7df9cbe2b121cdf7bc26a7e4eff9) Fix for vips intervention image backend (#539) (Niklas Forsdahl) - - 2023-08-07 [d560dd4](https://github.com/silverstripe/silverstripe-assets/commit/d560dd4c76f0e72a2097488564c2a393b2e69f12) Multi HTML entities in image shortcodes (Sabina Talipova) - - 2023-07-11 [7f8057e](https://github.com/silverstripe/silverstripe-assets/commit/7f8057ea9af1a11fc8e4dbc3e24fdae84f97dc8b) (Sabina Talipova) - - 2023-07-11 [69cc7ed](https://github.com/silverstripe/silverstripe-assets/commit/69cc7edae15165ed5051d7587ac5219f84ec8e58) (Sabina Talipova) - - 2023-07-11 [bd9ebb7](https://github.com/silverstripe/silverstripe-assets/commit/bd9ebb72a0fb91ed2ca3d977f5b88efd6d0f7740) getCachedMarkup returns NULL instead of string if file doesn't exist (Sabina Talipova) - - 2023-05-18 [ae5b661](https://github.com/silverstripe/silverstripe-assets/commit/ae5b661dda468af9d0addb0afe490af6f0e06a7d) Use 0775 permissions for directories (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-09-13 [58696e3ed](https://github.com/silverstripe/silverstripe-framework/commit/58696e3ed5105e81245c30ddb7d04c3560ac2148) Set tableName on DBField before calling addToQuery (#10946) (Guy Sartorelli) - - 2023-09-05 [17c33231c](https://github.com/silverstripe/silverstripe-framework/commit/17c33231c4d08ae65491970cbb46f9e17e772471) Call Textarea validation extension (Steve Boyd) - - 2023-09-05 [7ea25bf9e](https://github.com/silverstripe/silverstripe-framework/commit/7ea25bf9e1b9e2af12f10fe794a5abb88f220b70) Call addToQuery on all DBFields (#10936) (Guy Sartorelli) - - 2023-08-31 [374771d4d](https://github.com/silverstripe/silverstripe-framework/commit/374771d4d71f649a63f5258f4546415a5b30d3b4) Correctly implement backwards compatible null comparisons (#10935) (Guy Sartorelli) - - 2023-08-21 [57cb55d6a](https://github.com/silverstripe/silverstripe-framework/commit/57cb55d6ae8038ed7c919c210096a1eb4102861a) Typo in CheckboxSetFieldMultiEnumTest class name (closes #10689) (Loz Calver) - - 2023-08-21 [1fd495449](https://github.com/silverstripe/silverstripe-framework/commit/1fd495449b80c13b06b0ea60620208b66617eee0) Stop ManyManyThroughList join records incorrectly showing as changed (fixes #10821) (Loz Calver) - - 2023-08-14 [c7cd26299](https://github.com/silverstripe/silverstripe-framework/commit/c7cd26299a3945de0d3635bdfa845bb771cd95a6) Fix ArrayList canFilterBy to work with ArrayData (#10915) (Guy Sartorelli) - - 2023-08-09 [8da4aa863](https://github.com/silverstripe/silverstripe-framework/commit/8da4aa86379a94cffe51e3dc5f7eb0af8549234c) Regression with include argument (fixes #10911) (Loz Calver) - - 2023-08-08 [f34564648](https://github.com/silverstripe/silverstripe-framework/commit/f3456464810ec0e9d4cffbf2d22886ee41a807fc) Allow subclasses of ManyMany lists in EagerLoadedList (#10905) (Guy Sartorelli) - - 2023-08-07 [037168a4f](https://github.com/silverstripe/silverstripe-framework/commit/037168a4fe9759b7f464ee8403dab612a570bab6) Multi HTML entities in shortcodes (Sabina Talipova) - - 2023-08-04 [c9f48089c](https://github.com/silverstripe/silverstripe-framework/commit/c9f48089c9a8ce8d220b4ad42c32b8b56b0d87d1) Ensure DataList::eagerLoad() returns a clone (#10899) (Guy Sartorelli) - - 2023-08-04 [3628cec1f](https://github.com/silverstripe/silverstripe-framework/commit/3628cec1f33494632b492db51866b3a517514e93) Empty relations don't have extra DB calls with eager-loading (#10886) (Guy Sartorelli) - - 2023-07-31 [c58bc0a7f](https://github.com/silverstripe/silverstripe-framework/commit/c58bc0a7ffb94d969119da21f62534e202185f51) Use TransportFactory to prevent infinite config loop (Steve Boyd) - - 2023-07-29 [909bee810](https://github.com/silverstripe/silverstripe-framework/commit/909bee810194ec630f440fb610a45999acebd921) fix cache key (Thomas Portelange) - - 2023-07-29 [359cb1427](https://github.com/silverstripe/silverstripe-framework/commit/359cb1427afee373ea9ff00f8aea148fdd6ec9ed) include Silverstripe core files into roots (Thomas Portelange) - - 2023-07-24 [d24095aba](https://github.com/silverstripe/silverstripe-framework/commit/d24095aba8de6e3328859953f00e1c6a4ac00db3) Image in summaryfields breaks search (Sabina Talipova) - - 2023-07-20 [642321db6](https://github.com/silverstripe/silverstripe-framework/commit/642321db61b9790400a4c2c593092cab4c3ae6f2) Trigger eagerloading for first() and last() (#10875) (Guy Sartorelli) - - 2023-07-20 [7daa3fdb0](https://github.com/silverstripe/silverstripe-framework/commit/7daa3fdb0807a6360bd320eebecfc542a735bf8a) Short-array syntax for Enum (Steve Boyd) - - 2023-07-10 [3bf845a9e](https://github.com/silverstripe/silverstripe-framework/commit/3bf845a9e6c8ec2e38b3144626b0a7708d5cd6ea) Protect against loading incorrect eager-loaded relations. (Guy Sartorelli) - - 2023-07-10 [95d1c674a](https://github.com/silverstripe/silverstripe-framework/commit/95d1c674a289224e7e4b6da1ce906479cc6d6286) Allow multiple iterations of eager-loaded DataLists (Guy Sartorelli) - - 2023-07-07 [8c3ba8105](https://github.com/silverstripe/silverstripe-framework/commit/8c3ba810524f7bbcba92c36deb4194f84a0d075f) PHP 8.1 support in MySQLiConnector::query errors (#10570) (Dylan Wagstaff) - - 2023-07-06 [a03d0fdf6](https://github.com/silverstripe/silverstripe-framework/commit/a03d0fdf684e00d388b67af6ce9bdc99877709af) ListboxField entwine submissions (Andrew Paxley) - - 2023-07-06 [d0ca9cfdd](https://github.com/silverstripe/silverstripe-framework/commit/d0ca9cfdde01ae9c169decf59a95aae5b6acfa72) many_many extraFields and join records weren't in eagerloading (Guy Sartorelli) - - 2023-07-05 [612f7e734](https://github.com/silverstripe/silverstripe-framework/commit/612f7e734ff29b5a988d6840f0b90cead125bf97) Allow repeated iterations of predicated query result (#10857) (Guy Sartorelli) - - 2023-07-03 [7af0fe245](https://github.com/silverstripe/silverstripe-framework/commit/7af0fe245c1dcf45467c0c8cc0d6cf2c59c28f61) Resolve problems with eagerloading performance (Guy Sartorelli) - - 2023-06-26 [bb5378e17](https://github.com/silverstripe/silverstripe-framework/commit/bb5378e177b8924527a8a27607fc07979a2e795a) Gridfiled pagination missing after search (#10828) (Sabina Talipova) - - 2023-06-21 [ad9df9762](https://github.com/silverstripe/silverstripe-framework/commit/ad9df97626f0cba772a1f6066feb059f08f13938) LastPage method returns true if TotalPages equals 0 (Sabina Talipova) - - 2023-06-13 [35a8d79f6](https://github.com/silverstripe/silverstripe-framework/commit/35a8d79f624623527682eb3920327ca8aeb0b5cf) Show correct default value (Steve Boyd) - - 2023-06-12 [f4e0c768b](https://github.com/silverstripe/silverstripe-framework/commit/f4e0c768bdeeb3c2a379320eb219a6020c80ce08) Handle **TRAIT** in i18nTextCollector (Steve Boyd) - - 2023-06-12 [f88b7c3c2](https://github.com/silverstripe/silverstripe-framework/commit/f88b7c3c2be6fde3d02d7f1f88ffacfe89c45072) Duplicate page keeps original pages canView and canEdit permission (#10806) (Sabina Talipova) - - 2023-06-09 [33c62033f](https://github.com/silverstripe/silverstripe-framework/commit/33c62033fea1408d58721e7264725ffb65b9e04e) Fix translation key for DataObject.GENERALSEARCH (#10805) (Bram de Leeuw) - - 2023-06-07 [95eceb8d9](https://github.com/silverstripe/silverstripe-framework/commit/95eceb8d9e3652a5bc4c5b8f9f8fe74e87fffb0a) Ensure dir exists before scanning it (Steve Boyd) - - 2023-06-06 [face94371](https://github.com/silverstripe/silverstripe-framework/commit/face94371ee7fcccbe93cc5a522fc220eeaa8424) Passing 0 as first argument breaks template (dominik) - - 2023-05-22 [c4b8d9a24](https://github.com/silverstripe/silverstripe-framework/commit/c4b8d9a246c270c9bf1c4cd95a2bbbbfef79b4fa) Add back missing SSL support for database connections (#10784) (Guy Sartorelli) - - 2023-05-21 [f815a9cf2](https://github.com/silverstripe/silverstripe-framework/commit/f815a9cf2ab40921b1936b2ae76f21c89e793f7c) Provide correct replacement suggestion in deprecation message (Michal Kleiner) - - 2023-05-16 [696fe79dd](https://github.com/silverstripe/silverstripe-framework/commit/696fe79dd6f600bb35daff3cfa48182a19433252) Use OR conjuctive in filterAny aggregate queries (Steve Boyd) - - 2023-05-16 [2afb01463](https://github.com/silverstripe/silverstripe-framework/commit/2afb01463b6a116f4a1f99576b203c8837e384b8) Don't redirect admin URLs regardless of trailing slash (#10781) (Guy Sartorelli) - - 2023-05-16 [ef3b91417](https://github.com/silverstripe/silverstripe-framework/commit/ef3b91417a47fa48ece5a3499ce405a37eb05376) Get ApcuCacheFactory and MemcachedCacheFactory working again (Steve Boyd) - - 2023-05-11 [675ba9028](https://github.com/silverstripe/silverstripe-framework/commit/675ba90280e61b471dd4a77e39bcc724cd8c0009) fix issue where member without valid email can not be saved (Nicolaas / Sunny Side Up) - - 2023-05-08 [01808a831](https://github.com/silverstripe/silverstripe-framework/commit/01808a8316b182a438dfc5365cec8fffdb096c8e) Don't assume searchableFields() exists in gridfield filter (Guy Sartorelli) - - 2021-06-09 [5bb5ef80e](https://github.com/silverstripe/silverstripe-framework/commit/5bb5ef80ede8d75f2de05c8aaf367925269a14de) Form::defaultAction() didn't work if actions were in CompositeFields (fixes #9975) (Loz Calver) - -- silverstripe/admin (2.0.0 -> 2.1.0-rc1) - - 2023-09-11 [8c89bb32](https://github.com/silverstripe/silverstripe-admin/commit/8c89bb32609509144cf8825511902c6163cf4f9e) Allow wrapping an image in a link (#1579) (Guy Sartorelli) - - 2023-09-06 [c9913dc3](https://github.com/silverstripe/silverstripe-admin/commit/c9913dc3a7477882b79ed7f8e9f7db90119bad52) Allow wrapping an image in a link (#1577) (Guy Sartorelli) - - 2023-08-29 [8c71ef1d](https://github.com/silverstripe/silverstripe-admin/commit/8c71ef1d87e070380f7e17a97f24b502ed988980) Focus on first search field (Sabina Talipova) - - 2023-08-29 [baf4f501](https://github.com/silverstripe/silverstripe-admin/commit/baf4f5018d286cb9be5c8e8c1ada87fabec2843b) Update TinyMCE CSS files (Steve Boyd) - - 2023-08-28 [886a626c](https://github.com/silverstripe/silverstripe-admin/commit/886a626c7dc21e729d40dc1c6f9ded8fcf53b3f3) Don't use state unnecessarily (Guy Sartorelli) - - 2023-08-03 [ee30f31e](https://github.com/silverstripe/silverstripe-admin/commit/ee30f31ec430c10e6aaa9bc1355c1a4a35004e5c) Popover toggle (Steve Boyd) - - 2023-06-14 [d6a3c470](https://github.com/silverstripe/silverstripe-admin/commit/d6a3c47023d1bff6985bdae0be0612c2dce0b031) Don't load a second TinyMCE instance from react (#1525) (Guy Sartorelli) - - 2023-06-13 [f12d38a8](https://github.com/silverstripe/silverstripe-admin/commit/f12d38a89abdd29052e162ef1bf07f889b84c3b9) Set current locale based on actual defined dictionaries (#1523) (Guy Sartorelli) - - 2023-06-13 [5697904a](https://github.com/silverstripe/silverstripe-admin/commit/5697904aafc683a9b95768f80f49f9b039857a13) Eslint and Storybook errors (Sabina Talipova) - - 2023-06-12 [83e6bc29](https://github.com/silverstripe/silverstripe-admin/commit/83e6bc291b9fdf563ed5f255d752a57c64c6b5e9) Replace 4 space indent with 2 spaces (Sabina Talipova) - - 2023-06-02 [fdad7a87](https://github.com/silverstripe/silverstripe-admin/commit/fdad7a87e3cba7e55ac029e065cf2b00c0cb75fa) Syntax error TinyMC when using special characters (#1517) (Sabina Talipova) - - 2023-05-19 [7738c603](https://github.com/silverstripe/silverstripe-admin/commit/7738c6035cce8407e48fda7846be0f36a70024d9) fix: update docs and user help urls (Izzudin Anuar) - - 2023-05-01 [7849e187](https://github.com/silverstripe/silverstripe-admin/commit/7849e1878cbdd3d152b317c1f3498731839ff332) TinyMCE custom config issue (Sabina Talipova) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-rc1) - - 2023-09-11 [66f307b2](https://github.com/silverstripe/silverstripe-asset-admin/commit/66f307b23e17943ce4df7af21ad9a33107120c79) Allow wrapping an image in a link (#1398) (Guy Sartorelli) - - 2023-09-07 [03973f98](https://github.com/silverstripe/silverstripe-asset-admin/commit/03973f987a3a0b56890c5013af02899528ebab18) Image tag is converted to shortcode even if it doesn't have parent node (#1395) (Sabina Talipova) - - 2023-09-06 [8a6ee41d](https://github.com/silverstripe/silverstripe-asset-admin/commit/8a6ee41d1f5f163548b6797bedd003eea37dd2e9) Allow wrapping an image in a link (#1397) (Guy Sartorelli) - - 2023-07-06 [3281ee87](https://github.com/silverstripe/silverstripe-asset-admin/commit/3281ee873fba1705853d409e11f88897fa803658) ESLint issues (#1371) (Sabina Talipova) - - 2023-06-19 [4be853dd](https://github.com/silverstripe/silverstripe-asset-admin/commit/4be853dd4a5f85c5d86b8e1ff9d84d8c86f7a8f9) Upload files issue in AssetDropzone (#1368) (Sabina Talipova) - - 2023-06-12 [8bfff8ee](https://github.com/silverstripe/silverstripe-asset-admin/commit/8bfff8eefdef7395ee55e96086aa6c57e0b86c58) Replace 4 space indent with 2 spaces (Sabina Talipova) - - 2023-05-10 [206cb48a](https://github.com/silverstripe/silverstripe-asset-admin/commit/206cb48a9e5590eca850a636d4a15a009f8aa32d) Broken Insert Image behat test (Sabina Talipova) - - 2023-05-04 [b5b16f02](https://github.com/silverstripe/silverstripe-asset-admin/commit/b5b16f02f6ae6221ec8c4d7e27e3867e04828654) Update deprecation notice with correct message (Sabina Talipova) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0-rc1) - - 2023-06-15 [73cc19d](https://github.com/silverstripe/silverstripe-versioned-admin/commit/73cc19da03bdef5a7002bac546bcee8ccd50a223) Handle no trailing slash in other tab of archive admin (Steve Boyd) - -- silverstripe/cms (5.0.0 -> 5.1.0-rc1) - - 2023-09-14 [061517ac](https://github.com/silverstripe/silverstripe-cms/commit/061517ac451766e21f668a4555bfdc9fd06581de) Regression issue UI URLSegment buttons (Sabina Talipova) - - 2023-09-11 [4a92f5eb](https://github.com/silverstripe/silverstripe-cms/commit/4a92f5eb64b7442e27ea79c96098912c03d9abeb) Allow wrapping an image in a link (#2884) (Guy Sartorelli) - - 2023-09-06 [ba578cfc](https://github.com/silverstripe/silverstripe-cms/commit/ba578cfc0673ee4a98dff6a01ac0ba045a862638) Allow wrapping an image in a link (#2883) (Guy Sartorelli) - - 2023-08-31 [269eb5d7](https://github.com/silverstripe/silverstripe-cms/commit/269eb5d70ce0266100288025c99c2904d8e66c2c) SiteTree::DependentPages method returns non-SiteTree instance (Sabina Talipova) - - 2023-06-12 [39fe63db](https://github.com/silverstripe/silverstripe-cms/commit/39fe63db8a2bdfbd649ce7f3e59e27366db5783c) Duplicate page keeps original pages canView and canEdit permission (#2859) (Sabina Talipova) - - 2023-05-08 [55eabd66](https://github.com/silverstripe/silverstripe-cms/commit/55eabd669459734f1661983dd8f6d1ff66102342) Don't require jQuery on the frontend (#2854) (Guy Sartorelli) - -- silverstripe/versioned (2.0.0 -> 2.1.0-rc1) - - 2023-06-14 [f98b817](https://github.com/silverstripe/silverstripe-versioned/commit/f98b8170bba1fa1bd5dab03d2db28f7c6e23e338) Return diff in ChangedFields() (#406) (Guy Sartorelli) - -- silverstripe/graphql (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [c74fa1c](https://github.com/silverstripe/silverstripe-graphql/commit/c74fa1cb7be7c642588b89fee2a323ddfa6dc0a8) Handle using injected subclasses (Steve Boyd) - - 2023-07-04 [2981640](https://github.com/silverstripe/silverstripe-graphql/commit/2981640b96bb9e2cfa41232b48f8a0b61e02fc5f) fix(SortPlugin): amend sorting to all fields (Chris Joe) - - 2023-05-25 [6c8d0d7](https://github.com/silverstripe/silverstripe-graphql/commit/6c8d0d743500a07ed80cc783e9872ecaaee70393) NestedInputBuilder doesn't work with nested '*' (mason) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-rc1) - - 2023-08-11 [5b82124](https://github.com/silverstripe/silverstripe-session-manager/commit/5b821243461a7c81e2bda903bedfde195f55e468) fix missing variables (Thomas Portelange) - - 2023-08-10 [7ea28df](https://github.com/silverstripe/silverstripe-session-manager/commit/7ea28df5d9a6f22e4ec8a0ebe525637dede9f236) fix conflict (Thomas) - - 2023-06-12 [b731fab](https://github.com/silverstripe/silverstripe-session-manager/commit/b731faba88cab8daa1c02e717449e2ff23335dd7) Replace 4 space indent with 2 spaces (Sabina Talipova) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-rc1) - - 2023-07-17 [efeb8b2](https://github.com/silverstripe/silverstripe-tagfield/commit/efeb8b224d34659eb903d354123729e855b898be) TagField triggers edit form change without changes (Sabina Talipova) - - 2023-06-12 [a2b1a82](https://github.com/silverstripe/silverstripe-tagfield/commit/a2b1a827347779e375025bb05cd09a96deefab94) Replace 4 space indent with 2 spaces (Sabina Talipova) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0-rc1) - - 2023-05-10 [f8b2057](https://github.com/symbiote/silverstripe-advancedworkflow/commit/f8b205748756073963f3c0ebfa5d6408c9de4db0) Fix typo in userguide (Michal Kleiner) - - 2023-05-10 [788caf5](https://github.com/symbiote/silverstripe-advancedworkflow/commit/788caf5a99f3cd17cac266f3598e982c483b9413) Fix typo (Ed Wilde) - - 2021-07-08 [8bc9a24](https://github.com/symbiote/silverstripe-advancedworkflow/commit/8bc9a24d8197bb103d9d6c7b109f52849b470c08) Don't remove jobs when processing via publish job (Will Rossiter) - -- silverstripe/userforms (6.0.0 -> 6.1.0-rc1) - - 2023-09-05 [f1510dc](https://github.com/silverstripe/silverstripe-userforms/commit/f1510dca9e8527c3df65d14ac5a707124aa1cb1b) Renable email link to submitted file (Steve Boyd) - - 2023-08-17 [cf9a109](https://github.com/silverstripe/silverstripe-userforms/commit/cf9a109d3823472e54171bec29e961a5891189c0) Tighten routing rule for userforms ping action (#1224) (Tyler Trout) - - 2023-08-08 [60717e5](https://github.com/silverstripe/silverstripe-userforms/commit/60717e5c04cf3aa496b3a9838a4cd1851ef139e0) Use absolute URL for submitted file links in emails (#1226) (Guy Sartorelli) - - 2023-05-31 [bf49cab](https://github.com/silverstripe/silverstripe-userforms/commit/bf49cab67818552df3252daef4667757243a2b20) Prevent infinite recursion when field display rules are co-dependent (Steve Boyd) - - 2023-05-17 [7af0009](https://github.com/silverstripe/silverstripe-userforms/commit/7af0009321bbc7d910066cb317eb3245c5f792e2) Passing array to setReplyTo method instead of string (#1208) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-rc1) - - 2023-08-21 [e17dbf1](https://github.com/silverstripe/silverstripe-elemental/commit/e17dbf10486e1a397fe2586c7ab002fc28167191) Save repeated database queries to fetch elemental area name (fixes #928) (Loz Calver) - - 2021-09-01 [fc19dc9](https://github.com/silverstripe/silverstripe-elemental/commit/fc19dc914cfbb51ff480f4f5c6158597f22a8e67) Retain value that failed validation on client side (Steve Boyd) - -- silverstripe/elemental-fileblock (3.0.0 -> 3.1.0-rc1) - - 2023-07-10 [2f06274](https://github.com/silverstripe/silverstripe-elemental-fileblock/commit/2f06274d2978d7a80b7f375199f6ef82a618ba01) HTML showing in inline preview (Sabina Talipova) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0-rc1) - - 2023-07-10 [450666c](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/450666cc5b7c06ccfd86889c639670de3df30b1a) HTML showing in inline preview (Sabina Talipova) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-rc1) - - 2023-05-10 [2639d5a1](https://github.com/silverstripe/developer-docs/commit/2639d5a16b2f9f11526067cb93a3ddffd78b9a5b) Broken icon (#264) (Sabina Talipova) - -- silverstripe/environmentcheck (3.0.0 -> 3.0.1) - - 2023-05-19 [28ca036](https://github.com/silverstripe/silverstripe-environmentcheck/commit/28ca03634535a3cded21dc57406fb186818a14c8) Fix arguments order in SolrIndexCheck (Michal Kleiner) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-rc1) - - 2023-06-14 [4549433](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/45494338169f677c95d029a6a08a77d77b5f1ed6) Don't mark mocked response as an error (#82) (Guy Sartorelli) - - 2023-05-23 [bbfeb2d](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/bbfeb2d60fd2e239b71141f248041385af5902d2) #80 check $gridField exists before calling getConfig() (Luke Fromhold) - -- silverstripe/subsites (3.0.0 -> 3.1.0-rc1) - - 2023-08-28 [fe42821](https://github.com/silverstripe/silverstripe-subsites/commit/fe4282169b9d2e4f35e1107d87e263f1afc2a4a1) Set extraCodes to false for CMSProfileController (Steve Boyd) - -- silverstripe/lumberjack (3.0.0 -> 3.0.2) - - 2023-07-31 [ecefcdc](https://github.com/silverstripe/silverstripe-lumberjack/commit/ecefcdc48cc84516f7c173beef283b375f12577f) Remove infinite loop by reverting #127 (#129) (Guy Sartorelli) - - 2023-07-20 [fcdfcdf](https://github.com/silverstripe/silverstripe-lumberjack/commit/fcdfcdfb3037d3faa671e2606e0f242ca6d7cb62) Allow extension methods to be used in lumberjack (#127) (wernerkrauss) - -- symbiote/silverstripe-multivaluefield (6.0.0 -> 6.0.1) - - 2023-01-16 [02742df](https://github.com/symbiote/silverstripe-multivaluefield/commit/02742df60737389aeecebfb8989a9e2909d5492a) Fix saving of CheckboxSetMultivalueField (Florian Thoma) - -- symbiote/silverstripe-gridfieldextensions (4.0.0 -> 4.0.3) - - 2023-08-14 [47171ee](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/47171ee4c25f552fb7bac80c1666775c24bcaac0) Allow editing extra fields from ManyManyThroughList. (Guy Sartorelli) - -### API changes {#changelog-api-changes} - -- silverstripe/vendor-plugin (2.0.0 -> 2.0.1) - - 2023-02-06 [2b85737](https://github.com/silverstripe/vendor-plugin/commit/2b857372fc5c44580add91b8ddc685c3bd12aa88) Deprecate publicPathExists() (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-06-19 [4b22ab4df](https://github.com/silverstripe/silverstripe-framework/commit/4b22ab4dfe8ee04e19d26f70d8fcbdbe92d81c06) deprecate InheritedPermissions::getJoinTable (Andrew Paxley) - - 2023-05-16 [b51bc427a](https://github.com/silverstripe/silverstripe-framework/commit/b51bc427aa6e2f58e0b2a07826095ff1c18902e6) Remove deprecated template vars (Mohamed Alsharaf) - - 2023-04-26 [73ef035bd](https://github.com/silverstripe/silverstripe-framework/commit/73ef035bd8ddfb6f386b78d4d9c957b4859d9a99) Add AbsoluteLink method to RequestHandler (#10749) (Guy Sartorelli) - -### Dependencies - -- silverstripe/recipe-kitchen-sink (5.0.0 -> 5.1.0-rc1) - - 2023-06-12 [891be0b](https://github.com/silverstripe/recipe-kitchen-sink/commit/891be0bbc673a3ffcd07a7d567f024beceeb4665) Remove unsupported modules (Steve Boyd) - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-05-30 [80c51b6bd](https://github.com/silverstripe/silverstripe-framework/commit/80c51b6bd2e719d8afe9f79d13e0ca10d4e71ffc) Explicitly require psr/HTTP-message ^1 (Steve Boyd) - - 2023-05-24 [e55451619](https://github.com/silverstripe/silverstripe-framework/commit/e554516193afd6f3cf2762b3809b48f1c05590d0) Explicitly require psr/HTTP-message ^1 (Steve Boyd) - -- silverstripe/admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-30 [724d8453](https://github.com/silverstripe/silverstripe-admin/commit/724d8453af444de927b5fce1babd45e0cbf3b0ad) Update JS dependencies (#1569) (GitHub-actions[bot]) - - 2023-08-24 [8851fe36](https://github.com/silverstripe/silverstripe-admin/commit/8851fe3603ec6b0ccd29f57e14cc353fd811990b) Update JS dependencies and update TinyMCE_sslink.js onunmatch() (Steve Boyd) - - 2023-07-11 [c0ed41ce](https://github.com/silverstripe/silverstripe-admin/commit/c0ed41ce469d7c9edc2df9d4df86fb6eba732a33) Update eslint module (#1535) (Sabina Talipova) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-23 [959966b3](https://github.com/silverstripe/silverstripe-asset-admin/commit/959966b32a21ae722652c83939a4aed2a9f1198c) Update JS dependencies (#1390) (GitHub-actions[bot]) - - 2023-07-11 [a9f6a311](https://github.com/silverstripe/silverstripe-asset-admin/commit/a9f6a3116214401b4af16acda2f3f3ff135f911a) Update eslint module (#1373) (Sabina Talipova) - -- silverstripe/campaign-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-23 [b8c3108](https://github.com/silverstripe/silverstripe-campaign-admin/commit/b8c3108a77bb1bd1b34145762e1601781e934d68) Update JS dependencies (#278) (GitHub-actions[bot]) - - 2023-07-11 [9e5e00b](https://github.com/silverstripe/silverstripe-campaign-admin/commit/9e5e00bb13b88e12e34091667ec93abcc647c890) Update eslint module (#273) (Sabina Talipova) - -- silverstripe/versioned-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-23 [1ae7961](https://github.com/silverstripe/silverstripe-versioned-admin/commit/1ae79617848ffe0fff2c63e988704c31b688649b) Update JS dependencies (#306) (GitHub-actions[bot]) - - 2023-07-11 [fc60dac](https://github.com/silverstripe/silverstripe-versioned-admin/commit/fc60dac7d78699652bcfa1f3298a5d8dd70b2e5c) Update eslint module (#299) (Sabina Talipova) - -- silverstripe/cms (5.0.0 -> 5.1.0-rc1) - - 2023-08-30 [2799ef3b](https://github.com/silverstripe/silverstripe-cms/commit/2799ef3b3975f2ea0804aa32e76ed2fbc84838b5) Update JS dependencies (#2878) (GitHub-actions[bot]) - - 2023-07-11 [c831b1be](https://github.com/silverstripe/silverstripe-cms/commit/c831b1be6b2ad35b26f8b0061ffef78f32a9d769) Update eslint module (#2868) (Sabina Talipova) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-rc1) - - 2023-08-23 [1128742](https://github.com/silverstripe/silverstripe-session-manager/commit/11287422d3925e37fb1e00d4cf0634539c69f82b) Update JS dependencies (#168) (GitHub-actions[bot]) - - 2023-07-11 [b63bac3](https://github.com/silverstripe/silverstripe-session-manager/commit/b63bac3d7ca518a9588abcd8b138faa20a6c16b5) Update eslint module (Sabina Talipova) - -- silverstripe/login-forms (5.0.0 -> 5.1.0-rc1) - - 2023-08-23 [8d74414](https://github.com/silverstripe/silverstripe-login-forms/commit/8d744140003f67928717933b637d8240eae8ff5e) Update JS dependencies (#153) (GitHub-actions[bot]) - - 2023-08-03 [15f5f83](https://github.com/silverstripe/silverstripe-login-forms/commit/15f5f83e5e99366322b7815218c5a52b4b675e70) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [d7f7e6b](https://github.com/silverstripe/silverstripe-login-forms/commit/d7f7e6bcb8e1e7866d001227178c558e89bb46aa) Update eslint module (#143) (Sabina Talipova) - -- silverstripe/documentconverter (3.0.0 -> 3.1.0-rc1) - - 2023-08-03 [bde3513](https://github.com/silverstripe/silverstripe-documentconverter/commit/bde3513b692069c014a408c300c1b8ce0d3ea031) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [0112713](https://github.com/silverstripe/silverstripe-documentconverter/commit/0112713e868f79b23d8306cde84d14514b7a8aa1) Update eslint module (Sabina Talipova) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-rc1) - - 2023-08-23 [d1c02ca](https://github.com/silverstripe/silverstripe-tagfield/commit/d1c02ca80032bad041ffcd48502469d4451de5f2) Update JS dependencies (#258) (GitHub-actions[bot]) - - 2023-07-11 [61cf375](https://github.com/silverstripe/silverstripe-tagfield/commit/61cf3751ab4bbdc7dce4ef8eeb48291f5e9279c3) Update eslint module (#250) (Sabina Talipova) - -- silverstripe/recipe-blog (2.0.0 -> 2.1.0-rc1) - - 2023-06-12 [b2ae936](https://github.com/silverstripe/recipe-blog/commit/b2ae936253ee650d74f13c564008f539865975de) Remove unsupported modules (Steve Boyd) - -- silverstripe/blog (4.0.0 -> 4.1.0-rc1) - - 2023-08-23 [1f3878b](https://github.com/silverstripe/silverstripe-blog/commit/1f3878bc3f689058b6bccf90704e5810fd240dcd) Update JS dependencies (#725) (GitHub-actions[bot]) - - 2023-07-19 [23fd31c](https://github.com/silverstripe/silverstripe-blog/commit/23fd31c1058e93034b861528b27d85c465f412e8) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [1514d0b](https://github.com/silverstripe/silverstripe-blog/commit/1514d0b9824f70578d8b1dec05529a9601e67ea8) Update eslint module (#716) (Sabina Talipova) - -- silverstripe/contentreview (5.0.0 -> 5.1.0-rc1) - - 2023-08-23 [fd1fd08](https://github.com/silverstripe/silverstripe-contentreview/commit/fd1fd08db07ae0f5605c60a3fc023541d631b3e5) Update JS dependencies (#210) (GitHub-actions[bot]) - - 2023-07-11 [a571e5d](https://github.com/silverstripe/silverstripe-contentreview/commit/a571e5d8f893c8562c02884eba028a0830512f13) Update eslint module (#205) (Sabina Talipova) - -- silverstripe/sharedraftcontent (3.0.0 -> 3.1.0-rc1) - - 2023-08-04 [402eee7](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/402eee71adc2714a70c0d57a5ebb484967006192) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-08-04 [5a6c069](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/5a6c0694178d1937e03e6788519b28ba8d359992) Bump semver from 6.3.0 to 6.3.1 (dependabot[bot]) - - 2023-07-01 [69170f8](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/69170f8204a0bed26c708e3a2f0bd783daaca4d1) Update JS dependencies (GitHub-actions) - -- symbiote/silverstripe-advancedworkflow (6.0.0 -> 6.1.0-rc1) - - 2023-07-11 [31a7ff2](https://github.com/symbiote/silverstripe-advancedworkflow/commit/31a7ff2a66423073c132d11c19045f4e3939c03c) Update eslint module (#498) (Sabina Talipova) - -- silverstripe/segment-field (3.0.0 -> 3.1.0-rc1) - - 2023-08-23 [f3cb3f3](https://github.com/silverstripe/silverstripe-segment-field/commit/f3cb3f34e82fa96c71f9afe261f9a01fe94a3b52) Update JS dependencies (#89) (GitHub-actions[bot]) - - 2023-07-18 [0827a2a](https://github.com/silverstripe/silverstripe-segment-field/commit/0827a2a5d8546cd6dfa6fba8144d9e300a2c4476) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [727267a](https://github.com/silverstripe/silverstripe-segment-field/commit/727267ac08ced81330b2c317786ea7260985f4dc) Update eslint module (#83) (Sabina Talipova) - -- silverstripe/userforms (6.0.0 -> 6.1.0-rc1) - - 2023-08-31 [16c3c51](https://github.com/silverstripe/silverstripe-userforms/commit/16c3c5122d98055884899b8fba89a63fa0310adb) Update JS dependencies (#1235) (GitHub-actions[bot]) - - 2023-07-11 [2d89d1b](https://github.com/silverstripe/silverstripe-userforms/commit/2d89d1baaaf941cae6bd7d304b225628890227f1) Update eslint module (#1222) (Sabina Talipova) - -- silverstripe/externallinks (3.0.0 -> 3.1.0-rc1) - - 2023-07-11 [be7b01c](https://github.com/silverstripe/silverstripe-externallinks/commit/be7b01c1f8ff50faec72e8e9ded94e4af6973d5f) Update eslint module (#104) (Sabina Talipova) - -- silverstripe/sitewidecontent-report (4.0.0 -> 4.1.0-rc1) - - 2023-07-20 [9962192](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/9962192acab764698bace30d63fef994e014adc3) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [8488af8](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/8488af88acbde8d47fdf50e0b88aa5774bd8b2d2) Update eslint module (#67) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-rc1) - - 2023-08-30 [9553867](https://github.com/silverstripe/silverstripe-elemental/commit/955386728591bfc54de36dc6b1ebe2039451981a) Update JS dependencies (#1095) (GitHub-actions[bot]) - - 2023-07-11 [e8219c4](https://github.com/silverstripe/silverstripe-elemental/commit/e8219c47a368ed121fdfe2c95288d574f6ca9f4a) Update eslint module (#1075) (Sabina Talipova) - -- silverstripe/elemental-bannerblock (3.0.0 -> 3.1.0-rc1) - - 2023-08-23 [d2d790d](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/d2d790df31a54ac99f327854755dd4af754d45a2) Update JS dependencies (#124) (GitHub-actions[bot]) - - 2023-07-18 [f4cc10a](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/f4cc10afeb7dce356798be532336177baac05bff) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [7fcf870](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7fcf870335c36f76aafa5475e85cb20289f4787c) Update eslint module (#118) (Sabina Talipova) - - 2023-07-10 [6bc48b9](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/6bc48b9da3042df91d261d8030cb960defa4f053) Bump tough-cookie from 4.1.2 to 4.1.3 (dependabot[bot]) - -- silverstripe/totp-authenticator (5.0.0 -> 5.1.0-rc1) - - 2023-08-23 [778e98a](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/778e98aff8ecb606d80b4838799d4a2d437863f9) Update JS dependencies (#135) (GitHub-actions[bot]) - - 2023-07-18 [da9572c](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/da9572c9d6c2a20db371683f4220965505ac863e) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [9ea9c5e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/9ea9c5e890279d7c7f479a15f52ef800b9b3e9a8) Update eslint module (#128) (Sabina Talipova) - -- silverstripe/mfa (5.0.0 -> 5.1.0-rc1) - - 2023-08-31 [f51d8ff](https://github.com/silverstripe/silverstripe-mfa/commit/f51d8fff48eecd254c651ad3473860a66280832a) Update JS dependencies (#509) (GitHub-actions[bot]) - - 2023-07-11 [29260f1](https://github.com/silverstripe/silverstripe-mfa/commit/29260f19fc2129043ef353e93160ead235870d94) Update eslint module (#503) (Sabina Talipova) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-rc1) - - 2023-07-20 [3d6a045](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/3d6a045bc366212f5ffdf55768b6e42e49d1f8b8) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [a2d6df3](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/a2d6df3c31e039f8ed39130ad45e398dafc83594) Update eslint module (#84) (Sabina Talipova) - -- silverstripe/realme (5.0.0 -> 5.2.0-rc1) - - 2023-07-20 [e653cff](https://github.com/silverstripe/silverstripe-realme/commit/e653cff5c211d65b4dfc9ec761cacee33a5159a7) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [cc05ad3](https://github.com/silverstripe/silverstripe-realme/commit/cc05ad3ef7993cef0e33e12179d5be8e6ceb5c38) Update eslint module (#115) (Sabina Talipova) - -- silverstripe/webauthn-authenticator (5.0.0 -> 5.1.0-rc1) - - 2023-08-23 [6f29cd1](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/6f29cd1556f8da7e39cd1c929efb7a5ae419d90a) Update JS dependencies (#155) (GitHub-actions[bot]) - - 2023-07-18 [9750907](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/97509077b94197f36ef46993cf322cd865602fd1) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [781acec](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/781acec34ed58ab3cc4f76274659b067806e9dfc) Update eslint module (#147) (Sabina Talipova) - - 2023-07-10 [a1d1476](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/a1d1476df912a3365cde742bf40590017553c2f5) Bump tough-cookie from 4.1.2 to 4.1.3 (dependabot[bot]) - -- silverstripe/subsites (3.0.0 -> 3.1.0-rc1) - - 2023-07-20 [7232bcf](https://github.com/silverstripe/silverstripe-subsites/commit/7232bcff9e2a19f71cd4b43b46fafdbcc26a2c33) Bump word-wrap from 1.2.3 to 1.2.4 (dependabot[bot]) - - 2023-07-11 [1d1f265](https://github.com/silverstripe/silverstripe-subsites/commit/1d1f2658224b5b4dea04ec5b8706ffc41771b10d) Update eslint module (#530) (Sabina Talipova) - -- cwp/agency-extensions (3.0.0 -> 3.1.0-rc1) - - 2023-08-30 [1ee158f](https://github.com/silverstripe/cwp-agencyextensions/commit/1ee158f7a5eaa81a22b15d2d62c06b757e2e0169) Update JS dependencies (#103) (GitHub-actions[bot]) - - 2023-07-11 [4631ce7](https://github.com/silverstripe/cwp-agencyextensions/commit/4631ce7fde98800946dd3166fae2dd1cd5af3bda) Update eslint module (#98) (Sabina Talipova) - -### Documentation - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-06-21 [e9358c88a](https://github.com/silverstripe/silverstripe-framework/commit/e9358c88af35492c4af06386198ddcee5c8c1182) Update eagerLoad() docblock (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-rc1) - - 2023-02-14 [c0e4994](https://github.com/silverstripe/silverstripe-elemental/commit/c0e49940e5cccdf55f6fa446b3e5cd2083e2cadd) Update documentation for CMS 5 version of elemental (#1008) (Guy Sartorelli) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-rc1) - - 2023-09-12 [878fd56b](https://github.com/silverstripe/developer-docs/commit/878fd56bbf6aee9e8a29262da2252a08cdcbc8d1) Add missing information to 5.1.0 changelog (#346) (Guy Sartorelli) - - 2023-09-04 [e1c0825c](https://github.com/silverstripe/developer-docs/commit/e1c0825c06c29c201e1421a5460f07915e185dd8) Add dynamodb (Steve Boyd) - - 2023-09-04 [65ffecfc](https://github.com/silverstripe/developer-docs/commit/65ffecfc7d9d1e0fdcd8f7ee19b7eb5117eedef2) Add dynamodb (Steve Boyd) - - 2023-08-29 [b45605ee](https://github.com/silverstripe/developer-docs/commit/b45605ee80cee3fbaac3d1f19e24cb60a678a802) Document changes from silverstripe/silverstripe-framework#10925 (#335) (Guy Sartorelli) - - 2023-08-28 [e947f451](https://github.com/silverstripe/developer-docs/commit/e947f45131b4807ea0a6dd7bfcb1da0462e16627) Close hint block (#316) (Guy Sartorelli) - - 2023-08-28 [f590481b](https://github.com/silverstripe/developer-docs/commit/f590481b59719f15a933b081571fa7a93810cc20) Performance improvements for changelog (Steve Boyd) - - 2023-08-23 [a0d6a9a5](https://github.com/silverstripe/developer-docs/commit/a0d6a9a5fe6cff043be9b6c3cc6dbdd3fa448131) Correct hyperlink (Nate Devereux) - - 2023-08-22 [9797fc17](https://github.com/silverstripe/developer-docs/commit/9797fc171de50d3ed3c6eb9b75d0a321a8ac9e75) Staticpublishqueue changelog entry (Steve Boyd) - - 2023-08-17 [5b9afdd4](https://github.com/silverstripe/developer-docs/commit/5b9afdd4dc3c5c2b8bedda2d12c9fb6a5547c461) Document maximumLimit in GraphQL schema (#329) (Guy Sartorelli) - - 2023-08-15 [0161d551](https://github.com/silverstripe/developer-docs/commit/0161d551b2c9db2c4d6bee9f61fba8909dc8a559) Add note about limiting session garbage collection (#328) (Guy Sartorelli) - - 2023-08-15 [6c50a46b](https://github.com/silverstripe/developer-docs/commit/6c50a46b43ea07977b87e7932b3ac08ba142e962) Add session-manager documentation (Steve Boyd) - - 2023-08-14 [43b6b282](https://github.com/silverstripe/developer-docs/commit/43b6b2828b418be83175bb482c586344bb56adda) Changelog session manager anonymize IP addresses (Steve Boyd) - - 2023-08-14 [ef31438e](https://github.com/silverstripe/developer-docs/commit/ef31438ef571564554ad9a64042bfdaecab8d06b) Document FieldsValidator (#319) (Guy Sartorelli) - - 2023-08-11 [6f0f2e53](https://github.com/silverstripe/developer-docs/commit/6f0f2e53a9ff6f7e8244011b28628c825b62914f) Document fixed issue with non-db summary_fields (Guy Sartorelli) - - 2023-08-11 [a7744574](https://github.com/silverstripe/developer-docs/commit/a7744574f4ff0e7a6a6f7df9147f9135a3fe5b06) Add note about FieldsValidator to 5.1 changelog (Guy Sartorelli) - - 2023-08-08 [916cb8ec](https://github.com/silverstripe/developer-docs/commit/916cb8ec3ca3fa2f760276eff4c0ccae946b7f1e) Update namespace for use_placeholders_for_integer_ids (Steve Boyd) - - 2023-08-07 [e2fc0056](https://github.com/silverstripe/developer-docs/commit/e2fc0056fb5143d6a54edaf80114256073c9c579) Use correct class for keep_archived_assets config (Steve Boyd) - - 2023-08-03 [89c801eb](https://github.com/silverstripe/developer-docs/commit/89c801ebf20afc5ff678c61803fcdd40c608b40e) Document new EagerLoadedDataList (#305) (Guy Sartorelli) - - 2023-07-31 [b6e54b10](https://github.com/silverstripe/developer-docs/commit/b6e54b10756ab02684e913bd75d925867e0195cc) Add severity rating for CVSS score of 0 (#306) (Guy Sartorelli) - - 2023-07-31 [0a187eae](https://github.com/silverstripe/developer-docs/commit/0a187eae0ab33b460c538d7b2a90698796f22b70) Warnings about searchable_fields content (Sabina Talipova) - - 2023-07-25 [2995e23a](https://github.com/silverstripe/developer-docs/commit/2995e23ac1ca2f648ade58b60b92fe30ad962879) SQL placeholders (Steve Boyd) - - 2023-07-11 [68b1be25](https://github.com/silverstripe/developer-docs/commit/68b1be25f9d7c71935c6bfd50f10a2c6907bedad) Changelog for FileBlock::getSummaryThumbnail (Sabina Talipova) - - 2023-07-06 [32ddcf4a](https://github.com/silverstripe/developer-docs/commit/32ddcf4a8db447a7a77075a0808ce70b02f4a296) Document new "Only these users" permission (#298) (Guy Sartorelli) - - 2023-07-05 [051908d4](https://github.com/silverstripe/developer-docs/commit/051908d4f938d5b5037990583bc836882a3173f2) Changelog for SearchContext::getQuery() parameter (#294) (Sabina Talipova) - - 2023-07-05 [657246c4](https://github.com/silverstripe/developer-docs/commit/657246c472ee0bc9f39561dd2443db526bd0cfed) CMS 4 Supported modules (Steve Boyd) - - 2023-07-04 [7f5ca7ce](https://github.com/silverstripe/developer-docs/commit/7f5ca7ce9bf1bc203531ad33b5505a0a5bfddf81) Call out ListboxField react component (#295) (Guy Sartorelli) - - 2023-07-04 [24a3893c](https://github.com/silverstripe/developer-docs/commit/24a3893c1ff309c27c1a4eeafb87f53194724b7a) Changelog CMS search with elemental (Steve Boyd) - - 2023-07-03 [5ffb99ef](https://github.com/silverstripe/developer-docs/commit/5ffb99ef7a48b115b0fe4bcd52be871f8c472d9b) Update i18n (Antony Thorpe) - - 2023-06-27 [cd758f5d](https://github.com/silverstripe/developer-docs/commit/cd758f5d2af16ba31a5ada78a35144c2871912c0) Document storing gql schema in cache dir (#257) (Guy Sartorelli) - - 2023-06-25 [380b81ae](https://github.com/silverstripe/developer-docs/commit/380b81ae4289b1f49b04447ab9961f320c2316fb) Correct bad enum syntax (Maxime Rainville) - - 2023-06-22 [ef4d8a57](https://github.com/silverstripe/developer-docs/commit/ef4d8a575fe4924388346258ddcef8c5d4e37eeb) Fix typo in Introduction.md (Maxime Rainville) - - 2023-06-16 [8fa5dd06](https://github.com/silverstripe/developer-docs/commit/8fa5dd0614e11d803e65156db0fa80b1bae07fd0) Update undefinedoffset-sortablegridfield info (Sabina Talipova) - - 2023-06-14 [362f86dd](https://github.com/silverstripe/developer-docs/commit/362f86dd6887647a7e876c0c6b6786a266a596dc) Quote all YAML service definitions (#285) (Guy Sartorelli) - - 2023-06-13 [08f04c86](https://github.com/silverstripe/developer-docs/commit/08f04c86ea6f4097027e6bb1ab7fffcaaad3c5fb) Review extending docs for truthfulness (#273) (Guy Sartorelli) - - 2023-06-12 [9d5b988a](https://github.com/silverstripe/developer-docs/commit/9d5b988a14d1cf46b6cec728290941202265e5b7) silverstripe/widgets removed (Steve Boyd) - - 2023-06-12 [bcd9d7fa](https://github.com/silverstripe/developer-docs/commit/bcd9d7fae8cf9f15f14c7e465af5fa4ad96aa025) cascade_duplicates property in SiteTree class (#282) (Sabina Talipova) - - 2023-06-08 [51b63278](https://github.com/silverstripe/developer-docs/commit/51b632788f1eb2c25c1b9cba2e8f103a9c5d58bf) Eager loading (Steve Boyd) - - 2023-06-08 [b450bad0](https://github.com/silverstripe/developer-docs/commit/b450bad0cdda3638bfd17c55eaebe318ca05d22f) BuildTask is_enabled config (Steve Boyd) - - 2023-06-07 [ffbd5979](https://github.com/silverstripe/developer-docs/commit/ffbd59793b3e9003e0a8076118c89c3dd7b2ab20) Use HTMLValue (Steve Boyd) - - 2023-05-22 [08d0828d](https://github.com/silverstripe/developer-docs/commit/08d0828de3d552ea0a52aed15fba2f24238bebd9) Document the requirement to install Composer 2 (#275) (Guy Sartorelli) - - 2023-05-22 [de1a71f5](https://github.com/silverstripe/developer-docs/commit/de1a71f555e6dabd655914faa8b9187940511644) Add note in 5.1 changelog about DB SSL (#272) (Guy Sartorelli) - - 2023-05-22 [3068943e](https://github.com/silverstripe/developer-docs/commit/3068943e3516edd44a4702ac844d6eb0177de9cc) Document using SSL for db connections (#271) (Guy Sartorelli) - - 2023-05-18 [1c6adfca](https://github.com/silverstripe/developer-docs/commit/1c6adfcaca26062c574006d09e5bae6882cb9380) Update configuration docs (#268) (Guy Sartorelli) - - 2023-05-17 [588ba477](https://github.com/silverstripe/developer-docs/commit/588ba47745eb5de44726f39aa8441a9d1434ee0a) fix partial caching config example (Jono Menz) - - 2023-05-16 [f9a19089](https://github.com/silverstripe/developer-docs/commit/f9a19089f6b30e08789ff930a9ae15cd3f1b469e) Add additional context to CMS 5 changelog (#267) (Guy Sartorelli) - - 2023-05-16 [7d296b4c](https://github.com/silverstripe/developer-docs/commit/7d296b4c40ee7e371af55c506c259588a5c7e94c) filterAny() many-many aggregate conjunction (Steve Boyd) - - 2023-05-14 [c5e02441](https://github.com/silverstripe/developer-docs/commit/c5e0244193a3d049ad05bbecc9bf5dec22a3d507) Review forms section (#254) (Guy Sartorelli) - - 2023-05-08 [14b5ece1](https://github.com/silverstripe/developer-docs/commit/14b5ece1f1aef862c1427aa234f0ff63e35e88dd) Document changes to i18nTextCollector (Guy Sartorelli) - - 2023-05-04 [0c57c585](https://github.com/silverstripe/developer-docs/commit/0c57c5858ea9642c32d41b8d5a93f841289a77d7) Updated recommendation for depreceted class Silverstripe\View\Embed\EmbedResource (Sabina Talipova) - - 2023-05-04 [a1b5b8ce](https://github.com/silverstripe/developer-docs/commit/a1b5b8ce3e687791f0290ab47537fa19ad0256c5) Remove links for unsupported modules (Sabina Talipova) - - 2023-05-04 [a68fb70c](https://github.com/silverstripe/developer-docs/commit/a68fb70c7117c50daf77ce2bf71c0b2b3963bd01) Add note regarding the split of the activedirectory module into the saml and ldap modules. (Matt Peel) - - 2023-05-04 [58968964](https://github.com/silverstripe/developer-docs/commit/58968964df1da0d25eb0599c127020279aafa26f) Fix anchor link to full commits list (Guy Sartorelli) - - 2023-04-19 [1ddb6dfb](https://github.com/silverstripe/developer-docs/commit/1ddb6dfba51aba54537db64d3a6439c798699267) remove core committer (Stevie Mayhew) - - 2023-04-10 [27d4ab93](https://github.com/silverstripe/developer-docs/commit/27d4ab93620eecf440bf83231bf09701e8a6e771) Document the changes in silverstripe/silverstripe-framework#10735 (Guy Sartorelli) - - 2023-04-03 [fda0ccbd](https://github.com/silverstripe/developer-docs/commit/fda0ccbd73f9fd12dc1fff7fb937155074d3ae53) Add additional context about excluding models from db checks (Guy Sartorelli) - - 2023-04-03 [cb7f3756](https://github.com/silverstripe/developer-docs/commit/cb7f37567a1eb7eb16bbc0f925e272af01daf542) Add section on ORM performance (#201) (Guy Sartorelli) - - 2023-03-13 [e6764a37](https://github.com/silverstripe/developer-docs/commit/e6764a373ec8ea8f328e6af2b99b4aaf6a180090) Fix minor typos to Major release policy (Maxime Rainville) - - 2023-03-08 [fad702f3](https://github.com/silverstripe/developer-docs/commit/fad702f3df74be687c2535edf3c1bd13379f3b15) Clarify when we will consider changing a module name or namespace (Maxime Rainville) - -### Other changes - -- silverstripe/installer (5.0.0 -> 5.1.0-rc1) - - 2023-06-04 [d371ae7](https://github.com/silverstripe/silverstripe-installer/commit/d371ae7dc3cff1f1530e6db8a574ab4f26bbd077) Fixed link to V5 "Contributing Code" Docs (minimalic) - -- silverstripe/assets (2.0.0 -> 2.1.0-rc1) - - 2023-08-10 [418906d](https://github.com/silverstripe/silverstripe-assets/commit/418906dc504fea7863eb151b52e0060e329e38f5) use dbObject (Thomas Portelange) - - 2023-08-03 [4bf41f3](https://github.com/silverstripe/silverstripe-assets/commit/4bf41f3d2420784afde0a732e4c5c341254196c4) Update FileLinkTracking.PHP (Thomas Portelange) - - 2023-06-25 [43aecdb](https://github.com/silverstripe/silverstripe-assets/commit/43aecdb90951e35cc512c6a4520f204d3f85a998) use strong return type (Thomas Portelange) - - 2023-06-23 [41dc93c](https://github.com/silverstripe/silverstripe-assets/commit/41dc93cf47d63ff7ec4ec8df97a7f3a74a42f561) make it private (Thomas Portelange) - - 2023-06-22 [4eb92f4](https://github.com/silverstripe/silverstripe-assets/commit/4eb92f48cc6277b942b47edd32d8b9dbdb7a968b) Don't run onBefore if no assets (Thomas Portelange) - - 2023-06-22 [a7d5386](https://github.com/silverstripe/silverstripe-assets/commit/a7d538688032f74cbada50f2bce0fc044a359901) Don't make query if not needed (Thomas Portelange) - -- silverstripe/config (2.0.0 -> 2.1.0-rc1) - - 2023-07-18 [44769a6](https://github.com/silverstripe/silverstripe-config/commit/44769a61bdfc0b598a02297bbd87fd19666cb508) CachedConfigCollection is written to disk on every page load (#89) (Thomas Portelange) - -- silverstripe/framework (5.0.0 -> 5.1.0-rc1) - - 2023-09-11 [17733aa84](https://github.com/silverstripe/silverstripe-framework/commit/17733aa84ad4852bd5a5e8b157790d0993485d9c) added missing returns (fluent setter) (Rastislav Brandobur) - - 2023-08-30 [7ae7e9ff4](https://github.com/silverstripe/silverstripe-framework/commit/7ae7e9ff472b5fa9789dea49ebccbc1a829ba419) added maxLength validation tests (Rastislav Brandobur) - - 2023-08-28 [d6c39e7d3](https://github.com/silverstripe/silverstripe-framework/commit/d6c39e7d367c290df4cc5d838e4b1740f11e3d2d) added missing maxLength validation (Rastislav Brandobur) - - 2023-08-25 [88c70b323](https://github.com/silverstripe/silverstripe-framework/commit/88c70b323475cd7879e312637f185ef286e6c589) Fixed deprecation notices in PHP 8.2 by using the AllowDynamicProperties (Niklas Forsdahl) - - 2023-08-15 [6c2b5bdbe](https://github.com/silverstripe/silverstripe-framework/commit/6c2b5bdbe174169e199c7b2d593f7b5f4697035c) Update src/Security/Member.PHP (Sunny Side Up) - - 2023-08-15 [93d03f71e](https://github.com/silverstripe/silverstripe-framework/commit/93d03f71ef8700c15d424628057d72e357c06233) MINOR: set a default password encryption for a member, if no password encryption is set. (Sunny Side Up) - - 2023-08-14 [637859a1f](https://github.com/silverstripe/silverstripe-framework/commit/637859a1f45d50978b93e12bc90f1a21079a7678) Update tests/PHP/ORM/DBCompositeTest.PHP (Thomas Portelange) - - 2023-08-11 [0d4231abb](https://github.com/silverstripe/silverstripe-framework/commit/0d4231abb8a35043d44058afdf1a2e3df1147240) comment test for ss4 (Thomas Portelange) - - 2023-08-10 [d621d00ee](https://github.com/silverstripe/silverstripe-framework/commit/d621d00eea25cacc930084f75e9b6dc837e3a9d2) DBComposite::writeToManipulation() is never called (Thomas) - - 2023-08-02 [0e839e12c](https://github.com/silverstripe/silverstripe-framework/commit/0e839e12cc4af42801b5290fc8704a5ba3fc61be) Update src/Core/Manifest/VersionProvider.PHP (Thomas Portelange) - - 2023-08-02 [b9f63001c](https://github.com/silverstripe/silverstripe-framework/commit/b9f63001c5c6a63d89461d448fe8753f88326bdd) Update src/Core/Manifest/VersionProvider.PHP (Thomas Portelange) - - 2023-08-01 [c0cc129f1](https://github.com/silverstripe/silverstripe-framework/commit/c0cc129f1249ee979c2052700b4d818c30c94965) remove sprintf (Thomas Portelange) - - 2023-08-01 [d3c2fa897](https://github.com/silverstripe/silverstripe-framework/commit/d3c2fa897c06b4c8379b514a7773c74e1c3ee4ea) nicer key (Thomas Portelange) - - 2023-06-28 [a019b34fa](https://github.com/silverstripe/silverstripe-framework/commit/a019b34facc35066fce3355118a2dcb67fcf01a0) csfix (Thomas Portelange) - - 2023-06-28 [a96918043](https://github.com/silverstripe/silverstripe-framework/commit/a96918043312ab4575e79c62fbbfe8c0f3de411c) add anonymize (Thomas Portelange) - - 2023-06-23 [9391e696b](https://github.com/silverstripe/silverstripe-framework/commit/9391e696bbb4e12f58c52f3335b15b0e157cc2c1) use Member::class (Thomas Portelange) - - 2023-06-22 [2e73b5eec](https://github.com/silverstripe/silverstripe-framework/commit/2e73b5eeca692f015d63539322dccf62e25cf72a) Use cached query (Thomas Portelange) - - 2023-06-14 [b6a3e3a95](https://github.com/silverstripe/silverstripe-framework/commit/b6a3e3a9519e0adc52fb1bd75e1f4974a554c011) added an additional filter to remove empty array items (#10803) (josephlewisnz) - - 2023-06-08 [30cd4047d](https://github.com/silverstripe/silverstripe-framework/commit/30cd4047df1ae9fb5801ace59fe5732b8c71531e) Adjust isEnabled method (#10801) (kevingroeger) - - 2023-05-24 [e98f0d45a](https://github.com/silverstripe/silverstripe-framework/commit/e98f0d45af1f3684748a1a49d47d0f91f2bc0225) Use ::create instead of new in GridFieldDetailForm_ItemRequest (#10791) (Bernard Hamlin) - - 2023-05-15 [0ab36f6ae](https://github.com/silverstripe/silverstripe-framework/commit/0ab36f6ae18262b5c298a7f0d501aa5d6dac4a1c) UPD Add support new TinyMC cs_CZ.js (Sabina Talipova) - - 2023-04-27 [9660652fb](https://github.com/silverstripe/silverstripe-framework/commit/9660652fbca17870ad2bbd52aec96aff7d8d4a44) MINOR: faster checking if record exists (Nicolaas / Sunny Side Up) - - 2023-04-12 [1dbb2bc5b](https://github.com/silverstripe/silverstripe-framework/commit/1dbb2bc5badbb15a79aff7d1f2e1126086ee9fe6) remove manually added config values in test (Florian Thoma) - - 2023-04-10 [0d9724c70](https://github.com/silverstripe/silverstripe-framework/commit/0d9724c70804255ca6ee8ba7bc7941edf2f7e0de) Update tests/PHP/Forms/TreeDropdownFieldTest.PHP (elliot sawyer) - - 2023-04-05 [41c4b4ee0](https://github.com/silverstripe/silverstripe-framework/commit/41c4b4ee020011e09ff44edd7e90ca1e38176490) make Group use tri-state can* extension hooks, fixes #9580 (Florian Thoma) - - 2023-02-13 [04266f77c](https://github.com/silverstripe/silverstripe-framework/commit/04266f77ccae635fc8c3367afee2e64f041f3e42) Update i18nTextCollector to collect strings also from themes (Florian Thoma) - - 2023-02-13 [c0722308a](https://github.com/silverstripe/silverstripe-framework/commit/c0722308af48a9f1ee5d2d549c22640c55c9e5bc) add loading of automatic ORM field labels to i18nTextCollector (Florian Thoma) - -- silverstripe/admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-25 [0b59826b](https://github.com/silverstripe/silverstripe-admin/commit/0b59826bcd61522a85676e2bddae9f0eadd28199) Fixed deprecation notices in PHP 8.2 by using the AllowDynamicProperties (Niklas Forsdahl) - - 2023-08-17 [f2732691](https://github.com/silverstripe/silverstripe-admin/commit/f273269136eabaa885d34ec65107b3b6ef0f9571) Update util.js (Thomas Portelange) - - 2023-08-17 [1877b387](https://github.com/silverstripe/silverstripe-admin/commit/1877b3879ab8809945b017f9bb16c70b2aa9c309) Update collapse.js (Thomas Portelange) - - 2023-08-17 [4c285f3e](https://github.com/silverstripe/silverstripe-admin/commit/4c285f3e3fddbe070b47674f484ac68a0923e270) remove sourcemap (Thomas Portelange) - - 2023-08-14 [6ef5b9bc](https://github.com/silverstripe/silverstripe-admin/commit/6ef5b9bcbc270c6afe5326e4c4e80b5c1cdae0c5) Make security admin more easily extensible (Thomas Portelange) - - 2023-08-11 [a77f54b4](https://github.com/silverstripe/silverstripe-admin/commit/a77f54b409df4af11472d37e275a9b42ce705b5f) EHN Implement the new logo (Maxime Rainville) - -- silverstripe/asset-admin (2.0.0 -> 2.1.0-rc1) - - 2023-08-08 [e0d5fca3](https://github.com/silverstripe/silverstripe-asset-admin/commit/e0d5fca37dee5ffc4d730d35f161b46581e8a836) Allows display of validation messages on assets (Bernie Hamlin) - - 2023-05-12 [5eaff19d](https://github.com/silverstripe/silverstripe-asset-admin/commit/5eaff19db8856f99717bc6b112ba0434d1119431) Adds Folder ID for TinyMCE_sslink-file to allow us to target a specific folder when user clicks on TinyMCE link to file: (Garry Yeatman) - -- silverstripe/cms (5.0.0 -> 5.1.0-rc1) - - 2023-08-18 [3295dd50](https://github.com/silverstripe/silverstripe-cms/commit/3295dd5062cfe4d78ba6242f9a00ea55fa258c23) Don't make query if not needed (#2863) (Thomas Portelange) - - 2023-07-28 [c455a828](https://github.com/silverstripe/silverstripe-cms/commit/c455a8288f1a2cf7732f21e5bdaf0e015e81598a) drop duplicated call (Thomas Portelange) - -- silverstripe/graphql (5.0.0 -> 5.1.0-rc1) - - 2023-08-14 [562c251](https://github.com/silverstripe/silverstripe-graphql/commit/562c251b7819c616c40c412dfc7d396ab424b491) Revert "NEW Enable storing GraphQL schema in `silverstripe-cache/`" (Steve Boyd) - - 2023-07-24 [ac6fdc2](https://github.com/silverstripe/silverstripe-graphql/commit/ac6fdc2ba96dbd78675f52dd8d2d4950d1d75beb) Run dev/build add-on only once (Dylan Wagstaff) - - 2023-07-07 [47811b8](https://github.com/silverstripe/silverstripe-graphql/commit/47811b88cd1ae7e39cf13ed698223f6a13b4d047) test(SortPlugin): add integration test for multi-sort (Chris Joe) - - 2023-02-09 [db1d6d3](https://github.com/silverstripe/silverstripe-graphql/commit/db1d6d37cbde903c65c9a350075bb64ea18c4f3b) Support maximumLimit in pagination (Nils Hellberg) - -- silverstripe/session-manager (2.0.0 -> 2.1.0-rc1) - - 2023-08-14 [9bcd9e7](https://github.com/silverstripe/silverstripe-session-manager/commit/9bcd9e771338ade1065117a2af9b99a33d922090) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [78c27ed](https://github.com/silverstripe/silverstripe-session-manager/commit/78c27ed48f14b293defbd3a9f8900cb22066ba14) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [8f88faf](https://github.com/silverstripe/silverstripe-session-manager/commit/8f88faf44534457d17e3d00309a50057ed289f46) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [9d1fd25](https://github.com/silverstripe/silverstripe-session-manager/commit/9d1fd2598de8f3c7bf9a8295318f880ebae39d7a) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [6612efc](https://github.com/silverstripe/silverstripe-session-manager/commit/6612efc56a3b6047bc7652ee04b26e888736311c) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [d6d1af6](https://github.com/silverstripe/silverstripe-session-manager/commit/d6d1af682c7f7024b00875341ed15029fb923701) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [43cb4ee](https://github.com/silverstripe/silverstripe-session-manager/commit/43cb4ee8a36edd6c430d54dfa6e100da2f525c9a) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [a4faf82](https://github.com/silverstripe/silverstripe-session-manager/commit/a4faf82c1552ddb4191948f6a4f9e41b71e1da7e) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [e84f1f6](https://github.com/silverstripe/silverstripe-session-manager/commit/e84f1f62fc099cdf7bdf544a09f1c09ed30f4c50) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [83986d6](https://github.com/silverstripe/silverstripe-session-manager/commit/83986d6c30a335cb55ade9f78706acee18a45a00) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-11 [b2d6021](https://github.com/silverstripe/silverstripe-session-manager/commit/b2d602102d2a8cc5be2bd83eb8d6765b58dcdf02) Update src/Services/GarbageCollectionService.PHP (Thomas Portelange) - - 2023-08-10 [be50af6](https://github.com/silverstripe/silverstripe-session-manager/commit/be50af667065123577853b23d96f5c67f9284126) Garbage collector do not work on large tables (Thomas) - - 2023-06-28 [30389d1](https://github.com/silverstripe/silverstripe-session-manager/commit/30389d1a01d391253a56c2f2e6beb448e7bd24bd) wording update (Thomas Portelange) - - 2023-06-28 [348fe08](https://github.com/silverstripe/silverstripe-session-manager/commit/348fe08e172d9bada2517032cf1c44c3a6f48bdd) allow mock time in garbage service (Thomas Portelange) - - 2023-06-28 [cef0628](https://github.com/silverstripe/silverstripe-session-manager/commit/cef06282c4edbaa71064dc3b83b0347e0a61ca30) actually show that mock time does something (Thomas Portelange) - -- silverstripe/tagfield (3.0.0 -> 3.1.0-rc1) - - 2023-08-18 [92823c7](https://github.com/silverstripe/silverstripe-tagfield/commit/92823c790ac5fb25aebdbb33c438493e7232869c) Adds back onBlur handler (Bernie Hamlin) - -- silverstripe/blog (4.0.0 -> 4.1.0-rc1) - - 2023-08-10 [bcbb40e](https://github.com/silverstripe/silverstripe-blog/commit/bcbb40e08d7f674206fcd2fb5deaf0adea487b33) Replace deprecated sort rand with shuffle (3Dgoo) - - 2023-08-10 [7189427](https://github.com/silverstripe/silverstripe-blog/commit/7189427bf35d78de628ac1b32ba85205e316e601) Replace deprecated sort rand with shuffle (3Dgoo) - -- silverstripe/spamprotection (4.0.0 -> 4.1.0) - - 2023-07-11 [a358621](https://github.com/silverstripe/silverstripe-spamprotection/commit/a3586210e2e0dbd6ed20961923e5d3209b4e2366) Add Cloudflare Turnstile captcha link (Bernard Hamlin) - -- silverstripe/userforms (6.0.0 -> 6.1.0-rc1) - - 2023-06-07 [0dfd299](https://github.com/silverstripe/silverstripe-userforms/commit/0dfd2990dde1cd5ee474d02d248d38b39ec1f582) Use window.ss.config provided adminUrl (#1211) (Michal Kleiner) - - 2023-04-26 [0b61d1a](https://github.com/silverstripe/silverstripe-userforms/commit/0b61d1a3bba0dc7254976cd1da8b35cf15373840) not remove Submissions, use setTitle (Lukas Erni) - - 2023-04-19 [0d7f7ed](https://github.com/silverstripe/silverstripe-userforms/commit/0d7f7ed6d0978b8f663da792318058ffcdfb2981) Submission tab translatable (Lukas Erni) - -- dnadesign/silverstripe-elemental (5.0.0 -> 5.1.0-rc1) - - 2023-05-15 [2c32dc8](https://github.com/silverstripe/silverstripe-elemental/commit/2c32dc8d875b315dc5bc41609305ca11dfd45c10) Focus PR back to original scope (Guy Sartorelli) - -- silverstripe/developer-docs (5.0.0 -> 5.1.0-rc1) - - 2023-09-11 [949791ee](https://github.com/silverstripe/developer-docs/commit/949791ee113444c800b3c00cfea3e8a117479f82) Update en/02_Developer_Guides/05_Extending/01_Extensions.md (Tyler Trout) - - 2023-09-07 [e33ca32d](https://github.com/silverstripe/developer-docs/commit/e33ca32d6e9b76bc273f45ff66e4c2c7aa861093) Updated with database column type override info (Tyler Trout) - - 2023-09-01 [bc33bc89](https://github.com/silverstripe/developer-docs/commit/bc33bc890e65e38bea5d60de8883f2a4ba757361) Correct Table of Contents linking (Nate Devereux) - - 2023-08-14 [566fac25](https://github.com/silverstripe/developer-docs/commit/566fac25c0e031f39bba5a97fff6d1cd172ef9d0) Revert "DOC Document storing gql schema in cache dir" (Steve Boyd) - - 2023-07-24 [51ad53f3](https://github.com/silverstripe/developer-docs/commit/51ad53f3332ee7f6f8ffed98bb08e92926eeb38a) parent 1a73935fdecaa1cbeee0ad12986267d5c1e4a62f (Maxime Rainville) - - 2023-07-21 [393f13dd](https://github.com/silverstripe/developer-docs/commit/393f13dd90ddadbb1b8fa3197e1b9a0b85ac9212) Update 02_configuring_your_schema.md (Patrick Côté) - - 2023-06-22 [d61a330e](https://github.com/silverstripe/developer-docs/commit/d61a330e5baccc8940b7fd1b12034cae16bb58e1) Update 00_Introduction.md (Izzudin Anuar) - -- silverstripe/gridfieldqueuedexport (3.0.0 -> 3.1.0-rc1) - - 2023-06-07 [48cf053](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/48cf053f2e345a89b4914c67c099296da8a39d39) Update src/Extensions/UserFormUseQueuedExportExtension.PHP (Luke Fromhold) - -- silverstripe/realme (5.0.0 -> 5.2.0-rc1) - - 2023-04-28 [4dc8654](https://github.com/silverstripe/silverstripe-realme/commit/4dc8654c1875217782870dca514e21ca53a349e1) Replacing all occurances of $backURL with $backUrl in enforeLogin function (LABCAT) - - 2023-04-19 [fe483f4](https://github.com/silverstripe/silverstripe-realme/commit/fe483f409e121605365e82f76d98909bc8c1fcba) Fixing "Undefined variable $backURL" in enforeLogin function (LABCAT) - -- silverstripe/subsites (3.0.0 -> 3.1.0-rc1) - - 2023-08-16 [39de471](https://github.com/silverstripe/silverstripe-subsites/commit/39de47167d9eadab4d2cb89a6a91684037814911) don't trigger permissionFailure when it's not needed (Thomas Portelange) - - 2023-06-21 [a052bfd](https://github.com/silverstripe/silverstripe-subsites/commit/a052bfd5909a70825dbc654dfd16204ea661cb1c) Add extension to correctly support element preview (Michal Kleiner) - -- silverstripe/staticpublishqueue (6.0.0 -> 6.1.0-rc1) - - 2023-08-22 [c651e04](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/c651e045785b816eb99cbf7d72dde8d6bc2c5f19) Match generate and purge actions to CMS behaviours (#168) (Chris Penny) - -- dnadesign/silverstripe-elemental-userforms (4.0.0 -> 4.1.0-rc1) - - 2023-09-05 [2d2a3fd](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/2d2a3fd148d3007ea418fe444081d6f199d2cf38) Adding description ElementForm (LABCAT) - - diff --git a/en/08_Changelogs/rc/5.2.0-rc1.md b/en/08_Changelogs/rc/5.2.0-rc1.md deleted file mode 100644 index f76d4a59e..000000000 --- a/en/08_Changelogs/rc/5.2.0-rc1.md +++ /dev/null @@ -1,1593 +0,0 @@ -# 5.2.0-rc1 - -## Overview - -- [Security considerations](#security-considerations) -- [PHP 8.3 support](#php-83) -- [Official support for `silverstripe/linkfield`](#linkfield) -- [Features and enhancements](#features-and-enhancements) - - [New ORM features](#new-orm-features) - - [`GridField` components now work with arbitrary data](#gridfield-arbitrary-data) - - [`ErrorPage` allowed codes configuration](#errorpage-allowed-codes-configuration) - - [Versioned status badges for elemental](#elemental-badges) - - [Create random passwords for new users](#create-random-passwords-for-new-users) - - [Buttons to select all files and deselect all files](#bulk-action-buttons) - - [Support for validation using `symfony/validator`](#symfony-validator) - - [New searchable dropdown fields](#searchable-dropdown-field) - - [New `UrlField`](#urlfield) - - [Create file variants with different extensions](#file-variants) - - [More nuanced permissions for `/dev/*` routes](#dev-route-permissions) - - [Generic typehints](#generics) - - [New exception in React forms](#react-forms-exception) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -A full list of module versions included in CMS Recipe 5.2.0-rc1 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.1.0-rc1 | -| bringyourownideas/silverstripe-maintenance | 3.1.0-rc1 | -| colymba/gridfield-bulk-editing-tools | 4.0.2 | -| cwp/agency-extensions | 3.2.0-rc1 | -| cwp/starter-theme | 4.1.0-rc1 | -| cwp/watea-theme | 4.1.0-rc1 | -| dnadesign/silverstripe-elemental | 5.2.0-rc1 | -| dnadesign/silverstripe-elemental-userforms | 4.1.1 | -| silverstripe-themes/simple | 3.3.1 | -| silverstripe/admin | 2.2.0-rc1 | -| silverstripe/asset-admin | 2.2.0-rc1 | -| silverstripe/assets | 2.2.0-rc1 | -| silverstripe/auditor | 3.1.0-rc1 | -| silverstripe/blog | 4.2.0-rc1 | -| silverstripe/campaign-admin | 2.2.0-rc1 | -| silverstripe/cms | 5.2.0-rc1 | -| silverstripe/config | 2.1.0 | -| silverstripe/contentreview | 5.2.0-rc1 | -| silverstripe/crontask | 3.0.3 | -| silverstripe/documentconverter | 3.2.0-rc1 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.2.0-rc1 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.1 | -| silverstripe/errorpage | 2.2.0-rc1 | -| silverstripe/externallinks | 3.2.0-rc1 | -| silverstripe/framework | 5.2.0-rc1 | -| silverstripe/graphql | 5.2.0-rc1 | -| silverstripe/gridfieldqueuedexport | 3.2.0-rc1 | -| silverstripe/hybridsessions | 3.0.3 | -| silverstripe/iframe | 3.2.0-rc1 | -| silverstripe/installer | 5.2.0-rc1 | -| silverstripe/ldap | 2.2.0-rc1 | -| silverstripe/linkfield | 4.0.0-rc1 | -| silverstripe/login-forms | 5.2.0-rc1 | -| silverstripe/lumberjack | 3.1.0-rc1 | -| silverstripe/mfa | 5.2.0-rc1 | -| silverstripe/mimevalidator | 3.1.0-rc1 | -| silverstripe/realme | 5.3.0-rc1 | -| silverstripe/recipe-authoring-tools | 2.2.0-rc1 | -| silverstripe/recipe-blog | 2.2.0-rc1 | -| silverstripe/recipe-cms | 5.2.0-rc1 | -| silverstripe/recipe-collaboration | 2.2.0-rc1 | -| silverstripe/recipe-content-blocks | 3.2.0-rc1 | -| silverstripe/recipe-core | 5.2.0-rc1 | -| silverstripe/recipe-form-building | 2.2.0-rc1 | -| silverstripe/recipe-kitchen-sink | 5.2.0-rc1 | -| silverstripe/recipe-plugin | 2.0.0 | -| silverstripe/recipe-reporting-tools | 2.2.0-rc1 | -| silverstripe/recipe-services | 2.2.0-rc1 | -| silverstripe/registry | 3.2.0-rc1 | -| silverstripe/reports | 5.2.0-rc1 | -| silverstripe/restfulserver | 3.0.0 | -| silverstripe/securityreport | 3.1.0-rc1 | -| silverstripe/segment-field | 3.2.0-rc1 | -| silverstripe/session-manager | 2.2.0-rc1 | -| silverstripe/sharedraftcontent | 3.2.0-rc1 | -| silverstripe/siteconfig | 5.2.0-rc1 | -| silverstripe/sitewidecontent-report | 4.2.0-rc1 | -| silverstripe/spamprotection | 4.2.0-rc1 | -| silverstripe/staticpublishqueue | 6.2.0-rc1 | -| silverstripe/subsites | 3.2.0-rc1 | -| silverstripe/tagfield | 3.2.0-rc1 | -| silverstripe/taxonomy | 3.2.0-rc1 | -| silverstripe/textextraction | 4.1.0-rc1 | -| silverstripe/totp-authenticator | 5.2.0-rc1 | -| silverstripe/userforms | 6.2.0-rc1 | -| silverstripe/vendor-plugin | 2.0.2 | -| silverstripe/versioned | 2.2.0-rc1 | -| silverstripe/versioned-admin | 2.2.0-rc1 | -| silverstripe/versionfeed | 3.2.0-rc1 | -| silverstripe/webauthn-authenticator | 5.2.0-rc1 | -| symbiote/silverstripe-advancedworkflow | 6.2.0-rc1 | -| symbiote/silverstripe-gridfieldextensions | 4.0.5 | -| symbiote/silverstripe-multivaluefield | 6.1.0-rc1 | -| symbiote/silverstripe-queuedjobs | 5.1.0-rc1 | -| tractorcow/silverstripe-fluent | 7.1.0-rc1 | - -
- -## Release candidate - -This version of Silverstripe CMS is a **release candidate** for an upcoming stable version, and should not be applied to production websites. We encourage developers to test this version in development / testing environments and [report any issues they encounter via GitHub](/contributing/issues_and_bugs/). - -## Security considerations {#security-considerations} - -Some security fixes that were previously released in the January security release that are mentioned in the [Silverstripe CMS security patches January 2024](https://www.silverstripe.org/blog/silverstripe-cms-security-patches-january-2024/) blog post are listed below. - -Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2023-49783 - No permission checks for editing or deleting records with CSV import form](https://www.silverstripe.org/download/security-releases/cve-2023-49783) Severity: Medium - - If you implement a custom subclass of [`BulkLoader`](api:SilverStripe\Dev\BulkLoader) or you're using a `BulkLoader` directly in your code, there may be additional actions you need to take to secure your project. -- [CVE-2023-48714 - Record titles for restricted records can be viewed if exposed by GridFieldAddExistingAutocompleter](https://www.silverstripe.org/download/security-releases/cve-2023-48714) Severity: Medium -- [CVE-2023-44401 - View permissions are bypassed for paginated lists of ORM data in GraphQL queries](https://www.silverstripe.org/download/security-releases/cve-2023-44401) Severity: Medium - -## PHP 8.3 support {#php-83} - -This release includes official support for PHP 8.3 for all supported modules. There were only very minor code changes required to add this support, so your upgrades should be fairly straightforward in that regard. - -Check out the [PHP 8.3 release announcement](https://www.php.net/releases/8.3/en.php) to see what's new and what's changed. - -## Official support for `silverstripe/linkfield` {#linkfield} - -[`silverstripe/linkfield`](https://github.com/silverstripe/silverstripe-linkfield) 4.0.0-rc1 has been released and will become a commercially supported module. - -That means it will be covered by our [minor release policy](/project_governance/minor_release_policy/), our [major release policy](/project_governance/major_release_policy/), and our [security release process](/contributing/managing_security_issues). - -This module provides a [`Link`](api:SilverStripe\LinkField\Models\Link) model and two new form fields: [`LinkField`](api:SilverStripe\LinkField\Form\LinkField) and [`MultiLinkField`](api:SilverStripe\LinkField\Form\MultiLinkField). The intention of the module is to provide a clear and consistent approach to managing links in the CMS. - -This release of the module includes a bunch of features that were missing from earlier versions including: - -- Support for `has_many` relations -- Versioned support -- Validation -- The ability to declare which link types are allowed per field -- Improved UI including better keyboard navigation. - -> [!NOTE] -> `silverstripe/linkfield` 4.0.0 requires `silverstripe/framework` 5.2.0 or higher due to its reliance on some new API. - -You can install it as soon as you update your project. - -```bash -composer require silverstripe/linkfield -``` - -We're still working on the migration guides and some migration tasks for this module. You may want to keep an eye on the following issues: - -- [Upgrade from `silverstripe/linkfield` v2 or v3](https://github.com/silverstripe/silverstripe-linkfield/issues/228) -- [Migrate from `sheadawson/silverstripe-linkable`](https://github.com/silverstripe/silverstripe-linkfield/issues/230) -- [Migrate from `gorriecoe/silverstripe-link`](https://github.com/silverstripe/silverstripe-linkfield/issues/229) - -Once the above have all been resolved, you can use that documentation and copy the relevant `BuildTask` code into your projects if you need it. These will be included in `silverstripe/linkfield` directly in the next minor release. - -Check out [the linkfield documentation](/optional_features/linkfield/) for more information about this module. - -## Features and enhancements - -### New ORM features {#new-orm-features} - -This release comes jampacked with new ORM features, granting you access to some new abstractions for more powerful and efficient queries. - -#### Manipulating eager loaded relation queries {#eager-loading} - -Filtering or sorting an [`EagerLoadedList`](api:SilverStripe\ORM\EagerLoadedList) (i.e. after the eager loading query has been executed) is done in PHP rather than in the database. That's a lot less powerful and significantly slower than performing those manipulations on `DataList` before executing the query. For example, you can't filter or sort `EagerLoadedList` by fields on relations using dot notation (e.g. `sort('MySubRelation.Title')` won't work). - -To alleviate this problem, we've introduced a new syntax for eager loading relations that lets you directly manipulate the eager loading queries. - -The old syntax is still supported, because it can be used in templates for simple scenarios. - -In a test setup looping through 100 records each with 100 related records (for a total of 10,000 records per test run), the following performance improvements were observed for different types of relations (early manipulations in the database vs manipulating results in PHP): - -- `has_many` - ~581% faster (0.1080s vs 0.7358s) -- `many_many` - ~612% faster (0.1264s vs 0.9002s) -- `many_many` through - ~327% faster (0.2511s vs 1.0719s) - -##### Usage {#eager-loading-usage} - -You can pass an associative array into the [`DataList::eagerLoad()`](api:SilverStripe\ORM\DataList::eagerLoad()) method, with relation chains as the keys and callbacks as the values. The callback accepts a `DataList` argument, and must return a `DataList`. - -```php -use SilverStripe\ORM\DataList; - -$teams = Team::get()->eagerLoad([ - 'Players' => fn (DataList $list) => $list->filter(['Age:GreaterThan' => 18]), -]); -``` - -> [!WARNING] -> It is very important to remember to return the list from your callback function. - -There are a few edge cases to be aware of with this new feature. To learn more, see [eager loading](/developer_guides/model/relations/#eager-loading). - -#### Multi-relational `has_one` relations - -Traditionally, if you wanted to have multiple `has_many` relations for the same class, you would have to include a separate `has_one` relation for *each* `has_many` relation. - -This release includes a new `has_one` syntax to declare that your `has_one` should be allowed to handle multiple reciprocal `has_many` relations. The syntax for that is as follows: - -```php -namespace App\Model; - -use SilverStripe\ORM\DataObject; -use SilverStripe\ORM\DataObjectSchema; - -class MyExample extends DataObject -{ - // ... - - private static array $has_one = [ - 'MyMultiRelationalRelation' => [ - // The class here is the class for the has_one - it must be polymorphic. - 'class' => DataObject::class, - // Setting this to true is what defines this has_one relation as multi-relational - DataObjectSchema::HAS_ONE_MULTI_RELATIONAL => true, - ], - ]; -} -``` - -> [!TIP] -> Multi-relational `has_one` relations *must* be polymorphic. - -Multiple `has_many` relations on a single class can point to the above `has_one` relation using dot notation, and they will be correctly saved and resolved when you get the relation list. - -> [!WARNING] -> This new feature means sometimes the value in the associative `has_one` configuration array will be an array, rather than just a string for the class name. -> If you are relying on fetching this configuration to find the class names of `has_one` relations, consider using -> [`DataObject::hasOne()`](api:SilverStripe\ORM\DataObject::hasOne()) or [`DataObjectSchema::hasOneComponent()`](api:SilverStripe\ORM\DataObjectSchema::hasOneComponent()) instead. - -See [multi-relational `has_one` in the relations docs](/developer_guides/model/relations/#multi-relational-has-one) for more details about this relation type. - -#### `UNION` clause {#orm-union-clause} - -Abstractions for the SQL `UNION` clause have been added to `SQLSelect` and `DataQuery`. - -To add a `UNION` clause to an `SQLSelect`, call the [`SQLSelect::addUnion()`](api:SilverStripe\ORM\Queries\SQLSelect::addUnion()) method and pass in the `SQLSelect` query you want to combine using a union. - -You can leave the second argument blank for a default union (which is functionally equivalent to a distinct union in MySQL) - or you can pass in one of the `SQLSelect::UNION_ALL` or `SQLSelect::UNION_DISTINCT` constants for a `UNION ALL` or `UNION DISTINCT` clause respectively. - -```php -use SilverStripe\ORM\Queries\SQLSelect; - -$baseQuery = SQLSelect::create()->setFrom($tableName)->addWhere(/*...*/); -$anotherQuery = SQLSelect::create()->setFrom($tableName)->addWhere(/*...*/); -$baseQuery->addUnion($anotherQuery, SQLSelect::UNION_DISTINCT); -``` - -To add a `UNION` clause to an `DataQuery`, call the [`DataQuery::union()`](api:SilverStripe\ORM\DataQuery::union()) method and pass in either another `DataQuery` or an `SQLSelect` query you want to combine using a union. The same constants used for `SQLSelect` can be passed in here as well. - -```php -use SilverStripe\ORM\DataQuery; -use SilverStripe\ORM\Queries\SQLSelect; - -$baseQuery = DataQuery::create(MyClass::class)->where(/*...*/); -$anotherQuery = DataQuery::create(MyClass::class)->where(/*...*/); -$baseQuery->union($anotherQuery, SQLSelect::UNION_ALL); -``` - -#### Common table expressions (CTE aka the `WITH` clause) {#orm-with-clause} - -Abstractions for Common Table Expressions (aka the SQL `WITH` clause) have been added to `SQLSelect` and `DataQuery`. - -Common Table Expressions are a powerful tool both for optimising complex queries, and for creating recursive queries. This functionality is abstracted in the [`SQLSelect::addWith()`](api:SilverStripe\ORM\Queries\SQLSelect::addWith()) and [`DataQuery::with()`](api:SilverStripe\ORM\DataQuery::with()) methods. - -Older database servers don't support this functionality, and the core implementation is only valid for MySQL and MariaDB. If you're using this functionality in an open source module or a project that you can't guarantee the type and version of database being used, you should wrap the query in a condition checking if CTEs are supported. You can do that by calling [`DB::get_conn()->supportsCteQueries()`](api:SilverStripe\ORM\Connect\Database::supportsCteQueries()). - -Check out the [SQL queries](/developer_guides/model/sql_select/#cte) and [data model and ORM](/developer_guides/model/data_model_and_orm/#cte) documentation for usage details and examples. - -#### Support for multiple (or no) tables in the `FROM` clause {#orm-from-clause} - -Previously the `SQLConditionalExpression` abstraction couldn't handle multiple table names being passed into its `FROM` clause. This restriction has been removed, so you can now have queries selecting from multiple tables (without needing joins) so long as your database supports it. - -> [!WARNING] -> If you were working around that limitation by adding an explicit comma to subsequent tables in the `FROM` clause for your queries, you'll need to remove the comma. - -You can also now choose to *not* have a `FROM` clause in an `SQLSelect` query, which can be useful for setting up simple queries to be used in unit tests. - -#### Better support for custom column selections in `DataQuery` {#orm-custom-columns} - -When using `DataQuery`, it is possible to use collations and other raw SQL field statements as part of the query's `SELECT` clause. If these have an alias that matches the name of an existing database column, this normally results in an exception being thrown. - -You can choose to allow those conflicts to be resolved via a [`CASE`](https://dev.mysql.com/doc/refman/en/case.html) statement instead of throwing an exception. In that scenario, if the value in the database column is null, the value for your custom field statement will be used. This is enabled per query by passing `true` to the new [`DataQuery::setAllowCollidingFieldStatements()`](api:SilverStripe\ORM\DataQuery::setAllowCollidingFieldStatements()) method. - -```php -$query = new DataQuery(MyClass::class); -$query->selectField('\'my custom title\' AS "Title"'); -$query->setAllowCollidingFieldStatements(true); -``` - -#### Other ORM changes - -- Abstractions for `RIGHT JOIN` have been added with the new [`DataList::rightJoin()`](api:SilverStripe\ORM\DataList::rightJoin()), [`DataQuery::rightJoin()`](api:SilverStripe\ORM\DataQuery::rightJoin()), and [`SQLConditionalExpression::addRightJoin()`](api:SilverStripe\ORM\Queries\SQLConditionalExpression::addRightJoin()) methods. The signature for these methods is identical to their `LEFT JOIN` and `INNER JOIN` counterparts. -- Developers can now opt in to including a comment on all ORM database queries indicating where they were executed from. See [debugging database queries](/developer_guides/debugging/#debugging-database-queries) for details. - -### `GridField` components now work with arbitrary data {#gridfield-arbitrary-data} - -It has historically been difficult to use a `GridField` to display data that isn't represented by `DataObject` records - and even more difficult to edit that data. - -We have removed several barriers to using the `GridField` to display arbitrary data. Descriptive exceptions will be thrown when specific information cannot be dynamically identified, such as which columns to display and what form fields to use when viewing or editing data. Note that these new exceptions don't break backwards compatibility. Any scenario that will throw an exception now would have already done so - but the old exception wouldn't have had enough information to quickly understand what changes are needed to get a functioning `GridField`. - -This change applies to all classes in `silverstripe/framework` which implement `GridFieldComponent`, except for [`GridFieldAddExistingAutocompleter`](api:SilverStripe\Forms\GridField\GridFieldAddExistingAutocompleter) and [`GridFieldLevelup`](api:SilverStripe\Forms\GridField\GridFieldLevelup) which both explicitly require the model class for the associated `GridField` to be a subclass of `DataObject`. - -This new capability can be very useful for integrating with third-party services, as it allows you to view and edit data from a web API without needing to synchronise that data with your database. - -See [using `GridField` with arbitrary data](/developer_guides/forms/using_gridfield_with_arbitrary_data/) for more information. - -### `ErrorPage` allowed codes configuration - -By default, all available error codes are present in the "Error code" dropdown in the CMS. This can be overwhelming and there are a few (looking at you, [418](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/418)) that can -be confusing. To that end, you can now limit the codes in the dropdown with the [`ErrorPage.allowed_error_codes`](api:SilverStripe\ErrorPage\ErrorPage->allowed_error_codes) configuration array like so: - -```yml -SilverStripe\ErrorPage\ErrorPage: - allowed_error_codes: - - 400 - - 403 - - 404 - - 500 -``` - -Alongside this change, we've also added some more HTTP status codes to the list of available error codes. See the source code for [`ErrorPage::getCodes()`](api:SilverStripe\ErrorPage\ErrorPage::getCodes()) for the full list. - -### Versioned status badges for elemental {#elemental-badges} - -Elemental content blocks now feature versioned status badges which adds a textual indicator of whether the block is in draft or a modified state. This textual label is in addition to the dot icon indicator that was already there. The new label is only provided if the [`Versioned`](api:SilverStripe\Versioned\Versioned) extension is used for elemental blocks, which it is by default. - -![examples of the versioned labels](../../_images/changelogs/5.2.0/elemental-badge.png) - -To improve consistency with the rest of the CMS interface, the blue dot icon (which previously indicated an unsaved state) has been removed. - -### Create random passwords for new users - -If a new user is created in the security section of the CMS with an empty password, a strong random password will now be automatically assigned to the user which will not be visible to the person creating the user. The user will need to click the "I've forgotten my password" link in order to receive a password reset email so they can choose a new password. - -This is a behavioural change from the change introduced in Silverstripe CMS 5.1.0 where blank passwords were disallowed when creating a new user due to a security concern. The change in 5.1.0 meant the administrator setting up the user could know what the user's password was until the user changed it. - -This only applies to users created through the security section of the CMS. Users created programatically with an empty password will not have a random password automatically assigned to them. This is the current behaviour and is often used for non-production purposes such as unit-testing. - -### Buttons to select all files and deselect all files {#bulk-action-buttons} - -The files section of the CMS now has buttons to select and deselect all files and folders currently on the screen, which is useful when you want to perform bulk operations. These buttons show at the bottom of the screen in the bulk actions toolbar. The deselect all button also shows the number of currently selected items. As these buttons are on the bulk actions toolbar they are only visible if at least one item has been selected. - -![select all functionality in the CMS](../../_images/asset-admin-select-all.png) - -### Support for validation using `symfony/validator` {#symfony-validator} - -We've added a new [`ConstraintValidator`](api:SilverStripe\Core\Validation\ConstraintValidator) class which provides an abstraction around [`symfony/validator`](https://symfony.com/doc/current/components/validator.html), so you can easily validate values against symfony's validation constraints and get a [`ValidationResult`](api:SilverStripe\ORM\ValidationResult) object with the result. - -```php -use SilverStripe\Core\Validation\ConstraintValidator; - -/** - * @var \Symfony\Component\Validator\Constraint $constraint - * @var \SilverStripe\ORM\ValidationResult $result - */ -$result = ConstraintValidator::validate($valueToValidate, $constraint); -``` - -For example, to test if a URL is valid: - -```php -use SilverStripe\Core\Validation\ConstraintValidator; -use Symfony\Component\Validator\Constraints\Url; - -$isValid = ConstraintValidator::validate($url, new Url())->isValid(); -``` - -You can use most of the constraints listed in Symfony's [supported constraints](https://symfony.com/doc/current/reference/constraints.html) documentation, though note that some of them require additional symfony dependencies. - -We explicitly don't support validation using constraints that rely on `symfony/doctrine`. - -### New `HasOneRelationFieldInterface` for better results with `RequiredFields` - -We've added a new interface [`HasOneRelationFieldInterface`](api:SilverStripe\Forms\HasOneRelationFieldInterface) which is used by the [`RequiredFields`](api:SilverStripe\Forms\RequiredFields) form validator to identify [`FormField`](api:SilverStripe\Forms\FormField) classes that represent a `has_one` relation. This allows it to more accurately identify when those fields are missing a user-entered value. - -If you have a custom `FormField` subclass that is exclusively used to represent a `has_one` relation, you may want to implement this new interface. - -### New searchable dropdown fields {#searchable-dropdown-field} - -We've added a pair of new dropdown form fields which are particularly useful for dropdowns with a large number of options. - -- [`SearchableDropdownField`](api:SilverStripe\Forms\SearchableDropdownField) is similar to [`DropdownField`](api:SilverStripe\Forms\DropdownField) which allows selecting a single option. -- [`SearchableMultiDropdownField`](api:SilverStripe\Forms\SearchableMultiDropdownField) is similar to [`ListboxField`](api:SilverStripe\Forms\ListboxField) which allows selecting multiple options. - -Both of these fields include a `setIsLazyLoaded()` method which will load a limited number of options at a time using an AJAX request matching what a user has typed in. There are quite a few options to customise these, including optionally using `SearchContext` to power the lazy-loaded search functionality. We encourage you to look at the API documentation for these new classes to see what you can do with them. - -Note that these are both powered by react components, and are only intended to be used within the CMS. If you want to use them on the front end of your project you will need to provide your own templates and JavaScript implementation for them. - -#### Auto scaffolding of `has_one` relations - -`SearchableDropdownField` will now be used when automatically scaffolding `has_one` relations into forms. Previously `DropdownField` was used, and when there were over 100 items [`NumericField`](api:SilverStripe\Forms\NumericField) was used - which was not user friendly. - -Previously the [`DBForeignKey.dropdown_field_threshold`](api:SilverStripe\ORM\FieldType\DBForeignKey->dropdown_field_threshold) config property was used as the threshold of the number of options to decide when to switch between auto-scaffolding a `DropdownField` and a `NumericField`. This configuration property is now used as the threshold of the number of options to decide when to start using lazy-loading for the `SearchableDropdownField`. - -### New `UrlField` {#urlfield} - -We've added a new [`UrlField`](api:SilverStripe\Forms\UrlField) which is a subclass of [`TextField`](api:SilverStripe\Forms\TextField) with some additional validation rules (powered by the [`Url` symfony validation constraint](https://symfony.com/doc/current/reference/constraints/Url.html)). It will validate that the value entered is a valid absolute URL with a protocol (either `http` or `https`) and a host. - -### Create file variants with different extensions {#file-variants} - -We've added a low-level API which allows the creation of file variants with a different extension than the original file's extension. A file variant is a manipulated version of the original file - for example if you resize an image or convert a file to another format, this will generate a variant (leaving the original file intact). - -Some examples of when you might want this are: - -- Generating thumbnails for videos, documents, etc -- Converting images to `.webp` for faster page load times -- Converting documents to `.pdf` so downloaded documents are more portable - -See [file manipulation](/developer_guides/files/file_manipulation/#convert-a-file-to-a-different-format) for details about how to use this new API. - -### More nuanced permissions for `/dev/*` routes {#dev-route-permissions} - -Previously, all `/dev/*` routes registered with [`DevelopmentAdmin`](api:SilverStripe\Dev\DevelopmentAdmin) (for example `/dev/tasks/MyBuildTask`) could only be access by administrator users, and this couldn't be configured. - -Now, all of the controllers which handle these routes that come packaged in a core or supported module have a new `init_permissions` configuration property (e.g. [`TaskRunner.init_permissions`](api:SilverStripe\Dev\TaskRunner->init_permissions)). This new configuration can be used to grant non-administrative users access to these routes. - -You can also now optionally implement a `canView()` method on your `BuildTask` implementations to restrict accessed for specific tasks even further. This means you can grant access to *some* tasks to specific users or groups without granting access to *all* tasks. - -### Generic typehints {#generics} - -We've added typehints using PHPStan-style generic types to PHPDocs in many areas of the codebase of supported modules. The primary goal of this is to improve the developer experience by correctly reporting to your IDE what types it should expect, for example when looping through a `DataList`. In many cases your IDE will now know what types to expect without needing you to prompt it with [`@var` annotation comments](https://docs.phpdoc.org/3.0/guide/references/phpdoc/tags/var.html). - -> [!NOTE] -> There are some cases where this goal conflicts with having types that are correctly identified by PHPStan itself (or other static analysis tools). For example conditional return types aren't supported as widely in IDEs as generic types themselves are, so we opted to not use conditional return types even when those would result in a more accurate type for static analysis tools. - -See [Generics By Examples | PHPStan](https://phpstan.org/blog/generics-by-examples) and [Generics in PHP using PHP DocComments | DEVSENSE](https://blog.devsense.com/2022/generics-in-php-using-phpdoc) for more information about PHP generic typehints. - -While you should see some improvements immediately after updating, there are some changes you can make to your own codebase to best use the new generic type hints. - -#### Generic typehints when returning lists {#generics-return-lists} - -In your project code, any time you return an instance of `SS_List` (such as a `DataList` or `ArrayList`), you can add a generic typehint to declare what kind of object the returned list contains. This example will hint to the IDE that it returns a `DataList` containing `CarouselItem` records: - -```php -use App\Model\CarouselItem; -use SilverStripe\ORM\DataList; - -/** - * @return DataList - */ -function getCarouselItems(): DataList -{ - return CarouselItem::get(); -} -``` - -#### Generic typehints in `Extension` subclasses {#generics-extensions} - -The generic typing on the `Extension` class can be used to tell your IDE what type to expect for the [`$owner`](api:SilverStripe\Core\Extension->owner) property and [`getOwner()`](api:SilverStripe\Core\Extension::getOwner()) method. - -For this to be useful, you need to tell your IDE that your subclass `@extends` the `Extension` class, and tell it what type the owner should be. - -> [!WARNING] -> Don't forget to include a `use` statement, even if you're not explicitly referencing the type anywhere in your actual code. Your IDE needs the `use` statement to resolve the FQCN for the class you're referencing in the typehint. - -```php -namespace App\Extension; - -use SilverStripe\Core\Extension; -use SilverStripe\SiteConfig\SiteConfig; - -/** - * @extends Extension - */ -class SiteConfigExtension extends Extension -{ - // ... -} -``` - -This is also a useful way to indicate to developers at a glance what type(s) the extension is designed to be applied to. - -For example you might have an extension that can apply to both the `LeftAndMain` and `GridFieldDetailForm_ItemRequest` classes, which you can indicate using a union typehint: `@extends Extension`. - -#### Generic typehints in `ContentController` subclasses {#generics-contentcontroller} - -If you use the [`data()`](api:SilverStripe\CMS\Controllers\ContentController::data()) method or the [`$dataRecord`](api:SilverStripe\CMS\Controllers\ContentController->dataRecord) property in your page controllers, you may find it useful for your IDE to know specifically what page class that data represents. - -For this to work, you need to make sure your base `PageController` class has a `@template` type to extend. - -> [!TIP] -> Any time you use `@extends`, the class being extended needs to have a `@template` type so that your IDE knows what the type you're passing in is going to be used for. - -```php -namespace { - - use SilverStripe\CMS\Controllers\ContentController; - - /** - * @template T of Page - * @extends ContentController - */ - class PageController extends ContentController - { - // ... - } -} -``` - -```php -namespace App\PageType; - -use PageController; - -/** - * @extends PageController - */ -class HomepageController extends PageController -{ - // ... -} -``` - -### New exception in react forms {#react-forms-exception} - -[`FormSchema::getSchema()`](api:SilverStripe\Forms\Schema::getSchema()) now throws a [`LogicException`](https://www.php.net/manual/en/class.logicexception.php) if a react component was not found for a field type. - -> [!WARNING] -> If your project or a module you're using is currently trying to include a field which doesn't have a react component (such as `GridField`) into a react-rendered form, it will have been silently failing. The form will have been rendering everything except for the field(s) which have no react component. -> -> This will now fail by throwing an exception, which means your form won't render at all until you remove or replace the field(s). - -### Other new features - -- We've added a new [`SiteTree.hide_pagetypes`](api:SilverStripe\CMS\Model\SiteTree->hide_pagetypes) configuration property. Unlike [`SiteTree.hide_ancestor`](api:SilverStripe\CMS\Model\SiteTree->hide_ancestor) (which has [now been deprecated](#api-silverstripe-cms)), this is an array. This allows you to define all page types that should be hidden in a single configuration property in your YAML configuration. -- We've added a new [`DBText.summary_sentence_separators`](api:SilverStripe\ORM\FieldType\DBText->summary_sentence_separators) configuration property. This is used to split sentences in the [`DBText::Summary()`](api:SilverStripe\ORM\FieldType\DBText::Summary()) method. The default configuration value includes `.`, `!`, and `?`. Previously, only `.` was used to split sentences. -- You can now upload [Braille ASCII file format](https://en.wikipedia.org/wiki/Braille_ASCII) (`.brf`) files to the CMS without needing to modify the [allowed file types](/developer_guides/files/allowed_file_types/). -- We've added a new [`FilesystemPublisher.disallowed_status_codes`](api:SilverStripe\StaticPublishQueue\Publisher\FilesystemPublisher->disallowed_status_codes) configuration property to the `silverstripe/staticpublishqueue` module, allowing you to avoid caching responses for certain HTTP status codes. See [the documentation](https://github.com/silverstripe/silverstripe-staticpublishqueue/blob/6/docs/en/basic_configuration.md#excluding-response-codes) for more details. -- We've added a new [`LeftAndMain.extra_requirements_i18n`](api:SilverStripe\Admin\LeftAndMain->extra_requirements_i18n) configuration property which can be used to load i18n JavaScript localisation files into the CMS. -- We've added a new [`LeftAndMain::jsonSuccess()`](api:SilverStripe\Admin\LeftAndMain::jsonSuccess()) method to make it easier to return JSON data in a response from a `LeftAndMain` subclass. -- The [Composer runtime API](https://getcomposer.org/doc/07-runtime.md#installed-versions) is now being used in the [`VersionProvider`](api:SilverStripe\Core\Manifest\VersionProvider) class instead of relying on the `composer.lock` file. - -## API changes - -### `silverstripe/framework` {#api-silverstripe-framework} - -The following legacy subclasses of [`PasswordEncryptor`](api:SilverStripe\Security\PasswordEncryptor) have been deprecated, and will be removed in a future major release. If you are using one of these password encryptors in your projects, we strongly recommend swapping to one that has not been deprecated ([`PasswordEncryptor_Blowfish`](api:SilverStripe\Security\PasswordEncryptor_Blowfish) is the current recommendation, and is the default encryptor for passwords in new installations). Note that changing the password encryptor will also require that all of your members reset their passwords. - -- [`PasswordEncryptor_None`](api:SilverStripe\Security\PasswordEncryptor_None) -- [`PasswordEncryptor_LegacyPHPHash`](api:SilverStripe\Security\PasswordEncryptor_LegacyPHPHash) -- [`PasswordEncryptor_MySQLOldPassword`](api:SilverStripe\Security\PasswordEncryptor_MySQLOldPassword) -- [`PasswordEncryptor_MySQLPassword`](api:SilverStripe\Security\PasswordEncryptor_MySQLPassword) - -The `getThrowExceptionOnBadDataType()` and `setThrowExceptionOnBadDataType()` methods have been deprecated in the following classes. These methods are used to allow silent failures which result from poorly configured `GridFieldConfig`. In a future major release these methods will be removed and the associated failures will always throw exceptions, prompting developers to correctly set up their configuration in a way that works the way they expect it to. - -- [`GridFieldFilterHeader`](api:SilverStripe\Forms\GridField\GridFieldFilterHeader::setThrowExceptionOnBadDataType()) -- [`GridFieldPaginator`](api:SilverStripe\Forms\GridField\GridFieldPaginator::setThrowExceptionOnBadDataType()) -- [`GridFieldSortableHeader`](api:SilverStripe\Forms\GridField\GridFieldSortableHeader::setThrowExceptionOnBadDataType()) - -The following unused API have been deprecated and will be removed in a future major release: - -- Configuration property [`DataObject.subclass_access`](api:SilverStripe\ORM\DataObject->subclass_access) -- Public static method [`DataObject::disable_subclass_access()`](api:SilverStripe\ORM\DataObject::disable_subclass_access()) -- Public static method [`DataObject::enable_subclass_access()`](api:SilverStripe\ORM\DataObject::enable_subclass_access()) - -The [`ViewableData::getIterator()`](api:SilverStripe\View\ViewableData::getIterator()) method has been deprecated and will be removed in a future major release. - -### `silverstripe/cms` {#api-silverstripe-cms} - -The [`SiteTree.hide_ancestor`](api:SilverStripe\CMS\Model\SiteTree->hide_ancestor) configuration property has been deprecated. Use [`SiteTree.hide_pagetypes`](api:SilverStripe\CMS\Model\SiteTree->hide_pagetypes) instead. - -### `silverstripe/versioned` {#api-silverstripe-versioned} - -The `$having` parameter in the [`Versioned::Versions()`](api:SilverStripe\Versioned\Versioned::Versions()) method has been deprecated. This parameter was never used, and has been removed from the method signature. - -## Bug fixes - -- The assets admin section now respects the [`Upload_Validator.default_max_file_size`](api:SilverStripe\Assets\Upload_Validator->default_max_file_size) configuration if [`AssetAdmin.max_upload_size`](api:SilverStripe\AssetAdmin\Controller\AssetAdmin->max_upload_size) has not been explicitly set for your project. Previously, asset admin would ignore `Upload_Validator.default_max_file_size` and just use the PHP `upload_max_filesize` ini configuration by default. See [file upload limits](/developer_guides/files/file_management/#upload-limits) for more details. -- Redirector pages with a link to a missing or unpublished page/file will now return a 404 response. You can revert to the previous behaviour by setting the [`RedirectorPageController.missing_redirect_is_404`](api:SilverStripe\CMS\Model\RedirectorPageController->missing_redirect_is_404) configuration property to `false`. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - - - - -## Change log - -### Security {#changelog-security} - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2023-12-06 [4b1b48704](https://github.com/silverstripe/silverstripe-framework/commit/4b1b487041536f958a68a17400686d16eb77d1bb) Allow permission checks in BulkLoader (Guy Sartorelli) - See [cve-2023-49783](https://www.silverstripe.org/download/security-releases/cve-2023-49783) - - 2023-11-29 [873b721b6](https://github.com/silverstripe/silverstripe-framework/commit/873b721b6b999c5ac189326cf9e1893a4df7d1f8) Don't show or add records the member isn't allowed to (Guy Sartorelli) - See [cve-2023-48714](https://www.silverstripe.org/download/security-releases/cve-2023-48714) - -- silverstripe/admin (2.1.0 -> 2.2.0-rc1) - - 2023-12-06 [9b96bbde](https://github.com/silverstripe/silverstripe-admin/commit/9b96bbde2857c9143ce6266093b6935e0a0e1d2c) Opt in to permission checks in bulk loaders (Guy Sartorelli) - See [cve-2023-49783](https://www.silverstripe.org/download/security-releases/cve-2023-49783) - -- silverstripe/graphql (5.1.0 -> 5.2.0-rc1) - - 2023-10-31 [8e64567](https://github.com/silverstripe/silverstripe-graphql/commit/8e645670aecd6858069f33bc092485d09ee9f734) Ensure canView() checks are run (Steve Boyd) - See [cve-2023-44401](https://www.silverstripe.org/download/security-releases/cve-2023-44401) - -### Features and enhancements {#changelog-features-and-enhancements} - -- silverstripe/recipe-cms (5.1.0 -> 5.2.0-rc1) - - 2024-01-17 [9dbd01e](https://github.com/silverstripe/recipe-cms/commit/9dbd01e7046135c17235e870bc9c787f1ab70c9b) Add generic types (#79) (Guy Sartorelli) - -- silverstripe/assets (2.1.0 -> 2.2.0-rc1) - - 2024-01-25 [3326749](https://github.com/silverstripe/silverstripe-assets/commit/3326749de4848186f6649b692248dce017bf0ae6) Refactor FileIDHelper classes to reduce code duplication (#587) (Guy Sartorelli) - - 2024-01-17 [2ed92f8](https://github.com/silverstripe/silverstripe-assets/commit/2ed92f8f357eb550a8c4a3b2e956ab0c8b54605e) Add generic types (#584) (Guy Sartorelli) - - 2024-01-16 [a40ab50](https://github.com/silverstripe/silverstripe-assets/commit/a40ab5085a7bf2d46f33effa950814e58a014523) Allow file variants with different extensions (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2024-03-14 [777056d86](https://github.com/silverstripe/silverstripe-framework/commit/777056d8611ad3ba91d13853bf721e2506f13146) fieldList is an array or null (Thomas Portelange) - - 2024-03-12 [b031ade73](https://github.com/silverstripe/silverstripe-framework/commit/b031ade73ab78371fa7b3a1a685de483b950b045) update some docblock types (#11168) (Thomas Portelange) - - 2024-02-20 [528344d1b](https://github.com/silverstripe/silverstripe-framework/commit/528344d1b0c9d02787aed0acca42b022e8c14b98) Allow manipulating eagerloading queries (#11140) (Guy Sartorelli) - - 2024-02-16 [a3ce922f1](https://github.com/silverstripe/silverstripe-framework/commit/a3ce922f1dea4beea797639bd33d10b87eaf8a9f) Allow better subclassing of MoneyField (Dominik Beerbohm) - - 2024-02-16 [8664d2c4e](https://github.com/silverstripe/silverstripe-framework/commit/8664d2c4e9ce10377f1df0b2a5dd759db43da748) Allow all valid true-like ini values (Guy Sartorelli) - - 2024-02-08 [5e53dbcdb](https://github.com/silverstripe/silverstripe-framework/commit/5e53dbcdbcf0cc5361ea808b951829092c03ec27) Add a trace comment for queries in dev mode (#11065) (Guy Sartorelli) - - 2024-02-02 [2e4bc9515](https://github.com/silverstripe/silverstripe-framework/commit/2e4bc9515730b5fc95d163e21682f2cb0082e92e) Add UrlField (Steve Boyd) - - 2024-02-02 [7f7169533](https://github.com/silverstripe/silverstripe-framework/commit/7f716953358118dc2763a6b2217f82e8eb69a92a) Wire up symfony/validator (#11123) (Guy Sartorelli) - - 2024-01-30 [9d335f73d](https://github.com/silverstripe/silverstripe-framework/commit/9d335f73d6853281ef4bd1a66e353dfd13a7b945) HasOneRelationFieldInterface (Steve Boyd) - - 2024-01-17 [357ed7ad7](https://github.com/silverstripe/silverstripe-framework/commit/357ed7ad7e6f9e1b7e7bb939a118a4448dbc4ec7) Add generic types (#11108) (Guy Sartorelli) - - 2023-12-21 [2487c4085](https://github.com/silverstripe/silverstripe-framework/commit/2487c4085d13dd14e1935f496f3f339c6d1ebcc0) Create Requirements::customScriptWithAttributes (#11076) (Finlay Metcalfe) - - 2023-12-18 [e66c1aec0](https://github.com/silverstripe/silverstripe-framework/commit/e66c1aec0614c5c30e16d1c58cd9813aa7d6b4bc) Use SearchableDropdownField for autoscaffolded has_one relationships (Steve Boyd) - - 2023-12-14 [23eca53df](https://github.com/silverstripe/silverstripe-framework/commit/23eca53dfbd81576db6b35946d5872f58ae4526d) SearchableDropdownField (Steve Boyd) - - 2023-12-11 [c405ed6cf](https://github.com/silverstripe/silverstripe-framework/commit/c405ed6cf3977f2502be158432816aa1a06957dd) Allow a single has_one to manage multiple reciprocal has_many (#11084) (Guy Sartorelli) - - 2023-11-22 [fdb329913](https://github.com/silverstripe/silverstripe-framework/commit/fdb329913c6e71f55c88543ed32ef55d0bfde9aa) Throw exception when no react component (Steve Boyd) - - 2023-11-14 [3d64eac12](https://github.com/silverstripe/silverstripe-framework/commit/3d64eac1293a7522646be0fbae54d185a9ea3a72) Make most GridField components work with arbitrary data (Guy Sartorelli) - - 2023-11-14 [5838772b1](https://github.com/silverstripe/silverstripe-framework/commit/5838772b193df35ee7665770ccd32bf19f65355b) Explicitly require DataObject for some gridfield components (Guy Sartorelli) - - 2023-11-13 [b1295af28](https://github.com/silverstripe/silverstripe-framework/commit/b1295af281c042281df01dde4bde0443c5867498) Provide an easy way to filter arbitrary ViewableData in gridfields (Guy Sartorelli) - - 2023-11-03 [b9b891d05](https://github.com/silverstripe/silverstripe-framework/commit/b9b891d05096ccf6370decc8f09500ee9be0e48f) handle sub-urls (Andrew Paxley) - - 2023-11-02 [2cb84e90d](https://github.com/silverstripe/silverstripe-framework/commit/2cb84e90d481e4635168e47061304373b552a78f) remove devbuild bypass (Andrew Paxley) - - 2023-11-02 [5d4327b23](https://github.com/silverstripe/silverstripe-framework/commit/5d4327b23834b4b090ca5e9c8d9aad93497319ed) replace permission checks with canView check on TestDBTask (Andrew Paxley) - - 2023-10-31 [78444a44c](https://github.com/silverstripe/silverstripe-framework/commit/78444a44ca8b77e304537023cf176a640355ba23) add DevAdminConfirmationMiddleware (Andrew Paxley) - - 2023-10-19 [159112ca8](https://github.com/silverstripe/silverstripe-framework/commit/159112ca8b5e3c02e6c31dff54851a76f13465bc) Generate a random password if a blank password is entered (Steve Boyd) - - 2023-10-03 [a0cbebb2d](https://github.com/silverstripe/silverstripe-framework/commit/a0cbebb2d1d8459284343132340d5180e0b69213) allow stacked messages on FormMessage (Andrew Paxley) - - 2023-10-02 [44b170098](https://github.com/silverstripe/silverstripe-framework/commit/44b170098ea2ff5f361ec01577b570c75c0d85f1) `Add ORM abstraction for "WITH" clauses (#10943)` (Guy Sartorelli) - - 2023-09-27 [7d5c62ed5](https://github.com/silverstripe/silverstripe-framework/commit/7d5c62ed5f0cbdb0f64ecaecf3ed245d8dc40d78) Add rightJoin method to DataList (#10961) (Guy Sartorelli) - - 2023-09-24 [fac335673](https://github.com/silverstripe/silverstripe-framework/commit/fac33567390b9a58a700820a1de5278f4a3e4937) Enable allowing collisions for field statements (#10957) (Guy Sartorelli) - - 2023-09-24 [bbc0295f8](https://github.com/silverstripe/silverstripe-framework/commit/bbc0295f86dc23ab590e3e1455db51cc3826cec8) Add abstraction for sql RIGHT JOIN (#10954) (Guy Sartorelli) - - 2023-09-24 [b28749db4](https://github.com/silverstripe/silverstripe-framework/commit/b28749db440a4ab0d859e1c7284155c18b86ff4e) Allow selecting multiple (or no) tables (#10953) (Guy Sartorelli) - - 2023-09-19 [b3b1d0761](https://github.com/silverstripe/silverstripe-framework/commit/b3b1d07616b3bdb96f27c632f1511d00ec45c532) Deprecate old password encryptors (#10948) (Guy Sartorelli) - - 2023-08-04 [76da701b6](https://github.com/silverstripe/silverstripe-framework/commit/76da701b6b356214cbc1b3f3f0c8e9fd19ba26a6) Add sql UNION abstraction (Guy Sartorelli) - - 2023-07-12 [3244b44a5](https://github.com/silverstripe/silverstripe-framework/commit/3244b44a54aa6b227617bc1177449dac742ad64a) add permissions for build tasks (Andrew Paxley) - - 2021-12-04 [bf629dfab](https://github.com/silverstripe/silverstripe-framework/commit/bf629dfabd0587447384bda4b997760478b302a0) Split sentences by configurable punctuation for summary (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0-rc1) - - 2024-03-09 [ea554c52](https://github.com/silverstripe/silverstripe-admin/commit/ea554c5254ed8e6ae1f7ecbc0b07ec20e71d1b53) Move spinner to a seperate template so other module can include it (Maxime Rainville) - - 2024-02-26 [41f8bd3f](https://github.com/silverstripe/silverstripe-admin/commit/41f8bd3ffde5d7875e6edc007b877348bb6d0982) Refactor FormBuilderModal and split up the Modal into its own component (#1631) (Maxime Rainville) - - 2024-02-13 [6d183e4d](https://github.com/silverstripe/silverstripe-admin/commit/6d183e4d38e0e91f8f804c845c372d34d9488c8a) `Add extra_requirements_i18n config to LeftAndMain (#1678)` (Guy Sartorelli) - - 2024-01-29 [73e30a0f](https://github.com/silverstripe/silverstripe-admin/commit/73e30a0fbb680bd719e7c8830de9eaf12c02309d) Add jsonSuccess() (Steve Boyd) - - 2024-01-25 [c16fb0f3](https://github.com/silverstripe/silverstripe-admin/commit/c16fb0f3c11ff25884586926554e912aaa44025f) Refactor sslink slightly for easier maintenance (#1661) (Guy Sartorelli) - - 2024-01-24 [493909d0](https://github.com/silverstripe/silverstripe-admin/commit/493909d07df2878ce248345dc7429c12f79cd0b1) Remove background form description and unclickable fields (#1652) (Sabina Talipova) - - 2024-01-17 [75b51fc1](https://github.com/silverstripe/silverstripe-admin/commit/75b51fc19ca6d124fc848782b6958dfe92cb1a1f) Add generic types (#1648) (Guy Sartorelli) - - 2023-12-13 [c63d0136](https://github.com/silverstripe/silverstripe-admin/commit/c63d01365c92b263483e93b080a5dd49cc3c5f9b) SearchableDropdownField (Steve Boyd) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-18 [badbc4fd](https://github.com/silverstripe/silverstripe-asset-admin/commit/badbc4fddd20f6c917fea8d96b6e172af837f60d) Add generic types (#1433) (Guy Sartorelli) - - 2024-01-08 [a144ac18](https://github.com/silverstripe/silverstripe-asset-admin/commit/a144ac1884fe04d8521eddebe8ce992ef74057c3) Let AssetAdmin default to Upload_Validator default upload limits (#1430) (Guy Sartorelli) - - 2023-12-13 [32480e20](https://github.com/silverstripe/silverstripe-asset-admin/commit/32480e20367abe3a8ec9ff5349f246e9088f4ff8) Use SearchableMultiDropdownField (Steve Boyd) - - 2023-11-07 [b160b1c6](https://github.com/silverstripe/silverstripe-asset-admin/commit/b160b1c6622ccb041bdcfec19c863efef0b15f93) Select all and clear all functionality (Steve Boyd) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-17 [5b75cb2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5b75cb2f51f77c62cced3c9e649eca2a4e072c63) Add generic types (#291) (Guy Sartorelli) - - 2023-11-07 [1c20dbf](https://github.com/silverstripe/silverstripe-campaign-admin/commit/1c20dbfa9db78df6ea1f23b1c65c005d56c2dec9) More Actions button is hidden if Campaign is published (#288) (Sabina Talipova) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-18 [ad08d76](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ad08d7632c4db63d59f361f92002d2a87af102f6) Add generic types (#319) (Guy Sartorelli) - -- silverstripe/cms (5.1.0 -> 5.2.0-rc1) - - 2024-01-18 [3847b3ea](https://github.com/silverstripe/silverstripe-cms/commit/3847b3ea19529f08f313891c5ec5c015e407ec8a) Add generic types (#2914) (Guy Sartorelli) - - 2024-01-08 [a5d2b3bb](https://github.com/silverstripe/silverstripe-cms/commit/a5d2b3bb32fc9709e81b2087d0e013e4bcdc4206) Return 404 when redirector page wants to link to missing page (#2663) (Marco Hermo) - - 2023-12-13 [3d94a0e3](https://github.com/silverstripe/silverstripe-cms/commit/3d94a0e3d002da4ba76e677ff175a5907e887699) Use SearchableMultiDropdownField to select Members (Steve Boyd) - -- silverstripe/errorpage (2.1.0 -> 2.2.0-rc1) - - 2024-01-17 [93f6715](https://github.com/silverstripe/silverstripe-errorpage/commit/93f6715ca3d1457913db5e74351d4bf9784c0c4c) Add generic types (#95) (Guy Sartorelli) - - 2023-09-25 [b4f0088](https://github.com/silverstripe/silverstripe-errorpage/commit/b4f00881f9b7bef724d42f9a037df196ecc888f1) add config for allowed_error_codes (Andrew Paxley) - - 2023-09-25 [9e1cde4](https://github.com/silverstripe/silverstripe-errorpage/commit/9e1cde4593601f89f132d5df87dd8613f8a6a641) additional error codes, tidy translations (Andrew Paxley) - -- silverstripe/siteconfig (5.1.0 -> 5.2.0-rc1) - - 2023-12-18 [37e8a4f3](https://github.com/silverstripe/silverstripe-siteconfig/commit/37e8a4f3ac5065755726b96b9e08cdcdcb326e47) Use SearchableMultiDropdownField (Steve Boyd) - - 2023-10-19 [7ab6480b](https://github.com/silverstripe/silverstripe-siteconfig/commit/7ab6480b3e0058c6d4903e629bba32a567e7d59b) `Add "only these users" option to siteconfig access settings` (Guy Sartorelli) - -- silverstripe/versioned (2.1.0 -> 2.2.0-rc1) - - 2024-01-19 [96736c2](https://github.com/silverstripe/silverstripe-versioned/commit/96736c2aafd52fbe0138e797e06df66cc17217bb) Add generic types (#431) (Guy Sartorelli) - - 2023-12-12 [1e73253](https://github.com/silverstripe/silverstripe-versioned/commit/1e7325381bdaf16d05c09e3b24d0995b58caccf7) Respect new has_one config (#427) (Guy Sartorelli) - - 2023-11-03 [044bdb0](https://github.com/silverstripe/silverstripe-versioned/commit/044bdb06913dba7ed8d540dcf420221fea586b52) add CAN_DEV_BUILD to non_live_permissions (Andrew Paxley) - - 2021-02-26 [1735fd6](https://github.com/silverstripe/silverstripe-versioned/commit/1735fd6f075c7a9373475555c4b99d41c329b77a) Stages differ recursive. (Danaë Miller-Clendon) - -- silverstripe/graphql (5.1.0 -> 5.2.0-rc1) - - 2024-01-17 [8fd1bdc](https://github.com/silverstripe/silverstripe-graphql/commit/8fd1bdc4a5f92c6889e27ad77be781f1727e5c13) Add generic types (#567) (Guy Sartorelli) - - 2023-10-31 [b47487d](https://github.com/silverstripe/silverstripe-graphql/commit/b47487df198180f8ac9a37ebfacd0987953fb4ff) use init_permissions to match core PR (Andrew Paxley) - -- silverstripe/session-manager (2.1.0 -> 2.2.0-rc1) - - 2024-01-18 [94c0603](https://github.com/silverstripe/silverstripe-session-manager/commit/94c0603894e9f4c833ae7f8892bafdf2ced0e25a) Add generic types (#177) (Guy Sartorelli) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-rc1) - - 2024-01-18 [3a820bd](https://github.com/silverstripe/silverstripe-login-forms/commit/3a820bdf746c717fbf4a1596396876427128e143) Add generic types (#162) (Guy Sartorelli) - -- silverstripe/iframe (3.1.0 -> 3.2.0-rc1) - - 2024-01-23 [53008d0](https://github.com/silverstripe/silverstripe-iframe/commit/53008d047323a78c3103e26400ba71ebadeb58b4) Add generic types (#77) (Guy Sartorelli) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-rc1) - - 2024-01-23 [556772b](https://github.com/silverstripe/silverstripe-tagfield/commit/556772b7be1620d034dbd0ac837b138d3b80e593) Add generic types (#277) (Guy Sartorelli) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0-rc1) - - 2024-01-23 [336d1c7](https://github.com/silverstripe/silverstripe-taxonomy/commit/336d1c768e83ddcd0b8612702a878ee77cf18a91) Add generic types (#102) (Guy Sartorelli) - -- silverstripe/blog (4.1.0 -> 4.2.0-rc1) - - 2024-01-18 [3b80922](https://github.com/silverstripe/silverstripe-blog/commit/3b8092272be26bf34126f15dc6cfbef9eed6f075) Add generic types (#739) (Guy Sartorelli) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-rc1) - - 2024-01-18 [77aba75](https://github.com/silverstripe/silverstripe-spamprotection/commit/77aba75ffae109ba97e9903900031e48b4aec76c) Add generic types (#108) (Guy Sartorelli) - -- silverstripe/contentreview (5.1.0 -> 5.2.0-rc1) - - 2024-01-18 [f04e9fa](https://github.com/silverstripe/silverstripe-contentreview/commit/f04e9fa4cabe1daeec5c9589ab0a6516dda34704) Add generic types (#220) (Guy Sartorelli) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-rc1) - - 2024-01-18 [b78b1af](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/b78b1af802ad797a23cdb1b64e3210cc10dedc87) Add generic types (#222) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-rc1) - - 2024-01-23 [65ec116](https://github.com/symbiote/silverstripe-advancedworkflow/commit/65ec11693a111b280a17d3b8ef7ab6a0af947334) Add generic types (#511) (Guy Sartorelli) - -- silverstripe/userforms (6.1.0 -> 6.2.0-rc1) - - 2024-01-18 [ca972ff](https://github.com/silverstripe/silverstripe-userforms/commit/ca972ff5f2fa1d059a542b0afb3921ae285b9ef1) Add generic types (#1261) (Guy Sartorelli) - - 2023-12-20 [5bcbad6](https://github.com/silverstripe/silverstripe-userforms/commit/5bcbad6a79e3df41ba9b1ef150fb578a80e1ec6c) Remove LastEdited from summary_fields (#1173) (Bauke) - -- silverstripe/externallinks (3.1.0 -> 3.2.0-rc1) - - 2024-01-23 [e8bdf12](https://github.com/silverstripe/silverstripe-externallinks/commit/e8bdf1203d7b1c2c8c4970400f41fc34759fe286) Add generic types (#117) (Guy Sartorelli) - - 2023-11-08 [8797f1f](https://github.com/silverstripe/silverstripe-externallinks/commit/8797f1f41e1a58e6866351a6eb20ebc1a6e24a88) Restrict access to getJobStatus execution (#113) (Sabina Talipova) - -- silverstripe/securityreport (3.0.0 -> 3.1.0-rc1) - - 2024-01-18 [2e8f342](https://github.com/silverstripe/silverstripe-securityreport/commit/2e8f342f6a0393c29dc2b8df7fbe9110e370599b) Add generic types (#72) (Guy Sartorelli) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0-rc1) - - 2024-01-18 [00ca457](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/00ca45728cc07f06c51c5fb0238b9b9dbf74785d) Add generic types (#76) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.0.1 -> 3.1.0-rc1) - - 2023-06-14 [32cccc9](https://github.com/bringyourownideas/silverstripe-maintenance/commit/32cccc9e9ebdc92c0c04b4509b08b1e4a773d742) Update translations (Steve Boyd) - -- bringyourownideas/silverstripe-composer-update-checker (4.0.0 -> 4.1.0-rc1) - - 2023-06-14 [3719b52](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/3719b52a740e6aed79402f4ab75046ebc9447d33) Update translations (Steve Boyd) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0-rc1) - - 2024-01-18 [b7b4ff8](https://github.com/silverstripe/silverstripe-versionfeed/commit/b7b4ff8fbd312871c8f63b226d310d5c39d459d3) Add generic types (#94) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-rc1) - - 2024-01-29 [7351e65](https://github.com/silverstripe/silverstripe-elemental/commit/7351e65ecb8b08702c05056a2a2190d83ffcd78d) Versioned badge to elements (Sabina Talipova) - - 2024-01-22 [b25ed5f](https://github.com/silverstripe/silverstripe-elemental/commit/b25ed5f761b514b38418287993ce49d506ddb1af) Add generic types (#1131) (Guy Sartorelli) - - 2024-01-19 [bf8d867](https://github.com/silverstripe/silverstripe-elemental/commit/bf8d867ede2cd6d2ad14b37d02140c6b85c653f7) `BaseElement::getType() use static::class instead of __CLASS__ for better defaults` (Christopher Darling) - -- silverstripe/auditor (3.0.0 -> 3.1.0-rc1) - - 2024-01-18 [8c847f5](https://github.com/silverstripe/silverstripe-auditor/commit/8c847f59c6381a1f8cee5584c71f58aaf9db740e) Add generic types (#67) (Guy Sartorelli) - -- silverstripe/registry (3.1.0 -> 3.2.0-rc1) - - 2024-01-23 [a42be22](https://github.com/silverstripe/silverstripe-registry/commit/a42be22b2798c3215a6a4869bf5a4f38d7c4c0ed) Add generic types (#90) (Guy Sartorelli) - -- silverstripe/mfa (5.1.0 -> 5.2.0-rc1) - - 2024-01-19 [97e6c80](https://github.com/silverstripe/silverstripe-mfa/commit/97e6c80f4514e5a083ec576ab15b8735147adc7e) Add generic types (#524) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-rc1) - - 2024-01-18 [6fb435f](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/6fb435f88dad4d5d8bc9b96e6b9afc911223eb93) Add generic types (#94) (Guy Sartorelli) - -- silverstripe/ldap (2.1.0 -> 2.2.0-rc1) - - 2024-01-19 [894f204](https://github.com/silverstripe/silverstripe-ldap/commit/894f204e433dc4119ea483ce806fe706d43f93bb) Add generic types (#67) (Guy Sartorelli) - -- silverstripe/textextraction (4.0.0 -> 4.1.0-rc1) - - 2024-01-22 [cc43a12](https://github.com/silverstripe/silverstripe-textextraction/commit/cc43a120c8b2033009c10a67d0af53337c8e0929) Add generic types (#86) (Guy Sartorelli) - -- silverstripe/realme (5.2.0 -> 5.3.0-rc1) - - 2024-01-18 [5971936](https://github.com/silverstripe/silverstripe-realme/commit/59719369503ba98d4696c41453cf5a7626cdea77) Add generic types (#128) (Guy Sartorelli) - -- silverstripe/subsites (3.1.0 -> 3.2.0-rc1) - - 2024-01-23 [11a941f](https://github.com/silverstripe/silverstripe-subsites/commit/11a941f63784d5e4b60667fcd79977d4269c4486) Add generic types (#554) (Guy Sartorelli) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0-rc1) - - 2024-01-17 [dd5f929](https://github.com/silverstripe/silverstripe-lumberjack/commit/dd5f929b2b829b150aef312031b86e835bceb80b) Add generic types (#137) (Guy Sartorelli) - -- silverstripe/staticpublishqueue (6.1.0 -> 6.2.0-rc1) - - 2024-01-19 [192ea76](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/192ea76dca70f303a5ddd39d55e377f95cfb6119) Add generic types (#182) (Guy Sartorelli) - - 2023-12-22 [50519cd](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/50519cd04249e4d023623b820507c1a19a85dcfa) Extension points for FilesystemPublisher. (Mojmir Fendek) - - 2023-11-30 [ebde61e](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/ebde61e72a0df37ac19cee78d690c6458f4545ef) Configuration property for disallowed status codes (#178) (Guy Sartorelli) - -- cwp/agency-extensions (3.1.0 -> 3.2.0-rc1) - - 2024-01-22 [0dc9d10](https://github.com/silverstripe/cwp-agencyextensions/commit/0dc9d10d01ae400b053e17676fd467c1bfb9d055) Add generic types (#110) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2024-01-23 [78fa8ba](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/78fa8ba747a7edc66e7524441f4c3adcc182791e) `Make toast message "Records reordered." localisable (#321)` (Tom Oude Rengerink) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0-rc1) - - 2024-01-23 [9cf0162](https://github.com/symbiote/silverstripe-queuedjobs/commit/9cf01629d66dfdb8d6129d5b4d6761bcd60f3f43) Add generic types (#415) (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0-rc1) - - 2024-01-12 [b55dcf4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b55dcf49692ef41bec590e4f9b8544eadcd3f1d3) Add generic types (Guy Sartorelli) - - 2023-06-14 [ef3fed4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ef3fed434b6113f8f697097548960d26973078cf) Update translations (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-rc1) - - 2024-03-12 [967c457](https://github.com/silverstripe/silverstripe-linkfield/commit/967c4578185a3c8a4cff236822f46c59d3f245b3) Pre-render the LinkField in entwine (#241) (Maxime Rainville) - - 2024-03-11 [1fb149f](https://github.com/silverstripe/silverstripe-linkfield/commit/1fb149fa99e0b2f41b6b3b41c362e5581af46141) Use File Title (Steve Boyd) - - 2024-02-20 [87e8c17](https://github.com/silverstripe/silverstripe-linkfield/commit/87e8c178ed6ac1460b7f7f0b7c4c853fde7d766b) Avoid potential data disclosure (#233) (Guy Sartorelli) - - 2024-02-15 [c75615f](https://github.com/silverstripe/silverstripe-linkfield/commit/c75615f93d5fb3c899e2b9ee40e8528614e0a644) More standardisation (#223) (Guy Sartorelli) - - 2024-02-14 [3e97f0d](https://github.com/silverstripe/silverstripe-linkfield/commit/3e97f0d121e60a7cbc446df46a7b7398f6b1e43f) Better versioned history (Steve Boyd) - - 2024-02-13 [0c0cdaa](https://github.com/silverstripe/silverstripe-linkfield/commit/0c0cdaaee4dccf1c9b34ac7515b1fd7f6f8cda2d) Globally disallow link types (Steve Boyd) - - 2024-02-13 [f3de6ac](https://github.com/silverstripe/silverstripe-linkfield/commit/f3de6ac0672cebd60d0929b9a55e517675017f62) LinkField Behat tests (#201) (Sabina Talipova) - - 2024-02-13 [5d604a7](https://github.com/silverstripe/silverstripe-linkfield/commit/5d604a775fd9a8a31943538bb4eb5d1d1732984f) Icon alignment (Sabina Talipova) - - 2024-02-12 [fac2d31](https://github.com/silverstripe/silverstripe-linkfield/commit/fac2d310863bbc939e44af3d126eb4a283ef65d1) Improve keyboard support (Steve Boyd) - - 2024-02-12 [05c7b42](https://github.com/silverstripe/silverstripe-linkfield/commit/05c7b42065f64b484a265ef26daa5efb745dc289) Remove unused code (Guy Sartorelli) - - 2024-02-12 [28b833f](https://github.com/silverstripe/silverstripe-linkfield/commit/28b833fc4e009718a44ae3e4f154ee059357820f) Standardise naming and improve code quality (Guy Sartorelli) - - 2024-02-12 [51acf4f](https://github.com/silverstripe/silverstripe-linkfield/commit/51acf4f1fe6d9740a6694524df70665469882724) Add strong typing where possible (Guy Sartorelli) - - 2024-02-12 [d334cbc](https://github.com/silverstripe/silverstripe-linkfield/commit/d334cbc9fa87198130ac91672e3d6de313ab8e27) Move LeftAndMain requirements into config (Guy Sartorelli) - - 2024-02-12 [04ae65c](https://github.com/silverstripe/silverstripe-linkfield/commit/04ae65c3656e44f15a0866873191f06283f94e15) Allow developers to exclude LinkText field (#215) (Guy Sartorelli) - - 2024-02-12 [afef74f](https://github.com/silverstripe/silverstripe-linkfield/commit/afef74f1c62e6c33b8cf357d19beb5fb34ebde12) Refactor link field traits into abstract class (Guy Sartorelli) - - 2024-02-08 [4e43d54](https://github.com/silverstripe/silverstripe-linkfield/commit/4e43d547016193c223a504b949aed9178cfb6dbf) Rename and move Title field (Steve Boyd) - - 2024-02-06 [0099636](https://github.com/silverstripe/silverstripe-linkfield/commit/00996361724c73e0010006d587db99a6c86f02b2) Improved validation (Steve Boyd) - - 2024-01-31 [5155f17](https://github.com/silverstripe/silverstripe-linkfield/commit/5155f178808613bdca30e9dd681eea9bc7642ad0) Set Published button dirty state when Link is an unpublished state (Steve Boyd) - - 2024-01-29 [8fbe94b](https://github.com/silverstripe/silverstripe-linkfield/commit/8fbe94baf0a9f27d9ccb9d8a613821bae8198a17) Standardise API responses (Steve Boyd) - - 2024-01-29 [836d665](https://github.com/silverstripe/silverstripe-linkfield/commit/836d665540367f29a28669ac794018c921490661) Improve hover active and focus state styling (Steve Boyd) - - 2024-01-25 [4ba8267](https://github.com/silverstripe/silverstripe-linkfield/commit/4ba82670e5a827933f069e53a5e44a2b9d30e85a) Add disabled field state (Steve Boyd) - - 2024-01-24 [0c01fcf](https://github.com/silverstripe/silverstripe-linkfield/commit/0c01fcf461c50af5fab464c196bbf35d4ca04090) Hide the open in new window checkbox from phone and email links (Steve Boyd) - - 2024-01-24 [9bb3a1a](https://github.com/silverstripe/silverstripe-linkfield/commit/9bb3a1a4791f9762d7eede88336b28057fc104ed) Add Readonly field status (#172) (Sabina Talipova) - - 2024-01-24 [e6f7705](https://github.com/silverstripe/silverstripe-linkfield/commit/e6f7705c596fe486ad9d793c25c3bd59ec380887) Confirm user wishes to delete link (Steve Boyd) - - 2024-01-18 [2927d50](https://github.com/silverstripe/silverstripe-linkfield/commit/2927d505711890c503560a66eb755e05586dd8a8) Show a cannot create message when types is empty (Steve Boyd) - - 2024-01-17 [343c3d2](https://github.com/silverstripe/silverstripe-linkfield/commit/343c3d2292ff661eff855d38b52dcbd27525d0e6) MutliLinkField sorting (Steve Boyd) - - 2024-01-16 [eb88dd0](https://github.com/silverstripe/silverstripe-linkfield/commit/eb88dd0398a1188ef8c9afa7fa01fa1630d38d44) Join endpoint path segments (Steve Boyd) - - 2024-01-11 [6644853](https://github.com/silverstripe/silverstripe-linkfield/commit/6644853cf998f38f10992a2d8f1ca688cd1a34d9) Link type icon (Sabina Talipova) - - 2024-01-11 [912816c](https://github.com/silverstripe/silverstripe-linkfield/commit/912816cea9276147143ea26cf7f4cd388e2de2c8) Add sorting by link type (Sabina Talipova) - - 2024-01-10 [09ca349](https://github.com/silverstripe/silverstripe-linkfield/commit/09ca3496832dcc4485103d042c44fd7bf4962f68) Show loading component during ajax read requests (Steve Boyd) - - 2024-01-10 [9d3a6f0](https://github.com/silverstripe/silverstripe-linkfield/commit/9d3a6f0e4e914a07526a907c83f5e4edbaecaae8) Gracefully handle AJAX failures (Steve Boyd) - - 2024-01-10 [c563394](https://github.com/silverstripe/silverstripe-linkfield/commit/c563394eedce2017c88f620427a41524a16a2720) Show save record first text on unsaved owners (Steve Boyd) - - 2024-01-09 [0ea34be](https://github.com/silverstripe/silverstripe-linkfield/commit/0ea34be7b05a43c2451dba7aef2f8963ea55a948) Used on table extension (Steve Boyd) - - 2024-01-09 [2086a38](https://github.com/silverstripe/silverstripe-linkfield/commit/2086a38dc9a4c534f441e783c6778ba1d7fac964) Change clear text to delete (Steve Boyd) - - 2023-12-22 [279cfb5](https://github.com/silverstripe/silverstripe-linkfield/commit/279cfb585dcbe4ad6dc8031877808420e5cf0416) Save relations on link creation (Steve Boyd) - - 2023-12-19 [ea28fe1](https://github.com/silverstripe/silverstripe-linkfield/commit/ea28fe199ecc14c78ff406a48cdd27d726f11930) Remove LinkFieldController from cms menu (Steve Boyd) - - 2023-12-14 [84824c7](https://github.com/silverstripe/silverstripe-linkfield/commit/84824c7acf4318f85b6a2fe52dfa63aad3e154b2) Allowed link types (Sabina Talipova) - - 2023-12-11 [ffb1ae0](https://github.com/silverstripe/silverstripe-linkfield/commit/ffb1ae021b0f47d2260ec4f7bb85eab4e5361d5c) Add versioning to Link (Steve Boyd) - - 2023-12-05 [5e35a84](https://github.com/silverstripe/silverstripe-linkfield/commit/5e35a84b13a92ba9d51f23559a32621d9590a41f) Add permission methods based on owner (Guy Sartorelli) - - 2023-11-30 [1e1083d](https://github.com/silverstripe/silverstripe-linkfield/commit/1e1083d96badd101f8f37e18f182836bd655a7f0) Default link title for each link type (Sabina Talipova) - - 2023-11-28 [1be5f0d](https://github.com/silverstripe/silverstripe-linkfield/commit/1be5f0d456f2296bf460960c51482e0ff1af2761) Add MultiLinkField for managing many-type relations (Guy Sartorelli) - - 2023-11-28 [acb9c84](https://github.com/silverstripe/silverstripe-linkfield/commit/acb9c84297dda1825541c0d6512b7eae349cf3c1) Refactor LinkField in preparation for MultiLinkField (Guy Sartorelli) - - 2023-11-14 [64f5829](https://github.com/silverstripe/silverstripe-linkfield/commit/64f58293d0eaa06b1d792004904ba2a3b51f7fe6) Add localization support (#119) (Sabina Talipova) - - 2023-11-06 [6035de8](https://github.com/silverstripe/silverstripe-linkfield/commit/6035de8c0326c3f34d479659bf0cf21bce13d10b) LinkFieldController to handle FormSchema (Steve Boyd) - - 2023-09-26 [345c828](https://github.com/silverstripe/silverstripe-linkfield/commit/345c828ab1d65cdf06febf5cfc950c46ed11719f) Allow projects to define their own subclass templates (Steve Boyd) - - 2023-06-21 [d667d94](https://github.com/silverstripe/silverstripe-linkfield/commit/d667d94f83437fb5242b9b472d2da1406582b5d1) Query string support. (Mojmir Fendek) - - 2023-06-20 [6b69001](https://github.com/silverstripe/silverstripe-linkfield/commit/6b69001799889e378cc3c95d64cea90562766aa8) New extension points added (JSON field). (Mojmir Fendek) - - 2023-06-14 [3478f28](https://github.com/silverstripe/silverstripe-linkfield/commit/3478f28c227f2647970ab16e5135bb514751258c) Extension points for link model manipulation. (Mojmir Fendek) - - 2023-06-07 [77c7319](https://github.com/silverstripe/silverstripe-linkfield/commit/77c7319142168da70c8ca2da607c5c24c63aaeae) Allow form validation. (Mojmir Fendek) - - 2023-06-06 [3041730](https://github.com/silverstripe/silverstripe-linkfield/commit/3041730c055a243a98cdb663bfa1cbd3a917a00c) Insert / edit link button label. (Mojmir Fendek) - - 2023-06-06 [d425b33](https://github.com/silverstripe/silverstripe-linkfield/commit/d425b33513a5b2fa14a2793d3639eb90fd24964c) Allow model-level for customisation. (Mojmir Fendek) - - 2023-06-05 [6e8183a](https://github.com/silverstripe/silverstripe-linkfield/commit/6e8183ac9c1b8e1aa7726cdd071653a8620c8ee8) Extensibility improvements for link migration task. (Mojmir Fendek) - - 2021-11-11 [3e0f699](https://github.com/silverstripe/silverstripe-linkfield/commit/3e0f6997c53e6bea11681ac8926d9483a830b0a1) Empty link title fallbacks to Page. (#37) (Mojmir Fendek) - -### Bugfixes {#changelog-bugfixes} - -- silverstripe/vendor-plugin (2.0.1 -> 2.0.2) - - 2023-10-10 [175505b](https://github.com/silverstripe/vendor-plugin/commit/175505bf7286a02e47a3cba087d026f8b110b3e3) Method CopyMethod::copy as deprecated (Sabina Talipova) - -- silverstripe/assets (2.1.0 -> 2.2.0-rc1) - - 2024-01-18 [d9d5dac](https://github.com/silverstripe/silverstripe-assets/commit/d9d5dac314e01e3de4298dca0eb10af3b2f0f97e) Pass variant args into array_merge correctly (Guy Sartorelli) - - 2024-01-08 [46e07eb](https://github.com/silverstripe/silverstripe-assets/commit/46e07eb8ceddfb3fbe4fadc81a56f42f1932739f) Ensure the setAllowedMaxFileSize wont allow config values to exceed PHP limits (#469) (Nick) - - 2023-12-19 [6e3fd80](https://github.com/silverstripe/silverstripe-assets/commit/6e3fd806ca4a95b4df3f33cd7c5963b8ed842b04) Allow inconclusive mimetypes (#582) (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2024-03-20 [8aab888d5](https://github.com/silverstripe/silverstripe-framework/commit/8aab888d5011d44c69e1f4ad6f6c28f6fe76bb2a) Fix link for managing roles (#11178) (Guy Sartorelli) - - 2024-03-01 [fcf5e324d](https://github.com/silverstripe/silverstripe-framework/commit/fcf5e324dd00c8a8cd42b014f92858734077b7f2) Handle non-breakable spaces (Thomas Portelange) - - 2024-02-26 [e7bc8ae99](https://github.com/silverstripe/silverstripe-framework/commit/e7bc8ae99f6fdbc0da942029a5ac11195ca4f15e) Generate salt if needed (Thomas Portelange) - - 2024-02-14 [d33332cb9](https://github.com/silverstripe/silverstripe-framework/commit/d33332cb9e7aededfb73a3cbf362490ee1e77ca4) Add eagerloaded data to ALL relevant lists (#11139) (Guy Sartorelli) - - 2024-02-12 [b56e771ed](https://github.com/silverstripe/silverstripe-framework/commit/b56e771ed5804fe1d6fd54aebd60051988e389ad) add missing rawurlencode (#11105) (Thomas Portelange) - - 2024-02-08 [e87c72470](https://github.com/silverstripe/silverstripe-framework/commit/e87c7247004ce6d5a5760eb6dade4e68043982c1) Don't assume mysql handle is an object (#11129) (Guy Sartorelli) - - 2024-02-07 [1dd81488a](https://github.com/silverstripe/silverstripe-framework/commit/1dd81488aace798dc196610e75240b452e392ce9) fix unknown table (Thomas Portelange) - - 2024-01-24 [afd53d1d6](https://github.com/silverstripe/silverstripe-framework/commit/afd53d1d6a39204fe7cc8867b1a91742c3d525bc) HTMLEditorField::setRows with Elemental (Sabina Talipova) - - 2024-01-11 [ff3a6f72d](https://github.com/silverstripe/silverstripe-framework/commit/ff3a6f72df39cca2bf40e46c10a6a9e20b39f78f) HTMLEditorField::setRows minimal hieght (#10965) (Sabina Talipova) - - 2024-01-09 [9bfb731bc](https://github.com/silverstripe/silverstripe-framework/commit/9bfb731bc3a36deae2147d830aa8485584ff2f17) Handle polymorphic relationships that use Owner instead of Parent (Steve Boyd) - - 2024-01-08 [e456de11b](https://github.com/silverstripe/silverstripe-framework/commit/e456de11b03f856599b9fc09c276fdf07ebb2541) Fix clobbering of the upload size validation (#10059) (Nick) - - 2023-12-19 [7dc1a7a12](https://github.com/silverstripe/silverstripe-framework/commit/7dc1a7a12b5e14d8ed1bfc93a6e3fac5dbb9aa4f) Correctly mark ConfirmedPasswordField children as required (Guy Sartorelli) - - 2023-12-13 [dd3a0dba2](https://github.com/silverstripe/silverstripe-framework/commit/dd3a0dba242d3c826614c4d87a1808ea2bac5769) Don't break the page if password recover email fails to send (Guy Sartorelli) - - 2023-12-13 [446810bc5](https://github.com/silverstripe/silverstripe-framework/commit/446810bc5e38a9319a72f21464c52f5502d5db56) Allow new password to save even if there's an error sending email (Guy Sartorelli) - - 2023-12-04 [40b888eaf](https://github.com/silverstripe/silverstripe-framework/commit/40b888eaf30f6c6899134f7fcbfb0705987516e1) UnsavedRelationList::last() sometimes returned an ID instead of an item (Loz Calver) - - 2023-12-04 [e28af9a5a](https://github.com/silverstripe/silverstripe-framework/commit/e28af9a5a7d41fe6bf240a3f51165f95acc5a98a) UnsavedRelationList first/last to return null if list is empty (fixes #11083) (Loz Calver) - - 2023-11-29 [6d903848a](https://github.com/silverstripe/silverstripe-framework/commit/6d903848ab2ce46875c7bca8cb67fed77b29a132) Don't replace config manifest for nested kernels (#11082) (Guy Sartorelli) - - 2023-11-21 [7eab49f85](https://github.com/silverstripe/silverstripe-framework/commit/7eab49f850070e1a2df5f7a2e38baad031aa1d54) Ensure environment is checked before enabling deprecations (#11055) (Guy Sartorelli) - - 2023-11-16 [05f1d9ab8](https://github.com/silverstripe/silverstripe-framework/commit/05f1d9ab863060fd2e7c66753f782e7cae2530c8) Make deprecation enabled check faster (Guy Sartorelli) - - 2023-11-13 [4dbbf04ba](https://github.com/silverstripe/silverstripe-framework/commit/4dbbf04ba5a68e68f2241380edc0e12145f0075c) Add extraEmptyValues to TreedropdownField (Steve Boyd) - - 2023-10-31 [d883719c1](https://github.com/silverstripe/silverstripe-framework/commit/d883719c16075412640e623557a2df4275965de1) ModelAdmin toast elements (Sabina Talipova) - - 2023-09-25 [55e42683f](https://github.com/silverstripe/silverstripe-framework/commit/55e42683f80d1a62c966917f262fbd05b33495b9) Match multi-line JOIN statements (#10960) (Guy Sartorelli) - - 2023-06-12 [51fd1d6b7](https://github.com/silverstripe/silverstripe-framework/commit/51fd1d6b7e45d7a7c0c26cae3cab7811b871362e) `Handle __TRAIT__ in i18nTextCollector` (Steve Boyd) - -- silverstripe/admin (2.1.0 -> 2.2.0-rc1) - - 2024-03-19 [aadc8aa9](https://github.com/silverstripe/silverstripe-admin/commit/aadc8aa96118a6c38d37fab015f1d27d0bfbd994) Correctly validate emails in WYSIWYG links (#1710) (Guy Sartorelli) - - 2024-03-04 [1df1ee77](https://github.com/silverstripe/silverstripe-admin/commit/1df1ee7713c30c5ac95f343100b9e019caefb8f1) JS Console errors and warnings (Sabina Talipova) - - 2024-02-26 [60563dbd](https://github.com/silverstripe/silverstripe-admin/commit/60563dbd4cbb162a55e504973ee460465cb78dd9) Support nested redux forms (Guy Sartorelli) - - 2024-02-25 [7918318d](https://github.com/silverstripe/silverstripe-admin/commit/7918318db45229d66ec82e8cb25fc541ed9617c7) Don't panic if classname isn't set (#1687) (Guy Sartorelli) - - 2024-02-22 [129a94a2](https://github.com/silverstripe/silverstripe-admin/commit/129a94a28d8652e6138eab1b441de8099d31d84f) Rebuild bundle (Mohamed Alsharaf) - - 2024-02-22 [b3e16081](https://github.com/silverstripe/silverstripe-admin/commit/b3e160818c4098d6bee742bed6cf747dd47c4ab6) Remove current active tab from session storage after use (Mohamed Alsharaf) - - 2024-02-08 [8a3833e8](https://github.com/silverstripe/silverstripe-admin/commit/8a3833e8128eb44d32da743772e579219284e3c1) Set the CSV importer based on the tab, not the model (#1676) (Guy Sartorelli) - - 2024-02-01 [725a9a11](https://github.com/silverstripe/silverstripe-admin/commit/725a9a11c332de7d33692e0ecabd02fbbf379e04) Use valid class for model importers (#1670) (Guy Sartorelli) - - 2024-01-25 [359a3953](https://github.com/silverstripe/silverstripe-admin/commit/359a39531b91994ca77538ce8fdd0dc9a191819b) Type error (Sabina Talipova) - - 2024-01-24 [925e06f4](https://github.com/silverstripe/silverstripe-admin/commit/925e06f4f5bee9cfd562f66c22bc89e2503a6f84) Add tinymce link menuitems per editor instance (#1653) (Guy Sartorelli) - - 2024-01-24 [799add9e](https://github.com/silverstripe/silverstripe-admin/commit/799add9e9ac2bf7d6a53394291dc59fce37f154b) HTMLEditorField::setRows with Elemental (Sabina Talipova) - - 2024-01-23 [c06b2f2a](https://github.com/silverstripe/silverstripe-admin/commit/c06b2f2adb0c683110ce50aaed97c55b22497412) Use valid class for model importers (Guy Sartorelli) - - 2024-01-17 [79955d24](https://github.com/silverstripe/silverstripe-admin/commit/79955d24314c8d1781b849683282c1d642476a04) Elemental no longer allows saving of HTMLEditorField (#1651) (Sabina Talipova) - - 2024-01-11 [bc92e1f1](https://github.com/silverstripe/silverstripe-admin/commit/bc92e1f14f7ef7f2093875866ec35fae74825404) HTMLEditorField::setRows method (#1588) (Sabina Talipova) - - 2024-01-09 [4dd2432b](https://github.com/silverstripe/silverstripe-admin/commit/4dd2432bd81f84750a3f2a208f7af4d5a0e5e08c) Remove unstable prefix from useBlocker (Steve Boyd) - - 2024-01-07 [12e97880](https://github.com/silverstripe/silverstripe-admin/commit/12e97880a145f0d126b5d94b5434d59f00e39883) Rebuild bundle (Steve Boyd) - - 2023-12-21 [d949db14](https://github.com/silverstripe/silverstripe-admin/commit/d949db1433dfc25086c6e3b03b4e62c00da7ba13) decode entities in toast message (Thomas Portelange) - - 2023-12-19 [0755502d](https://github.com/silverstripe/silverstripe-admin/commit/0755502de7eedfc21f2ab02870c85a07d9d8fc03) Ensure react-select field menus are always on top (#1637) (Guy Sartorelli) - - 2023-12-15 [5d39d877](https://github.com/silverstripe/silverstripe-admin/commit/5d39d8776975e073462f5fa304a9ed5054fbfb7a) Set z-index of list (Steve Boyd) - - 2023-12-01 [4c53dece](https://github.com/silverstripe/silverstripe-admin/commit/4c53dece05a4b6df391a57a07fdbaadc36a18dd3) Prevents horizontal scrollbar in non-firefox (Lukas Erni) - - 2023-11-08 [c862349c](https://github.com/silverstripe/silverstripe-admin/commit/c862349cfa71c34ab3578c27bf254186305a3832) Handle extra empty values (Steve Boyd) - - 2023-10-31 [22d5471f](https://github.com/silverstripe/silverstripe-admin/commit/22d5471f5dd8dee68eb1307479d82a21d3b46e54) ModelAdmin toast elements (Sabina Talipova) - - 2023-10-19 [d393424b](https://github.com/silverstripe/silverstripe-admin/commit/d393424bcbbd19f46f502bb94c54e1519dd46af6) Make CanView/Edit group toggle logic more robust (#1610) (Guy Sartorelli) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-25 [bb3894ef](https://github.com/silverstripe/silverstripe-asset-admin/commit/bb3894efebc95baf2b640554b1e1062186f6c8da) TinyMCE Insert link from Files (Sabina Talipova) - - 2024-01-24 [b9db9c33](https://github.com/silverstripe/silverstripe-asset-admin/commit/b9db9c3348399d4c87c7a23a6b09bef3d7088b40) Add tinymce link menuitems per editor instance (#1435) (Guy Sartorelli) - - 2023-11-08 [a50f9e40](https://github.com/silverstripe/silverstripe-asset-admin/commit/a50f9e40e98b4e1dc0a2db5ad7f76c5a1b7d083a) Limit Member map to 100 (Steve Boyd) - - 2023-09-11 [fd811f95](https://github.com/silverstripe/silverstripe-asset-admin/commit/fd811f9567193036fb462be9cba4e49d4e360048) fix: expose ShowInSearch field in access UI (Will Rossiter) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-rc1) - - 2024-03-10 [9c23cee](https://github.com/silverstripe/silverstripe-versioned-admin/commit/9c23ceec40455c90529ab48375ac76ea78790f53) Update ArchiveRestoreAction::doRestore() method to pass correct argument in redirection (Marco Hermo) - - 2024-02-12 [cd3fcb2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/cd3fcb202e8fc26bcafb0df38fd9f7e7d0f6dc5e) Use correct modelClass with others tab (Steve Boyd) - -- silverstripe/cms (5.1.0 -> 5.2.0-rc1) - - 2024-01-24 [dfc42e7c](https://github.com/silverstripe/silverstripe-cms/commit/dfc42e7c86c304c23ffa822149be07059eed70a3) Add tinymce link menuitems per editor instance (#2916) (Guy Sartorelli) - - 2023-12-19 [9202ce9a](https://github.com/silverstripe/silverstripe-cms/commit/9202ce9a6896e3b0b736ba5d4ded2e4651222cb7) Ensure react-select field menus are always on top (#2910) (Guy Sartorelli) - - 2023-11-19 [579986a6](https://github.com/silverstripe/silverstripe-cms/commit/579986a69160ebfff63ead6d8c108ef8658933e5) Handle exceptions when using /0 as a URL (#2825) (Will Rossiter) - - 2023-11-07 [dd2bd613](https://github.com/silverstripe/silverstripe-cms/commit/dd2bd6138720587525a7d117b1593f6641650093) Limit Member map to 100 (Steve Boyd) - -- silverstripe/versioned (2.1.0 -> 2.2.0-rc1) - - 2024-02-19 [11d24ae](https://github.com/silverstripe/silverstripe-versioned/commit/11d24ae9d7693e66f9a8cc5153152cebf20c8dc4) use rawurlencode when setting toast headers (#440) (Thomas Portelange) - - 2023-11-01 [c52c166](https://github.com/silverstripe/silverstripe-versioned/commit/c52c1661cb9fc3cb81345373a18fff75313f009b) ModelAdmin toast elements (Sabina Talipova) - - 2023-10-24 [d614204](https://github.com/silverstripe/silverstripe-versioned/commit/d6142046ee5dd1697a3cdef2c98e9df5841be400) Remove implicitly added item (Sabina Talipova) - -- silverstripe/graphql (5.1.0 -> 5.2.0-rc1) - - 2023-11-26 [f929eb6](https://github.com/silverstripe/silverstripe-graphql/commit/f929eb650be15b3a85834ffcafbddf93318c20be) Add test cases for SortPlugin (Sabina Talipova) - - 2023-11-22 [5781c46](https://github.com/silverstripe/silverstripe-graphql/commit/5781c46614ac2d40d025c71837f3dbc090361e53) QuerySort::sort method should support sorting for multi arguments (Sabina Talipova) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0-rc1) - - 2024-03-19 [240f576](https://github.com/silverstripe/silverstripe-documentconverter/commit/240f576335af20686f39ebe8956a5718df86ea43) Don't use deprecated usage of get_class() (#73) (Guy Sartorelli) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-rc1) - - 2023-12-13 [18e5df1](https://github.com/silverstripe/silverstripe-tagfield/commit/18e5df1b921fb162962e1cb1ed6b5b3cffabc71f) z-index of select dropdown clashing with TinyMCE toolbar (Christopher Darling) - - 2023-09-22 [c931056](https://github.com/silverstripe/silverstripe-tagfield/commit/c9310566895a355bd8c974af0c3c66f03214b50c) Added the state changed checks and bubble up event - pending build (josephlewisnz) - -- silverstripe/blog (4.1.0 -> 4.2.0-rc1) - - 2024-03-19 [9fae326](https://github.com/silverstripe/silverstripe-blog/commit/9fae326927dc38640f429970f53e86f77fbf9903) Use $owns instead of onBeforeWrite hook to publish profile image (James Cocker) - - 2022-08-22 [99d1063](https://github.com/silverstripe/silverstripe-blog/commit/99d1063361018e924662fd9392209df28710873e) Allow multibyte to be configured (#605) (Will Rossiter) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-rc1) - - 2023-09-10 [17106d8](https://github.com/silverstripe/silverstripe-spamprotection/commit/17106d8f30bfb2327a47e20c2b7b7cd21c29f423) fix: if no spam protector set, fail sliently (Will Rossiter) - -- colymba/gridfield-bulk-editing-tools (4.0.0 -> 4.0.2) - - 2023-11-22 [9a8cc37](https://github.com/colymba/GridFieldBulkEditingTools/commit/9a8cc3792ea51146325c9709625bd8792c4995c2) Remove deprecated convert API for SS5.0 (#260) (Bram de Leeuw) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-rc1) - - 2023-11-09 [e490370](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/e49037024c5a92ddb76ee59d4ca90e2fb84327af) Infinite recursion sanity checks with more helpful error messages (#214) (Nathan J. Brauer) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-rc1) - - 2024-01-25 [8f08322](https://github.com/symbiote/silverstripe-advancedworkflow/commit/8f08322f83259c8605540696e0446c89277f55ce) Argument order of insertBefore method (Mohamed Alsharaf) - - 2024-01-25 [5e3b9b0](https://github.com/symbiote/silverstripe-advancedworkflow/commit/5e3b9b0f246a7fb5cf7d4314d620f398f7fb4b65) Button layout that display icons (Mohamed Alsharaf) - - 2023-12-14 [7286f14](https://github.com/symbiote/silverstripe-advancedworkflow/commit/7286f144e28fbc3740c6376cb16973400507da1b) Use correct namespace for imports (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0-rc1) - - 2024-01-24 [e6638ec](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/e6638ecfb0e8f20134f15795d1aad9f28d9a01ce) update defensive check on tags field method (Phillip King) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0-rc1) - - 2024-03-19 [49cc581](https://github.com/silverstripe/silverstripe-versionfeed/commit/49cc58109c979b3454bf1429b7d8670b8e07bb97) Don't use deprecated usage of get_class() (#103) (Guy Sartorelli) - - 2024-02-29 [66da923](https://github.com/silverstripe/silverstripe-versionfeed/commit/66da9235029584a1cb731beceba18d16111162f4) Ensure page has extension before calling method (Steve Boyd) - - 2024-01-23 [c10085c](https://github.com/silverstripe/silverstripe-versionfeed/commit/c10085c99e08828d042ef46808a8d6953ba5bd3d) Make sureHtmlDiff::compareHTML is not passed null values (Alexandre Saelens) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-rc1) - - 2024-02-26 [f571da9](https://github.com/silverstripe/silverstripe-elemental/commit/f571da95abcf0f5edb9498934af8d5579b6dece8) Remove workaround for nested redux form. (Guy Sartorelli) - - 2024-01-30 [95c31bd](https://github.com/silverstripe/silverstripe-elemental/commit/95c31bdcc51c6569f059e2de4887bf613c88d614) Failed Behat test (Sabina Talipova) - - 2024-01-29 [b23847a](https://github.com/silverstripe/silverstripe-elemental/commit/b23847a5099d0bbfb6f0d1192db7be23f5f06019) Behat test for badges (Sabina Talipova) - - 2024-01-18 [935e46d](https://github.com/silverstripe/silverstripe-elemental/commit/935e46dcc8ed2603805f063662edd053d2b51c6c) Null submit handler for element component (Steve Boyd) - - 2023-12-06 [d986b7d](https://github.com/silverstripe/silverstripe-elemental/commit/d986b7d7efd559ed69bfa199ebfe520a5304475a) Handle empty element formstate (Steve Boyd) - - 2023-09-20 [7f1daf8](https://github.com/silverstripe/silverstripe-elemental/commit/7f1daf858438549d4f6a26e09e728ccf553c700b) Element::getPage returning the wrong page (Will Rossiter) - - 2023-09-19 [215fadf](https://github.com/silverstripe/silverstripe-elemental/commit/215fadf524f32940bd0e567e9ed2b3ab3e092949) Fix some bits in the readme (Ed Wilde) - -- silverstripe/auditor (3.0.0 -> 3.1.0-rc1) - - 2023-12-21 [567136d](https://github.com/silverstripe/silverstripe-auditor/commit/567136d36d1fdb0b161950ed9f357482afefa58b) Adjust logic to account for custom table names (Maxime Rainville) - - 2023-12-19 [44ee87d](https://github.com/silverstripe/silverstripe-auditor/commit/44ee87dccb84a6da6a7a6d7a4a9b6c3f403a9ea4) `Fix logging of failed logins & unknown users` (Ralph Slooten) - - 2023-12-14 [780b9af](https://github.com/silverstripe/silverstripe-auditor/commit/780b9afc880a2a16e222074810a64b8b7246b15b) Use correct namespace for import (Steve Boyd) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-rc1) - - 2024-01-16 [48b454f](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/48b454f71bf89ee43c965c5eba20a6503e077290) Undefined Exception on makeDir method (Marco Hermo) - -- cwp/watea-theme (4.0.0 -> 4.1.0-rc1) - - 2023-09-04 [8bfba56](https://github.com/silverstripe/cwp-watea-theme/commit/8bfba563ac39e231c1b489218a937326d0b58659) Update .nvmrc (Steve Boyd) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0-rc1) - - 2022-10-04 [7cdce8f](https://github.com/symbiote/silverstripe-queuedjobs/commit/7cdce8f678f9443e1fc13450a333bb87b6da9c3a) grabMutex job lock query on SQLite (Maxime Rainville) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0-rc1) - - 2023-08-15 [28056e5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/28056e5405ee09b1438e3134c944d10bcf2cb95b) fix stylesheet path (Thomas Portelange) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-rc1) - - 2024-03-19 [d0c44eb](https://github.com/silverstripe/silverstripe-linkfield/commit/d0c44ebc7acceea5e00445109d289a9a02cc9e2d) Remove misleading migration docs and task (#259) (Guy Sartorelli) - - 2024-03-10 [e40f251](https://github.com/silverstripe/silverstripe-linkfield/commit/e40f2516256aa0dfeecae552b16da19b0c1f197d) Remove tabs with only gridfields (Steve Boyd) - - 2024-02-26 [1a30c3e](https://github.com/silverstripe/silverstripe-linkfield/commit/1a30c3e298a1afc5569fca46200a3761b390bb9b) Remove workaround for nested redux form. (Guy Sartorelli) - - 2024-02-12 [c347b35](https://github.com/silverstripe/silverstripe-linkfield/commit/c347b35042c2ed164e7b685785f0fd7dd169865f) Archive record from live table on delete (Steve Boyd) - - 2024-02-07 [31d9ffa](https://github.com/silverstripe/silverstripe-linkfield/commit/31d9ffa15e98ed7c226d4fe0d67a53eb4b207879) Do not show delete button when disabled (Steve Boyd) - - 2024-01-31 [09f637c](https://github.com/silverstripe/silverstripe-linkfield/commit/09f637c26384069db0cc8749f619c50c67336403) Add HasOneRelationFieldInterface to LinkField (Steve Boyd) - - 2024-01-30 [790c561](https://github.com/silverstripe/silverstripe-linkfield/commit/790c561cca07f39f62412df3f247c6d6faa9e82d) Elemental non-inline editing (Steve Boyd) - - 2024-01-25 [da9ce9b](https://github.com/silverstripe/silverstripe-linkfield/commit/da9ce9b47dc3d8c2aa4124a300e66b1a0baf4433) Prevent nested asset-admin forms from submitting modal (Steve Boyd) - - 2024-01-19 [15f02d3](https://github.com/silverstripe/silverstripe-linkfield/commit/15f02d33641d8b286ee4b94a53a99a4491384e72) Defaul link type title and icon for disabled link types (Sabina Talipova) - - 2024-01-15 [f7fd63a](https://github.com/silverstripe/silverstripe-linkfield/commit/f7fd63a32b6c116b5cf51622f1d26581bdfe745a) Don't change scroll position when loading (#171) (Guy Sartorelli) - - 2024-01-11 [082657d](https://github.com/silverstripe/silverstripe-linkfield/commit/082657d1043936885a5f1050ace9a489cd0643c2) Console warning about required type (#163) (Sabina Talipova) - - 2024-01-08 [bdf0b36](https://github.com/silverstripe/silverstripe-linkfield/commit/bdf0b36225ba63a4f2784c369d1915582a821ee8) Nicely truncate link title/URL (#153) (Guy Sartorelli) - - 2023-12-04 [3c8edfd](https://github.com/silverstripe/silverstripe-linkfield/commit/3c8edfdc02846e43c3ae4b5d044bd4046e224679) Don't render links that don't exist (#130) (Guy Sartorelli) - - 2023-08-03 [f2fd7bb](https://github.com/silverstripe/silverstripe-linkfield/commit/f2fd7bb3335d967857387cb9d85b0b82ea0c1414) Revert change that broke file modal (Maxime Rainville) - - 2023-06-20 [8533d27](https://github.com/silverstripe/silverstripe-linkfield/commit/8533d278f0f44a84b9540428bdc68dc12ee1cd34) Allow CMS fields customisations via extension to be executed after the default setup. (Mojmir Fendek) - - 2023-06-11 [61a27e5](https://github.com/silverstripe/silverstripe-linkfield/commit/61a27e58837eaef8f5a3341ff331304de49b5f77) File link URL generation corrected. (Mojmir Fendek) - - 2023-06-06 [8df6554](https://github.com/silverstripe/silverstripe-linkfield/commit/8df65541242d93a165e944fee010a7a174d32cea) Corrected variable name (typo). (Mojmir Fendek) - - 2023-06-06 [f09a385](https://github.com/silverstripe/silverstripe-linkfield/commit/f09a38589649e848a758b4d76516d9bfb337943e) URL generation fix for internal link. (Mojmir Fendek) - - 2023-06-01 [b328570](https://github.com/silverstripe/silverstripe-linkfield/commit/b328570d36bd63fe39d2e964aebe123a8a0bb281) Fix link migration task. (Mojmir Fendek) - - 2023-05-25 [9744bd8](https://github.com/silverstripe/silverstripe-linkfield/commit/9744bd8dc23ebe70129555b5b7573ac5295232b4) List types can now be disabled via configuration (existing config, missing feature). (Mojmir Fendek) - - 2023-02-15 [677ae80](https://github.com/silverstripe/silverstripe-linkfield/commit/677ae80e6941e7016b6c3edc1ee1cddef1432efb) Fix Github actions. (Mojmir Fendek) - - 2022-05-13 [1e9c0ec](https://github.com/silverstripe/silverstripe-linkfield/commit/1e9c0ec5428d626622392165fd39a81c2550127e) Bump PHP versions. (Mojmir Fendek) - - 2022-05-12 [5239704](https://github.com/silverstripe/silverstripe-linkfield/commit/523970490db436bc7948bf67257c1f39a425ff93) Fix Composer autoload settings. (Mojmir Fendek) - - 2021-10-21 [2eb755e](https://github.com/silverstripe/silverstripe-linkfield/commit/2eb755eb15d26bfb6d59c7d07c52c67fbdad6e7d) Change link type in via a GridField edit form. (Mojmir Fendek) - -### Api changes {#changelog-api-changes} - -- silverstripe/assets (2.1.0 -> 2.2.0-rc1) - - 2021-07-20 [595c5a5](https://github.com/silverstripe/silverstripe-assets/commit/595c5a5bb5c0f0498ade4316935068a3e84fc177) allow chaining for Upload_Validator (Will Rossiter) - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2024-01-16 [8b427f4e7](https://github.com/silverstripe/silverstripe-framework/commit/8b427f4e74474fb30dc660bac6eda7ecff062b12) Deprecate some unused API (Guy Sartorelli) - - 2023-11-27 [3fe42b84a](https://github.com/silverstripe/silverstripe-framework/commit/3fe42b84afcb74f80b27a4fe0e679c909248496f) Use correct param types (Steve Boyd) - -- silverstripe/cms (5.1.0 -> 5.2.0-rc1) - - 2023-11-02 [e826152f](https://github.com/silverstripe/silverstripe-cms/commit/e826152fd1d316d9aa010764e3ca1ca6f99efa1d) Add new SiteTree.hide_pagetypes configuration (Guy Sartorelli) - -- silverstripe/versioned (2.1.0 -> 2.2.0-rc1) - - 2023-11-05 [4d38781](https://github.com/silverstripe/silverstripe-versioned/commit/4d3878139ebb063e909153436e58290b7b0f081d) Deprecate Versions() having parameter (Steve Boyd) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-rc1) - - 2023-12-12 [7f65d4f](https://github.com/silverstripe/silverstripe-linkfield/commit/7f65d4fdee873fc7746acdc82e3bc2b591138a02) Add new Owner relation for handling permissions (#127) (Guy Sartorelli) - -### Dependencies {#changelog-dependencies} - -- silverstripe/recipe-kitchen-sink (5.1.0 -> 5.2.0-rc1) - - 2023-09-28 [fa436ba](https://github.com/silverstripe/recipe-kitchen-sink/commit/fa436ba2898779121eeb21b5da9c02f7d0445e35) Add silverstripe/linkfield (Steve Boyd) - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2023-11-12 [bc47d65cc](https://github.com/silverstripe/silverstripe-framework/commit/bc47d65cc5120afcb5b7a97c5e89e3267ad4fc5c) Deprecate configurable silent failures in GridField components (Guy Sartorelli) - - 2023-05-31 [7ae903872](https://github.com/silverstripe/silverstripe-framework/commit/7ae90387260e16bc3dd9a1d2bfd92dd9d699c811) Explicitly require psr/http-message ^1 (Steve Boyd) - -- silverstripe/admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-08 [45a41970](https://github.com/silverstripe/silverstripe-admin/commit/45a419702ce4dbe4d170fcef41a4d232274e892e) Update JS dependencies (#1645) (Guy Sartorelli) - - 2023-10-03 [fb996163](https://github.com/silverstripe/silverstripe-admin/commit/fb9961638f172866b991be8574b79fdaa7ca1f43) Update JS dependencies (github-actions) - - 2023-09-25 [48e88977](https://github.com/silverstripe/silverstripe-admin/commit/48e88977445aa0fbbf67c503274bc57e1d9b8117) Bump semver from 5.7.1 to 5.7.2 (dependabot[bot]) - - 2023-09-21 [76faebbe](https://github.com/silverstripe/silverstripe-admin/commit/76faebbe4af9e6f4b865841e8207b36c6871ee12) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-01 [e405cafd](https://github.com/silverstripe/silverstripe-asset-admin/commit/e405cafd6ce9b8533358957bf920574f3d022d60) Update JS dependencies (github-actions) - - 2023-10-01 [f84ff32f](https://github.com/silverstripe/silverstripe-asset-admin/commit/f84ff32fff17ac2c648f292ddad69ebb3a135952) Update JS dependencies (github-actions) - - 2023-09-21 [35ab766e](https://github.com/silverstripe/silverstripe-asset-admin/commit/35ab766e1a8be9712410400f64ba8147435af458) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-01 [848cb54](https://github.com/silverstripe/silverstripe-campaign-admin/commit/848cb541460691d6b552b2a1ccd64c4288f5e6fc) Update JS dependencies (github-actions) - - 2023-10-01 [d28008a](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d28008acf9d7c8eb99ebccefb65666ba1def5924) Update JS dependencies (github-actions) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-rc1) - - 2024-01-01 [ce3efde](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ce3efdeda2bf914d02a33110e6a0de5325571066) Update JS dependencies (github-actions) - - 2023-10-01 [591b938](https://github.com/silverstripe/silverstripe-versioned-admin/commit/591b93816f8f08aadd52d9e5514a7d912327ead9) Update JS dependencies (github-actions) - - 2023-09-21 [82ed02a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/82ed02a7dc22213793d519fa322f46546ca26506) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/cms (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [a6cbf65d](https://github.com/silverstripe/silverstripe-cms/commit/a6cbf65d8ffd9306b2c3c65090198b07c618a361) Update JS dependencies (github-actions) - - 2023-10-01 [7d1d93ab](https://github.com/silverstripe/silverstripe-cms/commit/7d1d93ab896dee4363e628d6430dca4e6a4801bb) Update JS dependencies (github-actions) - - 2023-09-21 [da660479](https://github.com/silverstripe/silverstripe-cms/commit/da66047987f37af2746787f4c7f12cb5542b3691) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - -- silverstripe/session-manager (2.1.0 -> 2.2.0-rc1) - - 2024-01-01 [67555fa](https://github.com/silverstripe/silverstripe-session-manager/commit/67555faab3943e795096cf8e3426b6ef1b25bcc9) Update JS dependencies (github-actions) - - 2023-10-01 [22bf989](https://github.com/silverstripe/silverstripe-session-manager/commit/22bf989756e8b9b2d8701b94ef892ac28cd83357) Update JS dependencies (github-actions) - -- silverstripe-themes/simple (3.3.0 -> 3.3.1) - - 2023-11-17 [d3228db](https://github.com/silverstripe/silverstripe-simple/commit/d3228db60dbbb1463448b1f41cf7f9afc91eae50) Update jQuery to 3.7.1 (Garion Herman) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [64b1ad4](https://github.com/silverstripe/silverstripe-login-forms/commit/64b1ad46392a68ae857d7a1c359a2c4756a0d005) Update JS dependencies (github-actions) - - 2023-10-01 [4647dc2](https://github.com/silverstripe/silverstripe-login-forms/commit/4647dc28967025097b471b5aa62304f5efc90bad) Update JS dependencies (github-actions) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [7435c07](https://github.com/silverstripe/silverstripe-documentconverter/commit/7435c073f5748776a32e901e7176c67973e1c7c7) Update JS dependencies (github-actions) - - 2023-10-01 [ea949aa](https://github.com/silverstripe/silverstripe-documentconverter/commit/ea949aa814cc0d7b09f6b4a263d138f46b252fab) Update JS dependencies (github-actions) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [5212c33](https://github.com/silverstripe/silverstripe-tagfield/commit/5212c33d40dabc42965cbe01024a8310fc4dfe13) Update JS dependencies (github-actions) - - 2023-10-01 [036319b](https://github.com/silverstripe/silverstripe-tagfield/commit/036319be08876610235b05e411db4cee01dccad2) Update JS dependencies (github-actions) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0-rc1) - - 2024-01-08 [8a4a0b1](https://github.com/silverstripe/silverstripe-taxonomy/commit/8a4a0b184745215b6a75dae98df9e7d16d6fc2bf) Update deps to specify new auto-scaffolded has-one field (Steve Boyd) - -- silverstripe/blog (4.1.0 -> 4.2.0-rc1) - - 2024-01-01 [6351690](https://github.com/silverstripe/silverstripe-blog/commit/63516905a4f8f0282bf62e5d964c8bdd74e63f08) Update JS dependencies (github-actions) - - 2023-10-19 [2ef3981](https://github.com/silverstripe/silverstripe-blog/commit/2ef3981000210747f5853c3e1168dd792dd3aeb1) Bump @babel/traverse from 7.23.0 to 7.23.2 (dependabot[bot]) - - 2023-10-01 [e363b0e](https://github.com/silverstripe/silverstripe-blog/commit/e363b0e59035fa232fe1afa5205e2fdbcf952ae0) Update JS dependencies (github-actions) - -- silverstripe/contentreview (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [4124322](https://github.com/silverstripe/silverstripe-contentreview/commit/41243227dc3ea579147bff89bafcbcffcea77cb4) Update JS dependencies (github-actions) - - 2023-10-01 [1f750b9](https://github.com/silverstripe/silverstripe-contentreview/commit/1f750b91fe7972bafc4afeac611f10d329c5cbb2) Update JS dependencies (github-actions) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [429dfd2](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/429dfd2a67a3cdf65a9e13c78f7ff085c4ee6d6f) Update JS dependencies (github-actions) - - 2023-10-07 [f3d77c4](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/f3d77c453dfaf8779656d9c9d77ebce02b264322) Bump postcss from 8.4.24 to 8.4.31 (dependabot[bot]) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-rc1) - - 2023-08-31 [85e3f97](https://github.com/symbiote/silverstripe-advancedworkflow/commit/85e3f97213a4c150bd57d1d8ddce72000cc1db73) Update JS dependencies (Steve Boyd) - -- silverstripe/segment-field (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [16a2718](https://github.com/silverstripe/silverstripe-segment-field/commit/16a2718bda6433335774e1e03be26de03ece5c5b) Update JS dependencies (github-actions) - - 2023-10-01 [7986025](https://github.com/silverstripe/silverstripe-segment-field/commit/79860256f4634eee44255b528d2279a89910341f) Update JS dependencies (github-actions) - -- silverstripe/userforms (6.1.0 -> 6.2.0-rc1) - - 2024-01-01 [7796ec5](https://github.com/silverstripe/silverstripe-userforms/commit/7796ec53bbe73d492d9e52e2fb8a71b286ecee78) Update JS dependencies (github-actions) - - 2023-10-01 [0a33a7e](https://github.com/silverstripe/silverstripe-userforms/commit/0a33a7e5dfc14c13a02dbe5911e525d413ea2415) Update JS dependencies (github-actions) - -- silverstripe/externallinks (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [01104bf](https://github.com/silverstripe/silverstripe-externallinks/commit/01104bf66916a4d7404966ae96ae9ef30c4d71d7) Update JS dependencies (github-actions) - - 2023-10-01 [6b6b05e](https://github.com/silverstripe/silverstripe-externallinks/commit/6b6b05ee0a6ec31732a712ffd2ade45d54dc227d) Update JS dependencies (github-actions) - - 2023-09-29 [204e7c5](https://github.com/silverstripe/silverstripe-externallinks/commit/204e7c5ee0ab0235f806effcf38358587bb9f38d) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - -- silverstripe/sitewidecontent-report (4.1.0 -> 4.2.0-rc1) - - 2024-01-01 [d0dc6d0](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/d0dc6d07ede215a15e012f70879536bd131414e4) Update JS dependencies (github-actions) - - 2023-10-01 [57805fd](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/57805fd1e50d0c987fc053e4d1b2e7684300d4a1) Update JS dependencies (github-actions) - -- bringyourownideas/silverstripe-maintenance (3.0.1 -> 3.1.0-rc1) - - 2023-08-31 [e4014d7](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e4014d78209edabd965817a993323644c7e3af4f) Update JS dependencies (Steve Boyd) - - 2023-07-11 [efba968](https://github.com/bringyourownideas/silverstripe-maintenance/commit/efba968eb97c261e3f675135815fcfe4013a0efc) Update eslint module (#200) (Sabina Talipova) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [d5108cb](https://github.com/silverstripe/silverstripe-elemental/commit/d5108cb59a084c3354397a9e357b1a047ef73857) Update JS dependencies (github-actions) - - 2023-10-01 [f425d9d](https://github.com/silverstripe/silverstripe-elemental/commit/f425d9dbb45e9f5b097eb1aef3cd208acea7fd69) Update JS dependencies (github-actions) - - 2023-09-21 [b84791f](https://github.com/silverstripe/silverstripe-elemental/commit/b84791f124ada2ef63e77f6172c94c6a09a9bcbd) Bump graphql from 16.8.0 to 16.8.1 (dependabot[bot]) - - 2023-09-04 [9ea6ead](https://github.com/silverstripe/silverstripe-elemental/commit/9ea6ead57ac68ae79d81093dc3330d195a5daed0) Update JS dependencies (github-actions) - -- silverstripe/elemental-bannerblock (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [f31ca86](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/f31ca86c3db6c8df84fc10e61095d4b35f2e705a) Update JS dependencies (github-actions) - - 2023-10-19 [59a81dc](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/59a81dcc10ee17b715a1de14ec61ae92d21b7fe9) Bump @babel/traverse from 7.22.10 to 7.23.2 (dependabot[bot]) - - 2023-10-08 [7166c18](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7166c183fd4d9a13aeffd02ae2eb45ac4cd4a7c2) Bump postcss from 8.4.28 to 8.4.31 (dependabot[bot]) - -- silverstripe/auditor (3.0.0 -> 3.1.0-rc1) - - 2024-03-19 [537dcd3](https://github.com/silverstripe/silverstripe-auditor/commit/537dcd3a015819955224e521676873f95093751d) Use the canonical repository for proxy-db (#49) (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [d1ce73e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/d1ce73ea82f35db4eb7f61a24b3c76d7ede4acfb) Update JS dependencies (github-actions) - - 2023-10-01 [5e14c36](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/5e14c3667fd5c60485f98d09e267421d0b9acd45) Update JS dependencies (github-actions) - -- silverstripe/mfa (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [9cce064](https://github.com/silverstripe/silverstripe-mfa/commit/9cce064d70547617857d9a2bfdb57b3963429053) Update JS dependencies (github-actions) - - 2023-10-01 [9ed339d](https://github.com/silverstripe/silverstripe-mfa/commit/9ed339ddc438d3d3c0604918a662409f6429875f) Update JS dependencies (github-actions) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [c6ba6c4](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/c6ba6c47754d7587f1972d4545a21e2977ab4169) Update JS dependencies (github-actions) - - 2023-10-01 [2cbe9d5](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/2cbe9d56d7dfa57f6c1755693d843d1a813b69e2) Update JS dependencies (github-actions) - -- silverstripe/realme (5.2.0 -> 5.3.0-rc1) - - 2024-01-01 [08baf2d](https://github.com/silverstripe/silverstripe-realme/commit/08baf2de745e4bf5ad9dae86c22ce2bdbfe946fb) Update JS dependencies (github-actions) - - 2023-10-01 [77345e7](https://github.com/silverstripe/silverstripe-realme/commit/77345e76ed6278a77598735439c7bb637f731d02) Update JS dependencies (github-actions) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0-rc1) - - 2024-01-01 [c2c7bf0](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/c2c7bf05044e8ad413bc005205fd472a713be22c) Update JS dependencies (github-actions) - - 2023-10-19 [3e39b93](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/3e39b93e11dfa0e16dc7a3a423cffe45be3e0b67) Bump @babel/traverse from 7.22.10 to 7.23.2 (dependabot[bot]) - - 2023-10-08 [f5b3005](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/f5b300516a1c4990bacf84d603a177710078445d) Bump postcss from 8.4.28 to 8.4.31 (dependabot[bot]) - -- silverstripe/subsites (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [17a729f](https://github.com/silverstripe/silverstripe-subsites/commit/17a729f04c70b0e928c5b914b3f543b475420c13) Update JS dependencies (github-actions) - - 2023-10-01 [e56425e](https://github.com/silverstripe/silverstripe-subsites/commit/e56425e548a09d3d93cd3f44bdfd657123c0210e) Update JS dependencies (github-actions) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0-rc1) - - 2024-01-01 [a139526](https://github.com/silverstripe/silverstripe-lumberjack/commit/a13952696a7baf847a53d0d36f38c8796dfb30af) Update JS dependencies (github-actions) - - 2023-10-01 [4056a91](https://github.com/silverstripe/silverstripe-lumberjack/commit/4056a918b110bccfab668c06c070147f1d1dbe7e) Update JS dependencies (github-actions) - - 2023-09-29 [1655e8b](https://github.com/silverstripe/silverstripe-lumberjack/commit/1655e8b4cc49fed12041801fb57b20cb623aec94) Bump word-wrap from 1.2.3 to 1.2.5 (dependabot[bot]) - - 2023-07-11 [b9a2082](https://github.com/silverstripe/silverstripe-lumberjack/commit/b9a20827ff9c93fc4bad4700aae498be3fc8e51d) Update eslint module (#124) (Sabina Talipova) - -- cwp/starter-theme (4.0.0 -> 4.1.0-rc1) - - 2024-01-08 [d762ea9](https://github.com/silverstripe/cwp-starter-theme/commit/d762ea99c36ab91758a47b7aa82788140b8e51fc) Update JS dependencies (#240) (Guy Sartorelli) - - 2024-01-08 [fdf930e](https://github.com/silverstripe/cwp-starter-theme/commit/fdf930e73262e82a23736c546f85fe26cabe866f) Bump @babel/traverse from 7.23.0 to 7.23.7 (dependabot[bot]) - - 2023-10-28 [6a2dff8](https://github.com/silverstripe/cwp-starter-theme/commit/6a2dff8889e6229f925121153e5c884293abc814) Bump browserify-sign from 4.2.1 to 4.2.2 (dependabot[bot]) - - 2023-10-03 [5de9fba](https://github.com/silverstripe/cwp-starter-theme/commit/5de9fbaacdb0485eafbdaa27763a57b43bb1e409) Update JS dependencies (#233) (github-actions[bot]) - - 2023-08-31 [b79bcbd](https://github.com/silverstripe/cwp-starter-theme/commit/b79bcbdfadf307369f2a5c21962cbcec167fbbdb) Bump minimatch from 3.0.4 to 3.0.8 (dependabot[bot]) - - 2023-08-29 [0adbddc](https://github.com/silverstripe/cwp-starter-theme/commit/0adbddc5468e55885df159f13c35ce356c317347) Bump semver from 5.7.1 to 5.7.2 (dependabot[bot]) - - 2023-08-28 [2a0d10f](https://github.com/silverstripe/cwp-starter-theme/commit/2a0d10f500e186004ca40f4be3ede1610637834c) Bump url-parse from 1.5.1 to 1.5.10 (dependabot[bot]) - - 2023-08-28 [2ee7c94](https://github.com/silverstripe/cwp-starter-theme/commit/2ee7c941142c6b56012725486eb0d7aefd2b2974) Bump eventsource from 1.0.7 to 1.1.2 (dependabot[bot]) - - 2023-08-28 [8b3912f](https://github.com/silverstripe/cwp-starter-theme/commit/8b3912fa1d79b4a1cd17ef92de8ec4f1884f54eb) Bump follow-redirects from 1.13.0 to 1.15.2 (dependabot[bot]) - - 2023-08-28 [3bec8aa](https://github.com/silverstripe/cwp-starter-theme/commit/3bec8aaa6f6a4b76fb24f1f013dc50e9a7499096) Bump async from 2.6.3 to 2.6.4 (dependabot[bot]) - - 2023-08-28 [e8cb249](https://github.com/silverstripe/cwp-starter-theme/commit/e8cb249640c2a75dd4607d13d86ccc7f94db4647) Bump path-parse from 1.0.6 to 1.0.7 (dependabot[bot]) - - 2023-08-28 [83b1e25](https://github.com/silverstripe/cwp-starter-theme/commit/83b1e255a596c109791af6d7b2016d0ff423d2d8) Bump hosted-git-info from 2.8.5 to 2.8.9 (dependabot[bot]) - - 2023-08-28 [743463a](https://github.com/silverstripe/cwp-starter-theme/commit/743463a29ec371690722f5ce5a322f8134a91f72) Bump tar from 4.4.15 to 4.4.19 (dependabot[bot]) - - 2023-08-28 [f0ef7f0](https://github.com/silverstripe/cwp-starter-theme/commit/f0ef7f05ba319e0794e5d179ddeec19507b07aeb) Bump color-string from 1.5.3 to 1.9.1 (dependabot[bot]) - - 2023-08-28 [5a84ae2](https://github.com/silverstripe/cwp-starter-theme/commit/5a84ae2c4ef6e2951aa881d67e1800df5b18bf16) Bump ajv from 6.10.2 to 6.12.3 (dependabot[bot]) - - 2023-08-28 [81c5a23](https://github.com/silverstripe/cwp-starter-theme/commit/81c5a23e2d4d6c7722c80951ede0536dbb1677eb) Bump lodash from 4.17.19 to 4.17.21 (dependabot[bot]) - - 2023-08-28 [167a10f](https://github.com/silverstripe/cwp-starter-theme/commit/167a10f5d3a4635a10664df36df2ffc862cbcc36) Bump decode-uri-component from 0.2.0 to 0.2.2 (dependabot[bot]) - - 2023-08-28 [eeee5c7](https://github.com/silverstripe/cwp-starter-theme/commit/eeee5c77d3fa8bd210f729fe8c8c01ac8379763e) Bump json5 from 1.0.1 to 1.0.2 (dependabot[bot]) - - 2022-12-10 [c3c8d4a](https://github.com/silverstripe/cwp-starter-theme/commit/c3c8d4ac9e6cbbf3f2e2e8b876237d30be6c1653) Bump express from 4.17.1 to 4.18.2 (dependabot[bot]) - -- cwp/agency-extensions (3.1.0 -> 3.2.0-rc1) - - 2024-01-01 [0b3354c](https://github.com/silverstripe/cwp-agencyextensions/commit/0b3354c3fad9a086dfbd7d2598c96e84f398502a) Update JS dependencies (github-actions) - - 2023-10-01 [db01219](https://github.com/silverstripe/cwp-agencyextensions/commit/db01219a229ba11c443855c024907fd8bb7c65a2) Update JS dependencies (github-actions) - -- cwp/watea-theme (4.0.0 -> 4.1.0-rc1) - - 2024-01-01 [415858c](https://github.com/silverstripe/cwp-watea-theme/commit/415858cca4857f2bbe5ff1323ebf32511c14b3ff) Update JS dependencies (github-actions) - - 2023-10-01 [c407d54](https://github.com/silverstripe/cwp-watea-theme/commit/c407d54db397abcd8cb2bd9a3afa6364b62adb3d) Update JS dependencies (github-actions) - - 2023-08-29 [902113b](https://github.com/silverstripe/cwp-watea-theme/commit/902113b635a5eec72c62bf8b24d8e2dc45254226) build(deps): bump semver from 5.6.0 to 5.7.2 (dependabot[bot]) - - 2023-08-28 [78c47a5](https://github.com/silverstripe/cwp-watea-theme/commit/78c47a53a8b0277719b8b8bb459c57f6805bd4cb) build(deps): bump dot-prop from 4.2.0 to 4.2.1 (dependabot[bot]) - - 2023-08-28 [3f0de59](https://github.com/silverstripe/cwp-watea-theme/commit/3f0de59b4f62706295e20cb25d71e8dfecd6e709) build(deps): bump path-parse from 1.0.6 to 1.0.7 (dependabot[bot]) - - 2023-08-28 [878cc6a](https://github.com/silverstripe/cwp-watea-theme/commit/878cc6a8456886dd91051087ee593e12681907b4) build(deps): bump hosted-git-info from 2.7.1 to 2.8.9 (dependabot[bot]) - - 2023-08-28 [8781c5a](https://github.com/silverstripe/cwp-watea-theme/commit/8781c5aee9f5f91ab47280ef936ccfca7edc1004) build(deps): bump json5 from 1.0.1 to 1.0.2 (dependabot[bot]) - -- symbiote/silverstripe-multivaluefield (6.0.2 -> 6.1.0-rc1) - - 2023-07-11 [99564be](https://github.com/symbiote/silverstripe-multivaluefield/commit/99564be8c783cf7fd4e2778ec8218a97b8bb6645) Update eslint module (#97) (Sabina Talipova) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-rc1) - - 2024-01-08 [bddcb6e](https://github.com/silverstripe/silverstripe-linkfield/commit/bddcb6e098e5941d7c80031ae6583331242c28cc) Explicitly require framework ^5.2 (Steve Boyd) - -### Documentation {#changelog-documentation} - -- silverstripe/session-manager (2.1.0 -> 2.2.0-rc1) - - 2023-11-05 [2305049](https://github.com/silverstripe/silverstripe-session-manager/commit/23050493b4f0b354e567f64c19a5ab8a1d655822) Fix link (Steve Boyd) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-rc1) - - 2023-11-20 [946d92a](https://github.com/silverstripe/silverstripe-tagfield/commit/946d92a7e8b5e2e1e3b9e2aeea54291d30e249e3) Update readme example (Steve Boyd) - -- silverstripe/userforms (6.1.0 -> 6.2.0-rc1) - - 2024-02-01 [c893194](https://github.com/silverstripe/silverstripe-userforms/commit/c89319477561e60ce9752ffc62f12a74fa55522b) Update syntax for callout blocks (#1263) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-rc1) - - 2023-08-30 [fe95f59](https://github.com/silverstripe/silverstripe-elemental/commit/fe95f59b2b6768f2ee6c823e6972b1e070eded71) fix not needed duplication when restoring a page from archived state (Aljoša Balažic) - -- silverstripe/developer-docs (5.1.0 -> 5.2.0-rc1) - - 2024-03-20 [baeeb636](https://github.com/silverstripe/developer-docs/commit/baeeb636d938309af6e463706b372a11098c593b) Minor change to changelog regarding PHP 8.3 (#483) (Guy Sartorelli) - - 2024-03-18 [7e4e3460](https://github.com/silverstripe/developer-docs/commit/7e4e34607d7825768dbc326cf135933d3f69a47f) Readability and writing style review of 5.2.0 changelog (Guy Sartorelli) - - 2024-03-18 [a5f55891](https://github.com/silverstripe/developer-docs/commit/a5f558919adabb73dd4c6eb017ec7ec91fd6721d) Add more changes to the changelog (Guy Sartorelli) - - 2024-03-18 [6cbc0fa1](https://github.com/silverstripe/developer-docs/commit/6cbc0fa1940d0f89458cb45a3dbdd4b564585940) Update notes about linkfield migration guides (Guy Sartorelli) - - 2024-03-14 [f9a73555](https://github.com/silverstripe/developer-docs/commit/f9a73555b2e6dbdebc4cd58cc404be3d0344132c) Add PHP8.3 support to the changelog. (#480) (Guy Sartorelli) - - 2024-03-12 [ee99a449](https://github.com/silverstripe/developer-docs/commit/ee99a4490101f8534c5d6fa4423117c15839c162) change and/or to or (Steve Boyd) - - 2024-03-11 [9da6a80d](https://github.com/silverstripe/developer-docs/commit/9da6a80d5e981512e3892dc150e94911c75df73a) Elemental versioned badge (Steve Boyd) - - 2024-03-11 [37710318](https://github.com/silverstripe/developer-docs/commit/3771031889690be0b667bf35412d1f59a02642f2) Move 5.2.0-beta1 changelog to proper directory (Steve Boyd) - - 2024-03-05 [43b0baf1](https://github.com/silverstripe/developer-docs/commit/43b0baf1ebfa35e9d69e731bc5a73ed1907c87cb) Update image path (Steve Boyd) - - 2024-03-05 [2260d6dd](https://github.com/silverstripe/developer-docs/commit/2260d6dd8cb1cac9d6d697ed0b78a3514e4a6d0a) Fix 5.2.0-beta1 changelog (Steve Boyd) - - 2024-03-04 [cc5be721](https://github.com/silverstripe/developer-docs/commit/cc5be721e3a0c0c897eec624f15b973a81185fc0) Add composer runtime api mention (#464) (Thomas Portelange) - - 2024-02-29 [164b66f1](https://github.com/silverstripe/developer-docs/commit/164b66f1461b3a1975f9acc4b0e3f868d7c22b1a) Refer to release policies to avoid stale information (#462) (Guy Sartorelli) - - 2024-02-28 [6bc37ea3](https://github.com/silverstripe/developer-docs/commit/6bc37ea398725e9c4c18c773e502e88fae88b0c1) Document LTS support for databases (Guy Sartorelli) - - 2024-02-23 [621a9f40](https://github.com/silverstripe/developer-docs/commit/621a9f409747a48026978670e9aaea41c6ae5c0b) Fix placement of urlfield docs (#460) (Guy Sartorelli) - - 2024-02-20 [aa9ef537](https://github.com/silverstripe/developer-docs/commit/aa9ef537cfcf1d6a21027c81e54f95a406d1161e) Document manipulating eager loading queries (#456) (Guy Sartorelli) - - 2024-02-18 [22fd700d](https://github.com/silverstripe/developer-docs/commit/22fd700d374ebb1c2dd581fe2b90458afd95a273) Document official support for linkfield (#457) (Guy Sartorelli) - - 2024-02-08 [fee67b67](https://github.com/silverstripe/developer-docs/commit/fee67b6775c2476d20b78714acb8f5be4f87e2ca) Add new query trace comment to changelog (#404) (Guy Sartorelli) - - 2024-02-02 [b8012e86](https://github.com/silverstripe/developer-docs/commit/b8012e86993b31abb37425bbddcea54c19cf5962) Document using symfony/validator (#454) (Guy Sartorelli) - - 2024-02-02 [e5f5434b](https://github.com/silverstripe/developer-docs/commit/e5f5434bc708a1fa43a7a8bf82393e2ad159f2a8) Update syntax for callout blocks (#455) (Guy Sartorelli) - - 2024-02-01 [e77dd474](https://github.com/silverstripe/developer-docs/commit/e77dd474f1f7f0f4b1fdd3e3b0335357e1e508de) Update syntax for callout blocks (#452) (Guy Sartorelli) - - 2024-02-01 [c47892db](https://github.com/silverstripe/developer-docs/commit/c47892db13f880561b6f205a28331ceeec286163) Update syntax for callout blocks (#449) (Guy Sartorelli) - - 2024-01-30 [d9735932](https://github.com/silverstripe/developer-docs/commit/d973593293b56697bc43a22fc5e5a06b2bc9b3cb) Add UrlField (Steve Boyd) - - 2024-01-29 [f5a095af](https://github.com/silverstripe/developer-docs/commit/f5a095af472c7a07620f27505062e1d76b28d227) CMS JSON API's (Steve Boyd) - - 2024-01-29 [9f5ea80e](https://github.com/silverstripe/developer-docs/commit/9f5ea80e5582bbe7d648873f10eabea74cf956f0) Document PHPDoc as a PHP coding standard (#448) (Guy Sartorelli) - - 2024-01-25 [3136033f](https://github.com/silverstripe/developer-docs/commit/3136033fb9920698fd7048fd050e0ce0131f1f57) Add description for type/other label and clarify affects labels (Steve Boyd) - - 2024-01-18 [8ec4dfd6](https://github.com/silverstripe/developer-docs/commit/8ec4dfd616e83d50f69dec7e2a7a06f7b576d6f4) fix minor typo on class name in code sample (Ravindu) - - 2024-01-18 [04437708](https://github.com/silverstripe/developer-docs/commit/044377087e92cb44c22fee44fee6eb168346c5c9) Document making variants with different file extensions (Guy Sartorelli) - - 2024-01-17 [65b1ab1c](https://github.com/silverstripe/developer-docs/commit/65b1ab1c13d71173dddb4e9eff2f1025b61c7d6c) Refactor docs about file manipulation into its own page (Guy Sartorelli) - - 2024-01-17 [81574844](https://github.com/silverstripe/developer-docs/commit/815748443feb91317339e85b01bb95d0863d4b51) Document deprecated API (#440) (Guy Sartorelli) - - 2024-01-14 [9fffd6d8](https://github.com/silverstripe/developer-docs/commit/9fffd6d865bff22cad60b3191f5c5fe85e13fa72) Document added generic types (Guy Sartorelli) - - 2024-01-08 [980c4b95](https://github.com/silverstripe/developer-docs/commit/980c4b95e8367e5ab8095f6e774637ca805cb180) Document new redirector 404 in changelog (#437) (Guy Sartorelli) - - 2024-01-08 [3ad9dce5](https://github.com/silverstripe/developer-docs/commit/3ad9dce5af4747ef5588c76097e90ad4d411dc27) Document new config for splitting summary sentences (#428) (Guy Sartorelli) - - 2024-01-08 [c3f61e59](https://github.com/silverstripe/developer-docs/commit/c3f61e595c33b0822c518a5052fa7887f68145a6) Document changes to asset admin file size config (#430) (Guy Sartorelli) - - 2024-01-08 [d01a1eb4](https://github.com/silverstripe/developer-docs/commit/d01a1eb440a4841f379a02bb30c4440a646c6ba7) Fix spelling issue (#436) (Sabina Talipova) - - 2024-01-07 [52c71d71](https://github.com/silverstripe/developer-docs/commit/52c71d717c81799f9bb73697332d8bc22fc89186) `Update changelog for .brf support` (Ed Wilde) - - 2023-12-19 [1d517716](https://github.com/silverstripe/developer-docs/commit/1d517716ff78f317ea670495af1037538ee5fb7f) Auto scaffolding has_one relations (Steve Boyd) - - 2023-12-18 [a0054052](https://github.com/silverstripe/developer-docs/commit/a0054052de182fe195de894eec7cd1b7f867b939) Document lazy loading (Guy Sartorelli) - - 2023-12-14 [ea47bc59](https://github.com/silverstripe/developer-docs/commit/ea47bc5971447a451badb86d9b35bde77ab24d91) Document another exception to catch when dealing with email (#421) (Guy Sartorelli) - - 2023-12-14 [e1cc2c28](https://github.com/silverstripe/developer-docs/commit/e1cc2c28dbba5aceb6ab7c4a9d63bb9cc7bc28a6) Add SearchableDropdownField to 5.2.0 changelog (Steve Boyd) - - 2023-12-12 [e2c2ff19](https://github.com/silverstripe/developer-docs/commit/e2c2ff19c73a3af676a8dce57856e32f3d60618e) Update supported PHP version for CMS 5.2 (Sabina Talipova) - - 2023-12-11 [fd9af106](https://github.com/silverstripe/developer-docs/commit/fd9af106dc54690c388b4ff0c1a077dd0b5f6ce3) Document multi-reciprocal has_one relations (#417) (Guy Sartorelli) - - 2023-12-11 [137bdaa0](https://github.com/silverstripe/developer-docs/commit/137bdaa0a79253966caf2c46e7fd17c3e456e28e) Update changelog for security patches (Guy Sartorelli) - - 2023-12-10 [3657480d](https://github.com/silverstripe/developer-docs/commit/3657480d00064ced7eb47dd9c240687dfd78e775) Document gridfield with arbitrary data (Guy Sartorelli) - - 2023-12-10 [78e53226](https://github.com/silverstripe/developer-docs/commit/78e5322660f63c7096baaa9e96017163d9aa0daa) Nested RequestHandlers (Steve Boyd) - - 2023-11-29 [1a514d10](https://github.com/silverstripe/developer-docs/commit/1a514d1070a1303b6135a5d8dcf43a5aa617cce7) Document new staticpublishqueue configuration (#413) (Guy Sartorelli) - - 2023-11-27 [7aaf5358](https://github.com/silverstripe/developer-docs/commit/7aaf5358c96a8293a3f83f661d229ed9382edc0b) Document using GridField with arbitrary data (Guy Sartorelli) - - 2023-11-26 [2dcd339c](https://github.com/silverstripe/developer-docs/commit/2dcd339c73ab86b9fa0eed3d57f4709e8549d3da) Update coding conventions (Steve Boyd) - - 2023-11-26 [0786b201](https://github.com/silverstripe/developer-docs/commit/0786b2014bafc57f679432bd77440ae1bd7a8873) Add SortPlugin to the docs (Sabina Talipova) - - 2023-11-23 [554e4f0c](https://github.com/silverstripe/developer-docs/commit/554e4f0c4fa87154e51b27c859a63e62c893d13c) Include method signatures in public API definition (Guy Sartorelli) - - 2023-11-22 [51cba6cc](https://github.com/silverstripe/developer-docs/commit/51cba6cc5474e33b41154ca047791fc668ce9060) LogicException when no react component (Steve Boyd) - - 2023-11-14 [d9893215](https://github.com/silverstripe/developer-docs/commit/d989321526f521d40ee567658b67548ef2325ea6) Document new dev admin permissions (#399) (Guy Sartorelli) - - 2023-11-07 [6f0861b0](https://github.com/silverstripe/developer-docs/commit/6f0861b0117147c7912ac6ebf9aa3e663c2539cb) Select all and deselect all files (Steve Boyd) - - 2023-11-06 [3b59d4e2](https://github.com/silverstripe/developer-docs/commit/3b59d4e23b28da107f96a98523e0f54f8b6ef113) Deprecated $having parameter (Steve Boyd) - - 2023-11-02 [adb81fb1](https://github.com/silverstripe/developer-docs/commit/adb81fb19bd5b0387b7ebbfe460e5371d349e896) prefix (Steve Boyd) - - 2023-11-02 [5b23e3e7](https://github.com/silverstripe/developer-docs/commit/5b23e3e72c3552a00a10527c33e514bf3a5b0cb3) Remove references to old Addons website (#389) (Maxime Rainville) - - 2023-11-02 [7c7ed947](https://github.com/silverstripe/developer-docs/commit/7c7ed9470c56d7a9c8df49b8a62a13040062da06) Document new community roles (Guy Sartorelli) - - 2023-11-02 [c04c2e03](https://github.com/silverstripe/developer-docs/commit/c04c2e039dfbef58416baa01406c3a7b8eb2fe05) Document new hide_pagetypes config (Guy Sartorelli) - - 2023-10-25 [951c9c81](https://github.com/silverstripe/developer-docs/commit/951c9c817efc6fbebeddcefe84186070cc64e41a) Update 01_Code.md (Andrew Paxley) - - 2023-10-25 [f708c403](https://github.com/silverstripe/developer-docs/commit/f708c40355752dc64c998f125f38700990e2252f) Restructure the contributing docs (#385) (Guy Sartorelli) - - 2023-10-24 [3dcdc188](https://github.com/silverstripe/developer-docs/commit/3dcdc18866eeba26b453a0c252999b92baf12e5e) Update maintainer guidelines (#383) (Guy Sartorelli) - - 2023-10-24 [8566c1f0](https://github.com/silverstripe/developer-docs/commit/8566c1f040e86e9777291717c554d04ed902c316) Update contributing code docs (#379) (Guy Sartorelli) - - 2023-10-24 [caf0c452](https://github.com/silverstripe/developer-docs/commit/caf0c452e83f6ccd7c9bf236df04be31824e72c5) `Specify what makes a "core" module different (#384)` (Guy Sartorelli) - - 2023-10-24 [94aff599](https://github.com/silverstripe/developer-docs/commit/94aff5999f00c58a78ec2161b016d70564b727bb) Update triage resources (#382) (Guy Sartorelli) - - 2023-10-24 [a6d4f746](https://github.com/silverstripe/developer-docs/commit/a6d4f7465a2a4ec73eb8f0f1bfa0e74c2c395e14) Update documentation about documenation (#380) (Guy Sartorelli) - - 2023-10-24 [4bdfce04](https://github.com/silverstripe/developer-docs/commit/4bdfce04189842c99fce835703800a3165748de9) Update issues/bugs page (#378) (Guy Sartorelli) - - 2023-10-24 [71785917](https://github.com/silverstripe/developer-docs/commit/717859176a0b8b1826261ce82b5089909fa053c0) Update translation doc (#381) (Guy Sartorelli) - - 2023-10-19 [4e669f12](https://github.com/silverstripe/developer-docs/commit/4e669f12c5fcd6cc88e54f31f8a11accc03f70dd) Create new users with random passwords (Steve Boyd) - - 2023-10-17 [36f9313a](https://github.com/silverstripe/developer-docs/commit/36f9313aed059a83d2b8d386b2b26a5006b304d9) Update eagerloading docs to explicitly say no relation filter (#376) (Guy Sartorelli) - - 2023-10-17 [a9966929](https://github.com/silverstripe/developer-docs/commit/a99669290e6fb2a4c131c4ed7d94c8eed3771788) Mention that SS_TRUSTED_PROXY_IPS supports subnets (Johannes Hammersen) - - 2023-10-02 [c6525f22](https://github.com/silverstripe/developer-docs/commit/c6525f22b95158ebaee3b57ff9df6f9be23a9cf8) Document ORM changes for CMS 5.2 (#351) (Guy Sartorelli) - - 2023-09-25 [ce291746](https://github.com/silverstripe/developer-docs/commit/ce2917464f19de9a856cd1295146c1c90840e1f2) add errorpage allowed_error_codes to 5.2.0 changelog (Andrew Paxley) - - 2023-09-19 [2177d6a9](https://github.com/silverstripe/developer-docs/commit/2177d6a960cd26f0ba03b30ac2d67222e3cbee98) Document deprecation of old password encryptors (#348) (Guy Sartorelli) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-rc1) - - 2024-02-25 [d820d0b](https://github.com/silverstripe/silverstripe-linkfield/commit/d820d0b98a04656b9bfb205c8c231f7c08d4b50e) Fix docs links in readme (Guy Sartorelli) - - 2024-02-20 [7c11469](https://github.com/silverstripe/silverstripe-linkfield/commit/7c114696b6faf41ab2982892f4db8ada894c52b7) Link field User manual (Sabina Talipova) - - 2024-02-18 [a79f97d](https://github.com/silverstripe/silverstripe-linkfield/commit/a79f97d680ec4bb425579ff768c60f3a76d20ef2) Provide proper developer documentation (#224) (Guy Sartorelli) - - 2024-02-13 [2b0eef1](https://github.com/silverstripe/silverstripe-linkfield/commit/2b0eef18e79a20c14c02ec8116797b2069104f51) Automatic publishing of linked pages and files (Steve Boyd) - - 2024-02-12 [c5f91c4](https://github.com/silverstripe/silverstripe-linkfield/commit/c5f91c4ae92378a59f4f09be2c68f74d873490e1) Update PHPDocs (Guy Sartorelli) - - 2023-12-05 [22fcdcc](https://github.com/silverstripe/silverstripe-linkfield/commit/22fcdcc1415e09e775e47fe081f1921e4ff83ac2) Update PHPDoc for link models (#136) (Guy Sartorelli) - - 2023-12-05 [5b86669](https://github.com/silverstripe/silverstripe-linkfield/commit/5b866698633c83d0c1bb533f126a53eb20910f89) Update sentence in README (Steve Boyd) - - 2023-11-29 [cc21f8a](https://github.com/silverstripe/silverstripe-linkfield/commit/cc21f8acc3fe3b0ba04b6585763372596aca1065) Update README (Guy Sartorelli) - -### Translations {#changelog-translations} - -- silverstripe/assets (2.1.0 -> 2.2.0-rc1) - - 2024-02-08 [577d3f5](https://github.com/silverstripe/silverstripe-assets/commit/577d3f5eaf2c2613d5fba90073039dd13cdd5747) Update translations (#591) (Guy Sartorelli) - - 2024-02-07 [65c5d2a](https://github.com/silverstripe/silverstripe-assets/commit/65c5d2a88975723ca145006587dff8d343174138) Update translations (#590) (Guy Sartorelli) - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2024-02-08 [c40602957](https://github.com/silverstripe/silverstripe-framework/commit/c40602957310e265355dfc3b5b6fc1d0ba905832) Update translations (#11130) (Guy Sartorelli) - - 2024-02-07 [f952183cd](https://github.com/silverstripe/silverstripe-framework/commit/f952183cdf6c066d1e1d3cd1d006752a21f258e5) Update translations (#11126) (Guy Sartorelli) - - 2024-02-06 [26273bf37](https://github.com/silverstripe/silverstripe-framework/commit/26273bf3719dbcf7c1f57f893acddee76c551d25) Update translations (#11125) (Guy Sartorelli) - - 2023-11-06 [3c98264f8](https://github.com/silverstripe/silverstripe-framework/commit/3c98264f82f539680de2c2a48d6b2a16a4599bc9) Update translations (Steve Boyd) - - 2023-11-03 [5ff6811b0](https://github.com/silverstripe/silverstripe-framework/commit/5ff6811b007bc5a95786324e87db60e78fd2cba7) Update translations (Steve Boyd) - -- silverstripe/mimevalidator (3.0.0 -> 3.1.0-rc1) - - 2024-02-07 [7fd4a96](https://github.com/silverstripe/silverstripe-mimevalidator/commit/7fd4a964eac6f696a88a4af0abcc57d7db3e745b) Update translations (#72) (Guy Sartorelli) - -- silverstripe/admin (2.1.0 -> 2.2.0-rc1) - - 2024-03-06 [e2a7f456](https://github.com/silverstripe/silverstripe-admin/commit/e2a7f45605595cbe3be71250b9b92f506a3e4df5) `Add missing js translation strings to src/en.json file` (Peter Schiffer) - - 2024-02-26 [09b51af1](https://github.com/silverstripe/silverstripe-admin/commit/09b51af14ad5610fec89ca75977e0dbdef08853e) `Make Search options string translatable in SearchBox.js` (Peter Schiffer) - - 2024-02-08 [b4f13ed4](https://github.com/silverstripe/silverstripe-admin/commit/b4f13ed47830cfff78732dfa449bb243d7aa208f) Update translations (#1675) (Guy Sartorelli) - - 2024-02-07 [29e978be](https://github.com/silverstripe/silverstripe-admin/commit/29e978be4660147aa82958788053d10af6f05da3) Update translations (#1673) (Guy Sartorelli) - - 2023-11-06 [1c78d8f6](https://github.com/silverstripe/silverstripe-admin/commit/1c78d8f6596f318ca5d75985f80d92c3ee9ae922) Update translations (Steve Boyd) - - 2023-11-05 [9463da40](https://github.com/silverstripe/silverstripe-admin/commit/9463da40a1b2da36e1b6ab07c5183b02eb6ee3b3) Update translations (Steve Boyd) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-rc1) - - 2024-02-08 [2a4a4a3d](https://github.com/silverstripe/silverstripe-asset-admin/commit/2a4a4a3d5142622c0f8c0135b8460150c7d0c16c) Update translations (#1442) (Guy Sartorelli) - - 2024-02-06 [55c1b3f2](https://github.com/silverstripe/silverstripe-asset-admin/commit/55c1b3f27b8c83ec6c63c328b30f4803f30348e4) Update translations (#1439) (Guy Sartorelli) - - 2023-11-07 [7e9d7cd7](https://github.com/silverstripe/silverstripe-asset-admin/commit/7e9d7cd7b8f203e880e4e4d56351251f49531dc3) Update translations (Steve Boyd) - -- silverstripe/campaign-admin (2.1.0 -> 2.2.0-rc1) - - 2024-02-07 [7d3c679](https://github.com/silverstripe/silverstripe-campaign-admin/commit/7d3c679756b08915e691f073acb60c6913c13c25) Update translations (#294) (Guy Sartorelli) - -- silverstripe/versioned-admin (2.1.0 -> 2.2.0-rc1) - - 2024-02-08 [9f01c01](https://github.com/silverstripe/silverstripe-versioned-admin/commit/9f01c0170d3a0458e93fb19f147cf00ec02b80cb) Update translations (#324) (Guy Sartorelli) - - 2024-02-07 [6e9c8e8](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6e9c8e8dabb61897ee820a7950046fcb391d4cd9) Update translations (#322) (Guy Sartorelli) - -- silverstripe/cms (5.1.0 -> 5.2.0-rc1) - - 2024-02-08 [ac348693](https://github.com/silverstripe/silverstripe-cms/commit/ac3486938f90d37347093f41720de92883c98f95) Update translations (#2921) (Guy Sartorelli) - - 2024-02-07 [9dfc5dea](https://github.com/silverstripe/silverstripe-cms/commit/9dfc5dea2eb4923179b5ba7d2b39f8db7fd1e32d) Update translations (#2920) (Guy Sartorelli) - - 2023-11-06 [a51effa2](https://github.com/silverstripe/silverstripe-cms/commit/a51effa2acdcb3eed04949900ea987a0ee40076c) Update translations (Steve Boyd) - -- silverstripe/errorpage (2.1.0 -> 2.2.0-rc1) - - 2024-02-08 [14ce510](https://github.com/silverstripe/silverstripe-errorpage/commit/14ce5105559c359289a999b1b0f4826948e31c6b) Update translations (#101) (Guy Sartorelli) - - 2024-02-06 [df9b24b](https://github.com/silverstripe/silverstripe-errorpage/commit/df9b24beafc25e53fa4e67e6d341d514de1a53f9) Update translations (#98) (Guy Sartorelli) - - 2023-11-06 [8660060](https://github.com/silverstripe/silverstripe-errorpage/commit/8660060a92748167572e7e4667c6919ffaed1c8a) Update translations (Steve Boyd) - -- silverstripe/reports (5.1.0 -> 5.2.0-rc1) - - 2024-02-08 [c9c6c3ff](https://github.com/silverstripe/silverstripe-reports/commit/c9c6c3ff1e579e7b800c644565451b4578a3db39) Update translations (#176) (Guy Sartorelli) - - 2024-02-07 [f5b5daa7](https://github.com/silverstripe/silverstripe-reports/commit/f5b5daa71199a93bd301746de076283f3ba29563) Update translations (#175) (Guy Sartorelli) - -- silverstripe/siteconfig (5.1.0 -> 5.2.0-rc1) - - 2024-02-08 [e3c7621e](https://github.com/silverstripe/silverstripe-siteconfig/commit/e3c7621e710933e8e2adc5e473586c319b87d22c) Update translations (#156) (Guy Sartorelli) - - 2024-02-07 [3a46ee94](https://github.com/silverstripe/silverstripe-siteconfig/commit/3a46ee94c52fd460df92adc4c516ea0fd4cb5a18) Update translations (#155) (Guy Sartorelli) - - 2023-11-06 [d3073a87](https://github.com/silverstripe/silverstripe-siteconfig/commit/d3073a874e4ead79e82a52cbac6d71bedfdac075) Update translations (Steve Boyd) - - 2023-11-03 [5842dac1](https://github.com/silverstripe/silverstripe-siteconfig/commit/5842dac1bdc4dfc802c392f93a1710967fe4e8af) Update translations (Steve Boyd) - -- silverstripe/versioned (2.1.0 -> 2.2.0-rc1) - - 2024-02-08 [6871553](https://github.com/silverstripe/silverstripe-versioned/commit/6871553f5299b2caca2cbc5df3c07470c5a37728) Update translations (#437) (Guy Sartorelli) - - 2024-02-07 [a323d94](https://github.com/silverstripe/silverstripe-versioned/commit/a323d947f273a52f37fba3ed3489e4e68619b2b9) Update translations (#435) (Guy Sartorelli) - - 2024-02-06 [da1ba52](https://github.com/silverstripe/silverstripe-versioned/commit/da1ba526777e3de4836569b99b3b167db7cdfe36) Update translations (#434) (Guy Sartorelli) - -- silverstripe/session-manager (2.1.0 -> 2.2.0-rc1) - - 2024-02-08 [cc59d9c](https://github.com/silverstripe/silverstripe-session-manager/commit/cc59d9ca1215feb636996c300923c2076d99bf65) Update translations (#182) (Guy Sartorelli) - - 2024-02-07 [3e98627](https://github.com/silverstripe/silverstripe-session-manager/commit/3e986279f32ce9a5016111b117813d9678d6c977) Update translations (#181) (Guy Sartorelli) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-rc1) - - 2024-02-08 [f9738e1](https://github.com/silverstripe/silverstripe-login-forms/commit/f9738e17fd734436d13d636c2ed7ae5966c15409) Update translations (#166) (Guy Sartorelli) - - 2024-02-07 [86f6214](https://github.com/silverstripe/silverstripe-login-forms/commit/86f6214512fbe056778689c30cbe1c322ea11b45) Update translations (#165) (Guy Sartorelli) - -- silverstripe/documentconverter (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [1bd09d5](https://github.com/silverstripe/silverstripe-documentconverter/commit/1bd09d508780951692598117e8ba31dca91bb204) Update translations (#69) (Guy Sartorelli) - -- silverstripe/iframe (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [a8243f3](https://github.com/silverstripe/silverstripe-iframe/commit/a8243f3bcb823a2d1d15d14c3c670b63b0dd2384) Update translations (#80) (Guy Sartorelli) - -- silverstripe/taxonomy (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [241c257](https://github.com/silverstripe/silverstripe-taxonomy/commit/241c2577d59e58a7d7c16652aeea6c20a2006e9c) Update translations (#105) (Guy Sartorelli) - - 2023-11-06 [2711d00](https://github.com/silverstripe/silverstripe-taxonomy/commit/2711d003740143a53ffc736652071035ac4db903) Update translations (Steve Boyd) - -- silverstripe/blog (4.1.0 -> 4.2.0-rc1) - - 2024-02-07 [95a2808](https://github.com/silverstripe/silverstripe-blog/commit/95a2808c04656f655dd27a0722ad85b85d140b64) Update translations (#742) (Guy Sartorelli) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-rc1) - - 2024-02-07 [5badc34](https://github.com/silverstripe/silverstripe-spamprotection/commit/5badc345defa7298f35c9ca9912adcbcbb7d3ff0) Update translations (#111) (Guy Sartorelli) - -- silverstripe/contentreview (5.1.0 -> 5.2.0-rc1) - - 2024-02-07 [bb3eec1](https://github.com/silverstripe/silverstripe-contentreview/commit/bb3eec116048a4b2653eb80a7542ca9ccc5b84b5) Update translations (#223) (Guy Sartorelli) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [5531318](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/5531318c64be3da83815212f243411955dd53ebf) Update translations (#225) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.1.0 -> 6.2.0-rc1) - - 2024-02-07 [e147a4d](https://github.com/symbiote/silverstripe-advancedworkflow/commit/e147a4db5ab54207839b3081642d22e7d9cb8b5e) Update translations (#520) (Guy Sartorelli) - - 2023-11-06 [5efa077](https://github.com/symbiote/silverstripe-advancedworkflow/commit/5efa0771b8f904d911e45eb410cad6a42270d920) Update translations (Steve Boyd) - -- silverstripe/segment-field (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [8e0e850](https://github.com/silverstripe/silverstripe-segment-field/commit/8e0e850cacc6875b11f61426f663268027619226) Update translations (#98) (Guy Sartorelli) - -- silverstripe/userforms (6.1.0 -> 6.2.0-rc1) - - 2024-02-07 [d070e7d](https://github.com/silverstripe/silverstripe-userforms/commit/d070e7dcf93f149aa30489278831e07de016acdf) Update translations (#1265) (Guy Sartorelli) - - 2023-11-06 [b9df907](https://github.com/silverstripe/silverstripe-userforms/commit/b9df907abfb14b4f59fa87abccbb6554313b453f) Update translations (Steve Boyd) - -- silverstripe/externallinks (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [b12e686](https://github.com/silverstripe/silverstripe-externallinks/commit/b12e6868bc4ae8513921aee078e14e5497406ff8) Update translations (#120) (Guy Sartorelli) - -- silverstripe/securityreport (3.0.0 -> 3.1.0-rc1) - - 2024-02-07 [51c745e](https://github.com/silverstripe/silverstripe-securityreport/commit/51c745eb36231481cf1aedd12c2f7a81d477a357) Update translations (#75) (Guy Sartorelli) - -- silverstripe/versionfeed (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [8287278](https://github.com/silverstripe/silverstripe-versionfeed/commit/82872780eb98b12729adabd4a10134e9862c20d3) Update translations (#99) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-rc1) - - 2024-02-07 [e1d6370](https://github.com/silverstripe/silverstripe-elemental/commit/e1d637079dedc0792ba370de3d79da91bc3c2942) Update translations (#1144) (Guy Sartorelli) - -- silverstripe/hybridsessions (3.0.2 -> 3.0.3) - - 2024-02-06 [402c6e4](https://github.com/silverstripe/silverstripe-hybridsessions/commit/402c6e40a7e34cd725af1c0539370328a4e22fcc) Update translations (Guy Sartorelli) - -- silverstripe/registry (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [8209e0d](https://github.com/silverstripe/silverstripe-registry/commit/8209e0de8fb30bc74543e9ce58f501a5b7a052ad) Update translations (#93) (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.1.0 -> 5.2.0-rc1) - - 2024-02-07 [bc196b2](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/bc196b2a5b67822dd7d09a47a145e062c3ba8038) Update translations (#145) (Guy Sartorelli) - -- silverstripe/mfa (5.1.0 -> 5.2.0-rc1) - - 2023-11-07 [9390a7d](https://github.com/silverstripe/silverstripe-mfa/commit/9390a7d560663d4de507f44e40896b94684b714d) Update translations (Steve Boyd) - -- silverstripe/crontask (3.0.2 -> 3.0.3) - - 2024-02-07 [1d2db78](https://github.com/silverstripe/silverstripe-crontask/commit/1d2db788db8445b44016ec0c8bf1a59aadfb1065) Update translations (#86) (Guy Sartorelli) - -- silverstripe/gridfieldqueuedexport (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [299929e](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/299929e0147fc49ec4a15634770a86279bcb14a4) Update translations (#98) (Guy Sartorelli) - -- silverstripe/realme (5.2.0 -> 5.3.0-rc1) - - 2023-11-06 [96974a0](https://github.com/silverstripe/silverstripe-realme/commit/96974a0f0c79e6361625933665b3f3016823816b) Update translations (Steve Boyd) - - 2023-11-03 [f420ac8](https://github.com/silverstripe/silverstripe-realme/commit/f420ac8d41caf60f6316386798946cdd91d87932) Update translations (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.1.0 -> 5.2.0-rc1) - - 2023-11-07 [81e45fe](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/81e45fe237ef8372e07f9e2f08890def9c95df66) Update translations (Steve Boyd) - -- silverstripe/subsites (3.1.0 -> 3.2.0-rc1) - - 2024-02-07 [d66e723](https://github.com/silverstripe/silverstripe-subsites/commit/d66e723a511ebc656efc07dcb86f5c5743dda62e) Update translations (#557) (Guy Sartorelli) - - 2023-11-06 [dd3073f](https://github.com/silverstripe/silverstripe-subsites/commit/dd3073f41aa0d3d724ade8c3630ebd14eaefdad3) Update translations (Steve Boyd) - -- silverstripe/lumberjack (3.0.2 -> 3.1.0-rc1) - - 2024-02-07 [cae40f4](https://github.com/silverstripe/silverstripe-lumberjack/commit/cae40f4367b0dcceb776abb9c2644e0dc7821629) Update translations (#140) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental-userforms (4.1.0 -> 4.1.1) - - 2024-02-07 [ce60338](https://github.com/dnadesign/silverstripe-elemental-userforms/commit/ce603388464d93c21010ddde3c849363ccc133a9) Update translations (#88) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2024-02-07 [c84d8af](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c84d8afa7a082b314609eb23f57483c54cb1c813) Update translations (#381) (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (5.0.2 -> 5.1.0-rc1) - - 2024-02-07 [892dbba](https://github.com/symbiote/silverstripe-queuedjobs/commit/892dbba99626cc2a9e4ecec6efd03600008b7aca) Update translations (#419) (Guy Sartorelli) - -### Other changes {#changelog-other-changes} - -- silverstripe/assets (2.1.0 -> 2.2.0-rc1) - - 2023-10-25 [63bd612](https://github.com/silverstripe/silverstripe-assets/commit/63bd6126b228452dd692d7a41b6e841e1c990d92) Add support for braille format files (#574) (Ed Wilde) - -- silverstripe/framework (5.1.0 -> 5.2.0-rc1) - - 2024-03-19 [6ede0316b](https://github.com/silverstripe/silverstripe-framework/commit/6ede0316bfc062df204d950097588c86a300280c) `Revert "Use field editorconfig when sanitising content" (#11180)` (Guy Sartorelli) - - 2024-03-04 [eb4ef623a](https://github.com/silverstripe/silverstripe-framework/commit/eb4ef623abeeda8b3b4941261dd06ec6a88df826) check for empty salt (Thomas Portelange) - - 2024-02-27 [59177dd31](https://github.com/silverstripe/silverstripe-framework/commit/59177dd3157f5b0894d5e7c07244a76a327c7c40) Delete tests/php/Core/Manifest/fixtures/VersionProviderTest directory (Thomas Portelange) - - 2024-02-27 [2921d68a5](https://github.com/silverstripe/silverstripe-framework/commit/2921d68a57ed718a5d0633b90c186d24b90c98dc) Update composer.json (Thomas Portelange) - - 2024-02-26 [a06ce0493](https://github.com/silverstripe/silverstripe-framework/commit/a06ce0493a5507bd78d35805f114b57927c14223) use VersionParser instead of comparator (Thomas Portelange) - - 2024-02-26 [80e197fe4](https://github.com/silverstripe/silverstripe-framework/commit/80e197fe4ffffc12136bb1dad49944971bddfe76) make error message more readable (Thomas Portelange) - - 2024-02-26 [a1d1e977c](https://github.com/silverstripe/silverstripe-framework/commit/a1d1e977c5912bcc5ed4a9a46901c523da1e7bbe) use composer/semver (Thomas Portelange) - - 2024-02-26 [071333f77](https://github.com/silverstripe/silverstripe-framework/commit/071333f774419f8f4549e9a5a027ead0796646c9) add composer/semver (Thomas Portelange) - - 2024-02-26 [68b79e11e](https://github.com/silverstripe/silverstripe-framework/commit/68b79e11ee6cca43637f6746c2c3ea64ee3af0a2) missing import (Thomas Portelange) - - 2024-02-26 [269692202](https://github.com/silverstripe/silverstripe-framework/commit/2696922023297943b1a5a9189490aa9a7f3a1243) update return type (Thomas Portelange) - - 2024-02-26 [1cf3dde9f](https://github.com/silverstripe/silverstripe-framework/commit/1cf3dde9f15623d61399814ee90360d225691b53) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [2b64e98af](https://github.com/silverstripe/silverstripe-framework/commit/2b64e98afc6e2368cce156e7c55dda7accfc8f00) Update VersionProviderTest.php (Thomas Portelange) - - 2024-02-26 [b53148c03](https://github.com/silverstripe/silverstripe-framework/commit/b53148c034394a37b7c16ce34a340a83da3f4afe) add deprecation, remove class_exists (Thomas Portelange) - - 2024-02-26 [2600b2661](https://github.com/silverstripe/silverstripe-framework/commit/2600b266172a51215963ebbb0dc640d77f6ded95) add composer-runtime-api (Thomas Portelange) - - 2024-02-26 [e649310f7](https://github.com/silverstripe/silverstripe-framework/commit/e649310f7bb96f1970156d07a31d990dde317e0f) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [a2486c085](https://github.com/silverstripe/silverstripe-framework/commit/a2486c085948c65545670fb903c99b92636eed7e) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-26 [a19671950](https://github.com/silverstripe/silverstripe-framework/commit/a196719502e96019c5a0cf00cad9c33ea0c0fed7) Update src/Core/Manifest/VersionProvider.php (Thomas Portelange) - - 2024-02-23 [bc0912718](https://github.com/silverstripe/silverstripe-framework/commit/bc091271826aa7be800d961c4739bc2482ff7a00) use composer runtime api (Thomas Portelange) - - 2024-02-08 [e0107e020](https://github.com/silverstripe/silverstripe-framework/commit/e0107e0202914edd25629443a044b6883c18bb83) Update src/ORM/DataQuery.php (Thomas Portelange) - - 2024-02-08 [2ac68a55a](https://github.com/silverstripe/silverstripe-framework/commit/2ac68a55a4a806a64459b744f76a49e37367ee0d) rename var (Thomas Portelange) - - 2023-12-12 [b6c646ffb](https://github.com/silverstripe/silverstripe-framework/commit/b6c646ffbea586a9ffaa15e6d8fb27e5e14b683a) `Also remove the unused $last_idx assignment` (Ed Wilde) - - 2023-12-12 [81541db89](https://github.com/silverstripe/silverstripe-framework/commit/81541db892b17db0caf9b349bd807ef9efdb117d) `Remove unused line in findTab()` (Ed Wilde) - - 2023-11-09 [b9da08a30](https://github.com/silverstripe/silverstripe-framework/commit/b9da08a3017128271ea25675a9de12c0147a79c8) Update task-not-found messaging (Andrew Paxley) - - 2023-11-09 [c77a77d58](https://github.com/silverstripe/silverstripe-framework/commit/c77a77d584bff98d9bc335d61ab3f46372954a90) Flip canView logic and combine into taskEnabled check (Andrew Paxley) - - 2023-10-15 [e5eb98cc3](https://github.com/silverstripe/silverstripe-framework/commit/e5eb98cc3491785cbae17bb53be0be05fd5a6f42) Use field editorconfig when sanitising content (Bernie Hamlin) - - 2023-10-11 [af536a88d](https://github.com/silverstripe/silverstripe-framework/commit/af536a88d22a450604b090810bf8800f39aec66e) Add support for braille format files (Ed Wilde) - -- silverstripe/mimevalidator (3.0.0 -> 3.1.0-rc1) - - 2023-10-11 [25bfefc](https://github.com/silverstripe/silverstripe-mimevalidator/commit/25bfefc1459e81015c623619354a60db2b1debae) Add support for braille format files (Ed Wilde) - -- silverstripe/admin (2.1.0 -> 2.2.0-rc1) - - 2024-02-15 [6f468685](https://github.com/silverstripe/silverstripe-admin/commit/6f468685ebb14383dafb0607c589ff201c7035f4) rename var (Thomas Portelange) - - 2024-02-14 [6bcccbbf](https://github.com/silverstripe/silverstripe-admin/commit/6bcccbbf7f0eaedcd0ca1d428a2a46a369c1d66d) use innerText, rename (Thomas Portelange) - - 2024-02-07 [4c0247cd](https://github.com/silverstripe/silverstripe-admin/commit/4c0247cd9975559a0ad416245f3ba01a439bcf32) `Revert "TLN Update translations (#1673)"` (Steve Boyd) - - 2023-10-27 [3c969733](https://github.com/silverstripe/silverstripe-admin/commit/3c969733bb3154a09e45f1905a6c8fe6bf12ba87) Define a minimum width for the logo (Ed Wilde) - - 2023-10-27 [050b8b93](https://github.com/silverstripe/silverstripe-admin/commit/050b8b93c89c40b1d5a3dc5a58b585bb961bf239) Add the new CMS logo locally (Ed Wilde) - - 2023-10-12 [7cda7c7e](https://github.com/silverstripe/silverstripe-admin/commit/7cda7c7e729c4c07658cd9bad90ea2f6fa5481b8) Update Storybook logo to the 5.1 OSS logo (Ed Wilde) - -- silverstripe/asset-admin (2.1.0 -> 2.2.0-rc1) - - 2023-12-12 [4fe280ed](https://github.com/silverstripe/silverstripe-asset-admin/commit/4fe280ed41dc452cac8bf8c82c170f7b00949dc7) Update sort param (Vivienne Tubbs) - -- silverstripe/cms (5.1.0 -> 5.2.0-rc1) - - 2023-01-11 [79acadc0](https://github.com/silverstripe/silverstripe-cms/commit/79acadc0bba1b84c1d4d9f85d8a0281e3c10fb43) PATCH: remove jQuery reference (Nicolaas / Sunny Side Up) - - 2023-01-09 [8d403a1d](https://github.com/silverstripe/silverstripe-cms/commit/8d403a1d83fc7cf30c4ffb4f28481004f9b63fe1) PATCH: fixing jquery link to thirdparty/jquery-query/jquery.query.js (Nicolaas / Sunny Side Up) - -- silverstripe/versioned (2.1.0 -> 2.2.0-rc1) - - 2023-10-30 [7eddb6b](https://github.com/silverstripe/silverstripe-versioned/commit/7eddb6b944b4c0f76a5deb4090f35aacbde88803) Apply suggestions from code review (Mojmir Fendek) - - 2023-10-19 [f21edce](https://github.com/silverstripe/silverstripe-versioned/commit/f21edce874766c6a195f4fb3ed6bc727dd182504) PR fixes. (Mojmir Fendek) - - 2023-10-19 [5ed82fe](https://github.com/silverstripe/silverstripe-versioned/commit/5ed82fe06eb104846762b88e8b38f4e1c832dd18) PR fixes. (Mojmir Fendek) - - 2023-10-19 [76568ac](https://github.com/silverstripe/silverstripe-versioned/commit/76568ac021abd442aa7ad53eff7dfbb7e468ee29) PR fixes. (Mojmir Fendek) - - 2023-10-18 [d6490ce](https://github.com/silverstripe/silverstripe-versioned/commit/d6490cef97a6d3efab6fa03e712a06739d8405ae) PR fixes. (Mojmir Fendek) - - 2023-10-16 [d2efe5a](https://github.com/silverstripe/silverstripe-versioned/commit/d2efe5acba12462d816ee6db4ca28f6c9b2ca06d) PR fixes. (Mojmir Fendek) - - 2021-04-06 [97d1ac6](https://github.com/silverstripe/silverstripe-versioned/commit/97d1ac66fadaf93613e48d8c46919723c7893604) PR fixes. (Mojmir Fendek) - - 2021-04-06 [dd2674f](https://github.com/silverstripe/silverstripe-versioned/commit/dd2674fa064dae94ec0bf4077f4886234d55a31a) Update src/RecursiveStagesService.php (Mojmir Fendek) - -- silverstripe/graphql (5.1.0 -> 5.2.0-rc1) - - 2023-10-19 [addf529](https://github.com/silverstripe/silverstripe-graphql/commit/addf529b5c26affd35a787529fc776d04d3dc15c) add canInit method and CAN_DEV_GRAPHQL permissions (Andrew Paxley) - -- silverstripe/login-forms (5.1.0 -> 5.2.0-rc1) - - 2023-09-11 [b0d6c3e](https://github.com/silverstripe/silverstripe-login-forms/commit/b0d6c3ed805c8e3ca2892f11a8dcbed4f617db9a) Small typo in README.md (Vinnie) - -- silverstripe/tagfield (3.1.0 -> 3.2.0-rc1) - - 2023-09-28 [9257956](https://github.com/silverstripe/silverstripe-tagfield/commit/92579562553441e2a203ff00156441848a10a633) fixed reference issue now that we've changed ref from createRef() (josephlewisnz) - - 2023-09-28 [f7af10a](https://github.com/silverstripe/silverstripe-tagfield/commit/f7af10a8372096c48e5ddfe10446ef33f713f125) build (josephlewisnz) - -- silverstripe/blog (4.1.0 -> 4.2.0-rc1) - - 2023-12-18 [b2f0d12](https://github.com/silverstripe/silverstripe-blog/commit/b2f0d12dd6199f09c3cf021979fa937a1974d1dc) Remove icons from gridfield add button (Mohamed Alsharaf) - - 2023-11-20 [d6375c5](https://github.com/silverstripe/silverstripe-blog/commit/d6375c5048c0bccefa8afe3afca95814a01f9bd7) addition to #685 also, respect mb in controller (Lukas Erni) - - 2023-11-16 [926ce56](https://github.com/silverstripe/silverstripe-blog/commit/926ce562f164c63eb01ed91b1e0aee45f8e3779c) remove plus icon for consistency (Lukas Erni) - -- silverstripe/spamprotection (4.1.0 -> 4.2.0-rc1) - - 2023-09-11 [2210891](https://github.com/silverstripe/silverstripe-spamprotection/commit/221089136f82f778f4f2281630cbe0a28618a402) `Revert "fix: if no spam protector set, fail sliently"` (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (4.0.0 -> 4.0.2) - - 2023-06-01 [3006076](https://github.com/colymba/GridFieldBulkEditingTools/commit/3006076c82f90ec7ae4779daa0263230f3702814) SS5 Fix: Replace json2array with json_decode (James Cocker) - -- silverstripe/sharedraftcontent (3.1.0 -> 3.2.0-rc1) - - 2023-10-16 [58a795e](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/58a795e50a940c29bbdd8761ce50c010830f79ec) Fixes internal infinite recursion on Nginx/PHP-FPM environments (Nathan J. Brauer) - -- silverstripe/userforms (6.1.0 -> 6.2.0-rc1) - - 2023-11-12 [26a4816](https://github.com/silverstripe/silverstripe-userforms/commit/26a48162ff0e5c9fccb3d764bd449ec2e8309429) Add extension hook to control file attachments per recipient and field (Michal Kleiner) - -- dnadesign/silverstripe-elemental (5.1.0 -> 5.2.0-rc1) - - 2023-09-21 [eeb4546](https://github.com/silverstripe/silverstripe-elemental/commit/eeb45461b62ca697552220e56bde0d303a88f114) Revert Github specific markdown to maintain portability (Ed Wilde) - -- silverstripe/developer-docs (5.1.0 -> 5.2.0-rc1) - - 2023-12-14 [844f4755](https://github.com/silverstripe/developer-docs/commit/844f4755751319ff2d584285f08ea245c41643ad) Update 05_Simple_Contact_Form.md (erangaddd) - - 2023-12-06 [c516a99b](https://github.com/silverstripe/developer-docs/commit/c516a99bb67fbc15ebb0ad1337ccd1c293de1c33) Update 04_Upgrading_project.md (Tim) - - 2023-11-28 [deacfc1a](https://github.com/silverstripe/developer-docs/commit/deacfc1a179329cf72cce99707a81d63b58222ec) Fixed: link to formatting/modifying/casting variables (Patrick Côté) - - 2023-11-02 [0033a971](https://github.com/silverstripe/developer-docs/commit/0033a9715e5815e37d10dc4009e1a32eb2096ec0) Update a example code comment (Nate Devereux) - - 2023-10-19 [3e546176](https://github.com/silverstripe/developer-docs/commit/3e546176f9554657030d4f1268ac096026ebcdde) Apply suggestions from code review (Johannes Hammersen) - -- silverstripe/subsites (3.1.0 -> 3.2.0-rc1) - - 2023-09-06 [e020766](https://github.com/silverstripe/silverstripe-subsites/commit/e02076609543732432aac88aba6564222980fdd6) `Revert "Switch to listing views of subsite-filtered sections"` (Steve Boyd) - - 2022-09-27 [8ba7070](https://github.com/silverstripe/silverstripe-subsites/commit/8ba7070b02b4941520a2afc9d4ebde34c6e4d85e) Switch to listing views of subsite-filtered sections (Michael van Schaik) - -- symbiote/silverstripe-gridfieldextensions (4.0.3 -> 4.0.5) - - 2023-03-07 [1637e78](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1637e78ea1398217e143002ac85124917f83bf5a) Make link color white. (Robin) - -- tractorcow/silverstripe-fluent (7.0.0 -> 7.1.0-rc1) - - 2024-02-18 [ee8d7d1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/ee8d7d1e4773985f252dd4d35297ad1cfcb27dda) use AsoluteLink method for xml styles to make sure link works with SS5 trailings slash setup, fixes #818 (Florian Thoma) - - 2023-10-17 [cf27342](https://github.com/tractorcow-farm/silverstripe-fluent/commit/cf273429b96c76db6ae454f23f8387cdb52609fe) MSSQL database doesn't allow aliases in GROUP BY (Klemen Dolinšek) - - 2023-04-12 [69a9df5](https://github.com/tractorcow-farm/silverstripe-fluent/commit/69a9df5febb0eeab74ac83a5b55ceb4cc0d69284) skip empty 'where' clauses (mikey-harveycameron) - -- silverstripe/linkfield (3.0.0-beta1 -> 4.0.0-rc1) - - 2023-10-18 [653071d](https://github.com/silverstripe/silverstripe-linkfield/commit/653071d4332bc3882732466d0a1e8f2eab60b259) Fixing typo of $Link.OpenInew to $Link.OpenInNew (Daniel Hurd) - - 2023-08-30 [245cdcc](https://github.com/silverstripe/silverstripe-linkfield/commit/245cdcce725164bd03e52371d1bb4e3d00b76f24) MISC: Docs update. (Mojmir Fendek) - - 2023-07-28 [437a915](https://github.com/silverstripe/silverstripe-linkfield/commit/437a9154bea6d15eb5a17d1bf394b549bff6c9f9) MISC: File link test. (Mojmir Fendek) - - 2022-10-27 [8f1a258](https://github.com/silverstripe/silverstripe-linkfield/commit/8f1a258f7f34a908936262e489cdf4125cf27db7) Add PhoneField. Add migration helpers from Linkable (#48) (Chris Penny) - - 2022-06-29 [636c679](https://github.com/silverstripe/silverstripe-linkfield/commit/636c6792ebf8c266e802814956eb1a8a954f92a7) PHP 8.1: Suppress deprecation notice (Chris Penny) - - 2022-05-13 [c1f42f2](https://github.com/silverstripe/silverstripe-linkfield/commit/c1f42f28efaf91065886c6e4f9dd8a37bc44d2e3) Debug. (Mojmir Fendek) - - 2021-11-16 [1068b78](https://github.com/silverstripe/silverstripe-linkfield/commit/1068b7830187a1fd9eed89a112a55bdd1e4bbd7f) Update namespace. Add table_name config to all models (#39) (Chris Penny) - - diff --git a/en/08_Changelogs/rc/5.3.0-rc1.md b/en/08_Changelogs/rc/5.3.0-rc1.md deleted file mode 100644 index 2ae4b0ebd..000000000 --- a/en/08_Changelogs/rc/5.3.0-rc1.md +++ /dev/null @@ -1,1165 +0,0 @@ -# 5.3.0-rc1 - -## Overview - -- [Security considerations](#security-considerations) -- [Features and enhancements](#features-and-enhancements) - - [Changes to `TinyMCEConfig`](#changes-to-tinymce) - - [High-level API for converting files](#file-converter) - - [Improve customisability of rendered images](#image-rendering) - - [Validation for inline-editable elemental blocks](#elemental-validation) - - [`FormField` scaffolding for `DataObject` models](#scaffolding) - - [Support for `JOIN` in SQL `UPDATE`](#sql-update-join) - - [Autologin token regeneration changes](#autologin-token-regeneration) - - [Other new features](#other-new-features) -- [API changes](#api-changes) -- [Bug fixes](#bug-fixes) - -A full list of module versions included in CMS Recipe 5.3.0-rc1 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/). - -
-Included module versions - -| Module | Version | -| ------ | ------- | -| bringyourownideas/silverstripe-composer-update-checker | 4.1.2 | -| bringyourownideas/silverstripe-maintenance | 3.2.0-rc1 | -| colymba/gridfield-bulk-editing-tools | 4.1.0-rc1 | -| cwp/agency-extensions | 3.3.0-rc1 | -| cwp/starter-theme | 4.2.0-rc1 | -| cwp/watea-theme | 4.2.0-rc1 | -| dnadesign/silverstripe-elemental | 5.3.0-rc1 | -| dnadesign/silverstripe-elemental-userforms | 4.1.1 | -| silverstripe-themes/simple | 3.3.2 | -| silverstripe/admin | 2.3.0-rc1 | -| silverstripe/asset-admin | 2.3.0-rc1 | -| silverstripe/assets | 2.3.0-rc1 | -| silverstripe/auditor | 3.2.0-rc1 | -| silverstripe/blog | 4.3.0-rc1 | -| silverstripe/campaign-admin | 2.3.0-rc1 | -| silverstripe/cms | 5.3.0-rc1 | -| silverstripe/config | 2.1.1 | -| silverstripe/contentreview | 5.3.0-rc1 | -| silverstripe/crontask | 3.0.4 | -| silverstripe/documentconverter | 3.3.0-rc1 | -| silverstripe/dynamodb | 5.0.1 | -| silverstripe/elemental-bannerblock | 3.3.0-rc1 | -| silverstripe/elemental-fileblock | 3.1.0 | -| silverstripe/environmentcheck | 3.0.2 | -| silverstripe/errorpage | 2.3.0-rc1 | -| silverstripe/externallinks | 3.3.0-rc1 | -| silverstripe/framework | 5.3.0-rc1 | -| silverstripe/graphql | 5.2.3 | -| silverstripe/gridfieldqueuedexport | 3.3.0-rc1 | -| silverstripe/hybridsessions | 3.0.5 | -| silverstripe/iframe | 3.2.1 | -| silverstripe/installer | 5.3.0-rc1 | -| silverstripe/ldap | 2.2.3 | -| silverstripe/linkfield | 4.1.0-rc1 | -| silverstripe/login-forms | 5.3.0-rc1 | -| silverstripe/lumberjack | 3.2.0-rc1 | -| silverstripe/mfa | 5.3.0-rc1 | -| silverstripe/mimevalidator | 3.1.0 | -| silverstripe/realme | 5.4.0-rc1 | -| silverstripe/recipe-authoring-tools | 2.3.0-rc1 | -| silverstripe/recipe-blog | 2.3.0-rc1 | -| silverstripe/recipe-cms | 5.3.0-rc1 | -| silverstripe/recipe-collaboration | 2.3.0-rc1 | -| silverstripe/recipe-content-blocks | 3.3.0-rc1 | -| silverstripe/recipe-core | 5.3.0-rc1 | -| silverstripe/recipe-form-building | 2.3.0-rc1 | -| silverstripe/recipe-kitchen-sink | 5.3.0-rc1 | -| silverstripe/recipe-plugin | 2.0.1 | -| silverstripe/recipe-reporting-tools | 2.3.0-rc1 | -| silverstripe/recipe-services | 2.3.0-rc1 | -| silverstripe/registry | 3.2.0 | -| silverstripe/reports | 5.3.0-rc1 | -| silverstripe/restfulserver | 3.0.1 | -| silverstripe/securityreport | 3.1.1 | -| silverstripe/segment-field | 3.3.0-rc1 | -| silverstripe/session-manager | 2.3.0-rc1 | -| silverstripe/sharedraftcontent | 3.3.0-rc1 | -| silverstripe/siteconfig | 5.3.0-rc1 | -| silverstripe/sitewidecontent-report | 4.3.0-rc1 | -| silverstripe/spamprotection | 4.2.1 | -| silverstripe/staticpublishqueue | 6.2.2 | -| silverstripe/subsites | 3.3.0-rc1 | -| silverstripe/tagfield | 3.3.0-rc1 | -| silverstripe/taxonomy | 3.2.2 | -| silverstripe/textextraction | 4.1.1 | -| silverstripe/totp-authenticator | 5.3.0-rc1 | -| silverstripe/userforms | 6.3.0-rc1 | -| silverstripe/vendor-plugin | 2.0.3 | -| silverstripe/versioned | 2.3.0-rc1 | -| silverstripe/versioned-admin | 2.3.0-rc1 | -| silverstripe/versionfeed | 3.2.3 | -| silverstripe/webauthn-authenticator | 5.3.0-rc1 | -| symbiote/silverstripe-advancedworkflow | 6.3.0-rc1 | -| symbiote/silverstripe-gridfieldextensions | 4.1.0-rc1 | -| symbiote/silverstripe-multivaluefield | 6.1.0 | -| symbiote/silverstripe-queuedjobs | 5.2.0-rc1 | -| tractorcow/silverstripe-fluent | 7.2.0-rc1 | - -
- -## Release candidate - -This version of Silverstripe CMS is a **release candidate** for an upcoming stable version, and should not be applied to production websites. We encourage developers to test this version in development / testing environments and [report any issues they encounter via GitHub](/contributing/issues_and_bugs/). - -## Security considerations {#security-considerations} - -Three security fixes that were previously released in the July security release are mentioned in the [Silverstripe CMS security patches July 2024](https://www.silverstripe.org/blog/silverstripe-cms-security-patches-july-2024/) blog post are listed below. - -Review the individual vulnerability disclosure for more detailed descriptions of each security fix. We highly encourage upgrading your project to include the latest security patches. - -We have provided a severity rating of the vulnerabilities below based on the CVSS score. Note that the impact of each vulnerability could vary based on the specifics of each project. You can [read the severity rating definitions in the Silverstripe CMS release process](/contributing/release_process/#severity-rating). - -- [CVE-2024-29885 - Reports are still accessible even when canView is set to false](https://www.silverstripe.org/download/security-releases/cve-2024-29885) Severity: Medium -- [CVE-2024-32981 - XSS Vulnerability with text/html base64-encoded payload](https://www.silverstripe.org/download/security-releases/cve-2024-32981) Severity: Medium -- [SS-2024-001 - TinyMCE allows svg files linked in object tags](https://www.silverstripe.org/download/security-releases/ss-2024-001) Severity: Medium - -## Features and enhancements - -### Changes to `TinyMCEConfig` {#changes-to-tinymce} - -In order to facilitate fixing a bug related to the sanitisation of HTML content via the [`HTMLEditorSanitiser`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorSanitiser) class, some changes had to be made to the [`TinyMCEConfig`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig) class. Those changes are as follows: - -- If `valid_elements` and `extended_valid_elements` are both empty, all HTML elements will be stripped out of the HTML content. -- A default set of `valid_elements` has been defined for all `TinyMCEConfig` instances. If you use custom `TinyMCEConfig` definitions and have not explicitly set the `valid_elements` option, you may have more elements permitted than you were expecting. -- There is a new [`TinyMCEConfig.default_options`](api:SilverStripe\Forms\HTMLEditor\TinyMCEConfig->default_options) configuration property which allows you to define the default options for all `TinyMCEConfig` instances. - -> [!WARNING] -> If you use custom `TinyMCEConfig` definitions, we strongly recommend double checking if they include a definition of `valid_elements`, and if they don't, validate whether the default set defined in `TinyMCEConfig.default_options` is suitable for you. -> -> You can either change the `TinyMCEConfig.default_options` configuration value to affect the options for all `TinyMCEConfig` definitions, or explicitly define `valid_elements` for your specific configuration instances. See [setting options](/developer_guides/forms/field_types/htmleditorfield/#setting-options) for more details. - -See [sanitisation of HTML](#sanitisation-of-html) for more information about the bug that was fixed. - -### High-level API for converting files {#file-converter} - -There is now a high-level API for converting files from one format to another. This builds on top of the low-level API which was [added in 5.2.0](/changelogs/5.2.0/#file-variants). - -Files can be converted both in PHP code and in templates: - -```php -// Convert an image to webp format and apply the FitMax manipulation to the result -$this->MyImage()->Convert('webp')->FitMax(100, 100); -``` - -```ss -<%-- Convert an image to webp format and apply the FitMax manipulation to the result --%> -$MyImage.Convert('webp').FitMax(100, 100) -``` - -Out of the box `silverstripe/assets` provides the new [`InterventionImageFileConverter`](api:SilverStripe\Assets\Conversion\InterventionImageFileConverter) class which converts images to other image formats using [Intervention Image](https://image.intervention.io/v2). You can add your own `FileConverter` implementations in projects or modules for any file convertions you might need. - -See [convert a file to a different format](/developer_guides/files/file_manipulation/#file-conversion) for more details. - -### Improve customisability of rendered images {#image-rendering} - -We've aligned how images added to an [`HTMLEditorField`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorField) and images invoked in templates are rendered. The markup up for both `` tags are now generated from the same template file. This makes it easier to customise how images are rendered on your site. - -The template for this is `templates/SilverStripe/Assets/Storage/DBFile_Image.ss`. Add a file with that path to your Silverstripe CMS theme if you want to override it. - -This opens many interesting possibilities. For example, this code snippet will provide a WebP version of any image rendered on your site. - -```html - - - - -``` - -You can also choose to have different rendering logic for `HTMLEditorField` images and for images invoked in templates by overriding different templates. - -- Add a `SilverStripe/Assets/Shortcodes/ImageShortcodeProvider_Image.ss` to your theme to control images added to an HTMLEditorField. -- Add a `DBFile_Image.ss` file to the root of your theme to control only images invoked in templates. - -### Validation for inline-editable elemental blocks {#elemental-validation} - -Elemental content blocks now support validation when saving or publishing individual content blocks using the "three-dot" context menu in the top-right of the block. - -Validation can be added to a content block using standard [Model Validation and Constraints](https://docs.silverstripe.org/en/5/developer_guides/model/validation/#validation-and-constraints) by implementing a [`DataObject::validate()`](api:SilverStripe\ORM\DataObject::validate()) method on a content block, or by using [Form Validation](https://docs.silverstripe.org/en/5/developer_guides/forms/validation/#form-validation) where there are several options available. - -Elemental data is no longer sent when saving the parent `DataObject` (usually a `Page`) that contains an [`ElementalAreaField`](api:DNADesign\Elemental\Forms\ElementalAreaField). Instead, when saving the parent `DataObject`, all the child inline-editable elements that have unsaved changes are inline saved at the same time. This change was done to consolidate the saving process down to a single code path. The code that was previously used to process any element data sent with the parent data has been removed. - -### `FormField` scaffolding for `DataObject` models {#scaffolding} - -We've made a few improvements to how form fields are scaffolded for [`DataObject::getCMSFields()`](api:SilverStripe\ORM\DataObject::getCMSFields()). - -#### Define scaffolded form fields for relations {#scaffolding-relation-formfields} - -Most `DataObject` classes will rely on some amount of automatic scaffolding of form fields in their `getCMSFields()` implementations. However, it's common for modules to provide a specialised form field which is intended to always be used with a specific `DataObject` class. In those cases, even though you always want to use that form field with that class, you have to copy some boilerplate code from the module's documentation to set it up. - -You can now define what form fields should be used when scaffolding form fields for `has_one`, `has_many`, and `many_many` relations. This is defined on the class on the child-side of the relationship. For example, for the below `has_one` relation you would implement [`scaffoldFormFieldForHasOne()`](api:SilverStripe\ORM\DataObject::scaffoldFormFieldForHasOne()) on the `MyChild` class. - -```php -namespace App\Model; - -use SilverStripe\ORM\DataObject; - -class MyParent extends DataObject -{ - // ... - private static array $has_one = [ - 'MyChild' => MyChild::class, - ]; -} -``` - -```php -namespace App\Model; - -use SilverStripe\Forms\FormField; -use SilverStripe\ORM\DataObject; - -class MyChild extends DataObject -{ - // ... - - public function scaffoldFormFieldForHasOne( - string $fieldName, - ?string $fieldTitle, - string $relationName, - DataObject $ownerRecord - ): FormField { - return /* instantiate some FormField here */; - } -} -``` - -This means modules can pre-define the form field that should be used for their custom models, which reduces the amount of boilerplate code developers need to include in their `getCMSFields()` implementations. - -For more information see [scaffolding for relations](/developer_guides/model/scaffolding/#scaffolding-for-relations). - -#### `FormScaffolder` options {#scaffolding-options} - -The [`FormScaffolder`](api:SilverStripe\Forms\FormScaffolder) class (which is responsible for scaffolding form fields for `getCMSFields()`) has some new options: - -|option|description| -|---|---| -|`mainTabOnly`|Only set up the "Root.Main" tab, but skip scaffolding actual form fields or relation tabs. If `tabbed` is false, the `FieldList` will be empty.| -|`ignoreFields`|Deny list of field names. If populated, database fields and fields representing `has_one` relations which *are* in this array won't be scaffolded.| -|`ignoreRelations`|Deny list of field names. If populated, form fields representing `has_many` and `many_many` relations which *are* in this array won't be scaffolded.| -|`restrictRelations`|Allow list of field names. If populated, form fields representing `has_many` and `many_many` relations not in this array won't be scaffolded.| - -In particular, the `ignoreFields` and `ignoreRelations` options are useful ways to prevent form fields from being scaffolded at all. You can use this instead of calling `$fields->removeFieldByName()`, for example if you are adding database fields that you don't want to be edited with form fields in the CMS. - -These options are now also configurable using the new [`DataObject.scaffold_cms_fields_settings`](api:SilverStripe\ORM\DataObject->scaffold_cms_fields_settings) configuration property. - -See the [scaffolding](/developer_guides/model/scaffolding/#scaffolding-options) section for more details. - -### Support for `JOIN` in SQL `UPDATE` {#sql-update-join} - -The [`SQLUpdate`](api:SilverStripe\ORM\Queries\SQLUpdate) class now supports all of the same `JOIN` operations (using the same methods) that [`SQLSelect`](api:SilverStripe\ORM\Queries\SQLSelect) does. - -This is particularly helpful if you need to update columns in one table to match values from another table. - -### Autologin token regeneration changes {#autologin-token-regeneration} - -The Autologin ('remember me') feature stores cookies in the user's browser to allow recreation of their session when it expires. Currently, one of the cookies is regenerated whenever a user's session is recreated. This can cause unexpected logouts in certain situations, and has minimal value from a security standpoint. - -In 5.3, the current behaviour is retained, but can be disabled via configuration: - -```yml -SilverStripe\Security\RememberLoginHash: - replace_token_during_session_renewal: false -``` - -This will cause the token to be generated once during login, and not be regenerated during session renewal. - -From 6.0 onwards, tokens will never be regenerated during session renewal, and this configuration will be removed. - -### Other new features - -- `silverstripe/linkfield` now has improved accessibility support for screen readers and keyboard navigation. Focus states have also been made consistent between keyboard and mouse interaction. -- `silverstripe/graphql-devtools` contains a new `GraphQLSchemaInitTask` to help you initialise a basic GraphQL schema. -- [`GridFieldDetailForm_ItemRequest`](api:SilverStripe\Forms\GridField\GridFieldDetailForm_ItemRequest) now uses a [`PjaxResponseNegotiator`](api:SilverStripe\Control\PjaxResponseNegotiator) to handle PJAX responses for the save and publish actions. This aligns it with responses from other form submissions in the CMS. -- Primitive types inside an iterable object will now be automatically converted to relevant [`DBField`](api:SilverStripe\ORM\FieldType\DBField) types so can be rendered in a template. This allows the use of `return ArrayList::create(['lorem', 123]);` from a [`ContentController`](api:SilverStripe\CMS\Controllers\ContentController) method that is then looped over in a template. -- A new [`TabSet::changeTabOrder()`](api:SilverStripe\Forms\TabSet::changeTabOrder()) method has been added that allows you to change the order of tabs in a `TabSet`. See [tabbed forms](/developer_guides/forms/tabbed_forms/#change-the-order-of-tabs) for details. - -## API changes - -- Passing a non-array `$fields` argument to both [`FieldList::addFieldsToTab()`](api:SilverStripe\Forms\FieldList::addFieldsToTab()) and [`FieldList::removeFieldsFromTab()`](api:SilverStripe\Forms\FieldList::removeFieldsFromTab()) has been deprecated. -- The [`BaseElement::getDescription()`](api:DNADesign\Elemental\Models\BaseElement::getDescription()) method has been deprecated. To update or get the CMS description of elemental blocks, use the [`description`](api:DNADesign\Elemental\Models\BaseElement->description) configuration property and the localisation API. -- The [`RememberLoginHash::renew()`](api:SilverStripe\Security\RememberLoginHash::renew()) method has been deprecated without replacement, since the associated behaviour will be removed in 6.0. - - The `onAfterRenewToken` extension point within this method will likely be replaced with a new extension point in 6.0. -- The [`RememberLoginHash.replace_token_during_session_renewal`](api:SilverStripe\Security\RememberLoginHash->replace_token_during_session_renewal) configuration property has been added to allow disabling token regeneration during session renewal. This property will be removed in 6.0. -- Code for the CMS GraphQL `admin` schema which provided endpoints for the CMS has been deprecated and will be removed in CMS 6. Functionality which the GraphQL endpoints are currently responsible for will be replaced with regular Silverstripe controller endpoints instead. Extension hooks will be added to the new controller endpoints that return data to allow for customisation. Frontend schemas, such the `default` schema, will continue to work in CMS 6. -- [`IPUtils`](api:SilverStripe\Control\Util\IPUtils) has been deprecated and its usage has been replaced with the `IPUtils` class from `symfony/http-foundation` which is now included as a composer dependency in `silverstripe/framework`. -- Code in [`silverstripe/blog`](https://github.com/silverstripe/silverstripe-blog) which supported integration with [`silverstripe/widgets`](https://github.com/silverstripe/silverstripe-widgets) has been deprecated and will be removed in CMS 6.0. -- [`DataExtension`](api:SilverStripe\ORM\DataExtension), [`SiteTreeExtension`](api:SilverStripe\CMS\Model\SiteTreeExtension), and [`LeftAndMainExtension`](api:SilverStripe\Admin\LeftAndMainExtension) have been deprecated and will be removed in CMS 6.0. If you subclass any of these classes, you should now subclass [`Extension`](api:SilverStripe\Core\Extension) directly instead. - -## Bug fixes - -- If you use `<% loop %>` in your templates without telling it what to loop, previously the behaviour was to fail silently. This will now loop over what is currently in scope. See [looping over lists](/developer_guides/templates/syntax/#looping-over-lists) for more details. -- Reordering elemental blocks used to update the published sort order immediately, without pressing the publish button. That wasn't consistent with the way any other sort order updates happen in the CMS. We've changed this so that the sort order won't update in your published site until you publish one of the blocks in the elemental area that the reordered blocks live in. This is consistent with what happens when you reorder pages in the site tree. - -This release includes a number of bug fixes to improve a broad range of areas. Check the change logs for full details of these fixes split by module. Thank you to the community members that helped contribute these fixes as part of the release! - -### Sanitisation of HTML - -When you save content in a `HTMLEditorField`, the [`HTMLEditorSanitiser`](api:SilverStripe\Forms\HTMLEditor\HTMLEditorSanitiser) class is responsible for ensuring the HTML content is safe and matches the `valid_elements` and `extended_valid_elements` options you've defined. - -There was a bug that resulted in `HTMLEditorSanitiser` using the 'active' `HTMLEditorConfig` instance rather than the instance which was defined for the field. In many cases this goes unnoticed because the default active instance is very permissive, and TinyMCE does a lot of this work on the client-side, but it was possible to bypass the defined allowed HTML elements by sending requests directly to the server. - -This bug has been fixed, but some additional changes were required to facilitate it. See [changes to `TinyMCEConfig`](#changes-to-tinymce) for more details about those changes. - -### Restore batch action removed - -The "Restore" batch action was removed from the batch actions dropdown menu in the CMS as it has not functioned correctly for a long time. There is no intention at this stage to reintroduce this feature. - - - - -## Change log - -### Security {#changelog-security} - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-04-22 [60155dad4](https://github.com/silverstripe/silverstripe-framework/commit/60155dad417b6f78bd6bd9d8ac412bad47de6aa8) [SS-2024-001] Set convert_unsafe_embeds to true (Steve Boyd) - See [ss-2024-001](https://www.silverstripe.org/download/security-releases/ss-2024-001) - - 2024-04-16 [b8d20dc9d](https://github.com/silverstripe/silverstripe-framework/commit/b8d20dc9d531550e06fd7da7a0eafa551922e2e1) `Disallow data:text/html in data attributes` (Guy Sartorelli) - See [cve-2024-32981](https://www.silverstripe.org/download/security-releases/cve-2024-32981) - -- silverstripe/reports (5.2.0 -> 5.3.0-rc1) - - 2024-03-27 [0351106c](https://github.com/silverstripe/silverstripe-reports/commit/0351106c18ad4246d983b5f4e082c09c382121f4) Respect canView permissions for viewing reports (Guy Sartorelli) - See [cve-2024-29885](https://www.silverstripe.org/download/security-releases/cve-2024-29885) - -### Features and enhancements {#changelog-features-and-enhancements} - -- silverstripe/recipe-plugin (2.0.0 -> 2.0.1) - - 2024-06-05 [955a8d2](https://github.com/silverstripe/recipe-plugin/commit/955a8d23b15a7a01ec8e9703d9956824a09c4738) Use class name instead of self (Steve Boyd) - -- silverstripe/vendor-plugin (2.0.2 -> 2.0.3) - - 2024-06-05 [34f656b](https://github.com/silverstripe/vendor-plugin/commit/34f656b8c5ce96549c9658a8bf77f14f75996a39) Use class name instead of self (Steve Boyd) - -- silverstripe/assets (2.2.0 -> 2.3.0-rc1) - - 2024-08-21 [9584c31](https://github.com/silverstripe/silverstripe-assets/commit/9584c314a36123fd42da9b49a200e3eb0fbdf42a) ensure file title constructed from original filenam (Mohamed Alsharaf) - - 2024-07-29 [401277c](https://github.com/silverstripe/silverstripe-assets/commit/401277cedcc3572308e305dc0f53ff70d1926780) `Don't use keyword "self" (#622)` (Guy Sartorelli) - - 2024-06-30 [cf787b0](https://github.com/silverstripe/silverstripe-assets/commit/cf787b008619996e39160bb4ac4f6221ec25f636) Align rendering of image genercated by ImageShortCodeProvider with generic Image generation (#596) (Maxime Rainville) - - 2024-06-14 [7979fd7](https://github.com/silverstripe/silverstripe-assets/commit/7979fd73b88ed3a506b596ed99836890a20440e0) Use class name instead of self (Steve Boyd) - - 2024-06-07 [20cc083](https://github.com/silverstripe/silverstripe-assets/commit/20cc083e353205d741044553c60d3c5f581e8fe3) Scaffold formfields for File and Image using new API (#613) (Guy Sartorelli) - - 2024-06-04 [db48540](https://github.com/silverstripe/silverstripe-assets/commit/db4854046998b9e9fba4bbeb5a0b1f24d13e6426) Allow devs to define support for third-party intervention drivers (#610) (Guy Sartorelli) - - 2024-04-10 [ff5e8a7](https://github.com/silverstripe/silverstripe-assets/commit/ff5e8a743eea9cdddb900579a6e8c3d77a48e8ba) File converter API (#595) (Guy Sartorelli) - -- silverstripe/config (2.1.0 -> 2.1.1) - - 2024-06-05 [6563cb0](https://github.com/silverstripe/silverstripe-config/commit/6563cb0c4030e820bfbc70fae5317bcae3b259f4) Use class name instead of self (Steve Boyd) - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-08-12 [dca62c738](https://github.com/silverstripe/silverstripe-framework/commit/dca62c7380724fc44c8f390f4d129834c3ec1111) Make CMSFields scaffolding configurable, plus new options (#11328) (Guy Sartorelli) - - 2024-08-11 [eee7a84a4](https://github.com/silverstripe/silverstripe-framework/commit/eee7a84a480b028a3d925bc7483cae9c45e9d252) Add new method TabSet::changeTabOrder(). (#11329) (Guy Sartorelli) - - 2024-07-31 [9091ecfd3](https://github.com/silverstripe/silverstripe-framework/commit/9091ecfd3a59aa88d45134568552362245a4d9fb) `Don't use the keyword "self" (#11315)` (Guy Sartorelli) - - 2024-07-29 [d9bccaff3](https://github.com/silverstripe/silverstripe-framework/commit/d9bccaff3db5c76480d5879d6f5a312b29dca9c6) Don't use keywords self (#11313) (Guy Sartorelli) - - 2024-06-17 [620c1b046](https://github.com/silverstripe/silverstripe-framework/commit/620c1b04699daa1d306de130dbecd1f1a92583fc) Use class name instead of self (Steve Boyd) - - 2024-06-07 [be0eab2ba](https://github.com/silverstripe/silverstripe-framework/commit/be0eab2bae7cd3d0739a990ea83e46faba4928b6) Allow DataObject classes to define scaffolded relation formfields (#11269) (Guy Sartorelli) - - 2024-05-28 [e35f12c66](https://github.com/silverstripe/silverstripe-framework/commit/e35f12c66fcb1fbae73d7ed95f7ea5dc431d8817) Update AttributesHTML to output alt attribute even if it's empty (#11217) (Maxime Rainville) - - 2024-05-16 [56625081b](https://github.com/silverstripe/silverstripe-framework/commit/56625081b43d2d49530fae577cdaa3d8fa572c17) Use allowed view button for readonly GridField (#11228) (Guy Sartorelli) - - 2024-05-15 [12a741fee](https://github.com/silverstripe/silverstripe-framework/commit/12a741feee8443e7a55f1153c315b9beb01abdb5) Rendering scalars in ArrayList in templates (Steve Boyd) - - 2024-04-26 [142a318fa](https://github.com/silverstripe/silverstripe-framework/commit/142a318fa8f24f7f4bc5042fa3852beb4bd6d9aa) Return PJAX responses from gridfield edit forms (#11206) (Guy Sartorelli) - - 2024-04-18 [72692f9f1](https://github.com/silverstripe/silverstripe-framework/commit/72692f9f1017c932dde5fac77970bdfbe9de2f46) Make default TinyMCE settings configurable (Guy Sartorelli) - - 2024-04-18 [2bdc24c86](https://github.com/silverstripe/silverstripe-framework/commit/2bdc24c86a4474106a85f9e648379290408f057e) Set default valid_elements for new TinyMCE config (Guy Sartorelli) - - 2024-04-01 [b442d9d45](https://github.com/silverstripe/silverstripe-framework/commit/b442d9d45ad208e5a41987afdd3c2f237efe2f13) Let unit tests manipulate the DB before loading fixtures (#11182) (Guy Sartorelli) - - 2024-03-25 [492cb800f](https://github.com/silverstripe/silverstripe-framework/commit/492cb800fa09f7c1448a217393e61fed69b2cec6) store tableList in cache (#11183) (Thomas Portelange) - - 2024-03-21 [b167f470d](https://github.com/silverstripe/silverstripe-framework/commit/b167f470d768f246869ca517fed3f5b781aa15f3) Add Nice to DBField (Thomas Portelange) - -- silverstripe/admin (2.2.0 -> 2.3.0-rc1) - - 2024-07-18 [ef327402](https://github.com/silverstripe/silverstripe-admin/commit/ef32740246481b7beaa99941cb0a78423853eca7) Wait for promises before submitting forms (Steve Boyd) - - 2024-06-18 [cca9ed5f](https://github.com/silverstripe/silverstripe-admin/commit/cca9ed5f4051396e1ed790b92341732fec5f7b7a) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [7daeee4d](https://github.com/silverstripe/silverstripe-admin/commit/7daeee4d9dd700c055c82c998ee6c59575a76dba) Use class name instead of self (Steve Boyd) - - 2024-05-22 [65c0adb4](https://github.com/silverstripe/silverstripe-admin/commit/65c0adb4e03c30463adb9542e08097a318127fcc) Highlight the tabs which have validation errors (#1753) (Guy Sartorelli) - - 2024-05-09 [2fea8ca3](https://github.com/silverstripe/silverstripe-admin/commit/2fea8ca3adfe453b4e44a0cf5c2e9c84c2c535cf) Rebuild bundle (Steve Boyd) - - 2024-04-26 [d43e6dcc](https://github.com/silverstripe/silverstripe-admin/commit/d43e6dcc31f431723e1905d5011291a394c6894f) move private method to framework (#1730) (Guy Sartorelli) - - 2024-04-18 [d03d790c](https://github.com/silverstripe/silverstripe-admin/commit/d03d790c4457cf171d6a903efbda35fe1fec965c) Remove duplicated default settings from cms TinyMCE config (#1725) (Guy Sartorelli) - - 2024-04-17 [447fd34b](https://github.com/silverstripe/silverstripe-admin/commit/447fd34b0258f678ffde0bee9cfd204bb0251396) Add workflow permissions (Steve Boyd) - - 2021-11-08 [7130ae94](https://github.com/silverstripe/silverstripe-admin/commit/7130ae945bf8baec8d8c9ef16284e28bd7684cee) Open GridField rows in a new tab with Shift/Ctrl/Meta key (Sergey Shevchenko) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-15 [ea422107](https://github.com/silverstripe/silverstripe-asset-admin/commit/ea4221077174992525b065aa06ecef8e204f1f19) Don't emit deprecation warnings for unavoidable API calls (#1483) (Guy Sartorelli) - - 2024-06-20 [32ede202](https://github.com/silverstripe/silverstripe-asset-admin/commit/32ede202576c6db4d761e23b1af363bb73e4ed50) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [1f32e330](https://github.com/silverstripe/silverstripe-asset-admin/commit/1f32e3304a67cc9d7a1d59ae9db0a59d4641a337) Use class name instead of self (Steve Boyd) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-rc1) - - 2024-06-05 [6a731c2](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6a731c250251404c3560bb87c3d91ed409635307) Use class name instead of self (Steve Boyd) - -- silverstripe/cms (5.2.0 -> 5.3.0-rc1) - - 2024-09-11 [1dab0904](https://github.com/silverstripe/silverstripe-cms/commit/1dab090402d1914fef713344f1baa11b238ae287) Update default homepage content (#3001) (Annie Kyles) - - 2024-08-15 [96ce0927](https://github.com/silverstripe/silverstripe-cms/commit/96ce0927458d3ae2961f1e266e4e91b2bbbc1592) Don't emit deprecation warnings for unavoidable API calls (#2985) (Guy Sartorelli) - - 2024-06-17 [ea38c43e](https://github.com/silverstripe/silverstripe-cms/commit/ea38c43ea5352d4877c95c15118850f5456c4449) Use class name instead of self (Steve Boyd) - -- silverstripe/errorpage (2.2.0 -> 2.3.0-rc1) - - 2024-06-14 [f70cfc9](https://github.com/silverstripe/silverstripe-errorpage/commit/f70cfc994d4d358835d55801e21372ddd48848b7) Use class name instead of self (Steve Boyd) - -- silverstripe/reports (5.2.0 -> 5.3.0-rc1) - - 2024-06-05 [5819a3bd](https://github.com/silverstripe/silverstripe-reports/commit/5819a3bde4b3168a587d627cd3a1a7516aabf810) Use class name instead of self (Steve Boyd) - -- silverstripe/siteconfig (5.2.0 -> 5.3.0-rc1) - - 2024-06-05 [c7260fbe](https://github.com/silverstripe/silverstripe-siteconfig/commit/c7260fbed0124c7afcf75eb99c893b16a7081696) Use class name instead of self (Steve Boyd) - -- silverstripe/versioned (2.2.0 -> 2.3.0-rc1) - - 2024-06-18 [cde029b](https://github.com/silverstripe/silverstripe-versioned/commit/cde029be7fb495e3952d838f9d74e76da2d109ab) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-05 [09902f9](https://github.com/silverstripe/silverstripe-versioned/commit/09902f9b000abbf0b567377bcb1b7e7dc14528a6) Use class name instead of self (Steve Boyd) - -- silverstripe/graphql (5.2.0 -> 5.2.3) - - 2024-06-17 [c965269](https://github.com/silverstripe/silverstripe-graphql/commit/c965269b4f80c4badb849e581d50a554d4216cd1) Use self::class::method() syntax (Steve Boyd) - - 2024-06-14 [fb18d9d](https://github.com/silverstripe/silverstripe-graphql/commit/fb18d9d3a0de78374b38f70fea3583cfb8405b70) Use class name instead of self (Steve Boyd) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-rc1) - - 2024-06-14 [7552424](https://github.com/silverstripe/silverstripe-session-manager/commit/75524242cbc7d54bc342772a1251773a75542f0c) Use class name instead of self (Steve Boyd) - -- silverstripe/login-forms (5.2.0 -> 5.3.0-rc1) - - 2024-06-05 [b34ad95](https://github.com/silverstripe/silverstripe-login-forms/commit/b34ad95e9422c5eb44f4d4bfbe98bab363288cf1) Use class name instead of self (Steve Boyd) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0-rc1) - - 2024-06-05 [0ba82ee](https://github.com/silverstripe/silverstripe-documentconverter/commit/0ba82eeab731d96a048f417d3d6834d0d2237de9) Use class name instead of self (Steve Boyd) - -- silverstripe/tagfield (3.2.0 -> 3.3.0-rc1) - - 2024-06-05 [5bc5479](https://github.com/silverstripe/silverstripe-tagfield/commit/5bc54796a19fa616d6e8a15b6c90450fd3065168) Use class name instead of self (Steve Boyd) - -- silverstripe/blog (4.2.0 -> 4.3.0-rc1) - - 2024-06-05 [6c37e8f](https://github.com/silverstripe/silverstripe-blog/commit/6c37e8f77400b03bfb4c4db3925f662538031625) Use class name instead of self (Steve Boyd) - -- silverstripe/spamprotection (4.2.0 -> 4.2.1) - - 2024-06-14 [7ad6f85](https://github.com/silverstripe/silverstripe-spamprotection/commit/7ad6f8584fe596f288d5446ec445dd81307e0b2c) Use class name instead of self (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-rc1) - - 2023-08-21 [2f3f149](https://github.com/colymba/GridFieldBulkEditingTools/commit/2f3f149dd6ee77fcae7ab0ecf76fc60667bc94c1) Update translations (#245) (Guy Sartorelli) - - 2023-06-15 [0b610fb](https://github.com/colymba/GridFieldBulkEditingTools/commit/0b610fb06fdf24036c0847a55e233ea717f56e9b) Update translations (Steve Boyd) - - 2023-06-14 [e038dc3](https://github.com/colymba/GridFieldBulkEditingTools/commit/e038dc3a6d12522fe7d2f918015ad163f3062fcc) Update translations (Steve Boyd) - - 2023-05-30 [c818128](https://github.com/colymba/GridFieldBulkEditingTools/commit/c8181281c15900a82e3e6130d2d0052cefb4f184) Update translations (Steve Boyd) - -- silverstripe/contentreview (5.2.0 -> 5.3.0-rc1) - - 2024-06-05 [061245f](https://github.com/silverstripe/silverstripe-contentreview/commit/061245fe8e514f0676d56106a3e03f03ee09e253) Use class name instead of self (Steve Boyd) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-rc1) - - 2024-06-05 [be78f89](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/be78f890b612e5d77d57636bdd65bad8927ddef4) Use class name instead of self (Steve Boyd) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0-rc1) - - 2024-06-05 [ef49170](https://github.com/symbiote/silverstripe-advancedworkflow/commit/ef49170e64c505bf91816774ebc6e92479a48381) Use class name instead of self (Steve Boyd) - -- silverstripe/userforms (6.2.0 -> 6.3.0-rc1) - - 2024-06-14 [6541365](https://github.com/silverstripe/silverstripe-userforms/commit/6541365a8ea00a5692a649b5becbb8769055dcf8) Use class name instead of self (Steve Boyd) - - 2024-04-15 [1eb0c5f](https://github.com/silverstripe/silverstripe-userforms/commit/1eb0c5fa948d1dd2286e99bae60a83d1ad1ce4e1) Add classname to p tag (#1280) (Annie Kyles) - - 2024-03-17 [32d0158](https://github.com/silverstripe/silverstripe-userforms/commit/32d0158954b048b963405475140c40aa5c035d95) Add 'Includes' condition option to EmailRecipientCondition (#1275) (Sukhwinder Singh) - - 2024-03-12 [6191b49](https://github.com/silverstripe/silverstripe-userforms/commit/6191b4984dda38e7dd4631d599a951d373dfae46) Add extension hook for modifying submissions GridField (#1273) (James Cocker) - -- silverstripe/externallinks (3.2.0 -> 3.3.0-rc1) - - 2024-06-05 [e9de952](https://github.com/silverstripe/silverstripe-externallinks/commit/e9de9529808b8691ffe4154267a0d46e984e9de7) Use class name instead of self (Steve Boyd) - -- silverstripe/securityreport (3.1.0 -> 3.1.1) - - 2024-06-05 [32575f4](https://github.com/silverstripe/silverstripe-securityreport/commit/32575f49152e67642aadbf0befdfc00375a1feae) Use class name instead of self (Steve Boyd) - -- silverstripe/sitewidecontent-report (4.2.0 -> 4.3.0-rc1) - - 2024-06-05 [7b8e23f](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/7b8e23f818cc02f9995737749c7034c901b3016f) Use class name instead of self (Steve Boyd) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0-rc1) - - 2024-05-09 [e894458](https://github.com/bringyourownideas/silverstripe-maintenance/commit/e89445872e74ebb8d6ef01efd4b3ec05a5e0b983) Update reference to supported modules data (#220) (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (4.1.0 -> 4.1.2) - - 2024-06-05 [94ba665](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/94ba6652ff98e20fdc3bfdb8609c1327b30dbfe9) Use class name instead of self (Steve Boyd) - -- silverstripe/restfulserver (3.0.0 -> 3.0.1) - - 2024-06-14 [d395845](https://github.com/silverstripe/silverstripe-restfulserver/commit/d395845eb1b2641ec3426efe00ec47e29ea3badd) Use class name instead of self (Steve Boyd) - -- silverstripe/versionfeed (3.2.0 -> 3.2.3) - - 2024-06-05 [b2dd034](https://github.com/silverstripe/silverstripe-versionfeed/commit/b2dd034d1be8cb20ae4066857ebe93383609c8b3) Use class name instead of self (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-rc1) - - 2024-08-15 [4f4a006](https://github.com/silverstripe/silverstripe-elemental/commit/4f4a00677918f72adf866464d532aad099a8431b) Don't emit deprecation warnings for unavoidable API calls (#1233) (Guy Sartorelli) - - 2024-07-24 [823cc53](https://github.com/silverstripe/silverstripe-elemental/commit/823cc5334f7c097d45becf064d0dedb60d1c810d) Inline save all rendered element forms on parent form submit (Steve Boyd) - - 2024-06-18 [e58f939](https://github.com/silverstripe/silverstripe-elemental/commit/e58f93911b030649de2b17330697a5533688584c) Remove unused legacy graphql code (Steve Boyd) - - 2024-06-14 [51b178c](https://github.com/silverstripe/silverstripe-elemental/commit/51b178cdb75e1676180620de38608ec59e028c8a) Use class name instead of self (Steve Boyd) - - 2024-04-30 [344bc54](https://github.com/silverstripe/silverstripe-elemental/commit/344bc54e0214ef5f4ef0062fb47b46afb751ebd4) Refactor Element and graphql hoc (Steve Boyd) - - 2024-04-18 [e3dd091](https://github.com/silverstripe/silverstripe-elemental/commit/e3dd091135c02417151a123768655bb6cfa58639) Refactor Element to function component (Steve Boyd) - - 2024-04-16 [4789b34](https://github.com/silverstripe/silverstripe-elemental/commit/4789b34ea93b90e936024c62a47947752ddb7a43) Validation of fields when inline saving (Steve Boyd) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0-rc1) - - 2024-07-29 [fbbad23](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/fbbad2379663b92ad0417cf197b2672767e78569) `Don't use keyword "self" (#155)` (Guy Sartorelli) - -- silverstripe/environmentcheck (3.0.1 -> 3.0.2) - - 2024-06-05 [0908db8](https://github.com/silverstripe/silverstripe-environmentcheck/commit/0908db80168f427cfb6716092d6ffae81995c702) Use class name instead of self (Steve Boyd) - -- silverstripe/hybridsessions (3.0.3 -> 3.0.5) - - 2024-06-05 [70b760d](https://github.com/silverstripe/silverstripe-hybridsessions/commit/70b760d0d660f87bee48a76393f9b5c0cf32ff75) Use class name instead of self (Steve Boyd) - -- silverstripe/mfa (5.2.0 -> 5.3.0-rc1) - - 2024-06-05 [84cdae1](https://github.com/silverstripe/silverstripe-mfa/commit/84cdae1f7c29682c1e24c003272b0868d5eab0c0) Use class name instead of self (Steve Boyd) - -- silverstripe/crontask (3.0.3 -> 3.0.4) - - 2024-06-05 [cadce9e](https://github.com/silverstripe/silverstripe-crontask/commit/cadce9eac9b65268d122abb7758f286fbe3dd669) Use class name instead of self (Steve Boyd) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-06-05 [b200f00](https://github.com/silverstripe/silverstripe-ldap/commit/b200f000dccb6e197cd47b9d43e6e698b35ce581) Use class name instead of self (Steve Boyd) - -- silverstripe/textextraction (4.1.0 -> 4.1.1) - - 2024-06-05 [7149050](https://github.com/silverstripe/silverstripe-textextraction/commit/714905014702ad15eae5ec29d5021f8a330d80f4) Use class name instead of self (Steve Boyd) - -- silverstripe/realme (5.3.0 -> 5.4.0-rc1) - - 2024-06-05 [aae799a](https://github.com/silverstripe/silverstripe-realme/commit/aae799a5fbea18dabf31a046c4d53a4a93a763d8) Use class name instead of self (Steve Boyd) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0-rc1) - - 2024-06-05 [14806b2](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/14806b2ab00ce97467f01e546fc2f2af069ee552) Use class name instead of self (Steve Boyd) - -- silverstripe/subsites (3.2.0 -> 3.3.0-rc1) - - 2024-06-05 [ad2c5d8](https://github.com/silverstripe/silverstripe-subsites/commit/ad2c5d8eded8542588fe7cd305d3802f1b0b5059) Use class name instead of self (Steve Boyd) - - 2024-03-28 [6ba7385](https://github.com/silverstripe/silverstripe-subsites/commit/6ba7385f5dc4c283efd1e27430a959bd82f31e3a) Use cached table list from ClassInfo (#564) (Thomas Portelange) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-rc1) - - 2024-06-05 [9f5dbbe](https://github.com/silverstripe/silverstripe-lumberjack/commit/9f5dbbeae5240bb0cb605612359641d7f869e906) Use class name instead of self (Steve Boyd) - -- silverstripe/staticpublishqueue (6.2.0 -> 6.2.2) - - 2024-06-14 [ade614c](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/ade614c2314341d6f1686ffa4bfd726c21004976) Use class name instead of self (Steve Boyd) - -- cwp/agency-extensions (3.2.0 -> 3.3.0-rc1) - - 2024-06-05 [dc59615](https://github.com/silverstripe/cwp-agencyextensions/commit/dc596155dc3c4a81f025d7c773158994bdf3ba72) Use class name instead of self (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-rc1) - - 2024-08-01 [6c6f43c](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/6c6f43ca84a6b85b00f3f8f60bc4045d7a2de875) `Don't use keyword "self" (#410)` (Guy Sartorelli) - - 2024-06-05 [abe2359](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/abe2359f7890f4d923a2b75d7bd7afc8d026f84b) Use class name instead of self (Steve Boyd) - - 2024-04-12 [db3edd7](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/db3edd7f1644788cfd3717b89ebcdce6d21565fa) Initial nested gridfield component (Niklas Forsdahl) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0-rc1) - - 2024-06-27 [dbbcd67](https://github.com/symbiote/silverstripe-queuedjobs/commit/dbbcd67896693d4ac79e1fe12e69dcc7f449e582) Send an email notification when a job is broken (Steve Boyd) - - 2024-06-14 [793e73d](https://github.com/symbiote/silverstripe-queuedjobs/commit/793e73da01bb91394ab4576bdc258fc6bdaf8e86) Use class name instead of self (Steve Boyd) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2024-07-29 [8c9745e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8c9745e0e273e7c11dfd2b92ca73598931f35747) Don't use keyword self (Guy Sartorelli) - - 2024-06-10 [201826e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/201826ed8225873fc11e57efc0004b65b1df3ec7) Revert temporary locale fix (Steve Boyd) - - 2024-06-05 [092638a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/092638a56fbde6778a27b2cf46d383b8bb0bd143) Use class name instead of self (Steve Boyd) - - 2024-04-04 [d426370](https://github.com/tractorcow-farm/silverstripe-fluent/commit/d42637098a790617db459560e2230e56269b5ab8) Localisation manager links available for CMS edit link capable models. (Mojmir Fendek) - - 2024-03-27 [9aea31d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9aea31d68c63b7b834afb4140678aec95db1bdfd) Added dev/task to initialise DataObjects for existing datasets (Nathan J. Brauer) - - 2024-03-20 [fd05311](https://github.com/tractorcow-farm/silverstripe-fluent/commit/fd053115adb5b27305667cec2101beb9e1f17827) Add ability to ignore domains entirely (Thomas Portelange) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-rc1) - - 2024-08-15 [c76fdba](https://github.com/silverstripe/silverstripe-linkfield/commit/c76fdba2b7f0c3a1ece58d702c631f5552eb6073) Don't emit deprecation warnings for unavoidable API calls (#319) (Guy Sartorelli) - - 2024-06-05 [81a65c0](https://github.com/silverstripe/silverstripe-linkfield/commit/81a65c03a2c96b7f82b1a04570123ce630674089) Use class name instead of self (Steve Boyd) - - 2024-04-02 [ef75425](https://github.com/silverstripe/silverstripe-linkfield/commit/ef754257eb97fbea46e536e593274334fd4a4b3b) Better use of ARIA attributes (Steve Boyd) - - 2024-04-02 [b5c56e9](https://github.com/silverstripe/silverstripe-linkfield/commit/b5c56e91cbbb23f997336905f94515af385bd350) Improve component focusing (Steve Boyd) - - 2024-04-02 [5864546](https://github.com/silverstripe/silverstripe-linkfield/commit/5864546dade05a4ef3aad8530142515394fc91b9) Use li for multi links (Steve Boyd) - - 2024-04-01 [495dc35](https://github.com/silverstripe/silverstripe-linkfield/commit/495dc35b99f88b1d1998a61688c933654f08022c) Add migration task from gorriecoe/silverstripe-link (#253) (Guy Sartorelli) - - 2024-03-20 [4d9c84f](https://github.com/silverstripe/silverstripe-linkfield/commit/4d9c84f4a1187bbe800b7b0225476ee82c965057) LinkableMigrationTask for migrating sheadawson-linkable links (Sabina Talipova) - - 2024-03-19 [393f64f](https://github.com/silverstripe/silverstripe-linkfield/commit/393f64fe3e88b3be1afb16542d4dbd97dd476f4d) Add migration task from older versions of the module (#244) (Guy Sartorelli) - -### Bugfixes {#changelog-bugfixes} - -- silverstripe/assets (2.2.0 -> 2.3.0-rc1) - - 2024-06-04 [c4081b9](https://github.com/silverstripe/silverstripe-assets/commit/c4081b956807b197d1a7df4eb0fa4b112121e9e2) Ensure manipulations start with base file (#612) (Guy Sartorelli) - - 2024-05-15 [7266f83](https://github.com/silverstripe/silverstripe-assets/commit/7266f8337a3cb3a3ce9842b1a7fcf93623e71262) Ensure public url slashes are forward slashes (Steve Boyd) - - 2024-04-30 [41378dc](https://github.com/silverstripe/silverstripe-assets/commit/41378dc6054c04ff6a09a1d191b1aab5c4d17920) Make sure the cache shortcode value is used in FileShortcodeProvider (#598) (Maxime Rainville) - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-09-20 [829a28dc6](https://github.com/silverstripe/silverstripe-framework/commit/829a28dc68906ea9311fbeacec0edaa764edf0a8) Member form validator fix. (Mojmir Fendek) - - 2024-08-14 [25a41de8b](https://github.com/silverstripe/silverstripe-framework/commit/25a41de8b59c5c111a7d4895e4df9561fca273ec) Run ANALYZE TABLE before fetching table stats (Steve Boyd) - - 2024-08-08 [7b91207c1](https://github.com/silverstripe/silverstripe-framework/commit/7b91207c12405cb42f2f7658fbf1db72be1cc2d6) Don't error if template global is null (#11331) (Guy Sartorelli) - - 2024-08-06 [8c80a4fd1](https://github.com/silverstripe/silverstripe-framework/commit/8c80a4fd1e92b1d0d019f4653065bd749730b358) Do not suffix trailing slash to external links (Steve Boyd) - - 2024-08-06 [9fae48bbd](https://github.com/silverstripe/silverstripe-framework/commit/9fae48bbd74f8f710bb5f72c2fa7f68e1f959c9f) Allow clearing lazyloaded SearchableDropdownField. (#11324) (Guy Sartorelli) - - 2024-08-06 [c3f0104a8](https://github.com/silverstripe/silverstripe-framework/commit/c3f0104a89aafea617690697dfcefa39980f04b1) Clear table logic for MySQL 8 (Steve Boyd) - - 2024-07-25 [fb7b1734e](https://github.com/silverstripe/silverstripe-framework/commit/fb7b1734eb58f01a466bdb002c50647d221332bf) Readonly transformation of lazy-loaded searchable dropdown (#11297) (Johannes Hammersen) - - 2024-07-25 [f91b279ef](https://github.com/silverstripe/silverstripe-framework/commit/f91b279ef0fd7e8ff26de971352fcb8731528d37) `Don't generate table alias for "from" statement that are not column names.` (Maxime Rainville) - - 2024-07-19 [539d4645b](https://github.com/silverstripe/silverstripe-framework/commit/539d4645b98b07c9d6c6cae0e971df2a1386fca2) Truncate table to clear table (Steve Boyd) - - 2024-07-09 [c13ec3411](https://github.com/silverstripe/silverstripe-framework/commit/c13ec34113737626058b8b68792c9e8c527dba5e) `Don't strip <header> tag from HTMLValue (#11302)` (Guy Sartorelli) - - 2024-07-08 [0bb88d098](https://github.com/silverstripe/silverstripe-framework/commit/0bb88d0988bffdc9dbd0f083e1e32f440f85030f) Don't pass labelfield as value for SEarchableDropdownField (#11303) (Guy Sartorelli) - - 2024-07-03 [1943f9d41](https://github.com/silverstripe/silverstripe-framework/commit/1943f9d4173df4cb39992b960b870d5e41780348) DBForeignKey scaffolding missing parameter (#11295) (Johannes Hammersen) - - 2024-06-19 [ce5cfcac6](https://github.com/silverstripe/silverstripe-framework/commit/ce5cfcac61e42c0457aa6709dd2ab0b314bacd48) Remove write from SearchableDropdownTrait (johannes.hammersen) - - 2024-06-16 [1e0b9056f](https://github.com/silverstripe/silverstripe-framework/commit/1e0b9056f5309363ee0a31d7619a85f030e415dc) Don't load data up front for lazy-loaded searchable dropdown (#11278) (Guy Sartorelli) - - 2024-05-21 [f0aaba550](https://github.com/silverstripe/silverstripe-framework/commit/f0aaba5504aa070519792db8d63445f73b26362a) HTMLEditorField is not able to show html or xml code examples (#11243) (Sabina Talipova) - - 2024-05-19 [470293a6d](https://github.com/silverstripe/silverstripe-framework/commit/470293a6d215c446d66806990def0631fd99f923) 'which' check in 'sake' now works for aliases (#11232) (Hernold Koch) - - 2024-05-17 [699a8bf2d](https://github.com/silverstripe/silverstripe-framework/commit/699a8bf2daf1b7f28c034c68d0b69d499ee53a0e) Loop over current scope when no argument passed to loop block (Guy Sartorelli) - - 2024-05-13 [50a001836](https://github.com/silverstripe/silverstripe-framework/commit/50a00183639f6fb1816d42bafa3cb7cfb881c5ee) many_many through should allow subclasses (#11230) (Guy Sartorelli) - - 2024-05-07 [0f6d21060](https://github.com/silverstripe/silverstripe-framework/commit/0f6d2106021add81fbe8bd5fd4e143cd74633e45) Correctly eagerload polymorphic has_one relations (#11204) (Dominik Beerbohm) - - 2024-05-06 [3449d8bf2](https://github.com/silverstripe/silverstripe-framework/commit/3449d8bf212685908bddabd07e7d2b35d3c4cd33) `Revert "ENH Add Nice to DBField" (#11222)` (Guy Sartorelli) - - 2024-05-06 [a198c9162](https://github.com/silverstripe/silverstripe-framework/commit/a198c91628fa42c8841170a745ec5cf0a75f475b) Don't throw exception for empty eagerloaded relation (#11220) (Guy Sartorelli) - - 2024-05-06 [a92baeaf6](https://github.com/silverstripe/silverstripe-framework/commit/a92baeaf6fffb217260f118ad7335f1791144740) Allow double dots in path when not attempting directory traversal (#11219) (Guy Sartorelli) - - 2024-05-02 [b8f0b8ca4](https://github.com/silverstripe/silverstripe-framework/commit/b8f0b8ca4f72a12f22e5c4d8d91d04be276a3439) Handle getting HasOneRelationFieldInterface passed as an array (Steve Boyd) - - 2024-04-18 [a4adad60e](https://github.com/silverstripe/silverstripe-framework/commit/a4adad60e96cdcb8ebc87ea9f935cce47ac06a3a) Don't skip sanitisation when no valid elements are defined (Guy Sartorelli) - - 2024-04-15 [a53301f67](https://github.com/silverstripe/silverstripe-framework/commit/a53301f6739534841a8946d050344c9cf5c082ad) OutOfBoundsException when recipe-core isn't installed (fixes #11197) (Loz Calver) - - 2024-03-26 [135f9c6d3](https://github.com/silverstripe/silverstripe-framework/commit/135f9c6d3025259b519dfec351e3e85ecf2f46c5) Ensure eagerLoading don't load has_one twice (#11170) (Dominik Beerbohm) - - 2024-03-14 [9361382be](https://github.com/silverstripe/silverstripe-framework/commit/9361382be3d97e1fffe518f85b7d5f802ae7a2e6) mark a successful login attempt when completing a password reset (#10099) (Will Rossiter) - - 2023-10-15 [99e965b5d](https://github.com/silverstripe/silverstripe-framework/commit/99e965b5d7b3a90ce6be0b1233c3e9828c9a79b7) Use field editorconfig when sanitising content (Bernie Hamlin) - -- silverstripe/admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-25 [27a2da76](https://github.com/silverstripe/silverstripe-admin/commit/27a2da76a74fc66c3bd38e9173b9090cfb57341f) Fix TinyMCE edit link when link contains html (#1814) (Mo Alsharaf) - - 2024-07-29 [806ba31e](https://github.com/silverstripe/silverstripe-admin/commit/806ba31ea82a3beb8649a7d17542b820829b5fa2) Correctly set img tag attributes for WYSIWYG (#1798) (Guy Sartorelli) - - 2024-06-20 [2730ef73](https://github.com/silverstripe/silverstripe-admin/commit/2730ef73c51858f996429aa10099a8489eb3741c) Restore correct margin for gridfield (#1790) (Guy Sartorelli) - - 2024-06-19 [a11d448e](https://github.com/silverstripe/silverstripe-admin/commit/a11d448e3c013d22ef773d8c70d43237c924fafa) Use correct argument for FormBuilder context (Steve Boyd) - - 2024-05-31 [effbe4f3](https://github.com/silverstripe/silverstripe-admin/commit/effbe4f37d48e26040fa0874f939a6aa986d76ec) Allow reloading react forms based on changes to a prop (#1771) (Guy Sartorelli) - - 2024-05-22 [8dc91bd1](https://github.com/silverstripe/silverstripe-admin/commit/8dc91bd195fd82658594478ab1a7480354bf506b) Ensure tab is highlighted for validation error (#1751) (Guy Sartorelli) - - 2024-05-08 [78eb1775](https://github.com/silverstripe/silverstripe-admin/commit/78eb177565cf01e7a0eebb7cf111d35a18a15fae) Update model class importers (Mike Nuguid) - - 2024-05-07 [98096401](https://github.com/silverstripe/silverstripe-admin/commit/98096401fb1930986d5fe587d79912b3eccd9da9) Rebuild bundle (Steve Boyd) - - 2024-05-05 [038173c2](https://github.com/silverstripe/silverstripe-admin/commit/038173c2934546163fa30fd88eb969ecb39889e1) SearchableDropdownField pass incorrect value on onChange event (Sabina Talipova) - - 2024-04-30 [34348736](https://github.com/silverstripe/silverstripe-admin/commit/3434873604624bbd6bffc2d51885c49a7bd49936) Repalce mouseDown with keyDown event on treedropdown option button (#1732) (Sabina Talipova) - - 2024-04-17 [494203ea](https://github.com/silverstripe/silverstripe-admin/commit/494203ea7bb99c23352eabb65da070d6d7ea4b7b) Ensure message events are handled correctly (#1724) (Guy Sartorelli) - - 2024-03-14 [64135431](https://github.com/silverstripe/silverstripe-admin/commit/64135431a2b7f42c47fe5a750de8dcfa19a635b1) Enable bypassing entwine onsubmit handler (Steve Boyd) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-rc1) - - 2024-06-18 [0c02307](https://github.com/silverstripe/silverstripe-versioned-admin/commit/0c02307020afaf94445bcbcbc08fb16431c72156) Allow no recordId to be passed in to avoid console error in dev (#347) (Steve Boyd) - -- silverstripe/cms (5.2.0 -> 5.3.0-rc1) - - 2024-09-11 [42f72f5b](https://github.com/silverstripe/silverstripe-cms/commit/42f72f5b0438a6382b13c4b999a55b9f8603585e) Remove legacy fields which prevent page publish (fixes #2455) (Loz Calver) - - 2024-07-18 [90723451](https://github.com/silverstripe/silverstripe-cms/commit/907234511ee1deaf04e37ff109ba29b8c41f85aa) Don't double up the breadcrumb on list views (Maxime Rainville) - - 2024-05-09 [687c69c5](https://github.com/silverstripe/silverstripe-cms/commit/687c69c515e3387bd790236580b7c7c178a1e3ff) Remove broken restore batch action (Steve Boyd) - -- silverstripe/versioned (2.2.0 -> 2.3.0-rc1) - - 2024-08-19 [0650135](https://github.com/silverstripe/silverstripe-versioned/commit/0650135529a128ee8408ac7e7c11c5a6ef37ab2b) Include deprecation import (Steve Boyd) - -- silverstripe/graphql (5.2.0 -> 5.2.3) - - 2024-05-08 [d6e7735](https://github.com/silverstripe/silverstripe-graphql/commit/d6e7735562538d1432e968cf3ba1491419a2ed4a) Don't attempt to correct sort when passed as an argument (closes #571) (Loz Calver) - -- silverstripe-themes/simple (3.3.1 -> 3.3.2) - - 2019-02-05 [2ba821e](https://github.com/silverstripe/silverstripe-simple/commit/2ba821edd53ab323dfdb4e7aaeaa75de227ca1ed) `#64: TinyMCE text and image alignment issue` (Shenghan Chen) - -- silverstripe/blog (4.2.0 -> 4.3.0-rc1) - - 2024-05-10 [bad865d](https://github.com/silverstripe/silverstripe-blog/commit/bad865dc65fcf4cd95289c6127c11aea4f394f28) Don't hardcode table name (#629) (Werner Krauß) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-rc1) - - 2024-09-19 [901c64f](https://github.com/colymba/GridFieldBulkEditingTools/commit/901c64f7a75e232127da909b7a0fefd61f433e39) fix multiple things in EditHandler (Thomas Portelange) - - 2024-05-29 [e6b27ac](https://github.com/colymba/GridFieldBulkEditingTools/commit/e6b27ac50165758980f8ed08532d5865131f1d78) No more floating checkboxes (#286) (Guy Sartorelli) - - 2024-04-29 [f842a30](https://github.com/colymba/GridFieldBulkEditingTools/commit/f842a301cd8e6e8975103709808180832c278653) fix missing import (Thomas Portelange) - - 2024-03-04 [379fda0](https://github.com/colymba/GridFieldBulkEditingTools/commit/379fda091b63db890abeb18fb7143d67d1f9f34a) `HTTPBulkToolsResponse.addSuccessRecords() fn` (Peter Schiffer) - -- silverstripe/userforms (6.2.0 -> 6.3.0-rc1) - - 2024-08-27 [db8adf5](https://github.com/silverstripe/silverstripe-userforms/commit/db8adf589071ccc2252dc355eca1f9126aef05a0) Duplicate userforms using cascade_duplicates config (#1320) (Guy Sartorelli) - - 2024-08-05 [c822f24](https://github.com/silverstripe/silverstripe-userforms/commit/c822f240af2c6dc8bef0bad3f020d7a444d92195) Update EditableFormHeading.php to output unique ID attributes to comply with accessibility standards (Dan) - - 2024-05-30 [cccc3f7](https://github.com/silverstripe/silverstripe-userforms/commit/cccc3f7ec3d97308541efc2549c341fa9c935c47) fix: prevent CMS requirements from leaking into preview email (Will Rossiter) - - 2024-05-30 [b429efb](https://github.com/silverstripe/silverstripe-userforms/commit/b429efb2ba277a3628d5abb669b8cbe1cb8700ab) Fix layout issues with userform in elemental context (#1294) (Mo Alsharaf) - - 2024-05-24 [24ba62a](https://github.com/silverstripe/silverstripe-userforms/commit/24ba62ab069c8fc6d5c539474302ceb900702264) Don't emit deprecation warning for calling deprecated methods (#1293) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-rc1) - - 2024-08-16 [42fc926](https://github.com/silverstripe/silverstripe-elemental/commit/42fc92646c9b02aa00ddb4c16f52454c995c64e8) Don't update sort order in live until a block has been published (#1234) (Guy Sartorelli) - - 2024-06-20 [3ce68e5](https://github.com/silverstripe/silverstripe-elemental/commit/3ce68e51c3ac6309196b6ee27610f13f38fd84d9) Restore correct margin for elemental history (#1213) (Guy Sartorelli) - - 2024-05-07 [e2f742b](https://github.com/silverstripe/silverstripe-elemental/commit/e2f742b7ee4706196d119d1904798ee8ac0c051c) Improve non-inline validation (Steve Boyd) - -- silverstripe/auditor (3.1.0 -> 3.2.0-rc1) - - 2024-04-24 [7a1b7b1](https://github.com/silverstripe/silverstripe-auditor/commit/7a1b7b1c9b59bcf6b2f42884029acaf1d800408e) Use correct namespace for session manager controller (Steve Boyd) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0-rc1) - - 2024-04-11 [cdfaf149](https://github.com/silverstripe/developer-docs/commit/cdfaf14960a279ccca687353c98f21af068d1009) Fix FieldName typo (Corey Sewell) - -- silverstripe/subsites (3.2.0 -> 3.3.0-rc1) - - 2024-08-13 [6536e8f](https://github.com/silverstripe/silverstripe-subsites/commit/6536e8f524771190c0170b583bacd1602b5b3191) Correct trailing slash for subsite in another domain (#590) (Guy Sartorelli) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-rc1) - - 2019-03-19 [126a7df](https://github.com/silverstripe/silverstripe-lumberjack/commit/126a7dfea69bbbe02874c477dcbeb46b6cb3295b) Ensure correct link is used when gridfield is readonly (Aljoša Balažic) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-rc1) - - 2024-06-21 [c8cbc47](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c8cbc470e84e059c67bfef1407eed0c30b2ceb81) Prevent popping open cms-menu when using nested gridfield (Steve Boyd) - - 2024-05-21 [945ea7f](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/945ea7fc0b7396e9c351577ebc83f8280f85fa11) Make child responsible for its own nested gridfield (Guy Sartorelli) - - 2020-06-01 [80a4d9c](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/80a4d9c3119eaeacc663c2b797f5efe04167c29b) Fixed move to prev/next page functionality (fixes #307) (Loz Calver) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2024-08-19 [4448bef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4448bef7b8d9a3addd34a919c7af358e14e83c48) Remove header filter from localisation grid field (Mohamed Alsharaf) - - 2024-08-13 [8f7d803](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8f7d8032690da59e9c8aca9ff8ad4140da2a97c0) Correct trailing slash for locale in another domain (#872) (Guy Sartorelli) - - 2024-06-10 [713786b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/713786bdb89b973926c273c7a2e68bb346d02c7e) Preview link when no locale set (Steve Boyd) - - 2024-06-06 [2714bff](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2714bff77c5baebcabf63e5aa281be57f9b05dbf) Create a temp locale if there is not a default (Steve Boyd) - - 2024-06-06 [eaece0a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/eaece0a7e1c8e3a4492d3d290c84993b52c82b4c) Only select columns from the current database (Steve Boyd) - - 2024-03-24 [11e92f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/11e92f4ca2a8d7e8012db31b7a6b9ff2c7a12689) fix: check for request prior to access (Damian Mooyman) - - 2024-03-24 [8985d8c](https://github.com/tractorcow-farm/silverstripe-fluent/commit/8985d8c8db9f69ae7d1c9e44bb3e1b122c94f074) fix: check for request prior to access (Damian Mooyman) - - 2024-03-24 [6961bc7](https://github.com/tractorcow-farm/silverstripe-fluent/commit/6961bc7b0bd54ab1fa5d60f7e3586fbbb0184f21) fix: don't invoke db for ready check outside of dev urls (Damian Mooyman) - - 2024-03-20 [05ef577](https://github.com/tractorcow-farm/silverstripe-fluent/commit/05ef5774130a5102d7e2fd089516536745850900) fix: redundant import (Damian Mooyman) - - 2024-03-20 [f79f0f9](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f79f0f90174f1b1ae49bd4656dc2accd7a2add62) fix: don't invoke db for ready check outside of dev urls (Damian Mooyman) - - 2024-02-08 [14ecdb1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/14ecdb1f6b03328f76c7c8adfe2eb6e222725e56) allows i18nTextCollector to concatenate keys (David Toews) - - 2023-11-14 [f18bc71](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f18bc716ff94f1f7b55eb4bd7b5ac7d9a388fb76) fix: allow plugins (Damian Mooyman) - - 2023-05-23 [f07b036](https://github.com/tractorcow-farm/silverstripe-fluent/commit/f07b03663d3acdbfd55bb9f8f2934ab8680757a9) Don't try to preview unlocalised objects (#781) (Guy Sartorelli) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-rc1) - - 2024-09-11 [2ca8c0a](https://github.com/silverstripe/silverstripe-linkfield/commit/2ca8c0ae269deb81a8ac4a0edfe49587341547e7) Don't split ID into separate digits (#335) (Guy Sartorelli) - - 2024-08-07 [05f0bd7](https://github.com/silverstripe/silverstripe-linkfield/commit/05f0bd7dd9832c39e4011f31e3dc673c397ba647) Check canArchive() permission instead of canDelete() (Steve Boyd) - - 2024-05-23 [33621d0](https://github.com/silverstripe/silverstripe-linkfield/commit/33621d0a9104de2297fc175fd97937486590da9a) Don't pass null into ArrayList (#290) (Guy Sartorelli) - - 2024-05-02 [e5cc291](https://github.com/silverstripe/silverstripe-linkfield/commit/e5cc291aec0c4de54289ffc7c28a7d7ed663a1bd) `Handle a string "0" value` (Steve Boyd) - - 2024-03-26 [8e8a47a](https://github.com/silverstripe/silverstripe-linkfield/commit/8e8a47aeba0f2ed3331f5344c38bae2036f2ec0a) Linkfield sorting issue (Sabina Talipova) - -### Api changes {#changelog-api-changes} - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-08-20 [743fe245a](https://github.com/silverstripe/silverstripe-framework/commit/743fe245aa7a1f06a1083e511cddf77300c758bc) Deprecate DataExtension (Steve Boyd) - - 2024-07-03 [724e813b8](https://github.com/silverstripe/silverstripe-framework/commit/724e813b8fe0367601b918276fbf376855967983) Make token regeneration optional during autologin session renewal (Garion Herman) - - 2024-06-12 [049e54624](https://github.com/silverstripe/silverstripe-framework/commit/049e546247ac6957885f862124d23cc50daf5dc9) Deprecate references to installation tool (#11275) (Guy Sartorelli) - - 2024-05-14 [0ba85bc1d](https://github.com/silverstripe/silverstripe-framework/commit/0ba85bc1d00281c79f8623186b2e5ba6a3ec2929) Deprecate passing non-arrays to FieldList methods (Steve Boyd) - -- silverstripe/admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-20 [611dc588](https://github.com/silverstripe/silverstripe-admin/commit/611dc588e0c4138ff74a07b896db54d951c03058) Deprecate LeftAndMainExtension (Steve Boyd) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-22 [ae7c21eb](https://github.com/silverstripe/silverstripe-asset-admin/commit/ae7c21eb4c6d1da8d0b889f87437a9c2459a1747) Deprecate extension to be replaced with config (#1489) (Guy Sartorelli) - - 2024-08-18 [81b03208](https://github.com/silverstripe/silverstripe-asset-admin/commit/81b0320809f5a55a578d4c46869c490110e3e3c7) Deprecate GraphQL (Steve Boyd) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-22 [af19bc1](https://github.com/silverstripe/silverstripe-campaign-admin/commit/af19bc100146d4776e5b3eae0a724e04ee7b3ab8) Deprecate extension to be replaced with config (#325) (Guy Sartorelli) - -- silverstripe/cms (5.2.0 -> 5.3.0-rc1) - - 2024-08-20 [5e3e8479](https://github.com/silverstripe/silverstripe-cms/commit/5e3e8479980da2bda81290783fd8c5c0a5af0727) Deprecate SiteTreeExtension (Steve Boyd) - - 2024-08-18 [391c1cea](https://github.com/silverstripe/silverstripe-cms/commit/391c1cea0ca3811ae32a05f34fe932320b790bdf) Deprecate GraphQL (Steve Boyd) - - 2024-06-12 [8fa7bffd](https://github.com/silverstripe/silverstripe-cms/commit/8fa7bffd78279c0125a3b103845987e534565885) Deprecate references to installation tool (#2962) (Guy Sartorelli) - -- silverstripe/versioned (2.2.0 -> 2.3.0-rc1) - - 2024-08-18 [812d1a1](https://github.com/silverstripe/silverstripe-versioned/commit/812d1a1a776e3866909d9a0dc00ea351c2d5e737) Deprecate GraphQL (Steve Boyd) - - 2024-08-15 [4bc9abd](https://github.com/silverstripe/silverstripe-versioned/commit/4bc9abdfa9a1b41b194b61606bbbc997b3205906) Deprecate Versioned::canArchive() (#461) (Guy Sartorelli) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-rc1) - - 2024-08-19 [8c23041](https://github.com/silverstripe/silverstripe-session-manager/commit/8c23041c63cb119d9574bb82f5a12e4ee6181dbb) Use symfony for IPUtils (Steve Boyd) - -- silverstripe/blog (4.2.0 -> 4.3.0-rc1) - - 2024-08-20 [7ad58bb](https://github.com/silverstripe/silverstripe-blog/commit/7ad58bb9a0c9e3897bf3afa7abbd167f0a2f980c) Deprecate widget classes (Steve Boyd) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-rc1) - - 2024-08-19 [13809b9](https://github.com/colymba/GridFieldBulkEditingTools/commit/13809b999ab76f7c446c9fc78bddf81c47b97c65) Added fileID and record variables to onBulkUpload hook (Benjamin Blake) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-rc1) - - 2024-08-22 [9453721](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/94537216366201a766e6463a6b30f06121263d78) Deprecate extension to be replaced with config (#255) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-rc1) - - 2024-08-22 [35e3eb9](https://github.com/silverstripe/silverstripe-elemental/commit/35e3eb9ce645a78a9dc93492077be62143fcc990) Deprecate extension to be replaced with config (#1243) (Guy Sartorelli) - - 2024-08-19 [c3f3660](https://github.com/silverstripe/silverstripe-elemental/commit/c3f3660b70bcaa3338ce1323f2acfb3fb6fb7170) Deprecate GraphQL (Steve Boyd) - - 2024-05-29 [35c723d](https://github.com/silverstripe/silverstripe-elemental/commit/35c723d79458a766d6153f101d4c839cb92dae26) Deprecate BaseElement::getDescription() (#1196) (Guy Sartorelli) - -- silverstripe/auditor (3.1.0 -> 3.2.0-rc1) - - 2024-04-28 [5fe202e](https://github.com/silverstripe/silverstripe-auditor/commit/5fe202ec9d20f2188213af21f12d659d9f3ad17e) Deprecate ProxyDBExtension (Steve Boyd) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2023-02-17 [43dc86d](https://github.com/tractorcow-farm/silverstripe-fluent/commit/43dc86d3ba361cd5e55737022335e1ff04f316c3) Standardise deprecations (Guy Sartorelli) - -### Dependencies {#changelog-dependencies} - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-08-19 [16a8132be](https://github.com/silverstripe/silverstripe-framework/commit/16a8132bec7299e97581f221920dd9d966a43d7a) Use symfony for IPUtils (Steve Boyd) - -- silverstripe/admin (2.2.0 -> 2.3.0-rc1) - - 2024-09-01 [c21cf6d2](https://github.com/silverstripe/silverstripe-admin/commit/c21cf6d2a955ce8a172307e7b4fbd4e84fda8553) Update JS dependencies (#1821) (github-actions[bot]) - - 2024-07-29 [5df97257](https://github.com/silverstripe/silverstripe-admin/commit/5df9725764fa5cb094adae1e92c9881a27068a08) Conflict with incompatible version of elemental (#1800) (Guy Sartorelli) - - 2024-06-10 [df02655f](https://github.com/silverstripe/silverstripe-admin/commit/df02655fda905b483dc85cfed8b1c761b48ad8f6) Update validator js dep to fix date validation bug (#1775) (Guy Sartorelli) - - 2024-06-05 [fc76d17d](https://github.com/silverstripe/silverstripe-admin/commit/fc76d17d9c9ca425cfa1771695dcdb44c6e8a9b8) Bump ejs from 3.1.9 to 3.1.10 (#1735) (dependabot[bot]) - - 2024-04-01 [a667c2d7](https://github.com/silverstripe/silverstripe-admin/commit/a667c2d7405c26d9c6911bcd0de835976b741ea1) Update JS dependencies (#1716) (github-actions[bot]) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-rc1) - - 2024-09-01 [18cd4095](https://github.com/silverstripe/silverstripe-asset-admin/commit/18cd409505de6480296ff03620366c952a5d1f26) Update JS dependencies (github-actions) - - 2024-06-05 [a40e4102](https://github.com/silverstripe/silverstripe-asset-admin/commit/a40e4102b1dd39d852c885af4e16f91c10a36b95) Move babel to devDependencies (Steve Boyd) - - 2024-04-02 [0abb6ac8](https://github.com/silverstripe/silverstripe-asset-admin/commit/0abb6ac8aaf7848857f4b00392588df13b12e4c0) Update JS dependencies (#1449) (github-actions[bot]) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0-rc1) - - 2024-09-01 [5855f59](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5855f59916fbc9dadb73b33229532429f68ba2ee) Update JS dependencies (github-actions) - - 2024-04-01 [70a0629](https://github.com/silverstripe/silverstripe-campaign-admin/commit/70a06291ed7b8701a1e2d1a3ec0502da5ba90185) Update JS dependencies (#298) (github-actions[bot]) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-rc1) - - 2024-09-01 [4ecee4e](https://github.com/silverstripe/silverstripe-versioned-admin/commit/4ecee4ef6056ef6908135c65b9631e8ff0e6c526) Update JS dependencies (github-actions) - - 2024-04-02 [bd47d34](https://github.com/silverstripe/silverstripe-versioned-admin/commit/bd47d34cc99c765e4d31e08ce716cbd3e5ff565b) Update JS dependencies (#333) (github-actions[bot]) - -- silverstripe/cms (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [0b6f9c02](https://github.com/silverstripe/silverstripe-cms/commit/0b6f9c0250361307e21e839eda5e66081fcdcbcd) Update JS dependencies (github-actions) - - 2024-04-02 [6a19ed9a](https://github.com/silverstripe/silverstripe-cms/commit/6a19ed9a3572485583f5b46d841598bfa7569512) Update JS dependencies (#2928) (github-actions[bot]) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-rc1) - - 2024-09-01 [b5b898e](https://github.com/silverstripe/silverstripe-session-manager/commit/b5b898ea0733751edd28f0aaaa870baeab57acd1) Update JS dependencies (github-actions) - - 2024-04-01 [17eb0bc](https://github.com/silverstripe/silverstripe-session-manager/commit/17eb0bc40233db3eb2e071b64dc917bf967430f0) Update JS dependencies (#187) (github-actions[bot]) - -- silverstripe/login-forms (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [b8af4b0](https://github.com/silverstripe/silverstripe-login-forms/commit/b8af4b06a94b616ee82fec90b055d58d39761216) Update JS dependencies (github-actions) - - 2024-04-01 [6757f0a](https://github.com/silverstripe/silverstripe-login-forms/commit/6757f0ab7ee14ee0322da91f17f18106d7764610) Update JS dependencies (#170) (github-actions[bot]) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [533e918](https://github.com/silverstripe/silverstripe-documentconverter/commit/533e91889ebb392f7006e42bdf396573470b63ad) Bump braces from 3.0.2 to 3.0.3 (dependabot[bot]) - - 2024-09-01 [ba7f07b](https://github.com/silverstripe/silverstripe-documentconverter/commit/ba7f07bebc4c9ab34f6162a3393c1d169754401f) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-08-31 [72a04e6](https://github.com/silverstripe/silverstripe-documentconverter/commit/72a04e6f9d8b4a74f696dacf5268b26b16cb88e8) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-08-02 [a1e9d62](https://github.com/silverstripe/silverstripe-documentconverter/commit/a1e9d62b6942d3237593e21eba05807da8af5ab3) Bump requirejs from 2.3.6 to 2.3.7 (dependabot[bot]) - - 2024-06-18 [52688c8](https://github.com/silverstripe/silverstripe-documentconverter/commit/52688c85621d61a94d7d7bbfdc2d580ce4eda244) Bump ws from 7.5.9 to 7.5.10 (dependabot[bot]) - - 2024-04-01 [045f6a9](https://github.com/silverstripe/silverstripe-documentconverter/commit/045f6a9632912ba19639e862ff8de16466e37868) Update JS dependencies (#74) (github-actions[bot]) - -- silverstripe/tagfield (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [6687921](https://github.com/silverstripe/silverstripe-tagfield/commit/6687921601b5c4bb157acbfbd40a6c525112f9ae) Update JS dependencies (github-actions) - - 2024-07-09 [2b29c42](https://github.com/silverstripe/silverstripe-tagfield/commit/2b29c427fc5f41e83bfd62ca08b663149cc3f6f5) Bump minimum version of framework (Steve Boyd) - - 2024-04-02 [45d5a10](https://github.com/silverstripe/silverstripe-tagfield/commit/45d5a104a2223012e9385857acfbc8f01b59ba3f) Update JS dependencies (#284) (github-actions[bot]) - -- silverstripe/blog (4.2.0 -> 4.3.0-rc1) - - 2024-09-01 [67be150](https://github.com/silverstripe/silverstripe-blog/commit/67be1508989006e4749709e23001c6aad4ef18fc) Update JS dependencies (#783) (github-actions[bot]) - - 2024-04-01 [b4605f3](https://github.com/silverstripe/silverstripe-blog/commit/b4605f3d86d0fb7efb7c348d56273c261b4d6d1d) Update JS dependencies (#751) (github-actions[bot]) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-rc1) - - 2024-06-20 [a13e101](https://github.com/colymba/GridFieldBulkEditingTools/commit/a13e1015812d11469a505fa2f3caecfbf2bae139) Update eslint-config dependency (#292) (Guy Sartorelli) - - 2024-04-02 [3c38967](https://github.com/colymba/GridFieldBulkEditingTools/commit/3c38967ab656424480b34d626f27110139535b1f) Update JS dependencies (Steve Boyd) - - 2023-10-03 [5b21477](https://github.com/colymba/GridFieldBulkEditingTools/commit/5b214779a53df0fe9c36230490d87a91cc2cc74a) Update javascript dependencies (#254) (Guy Sartorelli) - -- silverstripe/contentreview (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [440e434](https://github.com/silverstripe/silverstripe-contentreview/commit/440e43477fe37147d0d4bbc4d4068606d2c804ae) Update JS dependencies (github-actions) - - 2024-07-09 [4ea50b3](https://github.com/silverstripe/silverstripe-contentreview/commit/4ea50b34f058f05bebbcb6e028575762ffd6cc95) Bump minimum version of framework (Steve Boyd) - - 2024-04-02 [efa4dda](https://github.com/silverstripe/silverstripe-contentreview/commit/efa4ddad616df126f84b9c386780490381a6b5ce) Update JS dependencies (#228) (github-actions[bot]) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [9bb4569](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/9bb45695f97e4055ccfd690ee645d21dac010d48) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [9fe444e](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/9fe444ee4ae6f32974a979581bf897f3df8ba675) Update JS dependencies (#229) (github-actions[bot]) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0-rc1) - - 2024-07-09 [f78f120](https://github.com/symbiote/silverstripe-advancedworkflow/commit/f78f120b5c716d1fd6f3f5b66499ee4b016f6725) Bump minimum version of framework (Steve Boyd) - - 2024-06-05 [07c3fee](https://github.com/symbiote/silverstripe-advancedworkflow/commit/07c3feeac5dd30cb5398bb142fa45dca682f713d) Bump remarkable from 1.7.1 to 1.7.4 (#534) (dependabot[bot]) - - 2024-04-02 [54bfc48](https://github.com/symbiote/silverstripe-advancedworkflow/commit/54bfc48fb8bf3b080e09915ec40e0231d9a56027) Update JS dependencies (Steve Boyd) - -- silverstripe/segment-field (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [d9ab70a](https://github.com/silverstripe/silverstripe-segment-field/commit/d9ab70adfd09b9066e34841153261333892b8e93) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [9b3845b](https://github.com/silverstripe/silverstripe-segment-field/commit/9b3845bc8b8c9a637a11796f53530e84568847ed) Update JS dependencies (#102) (github-actions[bot]) - -- silverstripe/userforms (6.2.0 -> 6.3.0-rc1) - - 2024-09-01 [11e5994](https://github.com/silverstripe/silverstripe-userforms/commit/11e59945fccf3ef4a03d1ce3b9d8f6105baa9d47) Update JS dependencies (github-actions) - - 2024-07-09 [843353f](https://github.com/silverstripe/silverstripe-userforms/commit/843353f440606ad3e84b01582c9048cff454d8de) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [4d17efd](https://github.com/silverstripe/silverstripe-userforms/commit/4d17efd6373303f2ecf6fcecdbae05a89629c560) Update JS dependencies (#1277) (github-actions[bot]) - -- silverstripe/externallinks (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [4a22b96](https://github.com/silverstripe/silverstripe-externallinks/commit/4a22b9679f99635c53b4f99e95b4738019992941) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-02 [d6d537b](https://github.com/silverstripe/silverstripe-externallinks/commit/d6d537b85d250e61bec12f419dc93e43e357d6bb) Update JS dependencies (#122) (github-actions[bot]) - -- silverstripe/sitewidecontent-report (4.2.0 -> 4.3.0-rc1) - - 2024-09-01 [479a252](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/479a2520e6bfadf5799a33fe9f149a306dd6213b) Update JS dependencies (github-actions) - - 2024-04-01 [38cb2aa](https://github.com/silverstripe/silverstripe-sitewidecontent-report/commit/38cb2aa33a933658ffb8256d1dfe684a8a3618e6) Update JS dependencies (#84) (github-actions[bot]) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0-rc1) - - 2024-06-21 [eab0c25](https://github.com/bringyourownideas/silverstripe-maintenance/commit/eab0c258f0b4ed433ade85ff5062681f5f7d6820) Rebuild yarn.lock (#231) (Guy Sartorelli) - - 2024-04-02 [5f7caec](https://github.com/bringyourownideas/silverstripe-maintenance/commit/5f7caec887cbb8e03205e238e89673fe05f56aef) Update JS dependencies (Steve Boyd) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [d832181](https://github.com/silverstripe/silverstripe-elemental/commit/d832181327b9370b875b4c8ef388bd1c5119a7d4) Update JS dependencies (github-actions) - - 2024-07-23 [6306618](https://github.com/silverstripe/silverstripe-elemental/commit/63066182f45628fec2a11cc3826b9f066c4b9b96) Update minimum dependencies (#1223) (Guy Sartorelli) - - 2024-07-10 [8776381](https://github.com/silverstripe/silverstripe-elemental/commit/8776381f2c61fcf5f42b82afb3e3838aa69d6e76) Bump framework dependency (Steve Boyd) - - 2024-05-21 [d7bdd13](https://github.com/silverstripe/silverstripe-elemental/commit/d7bdd13725a511540fa1b36470ae2466e688c54b) Bump framework dependency (Steve Boyd) - - 2024-04-01 [0e7dffe](https://github.com/silverstripe/silverstripe-elemental/commit/0e7dffe43244532ea4364f0b46aa80ab46d66bde) Update JS dependencies (#1159) (github-actions[bot]) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [41bc938](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/41bc938e5fb53d650ae1899ab7aca33d9ae0b5a1) Update JS dependencies (github-actions) - - 2024-04-02 [7b705ca](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/7b705ca5ca6545f625a4f6661da197ad60bfd2b3) Update JS dependencies (#140) (github-actions[bot]) - -- silverstripe/auditor (3.1.0 -> 3.2.0-rc1) - - 2024-07-09 [52f459a](https://github.com/silverstripe/silverstripe-auditor/commit/52f459ad2f8019887a2e373f39181ceb2fdb96db) Bump minimum version of framework (Steve Boyd) - - 2024-03-26 [a9627f9](https://github.com/silverstripe/silverstripe-auditor/commit/a9627f9f5cc00be36a44fd2cf8519f322d8b9ea5) Use the canonical repository for proxy-db (#72) (Michal Kleiner) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0-rc1) - - 2024-07-01 [b8dfee95](https://github.com/silverstripe/developer-docs/commit/b8dfee95473734fbc38f12447f891a95a8d3a47d) Update JS dependencies (github-actions) - - 2024-04-01 [eae39d5f](https://github.com/silverstripe/developer-docs/commit/eae39d5fa25d64674a7ac70aedc2ee4f1e1772a3) Update JS dependencies (#488) (github-actions[bot]) - -- silverstripe/totp-authenticator (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [851087b](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/851087b1c7707e3ddd206ed9078d4e06b54827b4) Update JS dependencies (github-actions) - - 2024-04-02 [252803e](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/252803e5e9e8bc94376f0e256211532d271cd300) Update JS dependencies (#149) (github-actions[bot]) - -- silverstripe/mfa (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [1e93852](https://github.com/silverstripe/silverstripe-mfa/commit/1e9385296958fe07480178001a00fc842c966cd6) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-07-09 [84022f7](https://github.com/silverstripe/silverstripe-mfa/commit/84022f769be2a515cc96ba4cc7d18ce2b9242bff) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [23fc087](https://github.com/silverstripe/silverstripe-mfa/commit/23fc0877b3fe7d1e60d2f7ba1270bad0f7911398) Update JS dependencies (#532) (github-actions[bot]) - -- silverstripe/gridfieldqueuedexport (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [4f5fbd9](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/4f5fbd902ce2447abb8a353a6c9d6c97ee66ec30) Update JS dependencies (github-actions) - - 2024-04-01 [d7925bf](https://github.com/silverstripe/silverstripe-gridfieldqueuedexport/commit/d7925bfdafefb7e8a968229da5313de819a6ef44) Update JS dependencies (#102) (github-actions[bot]) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-07-09 [267667e](https://github.com/silverstripe/silverstripe-ldap/commit/267667edb2d31d17b3fd4e0af353b5ab0c53ffac) Bump minimum version of framework (Steve Boyd) - -- silverstripe/realme (5.3.0 -> 5.4.0-rc1) - - 2024-09-01 [814b340](https://github.com/silverstripe/silverstripe-realme/commit/814b34015c977b43b183dded11922e5c422adf96) Update JS dependencies (github-actions) - - 2024-04-02 [dff66ae](https://github.com/silverstripe/silverstripe-realme/commit/dff66ae15ede91fd5e1ef7a76cf90a207564f52e) Update JS dependencies (#135) (github-actions[bot]) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0-rc1) - - 2024-09-01 [1e8dbfd](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/1e8dbfd91febc86cddbf8d049db7076427261c72) Update JS dependencies (github-actions) - - 2024-07-09 [da521b1](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/da521b1e20a526177df339a83ed513d0ff6bf94e) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [57ea49b](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/57ea49ba08005a6153c03fabd2ff634ad79eda2f) Update JS dependencies (#173) (github-actions[bot]) - -- silverstripe/subsites (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [ff50db1](https://github.com/silverstripe/silverstripe-subsites/commit/ff50db144db996bd214335c88eeab5a6b98f0d0d) Update JS dependencies (github-actions) - - 2024-07-09 [5025c32](https://github.com/silverstripe/silverstripe-subsites/commit/5025c32fc71d92942af324fd768f79eebf1dbfca) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [f337fdc](https://github.com/silverstripe/silverstripe-subsites/commit/f337fdce25012ee6ec12ae124cc2f8a9afa59979) Update JS dependencies (#565) (github-actions[bot]) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-rc1) - - 2024-09-01 [465d794](https://github.com/silverstripe/silverstripe-lumberjack/commit/465d794e1a17cc9d1402b4b3e345e039351d8496) Bump micromatch from 4.0.7 to 4.0.8 (dependabot[bot]) - - 2024-04-01 [6a05f4a](https://github.com/silverstripe/silverstripe-lumberjack/commit/6a05f4a1b7eedf4a45f4f0e294f898604bcc75ce) Update JS dependencies (#142) (github-actions[bot]) - -- silverstripe/staticpublishqueue (6.2.0 -> 6.2.2) - - 2024-07-11 [f9d8410](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/f9d841074cd62566244ca9fec163d9c6a3adc6d7) Bump minimum version for framework (Steve Boyd) - - 2024-05-07 [5092eb4](https://github.com/silverstripe/silverstripe-staticpublishqueue/commit/5092eb4ee3442f8776e7c588cedb28552182dc9a) Bump minimum queuedjobs version (Steve Boyd) - -- cwp/starter-theme (4.1.0 -> 4.2.0-rc1) - - 2024-08-31 [44b9922](https://github.com/silverstripe/cwp-starter-theme/commit/44b9922c87766c8181a6f71b93d3b235e63c6d7a) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-06-18 [83bb5d3](https://github.com/silverstripe/cwp-starter-theme/commit/83bb5d3128198ce41185134f24caebd065661219) Bump ws from 8.16.0 to 8.17.1 (dependabot[bot]) - - 2024-04-02 [55d7616](https://github.com/silverstripe/cwp-starter-theme/commit/55d761682ca1175e23fa81ec12c9f6d56a9ea071) Update JS dependencies (Steve Boyd) - -- cwp/agency-extensions (3.2.0 -> 3.3.0-rc1) - - 2024-09-01 [5d5c123](https://github.com/silverstripe/cwp-agencyextensions/commit/5d5c123f14ffea52f022b2d497da44b6b969d617) Bump micromatch from 4.0.5 to 4.0.8 (dependabot[bot]) - - 2024-08-31 [f1fafa8](https://github.com/silverstripe/cwp-agencyextensions/commit/f1fafa8a2cfa366902e6fc5c671b32d60198f2c5) Bump webpack from 5.91.0 to 5.94.0 (dependabot[bot]) - - 2024-08-02 [e4a0b8c](https://github.com/silverstripe/cwp-agencyextensions/commit/e4a0b8cf790b90db4ff34d69c1aa920810972fe6) Bump requirejs from 2.3.6 to 2.3.7 (dependabot[bot]) - - 2024-06-18 [0cd5225](https://github.com/silverstripe/cwp-agencyextensions/commit/0cd522568dbdd7a5eab5a58ffa63d5303c695f6a) Bump ws from 7.5.9 to 7.5.10 (dependabot[bot]) - - 2024-04-01 [9424879](https://github.com/silverstripe/cwp-agencyextensions/commit/94248792c611ace592e537871483539291851426) Update JS dependencies (#116) (github-actions[bot]) - -- cwp/watea-theme (4.1.0 -> 4.2.0-rc1) - - 2024-09-01 [8cea89c](https://github.com/silverstripe/cwp-watea-theme/commit/8cea89c0ecb54d85f02d89c6c9483dc5114befd2) Update JS dependencies (github-actions) - - 2024-04-02 [7507d01](https://github.com/silverstripe/cwp-watea-theme/commit/7507d01284a7dc55cd902053d5707ea32c78b13d) Update JS dependencies (#184) (github-actions[bot]) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2024-09-01 [1f327ef](https://github.com/tractorcow-farm/silverstripe-fluent/commit/1f327ef155696c5238cd7b6733141c80371e8c58) Update JS dependencies (github-actions) - - 2024-04-02 [aa2953b](https://github.com/tractorcow-farm/silverstripe-fluent/commit/aa2953b7e8ff925b39adc543ef12b1f1ae8f42b1) Update JS dependencies (Steve Boyd) - - 2024-04-01 [4628a66](https://github.com/tractorcow-farm/silverstripe-fluent/commit/4628a66a5090720e6e8ad125f399f73fb3186e75) Update JS dependencies (github-actions) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-rc1) - - 2024-09-01 [7d4db3c](https://github.com/silverstripe/silverstripe-linkfield/commit/7d4db3c646f6d6aa159c3c20a7b7b6a198480e55) Update JS dependencies (github-actions) - - 2024-07-30 [7543862](https://github.com/silverstripe/silverstripe-linkfield/commit/7543862a6d2438cd2b003d6854dc07d6d0f2b5d1) Remove unused apollo dependency (Steve Boyd) - - 2024-07-11 [9c87e9c](https://github.com/silverstripe/silverstripe-linkfield/commit/9c87e9c5d9ee7a67a6290cf8573ff8167202efda) Bump minimum version of framework (Steve Boyd) - - 2024-04-01 [fc56c05](https://github.com/silverstripe/silverstripe-linkfield/commit/fc56c0527fb0df1c86d7c98b866d7c83e3e0a20c) Update JS dependencies (#266) (github-actions[bot]) - -### Documentation {#changelog-documentation} - -- silverstripe/recipe-plugin (2.0.0 -> 2.0.1) - - 2023-04-19 [190bf80](https://github.com/silverstripe/recipe-plugin/commit/190bf80dbefde6d2d344c8fedcfa34fabb9eb9c7) Update README.md for CMS 5 (Guy Sartorelli) - -- silverstripe/taxonomy (3.2.0 -> 3.2.2) - - 2024-05-27 [5801fce](https://github.com/silverstripe/silverstripe-taxonomy/commit/5801fced5f64e6e66623a9bba575a175f73ef40d) Update doc structure for docs.silverstripe.org (#114) (Guy Sartorelli) - -- silverstripe/developer-docs (5.2.0 -> 5.3.0-rc1) - - 2024-08-25 [814b856b](https://github.com/silverstripe/developer-docs/commit/814b856bce638b7c919a793d487c37487e81d6fb) Deprecate DataExtension and others (Steve Boyd) - - 2024-08-20 [8f61725a](https://github.com/silverstripe/developer-docs/commit/8f61725a5781755d75f2374c1d13cee53c9f0195) Deprecate widgets code (Steve Boyd) - - 2024-08-19 [54677c32](https://github.com/silverstripe/developer-docs/commit/54677c32827fa57342637ae18d613101ae6e0f02) Deprecate IPUtils (Steve Boyd) - - 2024-08-19 [e592d10e](https://github.com/silverstripe/developer-docs/commit/e592d10e3b7ce5252b0d8910930d015f47ced665) Deprecate CMS GraphQL endpoints (Steve Boyd) - - 2024-08-16 [5b809f87](https://github.com/silverstripe/developer-docs/commit/5b809f876aabf2c91a1bed1df4cb0a7dcb08c6d6) Document change to sorting elemental blocks (#554) (Guy Sartorelli) - - 2024-08-15 [782ce192](https://github.com/silverstripe/developer-docs/commit/782ce19290909fcf7ab3a7649b92e3d5f337ae2b) Remove recommendation for GraphQL (Steve Boyd) - - 2024-08-14 [8634522e](https://github.com/silverstripe/developer-docs/commit/8634522e3bfc77ff54176ec401a08eaa952a71ec) Update docs about community peer reviewers (Guy Sartorelli) - - 2024-08-08 [f0dcf5b0](https://github.com/silverstripe/developer-docs/commit/f0dcf5b0e2232aa14ccf4a768eb70db632629815) Document changes to FormScaffolder options. (Guy Sartorelli) - - 2024-08-08 [9c5801a9](https://github.com/silverstripe/developer-docs/commit/9c5801a9491b54147c57ade46f44d330edfeaee2) Document new TabSet::changeTabOrder() method. (Guy Sartorelli) - - 2024-07-22 [64ae2316](https://github.com/silverstripe/developer-docs/commit/64ae23166c3f9ddf59431399365d77fd1db6a601) Document always inline saving elements (Steve Boyd) - - 2024-07-10 [40411277](https://github.com/silverstripe/developer-docs/commit/40411277d2400867514c37b810c51ef54d2258ac) Stop implying we don't support webp out of the box (#546) (Guy Sartorelli) - - 2024-07-08 [ac654801](https://github.com/silverstripe/developer-docs/commit/ac65480107f6664fd5cba95ac94a48aaa6e93c42) Update links to elvis (#544) (Guy Sartorelli) - - 2024-07-04 [41bbb211](https://github.com/silverstripe/developer-docs/commit/41bbb211c7f17fe297ee3ca0c6c7cc7152788589) Add autologin token regeneration changes to 5.3 changelog (Garion Herman) - - 2024-06-30 [81c3f935](https://github.com/silverstripe/developer-docs/commit/81c3f9359ac2416811f9087d30d5e11465d289e7) Explain how to customise image rendering (#529) (Maxime Rainville) - - 2024-06-27 [19a1c294](https://github.com/silverstripe/developer-docs/commit/19a1c294416f9c4ca6c649dd8745d3283d95e699) Clarify we test with the latest LTS for MariaDB and MySQL (#535) (Guy Sartorelli) - - 2024-06-26 [79b8f5ec](https://github.com/silverstripe/developer-docs/commit/79b8f5ec926540634f4fd1b2ecd5ebc89b5c3f25) Remove Guy Marriott from Core Committers page (#536) (Guy Sartorelli) - - 2024-06-18 [cf989d29](https://github.com/silverstripe/developer-docs/commit/cf989d29879433e0f49a3aece89df39d9b88c25a) Document new community contributions project on GitHub (#534) (Guy Sartorelli) - - 2024-06-17 [38d394b9](https://github.com/silverstripe/developer-docs/commit/38d394b9d2b74ecc19633e76e8c721aad17faebf) Do not use self (Steve Boyd) - - 2024-06-07 [a87b9885](https://github.com/silverstripe/developer-docs/commit/a87b9885160eec3a8721f6961c97aaaa225bff1a) Document scaffolding formfields for model relations (#527) (Guy Sartorelli) - - 2024-06-04 [6e577201](https://github.com/silverstripe/developer-docs/commit/6e577201dbb3c23d00d4ada57967e550c6212d3f) Document update to convert API (#526) (Guy Sartorelli) - - 2024-05-29 [0e3245c9](https://github.com/silverstripe/developer-docs/commit/0e3245c943fccfc4062a5cc5c90043d81da5e101) `Update cascade_deletes information for many_many relationships (#523)` (Ed Wilde) - - 2024-05-29 [2076fd8b](https://github.com/silverstripe/developer-docs/commit/2076fd8bd64c4aff2f8314b43347d5235c113e9d) Update branch protection rules (Steve Boyd) - - 2024-05-29 [50e0b9ae](https://github.com/silverstripe/developer-docs/commit/50e0b9aea7d4a2102301dcc6beadaaf579c54cc5) Document deprecation of BaseElement::getDescription() (#521) (Guy Sartorelli) - - 2024-05-17 [c441d972](https://github.com/silverstripe/developer-docs/commit/c441d9728f4dac97e8337bb0470d780dce7fc4b6) Document the current scope loop (Guy Sartorelli) - - 2024-05-16 [0ded0112](https://github.com/silverstripe/developer-docs/commit/0ded0112c7d11b65acdc56f2cba66b393e4f7462) Deprecate passing non-array $field argument (Steve Boyd) - - 2024-05-15 [400b86e9](https://github.com/silverstripe/developer-docs/commit/400b86e9dc42c02be3d370b755ce25e7f67a4f21) Update writing style guide (Steve Boyd) - - 2024-05-14 [aadcbbc2](https://github.com/silverstripe/developer-docs/commit/aadcbbc2c39738cb9cef51e3bef78342c648b98c) Convert primitves to DBField in iterables (Steve Boyd) - - 2024-05-13 [d10e7634](https://github.com/silverstripe/developer-docs/commit/d10e7634550ed4bcffd31d35a56d0c2c77352eed) Document using raw SQL to query join tables (#508) (Guy Sartorelli) - - 2024-05-13 [100dbf25](https://github.com/silverstripe/developer-docs/commit/100dbf2589d1ba7d54695d5a08960597291de2a2) Use table name, not class name. (#509) (Guy Sartorelli) - - 2024-05-09 [d88efe54](https://github.com/silverstripe/developer-docs/commit/d88efe5410304d7ecd22da14fd55d87b4dd251c3) Mention that restore batch action has been removed (Steve Boyd) - - 2024-04-30 [1d9ff216](https://github.com/silverstripe/developer-docs/commit/1d9ff21609d16bc2e804af445417c6bc19c73855) Change hint to tip (Steve Boyd) - - 2024-04-26 [faf1f2ac](https://github.com/silverstripe/developer-docs/commit/faf1f2acbaf3d378d44371ac58c91e291a0c73df) Document using pjax response from gridfield (#502) (Guy Sartorelli) - - 2024-04-18 [f27be141](https://github.com/silverstripe/developer-docs/commit/f27be141f0ebcb9add7ab6f7967711270f58e9c2) Document TinyMCE changes (#498) (Guy Sartorelli) - - 2024-04-18 [f6d9ea60](https://github.com/silverstripe/developer-docs/commit/f6d9ea60d41831e3702d20c65c2e0ff41d91718c) type/i18n label (Steve Boyd) - - 2024-04-10 [c93e8a88](https://github.com/silverstripe/developer-docs/commit/c93e8a885030c22590144b91289dd861a6e32167) Document new file conversion API (#491) (Guy Sartorelli) - - 2024-04-10 [d11fd21b](https://github.com/silverstripe/developer-docs/commit/d11fd21b8d3f4fd2abb5597bbf94c8743508cad4) GraphQL schema init task (Steve Boyd) - - 2024-04-09 [8e8903cc](https://github.com/silverstripe/developer-docs/commit/8e8903cc30c04a8a129aee4e5bf52d76b4fe2c1b) Update model validation docs (Steve Boyd) - - 2024-04-02 [8e49ea18](https://github.com/silverstripe/developer-docs/commit/8e49ea180a70ce1639cdbaafb847d3744f42c213) linkfield accesibility improvements (Steve Boyd) - - 2024-04-01 [395fa14c](https://github.com/silverstripe/developer-docs/commit/395fa14ca4aad6df599616dee566ccc4526f17b6) Document creating fixtures in custom DB tables (#484) (Guy Sartorelli) - - 2024-03-19 [bcb3bf4a](https://github.com/silverstripe/developer-docs/commit/bcb3bf4ac4bbd02b95262304fda490492a439c60) Add changelog note about SQLUpdate supporting JOIN (#481) (Guy Sartorelli) - - 2024-03-17 [3b7f9e05](https://github.com/silverstripe/developer-docs/commit/3b7f9e0533373f0530249484e605582fec9e89b9) Add elemental block validation to 5.3.0 changelog (Steve Boyd) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-rc1) - - 2024-07-03 [ae80302](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/ae8030211ee0ce99e622ffeee23225ec029e710a) Correct spacing in YML example for nested gridfield (#408) (Maxime Rainville) - - 2024-05-27 [7f4413a](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/7f4413a12ff8ffe9006e5be69dfdc4989e4a4b73) Updated Nested GridField docs (Sabina Talipova) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2024-04-02 [07328cf](https://github.com/tractorcow-farm/silverstripe-fluent/commit/07328cf9f0dde51107916a4b4a3b5b922c4b48c5) Updated documentation for new DataObject initialisation task (Nathan J. Brauer) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-rc1) - - 2024-04-10 [0d81597](https://github.com/silverstripe/silverstripe-linkfield/commit/0d8159783af6940cdd429d8858a053ae5f8024d4) Linting (Steve Boyd) - - 2024-04-03 [69c6099](https://github.com/silverstripe/silverstripe-linkfield/commit/69c6099e6ffdb70a21325a20c5d5ec2e152bd08b) Enable deprecations for linkfield v3 (Steve Boyd) - -### Translations {#changelog-translations} - -- silverstripe/assets (2.2.0 -> 2.3.0-rc1) - - 2024-08-06 [b363901](https://github.com/silverstripe/silverstripe-assets/commit/b36390172c43beb4f46d7ba45dedba21d66f4784) Update translations (#626) (Guy Sartorelli) - - 2024-05-07 [82e5f58](https://github.com/silverstripe/silverstripe-assets/commit/82e5f58f842a9632eece44217fbc4a25541b6ed5) Update translations (#601) (Guy Sartorelli) - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-08-06 [a8d0d1ef5](https://github.com/silverstripe/silverstripe-framework/commit/a8d0d1ef587023f8dd8ea7fca4c7cc2ca760ab5d) Update translations (#11323) (Guy Sartorelli) - - 2024-05-07 [241d03b35](https://github.com/silverstripe/silverstripe-framework/commit/241d03b3527d341a8454eab86860f639017ff8ea) Update translations (#11224) (Guy Sartorelli) - - 2024-05-06 [e468b719c](https://github.com/silverstripe/silverstripe-framework/commit/e468b719cfcd6ac92c5c25d1f0b6cbf25f854495) Update translations (#11221) (Guy Sartorelli) - -- silverstripe/admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-06 [b3eeb088](https://github.com/silverstripe/silverstripe-admin/commit/b3eeb088a83f32564d80d3ccecdf716fba0a95f5) Update translations (#1807) (Guy Sartorelli) - - 2024-05-07 [66a937af](https://github.com/silverstripe/silverstripe-admin/commit/66a937afe0de80bc029efe4d9c02371cb81d6ecd) Update translations (#1740) (Guy Sartorelli) - -- silverstripe/asset-admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-06 [f61698d9](https://github.com/silverstripe/silverstripe-asset-admin/commit/f61698d96eabf000356da92aa0c2a43e7110b724) Update translations (#1480) (Guy Sartorelli) - - 2024-05-07 [56e98869](https://github.com/silverstripe/silverstripe-asset-admin/commit/56e98869f0c76bdffa1e4b8f63fcc88bd2ec7cf6) Update translations (#1456) (Guy Sartorelli) - -- silverstripe/campaign-admin (2.2.0 -> 2.3.0-rc1) - - 2024-08-06 [f59bcba](https://github.com/silverstripe/silverstripe-campaign-admin/commit/f59bcba1359e7fac2ac93df7cc33aa6b2f98fc74) Update translations (#319) (Guy Sartorelli) - - 2024-05-07 [611ffaf](https://github.com/silverstripe/silverstripe-campaign-admin/commit/611ffafecde24830d7182ce434944af57212e396) Update translations (#303) (Guy Sartorelli) - -- silverstripe/versioned-admin (2.2.0 -> 2.3.0-rc1) - - 2024-05-07 [17aa581](https://github.com/silverstripe/silverstripe-versioned-admin/commit/17aa581182b6d2b5f8a3ff94dafb54150392be60) Update translations (#337) (Guy Sartorelli) - -- silverstripe/cms (5.2.0 -> 5.3.0-rc1) - - 2024-08-06 [003df23c](https://github.com/silverstripe/silverstripe-cms/commit/003df23cb780550430df88b804d9cb64b8cb9912) Update translations (#2982) (Guy Sartorelli) - - 2024-05-07 [5e1706e6](https://github.com/silverstripe/silverstripe-cms/commit/5e1706e64471509ed36f1428c5f9a024ac25762b) Update translations (#2937) (Guy Sartorelli) - -- silverstripe/errorpage (2.2.0 -> 2.3.0-rc1) - - 2024-08-06 [859e696](https://github.com/silverstripe/silverstripe-errorpage/commit/859e6967a99b4e2811079786eaa214a0bc888c27) Update translations (#116) (Guy Sartorelli) - - 2024-05-07 [e22c8bc](https://github.com/silverstripe/silverstripe-errorpage/commit/e22c8bc095d591875858073c29bfb81e03902438) Update translations (#104) (Guy Sartorelli) - -- silverstripe/reports (5.2.0 -> 5.3.0-rc1) - - 2024-05-07 [3e7e8e91](https://github.com/silverstripe/silverstripe-reports/commit/3e7e8e91c1155b35028d7567060d2c157369bb2f) Update translations (#179) (Guy Sartorelli) - -- silverstripe/siteconfig (5.2.0 -> 5.3.0-rc1) - - 2024-08-06 [7d95ee06](https://github.com/silverstripe/silverstripe-siteconfig/commit/7d95ee0628f228c8552ef5a71150a17615e3fd01) Update translations (#172) (Guy Sartorelli) - - 2024-05-07 [cbf0bbc1](https://github.com/silverstripe/silverstripe-siteconfig/commit/cbf0bbc10fc1161c6e9822901f362324ec8e6d58) Update translations (#159) (Guy Sartorelli) - -- silverstripe/versioned (2.2.0 -> 2.3.0-rc1) - - 2024-08-06 [5bb8eb0](https://github.com/silverstripe/silverstripe-versioned/commit/5bb8eb0a93493016b16d623bff60909c82c2ff7e) Update translations (#459) (Guy Sartorelli) - - 2024-05-07 [22c72a4](https://github.com/silverstripe/silverstripe-versioned/commit/22c72a4bd9b8c17418b18f9dfb0cbf5c523d3cda) Update translations (#442) (Guy Sartorelli) - -- silverstripe/session-manager (2.2.0 -> 2.3.0-rc1) - - 2024-05-07 [6dc6d14](https://github.com/silverstripe/silverstripe-session-manager/commit/6dc6d1426ebee83044b3032fa97d92341c18a370) Update translations (#192) (Guy Sartorelli) - -- silverstripe/login-forms (5.2.0 -> 5.3.0-rc1) - - 2024-08-06 [9e8654f](https://github.com/silverstripe/silverstripe-login-forms/commit/9e8654f3f82d73520ce953aa8209f226b2e1a31f) Update translations (#195) (Guy Sartorelli) - - 2024-05-07 [7d5c403](https://github.com/silverstripe/silverstripe-login-forms/commit/7d5c40303bcbc88a2f06c0af7810c4fc33ff7c5c) Update translations (#174) (Guy Sartorelli) - -- silverstripe/documentconverter (3.2.0 -> 3.3.0-rc1) - - 2024-05-07 [e33c5f1](https://github.com/silverstripe/silverstripe-documentconverter/commit/e33c5f13eb1982f2344fec03b675e78675ef2d43) Update translations (#76) (Guy Sartorelli) - -- silverstripe/iframe (3.2.0 -> 3.2.1) - - 2024-05-07 [3f8f6ca](https://github.com/silverstripe/silverstripe-iframe/commit/3f8f6caac579a7114908a2665c9b11074d8c43b5) Update translations (#83) (Guy Sartorelli) - -- silverstripe/taxonomy (3.2.0 -> 3.2.2) - - 2024-05-07 [71b0294](https://github.com/silverstripe/silverstripe-taxonomy/commit/71b02946104b0e3a8e9b2488797f3ee3ff51a9ca) Update translations (#109) (Guy Sartorelli) - -- silverstripe/blog (4.2.0 -> 4.3.0-rc1) - - 2024-08-06 [d77d90b](https://github.com/silverstripe/silverstripe-blog/commit/d77d90bf1322640a50506fc6649d3af0270ea194) Update translations (#774) (Guy Sartorelli) - - 2024-05-07 [799cc44](https://github.com/silverstripe/silverstripe-blog/commit/799cc44b462dfea91f544a7717e6976993c44b4a) Update translations (#754) (Guy Sartorelli) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-rc1) - - 2024-08-05 [dd8a557](https://github.com/colymba/GridFieldBulkEditingTools/commit/dd8a557c85e9ca5f422c72f32f92d0a5687ac572) Update translations (#300) (Guy Sartorelli) - - 2024-05-07 [dfd07f7](https://github.com/colymba/GridFieldBulkEditingTools/commit/dfd07f78f66f0bc2de2fc3e8e762a488c1dad860) Update translations (#280) (Guy Sartorelli) - - 2024-02-29 [1e4b319](https://github.com/colymba/GridFieldBulkEditingTools/commit/1e4b319110ec5b6e1600f7fb39ff8dd449f7ce5c) `Allow to translate column name Select` (Peter Schiffer) - - 2023-11-07 [fab0f95](https://github.com/colymba/GridFieldBulkEditingTools/commit/fab0f953bfacf5df7cfe0b2735e975b642f535ad) Update translations (Steve Boyd) - -- silverstripe/sharedraftcontent (3.2.0 -> 3.3.0-rc1) - - 2024-05-07 [d5a6198](https://github.com/silverstripe/silverstripe-sharedraftcontent/commit/d5a6198d8e62b85b0b1a7966090e43e5b60be7b7) Update translations (#231) (Guy Sartorelli) - -- symbiote/silverstripe-advancedworkflow (6.2.0 -> 6.3.0-rc1) - - 2024-08-06 [90314a3](https://github.com/symbiote/silverstripe-advancedworkflow/commit/90314a3d1435552e9b809f60b6564d55e5269083) Update translations (#544) (Guy Sartorelli) - - 2024-05-07 [3310709](https://github.com/symbiote/silverstripe-advancedworkflow/commit/3310709ca25c2902f937cdbf40df868f43a9d3ac) Update translations (#527) (Guy Sartorelli) - -- silverstripe/userforms (6.2.0 -> 6.3.0-rc1) - - 2024-08-06 [da53d26](https://github.com/silverstripe/silverstripe-userforms/commit/da53d26b54d1ee7852e7098686bb9d4bdd7c4a02) Update translations (#1313) (Guy Sartorelli) - - 2024-05-07 [83fafdf](https://github.com/silverstripe/silverstripe-userforms/commit/83fafdf53d214e153a1057e1feeab6eaac1cbf44) Update translations (#1284) (Guy Sartorelli) - -- silverstripe/externallinks (3.2.0 -> 3.3.0-rc1) - - 2024-08-06 [3e6198f](https://github.com/silverstripe/silverstripe-externallinks/commit/3e6198f8df418fd9bc1f815cc8036790ebc9a1fe) Update translations (#139) (Guy Sartorelli) - -- bringyourownideas/silverstripe-maintenance (3.1.0 -> 3.2.0-rc1) - - 2024-08-06 [4306da1](https://github.com/bringyourownideas/silverstripe-maintenance/commit/4306da1dbb57706e6115bf2416e347355256b326) Update translations (#235) (Guy Sartorelli) - - 2024-08-05 [26303eb](https://github.com/bringyourownideas/silverstripe-maintenance/commit/26303ebdad56cb34a79cc20d4a1439fca2443963) Update translations (#233) (Guy Sartorelli) - -- bringyourownideas/silverstripe-composer-update-checker (4.1.0 -> 4.1.2) - - 2024-05-07 [8f4969b](https://github.com/bringyourownideas/silverstripe-composer-update-checker/commit/8f4969bdea563c1d1b3484f80c19fbd7a83087e5) Update translations (#83) (Guy Sartorelli) - -- silverstripe/versionfeed (3.2.0 -> 3.2.3) - - 2024-05-07 [fe86df7](https://github.com/silverstripe/silverstripe-versionfeed/commit/fe86df7b6f8743b8a0e10373002fe404ddcb489c) Update translations (#105) (Guy Sartorelli) - -- dnadesign/silverstripe-elemental (5.2.0 -> 5.3.0-rc1) - - 2024-08-06 [ddf8565](https://github.com/silverstripe/silverstripe-elemental/commit/ddf8565e40f1b2f2b371a96512052dfab795c5b8) Update translations (#1230) (Guy Sartorelli) - - 2024-05-07 [0093776](https://github.com/silverstripe/silverstripe-elemental/commit/0093776d88a082a12dd2d1743c49b1f7ffb50501) Update translations (#1185) (Guy Sartorelli) - -- silverstripe/elemental-bannerblock (3.2.0 -> 3.3.0-rc1) - - 2024-05-07 [363f83f](https://github.com/silverstripe/silverstripe-elemental-bannerblock/commit/363f83fc0da9d4f8f7f88f4f71f52d6967f29bfd) Update translations (#142) (Guy Sartorelli) - -- silverstripe/hybridsessions (3.0.3 -> 3.0.5) - - 2024-05-07 [534478e](https://github.com/silverstripe/silverstripe-hybridsessions/commit/534478ef06743b18f9f5cb6d2d8c3138bae9a0a6) Update translations (Guy Sartorelli) - -- silverstripe/totp-authenticator (5.2.0 -> 5.3.0-rc1) - - 2024-05-07 [385e0d9](https://github.com/silverstripe/silverstripe-totp-authenticator/commit/385e0d992552098c3f29e9db68605f10e8eda169) Update translations (#154) (Guy Sartorelli) - -- silverstripe/mfa (5.2.0 -> 5.3.0-rc1) - - 2024-08-06 [9f34765](https://github.com/silverstripe/silverstripe-mfa/commit/9f34765916679acd30827f048be461fa5b6ce197) Update translations (#557) (Guy Sartorelli) - - 2024-05-07 [384a78b](https://github.com/silverstripe/silverstripe-mfa/commit/384a78b042c5c6af1e8c0580a0ebfa85c2934eff) Update translations (#537) (Guy Sartorelli) - -- silverstripe/ldap (2.2.0 -> 2.2.3) - - 2024-05-07 [40aeb78](https://github.com/silverstripe/silverstripe-ldap/commit/40aeb78fbfe4b6f109ca3333aa9539d919833aaf) Update translations (#73) (Guy Sartorelli) - -- silverstripe/realme (5.3.0 -> 5.4.0-rc1) - - 2024-05-07 [5c09680](https://github.com/silverstripe/silverstripe-realme/commit/5c0968012d13344235860a42b0dabd8f183a0875) Update translations (#138) (Guy Sartorelli) - -- silverstripe/webauthn-authenticator (5.2.0 -> 5.3.0-rc1) - - 2024-05-07 [bf6c6eb](https://github.com/silverstripe/silverstripe-webauthn-authenticator/commit/bf6c6eb5e5c1eb0cd6fc8f7f2993d8deddbd228a) Update translations (#177) (Guy Sartorelli) - -- silverstripe/subsites (3.2.0 -> 3.3.0-rc1) - - 2024-08-06 [f78ad58](https://github.com/silverstripe/silverstripe-subsites/commit/f78ad5838d8a85aa7516d0170876b4eeab87a175) Update translations (#588) (Guy Sartorelli) - - 2024-05-07 [dbbfded](https://github.com/silverstripe/silverstripe-subsites/commit/dbbfded3e8097d4ac55202cf6a311899350b7a3c) Update translations (#568) (Guy Sartorelli) - -- silverstripe/lumberjack (3.1.0 -> 3.2.0-rc1) - - 2024-08-06 [f6a0e10](https://github.com/silverstripe/silverstripe-lumberjack/commit/f6a0e108f924491ea6d5cce41d18d1dcaaad40ca) Update translations (#165) (Guy Sartorelli) - - 2024-05-07 [8970ea9](https://github.com/silverstripe/silverstripe-lumberjack/commit/8970ea9ac8bfcf038ab84f34d999a9d5b0e38753) Update translations (#145) (Guy Sartorelli) - -- cwp/agency-extensions (3.2.0 -> 3.3.0-rc1) - - 2024-05-07 [c4efc2f](https://github.com/silverstripe/cwp-agencyextensions/commit/c4efc2f82674a9c8da90502e9372ab6eef43b0bd) Update translations (#117) (Guy Sartorelli) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-rc1) - - 2024-08-06 [54b5fc1](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/54b5fc148369cfbff815d9e5d84c3df952951328) Update translations (#412) (Guy Sartorelli) - - 2024-05-07 [1bd74e0](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1bd74e0070f50f5d0d14802097e7d284b895be2e) Update translations (#387) (Guy Sartorelli) - - 2024-05-06 [256d06b](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/256d06b36cd1efba3ca3cad91421d771ebb75b82) Update translations (#385) (Guy Sartorelli) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0-rc1) - - 2024-08-06 [9f6dea6](https://github.com/symbiote/silverstripe-queuedjobs/commit/9f6dea66ad248a35d404307cd98c144ec8c36e62) Update translations (#441) (Guy Sartorelli) - - 2024-08-05 [aed2991](https://github.com/symbiote/silverstripe-queuedjobs/commit/aed2991e17d5b96e2dfd62119f73d33b95e65d1e) Update translations (#439) (Guy Sartorelli) - - 2024-05-07 [374d41c](https://github.com/symbiote/silverstripe-queuedjobs/commit/374d41cd303b3834668ac730500799e91fb74e4d) Update translations (#424) (Guy Sartorelli) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2024-08-06 [41015aa](https://github.com/tractorcow-farm/silverstripe-fluent/commit/41015aac1e318378c8074ae5ec01494cb839d89f) Update translations (#870) (Guy Sartorelli) - - 2024-05-07 [5d66753](https://github.com/tractorcow-farm/silverstripe-fluent/commit/5d667539b7a85ce38c1712e59fbf2daede6e5029) Update translations (Guy Sartorelli) - -- silverstripe/linkfield (4.0.0 -> 4.1.0-rc1) - - 2024-08-06 [77a1497](https://github.com/silverstripe/silverstripe-linkfield/commit/77a1497ec7033c5abc19ea96d460e975419e1902) Update translations (#314) (Guy Sartorelli) - - 2024-05-07 [a55f48f](https://github.com/silverstripe/silverstripe-linkfield/commit/a55f48f9616ba7c45cb979345ef609fa89deb06a) Update translations (#283) (Guy Sartorelli) - -### Other changes {#changelog-other-changes} - -- silverstripe/framework (5.2.0 -> 5.3.0-rc1) - - 2024-09-27 [55564814b](https://github.com/silverstripe/silverstripe-framework/commit/55564814b90c7ea7b99f264eeef5dae3c1f26341) Add a test. (Mojmir Fendek) - - 2024-06-22 [90eac66ea](https://github.com/silverstripe/silverstripe-framework/commit/90eac66ea83682302224a207ec96bb01385e625c) Update sake (Giancarlo Di Massa) - - 2024-05-30 [9546450cf](https://github.com/silverstripe/silverstripe-framework/commit/9546450cf242574efa8f5817a80ed040b3ade27d) improve DataList and ArrayList docblock comments for PHPStorm (#11263) (Mason Dechaineux) - - 2024-03-19 [25f61141c](https://github.com/silverstripe/silverstripe-framework/commit/25f61141cb1d907ee6f318c3ee454da809dd9423) Enhancements required for linkfield migration (#11171) (Guy Sartorelli) - - 2024-01-30 [90a3d60b5](https://github.com/silverstripe/silverstripe-framework/commit/90a3d60b59758de66056df4ec5630e02aa28bf62) Update DropdownField.php (Antony Thorpe) - -- silverstripe/admin (2.2.0 -> 2.3.0-rc1) - - 2024-03-08 [cdcf2506](https://github.com/silverstripe/silverstripe-admin/commit/cdcf25063b68220bb62b92ade99d61a92c49c11d) Abstract out GridField 'open link in new tab' logic (Loz Calver) - -- colymba/gridfield-bulk-editing-tools (4.0.2 -> 4.1.0-rc1) - - 2024-09-30 [1cf3602](https://github.com/colymba/GridFieldBulkEditingTools/commit/1cf36022b129c3d7cb958880317191e893e4171c) update icons (Thomas Portelange) - - 2024-09-30 [d2ae01e](https://github.com/colymba/GridFieldBulkEditingTools/commit/d2ae01ef24cb2a4f534417e53c77481710f40607) update syntax (Thomas Portelange) - -- symbiote/silverstripe-gridfieldextensions (4.0.5 -> 4.1.0-rc1) - - 2024-05-15 [a42cd43](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/a42cd4378042a0b8ea416a079f20b3f57470e15b) Only allow one GridFieldNestedForm component per GridField. (Niklas Forsdahl) - - 2024-05-15 [c476ced](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c476cedff0b5e721285c3784a0714a1f913b53c9) Added more documentation for nested gridfields. (Niklas Forsdahl) - - 2024-05-07 [a9b0a70](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/a9b0a70155eb46fd659893fa6f42cdf28aad5bf7) Throw 404 error on grid field nested form move-to-parent action, (Niklas Forsdahl) - - 2024-05-07 [8f50565](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/8f505659f06e65bf6881d050c6cdb022f5f539b6) Only add nested form to nested gridfield child if that child is of (Niklas Forsdahl) - - 2024-05-07 [9ab3ed6](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/9ab3ed67a75c0060e9303abd9822a9751bf6afe4) Throw an exception in Nesed Gridfield if an invalid relation is configured. (Niklas Forsdahl) - - 2024-05-07 [1993acb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1993acba3a1bf94e4e4440362620fb16e6e172f5) Linting and typehinting fixes for nested grid field (Niklas Forsdahl) - - 2024-04-24 [1ad6acb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/1ad6acbb84f235e29fc364e28fe2ee332a590eb9) Refactored grid field nested form link to be a button with aria-attributes, (Niklas Forsdahl) - - 2024-04-24 [46e5ccc](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/46e5cccdb47be6d4a9e8fa85585768dfab066184) Changed some PHPDoc return types to real typehings in nested gridfield. (Niklas Forsdahl) - - 2024-04-24 [bc1180b](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/bc1180b62cd32284c25db9061656615acf0c6367) Throw exception in nested gridfields if the relation is invalid. (Niklas Forsdahl) - - 2024-04-24 [5e60972](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/5e6097214e1140d9899af0ae1247363a4171e39a) Added phpdoc for nested grid field item request handler class. (Niklas Forsdahl) - - 2024-04-24 [70b838e](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/70b838ea8c4ffb54528b3342397b003331445fe0) Removed legacy disabling of security token and strict form method check (Niklas Forsdahl) - - 2024-04-24 [c517c69](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c517c693f9b4ed1a98df27ace83ed53eb34d8c51) Don't assume records are DataObjects in nested gridfields. (Niklas Forsdahl) - - 2024-04-24 [f7b8aea](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/f7b8aea3f8dc3de09b282fb6927dcdb45209a508) PHPDoc additions and linting fixes for gridfield nested form (Niklas Forsdahl) - - 2024-04-24 [847ce07](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/847ce07ab0273732ca8cfa50aede8ad8213c1ee5) Fixes and some refactoring for max nesting level handling in (Niklas Forsdahl) - - 2024-04-23 [cfcf8d2](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/cfcf8d2e8e9ec2b669fabff2eb3d3119b4237a9d) Refactored nested GridField move to parent functionality. (Niklas Forsdahl) - - 2024-04-23 [32d980e](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/32d980e13c35128703b1a70c86d5a635a5aa30e3) Fixed moving nested gridfield items to other gridfields (Niklas Forsdahl) - - 2024-04-18 [fc40420](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/fc40420daaa460ce3dc27a819c0085d5c7859430) Added configurable max nesting level for nested GridFields (Niklas Forsdahl) - - 2024-04-18 [4fc20fb](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/4fc20fb771fc9914fc91d10786887df7ef089e94) Added one more unit test for GridFieldNestedForm (Niklas Forsdahl) - - 2024-04-18 [f8c777d](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/f8c777dcc5d93e4b44ae249476dd92dea6b923e7) Changed naming schema for nested GridFields, to not include [ or ] (Niklas Forsdahl) - - 2024-04-18 [c415d43](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c415d43731a8ef3d5e58106b88bfe13a323a9795) Fixed linting issues (Niklas Forsdahl) - - 2024-04-18 [c043220](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/c043220949b2fc8bb97eb8189843e6515b344f8a) Changed base-class of GridFieldNestedForm, it doesn't share much with (Niklas Forsdahl) - - 2024-04-18 [654b729](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/654b7294fa565f983ebd12198bb8e9b2999bd30a) Renamed GridFieldNestedForm_ItemRequest, to conform with coding styles. (Niklas Forsdahl) - - 2024-04-15 [bcc4ea1](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/bcc4ea14bbf49088d708987451fa9800bc2eb3bf) Added initial user documentation for Nested GridFields. (Niklas Forsdahl) - - 2024-04-15 [19a7cff](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/19a7cffa88f31e1877d240ecb6e1634dc31cdeff) Added initial unit test for GridFieldNestedForm (Niklas Forsdahl) - - 2024-04-15 [27dc636](https://github.com/symbiote/silverstripe-gridfieldextensions/commit/27dc6360ae2bd1eeb6ca3ed89ce538dfb22eaf18) Styling for nested GridFields without title. (Niklas Forsdahl) - -- symbiote/silverstripe-queuedjobs (5.1.0 -> 5.2.0-rc1) - - 2024-04-24 [d90ebc1](https://github.com/symbiote/silverstripe-queuedjobs/commit/d90ebc1a06e46006113ee92d566a5f91e3202a3e) Replace assignment with intended comparison (Fred Condo) - -- tractorcow/silverstripe-fluent (7.1.0 -> 7.2.0-rc1) - - 2024-06-06 [b14687a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/b14687a9d09eb8ad8ef54c722e87895e4d256939) . (Steve Boyd) - - 2024-04-08 [07f2821](https://github.com/tractorcow-farm/silverstripe-fluent/commit/07f282123297068d40e7ce764a280e295a6f76a1) PR feedback. (Mojmir Fendek) - - 2024-02-09 [2a8e81e](https://github.com/tractorcow-farm/silverstripe-fluent/commit/2a8e81ef37f33d3e04c5fa35ac0020ecdfbb6a62) Adds full namespace to string literal (David Toews) - - 2023-11-14 [9ab08d1](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9ab08d10516aa0d5350ff9727992ddccd8d90922) `copy Bugfix from here https://github.com/tractorcow-farm/silverstripe-fluent/pull/793 to Version 6.0` (“mlindenhofer”) - - 2023-09-01 [904e3f4](https://github.com/tractorcow-farm/silverstripe-fluent/commit/904e3f450d4b21e5a8b9bf5ce652290556027985) chore: fix linting (Damian Mooyman) - - 2023-08-31 [9d04d7a](https://github.com/tractorcow-farm/silverstripe-fluent/commit/9d04d7a2fbbb087d1f36fe955d15abf062fe9b42) feat: add absolute base url for locale (Damian Mooyman) - - 2023-06-16 [43b4214](https://github.com/tractorcow-farm/silverstripe-fluent/commit/43b4214b1c1b16faf4c5d1a89155af27649654e3) Add onAfterDuplicate to FluentVersionedExtension (Remy Vaartjes) - - 2023-06-16 [336dca2](https://github.com/tractorcow-farm/silverstripe-fluent/commit/336dca26d2cf0bb040cc028b005ba0c369fc21ce) Implement onAfterDuplicate (Remy Vaartjes) - - 2023-05-31 [034dd15](https://github.com/tractorcow-farm/silverstripe-fluent/commit/034dd15197ada07594436d4d337246eeda734a36) Update FluentExtension.php (mikey-harveycameron) - - diff --git a/en/10_Contributing/00_Issues_and_Bugs.md b/en/10_Contributing/00_Issues_and_Bugs.md index f54a09855..7a737de29 100644 --- a/en/10_Contributing/00_Issues_and_Bugs.md +++ b/en/10_Contributing/00_Issues_and_Bugs.md @@ -87,7 +87,7 @@ The current GitHub labels are grouped into five sections: 1. *Impact* - What impact does this issue have, does it break a feature completely, is it just a side effect or is it trivial and not a big problem (but a bit annoying), etc. Impact is evaluated in the context of the CMS as a whole, rather than against the individual module the issue is raised on. 1. *Complexity* - What level of technical proficiency is required to address this issue? 1. *Type* - The type of solution required to address this issue -1. *Affects* - The major release line this issue is relevant to - for instance `silverstripe/admin 2.0.0` is on the CMS 5 major release line, so use `affects/v5`. Do not add this label for unreleased major release lines, instead use `type/api-break`. +1. *Affects* - The major release line this issue is relevant to - for instance `silverstripe/admin 3.0.0` is on the CMS 6 major release line, so use `affects/v6`. Do not add this label for unreleased major release lines, instead use `type/api-break`. 1. *RFC* - The issue is a request-for-comment | Label | Purpose | diff --git a/en/10_Contributing/01_Code.md b/en/10_Contributing/01_Code.md index 57a75ea2c..6f23bb631 100644 --- a/en/10_Contributing/01_Code.md +++ b/en/10_Contributing/01_Code.md @@ -45,7 +45,7 @@ Refer to [Contributing Issues](./issues_and_bugs/) for more information about fi ## Step-by-step: how to contribute code {#step-by-step} > [!WARNING] -> The examples below assume you are making a change that applies to the `5.1` branch. +> The examples below assume you are making a change that applies to the `6.1` branch. > > Please adjust the commands as appropriate for the version of Silverstripe CMS that you're targeting. See [picking the right version](#picking-the-right-version). @@ -63,8 +63,8 @@ The Silverstripe CMS project follows [Semantic Versioning](https://semver.org), As we follow semantic versioning, we name the branches in repositories accordingly: -- `` (e.g. `5`) branches contain all changes for upcoming major or minor releases. These are called "major release branches" or "minor release branches", depending on whether they represent the next major release or the next minor release. -- `.` (e.g. `5.1`) branches contain all changes for upcoming patch releases. These are called "patch release branches". +- `` (e.g. `6`) branches contain all changes for upcoming major or minor releases. These are called "major release branches" or "minor release branches", depending on whether they represent the next major release or the next minor release. +- `.` (e.g. `6.1`) branches contain all changes for upcoming patch releases. These are called "patch release branches". If after reading this section you are still unsure what branch your pull request should go to, consider asking either in the GitHub issue that you address with your PR or in one of the various [community channels](https://www.silverstripe.org/community/). @@ -81,19 +81,19 @@ If you are introducing new public API, introducing new features, or enhancing an If you are fixing a bug that doesn't require public API changes, use the highest patch release branch available for the lowest supported major release line the bug applies to. You can see the currently supported release lines for Silverstripe CMS on [the roadmap](https://www.silverstripe.org/software/roadmap/). You can find which major release lines of core and supported modules apply to that version by checking the relevant [supported modules](/project_governance/supported_modules/) page. -For example, if your bug fix is applicable for Silverstripe CMS 4, and is for the `silverstripe/admin` module, you would target the `1.13` branch. +For example, if your bug fix is applicable for Silverstripe CMS 5, and is for the `silverstripe/admin` module, you would target the `2.4` branch. #### For API breaking changes Do not make a pull request that includes a breaking change, including changing public API, unless there is a major release branch ready to merge into. -For example if the latest stable release is `5.2.7`, the major release branch would be `6`. +For example if the latest stable release is `6.2.7`, the major release branch would be `7`. ### Step 2: install the project {#install-the-project} Install the project through composer. The process is described in detail in the [getting started](../getting_started/composer#contributing) docs. ```bash -composer create-project --keep-vcs silverstripe/installer ./your-website-folder 5.1.x-dev +composer create-project --keep-vcs silverstripe/installer ./your-website-folder 6.1.x-dev ``` Note that if you already have a working project and would like to implement the change in the context of that project, you will need to make sure you have the full source of the module using the [`composer reinstall`](https://getcomposer.org/doc/03-cli.md#reinstall) command: @@ -120,13 +120,13 @@ composer reinstall / --prefer-source ```bash # make sure you're starting from the correct branch first cd vendor// - git checkout --track origin/5.1 + git checkout --track origin/6.1 # then create your working branch git checkout -b ``` > [!TIP] -> Use a descriptive name for your branch. For example if you are fixing a bug related to swapping preview modes targetting the `5.1` branch: `pulls/5.1/fix-preview-modes` +> Use a descriptive name for your branch. For example if you are fixing a bug related to swapping preview modes targetting the `6.1` branch: `pulls/6.1/fix-preview-modes` ### Step 4: work on your pull request {#work-on-your-pr} @@ -226,10 +226,10 @@ If other changes are merged in before yours, your pull request may end up with m ```bash cd vendor// -git checkout 5.1 +git checkout 6.1 git pull git checkout -git rebase 5.1 +git rebase 6.1 # if there are merge conflicts, resolve them at this stage then run git rebase --continue git push pr --force-with-lease ``` diff --git a/en/10_Contributing/02_Documentation.md b/en/10_Contributing/02_Documentation.md index 9b14c3232..7628818b2 100644 --- a/en/10_Contributing/02_Documentation.md +++ b/en/10_Contributing/02_Documentation.md @@ -27,11 +27,11 @@ If you find a problem related to how the documentation is displayed which can't ## Branches and commit messages - All documentation commits must follow the [commit message guidelines](./code#commit-messages), and must be prefixed with the `DOC` prefix. -- If you are fixing incorrect or incomplete information, you should create a PR that targets the most recent patch release branch branch for the relevant major release line (e.g. `5.1`). -- If you are adding documentation for functionality that has not yet been released, you should target the most recent minor release branch branch (e.g. `5`). +- If you are fixing incorrect or incomplete information, you should create a PR that targets the most recent patch release branch branch for the relevant major release line (e.g. `6.1`). +- If you are adding documentation for functionality that has not yet been released, you should target the most recent minor release branch branch (e.g. `6`). > [!WARNING] -> You should make your changes in the lowest major branch they apply to. For instance, if you fix a spelling issue that you found in the CMS 4 documentation, submit your fix to the `4.13` branch in GitHub and it'll be copied to the most recent major version of the documentation automatically. *Don't submit multiple pull requests for the same change*. +> You should make your changes in the lowest major branch they apply to. For instance, if you fix a spelling issue that you found in the CMS 5 documentation, submit your fix to the `5.4` branch in GitHub and it'll be copied to the most recent major version of the documentation automatically. *Don't submit multiple pull requests for the same change*. ## Editing online diff --git a/en/10_Contributing/09_Release_Process.md b/en/10_Contributing/09_Release_Process.md index a781f6483..124cf3bce 100644 --- a/en/10_Contributing/09_Release_Process.md +++ b/en/10_Contributing/09_Release_Process.md @@ -45,11 +45,11 @@ Silverstripe CMS follows [Semantic Versioning](https://semver.org). All Silverstripe CMS modules (including `silverstripe/framework`) may have patch releases created at any time, and will not necessarily match other core module patch release numbers. For example, your project may be using -`silverstripe/cms` 5.3.1 with `silverstripe/versioned` 5.3.9. +`silverstripe/cms` 6.3.1 with `silverstripe/versioned` 6.3.9. -All Silverstripe CMS recipes are released in lock step with each other. For example, `silverstripe/installer` 5.3.1 will -contain `silverstripe/recipe-cms` 5.3.1 and `silverstripe/recipe-core` 5.3.1. These recipes may contain various patch -versions of its modules within the same minor release line (5.3 in this example). +All Silverstripe CMS recipes are released in lock step with each other. For example, `silverstripe/installer` 6.3.1 will +contain `silverstripe/recipe-cms` 6.3.1 and `silverstripe/recipe-core` 6.3.1. These recipes may contain various patch +versions of its modules within the same minor release line (6.3 in this example). ## Regular minor releases diff --git a/en/12_Project_Governance/05_Major_release_policy.md b/en/12_Project_Governance/05_Major_release_policy.md index ea37038cb..d10f081b2 100644 --- a/en/12_Project_Governance/05_Major_release_policy.md +++ b/en/12_Project_Governance/05_Major_release_policy.md @@ -116,7 +116,7 @@ The Silverstripe CMS release cycle is built around these assumptions: At launch, a Silverstripe CMS major release supports all PHP versions in full support. PHP versions in limited support are not supported at launch by new Silverstripe CMS major releases. -Following the initial launch of a Silverstripe CMS major release, the development team aims to add forward compatibility for the next PHP release. e.g: Silverstripe CMS 6 at launch will support PHP 8.3 and PHP 8.4. CMS 5 should receive official support for an eventual PHP 8.5 in early 2026. +Following the initial launch of a Silverstripe CMS major release, the development team aims to add forward compatibility for the next PHP release. e.g: Silverstripe CMS 7 at launch will support PHP 8.5 and PHP 8.6. CMS 6 should receive official support for an eventual PHP 8.5 in early 2026. Support for end-of-life PHP releases is not dropped within a Silverstripe CMS major release line, unless it's necessary to address vulnerabilities or high impact bugs. diff --git a/en/12_Project_Governance/07_Supported_Modules.md b/en/12_Project_Governance/07_Supported_Modules.md index 33fd47411..36c52cac8 100644 --- a/en/12_Project_Governance/07_Supported_Modules.md +++ b/en/12_Project_Governance/07_Supported_Modules.md @@ -11,7 +11,7 @@ Silverstripe CMS ships modules that receive commercial support. Commercially sup - our [minor release policy](minor_release_policy) - our [major release policy](major_release_policy). -These modules will be supported for the lifetime of Silverstripe CMS 5 in the provided major versions. +These modules will be supported for the lifetime of Silverstripe CMS 6 in the provided major versions. ## Core Silverstripe CMS modules @@ -25,27 +25,27 @@ These modules provide the core Silverstripe CMS experience. Most Silverstripe CM Core Module | Supported major release line -- | -- -[silverstripe/admin](https://packagist.org/packages/silverstripe/admin) | 2 -[silverstripe/asset-admin](https://packagist.org/packages/silverstripe/asset-admin) | 2 -[silverstripe/assets](https://packagist.org/packages/silverstripe/assets) | 2 -[silverstripe/cms](https://packagist.org/packages/silverstripe/cms) | 5 -[silverstripe/config](https://packagist.org/packages/silverstripe/config) | 2 -[silverstripe/errorpage](https://packagist.org/packages/silverstripe/errorpage) | 2 -[silverstripe/framework](https://packagist.org/packages/silverstripe/framework) | 5 -[silverstripe/graphql](https://packagist.org/packages/silverstripe/graphql) | 5 -[silverstripe/installer](https://packagist.org/packages/silverstripe/installer) | 5 -[silverstripe/login-forms](https://packagist.org/packages/silverstripe/login-forms) | 5 -[silverstripe/mimevalidator](https://packagist.org/packages/silverstripe/mimevalidator) | 3 -[silverstripe/recipe-cms](https://packagist.org/packages/silverstripe/recipe-cms) | 5 -[silverstripe/recipe-core](https://packagist.org/packages/silverstripe/recipe-core) | 5 +[silverstripe/admin](https://packagist.org/packages/silverstripe/admin) | 3 +[silverstripe/asset-admin](https://packagist.org/packages/silverstripe/asset-admin) | 3 +[silverstripe/assets](https://packagist.org/packages/silverstripe/assets) | 3 +[silverstripe/cms](https://packagist.org/packages/silverstripe/cms) | 6 +[silverstripe/config](https://packagist.org/packages/silverstripe/config) | 3 +[silverstripe/errorpage](https://packagist.org/packages/silverstripe/errorpage) | 3 +[silverstripe/framework](https://packagist.org/packages/silverstripe/framework) | 6 +[silverstripe/graphql](https://packagist.org/packages/silverstripe/graphql) | 6 +[silverstripe/installer](https://packagist.org/packages/silverstripe/installer) | 6 +[silverstripe/login-forms](https://packagist.org/packages/silverstripe/login-forms) | 6 +[silverstripe/mimevalidator](https://packagist.org/packages/silverstripe/mimevalidator) | 4 +[silverstripe/recipe-cms](https://packagist.org/packages/silverstripe/recipe-cms) | 6 +[silverstripe/recipe-core](https://packagist.org/packages/silverstripe/recipe-core) | 6 [silverstripe/recipe-plugin](https://packagist.org/packages/silverstripe/recipe-plugin) | 2 -[silverstripe/reports](https://packagist.org/packages/silverstripe/reports) | 5 -[silverstripe/session-manager](https://packagist.org/packages/silverstripe/session-manager) | 2 -[silverstripe/siteconfig](https://packagist.org/packages/silverstripe/siteconfig) | 5 -[silverstripe/template-engine](https://packagist.org/packages/silverstripe/silverstripe-template-engine) | 1 +[silverstripe/reports](https://packagist.org/packages/silverstripe/reports) | 6 +[silverstripe/session-manager](https://packagist.org/packages/silverstripe/session-manager) | 3 +[silverstripe/siteconfig](https://packagist.org/packages/silverstripe/siteconfig) | 6 +[silverstripe/template-engine](https://packagist.org/packages/silverstripe/template-engine) | 1 [silverstripe/vendor-plugin](https://packagist.org/packages/silverstripe/vendor-plugin) | 2 -[silverstripe/versioned](https://packagist.org/packages/silverstripe/versioned) | 2 -[silverstripe/versioned-admin](https://packagist.org/packages/silverstripe/versioned-admin) | 2 +[silverstripe/versioned](https://packagist.org/packages/silverstripe/versioned) | 3 +[silverstripe/versioned-admin](https://packagist.org/packages/silverstripe/versioned-admin) | 3 ## Other supported modules @@ -53,34 +53,34 @@ These modules extend the core Silverstripe CMS functionality. Silverstripe CMS p Supported PHP Module | Supported versions -- | -- -[colymba/gridfield-bulk-editing-tools](https://packagist.org/packages/colymba/gridfield-bulk-editing-tools) | 4 -[dnadesign/silverstripe-elemental](https://packagist.org/packages/dnadesign/silverstripe-elemental) | 5 -[dnadesign/silverstripe-elemental-userforms](https://packagist.org/packages/dnadesign/silverstripe-elemental-userforms) | 4 +[colymba/gridfield-bulk-editing-tools](https://packagist.org/packages/colymba/gridfield-bulk-editing-tools) | 5 +[dnadesign/silverstripe-elemental](https://packagist.org/packages/dnadesign/silverstripe-elemental) | 6 +[dnadesign/silverstripe-elemental-userforms](https://packagist.org/packages/dnadesign/silverstripe-elemental-userforms) | 5 [silverstripe-themes/simple](https://packagist.org/packages/silverstripe-themes/simple) | 3 -[silverstripe/dynamodb](https://packagist.org/packages/silverstripe/dynamodb) | 5 -[silverstripe/gridfieldqueuedexport](https://packagist.org/packages/silverstripe/gridfieldqueuedexport) | 3 -[silverstripe/hybridsessions](https://packagist.org/packages/silverstripe/hybridsessions) | 3 -[silverstripe/linkfield](https://packagist.org/packages/silverstripe/linkfield) | 4 -[silverstripe/lumberjack](https://packagist.org/packages/silverstripe/lumberjack) | 3 -[silverstripe/mfa](https://packagist.org/packages/silverstripe/mfa) | 5 -[silverstripe/realme](https://packagist.org/packages/silverstripe/realme) | 5 -[silverstripe/segment-field](https://packagist.org/packages/silverstripe/segment-field) | 3 -[silverstripe/sharedraftcontent](https://packagist.org/packages/silverstripe/sharedraftcontent) | 3 -[silverstripe/spamprotection](https://packagist.org/packages/silverstripe/spamprotection) | 4 -[silverstripe/staticpublishqueue](https://packagist.org/packages/silverstripe/staticpublishqueue) | 6 -[silverstripe/tagfield](https://packagist.org/packages/silverstripe/tagfield) | 3 -[silverstripe/taxonomy](https://packagist.org/packages/silverstripe/taxonomy) | 3 -[silverstripe/textextraction](https://packagist.org/packages/silverstripe/textextraction) | 4 -[silverstripe/totp-authenticator](https://packagist.org/packages/silverstripe/totp-authenticator) | 5 -[silverstripe/userforms](https://packagist.org/packages/silverstripe/userforms) | 6 -[symbiote/silverstripe-advancedworkflow](https://packagist.org/packages/symbiote/silverstripe-advancedworkflow) | 6 -[symbiote/silverstripe-gridfieldextensions](https://packagist.org/packages/symbiote/silverstripe-gridfieldextensions) | 4 -[symbiote/silverstripe-queuedjobs](https://packagist.org/packages/symbiote/silverstripe-queuedjobs) | 5 -[tractorcow/silverstripe-fluent](https://packagist.org/packages/tractorcow/silverstripe-fluent) | 7 +[silverstripe/dynamodb](https://packagist.org/packages/silverstripe/dynamodb) | 6 +[silverstripe/gridfieldqueuedexport](https://packagist.org/packages/silverstripe/gridfieldqueuedexport) | 4 +[silverstripe/hybridsessions](https://packagist.org/packages/silverstripe/hybridsessions) | 4 +[silverstripe/linkfield](https://packagist.org/packages/silverstripe/linkfield) | 5 +[silverstripe/lumberjack](https://packagist.org/packages/silverstripe/lumberjack) | 4 +[silverstripe/mfa](https://packagist.org/packages/silverstripe/mfa) | 6 +[silverstripe/realme](https://packagist.org/packages/silverstripe/realme) | 6 +[silverstripe/segment-field](https://packagist.org/packages/silverstripe/segment-field) | 4 +[silverstripe/sharedraftcontent](https://packagist.org/packages/silverstripe/sharedraftcontent) | 4 +[silverstripe/spamprotection](https://packagist.org/packages/silverstripe/spamprotection) | 5 +[silverstripe/staticpublishqueue](https://packagist.org/packages/silverstripe/staticpublishqueue) | 7 +[silverstripe/tagfield](https://packagist.org/packages/silverstripe/tagfield) | 4 +[silverstripe/taxonomy](https://packagist.org/packages/silverstripe/taxonomy) | 4 +[silverstripe/textextraction](https://packagist.org/packages/silverstripe/textextraction) | 5 +[silverstripe/totp-authenticator](https://packagist.org/packages/silverstripe/totp-authenticator) | 6 +[silverstripe/userforms](https://packagist.org/packages/silverstripe/userforms) | 7 +[symbiote/silverstripe-advancedworkflow](https://packagist.org/packages/symbiote/silverstripe-advancedworkflow) | 7 +[symbiote/silverstripe-gridfieldextensions](https://packagist.org/packages/symbiote/silverstripe-gridfieldextensions) | 5 +[symbiote/silverstripe-queuedjobs](https://packagist.org/packages/symbiote/silverstripe-queuedjobs) | 6 +[tractorcow/silverstripe-fluent](https://packagist.org/packages/tractorcow/silverstripe-fluent) | 8 ## Supported NPM packages -The following two NPM packages are also supported because they are required to build the UI of Silverstripe CMS 5: +The following two NPM packages are also supported because they are required to build the UI of Silverstripe CMS 6: - [@silverstripe/webpack-config](https://www.npmjs.com/package/@silverstripe/webpack-config) - [@silverstripe/eslint-config](https://www.npmjs.com/package/@silverstripe/eslint-config) diff --git a/en/12_Project_Governance/08_Fixed_dependencies.md b/en/12_Project_Governance/08_Fixed_dependencies.md index 235b9902d..f74713a9e 100644 --- a/en/12_Project_Governance/08_Fixed_dependencies.md +++ b/en/12_Project_Governance/08_Fixed_dependencies.md @@ -3,13 +3,13 @@ title: Fixed dependencies description: Dependencies which will not be changed for the lifetime of a given major release --- -# Silverstripe CMS 5 fixed dependencies +# Silverstripe CMS 6 fixed dependencies Silverstripe CMS relies on third party packages. Silverstripe CMS projects may interact directly or indirectly with those dependencies. -We've defined a list of *fixed dependencies* for the lifetime of Silverstripe CMS 5. These dependencies will not be upgraded to new major version within the Silverstripe CMS 5 release line. +We've defined a list of *fixed dependencies* for the lifetime of Silverstripe CMS 6. These dependencies will not be upgraded to new major version within the Silverstripe CMS 6 release line. -Dependencies not in this list may be changed or removed altogether within the lifetime of Silverstripe CMS 5. +Dependencies not in this list may be changed or removed altogether within the lifetime of Silverstripe CMS 6. Dependency | Fixed major release line -- | -- diff --git a/en/12_Project_Governance/09_Repository_Management.md b/en/12_Project_Governance/09_Repository_Management.md index dcce007bc..74c99fe9e 100644 --- a/en/12_Project_Governance/09_Repository_Management.md +++ b/en/12_Project_Governance/09_Repository_Management.md @@ -12,9 +12,9 @@ This document outlines the rules and processes for managing the GitHub repositor ### Naming convention -Branches with a single integer (e.g. `5`) represent either the next *major* release (if there have been no tagged releases for that release line yet) or the next *minor* release. +Branches with a single integer (e.g. `1`) represent either the next *major* release (if there have been no tagged releases for that release line yet) or the next *minor* release. -Branches with an integer, a dot, and another integer (e.g. `5.2`) represent either the *next patch release* for the current minor, or a patch release for a previous minor version. +Branches with an integer, a dot, and another integer (e.g. `1.2`) represent either the *next patch release* for the current minor, or a patch release for a previous minor version. > [!NOTE] > Branches with any other naming strategy should not be the target of any pull requests. Only branches following this naming convention are included in merge-ups and are used as the base for new tagged releases. @@ -22,16 +22,16 @@ Branches with an integer, a dot, and another integer (e.g. `5.2`) represent eith For example, if we have the following tags: ```text -5.1.17 -5.2.0 +1.1.17 +1.2.0 ``` Then: -- `5.1` is the patch release branch for the previous minor version. High severity security fixes should target this branch. -- `5.2` is the next-patch release branch for the current minor version. Bugfixes should target this branch. -- `5` is the next-minor release branch. Enhancements should target this branch. -- `6` is the next-major release branch. Changes that break backwards compatibility should target this branch. +- `1.1` is the patch release branch for the previous minor version. High severity security fixes should target this branch. +- `1.2` is the next-patch release branch for the current minor version. Bugfixes should target this branch. +- `1` is the next-minor release branch. Enhancements should target this branch. +- `2` is the next-major release branch. Changes that break backwards compatibility should target this branch. ### Branch protection