Skip to content

fix: repair broken Makefile targets and stale server docs - #3777

Open
Vondry wants to merge 4 commits into
bolt:6.1from
Vondry:fix/makefile-stale-targets
Open

fix: repair broken Makefile targets and stale server docs#3777
Vondry wants to merge 4 commits into
bolt:6.1from
Vondry:fix/makefile-stale-targets

Conversation

@Vondry

@Vondry Vondry commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Summary

Fixes four broken make targets without changing project behavior. The changes align local development commands with the current Symfony 6.4 toolchain and existing CI configuration.

Changes

  • stancheck
    • Switched from phpstan.neon (gitignored and never committed) to the committed phpstan.dist.neon.
    • Fixes PHPStan aborting, which also restores cscheck, csfix, and full-test.
  • server / server-stop
    • Replaced the removed bin/console server:* commands from the deprecated symfony/web-server-bundle with the Symfony CLI.
    • Matches the approach already used in CI and documented elsewhere in the project.
  • cscheck / csfix
    • Removed ecs check tests/php, which lies outside the configured ecs.php scope (and CI's scope).
    • Prevents false failures where local commands exited with code 2 despite CI passing.
  • SETUP.md
    • Removed obsolete references to bin/console server:start and bin/console server:run.

Vondry added 4 commits August 4, 2026 10:38
`phpstan.neon` is gitignored and never committed; only `phpstan.dist.neon`
exists in the repo. Passing `-c phpstan.neon` made the target abort with
"Project config file ... does not exist", which also broke `cscheck`,
`csfix` and `full-test` since they all call `stancheck`.

Removing the flag lets PHPStan auto-discover `phpstan.dist.neon`, which
already defines `level: 8`, `paths: [src]` and the baseline include. This
matches what CI runs (`vendor/bin/phpstan analyse`).
`bin/console server:start` and `server:stop` were provided by
symfony/web-server-bundle, which was removed in Symfony 5. The project
runs Symfony 6.4 and the bundle is absent from composer.lock and
config/bundles.php, so `bin/console list server` only offers server:dump
and server:log. Both targets have been failing, which also made `start`
unusable since it chains into `server`.

Switch to the Symfony CLI, which is what SETUP.md recommends first and
what every CI workflow already uses. The port stays 8088 and `|| true` is
kept so `make start` remains tolerant of an already-running server.
ecs.php scopes itself to src (plus ecs.php), and CI runs
`vendor/bin/ecs check src`. The extra `ecs check tests/php` line meant
`make cscheck` reported 13 violations and exited 2 on code that CI
accepts, so the target failed before it ever reached stancheck.

Drop the extra invocation so the make targets match the ECS config and
CI. Note docker-cscheck/docker-csfix already only checked src, so this
also brings the two paths back in line.
`bin/console server:start` and `server:run` came from
symfony/web-server-bundle, removed in Symfony 5. The bundle is not in
composer.lock or config/bundles.php, so neither command exists on this
6.4 codebase and the pcntl caveat is moot (the docker php image installs
pcntl regardless).

Leaves the Symfony CLI as the single instruction, matching the
server/server-stop make targets. Verified `symfony server:start` serves
on 127.0.0.1:8000, which is the URL the following paragraph points at.
@Vondry
Vondry force-pushed the fix/makefile-stale-targets branch from ea15567 to e8b9482 Compare August 4, 2026 08:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant