I think it's nice to run CI on schedule to ensure the library continues to work with new stable/nightly releases and the latest dependencies even when it's not actively worked on it.
Do you agree, and if so, how frequent do you think should be enough? Most other projects seem to run theirs once a day. I think we should do it at least once a week. A poll:
I am not worried about Rust braking us, but the dependencies may be a problem. I'd be ok with weekly.
once a week should be enough
By the way, I just realized why
clippy checking is better done with nightly rather than stable.
If we do it on stable, than the moment a new stable releases our next scheduled CI + the next PR are almost guaranteed to break. The amount of warnings unrelated to submitted PR could possibly be substantial.
If we check with nightly, than those warnings are amortized over a larger period of time and can be tackled one at a time.
Probably the same argument can be applied to formatting, but that fixes itself with
cargo fmt so it's not costly there.
On the other hand the "clippy changed broke CI" can happen any time if we use nightly, and will only happen 6 weeks on stable.
True, but I think doing tiny changes over time beats doing a lot of work once in a while. Just my experience.
On the other hand, maybe those lints would be removed before arriving to stable.
Actually I just hit such lint.
warning: usage of `Rc<T>` when T is a buffer type --> src/internal/core.rs:23:28 | 23 | pub incompatibilities: Rc<Vec<Incompatibility<P, V>>>, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `Rc<[Incompatibility<P, V>]>` | = note: `#[warn(clippy::rc_buffer)]` on by default = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#rc_buffer
When I asked on Clippy channel about it, they said they downgraded it and it would have to be specifically enabled in the future.
Last updated: Oct 21 2021 at 21:46 UTC