Running SilverStripe 3.7 on PHP 7.4

SilverStripe's standard test tools require phpunit/phpunit-mock-objects to run. This package has been deprecated and doesn't support PHP 7.4.

SilverStripe is using a fork for its own PHP 7.3 unit tests: sminnee/phpunit-mock-objects.

You can use this fork for your own project by running this command:

composer require --dev sminnee/phpunit-mock-objects:^3.4.7

This fork is not a supported module and SilverStripe does not commit to maintaining it.

Change Log


  • 2019-09-16 a86093fee Session fixation in "change password" form (Serge Latyntcev) - See cve-2019-12203
  • 2019-01-10 c44f06cdf Patch SQL Injection vulnerability when arrays are assigned to DataObject Fields (Aaron Carlino) - See ss-2018-021

Features and Enhancements

  • 2019-03-13 0bf03a3e7 Add PHP 7.4’s daily snapshot to the travis suite. (Sam Minnee)


  • 2019-08-26 7d901a6d9 Member argument is now passed to LeftAndMain::alternateAccessCheck() (Robbie Averill)
  • 2019-07-12 b250e14ac Require PHP7.4 compatible fork of phpunit-mock-objects (Maxime Rainville)
  • 2019-04-15 ad3c58f2d Back-port https://github.com/silverstripe/silverstripe-admin/pull/769 to 3.7, fix parsererror issue (Damian Mooyman)
  • 2019-02-26 bd9296941 Use a function common to MySQL, SQLite and PostgreSQL to test dynamic DBFIeld assigment (Maxime Rainville)
  • 2019-02-25 adbc560bd Address PR feedback. (Maxime Rainville)
  • 2019-02-21 4ec1a682c Renable the ability to do dynamic assignment with DBField (Maxime Rainville)
  • 2019-02-19 ab5f09a9f Updated unit test were targeting Float/Int which don't exist on PHP7 (#8810) (Maxime Rainville)