Conversation
## Summary - Adds PHP 8.5 (stable since Nov 2025, current: 8.5.3) to the CI test matrix - Tests unit and integration suites against PHP 8.5 - No dependency or config changes needed (`platform.php: 8.1.27` ensures locked install works) ## Changes - `.github/workflows/main.yaml`: Added `'8.5'` to `matrix.php` in the `tests` job ## Context PHP 8.5 has been GA since November 2025. The existing `composer.json` constraint (`^8.1`) already allows 8.5. The `config.platform.php: 8.1.27` setting ensures `composer install --locked` succeeds regardless of runtime PHP version. ## Test plan - [ ] CI runs unit tests on PHP 8.5 - [ ] CI runs integration tests on PHP 8.5 - [ ] Existing PHP 8.1-8.4 jobs unaffected
- actions/checkout: v4 -> v6 - ramsey/composer-install: v2 -> v3 - docker/setup-buildx-action: v2 -> v3 (merge job) - actions/upload-artifact: v4 -> v6 - actions/download-artifact: v4 -> v7 - actions/cache: v4 -> v5 - dependabot/fetch-metadata: v1/pinned SHA -> v2 - frankdejonge/use-github-token: 1.0.2 -> 1.1.0 - frankdejonge/use-subsplit-publish: 1.0.0 -> 1.1.0
There was a problem hiding this comment.
Pull request overview
Updates GitHub Actions workflow dependencies to newer major versions across the repository’s CI, Docker build, Dependabot automation, and sub-split publishing pipelines.
Changes:
- Bump multiple GitHub Actions versions across 5 workflows (checkout, composer install, cache, artifacts, buildx, dependabot metadata, subsplit-related actions).
- Update Dependabot metadata action usage in auto-merge/auto-approve workflows.
- Expand the CI test matrix to include PHP 8.5.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/split-repositories.yaml | Updates checkout/cache and subsplit helper actions used for publishing sub-splits. |
| .github/workflows/pr-auto-merge.yaml | Updates Dependabot metadata action used to drive auto-merge decisions. |
| .github/workflows/pr-auto-approve.yaml | Updates Dependabot metadata action used to drive auto-approve behavior. |
| .github/workflows/main.yaml | Updates checkout/composer actions and adds PHP 8.5 to the test matrix. |
| .github/workflows/docker.yaml | Updates checkout/buildx and artifact upload/download actions used in Docker publish pipeline. |
| .github/workflows/deploy-azure-assets.yaml | Updates checkout action for Azure assets deployment workflow. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - '8.2' | ||
| - '8.3' | ||
| - '8.4' | ||
| - '8.5' |
There was a problem hiding this comment.
This PR is described as only updating GitHub Actions versions, but this change also expands the test matrix to include PHP 8.5. If this is intentional, the PR description/test plan should mention it; otherwise, consider reverting to keep the PR scope to action updates. Also ensure the toolchain (shivammathur/setup-php + dependencies) supports PHP 8.5 in CI.
| @@ -17,7 +17,7 @@ jobs: | |||
| steps: | |||
| - name: Dependabot metadata | |||
| id: metadata | |||
There was a problem hiding this comment.
In a pull_request_target workflow (runs with elevated permissions), switching from a commit-SHA pin to a mutable tag increases supply-chain risk and can introduce unexpected behavior changes. Consider pinning dependabot/fetch-metadata to a specific commit SHA (and letting Dependabot/Renovate update it), or otherwise document why tracking the v2 tag is acceptable here.
| id: metadata | |
| id: metadata | |
| # NOTE: We intentionally track the stable v2 tag instead of pinning a commit SHA. | |
| # This workflow only runs for dependabot[bot] pull_request_target events and uses the | |
| # official GitHub-maintained dependabot/fetch-metadata action, so we accept the risk | |
| # of updates to the v2 major tag in exchange for receiving security and bug fixes. |
Update actions/checkout from v4 to v6 in docker-test.yaml, which was missed in the initial actions update commit.
Pin all GitHub Actions to their exact commit SHAs for supply chain security. Version comments are included for maintainability.
…ocumentation#1187) Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.94.0 to 3.94.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases">friendsofphp/php-cs-fixer's releases</a>.</em></p> <blockquote> <h2>v3.94.2 7th Gear</h2> <h2>What's Changed</h2> <ul> <li>fix: <code>NoUnusedImportsFixer</code> - do not remove constant types by <a href="https://github.com/kubawerlos"><code>@kubawerlos</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9442">PHP-CS-Fixer/PHP-CS-Fixer#9442</a></li> <li>fix: <code>AttributeBlockNoSpacesFixer</code> - skipping some attributes when multiple present by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9445">PHP-CS-Fixer/PHP-CS-Fixer#9445</a></li> <li>fix: <code>PhpdocLineSpanFixer</code> - handle unions and intersections in properties by <a href="https://github.com/paulbalandan"><code>@paulbalandan</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9438">PHP-CS-Fixer/PHP-CS-Fixer#9438</a></li> <li>deps: bump crate-ci/typos from 1.43.4 to 1.43.5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9444">PHP-CS-Fixer/PHP-CS-Fixer#9444</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.94.1...v3.94.2">https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.94.1...v3.94.2</a></p> <h2>v3.94.1 7th Gear</h2> <h2>What's Changed</h2> <ul> <li>docs: switch sets ordering to case-insensitive by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9423">PHP-CS-Fixer/PHP-CS-Fixer#9423</a></li> <li>chore: add tests for <code>ArgumentsAnalyzer</code> by <a href="https://github.com/kubawerlos"><code>@kubawerlos</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9422">PHP-CS-Fixer/PHP-CS-Fixer#9422</a></li> <li>deps: bump crate-ci/typos from 1.43.2 to 1.43.4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9426">PHP-CS-Fixer/PHP-CS-Fixer#9426</a></li> <li>deps: bump ergebnis/composer-normalize from 2.49.0 to 2.50.0 in /dev-tools by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9427">PHP-CS-Fixer/PHP-CS-Fixer#9427</a></li> <li>deps: dependabot group for shipmonk/ by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9429">PHP-CS-Fixer/PHP-CS-Fixer#9429</a></li> <li>deps: bump the phpstan group in /dev-tools with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9425">PHP-CS-Fixer/PHP-CS-Fixer#9425</a></li> <li>chore: bump dev-tools to PHP 8.5 by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9432">PHP-CS-Fixer/PHP-CS-Fixer#9432</a></li> <li>chore: reduce Generator into iterable by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9435">PHP-CS-Fixer/PHP-CS-Fixer#9435</a></li> <li>chore: ConfigurableFixerTemplateFixer - allow to remove option from computed options by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9437">PHP-CS-Fixer/PHP-CS-Fixer#9437</a></li> <li>chore: fix Tokens::getIterator() type by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9433">PHP-CS-Fixer/PHP-CS-Fixer#9433</a></li> <li>CI: cleanup sca.yml by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9430">PHP-CS-Fixer/PHP-CS-Fixer#9430</a></li> <li>test: check PHP env in CI jobs by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9428">PHP-CS-Fixer/PHP-CS-Fixer#9428</a></li> <li>chore: reduce Iterator->Traversable and Traversable->iterable when possible by <a href="https://github.com/keradus"><code>@keradus</code></a> in <a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/pull/9434">PHP-CS-Fixer/PHP-CS-Fixer#9434</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.94.0...v3.94.1">https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.94.0...v3.94.1</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md">friendsofphp/php-cs-fixer's changelog</a>.</em></p> <blockquote> <h2>Changelog for v3.94.2</h2> <ul> <li>fix: <code>AttributeBlockNoSpacesFixer</code> - skipping some attributes when multiple present (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9445">#9445</a>)</li> <li>fix: <code>NoUnusedImportsFixer</code> - do not remove constant types (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9442">#9442</a>)</li> <li>fix: <code>PhpdocLineSpanFixer</code> - handle unions and intersections in properties (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9438">#9438</a>)</li> <li>deps: bump crate-ci/typos from 1.43.4 to 1.43.5 (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9444">#9444</a>)</li> </ul> <h2>Changelog for v3.94.1</h2> <ul> <li>chore: add tests for <code>ArgumentsAnalyzer</code> (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9422">#9422</a>)</li> <li>chore: bump dev-tools to PHP 8.5 (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9432">#9432</a>)</li> <li>chore: ConfigurableFixerTemplateFixer - allow to remove option from computed options (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9437">#9437</a>)</li> <li>chore: fix Tokens::getIterator() type (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9433">#9433</a>)</li> <li>chore: reduce Generator into iterable (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9435">#9435</a>)</li> <li>chore: reduce Iterator->Traversable and Traversable->iterable when possible (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9434">#9434</a>)</li> <li>CI: cleanup sca.yml (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9430">#9430</a>)</li> <li>deps: bump crate-ci/typos from 1.43.2 to 1.43.4 (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9426">#9426</a>)</li> <li>deps: bump ergebnis/composer-normalize from 2.49.0 to 2.50.0 in /dev-tools (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9427">#9427</a>)</li> <li>deps: bump the phpstan group in /dev-tools with 4 updates (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9425">#9425</a>)</li> <li>deps: dependabot group for shipmonk/ (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9429">#9429</a>)</li> <li>docs: switch sets ordering to case-insensitive (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9423">#9423</a>)</li> <li>test: check PHP env in CI jobs (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9428">#9428</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/7787ceff91365ba7d623ec410b8f429cdebb4f63"><code>7787cef</code></a> prepared the 3.94.2 release</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/341df8b8e4fa17da2dd6fb0af42e2da40776fffc"><code>341df8b</code></a> deps: bump crate-ci/typos from 1.43.4 to 1.43.5 (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9444">#9444</a>)</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/b133c65ac304693ae787eca0fdfa901454cca362"><code>b133c65</code></a> fix: <code>PhpdocLineSpanFixer</code> - handle unions and intersections in properties (#...</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/716d23f73c7e9a82f1ca4050333a6973cd055f57"><code>716d23f</code></a> fix: <code>AttributeBlockNoSpacesFixer</code> - skipping some attributes when multiple p...</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/5394868ab602452040dd069fefc38807bfc422bb"><code>5394868</code></a> fix: <code>NoUnusedImportsFixer</code> - do not remove constant types (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9442">#9442</a>)</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/0823705b521141c44092b4c5cd894e3b2a137b25"><code>0823705</code></a> bumped version</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/d1a3634e29916367b885250e1fc4dfd5ffe3b091"><code>d1a3634</code></a> prepared the 3.94.1 release</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/92d82677b6af1b9ce50cf7b6c5fb56afb44a82a6"><code>92d8267</code></a> chore: reduce Iterator->Traversable and Traversable->iterable when possible (...</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/cbb2b8458324ce35e25a246ffbd38138696716b2"><code>cbb2b84</code></a> test: check PHP env in CI jobs (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9428">#9428</a>)</li> <li><a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/commit/8c9458608008606e3992cecf8f0be83c701e4493"><code>8c94586</code></a> CI: cleanup sca.yml (<a href="https://redirect.github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues/9430">#9430</a>)</li> <li>Additional commits viewable in <a href="https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.94.0...v3.94.2">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…O3-Documentation#1174) Resolves: TYPO3-Documentation#1172 ## Summary - Add missing `float: left`/`float: right` CSS properties to `img.float-left`/`img.float-right` rules (Bootstrap 5 removed these) - Add figure float rules (`figure.float-left`, `figure.float-right`) with `max-width: 50%` and responsive breakpoint (<576px disables float) - Add `img.align-center` / `figure.align-center` CSS for centered alignment - Replace deprecated HTML `align` attribute in `image.html.twig` with CSS class mapping (`:align: left` → `float-left`, `:align: right` → `float-right`, `:align: center` → `align-center`) - Add `:align:` CSS class support in `figure.html.twig` - Preserve `:align:` option on FigureNode (was being stripped) so `.. figure:: :align: left` works - Strip `float-left`/`float-right` from inner `<img>` inside `<figure>` to prevent caption wrapping issues - Add `.clear-both` CSS utility alias (alongside existing `.cc`) - Split `ImagesAndFigures` rendertest into separate pages: Index (styling), Zoom, FloatAndAlignment ## Files changed | File | Change | |------|--------| | `assets/sass/components/_rst.scss` | Add `float` property + `align-center` to img rules | | `assets/sass/components/_images.scss` | Add figure float/align rules + responsive | | `assets/sass/_utilities.scss` | Add `.clear-both` alias | | `resources/template/body/image.html.twig` | Replace HTML `align` attr with CSS classes | | `resources/template/body/figure.html.twig` | Add `:align:` CSS class support | | `src/Directives/FigureDirective.php` | Keep `:align:` on FigureNode, strip float from inner img | | `resources/public/css/theme.css` | Regenerated | | `Documentation-rendertest/ImagesAndFigures/` | Split into Index + Zoom + FloatAndAlignment | ## Test plan - [x] All 195 PHPUnit tests pass - [x] PHPStan reports 0 errors - [x] Rendered docs verified: image/figure float left/right with text wrapping - [x] `:align: left`/`:align: right` on figures works correctly - [x] `.clear-both` clears floats as expected - [x] Responsive: floats disable on small screens (<576px) - [x] Visual review of rendered ImagesAndFigures pages ### Related - Follow-up PR: TYPO3-Documentation#1179 (modernize to `float-start`/`float-end`) - Upstream issue: [phpDocumentor/guides#1303](phpDocumentor/guides#1303) — proposes removing `final` from upstream directives to avoid forking
Summary
Updates 9 GitHub Actions across 5 workflow files to their latest versions.
Test plan