chore(deps): upgrade Rust to 1.99 and compatible dependencies - #259
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Upgrade the Rust toolchain and minimum supported Rust version from 1.94 to 1.99, and update the compatible CLI, schema, authentication, configuration, image, and voice dependencies. Keep upgrades requiring coordinated upstream changes or protocol migrations out of this PR.
Impact
Source builds now require Rust 1.99; mise and Docker use the same version. JSON Schema validation includes upstream edge-case fixes, and str0m now bounds depacketization queues with default audio/video reorder expiration.
Technical details
Dependency scope
Update clap and its builder/derive crates to 4.6.7, hyper-util to 0.1.21, jsonschema and its companion crates to 0.58.5, jsonwebtoken to 11.1.0, opus-pure to 0.2.2, ratatui-image to 11.1.0, str0m to 0.24.0, tokio-tungstenite to 0.30.0, toml to 1.1.6, toml_edit to 0.25.15, and uuid to 1.26.1. str0m also requires dimpl 0.7.4, is 0.11.1, and sctp-proto 0.10.5.
The lockfile contains 18 version replacements and one additional version. Published checksums and upstream source provenance reconcile; residual provenance limitations include unsigned/lightweight tags and unavailable ratatui-image publisher attribution.
Preserve existing behavior
Keep dependency features unchanged. Pass
falsefor str0m's new Opus RED argument, leaving redundancy disabled. Retain tokio-tungstenite 0.29.0 for existing transitive consumers while Kit's private WebSocket implementation uses 0.30.0. Replace deprecated atomicfetch_updatecalls withtry_updateand make the mechanical changes required by Rust 1.99 Clippy without changing counter ordering or overflow behavior.Deferred upgrades
<=2.0.18(saphyr-parser-bw), generic-array at=0.14.7(crypto-common), matchit at=0.8.4(axum), and smallvec below1.16.0(serde-saphyr).