crawlkit/docs/publishing.md
2026-05-08 07:10:12 +01:00

1.5 KiB

Publishing Crawlkit

Go modules are published from git tags. There is no separate registry upload.

Release checklist

  1. Rebase crawlkit and every downstream app branch on each repo's origin/main.
  2. Run the crawlkit gate:
go mod tidy
git diff --exit-code -- go.mod go.sum
go vet ./...
go test ./...
  1. Update docs and changelogs in crawlkit plus every downstream app branch that consumes the release.
  2. Test downstream apps against the local checkout through a temporary Go workspace.
  3. Merge crawlkit to main.
  4. Tag the next semver release from main:
git tag -s v0.5.0
git push origin main
git push origin v0.5.0
  1. Prime and verify module proxy visibility:
GOPROXY=https://proxy.golang.org go list -m github.com/openclaw/crawlkit@v0.5.0
go list -m github.com/openclaw/crawlkit@v0.5.0
  1. Bump downstream apps to the new tag and commit their go.mod/go.sum updates:
go get github.com/openclaw/crawlkit@v0.5.0
go mod tidy

pkg.go.dev indexes public modules automatically after the tag is reachable.

Use a patch tag only for narrow bug fixes on the existing API. Use a minor tag for broad crawler infrastructure changes. The module-path move needs a new tag on openclaw/crawlkit before downstream apps can drop local replace lines.

Versioning

Keep v0.x.y while the downstream crawler rewires are still settling. If the module ever reaches v2, Go requires the module path to become:

github.com/openclaw/crawlkit/v2