Skip to content

tokio 0.1.8 contains a breaking change #574

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

Closed
jonas-schievink opened this issue Aug 24, 2018 · 4 comments
Closed

tokio 0.1.8 contains a breaking change #574

jonas-schievink opened this issue Aug 24, 2018 · 4 comments

Comments

@jonas-schievink
Copy link

Comparing the difference between 0.1.7 and 0.1.8 (tokio-0.1.7...tokio-0.1.8) I saw that the minimum supported Rust version was bumped from 1.21.0 to 1.25.0, which is considered a breaking change.

This inadvertently broke CI for xmlrpc, which still supports Rust 1.21.0.

@carllerche
Copy link
Member

tl;dr Tokio does not consider this a breaking change.

The change was explicitly made here.

Tokio follows the same policy as rust-lang libs, which is to support a Rust version at least 3 months old (i.e. 2 release cycles ago).

It is true that this is not an ideal situation, but IMO it is the best that can be done. It has been hotly debated.

That said, Rust is addressing the problem w/ an introduction of an LTS channel. At this point, Tokio will switch to officially support the latest LTS.

Hope this clarifies things and sorry for the inconvenience.

@jonas-schievink
Copy link
Author

Oh, okay. Everyone I've ever talked to said that requiring a newer Rust version is a breaking change.

@carllerche
Copy link
Member

carllerche commented Aug 24, 2018 via email

@jonas-schievink
Copy link
Author

No, I've been asking on IRC (multiple times) because I wanted to decide on a Rust versioning policy for my own crates. Additionally, I've observed a handful of popular crates supporting really old Rust versions that also consider bumping the required version a breaking change. I haven't found much information on the "official" policy for rust-lang(-nursery) crates either.

That said, supporting the latest 3 versions does make sense and should not cause any problems for users, so I've now adopted this policy.

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

No branches or pull requests

2 participants