-
-
Notifications
You must be signed in to change notification settings - Fork 356
Description
As noted in the contributing guide we use nightly ci tooling for rustfmt
and rustdoc
for a few features not available on stable. This issue lists the nightly features we use in the hope that one day we can just use stable for everything.
This is a developer workflow ergonomics issue, all our published crates work on stable.
rustdoc
-
doc_cfg
forRUSTDOCFLAGS="--cfg docsrs"
rustfmt
In descending order of importance:
- imports_granularity - love this
- reorder_impl_items - nice standard
- overflow_delimited_expr - decreases right hand drift
- comment_width to match the stable
max_width
of our code - blank_lines_upper_bound - minor point, we raise it from
1
to2
- inline_attribute_width less tiny lines and height in lib.rs / mod.rs
The last two are ultimately less important if it came down to it. But, unfortunately, all of these have been unstable for ages. Our rustfmt.toml has not changed since it landed.
For now have opened an issue on rustfmt
to allow us to at least bail if people accidentally use stable on rustfmt (which re-orders things badly): rust-lang/rustfmt#5022 . But that might also need to graduate (if the prs gets merged).