From 2d1672582430149016bacc5f13743ad9acc0b4e6 Mon Sep 17 00:00:00 2001 From: William Jacoby Date: Thu, 5 Nov 2026 09:14:05 -0600 Subject: [PATCH 1/2] chore: composer.json baseline for phpBB 3.3.19 and PHP 8.3.36 Sets require.php to >=8.3.36 and composer/installers to ^1.0 || ^2.0, removes phpbb/phpbb from require (it belongs only in extra.soft-require, where Composer ignores it), and sets soft-require to phpBB 3.3.19 with the upper bound ext.php enforces. Made with phpbb-release-tools normalize-composer.py. Co-Authored-By: Claude Opus 5.5 --- composer.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 10496a7..4e2f230 100644 --- a/composer.json +++ b/composer.json @@ -33,8 +33,7 @@ ], "require": { "php": ">=8.3.36", - "phpbb/phpbb": ">=3.3.19 <4.1.0", - "composer/installers": "~2.0" + "composer/installers": "^1.0 || ^2.0" }, "extra": { "display-name": "Knowledge Base", From 60f8ed4f17042905ab416dd8585215bcee6fb34f Mon Sep 17 00:00:00 2001 From: William Jacoby Date: Thu, 5 Nov 2026 10:49:32 -0600 Subject: [PATCH 2/2] Test that phpBB is only a soft requirement kb_declared_support_test checked that composer.json listed phpbb/phpbb under require with the same bounds as soft-require. With phpBB now only in extra.soft-require, it checks that require has no phpbb/phpbb and that soft-require still states ext.php's minimum and the <4.1.0@dev cap. Co-Authored-By: Claude Opus 5.5 --- tests/kb_declared_support_test.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/kb_declared_support_test.php b/tests/kb_declared_support_test.php index eb3150d..e2ad419 100644 --- a/tests/kb_declared_support_test.php +++ b/tests/kb_declared_support_test.php @@ -86,16 +86,16 @@ public function test_the_ci_matrix_starts_at_the_declared_minimum() $this->assertContains($primary[1], $versions); } - public function test_the_phpbb_requirement_and_soft_requirement_agree_and_state_the_same_minimum_as_ext_php() + public function test_phpbb_is_only_a_soft_requirement_stating_the_same_minimum_as_ext_php() { $composer = $this->composer(); - $hard = $composer['require']['phpbb/phpbb']; $soft = $composer['extra']['soft-require']['phpbb/phpbb']; - $this->assertSame('>=' . ext::MIN_PHPBB_VERSION, explode(' ', $hard)[0]); + // phpBB belongs only in extra.soft-require, which Composer ignores; under require, Composer would + // try to resolve phpBB itself. + $this->assertArrayNotHasKey('phpbb/phpbb', $composer['require']); $this->assertSame('>=' . ext::MIN_PHPBB_VERSION, explode(',', $soft)[0]); - // Both caps allow phpBB 3.3.x and 4.0.x and stop at the same bound, so one cannot be changed without the other. - $this->assertSame('<4.1.0', explode(' ', $hard)[1]); + // The cap allows phpBB 3.3.x and 4.0.x. $this->assertSame('<4.1.0@dev', explode(',', $soft)[1]); }