diff --git a/BUILD.bazel b/BUILD.bazel index e745deb..87701d2 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -60,10 +60,10 @@ filegroup( "@bazel_utils_buf//protoc/plugins/protoc-gen-buffa-packaging", "@bazel_utils_buf//protoc/plugins/protoc-gen-connect-go", "@bazel_utils_buf//protoc/plugins/protoc-gen-connect-rust", - "@bazel_utils_buf//protoc/plugins/protoc-gen-contract-rust", "@bazel_utils_buf//protoc/plugins/protoc-gen-go", "@bazel_utils_buf//protoc/plugins/protoc-gen-grpc-gateway", "@bazel_utils_buf//protoc/plugins/protoc-gen-openapiv2", + "@bazel_utils_buf//protoc/plugins/protoc-gen-protocontract-buffa", "@bazel_utils_buf//protoc/plugins/protoc-gen-protovalidate-buffa", ], ) diff --git a/CHANGELOG.md b/CHANGELOG.md index 465950a..0a8a58d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,50 @@ patch; breaking Starlark API changes bump the minor. ## [Unreleased] +## [0.4.0] - 2026-10-16 + +### Added + +- `bazel_utils_buf`: Buf CLI `v1.74.0` in the fetch catalog (`registry.bzl`). + `v1.72.0` and `v1.73.0` stay available. +- `bazel_utils_protoc`: `protoc-gen-connect-go` catalog versions v1.21.1 and + v2.0.1, and `protoc-gen-protovalidate-buffa` catalog version v0.10.4, for + linux, darwin, and windows on amd64 and arm64. +- `bazel_utils_protoc`: `protoc-gen-protocontract-buffa` catalog version + v0.3.1 (the renamed `protoc-gen-contract-rust`, from + [sonalect/protocontract-buffa.rs](https://github.com/sonalect/protocontract-buffa.rs)) + for linux, darwin, and windows on amd64 and arm64: the static binaries of + the project's GitHub Release, with the sha256 of its + `checksums-sha256.txt`. The crates on crates.io are source only. The + fallback pin is v0.3.1; the plugin is in `//:protoc_plugins`, both README + tables, and `//tests/buf:plugins`. + +### Changed + +- `bazel_utils_buf`: fallback `buf.toolchains` when this module is root is + `v1.74.0`. +- `bazel_utils_protoc`: fallback pins `protoc-gen-connect-go` from v1.21.0 to + v1.21.1 and `protoc-gen-protovalidate-buffa` from v0.10.3 to v0.10.4. +- `bazel_utils_python`: uv from 0.13.0 to 0.13.1. +- `bazel_utils_markdown`: Node from 24.21.0 to 24.22.0 (`node_repositories` + from `SHASUMS256.txt`) and pnpm from 12.11.2 to 12.13.0 + (`pnpm_version_integrity` from npm, `package.json` `packageManager`). +- `bazel_utils_go`: govulncheck from `golang.org/x/vuln` v1.8.0 to v1.9.0, + with the indirect `golang.org/x/tools` v0.52.0 and `golang.org/x/telemetry` + it requires. +- Raised every language module and the aggregator to `0.4.0` (lockstep; a + minor bump for the removed plugin). + +### Removed + +- **Breaking:** `bazel_utils_protoc`: `protoc-gen-contract-rust` (catalog + versions v0.1.0, v0.2.0, v0.2.1), its labels + `@bazel_utils_protoc//plugins/protoc-gen-contract-rust` and + `@bazel_utils_buf//protoc/plugins/protoc-gen-contract-rust`, and its + `protoc.plugin` name. The project renamed the plugin; take + `protoc-gen-protocontract-buffa` v0.3.1 (in `buf.gen.yaml`, + `local: protoc-gen-protocontract-buffa`). + ## [0.3.4] - 2026-10-12 ### Fixed @@ -402,7 +446,8 @@ Initial tagged release. Language modules for Bazel workspaces: Pin modules with `git_override` at tag `v0.1.0`. `bazel_utils_core` is a transitive dependency, not a consumer API. -[unreleased]: https://github.com/sonalect/bazel_utils/compare/v0.3.4...HEAD +[unreleased]: https://github.com/sonalect/bazel_utils/compare/v0.4.0...HEAD +[0.4.0]: https://github.com/sonalect/bazel_utils/compare/v0.3.4...v0.4.0 [0.3.4]: https://github.com/sonalect/bazel_utils/compare/v0.3.3...v0.3.4 [0.3.3]: https://github.com/sonalect/bazel_utils/compare/v0.3.2...v0.3.3 [0.3.2]: https://github.com/sonalect/bazel_utils/compare/v0.3.1...v0.3.2 diff --git a/MODULE.bazel b/MODULE.bazel index 4fe4f76..9a401a6 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -2,17 +2,17 @@ module( name = "bazel_utils", - version = "0.3.4", + version = "0.4.0", ) -bazel_dep(name = "bazel_utils_bazel", version = "0.3.4") -bazel_dep(name = "bazel_utils_buf", version = "0.3.4") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") -bazel_dep(name = "bazel_utils_go", version = "0.3.4") -bazel_dep(name = "bazel_utils_md", version = "0.3.4") -bazel_dep(name = "bazel_utils_protoc", version = "0.3.4") -bazel_dep(name = "bazel_utils_python", version = "0.3.4") -bazel_dep(name = "bazel_utils_rust", version = "0.3.4") +bazel_dep(name = "bazel_utils_bazel", version = "0.4.0") +bazel_dep(name = "bazel_utils_buf", version = "0.4.0") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") +bazel_dep(name = "bazel_utils_go", version = "0.4.0") +bazel_dep(name = "bazel_utils_md", version = "0.4.0") +bazel_dep(name = "bazel_utils_protoc", version = "0.4.0") +bazel_dep(name = "bazel_utils_python", version = "0.4.0") +bazel_dep(name = "bazel_utils_rust", version = "0.4.0") bazel_dep(name = "protobuf", version = "36.2") local_path_override( diff --git a/README.md b/README.md index 25ae286..d5ff85a 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Starlark helpers for Bazel workspaces. Each language is a **separate Bazel modul `bazel_utils_core` is pulled in transitively. The root module `bazel_utils` in this repository is an aggregator for development, not a consumer dependency. -Current module version: **0.3.4**. See [CHANGELOG.md](CHANGELOG.md) for release notes. +Current module version: **0.4.0**. See [CHANGELOG.md](CHANGELOG.md) for release notes. | Module | Load | Public API | | ------------------------------------------- | -------------------------------------- | ------------------------------------------------------------------------------------- | @@ -22,16 +22,16 @@ Pass `buildifier` / `golangci` / `govulncheck` / `buf` / `ruff` / `uv` / `cargo_ Windows needs no host bash (Git Bash, MSYS2) or Python. `bazel_utils_core` downloads [busybox-w32](https://frippery.org/busybox/) (amd64, arm64): the `*_test` and `*_format` wrappers run through a `.bat` launcher with `busybox sh`, and `buf_module` / `buf_generate` actions run with it too. Linux and macOS use the system bash. Prebuilt binaries have a `.exe` output on Windows. `markdownlint_test` on Windows needs `build:windows --enable_runfiles` (with `common --enable_platform_specific_config`): rules_js's `js_binary` needs a runfiles tree. `protoc.plugin` zip releases are extracted at build time with the hermetic bsdtar from [tar.bzl](https://registry.bazel.build/modules/tar.bzl); no host Python or unzip is used. -Modules live in subdirectories of [sonalect/bazel_utils](https://github.com/sonalect/bazel_utils.git). Pin each language module with `git_override` at tag `v0.3.4` and `strip_prefix` matching that directory. Language modules depend on `bazel_utils_core` (no public macros, not on the Bazel Central Registry), so add this once: +Modules live in subdirectories of [sonalect/bazel_utils](https://github.com/sonalect/bazel_utils.git). Pin each language module with `git_override` at tag `v0.4.0` and `strip_prefix` matching that directory. Language modules depend on `bazel_utils_core` (no public macros, not on the Bazel Central Registry), so add this once: ```starlark -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") git_override( module_name = "bazel_utils_core", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "core", - tag = "v0.3.4", + tag = "v0.4.0", ) ``` @@ -45,13 +45,13 @@ Prebuilt [buildifier](https://github.com/bazelbuild/buildtools) (GitHub release, ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_bazel", version = "0.3.4") +bazel_dep(name = "bazel_utils_bazel", version = "0.4.0") git_override( module_name = "bazel_utils_bazel", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "bazel", - tag = "v0.3.4", + tag = "v0.4.0", ) ``` @@ -128,17 +128,17 @@ The action sandbox does not inherit the user shell. Without this, buf runs anony ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_buf", version = "0.3.4") +bazel_dep(name = "bazel_utils_buf", version = "0.4.0") git_override( module_name = "bazel_utils_buf", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "buf", - tag = "v0.3.4", + tag = "v0.4.0", ) buf = use_extension("@bazel_utils_buf//:extensions.bzl", "buf") -buf.toolchains(version = "v1.73.0") +buf.toolchains(version = "v1.74.0") use_repo(buf, "buf") ``` @@ -229,17 +229,17 @@ buf_generate( GitHub-release binaries from [`bazel_utils_protoc`](#bazel_utils_protoc). Tag them with `protoc.plugin` in the root module; `buf_generate` puts those on PATH. Do not also list them in `plugins` unless you need an extra binary or an override. This module re-exports the same binaries at `@bazel_utils_buf//protoc/plugins/…`. The target **name** is the PATH name (`local:` in the template). Do not wrap them with `buf_plugin`. -| Label | Upstream | Catalog versions | Platforms | -| ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ---------------------------------- | ------------------------------------------------------------------- | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-buffa` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-buffa-packaging` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa-packaging` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-connect-go` | [connectrpc/connect-go](https://github.com/connectrpc/connect-go) `protoc-gen-connect-go` | v1.21.0, v2.0.0 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-connect-rust` | [connectrpc/connect-rust](https://github.com/connectrpc/connect-rust) `protoc-gen-connect-rust` | v0.9.0, v0.9.1 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-contract-rust` | [sonalect/proto-contract.rs](https://github.com/sonalect/proto-contract.rs) | v0.1.0, v0.2.0, v0.2.1 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-go` | [protocolbuffers/protobuf-go](https://github.com/protocolbuffers/protobuf-go) `protoc-gen-go` | v1.36.12 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-grpc-gateway` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-grpc-gateway` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-openapiv2` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-openapiv2` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_buf//protoc/plugins/protoc-gen-protovalidate-buffa` | [mathematic-inc/protovalidate-buffa](https://github.com/mathematic-inc/protovalidate-buffa) | v0.10.0, v0.10.1, v0.10.2, v0.10.3 | linux/darwin/windows amd64+arm64 | +| Label | Upstream | Catalog versions | Platforms | +| ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------- | ------------------------------------------------------------------- | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-buffa` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-buffa-packaging` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa-packaging` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-connect-go` | [connectrpc/connect-go](https://github.com/connectrpc/connect-go) `protoc-gen-connect-go` | v1.21.0, v1.21.1, v2.0.0, v2.0.1 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-connect-rust` | [connectrpc/connect-rust](https://github.com/connectrpc/connect-rust) `protoc-gen-connect-rust` | v0.9.0, v0.9.1 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-go` | [protocolbuffers/protobuf-go](https://github.com/protocolbuffers/protobuf-go) `protoc-gen-go` | v1.36.12 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-grpc-gateway` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-grpc-gateway` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-openapiv2` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-openapiv2` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-protocontract-buffa` | [sonalect/protocontract-buffa.rs](https://github.com/sonalect/protocontract-buffa.rs) ([crates.io](https://crates.io/crates/protoc-gen-protocontract-buffa)) | v0.3.1 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_buf//protoc/plugins/protoc-gen-protovalidate-buffa` | [mathematic-inc/protovalidate-buffa](https://github.com/mathematic-inc/protovalidate-buffa) | v0.10.0, v0.10.1, v0.10.2, v0.10.3, v0.10.4 | linux/darwin/windows amd64+arm64 | ```starlark load("@bazel_utils_buf//:buf.bzl", "buf_generate") @@ -356,13 +356,13 @@ Canonical labels: `@bazel_utils_protoc//plugins/…`. [`bazel_utils_buf`](#bazel ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_protoc", version = "0.3.4") +bazel_dep(name = "bazel_utils_protoc", version = "0.4.0") git_override( module_name = "bazel_utils_protoc", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "protoc", - tag = "v0.3.4", + tag = "v0.4.0", ) protoc = use_extension("@bazel_utils_protoc//:extensions.bzl", "protoc") @@ -376,16 +376,12 @@ protoc.plugin( ) protoc.plugin( name = "protoc-gen-connect-go", - version = "v1.21.0", + version = "v1.21.1", ) protoc.plugin( name = "protoc-gen-connect-rust", version = "v0.9.0", ) -protoc.plugin( - name = "protoc-gen-contract-rust", - version = "v0.2.1", -) protoc.plugin( name = "protoc-gen-go", version = "v1.36.12", @@ -398,9 +394,13 @@ protoc.plugin( name = "protoc-gen-openapiv2", version = "v2.30.0", ) +protoc.plugin( + name = "protoc-gen-protocontract-buffa", + version = "v0.3.1", +) protoc.plugin( name = "protoc-gen-protovalidate-buffa", - version = "v0.10.3", + version = "v0.10.4", ) ``` @@ -410,22 +410,22 @@ protoc.plugin( Module-extension tag. One per plugin name per module; the root module's tag wins for that name. -| Name | Type | Required | Default | Description | -| --------- | -------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `name` | `string` | yes | — | PATH name (`protoc-gen-buffa`, `protoc-gen-buffa-packaging`, `protoc-gen-connect-go`, `protoc-gen-connect-rust`, `protoc-gen-contract-rust`, `protoc-gen-go`, `protoc-gen-grpc-gateway`, `protoc-gen-openapiv2`, `protoc-gen-protovalidate-buffa`). | -| `version` | `string` | yes | — | GitHub release tag (must exist in this module's `plugins//registry.bzl`). | - -| Label | Upstream | Catalog versions | Platforms | -| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ---------------------------------- | ------------------------------------------------------------------- | -| `@bazel_utils_protoc//plugins/protoc-gen-buffa` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | -| `@bazel_utils_protoc//plugins/protoc-gen-buffa-packaging` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa-packaging` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | -| `@bazel_utils_protoc//plugins/protoc-gen-connect-go` | [connectrpc/connect-go](https://github.com/connectrpc/connect-go) `protoc-gen-connect-go` | v1.21.0, v2.0.0 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_protoc//plugins/protoc-gen-connect-rust` | [connectrpc/connect-rust](https://github.com/connectrpc/connect-rust) `protoc-gen-connect-rust` | v0.9.0, v0.9.1 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | -| `@bazel_utils_protoc//plugins/protoc-gen-contract-rust` | [sonalect/proto-contract.rs](https://github.com/sonalect/proto-contract.rs) | v0.1.0, v0.2.0, v0.2.1 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_protoc//plugins/protoc-gen-go` | [protocolbuffers/protobuf-go](https://github.com/protocolbuffers/protobuf-go) `protoc-gen-go` | v1.36.12 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_protoc//plugins/protoc-gen-grpc-gateway` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-grpc-gateway` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_protoc//plugins/protoc-gen-openapiv2` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-openapiv2` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | -| `@bazel_utils_protoc//plugins/protoc-gen-protovalidate-buffa` | [mathematic-inc/protovalidate-buffa](https://github.com/mathematic-inc/protovalidate-buffa) | v0.10.0, v0.10.1, v0.10.2, v0.10.3 | linux/darwin/windows amd64+arm64 | +| Name | Type | Required | Default | Description | +| --------- | -------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `name` | `string` | yes | — | PATH name (`protoc-gen-buffa`, `protoc-gen-buffa-packaging`, `protoc-gen-connect-go`, `protoc-gen-connect-rust`, `protoc-gen-go`, `protoc-gen-grpc-gateway`, `protoc-gen-openapiv2`, `protoc-gen-protocontract-buffa`, `protoc-gen-protovalidate-buffa`). | +| `version` | `string` | yes | — | GitHub release tag (must exist in this module's `plugins//registry.bzl`). | + +| Label | Upstream | Catalog versions | Platforms | +| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------- | ------------------------------------------------------------------- | +| `@bazel_utils_protoc//plugins/protoc-gen-buffa` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | +| `@bazel_utils_protoc//plugins/protoc-gen-buffa-packaging` | [anthropics/buffa](https://github.com/anthropics/buffa) `protoc-gen-buffa-packaging` | v0.9.2 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | +| `@bazel_utils_protoc//plugins/protoc-gen-connect-go` | [connectrpc/connect-go](https://github.com/connectrpc/connect-go) `protoc-gen-connect-go` | v1.21.0, v1.21.1, v2.0.0, v2.0.1 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_protoc//plugins/protoc-gen-connect-rust` | [connectrpc/connect-rust](https://github.com/connectrpc/connect-rust) `protoc-gen-connect-rust` | v0.9.0, v0.9.1 | linux/darwin/windows amd64+arm64 (windows-arm64 runs the x64 build) | +| `@bazel_utils_protoc//plugins/protoc-gen-go` | [protocolbuffers/protobuf-go](https://github.com/protocolbuffers/protobuf-go) `protoc-gen-go` | v1.36.12 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_protoc//plugins/protoc-gen-grpc-gateway` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-grpc-gateway` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_protoc//plugins/protoc-gen-openapiv2` | [grpc-ecosystem/grpc-gateway](https://github.com/grpc-ecosystem/grpc-gateway) `protoc-gen-openapiv2` | v2.30.0, v2.31.0 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_protoc//plugins/protoc-gen-protocontract-buffa` | [sonalect/protocontract-buffa.rs](https://github.com/sonalect/protocontract-buffa.rs) ([crates.io](https://crates.io/crates/protoc-gen-protocontract-buffa)) | v0.3.1 | linux/darwin/windows amd64+arm64 | +| `@bazel_utils_protoc//plugins/protoc-gen-protovalidate-buffa` | [mathematic-inc/protovalidate-buffa](https://github.com/mathematic-inc/protovalidate-buffa) | v0.10.0, v0.10.1, v0.10.2, v0.10.3, v0.10.4 | linux/darwin/windows amd64+arm64 | --- @@ -439,13 +439,13 @@ Both tools run in the `manifest` (`go.mod`) directory, so `go.mod` may be below ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_go", version = "0.3.4") +bazel_dep(name = "bazel_utils_go", version = "0.4.0") git_override( module_name = "bazel_utils_go", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "go", - tag = "v0.3.4", + tag = "v0.4.0", ) ``` @@ -513,13 +513,13 @@ Prebuilt [ruff](https://github.com/astral-sh/ruff) and [uv](https://github.com/a ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_python", version = "0.3.4") +bazel_dep(name = "bazel_utils_python", version = "0.4.0") git_override( module_name = "bazel_utils_python", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "python", - tag = "v0.3.4", + tag = "v0.4.0", ) ``` @@ -603,13 +603,13 @@ Prebuilt [cargo-audit](https://github.com/rustsec/rustsec/tree/main/cargo-audit) ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_rust", version = "0.3.4") +bazel_dep(name = "bazel_utils_rust", version = "0.4.0") git_override( module_name = "bazel_utils_rust", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "rust", - tag = "v0.3.4", + tag = "v0.4.0", ) ``` @@ -650,13 +650,13 @@ cargo_audit_test( ```starlark # MODULE.bazel -bazel_dep(name = "bazel_utils_md", version = "0.3.4") +bazel_dep(name = "bazel_utils_md", version = "0.4.0") git_override( module_name = "bazel_utils_md", remote = "https://github.com/sonalect/bazel_utils.git", strip_prefix = "markdown", - tag = "v0.3.4", + tag = "v0.4.0", ) ``` diff --git a/bazel/MODULE.bazel b/bazel/MODULE.bazel index f5e3e11..272d4c9 100644 --- a/bazel/MODULE.bazel +++ b/bazel/MODULE.bazel @@ -2,10 +2,10 @@ module( name = "bazel_utils_bazel", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") include("//:buildifier.MODULE.bazel") diff --git a/buf/MODULE.bazel b/buf/MODULE.bazel index 9b778ec..ba0686c 100644 --- a/buf/MODULE.bazel +++ b/buf/MODULE.bazel @@ -2,19 +2,19 @@ module( name = "bazel_utils_buf", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") -bazel_dep(name = "bazel_utils_protoc", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") +bazel_dep(name = "bazel_utils_protoc", version = "0.4.0") bazel_dep(name = "platforms", version = "1.1.0") bazel_dep(name = "protobuf", version = "36.2") # Fallback when this module is root. The consumer's buf.toolchains tag wins # and is what gets downloaded. buf = use_extension("//:extensions.bzl", "buf") -buf.toolchains(version = "v1.73.0") +buf.toolchains(version = "v1.74.0") use_repo(buf, "buf") # Root-module `protoc.plugin` labels for buf_generate PATH (`ROOT_PLUGIN_LABELS`). diff --git a/buf/protoc/plugins/protoc-gen-contract-rust/BUILD.bazel b/buf/protoc/plugins/protoc-gen-contract-rust/BUILD.bazel deleted file mode 100644 index 605d151..0000000 --- a/buf/protoc/plugins/protoc-gen-contract-rust/BUILD.bazel +++ /dev/null @@ -1,6 +0,0 @@ -package(default_visibility = ["//visibility:public"]) - -alias( - name = "protoc-gen-contract-rust", - actual = "@bazel_utils_protoc//plugins/protoc-gen-contract-rust", -) diff --git a/buf/protoc/plugins/protoc-gen-protocontract-buffa/BUILD.bazel b/buf/protoc/plugins/protoc-gen-protocontract-buffa/BUILD.bazel new file mode 100644 index 0000000..b48abd5 --- /dev/null +++ b/buf/protoc/plugins/protoc-gen-protocontract-buffa/BUILD.bazel @@ -0,0 +1,6 @@ +package(default_visibility = ["//visibility:public"]) + +alias( + name = "protoc-gen-protocontract-buffa", + actual = "@bazel_utils_protoc//plugins/protoc-gen-protocontract-buffa", +) diff --git a/buf/registry.bzl b/buf/registry.bzl index 883c48f..d93b5a8 100644 --- a/buf/registry.bzl +++ b/buf/registry.bzl @@ -59,6 +59,32 @@ CLI = { "sha256": "2250d5cba96a64f6ebc78d67221feab113622a24fbaf2909d43c87f8586d1bed", }, }, + "v1.74.0": { + "linux_amd64": { + "file": "buf-Linux-x86_64", + "sha256": "92326d957d613712669fb55f9e4340946a8142a92120e09008459118778273d2", + }, + "linux_arm64": { + "file": "buf-Linux-aarch64", + "sha256": "d42b471501a85dbadb40062960492dd81ce5ca4e413f4133d514d3ae3c0af4df", + }, + "darwin_amd64": { + "file": "buf-Darwin-x86_64", + "sha256": "a385ecb788f4255c855d0e77643a60ed0de23f9eb978bd54d695c820aa29e172", + }, + "darwin_arm64": { + "file": "buf-Darwin-arm64", + "sha256": "602d73e39a8835efd29a02ba6db6060ae86e4a0df19b8ac4403032b5deae3569", + }, + "windows_amd64": { + "file": "buf-Windows-x86_64.exe", + "sha256": "0677ba830deceadd619455b058631cc00ffbe305858e03d6a90b17b12cb16d38", + }, + "windows_arm64": { + "file": "buf-Windows-arm64.exe", + "sha256": "681d1d56d42d7e5d74cbcd940cc0e8d656aed66d926a1e0c9f6ef9bd514d8fff", + }, + }, } def cli_platforms(version): diff --git a/core/MODULE.bazel b/core/MODULE.bazel index 5954799..2d54d94 100644 --- a/core/MODULE.bazel +++ b/core/MODULE.bazel @@ -2,7 +2,7 @@ module( name = "bazel_utils_core", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_lib", version = "3.7.2") diff --git a/go/MODULE.bazel b/go/MODULE.bazel index b7f0faa..6705c97 100644 --- a/go/MODULE.bazel +++ b/go/MODULE.bazel @@ -2,11 +2,11 @@ module( name = "bazel_utils_go", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") bazel_dep(name = "gazelle", version = "0.54.0") bazel_dep(name = "rules_go", version = "0.64.2") diff --git a/go/go.mod b/go/go.mod index 066b07f..1a8057d 100644 --- a/go/go.mod +++ b/go/go.mod @@ -9,7 +9,7 @@ require ( golang.org/x/mod v0.42.0 // indirect golang.org/x/sync v0.24.0 // indirect golang.org/x/sys v0.49.0 // indirect - golang.org/x/telemetry v0.0.0-20260924152758-ed294f943157 // indirect - golang.org/x/tools v0.51.0 // indirect - golang.org/x/vuln v1.8.0 // indirect + golang.org/x/telemetry v0.0.0-20261010193011-f71dc92da45e // indirect + golang.org/x/tools v0.52.0 // indirect + golang.org/x/vuln v1.9.0 // indirect ) diff --git a/go/go.sum b/go/go.sum index 347ddd8..b6172fc 100644 --- a/go/go.sum +++ b/go/go.sum @@ -10,13 +10,13 @@ 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.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA= golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og= -golang.org/x/telemetry v0.0.0-20260924152758-ed294f943157 h1:DftxASHKl6JolFPqoN+2WrFO53JvkHwRXvFqf8gsivA= -golang.org/x/telemetry v0.0.0-20260924152758-ed294f943157/go.mod h1:i+ivNqjDnTF3WTElsdk5g9V5DTSBYgdNo7xTU9SDwYA= -golang.org/x/tools v0.51.0 h1:k4Xc/1Om9jwkBJBo4NVLMSARBoWtK10mx+W5BnXCeAI= -golang.org/x/tools v0.51.0/go.mod h1:9eEncMayCV6zRMGhR5eZEC2iBx98qWcF1HZ9Z7wJOoA= +golang.org/x/telemetry v0.0.0-20261010193011-f71dc92da45e h1:P6NGsugec4oASJ+yKMNgTndeo0h2CbixZLvQIe9h5R4= +golang.org/x/telemetry v0.0.0-20261010193011-f71dc92da45e/go.mod h1:GNu+nb+E5axfGmP+Uu3ZVQu5lE/Xk42MjZOHWUD94/o= +golang.org/x/tools v0.52.0 h1:ryxg4U63oaUYk7uOLTF37n43f4qgtGvqV4Ioit1BaEs= +golang.org/x/tools v0.52.0/go.mod h1:ItcP5UNaVGG+Yc4eIYmaFLNJ4soEopkx5Y2d4lcEurs= golang.org/x/tools/go/expect v0.1.1-deprecated h1:jpBZDwmgPhXsKZC6WhL20P4b/wmnpsEAGHaNy0n/rJM= golang.org/x/tools/go/expect v0.1.1-deprecated/go.mod h1:eihoPOH+FgIqa3FpoTwguz/bVUSGBlGQU67vpBeOrBY= golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated h1:1h2MnaIAIXISqTFKdENegdpAgUXz6NrPEsbIeWaBRvM= golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated/go.mod h1:RVAQXBGNv1ib0J382/DPCRS/BPnsGebyM1Gj5VSDpG8= -golang.org/x/vuln v1.8.0 h1:clG4qBU6zH5VKjti8n5j8BBuYzoSha392xXMkXS351U= -golang.org/x/vuln v1.8.0/go.mod h1:Fzm4XK3Hbl1ZvZ7JpNTEWb7CJWOZ7m2LX0GLu4Fsrwo= +golang.org/x/vuln v1.9.0 h1:12VaqnI9kJfqwRoPptxoqsUhQtdfrSbdksT7X/KY/sc= +golang.org/x/vuln v1.9.0/go.mod h1:E/Frwm0xp49fTyBW+6CQHdkvobknbwUM49yEpMGUauw= diff --git a/markdown/MODULE.bazel b/markdown/MODULE.bazel index 5d55e00..485ad8d 100644 --- a/markdown/MODULE.bazel +++ b/markdown/MODULE.bazel @@ -2,61 +2,61 @@ module( name = "bazel_utils_md", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "aspect_rules_js", version = "3.5.1") bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") bazel_dep(name = "rules_nodejs", version = "6.7.6") # Newer than rules_nodejs 6.7.6's catalog, so the sha256s come from -# https://nodejs.org/dist/v24.21.0/SHASUMS256.txt. +# https://nodejs.org/dist/v24.22.0/SHASUMS256.txt. # Key: "-"; value: [filename, strip_prefix, sha256]. node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node") node.toolchain( node_repositories = { - "24.21.0-darwin_amd64": [ - "node-v24.21.0-darwin-x64.tar.gz", - "node-v24.21.0-darwin-x64", - "1462cb3b3046b815cf8ea436d3da450ec1a9f11dac7e5a46b0ada5305d7e8097", + "24.22.0-darwin_amd64": [ + "node-v24.22.0-darwin-x64.tar.gz", + "node-v24.22.0-darwin-x64", + "495e3f273c645f3c4677d438304cdfc701729ea5dec5728f5c8e76a2dece4b91", ], - "24.21.0-darwin_arm64": [ - "node-v24.21.0-darwin-arm64.tar.gz", - "node-v24.21.0-darwin-arm64", - "bed7eea5325e1108f32ce5228ddd6a5f0f08a499ee42aa7442aea583702f6057", + "24.22.0-darwin_arm64": [ + "node-v24.22.0-darwin-arm64.tar.gz", + "node-v24.22.0-darwin-arm64", + "6a9724d9b50a5f22b4816cded441b5a8d9ddae546191a5e5b7efa5a5e2ee26d5", ], - "24.21.0-linux_amd64": [ - "node-v24.21.0-linux-x64.tar.xz", - "node-v24.21.0-linux-x64", - "fd8e59d5a511510f6a298afb548f18c7d2b1be404d8b4a27d94fbe49f56cb2d6", + "24.22.0-linux_amd64": [ + "node-v24.22.0-linux-x64.tar.xz", + "node-v24.22.0-linux-x64", + "cc2f601cee82d9a5a233302fe307abc600727035fd7d2c3a3571755989e95008", ], - "24.21.0-linux_arm64": [ - "node-v24.21.0-linux-arm64.tar.xz", - "node-v24.21.0-linux-arm64", - "6ad1325edbdb5649c379b75a237147a666c95d4f9ae8d340fef2d1575d289ad2", + "24.22.0-linux_arm64": [ + "node-v24.22.0-linux-arm64.tar.xz", + "node-v24.22.0-linux-arm64", + "fef00bb4d36e1c50104a9775a10359beee98f162b4104dd12472c75065c6a143", ], - "24.21.0-windows_amd64": [ - "node-v24.21.0-win-x64.zip", - "node-v24.21.0-win-x64", - "158f7685b44de51f6c0df1d153526cbcd3e1bc739a8dfc607721cef75de9e541", + "24.22.0-windows_amd64": [ + "node-v24.22.0-win-x64.zip", + "node-v24.22.0-win-x64", + "f9683a19877e12a9b167305c8db71040d812876359de21f0d2e97c3f321f80c3", ], - "24.21.0-windows_arm64": [ - "node-v24.21.0-win-arm64.zip", - "node-v24.21.0-win-arm64", - "8779b1bde1d39f8d420e3b57aa657b39891af434d3de44a919044cec06785921", + "24.22.0-windows_arm64": [ + "node-v24.22.0-win-arm64.zip", + "node-v24.22.0-win-arm64", + "3a5c209a5bc59e65b3bc0fa13ed5e166a26bd3d55332847f498b76b037408d61", ], }, - node_version = "24.21.0", + node_version = "24.22.0", ) # Newer than rules_js 3.5.1's catalog, so the integrity comes from npm -# (https://registry.npmjs.org/pnpm/12.11.2, dist.integrity). +# (https://registry.npmjs.org/pnpm/12.13.0, dist.integrity). # Keep in sync with package.json `packageManager`. pnpm = use_extension("@aspect_rules_js//npm:extensions.bzl", "pnpm") pnpm.pnpm( - pnpm_version = "12.11.2", - pnpm_version_integrity = "sha512-JaUWUqGWeFr18ovabf6NxYLr76SsHRgCIc4TkCMcX7dmN4IupLbkYzznSs3LCnf3Ja8RutOBd/3t2u6BipVcuQ==", + pnpm_version = "12.13.0", + pnpm_version_integrity = "sha512-HlVxm/JugJ3OXFCE/euqZO+z2pA4rl1oqfimgxHxpFhByMO3ajcpjDtm9rzIBAmpt/M8eKcWij6Q+2Wl2CNa5A==", ) use_repo(pnpm, "pnpm") diff --git a/markdown/package.json b/markdown/package.json index 405b099..e078725 100644 --- a/markdown/package.json +++ b/markdown/package.json @@ -1,7 +1,7 @@ { "name": "bazel_utils", "private": true, - "packageManager": "pnpm@12.11.2", + "packageManager": "pnpm@12.13.0", "devDependencies": { "markdownlint-cli2": "catalog:" } diff --git a/protoc/MODULE.bazel b/protoc/MODULE.bazel index 834dd8b..db9f67c 100644 --- a/protoc/MODULE.bazel +++ b/protoc/MODULE.bazel @@ -2,11 +2,11 @@ module( name = "bazel_utils_protoc", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") # Hermetic bsdtar extracts zip releases (//plugins:unzip.bzl). bazel_dep(name = "tar.bzl", version = "0.10.9") @@ -24,16 +24,12 @@ protoc.plugin( ) protoc.plugin( name = "protoc-gen-connect-go", - version = "v1.21.0", + version = "v1.21.1", ) protoc.plugin( name = "protoc-gen-connect-rust", version = "v0.9.1", ) -protoc.plugin( - name = "protoc-gen-contract-rust", - version = "v0.2.1", -) protoc.plugin( name = "protoc-gen-go", version = "v1.36.12", @@ -46,9 +42,13 @@ protoc.plugin( name = "protoc-gen-openapiv2", version = "v2.31.0", ) +protoc.plugin( + name = "protoc-gen-protocontract-buffa", + version = "v0.3.1", +) protoc.plugin( name = "protoc-gen-protovalidate-buffa", - version = "v0.10.3", + version = "v0.10.4", ) use_repo( protoc, @@ -56,10 +56,10 @@ use_repo( "protoc_gen_buffa_packaging", "protoc_gen_connect_go", "protoc_gen_connect_rust", - "protoc_gen_contract_rust", "protoc_gen_go", "protoc_gen_grpc_gateway", "protoc_gen_openapiv2", + "protoc_gen_protocontract_buffa", "protoc_gen_protovalidate_buffa", "protoc_root_plugins", ) diff --git a/protoc/plugins/BUILD.bazel b/protoc/plugins/BUILD.bazel index 16044fc..360a7cb 100644 --- a/protoc/plugins/BUILD.bazel +++ b/protoc/plugins/BUILD.bazel @@ -11,10 +11,10 @@ bzl_library( "//plugins/protoc-gen-buffa-packaging:registry_bzl", "//plugins/protoc-gen-connect-go:registry_bzl", "//plugins/protoc-gen-connect-rust:registry_bzl", - "//plugins/protoc-gen-contract-rust:registry_bzl", "//plugins/protoc-gen-go:registry_bzl", "//plugins/protoc-gen-grpc-gateway:registry_bzl", "//plugins/protoc-gen-openapiv2:registry_bzl", + "//plugins/protoc-gen-protocontract-buffa:registry_bzl", "//plugins/protoc-gen-protovalidate-buffa:registry_bzl", ], ) diff --git a/protoc/plugins/defs.bzl b/protoc/plugins/defs.bzl index ac4ab6f..980165d 100644 --- a/protoc/plugins/defs.bzl +++ b/protoc/plugins/defs.bzl @@ -8,21 +8,21 @@ load("//plugins/protoc-gen-buffa:registry.bzl", _buffa = "PLUGIN") load("//plugins/protoc-gen-buffa-packaging:registry.bzl", _packaging = "PLUGIN") load("//plugins/protoc-gen-connect-go:registry.bzl", _connect_go = "PLUGIN") load("//plugins/protoc-gen-connect-rust:registry.bzl", _connect_rust = "PLUGIN") -load("//plugins/protoc-gen-contract-rust:registry.bzl", _contract_rust = "PLUGIN") load("//plugins/protoc-gen-go:registry.bzl", _go = "PLUGIN") load("//plugins/protoc-gen-grpc-gateway:registry.bzl", _grpc_gateway = "PLUGIN") load("//plugins/protoc-gen-openapiv2:registry.bzl", _openapiv2 = "PLUGIN") +load("//plugins/protoc-gen-protocontract-buffa:registry.bzl", _protocontract_buffa = "PLUGIN") load("//plugins/protoc-gen-protovalidate-buffa:registry.bzl", _protovalidate = "PLUGIN") PLUGINS = { _buffa["name"]: _buffa, _connect_go["name"]: _connect_go, _connect_rust["name"]: _connect_rust, - _contract_rust["name"]: _contract_rust, _go["name"]: _go, _grpc_gateway["name"]: _grpc_gateway, _openapiv2["name"]: _openapiv2, _packaging["name"]: _packaging, + _protocontract_buffa["name"]: _protocontract_buffa, _protovalidate["name"]: _protovalidate, } diff --git a/protoc/plugins/protoc-gen-connect-go/registry.bzl b/protoc/plugins/protoc-gen-connect-go/registry.bzl index 9e2fbac..5b55e21 100644 --- a/protoc/plugins/protoc-gen-connect-go/registry.bzl +++ b/protoc/plugins/protoc-gen-connect-go/registry.bzl @@ -45,6 +45,38 @@ PLUGIN = { "sha256": "ddebd2ab81fbfd039d3643e5dabe39d16b67c8fc38e8ae16542b37b09842ef84", }, }, + "v1.21.1": { + "linux_amd64": { + "bin": "protoc-gen-connect-go", + "file": "Linux-x86_64.tar.gz", + "sha256": "5c34eedc4ee9970a6349c69d494fbeff650a4b3e411a63cc52304eec3f16aef8", + }, + "linux_arm64": { + "bin": "protoc-gen-connect-go", + "file": "Linux-aarch64.tar.gz", + "sha256": "11fda185a7dcebc5ac5b0838ec96ff143cc2a67b76c7d0f74479c98bb69cff4b", + }, + "darwin_amd64": { + "bin": "protoc-gen-connect-go", + "file": "Darwin-x86_64.tar.gz", + "sha256": "fb205d8c9f661b0b4d4c1062402b67c115beedc544ac489e526a5971b93801bc", + }, + "darwin_arm64": { + "bin": "protoc-gen-connect-go", + "file": "Darwin-arm64.tar.gz", + "sha256": "ea7d230e13d9b48e0c5b9903fdf1dad04a2940e07fdf15821b0daf23d8740cbb", + }, + "windows_amd64": { + "bin": "protoc-gen-connect-go.exe", + "file": "Windows-x86_64.zip", + "sha256": "668771bbfd04859a62773d9926c8defa4939b8cf8bb475d8d0a431af091beb02", + }, + "windows_arm64": { + "bin": "protoc-gen-connect-go.exe", + "file": "Windows-arm64.zip", + "sha256": "c195dc645d21d4b69243596d1e6b22655fd55296326621217bdba3a2c267b69a", + }, + }, "v2.0.0": { "linux_amd64": { "bin": "protoc-gen-connect-go", @@ -77,5 +109,37 @@ PLUGIN = { "sha256": "089f592bbce29e932d65b2d951d340a8798a5b0fca0c81eb857bfc16c41213d0", }, }, + "v2.0.1": { + "linux_amd64": { + "bin": "protoc-gen-connect-go", + "file": "Linux-x86_64.tar.gz", + "sha256": "35bcf3feb82d29aaef8a40aae87e6a5738fbfc684e727e13e481428726c6b6b7", + }, + "linux_arm64": { + "bin": "protoc-gen-connect-go", + "file": "Linux-aarch64.tar.gz", + "sha256": "d4807adcd979bc6b41cc929de3de4b5a808001805937bd94c3713251b0a40cf7", + }, + "darwin_amd64": { + "bin": "protoc-gen-connect-go", + "file": "Darwin-x86_64.tar.gz", + "sha256": "283f0a8dfc07021c88a3511536fe0e92ff10ca328e40fafacbd911230c70fd5e", + }, + "darwin_arm64": { + "bin": "protoc-gen-connect-go", + "file": "Darwin-arm64.tar.gz", + "sha256": "0ad1d58b1c8097cc6d38e91dee8a724f356f014dce96107d52bc75ed7234755e", + }, + "windows_amd64": { + "bin": "protoc-gen-connect-go.exe", + "file": "Windows-x86_64.zip", + "sha256": "506f76f531b0293882f302213e8bc7164aa7bf606d1712974d6c6b33cba0c38b", + }, + "windows_arm64": { + "bin": "protoc-gen-connect-go.exe", + "file": "Windows-arm64.zip", + "sha256": "a634b0dc8aa9f6210c3cecd5f4ef034546d9a76961204d75c13fe9158092e3da", + }, + }, }, } diff --git a/protoc/plugins/protoc-gen-contract-rust/registry.bzl b/protoc/plugins/protoc-gen-contract-rust/registry.bzl deleted file mode 100644 index 19fc07c..0000000 --- a/protoc/plugins/protoc-gen-contract-rust/registry.bzl +++ /dev/null @@ -1,114 +0,0 @@ -"""GitHub-release catalog for protoc-gen-contract-rust. - -Selected by `protoc.plugin(name = "protoc-gen-contract-rust", version = …)`. -This file is the fetch catalog (URL template + sha256), not the pin. -Unknown version → fail() in plugin_platforms. -""" - -NAME = "protoc-gen-contract-rust" - -# kind `file`: raw GitHub release binary, static per platform; the sha256 -# of each comes from the release's checksums-sha256.txt. -PLUGIN = { - "kind": "file", - "name": NAME, - "url": "https://github.com/sonalect/proto-contract.rs/releases/download/{version}/protoc-gen-contract-rust-{version}-{file}", - "versions": { - "v0.1.0": { - "linux_amd64": { - "bin": "protoc-gen-contract-rust", - "file": "linux-x86_64", - "sha256": "baa9229690db2b883de40509156e75138c4b638433e560d3284258d242ce88b9", - }, - "linux_arm64": { - "bin": "protoc-gen-contract-rust", - "file": "linux-aarch64", - "sha256": "e6f318ca610eba2102adce3c74b36cd61117721769096cbd67f3e8292a482f94", - }, - "darwin_amd64": { - "bin": "protoc-gen-contract-rust", - "file": "darwin-x86_64", - "sha256": "23ec7a3d2d640513702eec45e09983c0ee7ddd0ce5e8b527adad6da2b24be589", - }, - "darwin_arm64": { - "bin": "protoc-gen-contract-rust", - "file": "darwin-aarch64", - "sha256": "3feecd1457ebb086daa2660a5a68fa648764f0c07ccd4cf63c43897203d69186", - }, - "windows_amd64": { - "bin": "protoc-gen-contract-rust.exe", - "file": "windows-x86_64.exe", - "sha256": "5e86f9e1c99919b991391d942502da066273049b7b36b9340a375b1cdd23e133", - }, - "windows_arm64": { - "bin": "protoc-gen-contract-rust.exe", - "file": "windows-aarch64.exe", - "sha256": "f667db5d6d84c724831e7cacbc0df04b1392e287f681c784f169dd7b0d21c40d", - }, - }, - "v0.2.0": { - "linux_amd64": { - "bin": "protoc-gen-contract-rust", - "file": "linux-x86_64", - "sha256": "1c527cd80b1894cec5bff4fbde419c438069c7dadd8852ce09c9b13ed4af402f", - }, - "linux_arm64": { - "bin": "protoc-gen-contract-rust", - "file": "linux-aarch64", - "sha256": "379dbf1d9569e99590ca3a433c936f2f11d8f00c70ff51ad6a8b67948b4e44d6", - }, - "darwin_amd64": { - "bin": "protoc-gen-contract-rust", - "file": "darwin-x86_64", - "sha256": "593fc9889eba949f496c3aacf31d86453216245bffe8bccae3bf04b954463ad8", - }, - "darwin_arm64": { - "bin": "protoc-gen-contract-rust", - "file": "darwin-aarch64", - "sha256": "6dff273be67bafb605b9c65ed3d0a398bb5613e56bb9eea92dde96f7a38e55c0", - }, - "windows_amd64": { - "bin": "protoc-gen-contract-rust.exe", - "file": "windows-x86_64.exe", - "sha256": "1910f88b7ac6e073578d4e3efd50e571f466688edb453c068c868ee1fb77fc1b", - }, - "windows_arm64": { - "bin": "protoc-gen-contract-rust.exe", - "file": "windows-aarch64.exe", - "sha256": "0a42cf06bdaf82b0edff7d178f9e53e9bb032810b68db2d9a51efd4e712d2ad8", - }, - }, - "v0.2.1": { - "linux_amd64": { - "bin": "protoc-gen-contract-rust", - "file": "linux-x86_64", - "sha256": "30dfe2a1c90c1a4b3ccdc3f4b86d73de2d2c5d525588a5dcb29d42e4c758b5c9", - }, - "linux_arm64": { - "bin": "protoc-gen-contract-rust", - "file": "linux-aarch64", - "sha256": "b20416183316051924255a8a4e0cf8b85c15a360bffef8e1eca9bb954700666c", - }, - "darwin_amd64": { - "bin": "protoc-gen-contract-rust", - "file": "darwin-x86_64", - "sha256": "e8f6943cb931a99088dc5e20d3eff24ac8133df18449bb9aee1ecd9c8b9d695a", - }, - "darwin_arm64": { - "bin": "protoc-gen-contract-rust", - "file": "darwin-aarch64", - "sha256": "49dbba4fdf9377e2480c92a8d137f8f9dd9695597760206684c8d89e1424a510", - }, - "windows_amd64": { - "bin": "protoc-gen-contract-rust.exe", - "file": "windows-x86_64.exe", - "sha256": "af7a06b98281a5a16b3e137031523c9dcab04bcc6e717214431c117b8c8f05e5", - }, - "windows_arm64": { - "bin": "protoc-gen-contract-rust.exe", - "file": "windows-aarch64.exe", - "sha256": "3ba58ea3fcb302d481e5512bbc626915b9371f7548d78fb0ce10ecae141d70ed", - }, - }, - }, -} diff --git a/protoc/plugins/protoc-gen-contract-rust/BUILD.bazel b/protoc/plugins/protoc-gen-protocontract-buffa/BUILD.bazel similarity index 68% rename from protoc/plugins/protoc-gen-contract-rust/BUILD.bazel rename to protoc/plugins/protoc-gen-protocontract-buffa/BUILD.bazel index ea6e61c..7b4d807 100644 --- a/protoc/plugins/protoc-gen-contract-rust/BUILD.bazel +++ b/protoc/plugins/protoc-gen-protocontract-buffa/BUILD.bazel @@ -4,8 +4,8 @@ package(default_visibility = ["//visibility:public"]) # Target name is the PATH name (`local:` / protoc-gen) the frontend looks up. alias( - name = "protoc-gen-contract-rust", - actual = "@protoc_gen_contract_rust//:protoc-gen-contract-rust", + name = "protoc-gen-protocontract-buffa", + actual = "@protoc_gen_protocontract_buffa//:protoc-gen-protocontract-buffa", ) bzl_library( diff --git a/protoc/plugins/protoc-gen-protocontract-buffa/registry.bzl b/protoc/plugins/protoc-gen-protocontract-buffa/registry.bzl new file mode 100644 index 0000000..cbf95e1 --- /dev/null +++ b/protoc/plugins/protoc-gen-protocontract-buffa/registry.bzl @@ -0,0 +1,54 @@ +"""GitHub-release catalog for protoc-gen-protocontract-buffa. + +Selected by `protoc.plugin(name = "protoc-gen-protocontract-buffa", version = …)`. +This file is the fetch catalog (URL template + sha256), not the pin. +Unknown version → fail() in plugin_platforms. + +The crates on crates.io (`protocontract`, `protoc-gen-protocontract-buffa`) +are source only; the prebuilt binaries come from the project's GitHub +Releases. +""" + +NAME = "protoc-gen-protocontract-buffa" + +# kind `file`: raw GitHub release binary, static per platform; the sha256 +# of each comes from the release's checksums-sha256.txt. +PLUGIN = { + "kind": "file", + "name": NAME, + "url": "https://github.com/sonalect/protocontract-buffa.rs/releases/download/{version}/protoc-gen-protocontract-buffa-{version}-{file}", + "versions": { + "v0.3.1": { + "linux_amd64": { + "bin": "protoc-gen-protocontract-buffa", + "file": "linux-x86_64", + "sha256": "acda39630af9aefdc7db6714255a9779f8a2c364eddb9aed32b72dd06be161cf", + }, + "linux_arm64": { + "bin": "protoc-gen-protocontract-buffa", + "file": "linux-aarch64", + "sha256": "3ecd5bb5bc7371cd59f8f7fe1e39d5f760180b6cabb9405b0e9523fb6720b7af", + }, + "darwin_amd64": { + "bin": "protoc-gen-protocontract-buffa", + "file": "darwin-x86_64", + "sha256": "53a5588994251cd3f5e759c0753b00ccbfe80d46e0e6de850cfd0845f1ee4f04", + }, + "darwin_arm64": { + "bin": "protoc-gen-protocontract-buffa", + "file": "darwin-aarch64", + "sha256": "ebeb0f151d95743d68657e986f41fcb3a9c9f102383106bc4efbd00be272989f", + }, + "windows_amd64": { + "bin": "protoc-gen-protocontract-buffa.exe", + "file": "windows-x86_64.exe", + "sha256": "6303b6f3ff5118a77ed57c3a2c693973f5a4df5aae12ceb65df2a7aec654a4b3", + }, + "windows_arm64": { + "bin": "protoc-gen-protocontract-buffa.exe", + "file": "windows-aarch64.exe", + "sha256": "d47e5bcc89e7b561b91f5510eddb93ddd2a92b91b9ce64e3148e2acdfa63d007", + }, + }, + }, +} diff --git a/protoc/plugins/protoc-gen-protovalidate-buffa/registry.bzl b/protoc/plugins/protoc-gen-protovalidate-buffa/registry.bzl index c7a33c7..a96e006 100644 --- a/protoc/plugins/protoc-gen-protovalidate-buffa/registry.bzl +++ b/protoc/plugins/protoc-gen-protovalidate-buffa/registry.bzl @@ -141,5 +141,37 @@ PLUGIN = { "sha256": "5940a770b52195cc209eb6f06ecd67a1cfdbb1128925825b4822364cc0b1ed82", }, }, + "v0.10.4": { + "linux_amd64": { + "bin": "protoc-gen-protovalidate-buffa", + "file": "x86_64-unknown-linux-gnu.tar.gz", + "sha256": "832496ed62408e89db06d775b79ab99f6cc7b847b48bee0219b168d48e9dbde2", + }, + "linux_arm64": { + "bin": "protoc-gen-protovalidate-buffa", + "file": "aarch64-unknown-linux-gnu.tar.gz", + "sha256": "a51d55801844079de280a63f5737fe97a92e02945041113ab9323f2335423c1e", + }, + "darwin_amd64": { + "bin": "protoc-gen-protovalidate-buffa", + "file": "x86_64-apple-darwin.tar.gz", + "sha256": "0e2bc6ec8649f8facf0050d587ffc8befa2396453ad1630f22cbc775c0c36a98", + }, + "darwin_arm64": { + "bin": "protoc-gen-protovalidate-buffa", + "file": "aarch64-apple-darwin.tar.gz", + "sha256": "6a686d89d223e212ee791acee9babb47a11237fad0b536bb30c9defde1f6e603", + }, + "windows_amd64": { + "bin": "protoc-gen-protovalidate-buffa.exe", + "file": "x86_64-pc-windows-msvc.zip", + "sha256": "79d06459a8fa6f306f166a01408f24728bf9083d0d4dacebbeb2cdec09e2db4b", + }, + "windows_arm64": { + "bin": "protoc-gen-protovalidate-buffa.exe", + "file": "aarch64-pc-windows-msvc.zip", + "sha256": "4cd88051db44774f1c65fc955d7b4f400204d0fd090803e041c4d917369044c4", + }, + }, }, } diff --git a/python/MODULE.bazel b/python/MODULE.bazel index 28a8c49..aeb9075 100644 --- a/python/MODULE.bazel +++ b/python/MODULE.bazel @@ -2,11 +2,11 @@ module( name = "bazel_utils_python", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") include("//:ruff.MODULE.bazel") include("//:uv.MODULE.bazel") diff --git a/python/uv.MODULE.bazel b/python/uv.MODULE.bazel index 3703364..a5ba223 100644 --- a/python/uv.MODULE.bazel +++ b/python/uv.MODULE.bazel @@ -1,12 +1,12 @@ """Prebuilt uv (GitHub release) for `uv audit`. Fetched for the exec OS/CPU. sha256 from the release's sha256.sum: -https://github.com/astral-sh/uv/releases/download/0.13.0/sha256.sum +https://github.com/astral-sh/uv/releases/download/0.13.1/sha256.sum """ http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -_UV = "0.13.0" +_UV = "0.13.1" _UV_URL = "https://github.com/astral-sh/uv/releases/download/{version}/uv-{platform}" @@ -17,7 +17,7 @@ _WIN_BUILD = """exports_files(["uv.exe"], visibility = ["//visibility:public"])" http_archive( name = "uv_linux_amd64", build_file_content = _UNIX_BUILD, - sha256 = "b0828fc4cdc47d65951e94b5f0a15a5364420e8dcd88723f3b21e7a2eb30bbc3", + sha256 = "6c86040a8f045ab9adc9e3ec4cdafa03fd00e9a988ed2bf28971c7fc2d0debd0", strip_prefix = "uv-x86_64-unknown-linux-musl", urls = [_UV_URL.format( platform = "x86_64-unknown-linux-musl.tar.gz", @@ -28,7 +28,7 @@ http_archive( http_archive( name = "uv_linux_arm64", build_file_content = _UNIX_BUILD, - sha256 = "281ca6cf43f4e26e35474839ad4861be86de42af2682f74134460f5b2071b96d", + sha256 = "345a8308e4d1835cdfaadf692836fd3137a6d45864773f05ad7bf59442b1ba16", strip_prefix = "uv-aarch64-unknown-linux-musl", urls = [_UV_URL.format( platform = "aarch64-unknown-linux-musl.tar.gz", @@ -39,7 +39,7 @@ http_archive( http_archive( name = "uv_darwin_amd64", build_file_content = _UNIX_BUILD, - sha256 = "5f44dcbde809b632f47c36fadb241cb4d6f9af71d0c8f172b5d2026d3dde742c", + sha256 = "bb7b805bdcf3d0bc8c74ceb94569e6b3e8aa35bd492acdbb9d46bf46d9d4ff6b", strip_prefix = "uv-x86_64-apple-darwin", urls = [_UV_URL.format( platform = "x86_64-apple-darwin.tar.gz", @@ -50,7 +50,7 @@ http_archive( http_archive( name = "uv_darwin_arm64", build_file_content = _UNIX_BUILD, - sha256 = "a9c1b29002cf3c83f07fa9cd8a887a3be0107d90e23189721221e7257db8e3d6", + sha256 = "cfe454573412ff7380d15fc7dae5997ab53ffce72fce0a78e91ddbc84001acd2", strip_prefix = "uv-aarch64-apple-darwin", urls = [_UV_URL.format( platform = "aarch64-apple-darwin.tar.gz", @@ -62,7 +62,7 @@ http_archive( http_archive( name = "uv_windows_amd64", build_file_content = _WIN_BUILD, - sha256 = "088962f9e7b7bd9ea740c04c650b2a21c8928c345bd99ac24350dc924dba656c", + sha256 = "3b2661a463a5baea7f5076ea2b25ab71d77f36a6c0d809e5350651792f80a672", urls = [_UV_URL.format( platform = "x86_64-pc-windows-msvc.zip", version = _UV, @@ -73,7 +73,7 @@ http_archive( http_archive( name = "uv_windows_arm64", build_file_content = _WIN_BUILD, - sha256 = "cb54028b59aa87f11cf6dec293ce000420043a49a8aea522e822a671321f8932", + sha256 = "ec7846a5939b4654afee24f2d82bf6fde71bd7a6952d7748f1135ab301dd0a49", urls = [_UV_URL.format( platform = "aarch64-pc-windows-msvc.zip", version = _UV, diff --git a/rust/MODULE.bazel b/rust/MODULE.bazel index 138638f..c64ba42 100644 --- a/rust/MODULE.bazel +++ b/rust/MODULE.bazel @@ -2,11 +2,11 @@ module( name = "bazel_utils_rust", - version = "0.3.4", + version = "0.4.0", ) bazel_dep(name = "bazel_skylib", version = "1.9.2") -bazel_dep(name = "bazel_utils_core", version = "0.3.4") +bazel_dep(name = "bazel_utils_core", version = "0.4.0") bazel_dep(name = "rules_rust", version = "0.74.0") include("//:cargo_audit.MODULE.bazel") diff --git a/tests/buf/BUILD.bazel b/tests/buf/BUILD.bazel index 6994ad2..c59ee86 100644 --- a/tests/buf/BUILD.bazel +++ b/tests/buf/BUILD.bazel @@ -19,10 +19,10 @@ buf_generate( "@bazel_utils_buf//protoc/plugins/protoc-gen-buffa-packaging", "@bazel_utils_buf//protoc/plugins/protoc-gen-connect-go", "@bazel_utils_buf//protoc/plugins/protoc-gen-connect-rust", - "@bazel_utils_buf//protoc/plugins/protoc-gen-contract-rust", "@bazel_utils_buf//protoc/plugins/protoc-gen-go", "@bazel_utils_buf//protoc/plugins/protoc-gen-grpc-gateway", "@bazel_utils_buf//protoc/plugins/protoc-gen-openapiv2", + "@bazel_utils_buf//protoc/plugins/protoc-gen-protocontract-buffa", "@bazel_utils_buf//protoc/plugins/protoc-gen-protovalidate-buffa", ], template = "buf.gen.all.yaml", diff --git a/tests/buf/buf.gen.all.yaml b/tests/buf/buf.gen.all.yaml index d7f54d7..c84ec08 100644 --- a/tests/buf/buf.gen.all.yaml +++ b/tests/buf/buf.gen.all.yaml @@ -26,7 +26,7 @@ plugins: out: gen/rust/connect strategy: all opt: extern_path=.=crate::proto - - local: protoc-gen-contract-rust + - local: protoc-gen-protocontract-buffa out: gen/rust/contract strategy: all opt: buffa_module=crate::proto