[clang-tools-extra] e598913 - [clang-tidy] Force LF newlines when writing files
via cfe-commits
cfe-commits at lists.llvm.org
Tue Jan 18 08:40:46 PST 2022
Author: Richard
Date: 2022-01-18T09:39:42-07:00
New Revision: e598913a4734ce682732703bb362dc3c5c0079c0
URL: https://github.com/llvm/llvm-project/commit/e598913a4734ce682732703bb362dc3c5c0079c0
DIFF: https://github.com/llvm/llvm-project/commit/e598913a4734ce682732703bb362dc3c5c0079c0.diff
LOG: [clang-tidy] Force LF newlines when writing files
The recommendation on Windows is to checkout from git with
core.autolf=false in order to preserve LF line endings on
test files. However, when creating a new check this results
in modified files as having switched all the line endings on
Windows. Write all files with explicit LF line endings to
prevent this.
Fixes #52968
Differential Revision: https://reviews.llvm.org/D117535
Added:
Modified:
clang-tools-extra/clang-tidy/add_new_check.py
Removed:
################################################################################
diff --git a/clang-tools-extra/clang-tidy/add_new_check.py b/clang-tools-extra/clang-tidy/add_new_check.py
index 1e26b07121c6..50a220b3f975 100755
--- a/clang-tools-extra/clang-tidy/add_new_check.py
+++ b/clang-tools-extra/clang-tidy/add_new_check.py
@@ -37,7 +37,7 @@ def adapt_cmake(module_path, check_name_camel):
return False
print('Updating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
cpp_found = False
file_added = False
for line in lines:
@@ -57,7 +57,7 @@ def write_header(module_path, module, namespace, check_name, check_name_camel):
check_name_dashes = module + '-' + check_name
filename = os.path.join(module_path, check_name_camel) + '.h'
print('Creating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
header_guard = ('LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_' + module.upper() + '_'
+ check_name_camel.upper() + '_H')
f.write('//===--- ')
@@ -110,7 +110,7 @@ class %(check_name)s : public ClangTidyCheck {
def write_implementation(module_path, module, namespace, check_name_camel):
filename = os.path.join(module_path, check_name_camel) + '.cpp'
print('Creating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
f.write('//===--- ')
f.write(os.path.basename(filename))
f.write(' - clang-tidy ')
@@ -168,7 +168,7 @@ def adapt_module(module_path, module, check_name, check_name_camel):
lines = f.readlines()
print('Updating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
header_added = False
header_found = False
check_added = False
@@ -231,7 +231,7 @@ def add_release_notes(module_path, module, check_name):
checkMatcher = re.compile('- New :doc:`(.*)')
print('Updating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
note_added = False
header_found = False
add_note_here = False
@@ -277,7 +277,7 @@ def write_test(module_path, module, check_name, test_extension):
filename = os.path.normpath(os.path.join(module_path, '../../test/clang-tidy/checkers',
check_name_dashes + '.' + test_extension))
print('Creating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
f.write("""// RUN: %%check_clang_tidy %%s %(check_name_dashes)s %%t
// FIXME: Add something that triggers the check here.
@@ -386,7 +386,7 @@ def format_link_alias(doc_file):
checks_alias = map(format_link_alias, doc_files)
print('Updating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
for line in lines:
f.write(line)
if line.strip() == ".. csv-table::":
@@ -407,7 +407,7 @@ def write_docs(module_path, module, check_name):
filename = os.path.normpath(os.path.join(
module_path, '../../docs/clang-tidy/checks/', check_name_dashes + '.rst'))
print('Creating %s...' % filename)
- with io.open(filename, 'w', encoding='utf8') as f:
+ with io.open(filename, 'w', encoding='utf8', newline='\n') as f:
f.write(""".. title:: clang-tidy - %(check_name_dashes)s
%(check_name_dashes)s
More information about the cfe-commits
mailing list