Files
Ilker ManapandClaude Opus 5.5 8e8b5568c2 Build with Go 1.26.6, and check for known vulnerabilities
govulncheck found eleven standard-library vulnerabilities reachable from
this code at Go 1.26.3 (net/http, crypto/x509, os.Root, net/textproto); the
go directive raised to 1.26.6 fixes every one. make vuln runs govulncheck;
make check runs it with the tests and vet.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-04 09:43:27 +02:00

55 lines
1.5 KiB
Makefile

MODULE := gitea.mynodes.xyz/ilker/llmgw
VERSION ?= $(shell git describe --tags --always --dirty 2>/dev/null || echo dev)
LDFLAGS := -X '$(MODULE)/internal/version.Version=$(VERSION)'
.PHONY: build test race lint fmt vuln check clean rename proto proto-tools
build:
go build -ldflags "$(LDFLAGS)" -o bin/llmgw ./cmd/llmgw
test:
go test ./...
race:
go test -race ./...
lint:
golangci-lint run
fmt:
go fmt ./...
go vet ./...
# Known vulnerabilities reachable from this code, in the standard library and
# in dependencies. A toolchain left behind is the commonest cause: the go
# directive in go.mod is what fixes it.
vuln:
go run golang.org/x/vuln/cmd/govulncheck@latest ./...
# What has to pass before a change is merged.
check: test
go vet ./...
$(MAKE) vuln
# Regenerate the agent protocol. Generated code is committed, so this only
# needs running when api/proto changes.
proto: proto-tools
buf lint
buf generate
proto-tools:
go install github.com/bufbuild/buf/cmd/buf@latest
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install connectrpc.com/connect/cmd/protoc-gen-connect-go@latest
clean:
rm -rf bin dist
# Change the module path: make rename NEW=git.example.com/team/llmgw
rename:
@test -n "$(NEW)" || (echo "usage: make rename NEW=<new/module/path>"; exit 1)
go mod edit -module=$(NEW)
grep -rl '$(MODULE)' --include='*.go' . | xargs sed -i '' 's|$(MODULE)|$(NEW)|g'
sed -i '' 's|^MODULE := .*|MODULE := $(NEW)|' Makefile
go build ./...