quinn-rs / quinn

Async-friendly QUIC implementation in Rust
Apache License 2.0
3.76k stars 380 forks source link

Replace unmaintained actions-rs/* actions in CI workflows #1579

Closed striezel closed 1 year ago

striezel commented 1 year ago

Basically all of the actions-rs/* actions are unmaintained. See https://github.com/actions-rs/toolchain/issues/216 for more information. Due to their age they generate several warnings in CI runs, for example in https://github.com/quinn-rs/quinn/actions/runs/5100061676:

Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions-rs/toolchain@v1, Swatinem/rust-cache@v1, actions-rs/cargo@v1. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.

To get rid of some of those warnings the occurrences of actions-rs/toolchain are replaced by dtolnay/rust-toolchain, and the occurrences of actions-rs/cargo are replaced by direct invocations of cargo.

Ralith commented 1 year ago

Thanks! I see you've used @master -- should this be @v1 for stability?

striezel commented 1 year ago

@Ralith:

Thanks! I see you've used @master -- should this be @v1 for stability?

I would not recommend to do this, because according to its creator that is unsupported:

The v1 tag only exists so that the action gets a page on https://github.com/marketplace/actions. (And it has to be a tag for that to happen.) I am not interested in updating it. master and all the other branches (stable, 1.65 etc) are the only supported and documented way to use the action.

@djc: Concerning the Dependabot stuff:

Can you also add a snippet to our Dependabot config to check Actions?

- package-ecosystem: github-actions
  directory: "/"
  schedule:
    interval: weekly

Yes, I could do this, too, if you want it, but I would prefer to do this in a separate pull request.

Edit: And there's the PR for the Dependabot configuration: https://github.com/quinn-rs/quinn/pull/1580

Ralith commented 1 year ago

I would not recommend to do this, because https://github.com/dtolnay/rust-toolchain/issues/45#issuecomment-1336100499:

Ah, good catch. Why @stable in some places an @master elsewhere though?

djc commented 1 year ago

I would not recommend to do this, because dtolnay/rust-toolchain#45 (comment):

Ah, good catch. Why @stable in some places an @master elsewhere though?

@stable where we need the stable toolchain, @master where we explicitly select some other version.