fix(build): point rdp-adapter at the resolved serde_json crate target (#3425) #3485

Merged
mfreeman451 merged 1 commit from fix/rdp-adapter-serde-json-crate-ref into staging 2026-06-01 03:36:15 +00:00
Owner

Summary

Hotfix for a broken bazel build on staging. The Rust add-on SDK commit (bb01022b9, #3425) bumped the main Cargo.lock serde_json to 1.0.150, but rust/rdp-adapter/BUILD.bazel still pinned the now-nonexistent versioned target @rust_crates//:serde_json-1.0.149, so analysis fails:

ERROR: external/rules_rust++crate+rust_crates/BUILD.bazel: no such target
'@@rules_rust++crate+rust_crates//:serde_json-1.0.149' (did you mean serde_json-1.0.150?)

(Invocation 093d87f5-d7da-4765-bca0-fef38601f89f.)

Fix

Bump the two serde_json pins in rdp-adapter/BUILD.bazel from 1.0.1491.0.150 to match the lock.

Why a versioned pin (not the versionless alias)

serde/zeroize beside it use the versionless @rust_crates//:<crate> alias, but serde_json is pinned to a versioned target on purpose: the main crate repo carries two serde_json versions (0.8.6 transitively + the 1.x line), so crate_universe emits no unambiguous versionless @rust_crates//:serde_json alias. The pin just went stale on the patch bump.

Validation

bazel query "deps(//rust/rdp-adapter:rdp_adapter_lib)" now resolves the dep to @rust_crates//:serde_json-1.0.150 (target exists; no "no such target"). Both rdp_adapter_lib and rdp_adapter_ironrdp_lib deps lists are updated.

Note

This pattern (versioned @rust_crates//:<crate>-<x.y.z> pins) is repo-wide and will re-break on any future serde_json bump until rdp-adapter is migrated to a single serde_json version or the pin is regenerated by the crate tooling — out of scope for this hotfix.

🤖 Generated with Claude Code

## Summary **Hotfix for a broken `bazel build` on staging.** The Rust add-on SDK commit (`bb01022b9`, #3425) bumped the main `Cargo.lock` `serde_json` to `1.0.150`, but `rust/rdp-adapter/BUILD.bazel` still pinned the now-nonexistent versioned target `@rust_crates//:serde_json-1.0.149`, so analysis fails: ``` ERROR: external/rules_rust++crate+rust_crates/BUILD.bazel: no such target '@@rules_rust++crate+rust_crates//:serde_json-1.0.149' (did you mean serde_json-1.0.150?) ``` (Invocation `093d87f5-d7da-4765-bca0-fef38601f89f`.) ## Fix Bump the two `serde_json` pins in `rdp-adapter/BUILD.bazel` from `1.0.149` → `1.0.150` to match the lock. ## Why a versioned pin (not the versionless alias) `serde`/`zeroize` beside it use the versionless `@rust_crates//:<crate>` alias, but `serde_json` is pinned to a versioned target on purpose: the main crate repo carries **two** serde_json versions (`0.8.6` transitively + the `1.x` line), so crate_universe emits no unambiguous versionless `@rust_crates//:serde_json` alias. The pin just went stale on the patch bump. ## Validation `bazel query "deps(//rust/rdp-adapter:rdp_adapter_lib)"` now resolves the dep to `@rust_crates//:serde_json-1.0.150` (target exists; no "no such target"). Both `rdp_adapter_lib` and `rdp_adapter_ironrdp_lib` deps lists are updated. ## Note This pattern (versioned `@rust_crates//:<crate>-<x.y.z>` pins) is repo-wide and will re-break on any future serde_json bump until rdp-adapter is migrated to a single serde_json version or the pin is regenerated by the crate tooling — out of scope for this hotfix. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(build): point rdp-adapter at the resolved serde_json crate target (#3425)
Some checks failed
lint / lint (push) Successful in 1m36s
Secret Scan / gitleaks (pull_request) Successful in 1m41s
Rust Tests / test-rust (rust/consumers/zen, cargo) (push) Failing after 2m14s
Rust Tests / test-rust (rust/rdp-adapter, cargo) (push) Successful in 2m16s
lint / lint (pull_request) Successful in 3m4s
Rust Tests / test-rust (rust/rperf-client, cargo) (push) Successful in 3m21s
Rust Tests / test-rust (rust/trapd, cargo) (push) Successful in 3m22s
Rust Tests / test-rust (rust/log-collector, cargo) (push) Successful in 3m43s
Rust Tests / test-rust (//rust/rperf-server:rperf, rust/rperf-server, bazel) (push) Successful in 4m45s
Rust Tests / test-rust (//rust/netprobe:netprobe, //build/platforms:linux_aarch64_musl, rust/netprobe, bazel-static) (push) Successful in 4m46s
Rust Tests / test-rust (//rust/netprobe:netprobe, //build/platforms:linux_x86_64_musl, rust/netprobe, bazel-static) (push) Successful in 4m47s
Rust Tests / test-rust (rust/rdp-connector-probe, cargo) (push) Successful in 5m5s
Rust Tests / test-rust (//rust/netprobe:netprobe_test, rust/netprobe, bazel-test) (push) Successful in 5m50s
Rust Tests / test-rust (rust/srql, cargo) (push) Successful in 6m13s
CI / build (pull_request) Failing after 5m36s
d93568d770
The Rust add-on SDK commit (bb01022b9) bumped the main Cargo.lock serde_json to
1.0.150, so the `@rust_crates//:serde_json-1.0.149` versioned target no longer exists
and `bazel build` fails at analysis: "no such target
'@@rules_rust++crate+rust_crates//:serde_json-1.0.149' (did you mean serde_json-1.0.150?)".

rust/rdp-adapter/BUILD.bazel pins the versioned serde_json target (rather than the
versionless `@rust_crates//:serde_json` alias used for serde/zeroize) because the main
crate repo carries two serde_json versions (0.8.6 transitively + 1.x), so crate_universe
emits no unambiguous versionless alias. Bump the two pins 1.0.149 -> 1.0.150 to match the
lock. Verified with `bazel query deps(//rust/rdp-adapter:rdp_adapter_lib)` — the dep now
resolves to @rust_crates//:serde_json-1.0.150.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
mfreeman451 left a comment

lgtm

lgtm
mfreeman451 deleted branch fix/rdp-adapter-serde-json-crate-ref 2026-06-01 03:36:15 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
carverauto/serviceradar!3485
No description provided.