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

Move to edition 2021 #142

Merged
merged 1 commit into from
Nov 3, 2023
Merged

Conversation

0xAtticus
Copy link
Contributor

@0xAtticus 0xAtticus commented Nov 2, 2023

Fix #140

@0xAtticus 0xAtticus mentioned this pull request Nov 2, 2023
@0xAtticus 0xAtticus force-pushed the move-to-edition-2021 branch from d09585f to 43d59fc Compare November 3, 2023 10:50
@0xAtticus
Copy link
Contributor Author

First of all, running:
cargo fix --edition does not trigger any change.

Prelude changes

No changes required.
The following traits were added to the prelude:

  • std::convert::TryInto
  • std::convert::TryFrom
  • std::iter::FromIterator
    This may lead to some conflicts if we have custom traits defined with the same method names. However, we have no custom traits which have method named try_into, try_from or from_iter. (this would most certainly not compile anyway)

New default resolver.

No changes required
Simply an improvement of dependencies

When building the following dependencies, the given features will no longer be used:

  log v0.4.20 removed features: std
  syn v2.0.38 (as host dependency) removed features: full, visit

The following differences only apply when building with dev-dependencies:

  libc v0.2.149 removed features: extra_traits
  regex v1.10.2 removed features: default, unicode, unicode-age, unicode-bool, unicode-case, unicode-gencat, unicode-perl, unicode-script, unicode-segment
  regex-automata v0.4.3 removed features: unicode, unicode-age, unicode-bool, unicode-case, unicode-gencat, unicode-perl, unicode-script, unicode-segment, unicode-word-boundary
  regex-syntax v0.8.2 removed features: default, unicode, unicode-age, unicode-bool, unicode-case, unicode-gencat, unicode-perl, unicode-script, unicode-segment

IntoIterator for arrays

This may have impact for SmallVec. No lint array_into_iter were triggered, because we were using the IntoIterator::into_iter syntax. According to the migration guide, this means that we should already be ready to go for Rust 2021!.
An optional migration is to replace IntoIterator::into_iter with .into_iter, which has been done in the pull request.

Disjoint capture in closures

No changes required
Could not find any impact manually, and no rust_2021_incompatible_closure_captures lint are triggered.

Panic macro consistency

No changes required
No panic message is concerned by the change.

Reserving syntax

No changes required
We were not using any of the now reserved syntax.

Warnings promoted to errors

No changes required
There are no lint warning nor errors.

Or patterns in macro-rules

No changes required
If I am not mistaken, there are no macro defined in the project.

Copy link
Member

@Eh2406 Eh2406 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good! Thanks for the PR and wright up!

@Eh2406 Eh2406 merged commit eb73235 into pubgrub-rs:dev Nov 3, 2023
5 checks passed
@mpizenberg
Copy link
Member

Thanks for the analysis and write up @0xAtticus !

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.

3 participants