chore(server): update Go dependencies - #937
Merged
Merged
Conversation
- github.com/go-chi/chi/v5 v5.3.1 -> v5.3.2 - github.com/sirupsen/logrus v1.9.4 -> v1.10.1 - github.com/stretchr/testify v1.11.1 -> v1.12.1 - golang.org/x/crypto v0.54.0 -> v0.55.0 - golang.org/x/image v0.44.0 -> v0.45.0 go mod tidy also moves github.com/quasilyte/go-ruleguard/dsl out of the indirect block: server/gorules/rules.go imports it directly, so the previous "// indirect" marking was stale. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GQFjRqGZKT7BrfQRz7MQRw
All three OTel version lines and the contrib set move together:
- stable v1.44.0 -> v1.45.0 (otel, trace, metric, sdk, sdk/metric,
otlptrace{,grpc}, otlpmetricgrpc, stdouttrace)
- experimental log v0.20.0 -> v0.21.0 (log, sdk/log, otlploggrpc,
stdoutlog)
- prometheus exporter v0.66.0 -> v0.67.0
- contrib: bridges/otellogrus v0.19.0 -> v0.20.0,
instrumentation/{net/http/otelhttp,runtime} v0.69.0 -> v0.70.0
google.golang.org/grpc v1.82.1 -> v1.83.1 comes with this batch rather
than on its own: the v1.45.0 OTLP gRPC exporters require grpc >= v1.83.0.
Neither v1.45.0 breaking change reaches this code. The otel/log API
removals (Kind/Value/KeyValue) are confined to record construction, which
happens inside the otellogrus bridge; internal/telemetry only names the
log.LoggerProvider interface. The OTLP exporters no longer append default
signal paths to a path-less HTTP endpoint, and every exporter here is gRPC.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GQFjRqGZKT7BrfQRz7MQRw
- modernc.org/sqlite v1.55.0 -> v1.57.0 - modernc.org/libc v1.74.4 -> v1.75.5 (indirect) - modernc.org/memory v1.11.0 -> v1.12.1 (indirect) v1.56.0 was a re-vendor plus a libc bump; v1.57.0 promoted freebsd/386, freebsd/arm and netbsd/amd64. The embedded SQLite engine version is unchanged, so there is no on-disk format change and no action needed for existing installations. Verified against both backends: the SQLite integration tests run against real database files, and the store and migration suites were additionally run with TEST_POSTGRES_DSN set against PostgreSQL 16 (0 skips, 0 failures) to cover the lib/pq and golang-migrate paths CI exercises separately. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GQFjRqGZKT7BrfQRz7MQRw
Bumps the go.mod tool directive from v2.12.2 to v2.13.1, along with the linter dependencies it pulls in (revive v1.16.0, honnef.co/go/tools v0.8.1, ginkgolinter v0.24.0, x/tools v0.49.0, and others). No .golangci.yml changes were needed: the config schema still validates and the suite reports 0 issues, so no linter was renamed, removed, or newly triggered on this codebase. swag stays at v1.16.6 (already current on the v1 line), and server/docs/ regenerates byte-identical. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GQFjRqGZKT7BrfQRz7MQRw
Contributor
|
Warning Review limit reachedNext included review available in 19 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Routine
server/dependency sweep via/update-server-deps. Four commits, one per batch, each built, tested and linted on its own so a regression bisects cleanly.Direct dependencies moved
github.com/go-chi/chi/v5github.com/sirupsen/logrusgithub.com/stretchr/testifygolang.org/x/cryptogolang.org/x/imagego.opentelemetry.io/otel+ stable linego.opentelemetry.io/otel/log+ log linego.opentelemetry.io/otel/exporters/prometheusgo.opentelemetry.io/contrib/bridges/otellogrusgo.opentelemetry.io/contrib/instrumentation/*google.golang.org/grpcmodernc.org/sqlitegithub.com/golangci/golangci-lint/v2(tool)github.com/swaggo/swagstays at v1.16.6 — already current on the v1 line, andserver/docs/regenerates byte-identical.No source changes were needed anywhere in this PR.
Notes on the riskier bumps
OpenTelemetry v1.45.0 — all three version lines plus contrib move together, as they must. Neither v1.45.0 breaking change reaches this code:
otel/logAPI removals (Kind,Value,KeyValue) affect record construction, which happens inside theotellogrusbridge;internal/telemetryonly names thelog.LoggerProviderinterface.grpcmoved in the same commit rather than separately because the v1.45.0 OTLP gRPC exporters requiregrpc >= v1.83.0— holding it back was not an option.Beyond the test suite, I ran the server with all three signals enabled against the stdout exporter and confirmed traces (
POST /api/v1/*,NoteStore.PurgeOldTrashedNotes), 31 log records through theotellogrusbridge, and metrics all emit with no export errors. Worth doing explicitly here: mismatched OTel version lines compile fine and fail at runtime.modernc.org/sqlitev1.57.0 — the production database driver. v1.56.0 was a re-vendor plus a libc bump; v1.57.0 promotedfreebsd/386,freebsd/armandnetbsd/amd64. The embedded SQLite engine version is unchanged, so there is no on-disk format change and no action needed for existing installations.logrusv1.10.1 — first minor in years, so flagging the one user-visible change:TextFormatternow renders[]byteas quoted strings rather than numeric slices, and debug/trace lines get slightly different colors on a TTY. Server log content is otherwise unchanged. Minimum Go is now 1.23, well below this repo's floor.golangci-lintv2.13.1 — no.golangci.ymlchanges were needed: the config schema still validates and the suite reports 0 issues, so no linter was renamed, removed, or newly triggered here.go mod tidyalso movedgithub.com/quasilyte/go-ruleguard/dslout of the indirect block —server/gorules/rules.goimports it directly, so the previous// indirectmarking was simply stale.Held back deliberately
Go 1.27.0. It is released, but nothing in this sweep requires it, and the
godirective is a minimum-version floor for anyone building Jot from source — 1.27.0 currently has no patch release. Keeping it out also keeps a toolchain change from riding along in a dependency diff. When it is taken, it needs all eight locations in one go:server/go.mod, both workflows, theDockerfiledigest,README.md, and three spots inCLAUDE.md.Verification
task check— full pre-PR gate, passing (lint, all tests, docs, migration parity, translations)task test-e2e— 393 passed, 3 skippedtask build-jotctl— builds and runstask gen-docs— no drift inserver/docs/TEST_POSTGRES_DSNset: 0 skips, 0 failures. This is what actually covers thelib/pqand golang-migrate paths a driver bump can break.govulncheck— no vulnerabilities affecting this code. One module-level advisory (GO-2026-5932,x/crypto/openpgpunmaintained) is unreachable: Jot usesx/crypto/bcrypt, and there is no fixed version to move to.API and compatibility
No API-breaking changes; no endpoint, schema, or migration changes. Backend-only, so there is no visual artifact to attach.
Generated by Claude Code