Ignore the generated config/schema.json, and check .gitattributes stay in sync - #3845
Merged
Merged
Conversation
…y in sync | Q | A | -------------- | --- | Bug fix? | no | New feature? | no | Deprecations? | no | Documentation? | no | Issues | - | License | MIT Running `composer install` in a package writes a `config/schema.json` next to the `config/reference.php` that is already ignored, so it shows up as an untracked file and is easy to commit by accident. Toolkit already ignored it; this adds the same line to the fifteen other packages that ignore `config/reference.php`, right below it. Native and Notify are left alone, since Notify has no `config/` directory and Native ignores neither of the two. While checking that `.github/sync-packages.php` had nothing to say about this (it regenerates `.gitattributes`, not `.gitignore`), it turned out two packages had drifted: `Pagination` was missing `/assets/tsconfig.json` and had `/assets/src` and `/doc` out of canonical order, and `Toolkit` was missing `/doc`. Both are now published with files that should be excluded from their archives. This regenerates them. Nothing ran that script in CI, which is why the drift went unnoticed, so the "Validate packages definition" job now runs it and fails when the working tree changes. It needs PHP and the root dependencies, set up the same way the PHPStan job already does.
Kocal
force-pushed
the
chore/gitignore-config-schema
branch
from
September 8, 2026 16:29
9388781 to
0bde23a
Compare
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.
Running
composer installin a package writes aconfig/schema.jsonnext to theconfig/reference.phpthat is already ignored, so it shows up as an untracked file and is easy to commit by accident. Toolkit already ignored it; this adds the same line to the fifteen other packages that ignoreconfig/reference.php, right below it. Native and Notify are left alone, since Notify has noconfig/directory and Native ignores neither of the two.While checking that
.github/sync-packages.phphad nothing to say about this (it regenerates.gitattributes, not.gitignore), it turned out two packages had drifted:Paginationwas missing/assets/tsconfig.jsonand had/assets/srcand/docout of canonical order, andToolkitwas missing/doc. Both are now published with files that should be excluded from their archives. This regenerates them.Nothing ran that script in CI, which is why the drift went unnoticed, so the "Validate packages definition" job now runs it and fails when the working tree changes. It needs PHP and the root dependencies, set up the same way the PHPStan job already does.