From b17adf02ff9280c0f0cfa43bb7c633ae5cc40d16 Mon Sep 17 00:00:00 2001 From: James Griffin Date: Mon, 24 Aug 2026 22:46:11 -0300 Subject: [PATCH] Pin the Composer platform to PHP 8.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit composer.json declares "php": ">=8.1", but resolution ran against whatever PHP the machine doing the update happened to have. Running composer update on 8.5 could therefore produce a lock containing a package that requires 8.2 or newer, which installs fine locally and fails on the 8.1 leg of the test matrix — a lock that is only discovered to be wrong in CI. config.platform.php makes resolution always target the declared minimum, so a lock that resolves at all is a lock that installs everywhere the plugin claims to run. No package versions change: nothing currently locked requires a PHP newer than 8.1, so this only records platform-overrides and the new content hash. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01D9acV1mHktGAb1uyvNmrR2 --- composer.json | 3 +++ composer.lock | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index ee8851e..fc0735b 100644 --- a/composer.json +++ b/composer.json @@ -36,6 +36,9 @@ "build": "bash bin/build-zip.sh" }, "config": { + "platform": { + "php": "8.1" + }, "allow-plugins": { "dealerdirect/phpcodesniffer-composer-installer": true } diff --git a/composer.lock b/composer.lock index 6ca153a..5711059 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "847e27b3669444ab5ee66b2e07cd7b3e", + "content-hash": "24094d05e029ee5534769a89f1dbad12", "packages": [ { "name": "stripe/stripe-php", @@ -2593,5 +2593,8 @@ "php": ">=8.1" }, "platform-dev": {}, + "platform-overrides": { + "php": "8.1" + }, "plugin-api-version": "2.9.0" }