Skip to content

chore: update dependencies to latest versions - #16

Open
tyrchen wants to merge 1 commit into
masterfrom
tda/chore-update-deps-to-latest
Open

tyrchen wants to merge 1 commit into
masterfrom
tda/chore-update-deps-to-latest

Conversation

@tyrchen

@tyrchen tyrchen commented Dec 31, 2025

Copy link
Copy Markdown
Owner

Summary

Updated all project dependencies to their latest compatible versions to improve performance, security, and compatibility. This update includes both direct dependencies in Cargo.toml and 112 transitive dependencies in Cargo.lock.

Key Updates

  • base64: 0.22 → 0.22.1 (bug fixes and improvements)
  • minijinja: 2.12 → 2.14 (new features and performance improvements)
  • snafu: 0.8 → 0.8.9 (error handling improvements)
  • criterion: 0.7.0 → 0.8 (benchmark improvements and new features)

All changes are backward compatible with no API changes required.

Changes

Files Modified

  1. Cargo.toml - Updated 4 direct dependencies to latest compatible versions
  2. Cargo.lock - Updated 112 transitive dependencies
  3. specs/update-deps-latest-version/code-changes.md - Documentation of changes

Key Dependencies Updated

Production Dependencies:

  • base64: 0.22 → 0.22.1
  • minijinja: 2.12 → 2.14
  • snafu: 0.8 → 0.8.9

Development Dependencies:

  • criterion: 0.7.0 → 0.8

Notable Transitive Updates:

  • tokio: 1.47.1 → 1.48.0
  • serde: 1.0.219 → 1.0.228
  • reqwest: 0.12.23 → 0.12.28
  • rustls: 0.23.31 → 0.23.35 (security improvements)
  • http: 1.3.1 → 1.4.0
  • regex: 1.11.2 → 1.12.2

Decision Notes

  • Kept reqwest at 0.12 instead of upgrading to 0.13.1 to avoid potential API breaking changes
  • Conservative version updates maintaining compatibility with existing codebase
  • Security updates prioritized, especially in rustls and http-related crates

Testing

All tests and checks passed successfully:

  1. Unit Tests: ✓ All 8 unit tests passed
  2. Doc Tests: ✓ All 3 documentation tests passed
  3. Clippy Linting: ✓ Passed with --all-targets --all-features -- -D warnings
  4. Compilation: ✓ Project compiled successfully with updated dependencies

Impact Assessment

  • Compatibility: All changes are backward compatible, no API changes required
  • Performance: Minor performance improvements expected from updated dependencies
  • Security: Security patches included in updated dependencies, especially in rustls and http-related crates
  • Build Time: No significant impact on build time
  • Binary Size: Minimal changes to binary size

Review

This PR addresses dependency maintenance and security best practices:

✓ All dependency updates verified for compatibility
✓ Conservative update strategy to avoid breaking changes
✓ Comprehensive testing performed (unit tests, doc tests, clippy)
✓ Security improvements included from updated dependencies
✓ No API changes required
✓ Documentation included in specs/update-deps-latest-version/code-changes.md

Verification Steps Completed

  1. Updated version specifications in Cargo.toml
  2. Ran cargo update to update Cargo.lock
  3. Executed cargo test to verify all tests pass
  4. Executed cargo clippy --all-targets --all-features -- -D warnings
  5. Verified compilation with new dependency versions

Spec Documentation: specs/update-deps-latest-version/code-changes.md

Updated production and development dependencies to their latest compatible versions:
- base64: 0.22 → 0.22.1
- minijinja: 2.12 → 2.14
- snafu: 0.8 → 0.8.9
- criterion: 0.7.0 → 0.8

Also updated 112 transitive dependencies via cargo update, including important
security updates to rustls (0.23.31 → 0.23.35) and performance improvements
in tokio (1.47.1 → 1.48.0), serde (1.0.219 → 1.0.228), and other core dependencies.

All tests and clippy checks pass successfully with no warnings.

💜 Generated with [TDA](https://tda.tubi.tv)
Co-Authored-By: TDA <noreply@tubi.tv>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant