Stream: t-cargo/PubGrub

Topic: CI


view this post on Zulip Alex Tokarev (Oct 13 2020 at 16:09):

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:

  1. Daily.
  2. Weekly.
  3. Only on PRs.
  4. Some other choice.

view this post on Zulip Eh2406 (Oct 13 2020 at 16:14):

I am not worried about Rust braking us, but the dependencies may be a problem. I'd be ok with weekly.

view this post on Zulip Matthieu Pizenberg (Oct 13 2020 at 19:07):

once a week should be enough

view this post on Zulip Alex Tokarev (Oct 14 2020 at 15:33):

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.

view this post on Zulip Alex Tokarev (Oct 14 2020 at 15:34):

Probably the same argument can be applied to formatting, but that fixes itself with cargo fmt so it's not costly there.

view this post on Zulip Eh2406 (Oct 14 2020 at 15:36):

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.

view this post on Zulip Alex Tokarev (Oct 14 2020 at 15:39):

True, but I think doing tiny changes over time beats doing a lot of work once in a while. Just my experience.

view this post on Zulip Alex Tokarev (Oct 14 2020 at 15:41):

On the other hand, maybe those lints would be removed before arriving to stable.

view this post on Zulip Alex Tokarev (Oct 14 2020 at 16:15):

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

view this post on Zulip Alex Tokarev (Oct 14 2020 at 16:16):

When I asked on Clippy channel about it, they said they downgraded it and it would have to be specifically enabled in the future.
https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/rc_buffer


Last updated: Oct 21 2021 at 21:46 UTC