From ef1f75bf2e157beda6a40847160502176c4d38e7 Mon Sep 17 00:00:00 2001 From: Jason Irish Date: Tue, 18 Nov 2025 11:49:37 -0600 Subject: [PATCH 1/3] Upgrade to SilverStripe 6 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update PHP requirement to ^8.1 - Update silverstripe/recipe-core to ^6 - Update country-dropdown-field to ^3 (SS6 compatible) - Fix Extension namespace (ORM\DataExtension → Core\Extension) - Remove parent::onBeforeWrite() call - Change onBeforeWrite() to protected visibility - Set branch-alias to 4.0.x-dev --- composer.json | 7 ++++--- src/AddressDataExtension.php | 7 +++---- src/DistanceDataExtension.php | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/composer.json b/composer.json index d89cf1b..71274d3 100644 --- a/composer.json +++ b/composer.json @@ -16,12 +16,13 @@ } ], "require": { - "dynamic/silverstripe-country-dropdown-field": "^2", + "php": "^8.1", + "dynamic/silverstripe-country-dropdown-field": "^3", "geocoder-php/google-maps-provider": "^4.7", "guzzlehttp/guzzle": "^7.4", "php-http/guzzle7-adapter": "^1.0", "php-http/message": "^1.13", - "silverstripe/recipe-core": "^5.0" + "silverstripe/recipe-core": "^6" }, "require-dev": { "silverstripe/recipe-testing": "^3" @@ -51,7 +52,7 @@ ], "extra": { "branch-alias": { - "dev-master": "3.x-dev" + "dev-master": "4.0.x-dev" } }, "scripts": { diff --git a/src/AddressDataExtension.php b/src/AddressDataExtension.php index b439444..98d3533 100644 --- a/src/AddressDataExtension.php +++ b/src/AddressDataExtension.php @@ -13,7 +13,7 @@ use SilverStripe\Forms\LiteralField; use SilverStripe\Forms\ReadonlyField; use SilverStripe\Forms\TextField; -use SilverStripe\ORM\DataExtension; +use SilverStripe\Core\Extension; use SilverStripe\View\SSViewer; use SilverStripe\View\ThemeResourceLoader; @@ -31,7 +31,7 @@ * @property float $Lat * @property float $Lng */ -class AddressDataExtension extends DataExtension +class AddressDataExtension extends Extension { /** * @var array @@ -326,9 +326,8 @@ public function isAddressChanged($level = 1) /** * */ - public function onBeforeWrite() + protected function onBeforeWrite() { - parent::onBeforeWrite(); if ($this->hasAddress() && !$this->owner->config()->get('disable_geocoding') && Config::inst()->get(GoogleGeocoder::class, 'geocoder_api_key')) { if (!$this->isAddressChanged()) { diff --git a/src/DistanceDataExtension.php b/src/DistanceDataExtension.php index 5484ae0..1169d66 100644 --- a/src/DistanceDataExtension.php +++ b/src/DistanceDataExtension.php @@ -3,7 +3,7 @@ namespace Dynamic\SilverStripeGeocoder; use SilverStripe\Core\Config\Config; -use SilverStripe\ORM\DataExtension; +use SilverStripe\Core\Extension; use SilverStripe\ORM\Queries\SQLSelect; use SilverStripe\ORM\DataQuery; use SilverStripe\Control\Controller; @@ -13,7 +13,7 @@ * * @property DistanceDataExtension $owner */ -class DistanceDataExtension extends DataExtension +class DistanceDataExtension extends Extension { /** * @param SQLSelect $query From db24cf26010bf38b7cbacac10dbff118a4d460e8 Mon Sep 17 00:00:00 2001 From: Jason Irish Date: Tue, 18 Nov 2025 13:09:26 -0600 Subject: [PATCH 2/3] Address Copilot review and fix dependencies - Remove incorrect @property annotation for $owner - Add explicit nullable type hint to augmentSQL() parameter - Update country-dropdown-field to ^3 (SS6 compatible) - Update recipe-testing to ^4 for SS6 - Fixes PHP 8.1 deprecation warning --- composer.json | 2 +- src/DistanceDataExtension.php | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/composer.json b/composer.json index 71274d3..1c54502 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,7 @@ "silverstripe/recipe-core": "^6" }, "require-dev": { - "silverstripe/recipe-testing": "^3" + "silverstripe/recipe-testing": "^4" }, "minimum-stability": "dev", "prefer-stable": true, diff --git a/src/DistanceDataExtension.php b/src/DistanceDataExtension.php index 1169d66..e1388cf 100644 --- a/src/DistanceDataExtension.php +++ b/src/DistanceDataExtension.php @@ -10,8 +10,6 @@ /** * Class \Dynamic\SilverStripeGeocoder\DistanceDataExtension - * - * @property DistanceDataExtension $owner */ class DistanceDataExtension extends Extension { @@ -19,7 +17,7 @@ class DistanceDataExtension extends Extension * @param SQLSelect $query * @param DataQuery|null $dataQuery */ - public function augmentSQL(SQLSelect $query, DataQuery $dataQuery = null) + public function augmentSQL(SQLSelect $query, ?DataQuery $dataQuery = null) { $addressVar = Config::inst()->get(DistanceDataExtension::class, 'address_var'); $unitVar = Config::inst()->get(DistanceDataExtension::class, 'unit_var'); From 0f7286fe889066df7628b65d017671cac64c5e7b Mon Sep 17 00:00:00 2001 From: Jason Irish Date: Tue, 18 Nov 2025 19:04:21 -0600 Subject: [PATCH 3/3] Remove branch-alias --- composer.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/composer.json b/composer.json index 1c54502..6ad45c6 100644 --- a/composer.json +++ b/composer.json @@ -50,11 +50,6 @@ "url": "https://github.com/sponsors/dynamic" } ], - "extra": { - "branch-alias": { - "dev-master": "4.0.x-dev" - } - }, "scripts": { "lint": "vendor/bin/phpcs src/ tests/", "lint-clean": "vendor/bin/phpcbf src/ tests/"