⚡ Parallelize independent steps in Integration workflow - #1332
Merged
Conversation
webpack-encore >=7 ships as a pure ES module (`type: module`). On
Node 22+, `require()` of an ES module returns the namespace object
`{ default: Encore }` instead of `Encore` directly, causing
`Encore.setOutputPath is not a function`. Use `_encore.default ?? _encore`
so the config works with both encore 6 (CJS) and encore 7 (ESM).
Also resolves a merge conflict in LoadReservedNameData, keeping the
'abuse' reserved name addition from the stashed changes.
Co-Authored-By: Claude <claude@anthropic.com>
Groups the composer/yarn installs and the four independent checks (cs-check, DB schema, typecheck, vitest) using GitHub's new parallel step keyword, since none of them depend on each other within their group. PHPUnit and Behat stay sequential because they share the same SQLite test database file.
The parallel keyword is a regular step property, so the group itself can carry a name for clearer labeling in the Actions UI.
GitHub's Actions validator rejects `parallel:` as a step property
("Unexpected value 'parallel'... Add one of these properties:
cancel, run, shell, uses, wait, wait-all, with, working-directory").
That confirms `background`/`wait-all` are the real primitives from
the 2026-06-25 changelog, with no `parallel` sugar keyword.
Rewritten as explicit background steps followed by a wait-all
barrier for both the install phase and the checks/tests phase.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Summary
cs-check, DB schema creation, TypeScript typecheck, Vitest) as a second parallel group.var/db_test.sqlite) and running them concurrently would risk file-level write conflicts.This uses GitHub's
parallelstep keyword announced in the 2026-06-25 changelog. The official workflow syntax docs hadn't been updated with this keyword as of writing, so this is a best-effort implementation based on the changelog description — the first CI run on this PR is the real verification of the syntax.Test plan
parallelgroups actually execute concurrently (check the Actions run's timing/logs)composer installand asset prep don't race on any shared file/cachemainrun