From 8b574c81c74529df6b8e04a68d954e5db2b2d8a3 Mon Sep 17 00:00:00 2001 From: Guy Sartorelli Date: Fri, 10 Mar 2023 12:21:27 +1300 Subject: [PATCH 1/5] MNT Update development dependencies --- composer.json | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/composer.json b/composer.json index 278ea854..29afb6f2 100644 --- a/composer.json +++ b/composer.json @@ -19,13 +19,13 @@ } ], "require": { - "silverstripe/admin": "^1.12@dev", - "silverstripe/campaign-admin": "^1.7@dev", - "silverstripe/framework": "^4.11", - "silverstripe/reports": "^4.7@dev", - "silverstripe/siteconfig": "^4.7@dev", - "silverstripe/versioned": "^1.7@dev", - "silverstripe/versioned-admin": "^1.7@dev", + "silverstripe/admin": "1.13.x-dev", + "silverstripe/campaign-admin": "1.13.x-dev", + "silverstripe/framework": "4.13.x-dev", + "silverstripe/reports": "4.13.x-dev", + "silverstripe/siteconfig": "4.13.x-dev", + "silverstripe/versioned": "1.13.x-dev", + "silverstripe/versioned-admin": "1.13.x-dev", "silverstripe/vendor-plugin": "^1.0", "php": "^7.4 || ^8.0" }, @@ -45,11 +45,14 @@ }, "autoload": { "psr-4": { - "SilverStripe\\CMS\\": ["code/", "_legacy/"], + "SilverStripe\\CMS\\": [ + "code/", + "_legacy/" + ], "SilverStripe\\CMS\\Tests\\": "code/php/", "SilverStripe\\CMS\\Tests\\Behaviour\\": "tests/behat/src/" } }, "prefer-stable": true, "minimum-stability": "dev" -} +} \ No newline at end of file From e607d78035c1aa0cb9181e9ee64236f1c74ab45f Mon Sep 17 00:00:00 2001 From: Guy Sartorelli Date: Fri, 10 Mar 2023 16:30:36 +1300 Subject: [PATCH 2/5] MNT Update release dependencies --- composer.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/composer.json b/composer.json index 29afb6f2..6d79ccb1 100644 --- a/composer.json +++ b/composer.json @@ -19,13 +19,13 @@ } ], "require": { - "silverstripe/admin": "1.13.x-dev", - "silverstripe/campaign-admin": "1.13.x-dev", - "silverstripe/framework": "4.13.x-dev", - "silverstripe/reports": "4.13.x-dev", - "silverstripe/siteconfig": "4.13.x-dev", - "silverstripe/versioned": "1.13.x-dev", - "silverstripe/versioned-admin": "1.13.x-dev", + "silverstripe/admin": "1.13.0-beta1", + "silverstripe/campaign-admin": "1.13.0-beta1", + "silverstripe/framework": "4.13.0-beta1", + "silverstripe/reports": "4.13.0-beta1", + "silverstripe/siteconfig": "4.13.0-beta1", + "silverstripe/versioned": "1.13.0-beta1", + "silverstripe/versioned-admin": "1.13.0-beta1", "silverstripe/vendor-plugin": "^1.0", "php": "^7.4 || ^8.0" }, From 7cf402dace0526b86f1e547a57d405e958f63a2f Mon Sep 17 00:00:00 2001 From: Guy Sartorelli Date: Fri, 10 Mar 2023 16:30:40 +1300 Subject: [PATCH 3/5] MNT Update development dependencies --- composer.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/composer.json b/composer.json index 6d79ccb1..29afb6f2 100644 --- a/composer.json +++ b/composer.json @@ -19,13 +19,13 @@ } ], "require": { - "silverstripe/admin": "1.13.0-beta1", - "silverstripe/campaign-admin": "1.13.0-beta1", - "silverstripe/framework": "4.13.0-beta1", - "silverstripe/reports": "4.13.0-beta1", - "silverstripe/siteconfig": "4.13.0-beta1", - "silverstripe/versioned": "1.13.0-beta1", - "silverstripe/versioned-admin": "1.13.0-beta1", + "silverstripe/admin": "1.13.x-dev", + "silverstripe/campaign-admin": "1.13.x-dev", + "silverstripe/framework": "4.13.x-dev", + "silverstripe/reports": "4.13.x-dev", + "silverstripe/siteconfig": "4.13.x-dev", + "silverstripe/versioned": "1.13.x-dev", + "silverstripe/versioned-admin": "1.13.x-dev", "silverstripe/vendor-plugin": "^1.0", "php": "^7.4 || ^8.0" }, From 79dfc75192d130464abd9db56158d858420f60da Mon Sep 17 00:00:00 2001 From: Guy Sartorelli Date: Tue, 28 Mar 2023 14:19:49 +1300 Subject: [PATCH 4/5] MNT Revert erroneous dependency changes --- composer.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/composer.json b/composer.json index 29afb6f2..c18a7a9e 100644 --- a/composer.json +++ b/composer.json @@ -19,13 +19,13 @@ } ], "require": { - "silverstripe/admin": "1.13.x-dev", - "silverstripe/campaign-admin": "1.13.x-dev", - "silverstripe/framework": "4.13.x-dev", - "silverstripe/reports": "4.13.x-dev", - "silverstripe/siteconfig": "4.13.x-dev", - "silverstripe/versioned": "1.13.x-dev", - "silverstripe/versioned-admin": "1.13.x-dev", + "silverstripe/admin": "^1.12@dev", + "silverstripe/campaign-admin": "^1.7@dev", + "silverstripe/framework": "^4.11", + "silverstripe/reports": "^4.7@dev", + "silverstripe/siteconfig": "^4.7@dev", + "silverstripe/versioned": "^1.7@dev", + "silverstripe/versioned-admin": "^1.7@dev", "silverstripe/vendor-plugin": "^1.0", "php": "^7.4 || ^8.0" }, From e20036482b4c3e620d91018551b4745db14f2334 Mon Sep 17 00:00:00 2001 From: Dylan Wagstaff Date: Tue, 28 Mar 2023 16:34:11 +1300 Subject: [PATCH 5/5] FIX undefined index error in CMS With the CMS 4.12 update functionality was altered to utilise an Extension to obtain the CMS Edit link for a page, rather than having SiteTree do it internally. Unfortunately the default return case for `extend` (see Extensible) is an _empty_ array. This leave code potentially referencing an array offset that doesn't exist ([0]). PHP 8 is less forgiving that it's predecessors on this kind of behaviour. We should check that the responses from extensions exist before trying to reference them. --- code/Model/SiteTree.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/code/Model/SiteTree.php b/code/Model/SiteTree.php index 5899d5a9..feaa82c1 100755 --- a/code/Model/SiteTree.php +++ b/code/Model/SiteTree.php @@ -739,13 +739,15 @@ class SiteTree extends DataObject implements PermissionProvider, i18nEntityProvi /** * Generates a link to edit this page in the CMS. * + * Implemented here to satisfy the CMSPreviewable interface, but data is intended to be loaded via Extension + * + * @see SilverStripe\Admin\CMSEditLinkExtension + * * @return string */ public function CMSEditLink() { - // This method has to be implemented here to satisfy the CMSPreviewable interface. - // See the actual implementation in CMSEditLinkExtension. - return $this->extend('CMSEditLink')[0]; + return $this->extend('CMSEditLink')[0] ?? ''; } /**