summaryrefslogtreecommitdiff
path: root/Meta/lint-ci.sh
AgeCommit message (Collapse)Author
2022-02-07Meta+Userland: Run the GML formatter on CI and pre-commitkleines Filmröllchen
Now that the GML formatter is both perserving comments and also mostly agrees to the existing GML style, it can be used to auto-format all the GML files in the system. This commit does not only contain the scripts for running the formatting on CI and the pre-commit hook, but also initially formats all the existing GML files so that the hook is successfull.
2021-11-05Meta: Remove useless lint-ipc-ids.sh scriptBen Wiederhake
This script was silently broken in commit 62af6cd4f9637b8937e59832f5af00f4556c496b.
2021-11-05Meta: Run IPC magic number linter during CI and pre-commitBen Wiederhake
2021-10-27Meta: Reimplement license checker in pythonBen Wiederhake
On my machine, this script took about 3.4 seconds, and was responsible for essentially all of the time taken by the precommit hook. The script is a faithful 1:1 reimplementation, even the regexes are identical. And yet, it takes about 0.02 seconds, making the pre-commit hook lightning fast again. Apparently python is just faster in this case. Fun fact: - Just reading all ~4000 files took bash about 1.2 seconds - Checking the license took another 1.8 seconds in total - Checking for math.h took another 0.4 seconds in total - Checking for '#pragma once' took another 0.4 seconds in total The timing is highly load-dependent, so they don't exactly add up to 3.4 seconds. However, it's good enough to determine that bash is no longer fit for the purpose of this script.
2021-10-10Meta: Invoke markdown-checker if available while lintingBen Wiederhake
2021-04-30Meta: pre-commit should run lint-ports.py only when Ports changeBrian Gianforcaro
Most of the existing lint-ing shell scripts have the ability to only run on the files which have actually changed. The new port lint-ing script doesn't have this functionality unfortunately. This forces us to lint ALL the ports on every single change to any other file in the system if you have the pre-commit hook setup for your git clone locally. Instead we can use pre-commit's feature to only run a hook if certain files have changed to reduce the situations in which we would run the Meta/lint-ports.py script.
2021-02-15Meta: Lint AvailablePorts.mdBen Wiederhake
As requested by popular demand ;) https://github.com/SerenityOS/serenity/pull/5325#discussion_r575657614
2021-02-01Meta: Add script that checks consistency of keymapsBen Wiederhake
2021-01-22Meta: Get building on NixOS (#5005)Jonathan Turner
2021-01-09Meta: Add flake8 to lint python filesAndrew Kaster
2021-01-03Meta: Rewrite the check-newlines-at-eof script in pythonEmanuele Torre
The bash version takes around 15 seconds to run; that is way too slow. This python3 version should take less than one second to run. :^) Also, the script will now also check .py files and .txt CMake files.
2021-01-03Meta: Add a script that makes sure files end in a newline.Emanuele Torre
This script checks .html, .css, .js, .cpp, .h, .gml and .sh files. It also makes sure that there are no black lines at the end of the files checked.
2020-12-27Meta: Run lint-prettier.sh on CILinus Groh
2020-12-27Meta: Update lint-{clang-format,shell-scripts}.sh to take a list of filesLinus Groh
This should speed up pre-commit a bit as only files that are staged will be processed, and clang-format and shellcheck are only invoked once, not for every file. When no arguments are given (e.g. on CI), it still uses 'git ls-files'.
2020-12-26Meta: Make lint-shell-scripts.sh happyAnotherTest
`${FAILURES}` -> `"${FAILURES}"`
2020-12-24Meta: Run all lint checks and report failures togetherLenny Maiorani
Problem: - The first lint check that fails results in all subsequent checks not being run. Solution: - Run all the lint checks aggregating the number of failures. - Return a non-0 exit code if any have failed.
2020-12-24Meta: Verify all AK test files are listed in CMakeLenny Maiorani
Problem: - It is possible for a new test file to be added to the `AK/Tests` directory without being added to the corresponding `CMakeLists.txt`. This results in the tests not being run. Solution: - As part of CI linting, verify that all the `AK/Tests/Test*.cpp` files are mentioned in the `CMakeLists.txt`.
2020-12-01Meta: Always check completeness of ALL_THE_DEBUG_MACROSBen Wiederhake
2020-11-08Meta: Add script that runs all lintsBen Wiederhake