Closed brson closed 5 years ago
I have a branch that I think is ready to go here: https://github.com/brson/fail-rs/tree/rust-2018, but waiting until the tikv 2018 upgrade lands without trouble before this one.
In thinking about backwards compatibility I'm inclined to explicitly break support for Rust 2015 when we do this upgrade - it's possible to be compatible with both (in some situations, I believe), but by doing so we have to be vigilant about breaking 2015 compatibility. I'm inclined to insert some boilerplate code into each of fail, prometheus, and grpc that is definitely 2018 only and breaks the build under 2015 so we don't have to worry about breaking 2015 compatibility in a minor version bump.
Let me know if anybody is opposed to that.
I have not found a toolchain that both ignores "edition" and successfully interprets crate
in paths, so I suspect turning on 2018 will cleanly break compatibility with pre-1.32 toolchains.
The tikv toolchain is upgraded to a version that supports 2018 now, so I think once it's had a few days on master w/o being reverted it's safe to go ahead. I'll do so sometime next week.
After TiKV itself is successfully upgraded (tikv/tikv#3896) we can bump fail to Rust 2018 as well. Do a major version bump.