silverstripe-framework/docs/en/04_Changelogs/4.7.0.md
2021-01-13 10:09:59 +13:00

648 lines
78 KiB
Markdown

# 4.7.0
## Overview
- [Updated file usage table](#updated-file-usage-table)
- [Support for PHP 8](#experimental-support-for-php-8)
- [Support for Symfony 4 Components](#support-for-symfony-4-components)
- [Default MySQL collation updated](#default-mysql-collation-updated)
- [MySQL connection mode configurable](#mysql-connection-mode-now-configurable)
- [Flysystem dependency shifted](#flysystem-dependency-shifted)
- [Improved Toast notifications](#improved-toast-notifications)
- [DataObject constructor support for hydration](#dataobject-constructor-support-for-hydration)
A full list of module versions included in Recipe 4.7.0 is provided below. We recommend referencing recipes in your dependencies, rather than individual modules, to simplify version tracking. See [Recipes](/getting_started/recipes) for more information.
<details>
<summary>Included module versions</summary>
| Module | Version |
| ------ | ------- |
| silverstripe/admin | **1.7.0** |
| silverstripe/asset-admin | **1.7.0** |
| silverstripe/assets | **1.7.0** |
| silverstripe/campaign-admin | **1.7.0** |
| silverstripe/cms | **4.7.0** |
| silverstripe/config | **1.1.0** |
| silverstripe/errorpage | **1.7.0** |
| silverstripe/framework | **4.7.0** |
| silverstripe/graphql | **3.4.0** |
| silverstripe/reports | **4.7.0** |
| silverstripe/siteconfig | **4.7.0** |
| silverstripe/versioned | **1.7.0** |
| silverstripe/versioned-admin | **1.7.0** |
</details>
## New features
### Updated file usage table
CMS users can view where a file is used by accessing the Used on tab in the Files section. This feature allows them to
identify what DataObjects depend on the file.
The following changes have been made to the Used on table:
- Data is now sourced from `has_one` and `many_many` relations instead of the ownership API
- This means more data relationships should be shown than before
- Uses the new `RelatedDataService` API in the framework module which can also be used for other non-file use cases
- Support for linking ancestor relationships in the same table row, for instance showing the Page a Content Block is on
- Ability to click on a row and navigate to the most relevant `CMSEditLink()`
- Removal of draft badges
- Styling tweaks such as reduced padding
Your project specific DataObjects will automatically be displayed on this Used on tab. This may not always be desirable,
especially when working with background DataObjects the user can not interact with directly. It is recommended you view
the CMS Developer Guide for more information on this change, see the [File Usage section](docs/en/02_Developer_Guides/14_Files/07_File_Usage).
### Support for PHP 8
You can now run Silverstripe CMS on PHP 8. PHP 8 includes many exciting new features like named
parameters, attributes, and union types. There are a few important caveats to keep in mind if
you plan to adopt PHP 8 at release.
Upgrading to PHP 8 on projects using `SapphireTest` for unit testing requires adoption of the
[`sminnee/phpunit`](https://packagist.org/packages/sminnee/phpunit) fork, and Prophecy is not
currently supported. Prophecy tests can be fairly trivially ported to PHPUnit Mock Objects. We hope
to give you better support for choosing your own testing tools, including newer versions of PHPUnit,
in a future release.
Support for PHP 8 does not yet extend to non-core modules, so compatibility issues could arise in
future PHP builds. This extends to dependencies of core, many of which have not yet declared
support for PHP 8, so you will need to run Composer with the `--ignore-platform-reqs` flag for
the time being.
Finally, support for the new JIT functionality has not yet been tested.
We encourage early adopters to report any issues running CMS Recipe 4.7.0 against PHP 8 on the
relevant GitHub repository.
### Support for Symfony 4 Components
Symfony 3 moved in to 'security fixes only' support in November, so Silverstripe CMS is now
forwards-compatible with Symfony 4 components. This is a largely transparent upgrade, but you
may encounter errors related to strings starting with `%` in YML files, which can be easily
rectified by wrapping all affected strings in quotes.
If you'd rather retain the previous YAML parser for the time being, you can run
`composer require symfony/yaml:^3` on your project to prevent the update to version 4.
### Default MySQL collation updated
New projects based on Recipe 4.7.0 will default to using the `utf8mb4_unicode_ci` collation. This
collation provides better support for multi-byte characters such as emojis, and developers are
encouraged to adopt this collation across all projects where possible.
When upgrading to Recipe 4.7.0, this configuration change will also incorrectly apply to existing
projects. _This is unintended_, and in Recipe 4.7.1 and later the change will be opt-in. If you
wish to opt out of the new collation during an upgrade to Recipe 4.7.0, remove the
`app/_config/database.yml` configuration file that is added during the Composer update process.
Depending on the version of MySQL you are running, you may encounter issues with `Varchar` fields
exceeding the maximum indexable size:
- MySQL 5.5 and lower cannot support indexes larger than 768 bytes (192 characters)
- MySQL 5.6 supports larger indexes (3072 bytes) if the `innodb_large_prefix` setting is enabled (not by default)
- MySQL 5.7 and newer have `innodb_large_prefix` enabled by default
- MariaDB ~10.1 matches MySQL 5.6's behaviour, >10.2 matches 5.7's.
You can rectify this by upgrading MySQL, enabling the `innodb_large_prefix` setting if present, or
reducing the size of affected fields. If none of these solutions are currently suitable, you can
remove the new collation configuration to default back to the previous default collation.
### MySQL connection mode now configurable
In MySQL versions >=5.7.5, the `ANSI` sql_mode setting behaves differently and includes the `ONLY_FULL_GROUP_BY` setting. It is generally recommended to leave this setting as-is because it results in deterministic SQL. However, for some advanced cases, the sql_mode can now be configured on the database connection via the configuration API (see `MySQLDatabase::$sql_mode` for more details.)
### Flysystem dependency shifted
Previously the Flysystem package was pulled in via the `silverstripe/framework` module, but only
used in the `silverstripe/assets` module. To make this dependency clearer, it has been added to
the `silverstripe/assets` module and removed from `silverstripe/framework`. Most developers should
not notice any issues, but if you depend on Flysystem in your own project code, you should ensure
that you have it specified in your `composer.json`.
An edgecase exists where a project can update to `silverstripe/framework 4.7.0` but remain on
`silverstripe/assets 1.6.x`, and lose the Flysystem dependency entirely. The best way to avoid this
is by ensuring you update all core modules to the new minor release at once, ideally through a core
recipe like `silverstripe/recipe-core`.
### Improved Toast notifications
Toast notifications have been completely revamped
- Toast notifications can now be triggered from React components using Redux actions
- Actions can now be attached to the toast notifications
- Accessibility has been improved (see the component documentation for caveats when using actions)
Asset-admin has been updated to use toast notifications instead of alerts. More modules will start
using them in future releases.
[Review the Toast story in the pattern library](https://silverstripe.github.io/silverstripe-admin/?selectedKind=Admin%2FToasts&selectedStory=Single)
to learn how and when to use the toast notifications.
### DataObject constructor support for hydration
Many developers wrongly assumed that the DataObject constructor could be used to "hydrate" a record
by passing an array of value to it. While this worked in some cases, values would be run through
setters and validation occasionally leading to inconsistencies.
Silverstripe CMS Recipe 4.7 introduces improvements to the DataObject constructor to provide proper
support for hydration.
<!--- Changes below this line will be automatically regenerated -->
## Change Log
### Features and Enhancements
* silverstripe/recipe-core (4.6.1 -&gt; 4.7.0)
* 2018-10-05 [9b1350e](https://github.com/silverstripe/recipe-core/commit/9b1350ea53bb184b6b816211851824a414bdbe5b) Set default database charset to utf8mb4 (Sam Minnee)
* silverstripe/assets (1.6.1 -&gt; 1.7.0)
* 2020-09-23 [c2128b4](https://github.com/silverstripe/silverstripe-assets/commit/c2128b40fd98eec50bb03091e18fd999cd76a424) Introduce PHP 8 and prefer-lowest builds (Garion Herman)
* silverstripe/config (1.0.18 -&gt; 1.1.0)
* 2020-09-22 [f267081](https://github.com/silverstripe/silverstripe-config/commit/f267081c160bec8cedd9cca60749e624b96e08c6) Confirm support for PHP8 (Sam Minnee)
* 2020-09-18 [7477435](https://github.com/silverstripe/silverstripe-config/commit/7477435cb671e6535000931d1043efb08f8f6637) Allow symfony 4 (Sam Minnee)
* silverstripe/framework (4.6.2 -&gt; 4.7.0)
* 2020-11-16 [490ac6eb4](https://github.com/silverstripe/silverstripe-framework/commit/490ac6eb4fb30794c891d4ececa2f321425eb2e5) Update translations (Maxime Rainville)
* 2020-11-02 [a8d9bea44](https://github.com/silverstripe/silverstripe-framework/commit/a8d9bea442771388ae438ca43475ecafcd45218f) Update translations (Maxime Rainville)
* 2020-10-28 [6e77d5ead](https://github.com/silverstripe/silverstripe-framework/commit/6e77d5eada39bae6a0d310439a3a18667e1e91b2) DataObject related objects service (Steve Boyd)
* 2020-10-23 [91f831cd0](https://github.com/silverstripe/silverstripe-framework/commit/91f831cd0bfc36551d84f7c45e8652f9ea80087a) Improve scalar response handling (Garion Herman)
* 2020-10-22 [0e064300d](https://github.com/silverstripe/silverstripe-framework/commit/0e064300d92254c3c6a0a6e5d3192f9d6c40c830) Add disabled attribute to SelectionGroup (Steve Boyd)
* 2020-10-22 [f00f64120](https://github.com/silverstripe/silverstripe-framework/commit/f00f64120d184086b394ad239a4b510b7c7db7f5) Allow setting sql_mode via config (#9721) (Bernard Hamlin)
* 2020-10-12 [941df19e8](https://github.com/silverstripe/silverstripe-framework/commit/941df19e88ab4ff1da02ba86d15e8ccd4b5711d5) Improve YamlReader exception message (#9731) (wernerkrauss)
* 2020-09-25 [27bd5d12e](https://github.com/silverstripe/silverstripe-framework/commit/27bd5d12e3f4001f0c80a1a333a440cd8b0ae897) Replace E_USER_ERROR errors with exceptions (Robbie Averill)
* 2020-09-18 [9247bc8b7](https://github.com/silverstripe/silverstripe-framework/commit/9247bc8b79a04493ce80f101e75eb79ae06e7588) Add Symfony 4 support alongside Symfony 3 (Sam Minnee)
* 2020-09-07 [24dfe0b02](https://github.com/silverstripe/silverstripe-framework/commit/24dfe0b026e04905cdae1f6eab9322a98e05abe7) Add --prefer-lowest to PHP 7.1 build (Sam Minnee)
* 2020-08-30 [b3dd27953](https://github.com/silverstripe/silverstripe-framework/commit/b3dd27953b7e863b3e2ee032966f22e2961b5abb) Allow league/csv ^9 (Sam Minnee)
* 2020-08-29 [08010d593](https://github.com/silverstripe/silverstripe-framework/commit/08010d5933a2ecce32890e92ce8b2bf8764934ac) Support namespace tokens in ClassInfo::parse_class_spec() (Garion Herman)
* 2020-08-27 [699913406](https://github.com/silverstripe/silverstripe-framework/commit/699913406be6ecc385a63039cc6d20048148f561) Added a dev view to output the current config from dev/config (#9542) (Jackson Darlow)
* 2020-08-26 [680adbd10](https://github.com/silverstripe/silverstripe-framework/commit/680adbd10b76656cc358e30e06f6b487db76f2f8) Add recipe-core to default VersionProvider module list (Garion Herman)
* 2020-08-25 [7c84171d5](https://github.com/silverstripe/silverstripe-framework/commit/7c84171d5b6ffea48ef98962b332fcc4dcfc5120) Improved task runner UI. (#9540) (Mojmir Fendek)
* 2020-08-12 [7304acb17](https://github.com/silverstripe/silverstripe-framework/commit/7304acb17138d136f24e106b22ef3f5713aee4ec) Cache embed shortcodes (Steve Boyd)
* 2020-08-11 [e19ef240f](https://github.com/silverstripe/silverstripe-framework/commit/e19ef240f72f0b0c4dd8b4a43628f95d82a53a9d) VersionProvider now supports recipes as well as modules (Steve Boyd)
* 2020-08-05 [c2ed6a4cd](https://github.com/silverstripe/silverstripe-framework/commit/c2ed6a4cd641b0d008e5d8d9d9292f005a223187) WithMockTime callback. (Mojmir Fendek)
* 2020-07-02 [0d7c5a9ec](https://github.com/silverstripe/silverstripe-framework/commit/0d7c5a9ecec641fee31c307d7daaa162b9f10f45) Add/remove callbacks on RelationList (Sam Minnee)
* 2020-06-30 [57d75c89d](https://github.com/silverstripe/silverstripe-framework/commit/57d75c89d51a98a81ddb191b2135ede814bfbe68) Added onAfterBuild (#9545) (Jackson Darlow)
* 2019-08-02 [f57d5cc80](https://github.com/silverstripe/silverstripe-framework/commit/f57d5cc807b37f59d6e849d26e8a24a86cca0a14) Test coverage for MySQL connection collation (Serge Latyntcev)
* 2019-06-14 [4d5d7a34a](https://github.com/silverstripe/silverstripe-framework/commit/4d5d7a34a15d638ba51d42b0d3ef756106d4f424) Add FilterInterface and retrofit into URLSegmentFilter (Robbie Averill)
* 2019-04-14 [91591373d](https://github.com/silverstripe/silverstripe-framework/commit/91591373d64296c3a3981d23f09b4204759ea0b1) Add exists as a method to the DataQuery API that will generate an SQL &amp;quot;exists&amp;quot; query (Guy Marriott)
* silverstripe/mimevalidator (2.0.0 -&gt; 2.1.0)
* 2020-11-16 [c528307](https://github.com/silverstripe/silverstripe-mimevalidator/commit/c528307ecffaa7b5765e634fad9305547374d884) Update translations (Maxime Rainville)
* 2020-11-15 [b409695](https://github.com/silverstripe/silverstripe-mimevalidator/commit/b4096951574d70198306bd2189ce00a893b98763) Update translations (Maxime Rainville)
* 2020-09-22 [1921110](https://github.com/silverstripe/silverstripe-mimevalidator/commit/1921110814d96688cc7ca4d0afbcad7609018947) Confirm support for PHP8 (Sam Minnee)
* silverstripe/admin (1.6.1 -&gt; 1.7.0)
* 2020-11-15 [c39d06c](https://github.com/silverstripe/silverstripe-admin/commit/c39d06c4b25718e2340fc98c910f249a3bf168a1) Update translations (Maxime Rainville)
* 2020-11-02 [74e7546](https://github.com/silverstripe/silverstripe-admin/commit/74e754612902974f157674b7dd28b4419612d45c) Update translations (Maxime Rainville)
* 2020-10-29 [f40bbdc](https://github.com/silverstripe/silverstripe-admin/commit/f40bbdc353c57733067033165c49163f21ac31f7) Improved file used on table data (Steve Boyd)
* 2020-09-25 [cc4db4b](https://github.com/silverstripe/silverstripe-admin/commit/cc4db4b645a034ba596d9629f1e59fa9e1d0c2f9) Replace E_USER_ERROR errors with exceptions (Robbie Averill)
* 2020-09-23 [ba2aad5](https://github.com/silverstripe/silverstripe-admin/commit/ba2aad5feb3c06cd480699f93316cb09c2f321bc) Show icons on tabs with invalid form field values (Steve Boyd)
* 2020-09-23 [70afbc9](https://github.com/silverstripe/silverstripe-admin/commit/70afbc9e2087313f2503f23743b2daf240f6fa9d) Confirm PHP 8 support (Sam Minnee)
* 2020-09-21 [abfb75d](https://github.com/silverstripe/silverstripe-admin/commit/abfb75dca65a5bd3c66321816847870a69130a00) Implement Toast notification in react (#1068) (Maxime Rainville)
* 2020-09-18 [d9f0dd1](https://github.com/silverstripe/silverstripe-admin/commit/d9f0dd193ccf34ca1928ec70d326a5f1f03f91b6) Add attention icon for tab validation errors (Sacha Judd)
* 2018-12-07 [b57dcfb](https://github.com/silverstripe/silverstripe-admin/commit/b57dcfbd6ec39b0fac828d7f95d74afd0afdfb80) Allow descriptions to be added as titles on SingleSelectField (Guy Marriott)
* silverstripe/asset-admin (1.6.1 -&gt; 1.7.0)
* 2020-11-16 [14072085](https://github.com/silverstripe/silverstripe-asset-admin/commit/1407208565a05dc14afc124915e4518f17aa639f) Update translations (Maxime Rainville)
* 2020-11-15 [7b53f8ac](https://github.com/silverstripe/silverstripe-asset-admin/commit/7b53f8ac4f9fb6d24906ca7fdfa692b17e28751f) Update translations (Maxime Rainville)
* 2020-11-02 [af300867](https://github.com/silverstripe/silverstripe-asset-admin/commit/af300867e8c4536b773c9a298b25f054b0d4ac54) Update translations (Maxime Rainville)
* 2020-11-01 [29e08365](https://github.com/silverstripe/silverstripe-asset-admin/commit/29e08365856bd472c01d9fa1931b2742776ba640) Exclude FileLink&amp;#039;s using a different extension hook (#1139) (Steve Boyd)
* 2020-10-15 [b17f5fda](https://github.com/silverstripe/silverstripe-asset-admin/commit/b17f5fda42fbc740fdee01a7cdb8627c1f04a2f6) Switch to using toast instead of form alerts (#1111) (Maxime Rainville)
* 2020-05-26 [5269e9d9](https://github.com/silverstripe/silverstripe-asset-admin/commit/5269e9d96642074faab70490e1fd55c41f7416e8) Last modified date for assets in list view table are now formatted according to browser locale (Robbie Averill)
* silverstripe/campaign-admin (1.6.0 -&gt; 1.7.0)
* 2020-11-02 [96e598f](https://github.com/silverstripe/silverstripe-campaign-admin/commit/96e598f8242ca885ca2512e6c7bb618321ad821a) Update translations (Maxime Rainville)
* silverstripe/versioned-admin (1.6.0 -&gt; 1.7.0)
* 2020-11-16 [ae029a6](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ae029a698e013aa93642478815a8933b6f063028) Update translations (Maxime Rainville)
* 2020-11-15 [493ac5d](https://github.com/silverstripe/silverstripe-versioned-admin/commit/493ac5de0c073411d163af269588b2c36aaf4438) Update translations (Maxime Rainville)
* 2020-11-02 [6ae5194](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6ae51941c8b2340cfeb6d0101990fa45c552aed0) Update translations (Maxime Rainville)
* 2020-10-14 [481546a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/481546a7a1a1039b8b91a0125d5487c2a7ec9fd8) Extension to exclude ChangeSetItem from used on table (Steve Boyd)
* silverstripe/cms (4.6.0 -&gt; 4.7.0)
* 2020-11-16 [88508a24](https://github.com/silverstripe/silverstripe-cms/commit/88508a243ffe71da7f1b87778e369e768e40c51c) Update translations (Maxime Rainville)
* 2020-11-15 [f6c8fd09](https://github.com/silverstripe/silverstripe-cms/commit/f6c8fd094494426c4a978b86370a56b852b75da3) Update translations (Maxime Rainville)
* 2020-11-02 [e23c4861](https://github.com/silverstripe/silverstripe-cms/commit/e23c48618945bc9d510c9a7fc79197c3e1ce4c43) Update translations (Maxime Rainville)
* 2020-09-25 [d17f0586](https://github.com/silverstripe/silverstripe-cms/commit/d17f058622c24f008a3a22e2946f71dc352bafaa) Replace E_USER_ERROR errors with exceptions (Robbie Averill)
* 2020-08-25 [ed73b827](https://github.com/silverstripe/silverstripe-cms/commit/ed73b827356bf05133ce459ef8b9c5cb1f2f71b5) Set VersionedProvider labels for recipe-core and recipe-cms (Steve Boyd)
* silverstripe/errorpage (1.6.0 -&gt; 1.7.0)
* 2020-11-02 [b3cb347](https://github.com/silverstripe/silverstripe-errorpage/commit/b3cb3479843d5942d0159850eb4c3da63c1c7592) Update translations (Maxime Rainville)
* silverstripe/reports (4.6.0 -&gt; 4.7.0)
* 2020-09-25 [9b9e673e](https://github.com/silverstripe/silverstripe-reports/commit/9b9e673e4b925ad4adbd8464e988b951fa289e52) Replace E_USER_ERROR errors with exceptions (Robbie Averill)
* silverstripe/siteconfig (4.6.0 -&gt; 4.7.0)
* 2020-11-02 [7b66e70c](https://github.com/silverstripe/silverstripe-siteconfig/commit/7b66e70c0079916325c3f3dd2fbe9d2ee5580b66) Update translations (Maxime Rainville)
* silverstripe/versioned (1.6.2 -&gt; 1.7.0)
* 2020-11-16 [b78ac78](https://github.com/silverstripe/silverstripe-versioned/commit/b78ac789824717eea722f513a1a2b0e47584f1ae) Update translations (Maxime Rainville)
* 2020-11-15 [05d1720](https://github.com/silverstripe/silverstripe-versioned/commit/05d1720bb2c68dceb49fb8dd4a3188a37c4ebed8) Update translations (Maxime Rainville)
* 2020-11-02 [b1b3a7c](https://github.com/silverstripe/silverstripe-versioned/commit/b1b3a7cdba5e090a1dc6c8ac49562b1726d6b777) Update translations (Maxime Rainville)
* 2020-09-25 [4bf71d3](https://github.com/silverstripe/silverstripe-versioned/commit/4bf71d35cd228b4bc0461f7d5b4488155574c98f) Replace E_USER_ERROR errors with exceptions (Robbie Averill)
* 2020-09-14 [b17eb61](https://github.com/silverstripe/silverstripe-versioned/commit/b17eb61690c3fbe8d4a896c77047d6b396fb6cb8) Extension points for isOnDraft() and isPublished(). (Mojmir Fendek)
* 2020-08-20 [732d448](https://github.com/silverstripe/silverstripe-versioned/commit/732d448c69effaa9eedd8a8ffb15e70a6640a7f1) Show the type of save that was performed for the record instead of just showing either Saved/Published. (#279) (Andre Kiste)
* 2020-08-16 [a3b5ab5](https://github.com/silverstripe/silverstripe-versioned/commit/a3b5ab53658fe37f56d2594e47095086bb3f8501) Add test for stateless semantics of isDraft and isPublished (Sam Minnee)
* 2020-07-23 [65befd0](https://github.com/silverstripe/silverstripe-versioned/commit/65befd0642042a808bc3f08353ab7d77af793eaf) Extension points for version lookup. (Mojmir Fendek)
* silverstripe/login-forms (4.1.2 -&gt; 4.3.0)
* 2020-11-02 [30cf78d](https://github.com/silverstripe/silverstripe-login-forms/commit/30cf78d108167eb5e16dec7894b1cd71084ab01b) Update translations (Maxime Rainville)
* 2020-08-27 [a7416f1](https://github.com/silverstripe/silverstripe-login-forms/commit/a7416f10fef93443f6d19b44715a50abab2916dc) Prevent using Page_Controller Requirements (Steve Boyd)
* 2020-02-17 [2b3f986](https://github.com/silverstripe/silverstripe-login-forms/commit/2b3f98626765693be32a20f3a36aa5765cf4ae25) Make dark mode support optional (Elliot Sawyer)
### Bugfixes
* silverstripe/installer (4.6.1 -&gt; 4.7.0)
* 2020-09-21 [6035ccd](https://github.com/silverstripe/silverstripe-installer/commit/6035ccd6897d069f1314b30c71b3c824f5dcc9c9) Add redirects to `public/` for iis (#263) (Manuel Thalmann)
* 2020-09-10 [80d1bdf](https://github.com/silverstripe/silverstripe-installer/commit/80d1bdf621e3923b90ec7fa66391a0ee107e78be) Don&amp;#039;t include the .cow folders in releases (Maxime Rainville)
* 2020-05-27 [27231bf](https://github.com/silverstripe/silverstripe-installer/commit/27231bf315ca5f592ac79e59ca84325d21923a76) Treat login-forms as a core module (Maxime Rainville)
* silverstripe/recipe-core (4.6.1 -&gt; 4.7.0)
* 2020-06-29 [d609c02](https://github.com/silverstripe/recipe-core/commit/d609c02d78309dbc376e4edcfc0580eae8a6ae3f) Revert &amp;quot;Disable uneeded File ID Helper on new project&amp;quot; (#59) (Maxime Rainville)
* silverstripe/assets (1.6.1 -&gt; 1.7.0)
* 2020-10-07 [635d7a7](https://github.com/silverstripe/silverstripe-assets/commit/635d7a7f1e482392d0e561d6c96dde0b8c19dbbf) Refactor Prophecy tests to PHPUnit Mock Objects (Garion Herman)
* 2020-08-10 [4c509c1](https://github.com/silverstripe/silverstripe-assets/commit/4c509c14a49487ad21a7b97ca085aebaa71777fc) ListContents no longer called recursively (#415) (Adrian Humphreys)
* silverstripe/config (1.0.18 -&gt; 1.1.0)
* 2020-10-12 [e089b79](https://github.com/silverstripe/silverstripe-config/commit/e089b79a161450f82d90c8b09173d02e0f795a6c) Refactor Prophecy tests to PHPUnit Mock Objects (Garion Herman)
* 2020-02-18 [eca0e24](https://github.com/silverstripe/silverstripe-config/commit/eca0e24efec2c14fb805b63e855772c98a16627f) Drop uppercase S in Composer requirements (Garion Herman)
* 2020-02-18 [671bb6e](https://github.com/silverstripe/silverstripe-config/commit/671bb6e2322800dc590776dce1f2fcefe990419a) Remove composer extra composer key (Maxime Rainville)
* silverstripe/framework (4.6.2 -&gt; 4.7.0)
* 2020-10-23 [e89ae93ac](https://github.com/silverstripe/silverstripe-framework/commit/e89ae93ac9a236f6e1ba3a14392406980062b7de) Harden hasMethod() against invalid values (Garion Herman)
* 2020-10-20 [b24dc7349](https://github.com/silverstripe/silverstripe-framework/commit/b24dc73497c9f5c91f3d0b36f75699700bbbc90c) Escape % symbole for Symphony 4 (Maxime Rainville)
* 2020-10-12 [58ed42665](https://github.com/silverstripe/silverstripe-framework/commit/58ed426653a637eadb44f2524aed05f55b6c70ae) TinyMCEConfig image size presets handle incorrect values (Serge Latyntcev)
* 2020-10-08 [c5d676fa4](https://github.com/silverstripe/silverstripe-framework/commit/c5d676fa4e1d37fa4d940b97adb7f2ad80acdbb8) Avoid test failure on use of narrow-NBSP (#9725) (Sam Minnée)
* 2020-10-06 [198b25c90](https://github.com/silverstripe/silverstripe-framework/commit/198b25c9002160596a47357fd79fff2c55fdd888) Hardcode PasswordValidator config in VersionedMemberAuthenticatorTest (Garion Herman)
* 2020-09-30 [8ad4c4e02](https://github.com/silverstripe/silverstripe-framework/commit/8ad4c4e02484b532724d39a75c83f36372cc74b8) Fix namespace parsing under PHP 8, tweak readability of parser (Garion Herman)
* 2020-09-18 [8b3ef8f85](https://github.com/silverstripe/silverstripe-framework/commit/8b3ef8f85ae7a738fa2e8cfe217aca6274477117) recipe-testing is only needed for behat. (Sam Minnee)
* 2020-09-15 [acce4c4ce](https://github.com/silverstripe/silverstripe-framework/commit/acce4c4ce7cf4b42cfa4d33a115825e713d4cd78) Remove old boostrap 3 CSS class (Maxime Rainville)
* 2020-09-11 [2143660c3](https://github.com/silverstripe/silverstripe-framework/commit/2143660c3f371883e2e870f8e953d0ccae0c568e) Add class_exists() guards to SapphireTest (Sam Minnee)
* 2020-09-10 [ac6f34846](https://github.com/silverstripe/silverstripe-framework/commit/ac6f34846e013c3067721894583399024f222376) Resolve issue where TreeMultiSelectField would error loading its value (#9604) (Damian Mooyman)
* 2020-09-10 [8bcfa5734](https://github.com/silverstripe/silverstripe-framework/commit/8bcfa57342ecd716273e55de75b50e0ad656196e) Make PasswordEncryptor::check more resistent to timing attacks (Maxime Rainville)
* 2020-09-10 [acdebcdba](https://github.com/silverstripe/silverstripe-framework/commit/acdebcdba7a7176f10aad345770fd88e028c4b1b) Fix unit test (Maxime Rainville)
* 2020-09-10 [02827a667](https://github.com/silverstripe/silverstripe-framework/commit/02827a66700f3a1d05ffb4065d1e664da94ee49e) Problem with direct compare in SELECT statement causing incompatibility with SQL Server database (Steve Boyd)
* 2020-09-09 [27c1c7291](https://github.com/silverstripe/silverstripe-framework/commit/27c1c72912b04b8c64cd8418c6bfcb0c3e65c990) ModuleManifest::getModuleByPath fix to ensure right module is returned (#9569) (Nicolaas)
* 2020-09-08 [85252ca05](https://github.com/silverstripe/silverstripe-framework/commit/85252ca05e5e4c98f4d8670e385a2c2c3875e21f) Ensure Embed options are always array (Sam Minnee)
* 2020-09-07 [adaf793dd](https://github.com/silverstripe/silverstripe-framework/commit/adaf793ddbe41ef074862502028248ff53711b7b) Always validate Member credentials against DRAFT stage (#9671) (Maxime Rainville)
* 2020-09-07 [099ee2deb](https://github.com/silverstripe/silverstripe-framework/commit/099ee2deb7c58415732b0959473ab6b61128ecc3) Remove extraneous @depends annotations (Garion Herman)
* 2020-09-04 [f1c94e6d5](https://github.com/silverstripe/silverstripe-framework/commit/f1c94e6d54d1c660abe04951cc5e162e3dd664f7) Allow quotes in expected ReflectionExceptions within tests (Garion Herman)
* 2020-09-04 [44685eceb](https://github.com/silverstripe/silverstripe-framework/commit/44685eceba6667a45799ab1f3805bd53f3372e8a) Support PHP 8 namespace tokens in i18nTextCollector (Garion Herman)
* 2020-09-04 [bad066229](https://github.com/silverstripe/silverstripe-framework/commit/bad066229192d1c9618ce18c4bf81e5cb972040e) Disable libxml_disable_entity_loader() calls in PHP 8 (Garion Herman)
* 2020-08-30 [fb9e6e51a](https://github.com/silverstripe/silverstripe-framework/commit/fb9e6e51a69274a3885a6c65574ea467e44082ed) Switch to sminnee fork of phpunit 5.7 (Sam Minnee)
* 2020-08-30 [57bdef3b2](https://github.com/silverstripe/silverstripe-framework/commit/57bdef3b2e7cba284bfe0ff2cb798b70c995ca41) Fix test mistakenly labelling content as name arguments in data provider (Sam Minnee)
* 2020-08-30 [09fb33e65](https://github.com/silverstripe/silverstripe-framework/commit/09fb33e657607844cbb9a42c306bc4ce5bd383b7) Avoid passing non-class to get_parent_class() (Sam Minnee)
* 2020-08-30 [5cb3d07f4](https://github.com/silverstripe/silverstripe-framework/commit/5cb3d07f44d35a904db511c01dcd8fc64dfd64ec) Avoid pass-literal-by-reference warning in PHP 8 (Sam Minnee)
* 2020-08-29 [622cf8b91](https://github.com/silverstripe/silverstripe-framework/commit/622cf8b914b1ca35ba379ecd55179632bd824b6c) Drop parameter names in Injector instantiation to preserve behaviour in PHP 8 (Sam Minnee)
* 2020-08-29 [e0f379748](https://github.com/silverstripe/silverstripe-framework/commit/e0f3797489584a08e6c290e61462a16359958f2b) Remove deprecated &amp;amp; non-functional default argument config (Sam Minnee)
* 2020-08-21 [7377d094c](https://github.com/silverstripe/silverstripe-framework/commit/7377d094c046e8b9e0f352c41353b0193ddffc93) Include missing security page titles when CMS not installed (fixes #9648) (Loz Calver)
* 2020-08-20 [abd0f3fbf](https://github.com/silverstripe/silverstripe-framework/commit/abd0f3fbf3c47068f800b51f775c2c7064675ef0) Fix DataList-&amp;amp;gt;column mutating underlying DataQuery (Mason Dechaineux)
* 2020-08-07 [4b5d2c3cc](https://github.com/silverstripe/silverstripe-framework/commit/4b5d2c3cc292a690b5de9c5dec6ac9afe52abe69) Fix GroupedDropdownFieldTest::testReadonlyValue (#9637) (Maxime Rainville)
* 2020-08-06 [e31565cb7](https://github.com/silverstripe/silverstripe-framework/commit/e31565cb71cb5c764c19e093dbd8dac472157beb) Fix GroupedDropdownFieldTest::testReadonlyValue (Maxime Rainville)
* 2020-08-06 [896c0e438](https://github.com/silverstripe/silverstripe-framework/commit/896c0e4388c7ee959f82268de654eeb960329644) Use proper ellipsis character in the various summary method. (Maxime Rainville)
* 2020-08-06 [0ed40e9b0](https://github.com/silverstripe/silverstripe-framework/commit/0ed40e9b0effc54fc56075683f7b8c128ca48d78) only use HTTPS link on the default controller template (Maxime Rainville)
* 2020-07-14 [f13c928b1](https://github.com/silverstripe/silverstripe-framework/commit/f13c928b14f0ded74db91f3d421095a696e7333e) Fix _images pathing (Aaron Carlino)
* 2020-07-14 [0d2a9da0d](https://github.com/silverstripe/silverstripe-framework/commit/0d2a9da0dd0b444025df9af4b51270d64310de11) Fix file icon URL (Aaron Carlino)
* 2020-07-03 [3bf89b2d1](https://github.com/silverstripe/silverstripe-framework/commit/3bf89b2d13bf882803f5f5409284c76b41166c6c) Try Catch for embeded media (#9424) (rdigitalg)
* 2020-06-12 [2e0e04f70](https://github.com/silverstripe/silverstripe-framework/commit/2e0e04f70105ccabc174b58cf022ca6ac22fd0a3) fix deprecation notices (Andrew Aitken-Fincham)
* 2019-08-26 [01d3b4fd9](https://github.com/silverstripe/silverstripe-framework/commit/01d3b4fd96cb9e6e5b2fa52a7de6067d90326dc4) Set many-many-through joinRecord on newly added records. (Sam Minnee)
* 2019-04-26 [3575070b9](https://github.com/silverstripe/silverstripe-framework/commit/3575070b9d44472555606a4fbabfb5d011b69c29) Removing selected column detail only if having is empty (MySQL &amp;quot;feature&amp;quot;) (Guy Marriott)
* 2019-04-17 [f9fc4f664](https://github.com/silverstripe/silverstripe-framework/commit/f9fc4f66415cc477a1f560237ca5965277c5a8d7) Allow for BC for DB adapters that return an actual boolean when selecting boolean literals in SQL (Guy Marriott)
* 2019-04-16 [ef0af7ae9](https://github.com/silverstripe/silverstripe-framework/commit/ef0af7ae9c129e8e12e9c3660d3d52114e9b7cf3) Exists statements can&amp;#039;t remove GROUP BY if there&amp;#039;s a HAVING clause as it might rely on an aggregate (Guy Marriott)
* 2019-03-08 [bca0f28b6](https://github.com/silverstripe/silverstripe-framework/commit/bca0f28b62c624c3450c35ea98a4f7fc87e0b1fe) Make template parser error on mismatched brackets (fixes #8845) (Loz Calver)
* 2019-03-08 [bfc3b4b46](https://github.com/silverstripe/silverstripe-framework/commit/bfc3b4b468f2a625470a0e13f080aa7d31da7027) Stop empty comments breaking the template parser (fixes #8742) (Loz Calver)
* silverstripe/mimevalidator (2.0.0 -&gt; 2.1.0)
* 2020-09-22 [890bd1e](https://github.com/silverstripe/silverstripe-mimevalidator/commit/890bd1e353893fceeeb9d7fbc69b5595c9568432) Remove invalid yaml duplication (Sam Minnee)
* silverstripe/admin (1.6.1 -&gt; 1.7.0)
* 2020-11-10 [5d179b7](https://github.com/silverstripe/silverstripe-admin/commit/5d179b734ed1f97a0f3c853e29539e971c6988f5) Change selector used for min-width for updated popover (Steve Boyd)
* 2020-10-28 [15efb09](https://github.com/silverstripe/silverstripe-admin/commit/15efb092ba1d736f8cfa9a6874dae3a225833379) Hide TabNav when only one Tab is present (Maxime Rainville)
* 2020-10-20 [2fcac0a](https://github.com/silverstripe/silverstripe-admin/commit/2fcac0a7ff2b8819a0518789fd7a85da0f633189) Adjust search form widths to prevent date cutoff (Steve Boyd)
* 2020-10-19 [7727d10](https://github.com/silverstripe/silverstripe-admin/commit/7727d10e46b775fcda8c7165a18a65cb974bea46) Patch Entwine to ignore missing methods in one() (Garion Herman)
* 2020-10-06 [7f6a5a8](https://github.com/silverstripe/silverstripe-admin/commit/7f6a5a8753397f8ec237fafa655809a72e9351dc) Adapt React components to Reactstrap 8 upgrade (#1128) (Steve Boyd)
* 2020-09-24 [11364a6](https://github.com/silverstripe/silverstripe-admin/commit/11364a6c1c10004a8fd73e64db34c5c736a4fe99) Add missing translation strings (Steve Boyd)
* 2020-09-21 [60482f9](https://github.com/silverstripe/silverstripe-admin/commit/60482f99115e83121511f88b16d35a6a761b50c6) Temporary fix to use the most up-to-date version of chromedriver (#1114) (Maxime Rainville)
* 2020-09-15 [7193602](https://github.com/silverstripe/silverstripe-admin/commit/7193602a0074061fa27ab5190bc704c0ab54c2e7) Revert vertically align form description contents (Steve Boyd)
* 2020-08-26 [37b8da3](https://github.com/silverstripe/silverstripe-admin/commit/37b8da3693af3fcbede43a8f1c8b989317a4c52a) Fix ModelAdmin slug flex when getManagedModels() is overridden. (Sam Minnee)
* 2020-07-08 [b39f0ba](https://github.com/silverstripe/silverstripe-admin/commit/b39f0ba8f472b05532ccc9f67d86a29b30401b4f) Decouple ModelAdmin URL slug from class. (Sam Minnee)
* 2020-06-16 [f67766b](https://github.com/silverstripe/silverstripe-admin/commit/f67766bb512910c78751c0b15f637858493064e3) Ensure graphql URL is inserted before admin (Sam Minnee)
* 2020-05-01 [0e89d48](https://github.com/silverstripe/silverstripe-admin/commit/0e89d48f281c58ac048b040f9c9db454bf60393d) Fix URL anchors not selecting tabs (bergice)
* 2019-03-29 [da65083](https://github.com/silverstripe/silverstripe-admin/commit/da65083957d10ee0a0c9681a6764f3d126f2432e) Minor improvement to SingleSelectField story (Maxime Rainville)
* silverstripe/asset-admin (1.6.1 -&gt; 1.7.0)
* 2020-11-10 [b44732fd](https://github.com/silverstripe/silverstripe-asset-admin/commit/b44732fddd47ea0802b159c74eac51475aaa810b) Alter the key when a file is selected so it is re-rendered by Griddle (#1159) (Maxime Rainville)
* 2020-11-10 [557c472a](https://github.com/silverstripe/silverstripe-asset-admin/commit/557c472ad3b75177e14c41c85237c80df7ab4376) Restore filters in the file search (Maxime Rainville)
* 2020-11-03 [f49db3fa](https://github.com/silverstripe/silverstripe-asset-admin/commit/f49db3faa0b13a356f8dcac5069a7b3c99c75a90) Only exclude Folders from the used on table instead of all Files (Steve Boyd)
* 2020-10-20 [a452e79d](https://github.com/silverstripe/silverstripe-asset-admin/commit/a452e79d14af6c4b3474ef4faeea09c3fbf9c5c4) Escape % to work with Symhony 4 (Maxime Rainville)
* 2020-10-14 [fe08b1f3](https://github.com/silverstripe/silverstripe-asset-admin/commit/fe08b1f37444211cd17315b10ae7831b6c810c6b) Button alignment tweaks (Steve Boyd)
* 2020-09-16 [33b0003b](https://github.com/silverstripe/silverstripe-asset-admin/commit/33b0003b8fc65d88585c902c53d9b811a14038bf) Strip html tags from file upload error responses (Steve Boyd)
* 2020-08-13 [754b4058](https://github.com/silverstripe/silverstripe-asset-admin/commit/754b4058c86e4a55c0dcd8aa3e6d1776fafc3177) Top margin adjustment for file link insert message (Steve Boyd)
* 2020-07-28 [eee32b6e](https://github.com/silverstripe/silverstripe-asset-admin/commit/eee32b6ea6fdf512b928580a5f89a4fdb4bc4bd2) Make the file upload progressbar smooth (Maxime Rainville)
* silverstripe/campaign-admin (1.6.0 -&gt; 1.7.0)
* 2020-11-23 [48f73d6](https://github.com/silverstripe/silverstripe-campaign-admin/commit/48f73d6795f527314ca7b53fa4ce8642cc6fe8ff) Reimplement translations (Steve Boyd)
* 2020-10-05 [114d9d7](https://github.com/silverstripe/silverstripe-campaign-admin/commit/114d9d70b5a2a36144aa9628b6251c0ff84c4a72) Address regression caused by reactstrap upgrade (Steve Boyd)
* 2020-08-14 [d2312ac](https://github.com/silverstripe/silverstripe-campaign-admin/commit/d2312ac94ab83f2278d7e3ff360480deb7ce338c) Show Untitled when blank title (Steve Boyd)
* 2020-07-19 [9a06d33](https://github.com/silverstripe/silverstripe-campaign-admin/commit/9a06d33a547533976f239e197545fa5cef8a88ff) Add links to userhelp (Steve Boyd)
* silverstripe/versioned-admin (1.6.0 -&gt; 1.7.0)
* 2020-09-10 [fa4908a](https://github.com/silverstripe/silverstripe-versioned-admin/commit/fa4908a0fadb297db57297f1a1f0c65167125e38) UI related changes moved from Versioned to Versioned Admin. (Mojmir Fendek)
* 2020-09-03 [53b24ff](https://github.com/silverstripe/silverstripe-versioned-admin/commit/53b24ff9bee3631fb76e7b7d5fedf134b68c50a4) Prevent exception when parent does not have breadcrumbs (Steve Boyd)
* 2020-08-18 [afc460c](https://github.com/silverstripe/silverstripe-versioned-admin/commit/afc460c8e7a225197bc19a82ca7591853089b299) Reorder model tabs (Steve Boyd)
* silverstripe/cms (4.6.0 -&gt; 4.7.0)
* 2020-12-09 [6092206c](https://github.com/silverstripe/silverstripe-cms/commit/6092206cc8dacba02056719aa67a5a996dc91e91) Re-patch language in behat reports test (Garion Herman)
* 2020-10-21 [f9c26cef](https://github.com/silverstripe/silverstripe-cms/commit/f9c26cefa36ac4a78353c910831c120f6fa5a96e) Fix parsing error on CMSSiteTreeFilter (Maxime Rainville)
* 2020-10-20 [8a16d708](https://github.com/silverstripe/silverstripe-cms/commit/8a16d708d41c33b7c4cb02587d750e61ee51a40c) Use Live stage to fetch results during SearchFormTest (Garion Herman)
* 2020-10-20 [96281e71](https://github.com/silverstripe/silverstripe-cms/commit/96281e712deb80cd004eea905ed3b066f6929e09) Escape % to work with Symhony 4 (Maxime Rainville)
* 2020-10-15 [aaf4fb4d](https://github.com/silverstripe/silverstripe-cms/commit/aaf4fb4d7aeaee0760bd3d713d12b3fbea3a0d69) Remove broken RESOURCES_DIR test (Maxime Rainville)
* 2020-10-12 [73460f9e](https://github.com/silverstripe/silverstripe-cms/commit/73460f9ee0014acf0817e737197de7df899ecf3c) remove old syntax from meta tag label (brynwhyman)
* 2020-10-05 [0fcda80f](https://github.com/silverstripe/silverstripe-cms/commit/0fcda80f028c036f0c8be2b2e6954b3857727b32) URL segment filter correction for CMS page search. (Mojmir Fendek)
* 2020-09-15 [edbe5ad0](https://github.com/silverstripe/silverstripe-cms/commit/edbe5ad069663ce10189fb7baca2a27d82920711) Remove old boostrap 3 CSS class (Maxime Rainville)
* 2020-08-31 [39b8d146](https://github.com/silverstripe/silverstripe-cms/commit/39b8d14634d18ce545c34324251d70884d0855b9) Unpublish permission decoupled from publish permission. (Mojmir Fendek)
* 2020-08-25 [c5a96a2a](https://github.com/silverstripe/silverstripe-cms/commit/c5a96a2a876689d51a662677885b72c249fc2086) Flush embed shortcode provider cache on SiteTree write (Steve Boyd)
* 2020-08-06 [31fa2624](https://github.com/silverstripe/silverstripe-cms/commit/31fa262475fcfbfedcdbea0bbe292b0fe319c0ec) Honour URL suffix on URL Segment field (Maxime Rainville)
* silverstripe/versioned (1.6.2 -&gt; 1.7.0)
* 2020-09-29 [3bcc569](https://github.com/silverstripe/silverstripe-versioned/commit/3bcc5690543e46e0f13d5cfa966f6a4fd2bcccb5) Remove canPublish check for users to see unpublish button (fixes #300) (Loz Calver)
* 2020-09-10 [fc9bf93](https://github.com/silverstripe/silverstripe-versioned/commit/fc9bf93635db4e228cbdbbc3e38b36c93faee4cc) UI related changes moved from Versioned to Versioned Admin. (Mojmir Fendek)
* 2020-08-16 [6175786](https://github.com/silverstripe/silverstripe-versioned/commit/6175786029f2713889f6e665a4115b30fc38c645) Decouple test setup. (Sam Minnee)
* 2020-08-13 [624edbe](https://github.com/silverstripe/silverstripe-versioned/commit/624edbe0ba6a194231337fbc70b10411485d2556) Consistent timestamp fix for versions during publish recursive. (#292) (Mojmir Fendek)
* 2020-07-06 [c32cba5](https://github.com/silverstripe/silverstripe-versioned/commit/c32cba50eb17a2ee69379a37eaaf6423cd91d746) Fix semantics of isPublished(), isArchived(), isOnDraft() for objects without draft/published stages (Sam Minnee)
* silverstripe/login-forms (4.1.2 -&gt; 4.3.0)
* 2020-07-02 [75f1936](https://github.com/silverstripe/silverstripe-login-forms/commit/75f19367d59056dada584f42142c3903249864cf) Localise login screen (#61) (Maxime Rainville)
* 2020-03-16 [5e2c9db](https://github.com/silverstripe/silverstripe-login-forms/commit/5e2c9db13913aca51e149fbfc088d343e8588155) Use `.silverstripe-cms-logo` in place of `svg` to target logo (Garion Herman)
### API Changes
* silverstripe/framework (4.6.2 -&gt; 4.7.0)
* 2020-09-17 [ff18dec2e](https://github.com/silverstripe/silverstripe-framework/commit/ff18dec2e58a0e733aaff27bd5251474366c08d4) Add new behat method for interacting with toasts (#9695) (Maxime Rainville)
* 2020-08-20 [b810b7d5c](https://github.com/silverstripe/silverstripe-framework/commit/b810b7d5c9acdceda25ca915f0de6ebecce904a8) Allow for user-created objects to have values passed in the constructor (#8591) (Sam Minnée)
* silverstripe/admin (1.6.1 -&gt; 1.7.0)
* 2020-10-02 [e21ad30](https://github.com/silverstripe/silverstripe-admin/commit/e21ad304e52c29672f38cdb0b7164f92694c3c9a) Introduce hooks to help components figure out what tab they are in. (Maxime Rainville)
### Dependencies
* silverstripe/recipe-cms (4.6.1 -&gt; 4.7.0)
* 2020-11-04 [840644b](https://github.com/silverstripe/recipe-cms/commit/840644b96dba75a01b29a6472e7c53c35e755958) Update requirements to 4.7.x-dev (Steve Boyd)
* silverstripe/recipe-core (4.6.1 -&gt; 4.7.0)
* 2020-11-22 [d7045aa](https://github.com/silverstripe/recipe-core/commit/d7045aac0567600f69cfcb1995e9c2550de32f90) Update to 4.7.x-dev (#62) (Steve Boyd)
* silverstripe/assets (1.6.1 -&gt; 1.7.0)
* 2020-10-08 [a7aa355](https://github.com/silverstripe/silverstripe-assets/commit/a7aa3557301f67a4205cf63bbdeaf35d77d731f4) Add explicit dependency on league/flysystem (Garion Herman)
* silverstripe/framework (4.6.2 -&gt; 4.7.0)
* 2020-10-08 [256bd5355](https://github.com/silverstripe/silverstripe-framework/commit/256bd53557f737fcb47e4871239451f84ff27d69) Remove unused league/flysystem requirement (Garion Herman)
* silverstripe/admin (1.6.1 -&gt; 1.7.0)
* 2020-10-16 [58ed097](https://github.com/silverstripe/silverstripe-admin/commit/58ed097a73a3ab2e92b0ce7c09682c0ef4258e47) Bump npm-user-validate from 1.0.0 to 1.0.1 (dependabot[bot])
* 2020-09-04 [d8a235d](https://github.com/silverstripe/silverstripe-admin/commit/d8a235d03d8a0908049b6095028196ace0641b90) Bump handlebars from 4.5.1 to 4.7.6 (dependabot[bot])
* 2020-07-30 [ac1ed29](https://github.com/silverstripe/silverstripe-admin/commit/ac1ed29d24aad0b05a4e5b95dbb7613c009f4752) Bump elliptic from 6.5.1 to 6.5.3 (dependabot[bot])
* 2020-07-16 [8391518](https://github.com/silverstripe/silverstripe-admin/commit/839151850f98b2ea148ef57447cf4dfe9ae532a4) Bump lodash from 4.17.15 to 4.17.19 (dependabot[bot])
* 2020-07-07 [f9144e5](https://github.com/silverstripe/silverstripe-admin/commit/f9144e57e6160f3b75ef3f440b2d3ca027b39b72) Bump npm from 6.13.4 to 6.14.6 (dependabot[bot])
* 2020-07-07 [5c92864](https://github.com/silverstripe/silverstripe-admin/commit/5c9286467bb5eb2901c179c61a59a520b1a52685) Bump npm-registry-fetch from 4.0.2 to 4.0.5 (dependabot[bot])
* 2020-06-26 [66da669](https://github.com/silverstripe/silverstripe-admin/commit/66da669cb9bc7378581ee6b56bdf3e418f709526) Bump websocket-extensions from 0.1.3 to 0.1.4 (#1052) (dependabot[bot])
* silverstripe/asset-admin (1.6.1 -&gt; 1.7.0)
* 2020-07-30 [4867a9a6](https://github.com/silverstripe/silverstripe-asset-admin/commit/4867a9a643fbe27b48dab74a0877353670026708) Bump elliptic from 6.5.2 to 6.5.3 (dependabot[bot])
* 2020-07-16 [7ec0a1dc](https://github.com/silverstripe/silverstripe-asset-admin/commit/7ec0a1dc45f339c308024b0112db7a4fd1682130) Bump lodash from 4.17.15 to 4.17.19 (dependabot[bot])
* 2020-07-07 [ad52ce68](https://github.com/silverstripe/silverstripe-asset-admin/commit/ad52ce68b4669181d10d4859a2a4078ae343e727) Bump npm from 6.14.5 to 6.14.6 (dependabot[bot])
* 2020-06-30 [5f4cfe1c](https://github.com/silverstripe/silverstripe-asset-admin/commit/5f4cfe1cfcdd3b4fdf9ccba284f812a3790a517d) Bump websocket-extensions from 0.1.3 to 0.1.4 (dependabot[bot])
* 2020-04-30 [f635a954](https://github.com/silverstripe/silverstripe-asset-admin/commit/f635a95474395a149ef02927da37dbad961a8f2d) Bump jquery from 3.4.1 to 3.5.0 (dependabot[bot])
* silverstripe/campaign-admin (1.6.0 -&gt; 1.7.0)
* 2020-10-16 [c0513b2](https://github.com/silverstripe/silverstripe-campaign-admin/commit/c0513b216e96e5ab824ed2ba72482aefba35e1ed) Bump npm-user-validate from 1.0.0 to 1.0.1 (dependabot[bot])
* 2020-09-04 [c800564](https://github.com/silverstripe/silverstripe-campaign-admin/commit/c8005641ce34f9f058912d05904faff7bc67f4ef) Bump npm from 6.13.4 to 6.14.8 (dependabot[bot])
* 2020-09-04 [2c07c2e](https://github.com/silverstripe/silverstripe-campaign-admin/commit/2c07c2e081e87fabb5b10459694a87229830ed4b) Bump npm-registry-fetch from 4.0.2 to 4.0.7 (dependabot[bot])
* 2020-09-04 [5c4789e](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5c4789eb8f7de97571c702ecf6b01370d18ad801) Bump node-sass from 4.13.0 to 4.14.1 (dependabot[bot])
* 2020-09-04 [5480bd4](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5480bd4a4530a053af27e513d01f669d15504e27) Bump lodash from 4.17.15 to 4.17.20 (dependabot[bot])
* 2020-07-30 [1bda667](https://github.com/silverstripe/silverstripe-campaign-admin/commit/1bda6670c34c1a35188841145a7f0c3bc5fdbe61) Bump elliptic from 6.5.1 to 6.5.3 (dependabot[bot])
* silverstripe/versioned-admin (1.6.0 -&gt; 1.7.0)
* 2020-10-16 [6e3edbb](https://github.com/silverstripe/silverstripe-versioned-admin/commit/6e3edbb0b59ccb8c137182ffb14246cc84b571c2) Bump npm-user-validate from 1.0.0 to 1.0.1 (dependabot[bot])
* 2020-09-06 [135bd01](https://github.com/silverstripe/silverstripe-versioned-admin/commit/135bd01f032d420b2c23d75b071241594c57fb2b) Bump handlebars from 4.5.1 to 4.7.6 (dependabot[bot])
* 2020-06-06 [ecd14d8](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ecd14d8b754d0c66cea0b415c123cbadbce9d7e8) Bump websocket-extensions from 0.1.3 to 0.1.4 (dependabot[bot])
* silverstripe/cms (4.6.0 -&gt; 4.7.0)
* 2020-10-16 [072d14e8](https://github.com/silverstripe/silverstripe-cms/commit/072d14e8aefa374d7b6fccfc994e86b487f7ccf2) Bump npm-user-validate from 1.0.0 to 1.0.1 (dependabot[bot])
* 2020-09-05 [b7a49f0f](https://github.com/silverstripe/silverstripe-cms/commit/b7a49f0f30c0c6b0a84f49bf07608efc46afa3e4) Bump handlebars from 4.5.1 to 4.7.6 (dependabot[bot])
* 2020-09-04 [879ec42e](https://github.com/silverstripe/silverstripe-cms/commit/879ec42e2596769b56cd1b0eb95873449778b530) Bump node-sass from 4.13.0 to 4.14.1 (dependabot[bot])
* 2020-07-30 [d20c2863](https://github.com/silverstripe/silverstripe-cms/commit/d20c28633cae125792e5cacd06b1695c3565bc98) Bump elliptic from 6.5.1 to 6.5.3 (dependabot[bot])
* 2020-07-16 [bffe16f6](https://github.com/silverstripe/silverstripe-cms/commit/bffe16f6e64685baf472358376de15d3189e1579) Bump lodash from 4.17.15 to 4.17.19 (dependabot[bot])
* 2020-07-07 [3cf5cbee](https://github.com/silverstripe/silverstripe-cms/commit/3cf5cbee6d0c575d9cab3e147f01d6c175799380) Bump npm from 6.13.4 to 6.14.6 (dependabot[bot])
* silverstripe/versioned (1.6.2 -&gt; 1.7.0)
* 2020-09-04 [07c7885](https://github.com/silverstripe/silverstripe-versioned/commit/07c78853934ae1c45bbfd298c9b0426f9f517403) Bump node-sass from 4.11.0 to 4.14.1 (dependabot[bot])
* 2020-08-01 [8fd7345](https://github.com/silverstripe/silverstripe-versioned/commit/8fd7345ec0ec81b09df6ffd8baa2abff9f12099a) Bump elliptic from 6.4.1 to 6.5.3 (dependabot[bot])
* 2020-07-19 [37a7024](https://github.com/silverstripe/silverstripe-versioned/commit/37a7024c9db53009d31aa00c1be47cc62f30bf4b) Bump lodash from 4.17.15 to 4.17.19 (dependabot[bot])
* 2020-07-07 [0a30d28](https://github.com/silverstripe/silverstripe-versioned/commit/0a30d28f94a4cfe25b252af0600474b3269fee3b) Bump npm from 6.13.7 to 6.14.6 (dependabot[bot])
* silverstripe/login-forms (4.1.2 -&gt; 4.3.0)
* 2020-10-16 [d2b572b](https://github.com/silverstripe/silverstripe-login-forms/commit/d2b572b365d2180081fa7bc010ba5da113c130ca) Bump npm-user-validate from 1.0.0 to 1.0.1 (dependabot[bot])
* 2020-09-04 [ebcba46](https://github.com/silverstripe/silverstripe-login-forms/commit/ebcba467fd336308598cf2c992a2a5a595548d22) Bump node-sass from 4.11.0 to 4.14.1 (dependabot[bot])
* 2020-09-04 [3c97760](https://github.com/silverstripe/silverstripe-login-forms/commit/3c97760e4d425ca7b1effbadc9f9e5dce2e58160) Bump lodash.mergewith from 4.6.1 to 4.6.2 (dependabot[bot])
* 2020-07-30 [16194f2](https://github.com/silverstripe/silverstripe-login-forms/commit/16194f28134b6f4d2dfdc321c5de23d292a07515) Bump elliptic from 6.4.1 to 6.5.3 (dependabot[bot])
* 2020-07-16 [211f5a3](https://github.com/silverstripe/silverstripe-login-forms/commit/211f5a3bd05205a1bb9cc33114d412a392ef8c0f) Bump lodash from 4.17.11 to 4.17.19 (dependabot[bot])
* 2020-07-07 [9f83601](https://github.com/silverstripe/silverstripe-login-forms/commit/9f83601d15d359b9e68b036344b79892320d4a03) Bump npm from 6.13.4 to 6.14.6 (dependabot[bot])
* 2020-06-30 [b71bb53](https://github.com/silverstripe/silverstripe-login-forms/commit/b71bb537b8536ebf0778d4d5b45ac8440d2eb9f3) Bump mixin-deep from 1.3.1 to 1.3.2 (dependabot[bot])
* 2019-12-13 [ec292b3](https://github.com/silverstripe/silverstripe-login-forms/commit/ec292b367fcc12e0869e2282203dbf8f97385b6d) Bump npm from 6.9.0 to 6.13.4 (dependabot[bot])
### Documentation
* silverstripe/installer (4.6.1 -&gt; 4.7.0)
* 2020-08-26 [d76bd7d](https://github.com/silverstripe/silverstripe-installer/commit/d76bd7d66e0ef224e6e6fcdf7b9a3e8f716a813b) more information in changelog template (brynwhyman)
* silverstripe/framework (4.6.2 -&gt; 4.7.0)
* 2020-11-03 [4d0dc9176](https://github.com/silverstripe/silverstripe-framework/commit/4d0dc9176b8e1cdd3a2e29ab94dde924466c985a) Document nullable DataObject in used on table extension guide (#9755) (Steve Boyd)
* 2020-11-03 [a8aa072d2](https://github.com/silverstripe/silverstripe-framework/commit/a8aa072d26ddf60ff193c6d413b9ce197fcd7dcf) Tweak file usage changelog item, add to stable changelog (Garion Herman)
* 2020-11-03 [3cde64a7a](https://github.com/silverstripe/silverstripe-framework/commit/3cde64a7aae585b3abac216a6607238140f49780) Document the file usage table (Steve Boyd)
* 2020-11-02 [6c2713894](https://github.com/silverstripe/silverstripe-framework/commit/6c2713894a0bb81ef8ea446aedc6fa1702f8c24f) Tweak 4.7.0-beta1 changelog (Maxime Rainville)
* 2020-10-12 [79a03b2b0](https://github.com/silverstripe/silverstripe-framework/commit/79a03b2b0532839970c0cfa6026279c74bf28108) Add upgrade note about Flysystem dependency shift (Garion Herman)
* 2020-10-09 [1837c1983](https://github.com/silverstripe/silverstripe-framework/commit/1837c19833760e926a6daddc1616430d92e1dec2) Add note about creating provisional changelogs following minor releases (Garion Herman)
* 2020-10-09 [d8b725dc8](https://github.com/silverstripe/silverstripe-framework/commit/d8b725dc8016500afb8ea5ff85b6483104d2994e) Add provisional 4.7.0 changelog [ci skip] (Garion Herman)
* 2020-10-08 [9a1959607](https://github.com/silverstripe/silverstripe-framework/commit/9a1959607f5fbf54f83cc4699ca300ecbb2df160) RFC-9687 Commit Prefixes conventions (Serge Latyntcev)
* 2020-10-04 [c2d8d2790](https://github.com/silverstripe/silverstripe-framework/commit/c2d8d2790f5eebcade53beea81b92bcdfa7531cf) Document partial template caching aggregates recommendation (Serge Latyntcev)
* 2020-09-17 [074623017](https://github.com/silverstripe/silverstripe-framework/commit/074623017260c0d0a25bd244a03c677c4d91688b) Add process for releasing individual module patches (#9626) (Garion Herman)
* 2020-09-12 [13725d2f9](https://github.com/silverstripe/silverstripe-framework/commit/13725d2f9228d8793e03eb2eb5d837d4b4becf6f) HistoryViewer: explain &amp;quot;magic names&amp;quot; (#9670) (cloph)
* 2020-09-10 [2c1cb7915](https://github.com/silverstripe/silverstripe-framework/commit/2c1cb79156f13e003a28c6bd9a4786567ece3515) Example of partial cache expiry setting. (Mojmir Fendek)
* 2020-09-10 [a5c1a86dc](https://github.com/silverstripe/silverstripe-framework/commit/a5c1a86dcbcc9b6614c35ab6695301fe31d40c34) Clarify the security pre-announcement mailing list usage (Serge Latyntcev)
* 2020-09-10 [d9c0b079d](https://github.com/silverstripe/silverstripe-framework/commit/d9c0b079d1f396d979fc712fa85881c4cbc26902) Fix Partial Template Cache documentation header (Serge Latyntcev)
* 2020-09-10 [2753f823e](https://github.com/silverstripe/silverstripe-framework/commit/2753f823ee01f9819d97eece839c2452ef124802) Added a tip to docs describing how to set a cookie for less than a day (#9552) (Jackson Darlow)
* 2020-09-09 [c072f7343](https://github.com/silverstripe/silverstripe-framework/commit/c072f7343a68c490aec4f36f3ab4816020bae04f) Add triage resources, document stale PR definition (#9660) (Garion Herman)
* 2020-08-20 [f8b4570cb](https://github.com/silverstripe/silverstripe-framework/commit/f8b4570cb127b4a3175c9d5a1358ceadce310147) MFA authentication (#9536) (Ingo Schommer)
* 2020-08-13 [fb5bec58a](https://github.com/silverstripe/silverstripe-framework/commit/fb5bec58a5285af8f490d9167016dfa9e55d6352) Drop broken syntax from Overview header in 4.6.1 changelog (Garion Herman)
* 2020-08-05 [9f94c739c](https://github.com/silverstripe/silverstripe-framework/commit/9f94c739c10cc1c6a423acb852794e69ac8fc879) Correct the example for getters/setters (Maxime Rainville)
* 2020-07-29 [4a45338c6](https://github.com/silverstripe/silverstripe-framework/commit/4a45338c6ae99ab59da38d4372f8961b1f8dd680) Per-project issue tracking shortcut (#9554) (Ingo Schommer)
* 2020-07-29 [d19cc1e99](https://github.com/silverstripe/silverstripe-framework/commit/d19cc1e99179db624d96342279fabdf1d99ac2e2) Tracking releases (Ingo Schommer)
* 2020-07-29 [b6169a87c](https://github.com/silverstripe/silverstripe-framework/commit/b6169a87c29af84e45422df252e972ddf8cdd37e) HTTP header in server requirements (Ingo Schommer)
* 2020-07-23 [5fb7ef0bc](https://github.com/silverstripe/silverstripe-framework/commit/5fb7ef0bcf5f155fae7e20561e13970032d432a6) Remove links to common problems (Aaron Carlino)
* 2020-07-21 [b96133651](https://github.com/silverstripe/silverstripe-framework/commit/b96133651b9dfb702464d722394b7cec5b751cbe) PHP 7.4 support (brynwhyman)
* 2020-07-21 [8f1167b45](https://github.com/silverstripe/silverstripe-framework/commit/8f1167b4539c97f34ec55e3634a0153bcbc44eb1) add a 4.6.0 known regression (#9603) (Serge Latyntsev)
* 2020-07-07 [ec58dad05](https://github.com/silverstripe/silverstripe-framework/commit/ec58dad051d8ac1c24bf68df29eb36cb68b8227b) add 3.7.4 changelog to `4` (brynwhyman)
* 2020-07-03 [92f4f1fa1](https://github.com/silverstripe/silverstripe-framework/commit/92f4f1fa15a1efe567dfe77b25aa09b64d9331c3) Update PHP support info (Patrick Nelson)
* 2020-07-01 [6446b50c4](https://github.com/silverstripe/silverstripe-framework/commit/6446b50c4a676eae6fe9209bea567eb82d0cba74) Add Cheddam to the core committers (Robbie Averill)
* 2020-06-30 [87c041b92](https://github.com/silverstripe/silverstripe-framework/commit/87c041b92d6848c16e9c046248c1f13a578281f5) Add extra information on how to customise a file HTTP response (Maxime Rainville)
* 2020-06-29 [993f1fd75](https://github.com/silverstripe/silverstripe-framework/commit/993f1fd75444f81756a5de2f31b90ab43e79f4db) Add details about the recommended community support options (Guy Marriott)
* 2020-06-03 [5fe5833fb](https://github.com/silverstripe/silverstripe-framework/commit/5fe5833fb2f5231b366cc3f461c27d4dc5b7c9e2) MFA authentication (Ingo Schommer)
* 2020-06-02 [a2bdd1ca8](https://github.com/silverstripe/silverstripe-framework/commit/a2bdd1ca82ce07b321b90c937702fb5edad31d6d) fix broken link in changelog (brynwhyman)
* 2020-05-28 [4303917ac](https://github.com/silverstripe/silverstripe-framework/commit/4303917ac55ae1a8272e268f392733ea33ab2919) Form::loadDataFrom constants in docblock (Christopher Darling)
* 2020-05-28 [44776a0e3](https://github.com/silverstripe/silverstripe-framework/commit/44776a0e3e713361537a90471c8cdc24e7cddba4) Add file status icons to change log (#9522) (Steve Boyd)
* 2020-05-27 [0f5c5d14c](https://github.com/silverstripe/silverstripe-framework/commit/0f5c5d14c2f327ec94c3400bbb05d716eeced883) Show beta changelogs on doc site (#9523) (Maxime Rainville)
* 2020-05-21 [e632ee3e5](https://github.com/silverstripe/silverstripe-framework/commit/e632ee3e5210abc11d4fda056987bb9b991a6c86) Update Partial Template Cache documentation (Serge Latyntcev)
* 2019-10-07 [4ee710276](https://github.com/silverstripe/silverstripe-framework/commit/4ee7102761bdb2e32f867de527ae4f305def7a45) Update breadcrumb template in theme rather than app. (Maxime Rainville)
* silverstripe/mimevalidator (2.0.0 -&gt; 2.1.0)
* 2020-06-29 [4782e8e](https://github.com/silverstripe/silverstripe-mimevalidator/commit/4782e8e0728a32ea7fa63f1400051c511987b72e) Detail that mimevalidator is now a part of core (#40) (Serge Latyntsev)
* 2020-05-11 [04a45a7](https://github.com/silverstripe/silverstripe-mimevalidator/commit/04a45a771a6bc23a4cfa1b5b27d0cfcd2cc11e37) Move configration info to core documentation (Maxime Rainville)
* silverstripe/login-forms (4.1.2 -&gt; 4.3.0)
* 2020-05-27 [273f70d](https://github.com/silverstripe/silverstripe-login-forms/commit/273f70df8526ab9b4fd9075e7df80d54caddfb96) Clean up login-forms README (Maxime Rainville)
### Other changes
* silverstripe/installer (4.6.1 -&gt; 4.7.0)
* 2020-06-16 [ffd0a85](https://github.com/silverstripe/silverstripe-installer/commit/ffd0a85bd35cbdbd093b686163699c4fe26b2018) Require frameworktest (Steve Boyd)
* 2020-01-13 [be7e4c8](https://github.com/silverstripe/silverstripe-installer/commit/be7e4c8730b0458087c99bf97f6938f6599dd135) Set environment type in example (Michael Andrewartha)
* silverstripe/assets (1.6.1 -&gt; 1.7.0)
* 2020-09-09 [6c17a60](https://github.com/silverstripe/silverstripe-assets/commit/6c17a60e2008f2c04d356237c3f0f831dfdc18de) BUGFIX handle files with no extension as if they are invalid (#346) (Andrew Aitken-Fincham)
* 2020-04-18 [6f1e559](https://github.com/silverstripe/silverstripe-assets/commit/6f1e5594319f92b74037c98d96bd82573fa6ef2b) Update debug message wording as moved files are not always thumbnails (Michal Kleiner)
* 2019-10-08 [a64296f](https://github.com/silverstripe/silverstripe-assets/commit/a64296fa1934893a3c37f8fa0f32f23eba835426) Do not display records with `hide_in_campaigns` config set to `true` in the `Used On` table of files (bergice)
* silverstripe/config (1.0.18 -&gt; 1.1.0)
* 2020-12-06 [c89d2c0](https://github.com/silverstripe/silverstripe-config/commit/c89d2c043fc02e406a6b8b7f8ecbb8d91daa485d) Use stable for topsort (Steve Boyd)
* 2020-04-25 [fc49324](https://github.com/silverstripe/silverstripe-config/commit/fc49324658d403ea11fb27bc8ed15a992ef1f9c2) Rename test file (Dan Hensby)
* 2017-12-10 [09eccb4](https://github.com/silverstripe/silverstripe-config/commit/09eccb44db1a68e02bba62c2dcce41c3c0ef8ddc) Feature Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* silverstripe/framework (4.6.2 -&gt; 4.7.0)
* 2020-11-26 [04f119ae3](https://github.com/silverstripe/silverstripe-framework/commit/04f119ae31588c016b97d4b8c9f86bc218a62f00) Revert translation updates (Steve Boyd)
* 2020-11-16 [25a78a5d2](https://github.com/silverstripe/silverstripe-framework/commit/25a78a5d2ba78d3b7980529ff44cda72bd4396a4) Manual tweak to changelog (Maxime Rainville)
* 2020-11-16 [95f544954](https://github.com/silverstripe/silverstripe-framework/commit/95f54495406dfb593429569537d0cee15800cba4) Changelog tweaks (Maxime Rainville)
* 2020-11-01 [51b4a76bd](https://github.com/silverstripe/silverstripe-framework/commit/51b4a76bd88b73ccdb9420914d5ee8e4b56e787a) Graphql doc fix (Aaron Carlino)
* 2020-10-19 [c1cda2b11](https://github.com/silverstripe/silverstripe-framework/commit/c1cda2b113ec8d139102a968d770ab963aa05ab8) WIP: Add new graphql 4 docs (#9652) (Aaron Carlino)
* 2020-10-02 [4d54a2110](https://github.com/silverstripe/silverstripe-framework/commit/4d54a2110f57ac1f311ffee07a5674a0170f9d82) Update spaces in syntax, single quotes, early returns where possible (Robbie Averill)
* 2020-09-26 [2042d1c6b](https://github.com/silverstripe/silverstripe-framework/commit/2042d1c6b03a88b2823990cf6bd2674d67de17ec) MINOR: Allow DevelopmentAdmin to have subclasses (#9702) (Aaron Carlino)
* 2020-09-25 [effe5c2e6](https://github.com/silverstripe/silverstripe-framework/commit/effe5c2e6fc2113a1f59b12d4e04bd19a1f40d0f) #9706: Updated doc for case-sensitive filter (#9710) (Dylan Grech)
* 2020-09-25 [ae1e17ede](https://github.com/silverstripe/silverstripe-framework/commit/ae1e17edeca1334bf0d6ad459a2111fa1b96a09e) Update exception assertions in tests and remove deprecated annotations (Robbie Averill)
* 2020-09-25 [4e22277c6](https://github.com/silverstripe/silverstripe-framework/commit/4e22277c6966483a94984e0b63da1a921790372d) Add namespacing to YAML example (RuthAdele)
* 2020-09-18 [86702f0ad](https://github.com/silverstripe/silverstripe-framework/commit/86702f0ad4fd367f822bc7abd443e5b3df8d8abf) Updated 00_Unit_Testing.md (#9699) (Michael Pritchard)
* 2020-09-14 [bd2f01755](https://github.com/silverstripe/silverstripe-framework/commit/bd2f0175572b5e8e3ac15d73901b2c36b684305c) Update 02_Pagination.md (RuthAdele)
* 2020-09-01 [ff04f9714](https://github.com/silverstripe/silverstripe-framework/commit/ff04f97149e2e3da6860757cf7395e6aca1567e8) Add return type (Guy Marriott)
* 2020-08-29 [af40eee3a](https://github.com/silverstripe/silverstripe-framework/commit/af40eee3ad965aa9c52ee90770a5e76fa298358d) TEST Add nightly (aka PHP 8) to build matrix (Sam Minnee)
* 2020-08-23 [efdd35948](https://github.com/silverstripe/silverstripe-framework/commit/efdd3594858e9892e370c87c4fe4b1f3d93f4f3d) Fixed spelling and changed to shorthand array (Dylan Grech)
* 2020-08-22 [a380cc744](https://github.com/silverstripe/silverstripe-framework/commit/a380cc74443b4f59ce268cef80b859cde9de9e93) Added exception for enumerated array (#9644) (Dylan Grech)
* 2020-08-20 [bffb7e257](https://github.com/silverstripe/silverstripe-framework/commit/bffb7e2577e66d97fd217e5b7cb9354062c74bda) Revert &amp;quot;DOCS MFA authentication&amp;quot; (Ingo Schommer)
* 2020-08-20 [72a02a3d0](https://github.com/silverstripe/silverstripe-framework/commit/72a02a3d0e784b87ea95bcf8d4795023d43cdc08) Update docs/en/02_Developer_Guides/09_Security/03_Authentication.md (Ingo Schommer)
* 2020-08-18 [00a60432f](https://github.com/silverstripe/silverstripe-framework/commit/00a60432f6f93c4fd9b22440a7324cc001a5aaf6) Backport fix to GroupedDropdownFieldTest (Steve Boyd)
* 2020-08-06 [26b8b7964](https://github.com/silverstripe/silverstripe-framework/commit/26b8b7964e18e264420b9f87d5fb392eb8821e8f) Rename DefaultEllipsis to defaultEllipsis (Maxime Rainville)
* 2020-07-29 [914c6fbe0](https://github.com/silverstripe/silverstripe-framework/commit/914c6fbe08927fb07c528751b211f1671bf0b498) Remove duplicate &amp;quot;see&amp;quot; word in docs (Robbie Averill)
* 2020-07-23 [f264ff861](https://github.com/silverstripe/silverstripe-framework/commit/f264ff861664c0095211eaace33fccdaf1f60b32) PATCH: improving @return values in docblocks (Nicolaas)
* 2020-07-23 [d292eb884](https://github.com/silverstripe/silverstripe-framework/commit/d292eb8840a8ee283c793e097a0ffa0a14cffdbc) PATCH: fix doctype return type hints: add null (Nicolaas)
* 2020-07-13 [d5893bf23](https://github.com/silverstripe/silverstripe-framework/commit/d5893bf23cf8cb7899316d2866e11eb55e0aa7a3) Update 01_File_Management.md (Damen Hansen)
* 2020-06-29 [b4a3cc700](https://github.com/silverstripe/silverstripe-framework/commit/b4a3cc700a97a36bec44b6b1e162a943c95925f7) Fixes getCMSFields TabSet example (James Cocker)
* 2020-06-29 [00ee8d8ab](https://github.com/silverstripe/silverstripe-framework/commit/00ee8d8abf4ca0535eee55bb722ccc9ea41e9fec) BUGFIX: Re-declare $items to be an ArrayList if it&amp;#039;s null (Tom Yrjas)
* 2020-06-29 [824b5e0b6](https://github.com/silverstripe/silverstripe-framework/commit/824b5e0b678669ca4144304d329e1cf9484175b5) BUGFIX: Ensure $items isn&amp;#039;t null in GridFieldDetailForm_ItemRequest-&amp;amp;gt;Breadcrumbs() prior to performing operations on it. (Tom Yrjas)
* 2020-06-29 [04872742e](https://github.com/silverstripe/silverstripe-framework/commit/04872742eb2ba057701421c51f7ea297204b4585) Update 02_HTTP_Cache_Headers.md (Sherry Shahbazi)
* 2020-06-29 [d7885adf3](https://github.com/silverstripe/silverstripe-framework/commit/d7885adf347f605e7f4f25bc79ecb1a5c28bb0ae) Update 09_Casting.md (mr-macedawg)
* 2020-06-18 [09dca5fa9](https://github.com/silverstripe/silverstripe-framework/commit/09dca5fa9eef8ed0f5721e555d4aa49d896c5991) Update deprecation notice to 5.0.0 (Andrew Aitken-Fincham)
* 2020-06-18 [34f660a31](https://github.com/silverstripe/silverstripe-framework/commit/34f660a3119e2309a545df40ef440df2141e4190) Update src/View/SSViewer_BasicIteratorSupport.php (Andrew Aitken-Fincham)
* 2020-06-17 [6813c0f7e](https://github.com/silverstripe/silverstripe-framework/commit/6813c0f7e89453c59b4c7d3926cec18d555df738) Added documentation regarding some cached ORM scenarios (Jackson Darlow)
* 2020-06-15 [7c95237e8](https://github.com/silverstripe/silverstripe-framework/commit/7c95237e8da29072b37ea6ca9452740263cc8688) update template docs, move deprecation to 5.0, capitalise Is (Andrew Aitken-Fincham)
* 2020-06-14 [dadac00c1](https://github.com/silverstripe/silverstripe-framework/commit/dadac00c1984416c00c4d5a9ec6f8cd0e0bdb561) Added array declaration to `GridFieldDetailForm_ItemRequest::$formActions` (Jackson Darlow)
* 2020-06-14 [1edd8fd75](https://github.com/silverstripe/silverstripe-framework/commit/1edd8fd7548e1e5ff30f12683fd39ed6b956e1cb) Added array declaration to `DevelopmentAdmin::$registered_controllers` (Jackson Darlow)
* 2020-06-14 [fcc7a9ce5](https://github.com/silverstripe/silverstripe-framework/commit/fcc7a9ce5b0436a5cf7996956332c8de4d2dc189) Added array declaration to `VersionProvider::$modules` (Jackson Darlow)
* 2020-06-12 [ae1a883b3](https://github.com/silverstripe/silverstripe-framework/commit/ae1a883b321c16fa565ebb691749de1c45479fd7) Added mention of Session.timeout to secure_coding docs (Jackson Darlow)
* 2020-06-12 [dfe8d23ff](https://github.com/silverstripe/silverstripe-framework/commit/dfe8d23ffc10b7b48633077dcb2e812fb0a03cf2) Added extra type-hints to DataExtension DocBlocks (Jackson Darlow)
* 2020-06-11 [bac826bc0](https://github.com/silverstripe/silverstripe-framework/commit/bac826bc06c826a89f56e3eb7e135b5b336e261a) deprecate First and Last in order to disambiguate for array lists (Andrew Aitken-Fincham)
* 2020-06-11 [2175de956](https://github.com/silverstripe/silverstripe-framework/commit/2175de9560ecfe441bf0d5b547e1f3bb49997b8d) Adjusted DataExtension DocBlocks to another degree of detail (Jackson Darlow)
* 2020-06-11 [0d6572a2d](https://github.com/silverstripe/silverstripe-framework/commit/0d6572a2d670ee416c5c18b0c03576b99d2955ad) Added DocBlocks to DataExtension methods (Jackson Darlow)
* 2020-06-11 [84235c651](https://github.com/silverstripe/silverstripe-framework/commit/84235c651837c3c4586328d6534a4db0af60dc3f) Adjusted missing definitions to only include definitions referenced by framework (Jackson Darlow)
* 2020-06-11 [dfc01457d](https://github.com/silverstripe/silverstripe-framework/commit/dfc01457d67c8a9f0e507b9623f443c725efa5fe) #3236 Added missing config definitions (private statics) (Jackson Darlow)
* 2020-06-07 [f72491f7f](https://github.com/silverstripe/silverstripe-framework/commit/f72491f7f4806998fb790dde5712633ef62b85f8) Linting fix (cpenny)
* 2020-06-02 [fa406c111](https://github.com/silverstripe/silverstripe-framework/commit/fa406c1115132c52d19e34f8ddd46274260722b9) Documentation correction (Alessandro Marotta)
* 2020-05-28 [d4165db69](https://github.com/silverstripe/silverstripe-framework/commit/d4165db690ddb3270478f7930efc33653b364baa) Update getter name to getCMSCompositeValidator (cpenny)
* 2020-05-27 [8ba65313e](https://github.com/silverstripe/silverstripe-framework/commit/8ba65313e9296ce53237808c6fa9c54734210cd7) Add internal note for protected method (cpenny)
* 2020-05-27 [2765b65f4](https://github.com/silverstripe/silverstripe-framework/commit/2765b65f42f6e7c4aeaa0183dbf399f41418bad2) Use ReflectionClass for CompositeValidator tests (cpenny)
* 2020-05-27 [bca4be77e](https://github.com/silverstripe/silverstripe-framework/commit/bca4be77ed68382b11c61e2e646c08f61c4e8a19) Update name to CompositeValidator. Add docblocks (cpenny)
* 2020-05-27 [dd9b8ecd1](https://github.com/silverstripe/silverstripe-framework/commit/dd9b8ecd1f72bd5ae6b26247fa07871de20083d0) Add a landing page for the beta changelogs (#9524) (Maxime Rainville)
* 2020-05-10 [f3d1e308e](https://github.com/silverstripe/silverstripe-framework/commit/f3d1e308e58ea227e4bafad7cbf3bb48be08f4e8) Update Member.php (Alessandro Marotta)
* 2020-02-19 [a2b57f080](https://github.com/silverstripe/silverstripe-framework/commit/a2b57f08016d63b9c173517cb69c33d3a7e4b983) Update DefaultFormFactory extension point. Use array for validators (cpenny)
* 2020-02-18 [11e2005b9](https://github.com/silverstripe/silverstripe-framework/commit/11e2005b9ba30457b937c566e1c2cabba0112257) Add deprecation notice for 4.6 and update docs (cpenny)
* 2020-02-16 [f977f9734](https://github.com/silverstripe/silverstripe-framework/commit/f977f9734cccd4866d525b7f82cf1f05c0f7e682) Add base updateValidatorList method to DataExtension (cpenny)
* 2020-02-13 [b45a3561d](https://github.com/silverstripe/silverstripe-framework/commit/b45a3561df4c01003ffa784dc7de9a35ea96bcd6) Implemented PR feedback. Added some initial test cov (cpenny)
* 2020-02-12 [d7dd93f7a](https://github.com/silverstripe/silverstripe-framework/commit/d7dd93f7a7c4835393aa94563c3fa4e63fca25b9) Standardise getCMSValidator for DataObjects/Forms (cpenny)
* 2019-11-26 [83d495df2](https://github.com/silverstripe/silverstripe-framework/commit/83d495df2e672e5d4388da3dd1ce9047df51036b) Add check for existence of &amp;#039;which&amp;#039; command before proceeding with the script (Tim Burt)
* silverstripe/mimevalidator (2.0.0 -&gt; 2.1.0)
* 2020-11-26 [e99a72a](https://github.com/silverstripe/silverstripe-mimevalidator/commit/e99a72a5273e0bc5e0929b0c382122585ef16957) Revert translation updates (Steve Boyd)
* 2020-05-19 [1f0a07c](https://github.com/silverstripe/silverstripe-mimevalidator/commit/1f0a07caf254fba6f247629817de6395dedf943d) Force installation of specific recipe version (Maxime Rainville)
* 2018-06-15 [bbebebf](https://github.com/silverstripe/silverstripe-mimevalidator/commit/bbebebf49543152301477241ac68bbcc11d19d3b) Add supported module badge to readme (Dylan Wagstaff)
* 2018-06-12 [427757f](https://github.com/silverstripe/silverstripe-mimevalidator/commit/427757f0fccf2315084128648ffdbe88a17ac04e) Remove obsolete branch alias (Robbie Averill)
* silverstripe/admin (1.6.1 -&gt; 1.7.0)
* 2020-11-26 [9238a04](https://github.com/silverstripe/silverstripe-admin/commit/9238a0410ab4e4d13e7d72f77822f15edad38ff3) Revert translation updates (Steve Boyd)
* 2020-10-09 [668c010](https://github.com/silverstripe/silverstripe-admin/commit/668c010bb806ab343bc3ee423f907c8a4c250dc5) Update react from 16.11 &amp;amp;gt; 16.13 (André Kiste)
* 2020-08-30 [83279de](https://github.com/silverstripe/silverstripe-admin/commit/83279deca4c4ff38fa966b909b0e471aff194854) Add tests for UsedOnTable (#957) (Andre Kiste)
* 2020-07-16 [5cf9fff](https://github.com/silverstripe/silverstripe-admin/commit/5cf9fffdf614faf19a5b82bf3813070ba3f58e24) Add BC support for getCMSValidator (cpenny)
* 2020-05-28 [3124677](https://github.com/silverstripe/silverstripe-admin/commit/3124677af2c84500f2c2c45b390d25a1002adc25) Method renamed to getCMSCompositeValidator (cpenny)
* 2020-05-27 [b7c63d4](https://github.com/silverstripe/silverstripe-admin/commit/b7c63d48a1456fe0cbd7c6357ef24af7b2aca12e) Rename ValidatorList to CompositeValidator (cpenny)
* 2020-02-18 [aa29a44](https://github.com/silverstripe/silverstripe-admin/commit/aa29a44159d409e831be23150229ae46378dd33f) Replace getCMSValidator usages with new framework method getValidatorList (cpenny)
* silverstripe/asset-admin (1.6.1 -&gt; 1.7.0)
* 2020-11-26 [f382b631](https://github.com/silverstripe/silverstripe-asset-admin/commit/f382b631fdc349926bd1f99d2aac5cff73f3795b) Revert translation update (Steve Boyd)
* 2020-11-10 [7b820368](https://github.com/silverstripe/silverstripe-asset-admin/commit/7b820368722f1593c4b493175550bce82e2637d4) Remove debug code (Maxime Rainville)
* silverstripe/versioned-admin (1.6.0 -&gt; 1.7.0)
* 2020-12-09 [f25ab25](https://github.com/silverstripe/silverstripe-versioned-admin/commit/f25ab25e0fbe448ed045f14f86e52a89cf37a725) Revert translation updates (Steve Boyd)
* 2020-10-01 [48a3706](https://github.com/silverstripe/silverstripe-versioned-admin/commit/48a37068727b3e026c4d9b3acbb1148b5a6029ce) Quote unquoted strings in behat.yml (Guy Marriott)
* 2020-09-24 [ac1095e](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ac1095e7fdb4a2efab9ad2406177b9cdce68fa65) Language files updated. (Mojmir Fendek)
* 2020-09-24 [ba7424b](https://github.com/silverstripe/silverstripe-versioned-admin/commit/ba7424bee487ca35f1e7af52b602fa5144fa71e7) Confirmation message localisation. (Mojmir Fendek)
* 2020-08-20 [68e6821](https://github.com/silverstripe/silverstripe-versioned-admin/commit/68e6821a65ba0975a48a8d4998a8ad607c058856) Show the type of save that was performed for the record instead of just showing either Saved/Published. (#160) (Andre Kiste)
* silverstripe/cms (4.6.0 -&gt; 4.7.0)
* 2020-11-25 [bb260dab](https://github.com/silverstripe/silverstripe-cms/commit/bb260dab841698c07924b950e357dfdc46e66f19) Revert translation changes (Steve Boyd)
* 2020-09-24 [3bf25681](https://github.com/silverstripe/silverstripe-cms/commit/3bf25681be6ec3763af2c06a001fc99a6bef38b8) Add docs to $enforce_strict_hierarchy (bergice)
* 2020-08-10 [a591776e](https://github.com/silverstripe/silverstripe-cms/commit/a591776e06e37ca5ae01eed25370ea30a01c2d09) Read from `ALL_VERSIONS` when looking up page history (bergice)
* 2020-07-08 [bbb69cfb](https://github.com/silverstripe/silverstripe-cms/commit/bbb69cfb5a759254a1f06ab89fcaf1803adec535) PATCH: fixing behat wording (Nicolaas Thiemen)
* 2020-07-07 [6f4b1bfb](https://github.com/silverstripe/silverstripe-cms/commit/6f4b1bfbd78e89e3bd1ec2040583c9d0baf2f384) Update en.yml (Nicolaas)
* 2020-07-07 [b7992629](https://github.com/silverstripe/silverstripe-cms/commit/b7992629766c962531243278a1f40f6c440b1165) PATCH: better english (Nicolaas)
* 2020-07-07 [cc2c9682](https://github.com/silverstripe/silverstripe-cms/commit/cc2c968271f3232572ed21253797378275b7a26d) Bump versions (bergice)
* 2020-07-06 [d07d2ba4](https://github.com/silverstripe/silverstripe-cms/commit/d07d2ba4af543e39ec89639834e6eb6bd3d4bf96) Revert debugging stuff (Andre Kiste)
* 2020-07-03 [0a58bda7](https://github.com/silverstripe/silverstripe-cms/commit/0a58bda7dd20aa871781908aaa384b9392b9e609) Show the type of save that was performed for the record instead of just showing either Saved/Published. (bergice)
* 2020-06-17 [926571a2](https://github.com/silverstripe/silverstripe-cms/commit/926571a2bfd56045ad6fc58bff8e7b7280927fd9) https://github.com/silverstripe/silverstripe-cms/issues/2557 - remove FQN if lang != EN on SiteType dropdown in page-settings (Lukas Erni)
* silverstripe/graphql (3.3.0 -&gt; 3.4.0)
* 2020-06-06 [7571abe](https://github.com/silverstripe/silverstripe-graphql/commit/7571abe6d5e69fffb0650a6efd1291c610c333b9) Make silverstripe-graphql independent of the presence of Versioned module (Alessandro Marotta)
* silverstripe/versioned (1.6.2 -&gt; 1.7.0)
* 2020-11-26 [bdc013b](https://github.com/silverstripe/silverstripe-versioned/commit/bdc013b3524e25459e8809bfc7bfdba65c9b2dc9) Revert translation updates (Steve Boyd)
* 2020-09-25 [739caba](https://github.com/silverstripe/silverstripe-versioned/commit/739cabae17f1016f2af26183ad32f1522da473c9) Switch Exception to RuntimeException (Robbie Averill)
* silverstripe/login-forms (4.1.2 -&gt; 4.3.0)
* 2020-08-17 [3b362c9](https://github.com/silverstripe/silverstripe-login-forms/commit/3b362c9340225890ad5dbdeb29ae00b44c8aea1f) Update translations (Garion Herman)
* 2020-07-13 [8bb8f5e](https://github.com/silverstripe/silverstripe-login-forms/commit/8bb8f5e8f76fcc86b2e70f8cf906df2ffe1ebb49) Minor template fixes (3Dgoo)
* 2020-06-16 [ee9af65](https://github.com/silverstripe/silverstripe-login-forms/commit/ee9af65f1269b3788299fb2e1eefe766a400ee77) Update translations (Maxime Rainville)
* 2020-06-15 [8477674](https://github.com/silverstripe/silverstripe-login-forms/commit/84776747517a98db0962f745c654f69198dd27e2) Update for 4.2 (#59) (Steve Boyd)
* 2019-11-26 [46b7451](https://github.com/silverstripe/silverstripe-login-forms/commit/46b74513fc0b33f53036b332253d5a6689089b8c) Removed redundent CSS (James Cocker)
* 2019-11-22 [dd3ed10](https://github.com/silverstripe/silverstripe-login-forms/commit/dd3ed107730bf1caae899e3d32c2dc473919b99d) Resolve SVG IE11 logo scaling issue (James Cocker)
* 2019-11-22 [42c37b0](https://github.com/silverstripe/silverstripe-login-forms/commit/42c37b013987bbb08f6f6726889c588e31068d9f) Brand logo CSS improvements (James Cocker)
<!--- Changes above this line will be automatically regenerated -->