···11+*.o
22+*.a
33+*.pyc
44+#*#
55+*~
66+*.swp
77+.*
88+*.tmp
99+*.old
1010+*.profile
1111+*.bkp
1212+*.bak
1313+[Tt]humbs.db
1414+*.DS_Store
1515+build/
1616+_build/
1717+src/build/
1818+*.log
1919+*.db
2020+/data/
2121+test-coverage.out
2222+2323+# executables
2424+/automod
2525+2626+# Don't ignore this file itself, or other specific dotfiles
2727+!.gitignore
2828+!.github/
+61
Makefile
···11+22+SHELL = /bin/bash
33+.SHELLFLAGS = -o pipefail -c
44+55+# base path for Lexicon document tree (for lexgen)
66+LEXDIR?=../atproto/lexicons
77+88+# https://github.com/golang/go/wiki/LoopvarExperiment
99+export GOEXPERIMENT := loopvar
1010+1111+.PHONY: help
1212+help: ## Print info about all commands
1313+ @echo "Commands:"
1414+ @echo
1515+ @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[01;32m%-20s\033[0m %s\n", $$1, $$2}'
1616+1717+.PHONY: build
1818+build: ## Build all executables
1919+ go build ./cmd/gosky
2020+ go build ./cmd/laputa
2121+ go build ./cmd/bigsky
2222+ go build ./cmd/beemo
2323+ go build ./cmd/lexgen
2424+ go build ./cmd/stress
2525+ go build ./cmd/fakermaker
2626+ go build ./cmd/hepa
2727+ go build ./cmd/supercollider
2828+ go build -o ./sonar-cli ./cmd/sonar
2929+ go build ./cmd/palomar
3030+3131+.PHONY: all
3232+all: build
3333+3434+.PHONY: test
3535+test: ## Run tests
3636+ go test ./...
3737+3838+.PHONY: coverage-html
3939+coverage-html: ## Generate test coverage report and open in browser
4040+ go test ./... -coverpkg=./... -coverprofile=test-coverage.out
4141+ go tool cover -html=test-coverage.out
4242+4343+.PHONY: lint
4444+lint: ## Verify code style and run static checks
4545+ go vet ./...
4646+ test -z $(gofmt -l ./...)
4747+4848+.PHONY: fmt
4949+fmt: ## Run syntax re-formatting (modify in place)
5050+ go fmt ./...
5151+5252+.PHONY: check
5353+check: ## Compile everything, checking syntax (does not output binaries)
5454+ go build ./...
5555+5656+.env:
5757+ if [ ! -f ".env" ]; then cp example.dev.env .env; fi
5858+5959+.PHONY: run-dev-automod
6060+run-dev-automod: .env ## Runs automod for local dev
6161+ GOLOG_LOG_LEVEL=info go run ./cmd/automod run