aboutsummaryrefslogtreecommitdiffhomepage
path: root/GNUmakefile
diff options
context:
space:
mode:
authorDan Kegel <[email protected]>2024-04-12 12:19:48 -0700
committerRon Evans <[email protected]>2024-04-13 18:57:31 +0200
commit9d6e30701b98f856125e55ba3fd26fa6b8f4a280 (patch)
tree08724edc79b66fff5fe0a40ee181e90fcccd0b1c /GNUmakefile
parent85b59e66da5b1741e8625655c49fcd85de379f4e (diff)
downloadtinygo-9d6e30701b98f856125e55ba3fd26fa6b8f4a280.tar.gz
tinygo-9d6e30701b98f856125e55ba3fd26fa6b8f4a280.zip
lint: add "make lint" target, run it from ci
See https://github.com/tinygo-org/tinygo/issues/4225 Runs in both circleci and github, circleci is run on branch push, github is run on PR Revive builds so fast, don't bother installing it; saves us wondering which one we get Uses tools.go idiom to give control over linter versions to go.mod. Also pacifies linter re AppendToGlobal as a token first fix. TODO: gradually expand the number of directories that are linted, uncomment more entries in revive.toml, and fix or suppress the warnings lint finds. TODO: add linters "go vet" and staticcheck NOT TODO: don't add metalinters like golangci-lint that pull in lots of new of dependencies; we'd rather not clutter go.mod that much, let alone open ourselves up to the additional attack surface.
Diffstat (limited to 'GNUmakefile')
-rw-r--r--GNUmakefile6
1 files changed, 6 insertions, 0 deletions
diff --git a/GNUmakefile b/GNUmakefile
index 18ab754e6..8c4f00b29 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -911,3 +911,9 @@ ifneq ($(RELEASEONLY), 1)
release: build/release
deb: build/release
endif
+
+lint:
+ # Only run on compiler dir for now, expand as we clean up other dirs
+ # This obviously won't scale, but it's a start, and it's fast
+ go run github.com/mgechev/revive --version
+ go run github.com/mgechev/revive --config revive.toml compiler/...