Unify line ending rules in '.editorconfig' and '.gitattributes' (#5231)
authorVladimir Glavnyy <31897320+vglavnyy@users.noreply.github.com>
Mon, 18 Mar 2019 19:47:07 +0000 (02:47 +0700)
committerWouter van Oortmerssen <aardappel@gmail.com>
Mon, 18 Mar 2019 19:47:07 +0000 (12:47 -0700)
* Unify line ending rules in '.editorconfig' and '.gitattributes'

* Revert '.gitattributes'

- fix invalid comments in the check-source.py

.editorconfig
.gitattributes
.travis/check-sources.sh.py

index be31d8c..6c54966 100644 (file)
@@ -1,7 +1,7 @@
 root = true
-[*.{cpp,cc,h,sh}]
-end_of_line = LF
+# Don't set line endings to avoid conflict with core.autocrlf flag.
+# Line endings on checkout/checkin are controlled by .gitattributes file.
+[*]
 indent_style = space
 indent_size = 2
 insert_final_newline = true
-
index 176a458..4cab1f4 100644 (file)
@@ -1 +1,2 @@
+# Set the default behavior, in case people don't have core.autocrlf set.
 * text=auto
index 5ad060c..2b001d7 100644 (file)
@@ -18,12 +18,11 @@ def check_encoding(encoding, scan_dir, regex_pattern):
         btext.decode(encoding=encoding, errors="strict")
         if encoding == "utf-8" and btext.startswith(b'\xEF\xBB\xBF'):
           raise ValueError("unexpected BOM in file")
-        # check strict CRLF line-ending
-        LF = btext.count(b'\r')
-        CRLF = btext.count(b'\r\n')
-        assert LF >= CRLF, "CRLF logic error"
-        if CRLF != LF:
-          raise ValueError("CRLF violation: found {} LF characters".format(LF - CRLF))
+        # check LF line endings
+        LF = btext.count(b'\n')
+        CR = btext.count(b'\r')
+        if CR!=0:
+          raise ValueError("invalid line endings: LF({})/CR({})".format(LF, CR))
   except Exception as err:
     print("ERROR with [{}]: {}".format(fname, err))
     return -1