From 9e2d5f3d3fadd9a546cdb2f1bd22f35be90fc821 Mon Sep 17 00:00:00 2001 From: Ray Karnes Date: Thu, 5 Nov 2026 08:54:29 -0700 Subject: [PATCH] chore(ci): move to Go 1.27.3 across the repo; bump grpc, x/net, goldmark, lint govulncheck now fails every PR on published advisories in Go 1.26.6, golang.org/x/net and google.golang.org/grpc. Every go.mod and go.work now declares Go 1.27.3, the toolchain lines go, and CI reads the version from go.work, so there is one place to change it. golangci-lint moves to v2.15.0, which reads Go 1.27. Signed-off-by: Ray Karnes Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01X68YCZWjmAU3PYkJ2rFP83 --- .github/workflows/ci.yml | 12 +++---- .github/workflows/codeql.yml | 2 +- .github/workflows/docs-deploy.yml | 2 +- .github/workflows/release.yml | 10 ++---- .github/workflows/sink.yml | 13 ++++--- .github/workflows/source.yml | 13 ++++--- .github/workflows/test.yml | 7 ++-- CONTRIBUTING.md | 9 ++--- SECURITY.md | 10 +++--- STABILITY.md | 5 +++ cluster/CHANGELOG.md | 4 +++ cluster/go.mod | 4 +-- cmd/crucible/CHANGELOG.md | 4 +++ cmd/crucible/go.mod | 8 ++--- cmd/crucible/go.sum | 12 +++---- durable/CHANGELOG.md | 4 +++ durable/go.mod | 4 +-- e2e/go.mod | 18 +++++----- e2e/go.sum | 36 ++++++++++---------- examples/dispatch/CHANGELOG.md | 6 ++++ examples/dispatch/go.mod | 21 +++++------- examples/dispatch/go.sum | 24 ++++++------- examples/fooddelivery/go.mod | 4 +-- examples/sinkflow/go.mod | 4 +-- examples/sourcedrive/go.mod | 4 +-- gen/CHANGELOG.md | 4 +++ gen/eject_test.go | 2 +- gen/go.mod | 2 +- go.work | 4 +-- magefiles/go.mod | 4 +-- magefiles/magefile.go | 2 +- sink/CHANGELOG.md | 4 +++ sink/bridge/CHANGELOG.md | 4 +++ sink/bridge/go.mod | 4 +-- sink/cloudwatch/CHANGELOG.md | 4 +++ sink/cloudwatch/go.mod | 4 +-- sink/dynamo/CHANGELOG.md | 4 +++ sink/dynamo/go.mod | 5 ++- sink/eventbridge/CHANGELOG.md | 4 +++ sink/eventbridge/go.mod | 4 +-- sink/file/CHANGELOG.md | 4 +++ sink/file/go.mod | 4 +-- sink/firehose/CHANGELOG.md | 4 +++ sink/firehose/go.mod | 4 +-- sink/gcppubsub/CHANGELOG.md | 4 +++ sink/gcppubsub/go.mod | 29 +++++++--------- sink/gcppubsub/go.sum | 56 +++++++++++++++---------------- sink/go.mod | 4 +-- sink/http/CHANGELOG.md | 4 +++ sink/http/go.mod | 4 +-- sink/kafka/CHANGELOG.md | 4 +++ sink/kafka/go.mod | 5 ++- sink/kinesis/CHANGELOG.md | 4 +++ sink/kinesis/go.mod | 4 +-- sink/nats/CHANGELOG.md | 4 +++ sink/nats/go.mod | 4 +-- sink/otel/CHANGELOG.md | 4 +++ sink/otel/go.mod | 4 +-- sink/prometheus/CHANGELOG.md | 4 +++ sink/prometheus/go.mod | 4 +-- sink/redis/CHANGELOG.md | 4 +++ sink/redis/go.mod | 4 +-- sink/s3/CHANGELOG.md | 4 +++ sink/s3/go.mod | 5 ++- sink/slog/CHANGELOG.md | 4 +++ sink/slog/go.mod | 4 +-- sink/sns/CHANGELOG.md | 4 +++ sink/sns/go.mod | 4 +-- sink/sql/CHANGELOG.md | 4 +++ sink/sql/go.mod | 4 +-- sink/sqs/CHANGELOG.md | 4 +++ sink/sqs/go.mod | 4 +-- sink/statsd/CHANGELOG.md | 4 +++ sink/statsd/go.mod | 4 +-- sink/timestream/CHANGELOG.md | 4 +++ sink/timestream/go.mod | 5 ++- source/CHANGELOG.md | 6 ++++ source/cloudevents/go.mod | 4 +-- source/go.mod | 4 +-- source/jetstream/go.mod | 4 +-- source/kafka/CHANGELOG.md | 6 ++++ source/kafka/go.mod | 4 +-- source/kafka/integration/go.mod | 4 +-- source/redis/go.mod | 4 +-- source/statemachine/CHANGELOG.md | 4 +++ source/statemachine/go.mod | 4 +-- state/CHANGELOG.md | 6 ++++ state/expr/CHANGELOG.md | 4 +++ state/expr/go.mod | 2 +- state/go.mod | 2 +- telemetry/CHANGELOG.md | 4 +++ telemetry/datadog/CHANGELOG.md | 4 +++ telemetry/datadog/go.mod | 4 +-- telemetry/go.mod | 3 +- telemetry/otel/CHANGELOG.md | 4 +++ telemetry/otel/go.mod | 4 +-- telemetry/slog/README.md | 2 ++ telemetry/slog/go.mod | 4 +-- tools/docsgen/go.mod | 4 +-- transport/README.md | 2 ++ transport/go.mod | 21 ++++-------- transport/go.sum | 20 +++++------ wasm/CHANGELOG.md | 4 +++ wasm/go.mod | 4 +-- 104 files changed, 393 insertions(+), 268 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2631814e..927a6923 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ concurrency: cancel-in-progress: true env: - GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.12.2 + GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.15.0 GOVULNCHECK: golang.org/x/vuln/cmd/govulncheck@v1.3.0 # benchstat lives in golang.org/x/perf, which ships only pseudo-versions. # Pinned to the latest published pseudo-version so every run uses the same tool. @@ -72,7 +72,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" - name: golangci-lint (state) working-directory: state @@ -178,7 +178,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" - name: govulncheck (state) working-directory: state @@ -254,7 +254,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" - name: coverage gate (state) working-directory: state @@ -494,7 +494,7 @@ jobs: fetch-depth: 0 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the (relatively expensive) bench run on docs-only PRs. The gate only @@ -567,7 +567,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Regenerate the API reference (gomarkdoc) and Mermaid diagram partials from # the Go source before the site build, so the PR docs build validates the diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index a886be47..0a1255ae 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -39,7 +39,7 @@ jobs: # code seen during build". Starting cold guarantees real compilation. - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache: false # Go does not support build-mode: none, so extraction is traced through a diff --git a/.github/workflows/docs-deploy.yml b/.github/workflows/docs-deploy.yml index 9d96bc20..facd15db 100644 --- a/.github/workflows/docs-deploy.yml +++ b/.github/workflows/docs-deploy.yml @@ -44,7 +44,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Regenerate derived docs content before the site build so the published # API reference (gomarkdoc) and Mermaid diagram partials stay current with diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 06b252c7..01c43d4e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,7 +19,7 @@ permissions: contents: read env: - GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.12.2 + GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.15.0 GOVULNCHECK: golang.org/x/vuln/cmd/govulncheck@v1.3.0 # Run every step under bash on all runners, including Windows. Windows runners @@ -58,7 +58,6 @@ jobs: strategy: fail-fast: false matrix: - go: ["1.25.14", "1.26.6"] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} env: @@ -73,7 +72,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: ${{ matrix.go }} + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when @@ -85,12 +84,7 @@ jobs: - name: govulncheck working-directory: ${{ env.MODULE }} run: go run "$GOVULNCHECK" ./... - # Lint runs only on the newest Go leg: golangci-lint is compiled by the - # active toolchain, and an older one (go1.25) refuses a module targeting - # a newer language version (module toolchain directives), which would - # fail the 1.25.x legs spuriously. Test -race still covers those legs. - name: golangci-lint - if: matrix.go == '1.26.6' working-directory: ${{ env.MODULE }} run: go run "$GOLANGCI_LINT" run --config "$GITHUB_WORKSPACE/.golangci.yml" ./... - name: coverage gate diff --git a/.github/workflows/sink.yml b/.github/workflows/sink.yml index 8f9be1db..0165c58a 100644 --- a/.github/workflows/sink.yml +++ b/.github/workflows/sink.yml @@ -3,7 +3,7 @@ name: sink # Reusable sink test suite. Groups every sink-domain check under a single # collapsible "sink / …" tree in the checks UI rather than sprawling across the # top-level check list: -# - unit: race tests for the in-workspace sink modules (Go × OS). +# - unit: race tests for the in-workspace sink modules (OS). # - sink-destinations: the SDK-backed destinations, built GOWORK=off via their # own replace directives, with lint/vuln/coverage on Linux. # - integration: the `integration`-tagged end-to-end leg (GOWORK=off). @@ -12,7 +12,7 @@ on: workflow_call: env: - GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.12.2 + GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.15.0 GOVULNCHECK: golang.org/x/vuln/cmd/govulncheck@v1.3.0 permissions: @@ -20,13 +20,12 @@ permissions: jobs: # Race tests for the in-workspace sink modules (sink core + the hermetic, - # SDK-free adapters), across the Go × OS matrix. These live in the workspace, + # SDK-free adapters), across the OS matrix. These live in the workspace, # so they build without GOWORK=off — same as the state-machine unit matrix. unit: strategy: fail-fast: false matrix: - go: ["1.25.14", "1.26.6"] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} env: @@ -35,7 +34,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: ${{ matrix.go }} + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when @@ -86,7 +85,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when @@ -153,7 +152,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when diff --git a/.github/workflows/source.yml b/.github/workflows/source.yml index 02adbcb4..fe3ca7c6 100644 --- a/.github/workflows/source.yml +++ b/.github/workflows/source.yml @@ -3,7 +3,7 @@ name: source # Reusable source test suite. Groups every source-domain check under a single # collapsible "source / …" tree in the checks UI rather than sprawling across the # top-level check list: -# - unit: race tests for the in-workspace source modules (Go × OS). +# - unit: race tests for the in-workspace source modules (OS). # - source-destinations: the SDK-backed source modules, built GOWORK=off via # their own replace directives, with lint/vuln/coverage # on Linux. @@ -13,7 +13,7 @@ on: workflow_call: env: - GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.12.2 + GOLANGCI_LINT: github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.15.0 GOVULNCHECK: golang.org/x/vuln/cmd/govulncheck@v1.3.0 permissions: @@ -21,14 +21,13 @@ permissions: jobs: # Race tests for the in-workspace source modules (source core + the - # stdlib-only statemachine adapter), across the Go × OS matrix. These live in + # stdlib-only statemachine adapter), across the OS matrix. These live in # the workspace, so they build without GOWORK=off — same as the state-machine # unit matrix. unit: strategy: fail-fast: false matrix: - go: ["1.25.14", "1.26.6"] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} env: @@ -37,7 +36,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: ${{ matrix.go }} + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when @@ -76,7 +75,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when @@ -129,7 +128,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: "1.26.6" + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e35a6b40..46395360 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,9 +1,9 @@ name: tests # Reusable race-test matrix for the state-machine modules. Runs `go test -race -# ./...` for each module across the Go × OS matrix. Called by ci.yml so the legs +# ./...` for each module across the OS matrix. Called by ci.yml so the legs # render as a single collapsible tree in the checks UI (e.g. "state machine tests -# / test (1.25.14, ubuntu-latest)") instead of cluttering the top-level checks +# / test (ubuntu-latest)") instead of cluttering the top-level checks # list. The sink-domain modules have their own reusable workflow (sink.yml). on: workflow_call: @@ -21,7 +21,6 @@ jobs: strategy: fail-fast: false matrix: - go: ["1.25.14", "1.26.6"] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} env: @@ -30,7 +29,7 @@ jobs: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: - go-version: ${{ matrix.go }} + go-version-file: go.work cache-dependency-path: "**/go.sum" # Skip the Go cache save on Windows: the tar/zstd cache-save post-step # flakes intermittently on windows-latest and fails the job even when diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 40f73962..d9e7a302 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -90,7 +90,7 @@ let them bring their own? If it forces, redesign it as a seam with a no-op defau - One shared **golangci-lint** config plus **gofumpt**, **staticcheck**, and **govulncheck**, all in CI, with **pinned tool versions** so every contributor and CI run uses the same toolchain. -- **Trunk-based development** with a CI matrix over Go versions × OS, and +- **Trunk-based development** with a CI matrix over OS, and **conventional + signed commits**. ### Supply chain @@ -104,7 +104,8 @@ let them bring their own? If it forces, redesign it as a seam with a no-op defau Requirements: -- **Go**: one of the last two minor releases (see [Supported versions](./SECURITY.md)). +- **Go**: 1.27.3, the version every `go.mod` and `go.work` declares. CI reads it from + `go.work`. - **[Mage](https://magefile.org)**: the build tool. Install with `go install github.com/magefile/mage@latest`, or run targets via `go run github.com/magefile/mage `. @@ -135,7 +136,7 @@ Run `mage -l` to list everything. Each target iterates the suite's modules. Before you push, **tests, lint, vet, and `govulncheck` must all pass.** The quickest way to verify locally is `mage check`. CI runs the same gates across a -Go-version × OS matrix on every PR. +OS matrix on every PR. Docs-only pull requests (changing only `*.md`, `docs/`, `LICENSE`, or `NOTICE`) skip the Go matrix automatically and are gated solely by the aggregate `gate` @@ -223,7 +224,7 @@ is a tag push; the `Release` workflow does the rest. 4. **The workflow takes over.** On the tag push, `Release` re-runs the full validation gate (lint, `-race` tests, `govulncheck`, coverage threshold) for - the tagged module across the Go × OS matrix, then publishes a GitHub release + the tagged module across the OS matrix, then publishes a GitHub release with generated notes. A tag never publishes unless the gate is green. ## Questions & design diff --git a/SECURITY.md b/SECURITY.md index b586d410..9542e694 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -2,13 +2,11 @@ ## Supported versions -Crucible follows Go's own support window. Security fixes are provided for: +Security fixes are provided for the **latest released version** of each module. Its +`go.mod` states the Go version it requires, which can be newer than Go's oldest +supported release. -- The **latest released version** of each module, and -- Versions that build against the **last two minor releases of Go**. - -Older versions and versions built against unsupported Go releases do not receive -security updates. +Older versions do not receive security updates. ## Reporting a vulnerability diff --git a/STABILITY.md b/STABILITY.md index dc1db006..c88ff4bf 100644 --- a/STABILITY.md +++ b/STABILITY.md @@ -24,6 +24,11 @@ benchmarked, not stubs. The label is about *contract stability*, not quality: pi exact version, read the module's `CHANGELOG.md` before upgrading, and expect the API to move until the module graduates to v1. +## Go version + +Every module declares the same Go version. Raising it is at least a minor release for +each module, and the module's changelog says so. + ## Graduation to v1 Promoting an experimental module to v1 means committing to a frozen public contract diff --git a/cluster/CHANGELOG.md b/cluster/CHANGELOG.md index 64d56e3b..c18a5829 100644 --- a/cluster/CHANGELOG.md +++ b/cluster/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - **`Supervisor.Forget`.** Discards a supervisor's per-actor restart bookkeeping diff --git a/cluster/go.mod b/cluster/go.mod index 5f112fa9..5d2a8574 100644 --- a/cluster/go.mod +++ b/cluster/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/cluster -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/state => ../state require github.com/stablekernel/crucible/state v0.0.0-00010101000000-000000000000 diff --git a/cmd/crucible/CHANGELOG.md b/cmd/crucible/CHANGELOG.md index b6b58f82..b0cb80a8 100644 --- a/cmd/crucible/CHANGELOG.md +++ b/cmd/crucible/CHANGELOG.md @@ -7,6 +7,10 @@ versioned independently of the `state` module. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Machine visualizer: `render -format svg` renders the machine directly to a diff --git a/cmd/crucible/go.mod b/cmd/crucible/go.mod index d8a83eb1..16de5a18 100644 --- a/cmd/crucible/go.mod +++ b/cmd/crucible/go.mod @@ -1,6 +1,6 @@ module github.com/stablekernel/crucible/cmd/crucible -go 1.25.0 +go 1.27.3 require ( github.com/stablekernel/crucible/gen v0.1.0 @@ -22,10 +22,10 @@ require ( github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/mazznoer/csscolorparser v0.1.5 // indirect github.com/rivo/uniseg v0.4.7 // indirect - github.com/yuin/goldmark v1.7.4 // indirect + github.com/yuin/goldmark v1.7.17 // indirect golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 // indirect golang.org/x/image v0.21.0 // indirect - golang.org/x/net v0.35.0 // indirect - golang.org/x/text v0.35.0 // indirect + golang.org/x/net v0.62.0 // indirect + golang.org/x/text v0.43.0 // indirect golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect ) diff --git a/cmd/crucible/go.sum b/cmd/crucible/go.sum index 4d083fe2..1a8028fc 100644 --- a/cmd/crucible/go.sum +++ b/cmd/crucible/go.sum @@ -43,8 +43,8 @@ github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8 github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU= github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yuin/goldmark v1.7.4 h1:BDXOHExt+A7gwPCJgPIIq7ENvceR7we7rOS9TNoLZeg= -github.com/yuin/goldmark v1.7.4/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= +github.com/yuin/goldmark v1.7.17 h1:p36OVWwRb246iHxA/U4p8OPEpOTESm4n+g+8t0EE5uA= +github.com/yuin/goldmark v1.7.17/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= @@ -60,8 +60,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= -golang.org/x/net v0.35.0 h1:T5GQRQb2y08kTAByq9L4/bz8cipCdA8FbRTXewonqY8= -golang.org/x/net v0.35.0/go.mod h1:EglIi67kWsHKlRzzVMUD93VMSWGFOMSZgxFjparz1Qk= +golang.org/x/net v0.62.0 h1:18ELalfM5+XNRwzM2nYqXsZQ9ByS1uhj2O/U7+5jqRY= +golang.org/x/net v0.62.0/go.mod h1:WgDCOTH8iwtB66T4/GfI94AHo/hhdb7Hah9NDseQfiI= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -81,8 +81,8 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.35.0 h1:JOVx6vVDFokkpaq1AEptVzLTpDe9KGpj5tR4/X+ybL8= -golang.org/x/text v0.35.0/go.mod h1:khi/HExzZJ2pGnjenulevKNX1W67CUy0AsXcNubPGCA= +golang.org/x/text v0.43.0 h1:1QivrlhwAsnMOcqgOdl9my7s9OyZl8O5/UGUTJVXoWc= +golang.org/x/text v0.43.0/go.mod h1:hbSIYA/amXcRXTFSZqh8tWHEoqRvvbKPJ2uz/KU+a+s= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= diff --git a/durable/CHANGELOG.md b/durable/CHANGELOG.md index e3d42712..ed258652 100644 --- a/durable/CHANGELOG.md +++ b/durable/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Fixed - **Recording-clock buffer race.** Closing a step's `Record` (draining the diff --git a/durable/go.mod b/durable/go.mod index 83dedaf0..48cd8224 100644 --- a/durable/go.mod +++ b/durable/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/durable -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/state => ../state require github.com/stablekernel/crucible/state v0.0.0-00010101000000-000000000000 diff --git a/e2e/go.mod b/e2e/go.mod index 05e90bde..e15a22c2 100644 --- a/e2e/go.mod +++ b/e2e/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/e2e -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace ( github.com/stablekernel/crucible/cluster => ../cluster github.com/stablekernel/crucible/durable => ../durable @@ -23,12 +23,12 @@ require ( github.com/stablekernel/crucible/sink/bridge v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/source v0.0.0 github.com/stablekernel/crucible/source/statemachine v0.0.0-00010101000000-000000000000 - github.com/stablekernel/crucible/state v0.0.0 + github.com/stablekernel/crucible/state v1.0.0 github.com/stablekernel/crucible/state/expr v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/telemetry v0.0.0 github.com/stablekernel/crucible/transport v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/wasm v0.0.0-00010101000000-000000000000 - google.golang.org/grpc v1.81.1 + google.golang.org/grpc v1.83.2 ) require ( @@ -39,10 +39,10 @@ require ( github.com/tetratelabs/wazero v1.12.0 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/exp v0.0.0-20260209203927-2842357ff358 // indirect - golang.org/x/net v0.51.0 // indirect - golang.org/x/sys v0.45.0 // indirect - golang.org/x/text v0.35.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 // indirect + golang.org/x/net v0.62.0 // indirect + golang.org/x/sys v0.49.0 // indirect + golang.org/x/text v0.43.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect google.golang.org/protobuf v1.36.11 // indirect ) diff --git a/e2e/go.sum b/e2e/go.sum index 44520374..267368b1 100644 --- a/e2e/go.sum +++ b/e2e/go.sum @@ -29,32 +29,32 @@ go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y= go.opentelemetry.io/otel v1.44.0 h1:JjwHmHpA4iZ3wBxluu2fbbE7j4kqlE8jXyAyPXH7HqU= go.opentelemetry.io/otel v1.44.0/go.mod h1:BMgjTHL9WPRlRjL2oZCBTL4whCGtXch2H4BhOPIAyYc= -go.opentelemetry.io/otel/metric v1.43.0 h1:d7638QeInOnuwOONPp4JAOGfbCEpYb+K6DVWvdxGzgM= -go.opentelemetry.io/otel/metric v1.43.0/go.mod h1:RDnPtIxvqlgO8GRW18W6Z/4P462ldprJtfxHxyKd2PY= -go.opentelemetry.io/otel/sdk v1.43.0 h1:pi5mE86i5rTeLXqoF/hhiBtUNcrAGHLKQdhg4h4V9Dg= -go.opentelemetry.io/otel/sdk v1.43.0/go.mod h1:P+IkVU3iWukmiit/Yf9AWvpyRDlUeBaRg6Y+C58QHzg= +go.opentelemetry.io/otel/metric v1.44.0 h1:1w0gILTcHdr3YI+ixLyjemwrVnsMURbTZFrSYCdDdmc= +go.opentelemetry.io/otel/metric v1.44.0/go.mod h1:8O7hanEPBNgEMmybD3s2VBKcgWOCsA6tzHBPODAiquo= +go.opentelemetry.io/otel/sdk v1.44.0 h1:nHYwb9lK+fJPU/dnT6s7W7Z8itMWyqrnVfbheVYrZ58= +go.opentelemetry.io/otel/sdk v1.44.0/go.mod h1:Osuydd3Se74nqjAKxid74N5eC+jfEqfTegHRnq58oK0= go.opentelemetry.io/otel/sdk/metric v1.44.0 h1:3LlKgI+VjbVsjNRFZJZAJ30WjXC5VkNRks6si09iEfI= go.opentelemetry.io/otel/sdk/metric v1.44.0/go.mod h1:5B5pMARnXxKhltooO4xUuCBorl65a4EpnTalObqOigA= -go.opentelemetry.io/otel/trace v1.43.0 h1:BkNrHpup+4k4w+ZZ86CZoHHEkohws8AY+WTX09nk+3A= -go.opentelemetry.io/otel/trace v1.43.0/go.mod h1:/QJhyVBUUswCphDVxq+8mld+AvhXZLhe+8WVFxiFff0= +go.opentelemetry.io/otel/trace v1.44.0 h1:jxF5CsGYCe74MCRx2X4g7WsY/VBKRqqpNvXlX/6gtIk= +go.opentelemetry.io/otel/trace v1.44.0/go.mod h1:oLl1jrMQAVo6v3GAggN+1VH9VIz9iUSvW53sW1Q8PIE= go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= golang.org/x/exp v0.0.0-20260209203927-2842357ff358 h1:kpfSV7uLwKJbFSEgNhWzGSL47NDSF/5pYYQw1V0ub6c= golang.org/x/exp v0.0.0-20260209203927-2842357ff358/go.mod h1:R3t0oliuryB5eenPWl3rrQxwnNM3WTwnsRZZiXLAAW8= -golang.org/x/net v0.51.0 h1:94R/GTO7mt3/4wIKpcR5gkGmRLOuE/2hNGeWq/GBIFo= -golang.org/x/net v0.51.0/go.mod h1:aamm+2QF5ogm02fjy5Bb7CQ0WMt1/WVM7FtyaTLlA9Y= -golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= -golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/text v0.35.0 h1:JOVx6vVDFokkpaq1AEptVzLTpDe9KGpj5tR4/X+ybL8= -golang.org/x/text v0.35.0/go.mod h1:khi/HExzZJ2pGnjenulevKNX1W67CUy0AsXcNubPGCA= +golang.org/x/net v0.62.0 h1:18ELalfM5+XNRwzM2nYqXsZQ9ByS1uhj2O/U7+5jqRY= +golang.org/x/net v0.62.0/go.mod h1:WgDCOTH8iwtB66T4/GfI94AHo/hhdb7Hah9NDseQfiI= +golang.org/x/sys v0.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA= +golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og= +golang.org/x/text v0.43.0 h1:1QivrlhwAsnMOcqgOdl9my7s9OyZl8O5/UGUTJVXoWc= +golang.org/x/text v0.43.0/go.mod h1:hbSIYA/amXcRXTFSZqh8tWHEoqRvvbKPJ2uz/KU+a+s= gonum.org/v1/gonum v0.17.0 h1:VbpOemQlsSMrYmn7T2OUvQ4dqxQXU+ouZFQsZOx50z4= gonum.org/v1/gonum v0.17.0/go.mod h1:El3tOrEuMpv2UdMrbNlKEh9vd86bmQ6vqIcDwxEOc1E= -google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 h1:tu/dtnW1o3wfaxCOjSLn5IRX4YDcJrtlpzYkhHhGaC4= -google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171/go.mod h1:M5krXqk4GhBKvB596udGL3UyjL4I1+cTbK0orROM9ng= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 h1:ggcbiqK8WWh6l1dnltU4BgWGIGo+EVYxCaAPih/zQXQ= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= -google.golang.org/grpc v1.81.1 h1:VnnIIZ88UzOOKLukQi+ImGz8O1Wdp8nAGGnvOfEIWQQ= -google.golang.org/grpc v1.81.1/go.mod h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I= +google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa h1:Kjn0N0tCrDgiAFW+lGO4JZ3ck44CehvJQMAwj9QF0G8= +google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:q4lMZS6kskjT5HvCPrnnypcDPVJqT/f4nfxmkE7gryY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa h1:mZHHdPZl0dbGHCflZgAq/Q468DWVFcU2whhB2KAo8fk= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +google.golang.org/grpc v1.83.2 h1:EManeRomTObA0BU7I8vXgg/78uE5MJ9M8B39EX2WscU= +google.golang.org/grpc v1.83.2/go.mod h1:YPI1hK3kDked6iHvgX3tR0y+nX/qpMFKhPgFsokw1S8= google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/examples/dispatch/CHANGELOG.md b/examples/dispatch/CHANGELOG.md index 4632976b..ff19f846 100644 --- a/examples/dispatch/CHANGELOG.md +++ b/examples/dispatch/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to `crucible/examples/dispatch` are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] + +### Changed + +- Requires Go 1.27.3. + ## [0.1.0] The first release of the flagship Crucible showcase. It takes the food-delivery diff --git a/examples/dispatch/go.mod b/examples/dispatch/go.mod index e9f146d4..b6ec1c8d 100644 --- a/examples/dispatch/go.mod +++ b/examples/dispatch/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/examples/dispatch -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/state => ../../state replace github.com/stablekernel/crucible/state/expr => ../../state/expr @@ -24,12 +24,12 @@ require ( github.com/stablekernel/crucible/cluster v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/durable v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/examples/fooddelivery v0.0.0-00010101000000-000000000000 - github.com/stablekernel/crucible/state v0.0.0-00010101000000-000000000000 + github.com/stablekernel/crucible/state v1.0.0 github.com/stablekernel/crucible/telemetry v0.0.0 github.com/stablekernel/crucible/telemetry/slog v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/transport v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/wasm v0.0.0-00010101000000-000000000000 - google.golang.org/grpc v1.81.1 + google.golang.org/grpc v1.83.2 ) require ( @@ -38,15 +38,12 @@ require ( github.com/google/cel-go v0.28.1 // indirect github.com/stablekernel/crucible/state/expr v0.0.0-00010101000000-000000000000 // indirect github.com/tetratelabs/wazero v1.12.0 // indirect - go.opentelemetry.io/otel/metric v1.44.0 // indirect - go.opentelemetry.io/otel/sdk v1.44.0 // indirect - go.opentelemetry.io/otel/trace v1.44.0 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/exp v0.0.0-20260209203927-2842357ff358 // indirect - golang.org/x/net v0.51.0 // indirect - golang.org/x/sys v0.45.0 // indirect - golang.org/x/text v0.35.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 // indirect + golang.org/x/net v0.62.0 // indirect + golang.org/x/sys v0.49.0 // indirect + golang.org/x/text v0.43.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect google.golang.org/protobuf v1.36.11 // indirect ) diff --git a/examples/dispatch/go.sum b/examples/dispatch/go.sum index d4d7029c..070911fa 100644 --- a/examples/dispatch/go.sum +++ b/examples/dispatch/go.sum @@ -40,20 +40,20 @@ go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= golang.org/x/exp v0.0.0-20260209203927-2842357ff358 h1:kpfSV7uLwKJbFSEgNhWzGSL47NDSF/5pYYQw1V0ub6c= golang.org/x/exp v0.0.0-20260209203927-2842357ff358/go.mod h1:R3t0oliuryB5eenPWl3rrQxwnNM3WTwnsRZZiXLAAW8= -golang.org/x/net v0.51.0 h1:94R/GTO7mt3/4wIKpcR5gkGmRLOuE/2hNGeWq/GBIFo= -golang.org/x/net v0.51.0/go.mod h1:aamm+2QF5ogm02fjy5Bb7CQ0WMt1/WVM7FtyaTLlA9Y= -golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= -golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/text v0.35.0 h1:JOVx6vVDFokkpaq1AEptVzLTpDe9KGpj5tR4/X+ybL8= -golang.org/x/text v0.35.0/go.mod h1:khi/HExzZJ2pGnjenulevKNX1W67CUy0AsXcNubPGCA= +golang.org/x/net v0.62.0 h1:18ELalfM5+XNRwzM2nYqXsZQ9ByS1uhj2O/U7+5jqRY= +golang.org/x/net v0.62.0/go.mod h1:WgDCOTH8iwtB66T4/GfI94AHo/hhdb7Hah9NDseQfiI= +golang.org/x/sys v0.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA= +golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og= +golang.org/x/text v0.43.0 h1:1QivrlhwAsnMOcqgOdl9my7s9OyZl8O5/UGUTJVXoWc= +golang.org/x/text v0.43.0/go.mod h1:hbSIYA/amXcRXTFSZqh8tWHEoqRvvbKPJ2uz/KU+a+s= gonum.org/v1/gonum v0.17.0 h1:VbpOemQlsSMrYmn7T2OUvQ4dqxQXU+ouZFQsZOx50z4= gonum.org/v1/gonum v0.17.0/go.mod h1:El3tOrEuMpv2UdMrbNlKEh9vd86bmQ6vqIcDwxEOc1E= -google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 h1:tu/dtnW1o3wfaxCOjSLn5IRX4YDcJrtlpzYkhHhGaC4= -google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171/go.mod h1:M5krXqk4GhBKvB596udGL3UyjL4I1+cTbK0orROM9ng= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 h1:ggcbiqK8WWh6l1dnltU4BgWGIGo+EVYxCaAPih/zQXQ= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= -google.golang.org/grpc v1.81.1 h1:VnnIIZ88UzOOKLukQi+ImGz8O1Wdp8nAGGnvOfEIWQQ= -google.golang.org/grpc v1.81.1/go.mod h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I= +google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa h1:Kjn0N0tCrDgiAFW+lGO4JZ3ck44CehvJQMAwj9QF0G8= +google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:q4lMZS6kskjT5HvCPrnnypcDPVJqT/f4nfxmkE7gryY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa h1:mZHHdPZl0dbGHCflZgAq/Q468DWVFcU2whhB2KAo8fk= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +google.golang.org/grpc v1.83.2 h1:EManeRomTObA0BU7I8vXgg/78uE5MJ9M8B39EX2WscU= +google.golang.org/grpc v1.83.2/go.mod h1:YPI1hK3kDked6iHvgX3tR0y+nX/qpMFKhPgFsokw1S8= google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/examples/fooddelivery/go.mod b/examples/fooddelivery/go.mod index db0075df..6d32aa8c 100644 --- a/examples/fooddelivery/go.mod +++ b/examples/fooddelivery/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/examples/fooddelivery -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/state => ../../state replace github.com/stablekernel/crucible/state/expr => ../../state/expr diff --git a/examples/sinkflow/go.mod b/examples/sinkflow/go.mod index cd5f87ee..ff519e9c 100644 --- a/examples/sinkflow/go.mod +++ b/examples/sinkflow/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/examples/sinkflow -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/sink v0.0.0 github.com/stablekernel/crucible/sink/bridge v0.0.0 diff --git a/examples/sourcedrive/go.mod b/examples/sourcedrive/go.mod index bf6251b5..1b541eb9 100644 --- a/examples/sourcedrive/go.mod +++ b/examples/sourcedrive/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/examples/sourcedrive -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/source v0.0.0 github.com/stablekernel/crucible/source/kafka v0.0.0 diff --git a/gen/CHANGELOG.md b/gen/CHANGELOG.md index 0ab16410..90810235 100644 --- a/gen/CHANGELOG.md +++ b/gen/CHANGELOG.md @@ -6,6 +6,10 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ## [0.1.0] - 2026-06-13 ### Added diff --git a/gen/eject_test.go b/gen/eject_test.go index f4c0d191..90ba21c1 100644 --- a/gen/eject_test.go +++ b/gen/eject_test.go @@ -175,7 +175,7 @@ func TestEject_CompilesAndWires(t *testing.T) { } tmp := t.TempDir() - gomod := "module genout\n\ngo 1.25.11\n\nrequire github.com/stablekernel/crucible/state v0.0.0\n\nreplace github.com/stablekernel/crucible/state => " + stateAbs + "\n" + gomod := "module genout\n\ngo 1.27.3\n\nrequire github.com/stablekernel/crucible/state v0.0.0\n\nreplace github.com/stablekernel/crucible/state => " + stateAbs + "\n" writeFile(t, filepath.Join(tmp, "go.mod"), gomod) writeFile(t, filepath.Join(tmp, "gen.go"), string(src)) diff --git a/gen/go.mod b/gen/go.mod index 2b48e069..f569383e 100644 --- a/gen/go.mod +++ b/gen/go.mod @@ -1,5 +1,5 @@ module github.com/stablekernel/crucible/gen -go 1.25 +go 1.27.3 require github.com/stablekernel/crucible/state v1.0.0 diff --git a/go.work b/go.work index af30c3ec..4b2b7fea 100644 --- a/go.work +++ b/go.work @@ -1,6 +1,4 @@ -go 1.25.11 - -toolchain go1.26.4 +go 1.27.3 // Sink and source modules with a non-stdlib dependency are intentionally NOT // listed here: the SDK-backed sink destinations (the AWS family, redis, nats, diff --git a/magefiles/go.mod b/magefiles/go.mod index 811f79a4..ee4d7ec2 100644 --- a/magefiles/go.mod +++ b/magefiles/go.mod @@ -1,5 +1,5 @@ module github.com/stablekernel/crucible/magefiles -go 1.25 -toolchain go1.26.4 +go 1.27.3 + require github.com/magefile/mage v1.17.2 diff --git a/magefiles/magefile.go b/magefiles/magefile.go index bf4c272b..52f9fae4 100644 --- a/magefiles/magefile.go +++ b/magefiles/magefile.go @@ -66,7 +66,7 @@ var sourceDestinations = []string{ // Pinned tool versions — keep in sync with .github/workflows/ci.yml. const ( - golangciLint = "github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.12.2" + golangciLint = "github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.15.0" govulncheck = "golang.org/x/vuln/cmd/govulncheck@v1.3.0" // benchstat ships only pseudo-versions from golang.org/x/perf; pinned so // local BenchCompare runs match the CI benchmark gate exactly. diff --git a/sink/CHANGELOG.md b/sink/CHANGELOG.md index 457c2165..c5cff260 100644 --- a/sink/CHANGELOG.md +++ b/sink/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Fire-and-forget fan-out `Manifold`: one `Sink(ctx, payload)` call fans a diff --git a/sink/bridge/CHANGELOG.md b/sink/bridge/CHANGELOG.md index 64f3e133..da7146af 100644 --- a/sink/bridge/CHANGELOG.md +++ b/sink/bridge/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - `Middleware` adapter: a `state.Middleware` that fans every successful diff --git a/sink/bridge/go.mod b/sink/bridge/go.mod index 7c85ea74..f82c652c 100644 --- a/sink/bridge/go.mod +++ b/sink/bridge/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/bridge -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/sink v0.0.0 github.com/stablekernel/crucible/state v0.0.0 diff --git a/sink/cloudwatch/CHANGELOG.md b/sink/cloudwatch/CHANGELOG.md index cb5f5056..1ae44e30 100644 --- a/sink/cloudwatch/CHANGELOG.md +++ b/sink/cloudwatch/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Amazon CloudWatch Logs sink destination: a narrow `Client` interface diff --git a/sink/cloudwatch/go.mod b/sink/cloudwatch/go.mod index c2f87454..139e74c8 100644 --- a/sink/cloudwatch/go.mod +++ b/sink/cloudwatch/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/cloudwatch -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/sink => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/sink/dynamo/CHANGELOG.md b/sink/dynamo/CHANGELOG.md index 4eee242a..7768c44d 100644 --- a/sink/dynamo/CHANGELOG.md +++ b/sink/dynamo/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - DynamoDB sink destination: a narrow `Client` interface (`PutItem`, diff --git a/sink/dynamo/go.mod b/sink/dynamo/go.mod index 0683735b..cf77bbfa 100644 --- a/sink/dynamo/go.mod +++ b/sink/dynamo/go.mod @@ -1,14 +1,13 @@ module github.com/stablekernel/crucible/sink/dynamo -go 1.25.11 -toolchain go1.26.4 -require github.com/stablekernel/crucible/sink v0.0.0 +go 1.27.3 require ( github.com/aws/aws-sdk-go-v2 v1.41.9 github.com/aws/aws-sdk-go-v2/config v1.32.20 github.com/aws/aws-sdk-go-v2/credentials v1.19.19 github.com/aws/aws-sdk-go-v2/service/dynamodb v1.57.6 + github.com/stablekernel/crucible/sink v0.0.0 github.com/testcontainers/testcontainers-go v0.42.0 github.com/testcontainers/testcontainers-go/modules/localstack v0.42.0 ) diff --git a/sink/eventbridge/CHANGELOG.md b/sink/eventbridge/CHANGELOG.md index 31e0d29f..60525647 100644 --- a/sink/eventbridge/CHANGELOG.md +++ b/sink/eventbridge/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Amazon EventBridge sink destination: a narrow `Client` interface (`PutEvents`, diff --git a/sink/eventbridge/go.mod b/sink/eventbridge/go.mod index 852ab05e..ba3fac00 100644 --- a/sink/eventbridge/go.mod +++ b/sink/eventbridge/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/eventbridge -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/sink => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/sink/file/CHANGELOG.md b/sink/file/CHANGELOG.md index 6c440daa..bed5cd47 100644 --- a/sink/file/CHANGELOG.md +++ b/sink/file/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - JSONL file sink destination: `New(io.Writer)` for wrapping any writer and diff --git a/sink/file/go.mod b/sink/file/go.mod index b0a16c02..97618795 100644 --- a/sink/file/go.mod +++ b/sink/file/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/file -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/sink => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/sink/firehose/CHANGELOG.md b/sink/firehose/CHANGELOG.md index 9b6a5706..2ad55c03 100644 --- a/sink/firehose/CHANGELOG.md +++ b/sink/firehose/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Firehose sink destination: a narrow `Client` interface (`PutRecord`, diff --git a/sink/firehose/go.mod b/sink/firehose/go.mod index d587a946..34ddc4e5 100644 --- a/sink/firehose/go.mod +++ b/sink/firehose/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/firehose -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/aws/aws-sdk-go-v2 v1.41.9 github.com/aws/aws-sdk-go-v2/config v1.32.20 diff --git a/sink/gcppubsub/CHANGELOG.md b/sink/gcppubsub/CHANGELOG.md index 79361fb2..cff9e524 100644 --- a/sink/gcppubsub/CHANGELOG.md +++ b/sink/gcppubsub/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Google Cloud Pub/Sub sink destination: a narrow `Publisher` interface diff --git a/sink/gcppubsub/go.mod b/sink/gcppubsub/go.mod index 3444fa3c..93218bc7 100644 --- a/sink/gcppubsub/go.mod +++ b/sink/gcppubsub/go.mod @@ -1,13 +1,10 @@ module github.com/stablekernel/crucible/sink/gcppubsub -go 1.25.11 - -toolchain go1.26.4 - -require github.com/stablekernel/crucible/sink v0.0.0 +go 1.27.3 require ( cloud.google.com/go/pubsub/v2 v2.6.0 + github.com/stablekernel/crucible/sink v0.0.0 github.com/testcontainers/testcontainers-go v0.42.0 github.com/testcontainers/testcontainers-go/modules/gcloud v0.42.0 ) @@ -68,21 +65,21 @@ require ( go.opentelemetry.io/auto/sdk v1.2.1 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 // indirect - go.opentelemetry.io/otel v1.43.0 // indirect - go.opentelemetry.io/otel/metric v1.43.0 // indirect - go.opentelemetry.io/otel/trace v1.43.0 // indirect - golang.org/x/crypto v0.50.0 // indirect - golang.org/x/net v0.53.0 // indirect + go.opentelemetry.io/otel v1.44.0 // indirect + go.opentelemetry.io/otel/metric v1.44.0 // indirect + go.opentelemetry.io/otel/trace v1.44.0 // indirect + golang.org/x/crypto v0.58.0 // indirect + golang.org/x/net v0.62.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sync v0.20.0 // indirect - golang.org/x/sys v0.43.0 // indirect - golang.org/x/text v0.36.0 // indirect + golang.org/x/sync v0.24.0 // indirect + golang.org/x/sys v0.49.0 // indirect + golang.org/x/text v0.43.0 // indirect golang.org/x/time v0.15.0 // indirect google.golang.org/api v0.274.0 // indirect google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20260414002931-afd174a4e478 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478 // indirect - google.golang.org/grpc v1.82.1 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect + google.golang.org/grpc v1.83.2 // indirect google.golang.org/protobuf v1.36.11 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/sink/gcppubsub/go.sum b/sink/gcppubsub/go.sum index 9444b4f4..e9ffcc91 100644 --- a/sink/gcppubsub/go.sum +++ b/sink/gcppubsub/go.sum @@ -181,20 +181,20 @@ go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.6 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0/go.mod h1:snMWehoOh2wsEwnvvwtDyFCxVeDAODenXHtn5vzrKjo= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 h1:F7Jx+6hwnZ41NSFTO5q4LYDtJRXBf2PD0rNBkeB/lus= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0/go.mod h1:UHB22Z8QsdRDrnAtX4PntOl36ajSxcdUMt1sF7Y6E7Q= -go.opentelemetry.io/otel v1.43.0 h1:mYIM03dnh5zfN7HautFE4ieIig9amkNANT+xcVxAj9I= -go.opentelemetry.io/otel v1.43.0/go.mod h1:JuG+u74mvjvcm8vj8pI5XiHy1zDeoCS2LB1spIq7Ay0= -go.opentelemetry.io/otel/metric v1.43.0 h1:d7638QeInOnuwOONPp4JAOGfbCEpYb+K6DVWvdxGzgM= -go.opentelemetry.io/otel/metric v1.43.0/go.mod h1:RDnPtIxvqlgO8GRW18W6Z/4P462ldprJtfxHxyKd2PY= -go.opentelemetry.io/otel/sdk v1.43.0 h1:pi5mE86i5rTeLXqoF/hhiBtUNcrAGHLKQdhg4h4V9Dg= -go.opentelemetry.io/otel/sdk v1.43.0/go.mod h1:P+IkVU3iWukmiit/Yf9AWvpyRDlUeBaRg6Y+C58QHzg= -go.opentelemetry.io/otel/sdk/metric v1.43.0 h1:S88dyqXjJkuBNLeMcVPRFXpRw2fuwdvfCGLEo89fDkw= -go.opentelemetry.io/otel/sdk/metric v1.43.0/go.mod h1:C/RJtwSEJ5hzTiUz5pXF1kILHStzb9zFlIEe85bhj6A= -go.opentelemetry.io/otel/trace v1.43.0 h1:BkNrHpup+4k4w+ZZ86CZoHHEkohws8AY+WTX09nk+3A= -go.opentelemetry.io/otel/trace v1.43.0/go.mod h1:/QJhyVBUUswCphDVxq+8mld+AvhXZLhe+8WVFxiFff0= +go.opentelemetry.io/otel v1.44.0 h1:JjwHmHpA4iZ3wBxluu2fbbE7j4kqlE8jXyAyPXH7HqU= +go.opentelemetry.io/otel v1.44.0/go.mod h1:BMgjTHL9WPRlRjL2oZCBTL4whCGtXch2H4BhOPIAyYc= +go.opentelemetry.io/otel/metric v1.44.0 h1:1w0gILTcHdr3YI+ixLyjemwrVnsMURbTZFrSYCdDdmc= +go.opentelemetry.io/otel/metric v1.44.0/go.mod h1:8O7hanEPBNgEMmybD3s2VBKcgWOCsA6tzHBPODAiquo= +go.opentelemetry.io/otel/sdk v1.44.0 h1:nHYwb9lK+fJPU/dnT6s7W7Z8itMWyqrnVfbheVYrZ58= +go.opentelemetry.io/otel/sdk v1.44.0/go.mod h1:Osuydd3Se74nqjAKxid74N5eC+jfEqfTegHRnq58oK0= +go.opentelemetry.io/otel/sdk/metric v1.44.0 h1:3LlKgI+VjbVsjNRFZJZAJ30WjXC5VkNRks6si09iEfI= +go.opentelemetry.io/otel/sdk/metric v1.44.0/go.mod h1:5B5pMARnXxKhltooO4xUuCBorl65a4EpnTalObqOigA= +go.opentelemetry.io/otel/trace v1.44.0 h1:jxF5CsGYCe74MCRx2X4g7WsY/VBKRqqpNvXlX/6gtIk= +go.opentelemetry.io/otel/trace v1.44.0/go.mod h1:oLl1jrMQAVo6v3GAggN+1VH9VIz9iUSvW53sW1Q8PIE= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.50.0 h1:zO47/JPrL6vsNkINmLoo/PH1gcxpls50DNogFvB5ZGI= -golang.org/x/crypto v0.50.0/go.mod h1:3muZ7vA7PBCE6xgPX7nkzzjiUq87kRItoJQM1Yo8S+Q= +golang.org/x/crypto v0.58.0 h1:COkYLr4k7nDI4r6QtMML2AfzeIswWHAJthLS6K/M/54= +golang.org/x/crypto v0.58.0/go.mod h1:Xh+kl5A+M0gMiWDytH2Hhr5Z7WbNCpv/eB/EFgfSk+w= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= @@ -205,16 +205,16 @@ golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73r golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.53.0 h1:d+qAbo5L0orcWAr0a9JweQpjXF19LMXJE8Ey7hwOdUA= -golang.org/x/net v0.53.0/go.mod h1:JvMuJH7rrdiCfbeHoo3fCQU24Lf5JJwT9W3sJFulfgs= +golang.org/x/net v0.62.0 h1:18ELalfM5+XNRwzM2nYqXsZQ9ByS1uhj2O/U7+5jqRY= +golang.org/x/net v0.62.0/go.mod h1:WgDCOTH8iwtB66T4/GfI94AHo/hhdb7Hah9NDseQfiI= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.36.0 h1:peZ/1z27fi9hUOFCAZaHyrpWG5lwe0RJEEEeH0ThlIs= golang.org/x/oauth2 v0.36.0/go.mod h1:YDBUJMTkDnJS+A4BP4eZBjCqtokkg1hODuPjwiGPO7Q= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4= -golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= +golang.org/x/sync v0.24.0 h1:iqiDrGoDgyuvAKrhLQthUEzU/R378N78gXbBjxed7oA= +golang.org/x/sync v0.24.0/go.mod h1:sUUOizhqBxiL6pEWpqNLUiaJn1ShEbZ6BBqskPbjZm0= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -222,14 +222,14 @@ golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.43.0 h1:Rlag2XtaFTxp19wS8MXlJwTvoh8ArU6ezoyFsMyCTNI= -golang.org/x/sys v0.43.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/term v0.42.0 h1:UiKe+zDFmJobeJ5ggPwOshJIVt6/Ft0rcfrXZDLWAWY= -golang.org/x/term v0.42.0/go.mod h1:Dq/D+snpsbazcBG5+F9Q1n2rXV8Ma+71xEjTRufARgY= +golang.org/x/sys v0.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA= +golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og= +golang.org/x/term v0.47.0 h1:cpyOwQkr2Nzxe2p6KnrTG7Ei2wtzjsuSjhpXXepZ/BM= +golang.org/x/term v0.47.0/go.mod h1:efAfAuG6RKABvg1ArGebRkvX6LXul14SM67o2e4mUCY= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.36.0 h1:JfKh3XmcRPqZPKevfXVpI1wXPTqbkE5f7JA92a55Yxg= -golang.org/x/text v0.36.0/go.mod h1:NIdBknypM8iqVmPiuco0Dh6P5Jcdk8lJL0CUebqK164= +golang.org/x/text v0.43.0 h1:1QivrlhwAsnMOcqgOdl9my7s9OyZl8O5/UGUTJVXoWc= +golang.org/x/text v0.43.0/go.mod h1:hbSIYA/amXcRXTFSZqh8tWHEoqRvvbKPJ2uz/KU+a+s= golang.org/x/time v0.15.0 h1:bbrp8t3bGUeFOx08pvsMYRTCVSMk89u4tKbNOZbp88U= golang.org/x/time v0.15.0/go.mod h1:Y4YMaQmXwGQZoFaVFk4YpCt4FLQMYKZe9oeV/f4MSno= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -249,17 +249,17 @@ google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98 google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 h1:XzmzkmB14QhVhgnawEVsOn6OFsnpyxNPRY9QV01dNB0= google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7/go.mod h1:L43LFes82YgSonw6iTXTxXUX1OlULt4AQtkik4ULL/I= -google.golang.org/genproto/googleapis/api v0.0.0-20260414002931-afd174a4e478 h1:yQugLulqltosq0B/f8l4w9VryjV+N/5gcW0jQ3N8Qec= -google.golang.org/genproto/googleapis/api v0.0.0-20260414002931-afd174a4e478/go.mod h1:C6ADNqOxbgdUUeRTU+LCHDPB9ttAMCTff6auwCVa4uc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478 h1:RmoJA1ujG+/lRGNfUnOMfhCy5EipVMyvUE+KNbPbTlw= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa h1:Kjn0N0tCrDgiAFW+lGO4JZ3ck44CehvJQMAwj9QF0G8= +google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:q4lMZS6kskjT5HvCPrnnypcDPVJqT/f4nfxmkE7gryY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa h1:mZHHdPZl0dbGHCflZgAq/Q468DWVFcU2whhB2KAo8fk= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.82.1 h1:NnAxzGRA0677vCa4BUkOAnO5+FfQqVl9iUXeD0IqcGE= -google.golang.org/grpc v1.82.1/go.mod h1:yzTZ1TB1Z3SG+LIYaI+WiE8D5+PZ3ArnrSp8zF3+/ZA= +google.golang.org/grpc v1.83.2 h1:EManeRomTObA0BU7I8vXgg/78uE5MJ9M8B39EX2WscU= +google.golang.org/grpc v1.83.2/go.mod h1:YPI1hK3kDked6iHvgX3tR0y+nX/qpMFKhPgFsokw1S8= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= diff --git a/sink/go.mod b/sink/go.mod index 3a03e47f..ca8187f9 100644 --- a/sink/go.mod +++ b/sink/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require github.com/stablekernel/crucible/telemetry v0.0.0 replace github.com/stablekernel/crucible/telemetry => ../telemetry diff --git a/sink/http/CHANGELOG.md b/sink/http/CHANGELOG.md index ee9b5223..23a40986 100644 --- a/sink/http/CHANGELOG.md +++ b/sink/http/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - `net/http` sink destination: a narrow `Doer` interface (`Do`, satisfied by diff --git a/sink/http/go.mod b/sink/http/go.mod index 1452cb32..c0208a27 100644 --- a/sink/http/go.mod +++ b/sink/http/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/http -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require github.com/stablekernel/crucible/sink v0.0.0 require github.com/stablekernel/crucible/telemetry v0.0.0 // indirect diff --git a/sink/kafka/CHANGELOG.md b/sink/kafka/CHANGELOG.md index a16ce6d5..4a52a399 100644 --- a/sink/kafka/CHANGELOG.md +++ b/sink/kafka/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Kafka sink destination: a narrow `Producer` interface (one `Produce` method), diff --git a/sink/kafka/go.mod b/sink/kafka/go.mod index 005d2967..18fe6786 100644 --- a/sink/kafka/go.mod +++ b/sink/kafka/go.mod @@ -1,10 +1,9 @@ module github.com/stablekernel/crucible/sink/kafka -go 1.25.11 -toolchain go1.26.4 -require github.com/stablekernel/crucible/sink v0.0.0 +go 1.27.3 require ( + github.com/stablekernel/crucible/sink v0.0.0 github.com/testcontainers/testcontainers-go v0.42.0 github.com/testcontainers/testcontainers-go/modules/kafka v0.42.0 github.com/twmb/franz-go v1.21.2 diff --git a/sink/kinesis/CHANGELOG.md b/sink/kinesis/CHANGELOG.md index fb845ad2..88d6bb07 100644 --- a/sink/kinesis/CHANGELOG.md +++ b/sink/kinesis/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Kinesis sink destination: a narrow `Client` interface (`PutRecord`, diff --git a/sink/kinesis/go.mod b/sink/kinesis/go.mod index a8763fdf..f3f06e85 100644 --- a/sink/kinesis/go.mod +++ b/sink/kinesis/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/kinesis -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/aws/aws-sdk-go-v2 v1.41.9 github.com/aws/aws-sdk-go-v2/config v1.32.20 diff --git a/sink/nats/CHANGELOG.md b/sink/nats/CHANGELOG.md index e5b79487..ebb06378 100644 --- a/sink/nats/CHANGELOG.md +++ b/sink/nats/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - NATS sink destination: a narrow `Client` interface (`Publish` and `PublishMsg`, diff --git a/sink/nats/go.mod b/sink/nats/go.mod index aa0ef90d..834350c9 100644 --- a/sink/nats/go.mod +++ b/sink/nats/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/nats -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/sink => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/sink/otel/CHANGELOG.md b/sink/otel/CHANGELOG.md index 555f7f9f..79294627 100644 --- a/sink/otel/CHANGELOG.md +++ b/sink/otel/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - OpenTelemetry sink destination: a narrow `Meter` interface (`Int64Counter`, diff --git a/sink/otel/go.mod b/sink/otel/go.mod index 689d3025..d56d7797 100644 --- a/sink/otel/go.mod +++ b/sink/otel/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/otel -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/sink v0.0.0 go.opentelemetry.io/otel v1.44.0 diff --git a/sink/prometheus/CHANGELOG.md b/sink/prometheus/CHANGELOG.md index d20d246b..d68b150c 100644 --- a/sink/prometheus/CHANGELOG.md +++ b/sink/prometheus/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Prometheus Pushgateway sink destination: a narrow `Doer` interface diff --git a/sink/prometheus/go.mod b/sink/prometheus/go.mod index beb804d5..c363b630 100644 --- a/sink/prometheus/go.mod +++ b/sink/prometheus/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/prometheus -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require github.com/stablekernel/crucible/sink v0.0.0 require github.com/stablekernel/crucible/telemetry v0.0.0 // indirect diff --git a/sink/redis/CHANGELOG.md b/sink/redis/CHANGELOG.md index b1039843..2bde1b6e 100644 --- a/sink/redis/CHANGELOG.md +++ b/sink/redis/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Redis sink destination: a narrow `Client` interface (`XAdd`, `Publish`; satisfied diff --git a/sink/redis/go.mod b/sink/redis/go.mod index 4c8a3ec1..1f53562a 100644 --- a/sink/redis/go.mod +++ b/sink/redis/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/redis -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/redis/go-redis/v9 v9.20.0 github.com/stablekernel/crucible/sink v0.0.0 diff --git a/sink/s3/CHANGELOG.md b/sink/s3/CHANGELOG.md index a0c1dc87..03c2bb8c 100644 --- a/sink/s3/CHANGELOG.md +++ b/sink/s3/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Amazon S3 sink destination: a narrow `Client` interface (`PutObject`, diff --git a/sink/s3/go.mod b/sink/s3/go.mod index 920db0db..533c7295 100644 --- a/sink/s3/go.mod +++ b/sink/s3/go.mod @@ -1,13 +1,12 @@ module github.com/stablekernel/crucible/sink/s3 -go 1.25.11 -toolchain go1.26.4 -require github.com/aws/aws-sdk-go-v2/service/s3 v1.102.2 +go 1.27.3 require ( github.com/aws/aws-sdk-go-v2 v1.41.9 github.com/aws/aws-sdk-go-v2/config v1.32.20 github.com/aws/aws-sdk-go-v2/credentials v1.19.19 + github.com/aws/aws-sdk-go-v2/service/s3 v1.102.2 github.com/stablekernel/crucible/sink v0.0.0 github.com/testcontainers/testcontainers-go v0.42.0 github.com/testcontainers/testcontainers-go/modules/localstack v0.42.0 diff --git a/sink/slog/CHANGELOG.md b/sink/slog/CHANGELOG.md index 40b807f4..f04ebb0e 100644 --- a/sink/slog/CHANGELOG.md +++ b/sink/slog/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - `log/slog` sink destination: `Log`, `Info`, and `Error` operation diff --git a/sink/slog/go.mod b/sink/slog/go.mod index ce02bf30..51db8147 100644 --- a/sink/slog/go.mod +++ b/sink/slog/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/slog -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require github.com/stablekernel/crucible/sink v0.0.0 require github.com/stablekernel/crucible/telemetry v0.0.0 // indirect diff --git a/sink/sns/CHANGELOG.md b/sink/sns/CHANGELOG.md index e5fd7124..4ed78dd4 100644 --- a/sink/sns/CHANGELOG.md +++ b/sink/sns/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Amazon SNS sink destination: a narrow `Client` interface (`Publish`, diff --git a/sink/sns/go.mod b/sink/sns/go.mod index 73d24cf6..13cee599 100644 --- a/sink/sns/go.mod +++ b/sink/sns/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/sns -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/sink => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/sink/sql/CHANGELOG.md b/sink/sql/CHANGELOG.md index 21c8fbd0..bfa6ce74 100644 --- a/sink/sql/CHANGELOG.md +++ b/sink/sql/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - `database/sql` sink destination: a narrow `Tx` interface (`ExecContext`, diff --git a/sink/sql/go.mod b/sink/sql/go.mod index b355353c..6b4327e7 100644 --- a/sink/sql/go.mod +++ b/sink/sql/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/sql -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/sink v0.0.0 modernc.org/sqlite v1.51.0 diff --git a/sink/sqs/CHANGELOG.md b/sink/sqs/CHANGELOG.md index cbdadbd2..abb4650b 100644 --- a/sink/sqs/CHANGELOG.md +++ b/sink/sqs/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Amazon SQS sink destination: a narrow `Client` interface (`SendMessage`, diff --git a/sink/sqs/go.mod b/sink/sqs/go.mod index 6c0f5ffb..2eb7802b 100644 --- a/sink/sqs/go.mod +++ b/sink/sqs/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/sqs -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/aws/aws-sdk-go-v2 v1.41.9 github.com/aws/aws-sdk-go-v2/config v1.32.20 diff --git a/sink/statsd/CHANGELOG.md b/sink/statsd/CHANGELOG.md index 250d1325..b1513695 100644 --- a/sink/statsd/CHANGELOG.md +++ b/sink/statsd/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - StatsD sink destination built on `github.com/DataDog/datadog-go/v5`. A narrow diff --git a/sink/statsd/go.mod b/sink/statsd/go.mod index 18e75392..46e45e2e 100644 --- a/sink/statsd/go.mod +++ b/sink/statsd/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/sink/statsd -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/DataDog/datadog-go/v5 v5.8.3 github.com/stablekernel/crucible/sink v0.0.0 diff --git a/sink/timestream/CHANGELOG.md b/sink/timestream/CHANGELOG.md index 2085c471..44c420b7 100644 --- a/sink/timestream/CHANGELOG.md +++ b/sink/timestream/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - Amazon Timestream sink destination: a narrow `Client` interface (`WriteRecords`, diff --git a/sink/timestream/go.mod b/sink/timestream/go.mod index 13192fe1..d8cb7f9b 100644 --- a/sink/timestream/go.mod +++ b/sink/timestream/go.mod @@ -1,14 +1,13 @@ module github.com/stablekernel/crucible/sink/timestream -go 1.25.11 -toolchain go1.26.4 -require github.com/stablekernel/crucible/sink v0.0.0 +go 1.27.3 require ( github.com/aws/aws-sdk-go-v2 v1.41.9 github.com/aws/aws-sdk-go-v2/config v1.32.20 github.com/aws/aws-sdk-go-v2/credentials v1.19.19 github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.35.25 + github.com/stablekernel/crucible/sink v0.0.0 github.com/testcontainers/testcontainers-go v0.42.0 github.com/testcontainers/testcontainers-go/modules/localstack v0.42.0 ) diff --git a/source/CHANGELOG.md b/source/CHANGELOG.md index 53689c56..1aad3706 100644 --- a/source/CHANGELOG.md +++ b/source/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to `crucible/source` are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] + +### Changed + +- Requires Go 1.27.3. + ## [1.0.1] — 2026-08-23 Release engineering only: no code changes. The v1.0.0 tag's release workflow diff --git a/source/cloudevents/go.mod b/source/cloudevents/go.mod index 34d9baf6..560adb72 100644 --- a/source/cloudevents/go.mod +++ b/source/cloudevents/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/source/cloudevents -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/cloudevents/sdk-go/v2 v2.16.2 github.com/stablekernel/crucible/source v0.0.0 diff --git a/source/go.mod b/source/go.mod index 0d1c3efb..c4bc6673 100644 --- a/source/go.mod +++ b/source/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/source -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require github.com/stablekernel/crucible/telemetry v0.0.0 replace github.com/stablekernel/crucible/telemetry => ../telemetry diff --git a/source/jetstream/go.mod b/source/jetstream/go.mod index 1b67bdbf..e58f2130 100644 --- a/source/jetstream/go.mod +++ b/source/jetstream/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/source/jetstream -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/source => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/source/kafka/CHANGELOG.md b/source/kafka/CHANGELOG.md index 7a9ce0d2..8f61eb30 100644 --- a/source/kafka/CHANGELOG.md +++ b/source/kafka/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to `crucible/source/kafka` are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] + +### Changed + +- Requires Go 1.27.3. + ## [1.0.1] — 2026-08-23 Release engineering only: no code changes. The v1.0.0 tag's release workflow diff --git a/source/kafka/go.mod b/source/kafka/go.mod index 222186bb..5c9813d0 100644 --- a/source/kafka/go.mod +++ b/source/kafka/go.mod @@ -1,8 +1,6 @@ module github.com/stablekernel/crucible/source/kafka -go 1.25.11 - -toolchain go1.26.4 +go 1.27.3 require github.com/stablekernel/crucible/source v0.0.0 diff --git a/source/kafka/integration/go.mod b/source/kafka/integration/go.mod index ede34d78..854bd50b 100644 --- a/source/kafka/integration/go.mod +++ b/source/kafka/integration/go.mod @@ -7,9 +7,7 @@ module github.com/stablekernel/crucible/source/kafka/integration // `go test -tags integration ./...` from this directory (Docker required; // tests skip cleanly when a daemon is unreachable). -go 1.25.11 - -toolchain go1.26.4 +go 1.27.3 require ( github.com/stablekernel/crucible/source v0.0.0 diff --git a/source/redis/go.mod b/source/redis/go.mod index 6890b6ad..f3acfca1 100644 --- a/source/redis/go.mod +++ b/source/redis/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/source/redis -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/source => ../ replace github.com/stablekernel/crucible/telemetry => ../../telemetry diff --git a/source/statemachine/CHANGELOG.md b/source/statemachine/CHANGELOG.md index 82f00a00..7d8f79ed 100644 --- a/source/statemachine/CHANGELOG.md +++ b/source/statemachine/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - `Drive` binding: routes a `source.Message` to an instance key and event, loads diff --git a/source/statemachine/go.mod b/source/statemachine/go.mod index 94a1e8a5..5af3a2fa 100644 --- a/source/statemachine/go.mod +++ b/source/statemachine/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/source/statemachine -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/source v0.0.0 github.com/stablekernel/crucible/state v0.0.0 diff --git a/state/CHANGELOG.md b/state/CHANGELOG.md index af674fe6..aca9a773 100644 --- a/state/CHANGELOG.md +++ b/state/CHANGELOG.md @@ -9,6 +9,12 @@ A machine definition is treated as a schema: see the counts as an additive (minor) versus breaking (major) change. Use the `state/evolution` package to classify a machine change and decide the bump. +## [Unreleased] + +### Changed + +- Requires Go 1.27.3. + ## [1.0.0] — 2026-06-13 The first stable release. It freezes the data model, the serialized IR, the diff --git a/state/expr/CHANGELOG.md b/state/expr/CHANGELOG.md index 7d8347de..784c3b2f 100644 --- a/state/expr/CHANGELOG.md +++ b/state/expr/CHANGELOG.md @@ -9,6 +9,10 @@ dependency-free, and `expr` depends on `state`, never the reverse. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - `GuardString[C]` convenience constructor: the string-state form of `Guard`, diff --git a/state/expr/go.mod b/state/expr/go.mod index 2b187d0c..99e3b06c 100644 --- a/state/expr/go.mod +++ b/state/expr/go.mod @@ -1,6 +1,6 @@ module github.com/stablekernel/crucible/state/expr -go 1.25.0 +go 1.27.3 require ( cel.dev/expr v0.25.2 diff --git a/state/go.mod b/state/go.mod index 0abbe71e..8ee60942 100644 --- a/state/go.mod +++ b/state/go.mod @@ -1,3 +1,3 @@ module github.com/stablekernel/crucible/state -go 1.25 \ No newline at end of file +go 1.27.3 diff --git a/telemetry/CHANGELOG.md b/telemetry/CHANGELOG.md index be5f5036..6d4b071c 100644 --- a/telemetry/CHANGELOG.md +++ b/telemetry/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ## [0.1.0] - 2026-05-30 ### Added diff --git a/telemetry/datadog/CHANGELOG.md b/telemetry/datadog/CHANGELOG.md index 5bd46849..1c7aea82 100644 --- a/telemetry/datadog/CHANGELOG.md +++ b/telemetry/datadog/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ## [0.1.0] - 2026-05-30 ### Added diff --git a/telemetry/datadog/go.mod b/telemetry/datadog/go.mod index fd34dbcc..657e839a 100644 --- a/telemetry/datadog/go.mod +++ b/telemetry/datadog/go.mod @@ -1,8 +1,6 @@ module github.com/stablekernel/crucible/telemetry/datadog -go 1.25.11 - -toolchain go1.26.4 +go 1.27.3 require ( github.com/DataDog/datadog-go/v5 v5.8.3 diff --git a/telemetry/go.mod b/telemetry/go.mod index a5f59557..b6464e50 100644 --- a/telemetry/go.mod +++ b/telemetry/go.mod @@ -1,4 +1,3 @@ module github.com/stablekernel/crucible/telemetry -go 1.25 -toolchain go1.26.4 \ No newline at end of file +go 1.27.3 diff --git a/telemetry/otel/CHANGELOG.md b/telemetry/otel/CHANGELOG.md index 1140dc16..d42abcd6 100644 --- a/telemetry/otel/CHANGELOG.md +++ b/telemetry/otel/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ## [0.1.0] - 2026-05-30 ### Added diff --git a/telemetry/otel/go.mod b/telemetry/otel/go.mod index 27e2b9df..91d27ea0 100644 --- a/telemetry/otel/go.mod +++ b/telemetry/otel/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/telemetry/otel -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require ( github.com/stablekernel/crucible/telemetry v0.0.0 go.opentelemetry.io/otel v1.44.0 diff --git a/telemetry/slog/README.md b/telemetry/slog/README.md index d1f3b92d..7724fa71 100644 --- a/telemetry/slog/README.md +++ b/telemetry/slog/README.md @@ -4,6 +4,8 @@ A standard-library `log/slog` adapter for [`crucible/telemetry`](../README.md). Emits spans and metric instruments as structured log records, with **zero external dependencies**. +Requires Go 1.27.3. + Import path: `github.com/stablekernel/crucible/telemetry/slog` ## What it is diff --git a/telemetry/slog/go.mod b/telemetry/slog/go.mod index 0914476b..5bf5b560 100644 --- a/telemetry/slog/go.mod +++ b/telemetry/slog/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/telemetry/slog -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + require github.com/stablekernel/crucible/telemetry v0.0.0 replace github.com/stablekernel/crucible/telemetry => ../ diff --git a/tools/docsgen/go.mod b/tools/docsgen/go.mod index 059e8c18..662a6c7c 100644 --- a/tools/docsgen/go.mod +++ b/tools/docsgen/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/tools/docsgen -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + // The generator builds real example machines and renders their diagrams, and // shells out to gomarkdoc for the API reference. It depends on the local state // kernel, the rich-expression tier, and the flagship example, all via replace diff --git a/transport/README.md b/transport/README.md index 603c0539..25105f94 100644 --- a/transport/README.md +++ b/transport/README.md @@ -9,6 +9,8 @@ time-travel operations between nodes over real gRPC (HTTP/2). Import path: `github.com/stablekernel/crucible/transport` +Requires Go 1.27.3. + ## What it is `cluster` spreads a `state` machine and its child-machine actors across nodes over diff --git a/transport/go.mod b/transport/go.mod index 88699bc9..86c30977 100644 --- a/transport/go.mod +++ b/transport/go.mod @@ -1,8 +1,6 @@ module github.com/stablekernel/crucible/transport -go 1.25.11 - -toolchain go1.26.4 +go 1.27.3 replace github.com/stablekernel/crucible/state => ../state @@ -10,21 +8,16 @@ replace github.com/stablekernel/crucible/cluster => ../cluster require ( github.com/stablekernel/crucible/cluster v0.0.0-00010101000000-000000000000 + github.com/stablekernel/crucible/durable v0.0.0-00010101000000-000000000000 github.com/stablekernel/crucible/state v0.0.0-00010101000000-000000000000 - google.golang.org/grpc v1.82.1 -) - -require ( - go.opentelemetry.io/otel v1.44.0 // indirect - go.opentelemetry.io/otel/sdk/metric v1.44.0 // indirect + google.golang.org/grpc v1.83.2 ) require ( - github.com/stablekernel/crucible/durable v0.0.0-00010101000000-000000000000 - golang.org/x/net v0.53.0 // indirect - golang.org/x/sys v0.45.0 // indirect - golang.org/x/text v0.36.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478 // indirect + golang.org/x/net v0.62.0 // indirect + golang.org/x/sys v0.49.0 // indirect + golang.org/x/text v0.43.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect google.golang.org/protobuf v1.36.11 // indirect ) diff --git a/transport/go.sum b/transport/go.sum index 890a53fc..f21f74f3 100644 --- a/transport/go.sum +++ b/transport/go.sum @@ -22,17 +22,17 @@ go.opentelemetry.io/otel/sdk/metric v1.44.0 h1:3LlKgI+VjbVsjNRFZJZAJ30WjXC5VkNRk go.opentelemetry.io/otel/sdk/metric v1.44.0/go.mod h1:5B5pMARnXxKhltooO4xUuCBorl65a4EpnTalObqOigA= go.opentelemetry.io/otel/trace v1.44.0 h1:jxF5CsGYCe74MCRx2X4g7WsY/VBKRqqpNvXlX/6gtIk= go.opentelemetry.io/otel/trace v1.44.0/go.mod h1:oLl1jrMQAVo6v3GAggN+1VH9VIz9iUSvW53sW1Q8PIE= -golang.org/x/net v0.53.0 h1:d+qAbo5L0orcWAr0a9JweQpjXF19LMXJE8Ey7hwOdUA= -golang.org/x/net v0.53.0/go.mod h1:JvMuJH7rrdiCfbeHoo3fCQU24Lf5JJwT9W3sJFulfgs= -golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= -golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/text v0.36.0 h1:JfKh3XmcRPqZPKevfXVpI1wXPTqbkE5f7JA92a55Yxg= -golang.org/x/text v0.36.0/go.mod h1:NIdBknypM8iqVmPiuco0Dh6P5Jcdk8lJL0CUebqK164= +golang.org/x/net v0.62.0 h1:18ELalfM5+XNRwzM2nYqXsZQ9ByS1uhj2O/U7+5jqRY= +golang.org/x/net v0.62.0/go.mod h1:WgDCOTH8iwtB66T4/GfI94AHo/hhdb7Hah9NDseQfiI= +golang.org/x/sys v0.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA= +golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og= +golang.org/x/text v0.43.0 h1:1QivrlhwAsnMOcqgOdl9my7s9OyZl8O5/UGUTJVXoWc= +golang.org/x/text v0.43.0/go.mod h1:hbSIYA/amXcRXTFSZqh8tWHEoqRvvbKPJ2uz/KU+a+s= gonum.org/v1/gonum v0.17.0 h1:VbpOemQlsSMrYmn7T2OUvQ4dqxQXU+ouZFQsZOx50z4= gonum.org/v1/gonum v0.17.0/go.mod h1:El3tOrEuMpv2UdMrbNlKEh9vd86bmQ6vqIcDwxEOc1E= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478 h1:RmoJA1ujG+/lRGNfUnOMfhCy5EipVMyvUE+KNbPbTlw= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260414002931-afd174a4e478/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= -google.golang.org/grpc v1.82.1 h1:NnAxzGRA0677vCa4BUkOAnO5+FfQqVl9iUXeD0IqcGE= -google.golang.org/grpc v1.82.1/go.mod h1:yzTZ1TB1Z3SG+LIYaI+WiE8D5+PZ3ArnrSp8zF3+/ZA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa h1:mZHHdPZl0dbGHCflZgAq/Q468DWVFcU2whhB2KAo8fk= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +google.golang.org/grpc v1.83.2 h1:EManeRomTObA0BU7I8vXgg/78uE5MJ9M8B39EX2WscU= +google.golang.org/grpc v1.83.2/go.mod h1:YPI1hK3kDked6iHvgX3tR0y+nX/qpMFKhPgFsokw1S8= google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= diff --git a/wasm/CHANGELOG.md b/wasm/CHANGELOG.md index 02fa1e99..04bd105b 100644 --- a/wasm/CHANGELOG.md +++ b/wasm/CHANGELOG.md @@ -7,6 +7,10 @@ and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0. ## [Unreleased] +### Changed + +- Requires Go 1.27.3. + ### Added - **`CompileOption` / `WithRuntimeConfig`.** `Compile` takes a variadic diff --git a/wasm/go.mod b/wasm/go.mod index 6bf0a0fe..6e6d0bec 100644 --- a/wasm/go.mod +++ b/wasm/go.mod @@ -1,7 +1,7 @@ module github.com/stablekernel/crucible/wasm -go 1.25.11 -toolchain go1.26.4 +go 1.27.3 + replace github.com/stablekernel/crucible/state => ../state require (