-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy path.gitattributes
More file actions
35 lines (32 loc) · 1.82 KB
/
Copy path.gitattributes
File metadata and controls
35 lines (32 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Exclude internal tree-sitter grammars from language statistics
tree-sitter-ccomment/** linguist-vendored
tree-sitter-mozcpp/** linguist-vendored
tree-sitter-mozjs/** linguist-vendored
tree-sitter-preproc/** linguist-vendored
# Pin Python source to LF on every platform. The generated `_enums.py` is
# byte-compared against `render_enums_module()` output (which emits `\n`) by
# the `enums_module_matches_checked_in` drift gate (#550); a Windows
# `core.autocrlf=true` checkout would otherwise rewrite it to CRLF and fail
# the byte-exact comparison. Covering all `*.py` forecloses the same trap for
# any future generated-Python gate.
*.py text eol=lf
# The self-scan baseline is generated wholesale by
# `make self-scan-write-baseline-headroom`; nothing in it is
# hand-authored. A textual merge of two branches that both touched a
# baselined file yields hunks that are plausible-looking and wrong on
# *both* sides, because neither side's measurement describes the merged
# tree. `-merge` makes git refuse the text merge and leave the whole
# file conflicted, which says "regenerate" rather than "pick a side".
# Resolve with:
# make self-scan-write-baseline-headroom
.bca-baseline.toml -merge
# Fuzz corpus seeds are byte-exact by definition (#1154). Several exist
# precisely to carry the bytes git would otherwise normalise away: the
# `crlf` and `lone_cr` seeds encode line endings, `no_trailing_newline`
# encodes the *absence* of a final LF (the #1051 shape), and
# `invalid_utf8` / `nul_bytes` / `bom` are not text at all. Without
# `-text`, a checkout with `core.autocrlf=true` — or just `git add` on
# Windows — silently rewrites them into a different test than the one
# committed, and the fuzz run still passes because the seeds are only a
# starting point. `-diff` keeps the binary ones out of patch output.
fuzz/corpus/** -text -diff