test.run:
	clear
	go fmt ./...
	go test -vet=all -race -timeout 30s -coverprofile cover.out ./...
	go tool cover -func=cover.out
lint:
	clear
	go fmt ./...
	golangci-lint run ./...
	gocyclo -over 10 ./
	gocritic check ./...
	staticcheck ./...
mod:
	clear
	go mod tidy -compat=1.20
	go mod vendor
	go fmt ./...
ex.app:
	clear
	cd ./examples/show_app && \
	go run .
SERVICEURL=./
graph:
	goda graph -f "{{.Package.Name}}" "shared($(SERVICEURL)... )" | dot -Tsvg -o ./docs/graph.svg
dot:
	goda graph -f "{{.Package.Name}}" "shared($(SERVICEURL)... )" > ./docs/graph.dot