# Normalize every text file to LF in the repository and the working tree, so a # checkout on Windows cannot reintroduce CRLF that php-cs-fixer then rejects. # Git auto-detects binary content; the explicit rules below guard common binary # types against accidental normalization. * text=auto eol=lf *.png binary *.jpg binary *.jpeg binary *.gif binary *.ico binary *.woff binary *.woff2 binary *.ttf binary *.eot binary *.gz binary *.zip binary *.phar binary # Patch files are applied byte-for-byte; never rewrite their line endings. *.patch -text # Vendored third-party libraries are kept exactly as shipped upstream, including # their line endings, so they stay byte-identical to upstream and out of diffs # and code scanners. Do not normalize them. include/js/big.js -text include/js/jquery.tablesorter.js -text include/js/jquery.tablesorter.widgets.js -text # Every pull request appends to the same two anchors in CHANGELOG: the top of # the issue block and the end of the feature block. Concurrent PRs therefore # collide there even when they touch nothing else. check-changelog.py enforces # entry format and issue/feature grouping rather than numeric order, so keeping # both sides is a valid resolution. CHANGELOG merge=union # Development-only paths are excluded from `git archive`, which is how the # release tarball is built. Keep build/ and patches/ exportable: the release # runs `npm ci` inside the archived tree and its postinstall needs them. /.dockerignore export-ignore /.editorconfig export-ignore /.gitattributes export-ignore /.github/ export-ignore /.gitignore export-ignore /.php-cs-fixer.php export-ignore /.phpstan-bootstrap.php export-ignore /.phpstan.neon export-ignore /build/psalm/ export-ignore /docker-compose.yml export-ignore /phpstan-baseline.neon export-ignore /tests/phpunit.xml export-ignore /tests/phpunit-*.xml export-ignore /psalm-baseline.xml export-ignore /psalm.xml export-ignore /rector.php export-ignore /tests/ export-ignore