demo:
	clear
	go fmt ./...
	go build -race -o ./bin_dev/demo ./cmd/demo/main.go
	./demo.sh
mod:
	clear
	go get -u ./...
	go mod tidy -compat=1.24.0
	go mod vendor
	go fmt ./...

.PHONY: test
test:
	clear
	go fmt ./...
	go test -race -shuffle=on -timeout=30s -coverprofile=./cover.out ./...
	go tool cover -func=./cover.out

lint:
	clear
	go fmt ./...
	golangci-lint run ./...
	gocyclo -over 11 .
	gosec ./...