Skip to content

Conversation

@timsaucer
Copy link
Member

Which issue does this PR close?

Rationale for this change

Since our MSRV is 1.88, we are well beyond the MSRV of 1.85 that corresponds to the 2024 edition. This allows a very nice feature of let chains

What changes are included in this PR?

  • Update edition to 2024.
  • Clippy warnings repaired
  • gen is now a reserved keyword
  • ref no longer needed
  • Better warnings around unsafe usage on extern

Are these changes tested?

Existing unit tests. There are no functional changes, just minor updates needed by the greater

Are there any user-facing changes?

None.

For developers of datafusion we will need to update MRs to pass the new clippy warnings.

@github-actions github-actions bot added sql SQL Planner logical-expr Logical plan and expressions physical-expr Changes to the physical-expr crates optimizer Optimizer rules core Core DataFusion crate sqllogictest SQL Logic Tests (.slt) substrait Changes to the substrait crate catalog Related to the catalog crate common Related to common crate execution Related to the execution crate proto Related to proto crate functions Changes to functions implementation datasource Changes to the datasource crate ffi Changes to the ffi crate physical-plan Changes to the physical-plan crate spark labels Nov 23, 2025
@timsaucer
Copy link
Member Author

The first pass is way too big to be a reasonable PR. I'm resetting my branch and disabling the new clippy warnings. We can enable them a few at a time to make the upgrade less impactful.

@Jefffrey
Copy link
Contributor

Would it be possible to enable it crate by crate for smaller PRs?

@timsaucer
Copy link
Member Author

Would it be possible to enable it crate by crate for smaller PRs?

I'm working on it. I'll mark the PR as ready for review once I think it's in shape.

@timsaucer timsaucer force-pushed the feat/update-rust-2024-edition branch from 423e095 to b926c12 Compare November 23, 2025 23:11
@github-actions github-actions bot removed sqllogictest SQL Logic Tests (.slt) substrait Changes to the substrait crate execution Related to the execution crate functions Changes to functions implementation spark labels Nov 23, 2025
@Jefffrey
Copy link
Contributor

Would it be possible to enable it crate by crate for smaller PRs?

I'm working on it. I'll mark the PR as ready for review once I think it's in shape.

Ah sorry if I was a little unclear, I meant would it be possible to do the editions upgrade on a crate-by-crate basis (not just the new lints)?

@timsaucer
Copy link
Member Author

Would it be possible to enable it crate by crate for smaller PRs?

I'm working on it. I'll mark the PR as ready for review once I think it's in shape.

Ah sorry if I was a little unclear, I meant would it be possible to do the editions upgrade on a crate-by-crate basis (not just the new lints)?

That sounds like a reasonable approach. Let's give that a go instead.

@timsaucer timsaucer closed this Nov 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

catalog Related to the catalog crate common Related to common crate core Core DataFusion crate datasource Changes to the datasource crate ffi Changes to the ffi crate logical-expr Logical plan and expressions optimizer Optimizer rules physical-expr Changes to the physical-expr crates physical-plan Changes to the physical-plan crate proto Related to proto crate sql SQL Planner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update to 2024 edition

2 participants