From 1f6d897715b36c7890ff3f35dc92c8efd25cf016 Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Tue, 24 Feb 2026 15:36:29 -0600 Subject: [PATCH 1/3] fix: add broken external links to netlify checklinks todoPatterns The Docker dockerfile-release-notes link has a fragment redirect issue and jeffgeerling.com returns 301 instead of 302. Both are external sites we can't control, so mark them as known TODOs. --- netlify.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netlify.toml b/netlify.toml index e8a287ef..0f831e84 100644 --- a/netlify.toml +++ b/netlify.toml @@ -10,7 +10,7 @@ [[context.deploy-preview.plugins]] package = "netlify-plugin-checklinks" [context.deploy-preview.plugins.inputs] - todoPatterns = [ "load", "CHANGELOG.html", "/v/", "x.com", "twitter.com", "www.php.net", "hub.docker.com" ] + todoPatterns = [ "load", "CHANGELOG.html", "/v/", "x.com", "twitter.com", "www.php.net", "hub.docker.com", "dockerfile-release-notes", "jeffgeerling.com" ] skipPatterns = [ ".rss", ".gif", ".jpg" ] checkExternal = true From 1d797acd4e0ce5275196f0bc55725ccd61a4461f Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Tue, 24 Feb 2026 15:37:38 -0600 Subject: [PATCH 2/3] Revert "fix: add broken external links to netlify checklinks todoPatterns" This reverts commit 7c58f0993991bae8916e60024712f5ee848897a3. --- netlify.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netlify.toml b/netlify.toml index 0f831e84..e8a287ef 100644 --- a/netlify.toml +++ b/netlify.toml @@ -10,7 +10,7 @@ [[context.deploy-preview.plugins]] package = "netlify-plugin-checklinks" [context.deploy-preview.plugins.inputs] - todoPatterns = [ "load", "CHANGELOG.html", "/v/", "x.com", "twitter.com", "www.php.net", "hub.docker.com", "dockerfile-release-notes", "jeffgeerling.com" ] + todoPatterns = [ "load", "CHANGELOG.html", "/v/", "x.com", "twitter.com", "www.php.net", "hub.docker.com" ] skipPatterns = [ ".rss", ".gif", ".jpg" ] checkExternal = true From 92cad259d0c2a5e131705fb03f12d3d1b190ac9f Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Wed, 25 Feb 2026 00:31:32 -0600 Subject: [PATCH 3/3] fix: remove legacy prestissimo cleanup causing composer crash The hirak/prestissimo removal in install-composer.sh checked for a global composer.json at /var/www/.composer/ (www-data's dir) but ran `composer global remove` as root, which targets /root/.config/composer. Since commit 01586fb moved composer installation to build_as_root_internal, this script now runs as root, causing a path mismatch and crash when /var/www/.composer/composer.json exists from a previous build. Prestissimo was a Composer 1 parallel-download plugin that Composer 2 made obsolete. The cleanup code is no longer needed. --- CHANGELOG.md | 1 + scripts/install-composer.sh | 8 -------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 355e6034..eb52e39b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ ## {{ UNRELEASED_VERSION }} - [{{ UNRELEASED_DATE }}]({{ UNRELEASED_LINK }}) +* Fixed composer install crash caused by legacy prestissimo removal running as wrong user * Improved composer install script to default to latest stable * Fixed `mysqldump` warning for unknown option on MariaDB 11.4/11.8 [#237](https://github.com/lando/php/issues/237) * Updated to [@lando/nginx@1.6.0](https://github.com/lando/nginx/releases/tag/v1.6.0) diff --git a/scripts/install-composer.sh b/scripts/install-composer.sh index 78854aff..4ddf619d 100755 --- a/scripts/install-composer.sh +++ b/scripts/install-composer.sh @@ -32,11 +32,3 @@ fi # Remove the setup script php -r "unlink('/tmp/composer-setup.php');" - -# Check if anything is installed globally -if [ -f /var/www/.composer/composer.json ]; then - # If this is version 2 then let's make sure hirak/prestissimo is removed - if composer --version 2>/dev/null | grep -E "Composer (version )?2." > /dev/null; then - composer global remove hirak/prestissimo - fi -fi