diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 2b40ac59304..2029303387e 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -15,7 +15,7 @@ on: # │ │ │ │ │ # │ │ │ │ │ # * * * * * - - cron: '30 1 * * 0' + - cron: "30 1 * * 0" jobs: CodeQL-Build: @@ -36,7 +36,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 # Override language selection by uncommenting this and choosing your languages with: languages: cpp @@ -44,7 +44,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java). # If this step fails, then you should remove it and run the build manually (see below). - name: Autobuild - uses: github/codeql-action/autobuild@v2 + uses: github/codeql-action/autobuild@v3 # ℹ️ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -58,4 +58,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@v3 diff --git a/scripts/file_linter.py b/scripts/file_linter.py index 8414221b829..cfa98a4b93f 100644 --- a/scripts/file_linter.py +++ b/scripts/file_linter.py @@ -6,34 +6,44 @@ with open("git_diff.txt") as in_file: modified_files = sorted(in_file.read().splitlines()) print("{} files were modified.".format(len(modified_files))) - + cpp_exts = tuple(".c .c++ .cc .cpp .cu .cuh .cxx .h .h++ .hh .hpp .hxx".split()) cpp_files = [file for file in modified_files if file.lower().endswith(cpp_exts)] print(f"{len(cpp_files)} C++ files were modified.") if not cpp_files: sys.exit(0) - subprocess.run(["clang-tidy", "--fix", "-p=build", "--extra-arg=-std=c++11", *cpp_files, "--"], - check=True, text=True, stderr=subprocess.STDOUT) - - subprocess.run(["clang-format", "-i", "-style=file", *cpp_files], - check=True, text=True, stderr=subprocess.STDOUT) - - upper_files = [file for file in cpp_files if file != file.lower()] - if upper_files: - print(f"{len(upper_files)} files contain uppercase characters:") - print("\n".join(upper_files) + "\n") - - space_files = [file for file in cpp_files if " " in file or "-" in file] - if space_files: - print(f"{len(space_files)} files contain space or dash characters:") - print("\n".join(space_files) + "\n") - - nodir_files = [file for file in cpp_files if file.count(os.sep) != 1] - if nodir_files: - print(f"{len(nodir_files)} files are not in one and only one directory:") - print("\n".join(nodir_files) + "\n") - - bad_files = len(upper_files + space_files + nodir_files) - if bad_files: - sys.exit(bad_files) + subprocess.run( + [ + "clang-tidy", + "--fix", + "-p=build", + "--extra-arg=-std=c++11", + *cpp_files, + "--", + ], + check=True, + text=True, + stderr=subprocess.STDOUT, + ) + subprocess.run( + ["clang-format", "-i", "-style=file", *cpp_files], + check=True, + text=True, + stderr=subprocess.STDOUT, + ) + upper_files = [file for file in cpp_files if file != file.lower()] + if upper_files: + print(f"{len(upper_files)} files contain uppercase characters:") + print("\n".join(upper_files) + "\n") + space_files = [file for file in cpp_files if " " in file or "-" in file] + if space_files: + print(f"{len(space_files)} files contain space or dash characters:") + print("\n".join(space_files) + "\n") + nodir_files = [file for file in cpp_files if file.count(os.sep) != 1] + if nodir_files: + print(f"{len(nodir_files)} files are not in one and only one directory:") + print("\n".join(nodir_files) + "\n") + bad_files = len(upper_files + space_files + nodir_files) + if bad_files: + sys.exit(bad_files)