Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Establish an MSRV and add a CI test to ensure compatibility #44

Merged
merged 6 commits into from
May 15, 2024

Conversation

jmwample
Copy link
Owner

@jmwample jmwample commented May 14, 2024

This PR tries to establish a ground level for the Minimum Supported Rust Version (MSRV).

This has required a few things.

  1. Disable o5 crate in the workspace Cargo.toml
    • o5 requires the ml_kem package at the moment which forces an msrv of 1.74, but we can do better.
  2. Test with the minimum version of ALL dependencies
    • This includes transitive dependencies
      • several of these actually allow dependencies of old enough version that it breaks things
      • to fix this I manually found the exact minimum acceptable version of those crates and added it to the Cargo.toml of the (internal) crate that uses them.
  3. Downgrade some of the patterns that I am using to implement things that aren't supported in older versions of rustc.
    • For example a trait with a function whose return contains an impl

With all of this we are left with the msrv of 1.70 as the tor-* (tor-bytes, tor-cell, etc.) have an msrv of 1.70 and cannot be downgraded without allowing some critical vulnerability.

@codecov-commenter
Copy link

codecov-commenter commented May 14, 2024

Codecov Report

Attention: Patch coverage is 72.22222% with 15 lines in your changes are missing coverage. Please review.

Project coverage is 77.72%. Comparing base (02135f7) to head (546f93c).

Files Patch % Lines
crates/ptrs/src/helpers.rs 68.00% 8 Missing ⚠️
crates/obfs4/src/testing.rs 73.07% 0 Missing and 7 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #44      +/-   ##
==========================================
- Coverage   78.00%   77.72%   -0.28%     
==========================================
  Files          36       35       -1     
  Lines        5642     5617      -25     
  Branches     5642     5617      -25     
==========================================
- Hits         4401     4366      -35     
- Misses        852      860       +8     
- Partials      389      391       +2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@jmwample jmwample merged commit 51381b3 into main May 15, 2024
8 of 9 checks passed
@jmwample jmwample deleted the msrv-testing branch May 15, 2024 19:37
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.

2 participants