Skip to content

Upgrade to Rust 1.98.1 and align dependencies with EdgeZero #1124

Description

@aram356

The workspace is pinned to Rust 1.95.0 while EdgeZero moves to 1.98.1 in stackpop/edgezero#366. That PR also takes a set of dependency majors we share with EdgeZero, so the two workspaces have to move together: pinning EdgeZero at a revision that requires fastly 0.13 while this workspace asks for 0.12 puts two incompatible copies of the same SDK in one graph.

Scope

Toolchain — match .tool-versions and rust-toolchain.toml to EdgeZero:

Tool From To
Rust 1.95.0 1.98.1
Node 24.12.0 24.20.0
Fastly CLI 15.1.0 16.0.0
Viceroy 0.17.0 0.21.0
wasmtime 44.0.1 48.0.1

EdgeZero — currently pinned at tag v0.0.7. The latest release, v0.0.8, still carries the 1.95 toolchain and the old majors, so a tag will not do until #366 merges and is tagged.

Shared dependency majorsfastly and log-fastly 0.12 to 0.13, spin-sdk ~6.0 to ~7.0, validator 0.20 to 0.21, sha2 0.10 to 0.11. brotli stays at 8 for the reason #366 measures: async-compression still resolves 8, so taking 9 adds a second decompressor stack rather than replacing one.

Expected fallout

  • sha2 0.11 moves RustCrypto to hybrid_array, which drags hmac and chacha20poly1305 with it and changes two API shapes (new_from_slice moves traits; Array loses LowerHex).
  • Any HMAC change has to be proven output-identical before it ships — EC IDs and S3 SigV4 signatures are persisted, and a silent digest change would invalidate every existing identity.
  • Three releases of new clippy lints arrive at once under the workspace's -D warnings gate.
  • Docs and scripts that name specific tool versions need updating.

Done when

  • All six CI gates pass on 1.98.1
  • HMAC output verified unchanged against 0.12
  • No new #[allow] suppressions introduced to get there
  • Docs and scripts name the new versions

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions