Move linters into tree
This MR moves the GHC linters into the tree, so that they can be run directly using Hadrian.
- Query all files tracked by Git instead of using changed files, so that we can run the exact same linting step locally and in a merge request.
- Only check that the changelogs don't contain TBA when RELEASE=YES.
- Add
hadrian/lint
script, which runs all the linting steps. - Ensure the hlint job exits with a failure if hlint is not installed (otherwise we were ignoring the failure). Given that hlint doesn't seem to be available in CI at the moment, I've temporarily allowed failure in the hlint job.
- Run all linting tests in CI using hadrian.
Edited by sheaf