Skip to content

chore: go mod tidy + package godoc (no breaking changes) - #29

Merged
hadifarnoud merged 2 commits into
masterfrom
chore/deps-tidy-and-docs
May 26, 2026
Merged

chore: go mod tidy + package godoc (no breaking changes)#29
hadifarnoud merged 2 commits into
masterfrom
chore/deps-tidy-and-docs

Conversation

@hadifarnoud

Copy link
Copy Markdown
Member

Summary

Non-breaking dependency hygiene + the godoc half of the docs workstream. No API or behavior changes, no runtime dependency version bumps, go directive stays at 1.18.

  • go mod tidy — moves bsm/redislock and redis/go-redis/v9 from // indirect to direct requires (they're imported directly by hdlm/redislock) and completes go.sum. No version changes → not consumer-facing.
  • Package godoc — added a doc.go package comment to every library package that lacked one (root hexa, db/mgmadapter, hdlm/mongolock, hdlm/redislock, hexamask, hexatranslator, hlog, hlog/logdriver, htel, hurl, lg, probe), so godoc / pkg.go.dev show a useful overview.

Test plan

  • gofmt -l . clean, go vet ./..., go build ./...
  • golangci-lint run ./... (v1.64.8) → EXIT=0 (passes the new hard gate)
  • go test ./... → all pass

⚠️ On the rest of "modernize dependencies" (needs your call)

You asked to bump otel/mongo-driver/zap/go-i18n, but flagged no breaking changes. Those bumps are consumer-facing because hexa re-exports the libraries' types in its public API:

  • otel (the blocker): htel exposes metric.MeterProvider, and otel's metric package had a v0.x → v1.x redesign. You can't bump otel core without pulling the new, incompatible metric API → anyone implementing/passing those types breaks. This is the "crucial but breaking" one — I'd defer it to a coordinated v2 (/v2 module path).
  • mongo-driver / zap / go-i18n: within-major bumps are backward-compatible in semver terms, but they still transitively upgrade consumers' versions of those libs. Lower risk, but still consumer-facing.

So I did not bump any runtime dependency here. Tell me how you'd like to proceed (defer otel to v2; do the within-major mongo/zap/i18n bumps as an accepted transitive upgrade; or hold).

🤖 Generated with Claude Code


Generated by Claude Code

claude added 2 commits May 26, 2026 09:15
Move bsm/redislock and redis/go-redis from indirect to direct requires
(they are imported directly by hdlm/redislock) and complete go.sum. No
version changes and the go directive stays at 1.18, so this is not a
consumer-facing change.

https://claude.ai/code/session_01J46cm6MaKsVpw1YSXGg8eq
Every library package now has a package comment (in a doc.go) describing
its purpose, so godoc / pkg.go.dev render a useful overview. Documentation
only; no API or behavior change.

https://claude.ai/code/session_01J46cm6MaKsVpw1YSXGg8eq
@hadifarnoud
hadifarnoud merged commit 0836b99 into master May 26, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants