From d832ab35c7b00068a3c961488232632e3b1c7030 Mon Sep 17 00:00:00 2001 From: Ian Gulliver Date: Sun, 11 Jun 2023 20:32:36 -0700 Subject: [PATCH] Module structure --- .gitignore | 1 + .golangci.yaml | 46 ++++++++++++++++++++++++++++++++++++++++++++++ event.go | 1 + go.mod | 3 +++ justfile | 18 ++++++++++++++++++ 5 files changed, 69 insertions(+) create mode 100644 .gitignore create mode 100644 .golangci.yaml create mode 100644 event.go create mode 100644 go.mod create mode 100644 justfile diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7406bbf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +cover.* diff --git a/.golangci.yaml b/.golangci.yaml new file mode 100644 index 0000000..acc1cc1 --- /dev/null +++ b/.golangci.yaml @@ -0,0 +1,46 @@ +linters: + enable-all: true + disable: + # re-enable when working + - rowserrcheck + - wastedassign + # maybe enable these + - wrapcheck + # leave these disabled + - cyclop + - deadcode + - dupl + - exhaustivestruct + - exhaustruct + - forbidigo + - forcetypeassert + - funlen + - gochecknoglobals + - gocognit + - goconst + - godox + - golint + - gomnd + - ifshort + - interfacer + - lll + - maintidx + - maligned + - nilnil + - nestif + - nlreturn + - nolintlint + - nosnakecase + - scopelint + - structcheck + - thelper + - varcheck + - varnamelen +linters-settings: + tagliatelle: + case: + use-field-name: true + rules: + json: goCamel + wsl: + allow-separated-leading-comment: true diff --git a/event.go b/event.go new file mode 100644 index 0000000..0e4b82e --- /dev/null +++ b/event.go @@ -0,0 +1 @@ +package event diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..3e03d3e --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module github.com/gopatchy/event + +go 1.20 diff --git a/justfile b/justfile new file mode 100644 index 0000000..c2dd020 --- /dev/null +++ b/justfile @@ -0,0 +1,18 @@ +go := env_var_or_default('GOCMD', 'go') + +default: tidy test + +tidy: + {{go}} mod tidy + goimports -l -w . + gofumpt -l -w . + {{go}} fmt ./... + +test: + {{go}} vet ./... + golangci-lint run ./... + {{go}} test -race -coverprofile=cover.out -timeout=60s ./... + {{go}} tool cover -html=cover.out -o=cover.html + +todo: + -git grep -e TODO --and --not -e ignoretodo