-
Notifications
You must be signed in to change notification settings - Fork 192
rust: bump min rust version to 1.81, update CI #5185
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
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #5185 +/- ##
==========================================
- Coverage 86.97% 86.97% -0.01%
==========================================
Files 1405 1405
Lines 61635 61659 +24
Branches 7544 7550 +6
==========================================
+ Hits 53607 53627 +20
- Misses 7855 7859 +4
Partials 173 173 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Benchmark ResultMaster commit hash:
|
Benchmark ResultMaster commit hash:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure we should be setting the minimum supported rust-version based on our dependencies (particularly optional ones).
Unfortunately, Cargo doesn't handle this very well, but eventually it will default to selecting versions based on their rust-version
(see here), which means that we would be able to do things like indicating that we support a range of arrow versions and it will use the one supported by your current version of the compiler (currently we can also do that, but I think it will pull in the latest version and error saying that it needs a newer rust compiler, so you would have to manually pin the version of arrow that you want to use).
cxx = "1.0" | ||
arrow = { version = "55", optional = true, default-features = false, features = ["ffi"] } | ||
cxx = "=1.0.138" # latest version that builds on clang 15 | ||
rust_decimal = { version = "1.37", default-features = false } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why bump the rust_decimal version? We haven't changed anything we do with rust_decimal since adding it, so it's unlikely that it's no longer working with 1.35, and this keeps things compatible with another crate if they need to use 1.35/1.36 for some particular reason (E.g. the above cxx pin). We could probably even push the requirement back earlier since the only function we use was introduced in version 1.2.1 (I haven't tested it with that version though).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was following the "best practice" of updating frequently so that the ecosystem is not stuck on older version, esp through transitive dependencies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This doesn't force 1.35 though; the default is the ^
operator which would mean >=1.35,<2
(see here)
1.74 since 1.72 was already needed forarrow
and 1.74 is the first version to supportlints.clippy
inCargo.toml
.Moving to 1.81 for latest version of
arrow
andhalf
while we're at it.Shared builds on macOS now work.
Personal preference is to enable all clippy lints and then selectively disable the unwanted ones. Happy to consider disabling at least the
pedantic
ones by default.Contributor agreement