From 747a28f0f10857e3b634c5768c2c755328d508e8 Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Thu, 15 Jan 2026 15:36:24 +0100 Subject: [PATCH 01/11] fix: MCD-610: Update deprecated GitHub Actions syntax - Update actions/cache from v2.1.5 to v4 - Replace deprecated set-output with $GITHUB_OUTPUT Co-Authored-By: Claude Opus 4.5 --- .github/workflows/test-drupal-setup.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-drupal-setup.yml b/.github/workflows/test-drupal-setup.yml index 23eca517d..5455fecec 100644 --- a/.github/workflows/test-drupal-setup.yml +++ b/.github/workflows/test-drupal-setup.yml @@ -15,13 +15,14 @@ jobs: steps: - uses: actions/checkout@v3 - name: Setup PHP - run: | - sudo update-alternatives --set php /usr/bin/php8.1 + uses: drunomics/setup-php@v2 + with: + php-version: '8.1' - name: "Determine composer cache directory" id: "determine-composer-cache-directory" - run: "echo \"::set-output name=directory::$(composer config cache-dir)\"" + run: echo "directory=$(composer config cache-dir)" >> $GITHUB_OUTPUT - name: "Cache dependencies installed with composer" - uses: actions/cache@v2.1.5 + uses: actions/cache@v4 with: path: "${{ steps.determine-composer-cache-directory.outputs.directory }}" key: ${{ runner.os }}-composer-v1-${{ hashFiles('./composer.json') }} From dd980365cb0336a1a8f51147d49fc5cef5ba82fd Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Thu, 15 Jan 2026 16:21:38 +0100 Subject: [PATCH 02/11] fix: MCD-610: Update uselagoon image version to 25.12.0 The old version 22.2.0 no longer exists on Docker Hub. Co-Authored-By: Claude Opus 4.5 --- scripts/init-devsetup-docker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/init-devsetup-docker.sh b/scripts/init-devsetup-docker.sh index cf5a1aa42..f82f436c0 100755 --- a/scripts/init-devsetup-docker.sh +++ b/scripts/init-devsetup-docker.sh @@ -28,7 +28,7 @@ if [[ $PROJECT_ADD_DEVSETUP_DOCKER = 1 ]]; then php process-replacements.php rm -rf devsetup-tmp process-replacements.php echo \ -'COMPOSE_AMAZEEIO_VERSION=22.2.0 +'COMPOSE_AMAZEEIO_VERSION=25.12.0 COMPOSE_AMAZEEIO_PHP_VERSION=8.1 ' >> .env-defaults fi From 63b367c7519da1e7bb09932eb23ca902100419e8 Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Thu, 15 Jan 2026 16:33:55 +0100 Subject: [PATCH 03/11] fix: MCD-610: Use uselagoon version 25.9.0 for solr compatibility The solr-8-drupal image doesn't have 25.12.0, only up to 25.9.0. Co-Authored-By: Claude Opus 4.5 --- scripts/init-devsetup-docker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/init-devsetup-docker.sh b/scripts/init-devsetup-docker.sh index f82f436c0..7f5183f59 100755 --- a/scripts/init-devsetup-docker.sh +++ b/scripts/init-devsetup-docker.sh @@ -28,7 +28,7 @@ if [[ $PROJECT_ADD_DEVSETUP_DOCKER = 1 ]]; then php process-replacements.php rm -rf devsetup-tmp process-replacements.php echo \ -'COMPOSE_AMAZEEIO_VERSION=25.12.0 +'COMPOSE_AMAZEEIO_VERSION=25.9.0 COMPOSE_AMAZEEIO_PHP_VERSION=8.1 ' >> .env-defaults fi From d40e8320a152ac9edc6a3c6a52322bc486aa817d Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Thu, 15 Jan 2026 16:35:24 +0100 Subject: [PATCH 04/11] fix: MCD-610: Build CLI image before docker compose up Newer Docker versions try to pull CLI_IMAGE from Docker Hub before building it locally. Building cli first ensures it's available. Co-Authored-By: Claude Opus 4.5 --- .github/workflows/test-drupal-setup.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test-drupal-setup.yml b/.github/workflows/test-drupal-setup.yml index 5455fecec..23d128c73 100644 --- a/.github/workflows/test-drupal-setup.yml +++ b/.github/workflows/test-drupal-setup.yml @@ -41,6 +41,7 @@ jobs: shell: 'script -q -e -c "bash {0}"' run: | export COMPOSE_DEFAULT_USER=$(id -u $USER) + docker compose build cli docker compose up -d echo "Waiting for mysql to come up..." && docker exec -it $(docker compose ps -q cli) /bin/bash -c "while ! echo exit | nc mariadb 3306; do sleep 1; done" >/dev/null - name: Install the project From 4441a5dce53214eba1c0260f372f8e4b9eae546d Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Thu, 15 Jan 2026 16:45:44 +0100 Subject: [PATCH 05/11] fix: MCD-610: Use devsetup-docker feature branch with npm fix Temporarily use feature/MCD-610 branch of devsetup-docker which has the fix for deprecated npm options (unsafe-perm removed in npm 9+). Co-Authored-By: Claude Opus 4.5 --- scripts/init-devsetup-docker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/init-devsetup-docker.sh b/scripts/init-devsetup-docker.sh index 7f5183f59..ff0a5860b 100755 --- a/scripts/init-devsetup-docker.sh +++ b/scripts/init-devsetup-docker.sh @@ -9,7 +9,7 @@ if [[ $PROJECT_ADD_DEVSETUP_DOCKER = 1 ]]; then echo "Adding devsetup-docker from https://github.com/drunomics/devsetup-docker..." echo "Set PROJECT_ADD_DEVSETUP_DOCKER=0 to disable." - git clone https://github.com/drunomics/devsetup-docker.git --branch=3.x devsetup-tmp + git clone https://github.com/drunomics/devsetup-docker.git --branch=feature/MCD-610 devsetup-tmp rm -rf devsetup-tmp/.git devsetup-tmp/README.md # OS specific cp operations From 7bf26a6223d287a86af0d5e3a2114c379773f244 Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Mon, 19 Jan 2026 10:11:24 +0100 Subject: [PATCH 06/11] ci: MCD-610: Trigger CI rebuild with simplified Dockerfile.cli Co-Authored-By: Claude Opus 4.5 From eaff26ea05d9aef89e294a02e094491348cd3da6 Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Mon, 19 Jan 2026 10:14:23 +0100 Subject: [PATCH 07/11] ci: MCD-610: Trigger CI with restored packages in Dockerfile.cli Co-Authored-By: Claude Opus 4.5 From 81f9b9391467a3993e56dbb306b5bebbbcb768f7 Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Mon, 19 Jan 2026 10:16:58 +0100 Subject: [PATCH 08/11] feat: MCD-610: Upgrade to Drupal 11 with PHP 8.3 Drupal 10 is end of life. Update to Drupal 11: - Update drupal/core-* packages from ^10 to ^11 - Update symfony/dotenv from ^5.4 to ^7.0 (Drupal 11 uses Symfony 7) - Update PHP platform version from 8.1 to 8.3 - Update GitHub Actions PHP version to 8.3 - Update Docker PHP version to 8.3 - Update version check from "Drupal 10" to "Drupal 11" Co-Authored-By: Claude Opus 4.5 --- .github/workflows/test-drupal-setup.yml | 4 ++-- composer.json | 10 +++++----- scripts/init-devsetup-docker.sh | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test-drupal-setup.yml b/.github/workflows/test-drupal-setup.yml index 23d128c73..5ec37c085 100644 --- a/.github/workflows/test-drupal-setup.yml +++ b/.github/workflows/test-drupal-setup.yml @@ -17,7 +17,7 @@ jobs: - name: Setup PHP uses: drunomics/setup-php@v2 with: - php-version: '8.1' + php-version: '8.3' - name: "Determine composer cache directory" id: "determine-composer-cache-directory" run: echo "directory=$(composer config cache-dir)" >> $GITHUB_OUTPUT @@ -50,4 +50,4 @@ jobs: docker compose exec cli phapp install --no-build - name: Check connection and response of the site run: | - curl -v http://example.drupal-project.localdev.space | grep "Drupal 10" + curl -v http://example.drupal-project.localdev.space | grep "Drupal 11" diff --git a/composer.json b/composer.json index 3318f8470..34fd5dc78 100644 --- a/composer.json +++ b/composer.json @@ -11,14 +11,14 @@ ], "require": { "cweagans/composer-patches": "^1.7.2", - "drupal/core-composer-scaffold": "^10", - "drupal/core-recommended": "^10", + "drupal/core-composer-scaffold": "^11", + "drupal/core-recommended": "^11", "drush/drush": "*", "oomphinc/composer-installers-extender": "^2.0.1", - "symfony/dotenv": "^5.4.22" + "symfony/dotenv": "^7.0" }, "require-dev": { - "drupal/core-dev": "^10", + "drupal/core-dev": "^11", "drunomics/playwright-drupal-utils": "^1.0.0" }, "conflict": { @@ -133,7 +133,7 @@ }, "config": { "platform": { - "php": "8.1" + "php": "8.3" }, "sort-packages": true, "preferred-install": { diff --git a/scripts/init-devsetup-docker.sh b/scripts/init-devsetup-docker.sh index ff0a5860b..3b4be2f23 100755 --- a/scripts/init-devsetup-docker.sh +++ b/scripts/init-devsetup-docker.sh @@ -29,6 +29,6 @@ if [[ $PROJECT_ADD_DEVSETUP_DOCKER = 1 ]]; then rm -rf devsetup-tmp process-replacements.php echo \ 'COMPOSE_AMAZEEIO_VERSION=25.9.0 -COMPOSE_AMAZEEIO_PHP_VERSION=8.1 +COMPOSE_AMAZEEIO_PHP_VERSION=8.3 ' >> .env-defaults fi From 7b16b9bf5ab9701a92f82c476b8bacaf6ec949a8 Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Mon, 19 Jan 2026 10:21:10 +0100 Subject: [PATCH 09/11] fix: MCD-610: Update development.settings.php for Drupal 11 Replace deprecated assertion handler with ini_set for Drupal 11: - Remove assert_options(ASSERT_ACTIVE, TRUE) - Remove \Drupal\Component\Assertion\Handle::register() - Add ini_set('zend.assertions', 1) Co-Authored-By: Claude Opus 4.5 --- web/sites/development.settings.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/web/sites/development.settings.php b/web/sites/development.settings.php index 65fc8c318..702e52854 100644 --- a/web/sites/development.settings.php +++ b/web/sites/development.settings.php @@ -1,7 +1,11 @@ Date: Mon, 19 Jan 2026 10:26:07 +0100 Subject: [PATCH 10/11] docs: MCD-610: Update version compatibility for Drupal 11 Update README to reflect Drupal 11 requirement with PHP 8.3+. Co-Authored-By: Claude Opus 4.5 --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 20f50a28d..a9944c01e 100644 --- a/README.md +++ b/README.md @@ -7,10 +7,10 @@ Builds upon https://github.com/drupal-composer/drupal-project. ## Version compatibility -| Git branch/tag: | Drupal core: | -|--- | --- | -| 5.x | Drupal 8 | -| 6.x | Drupal 9+ | +| Git branch/tag: | Drupal core: | PHP version: | +|--- | --- | --- | +| 5.x | Drupal 8 | 7.x | +| 6.x | Drupal 11+ | 8.3+ | ## Usage From 396732d24b5b78b15f22166be87491eb3c2d145b Mon Sep 17 00:00:00 2001 From: Petar Basic Date: Mon, 19 Jan 2026 10:27:00 +0100 Subject: [PATCH 11/11] fix: MCD-610: Use devsetup-docker 3.x branch (PR merged) Co-Authored-By: Claude Opus 4.5 --- scripts/init-devsetup-docker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/init-devsetup-docker.sh b/scripts/init-devsetup-docker.sh index 3b4be2f23..682a2d7b5 100755 --- a/scripts/init-devsetup-docker.sh +++ b/scripts/init-devsetup-docker.sh @@ -9,7 +9,7 @@ if [[ $PROJECT_ADD_DEVSETUP_DOCKER = 1 ]]; then echo "Adding devsetup-docker from https://github.com/drunomics/devsetup-docker..." echo "Set PROJECT_ADD_DEVSETUP_DOCKER=0 to disable." - git clone https://github.com/drunomics/devsetup-docker.git --branch=feature/MCD-610 devsetup-tmp + git clone https://github.com/drunomics/devsetup-docker.git --branch=3.x devsetup-tmp rm -rf devsetup-tmp/.git devsetup-tmp/README.md # OS specific cp operations