Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check MSRV in CI #2482

Closed
the-mikedavis opened this issue May 16, 2022 · 0 comments
Closed

Check MSRV in CI #2482

the-mikedavis opened this issue May 16, 2022 · 0 comments
Labels
C-enhancement Category: Improvements E-easy Call for participation: Experience needed to fix: Easy / not much

Comments

@the-mikedavis
Copy link
Member

It's easy to accidentally bump the MSRV by using a newer Rust feature. We might be able to check that we're adhering to MSRV with cargo msrv verify in a job in the CI build.

For background: we keep an MSRV that is behind a few versions in order to make packaging easier for some package managers - some package managers have long processes for updating rust versions and using latest stable Rust features may make it impossible to build Helix for those package managers.

See also: #2475 (comment)

@the-mikedavis the-mikedavis added the C-enhancement Category: Improvements label May 16, 2022
@kirawi kirawi added the E-easy Call for participation: Experience needed to fix: Easy / not much label May 19, 2022
the-mikedavis added a commit to the-mikedavis/helix that referenced this issue May 22, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change adds a new CI check which uses the cargo-msrv crate to
verify an MSRV version recorded in helix-term's Cargo.toml. When
changing MSRV, we can then edit `helix-term/Cargo.toml`'s
`package.metadata.msrv` key.

The MSRV is set at 1.60.0 for the sake of checkmarks on builds but
ideally we want to support 1.57.0. The PR that closes helix-editor#2460 should
set this MSRV metadata key back to 1.57.0.

Closes helix-editor#2482.
the-mikedavis added a commit to the-mikedavis/helix that referenced this issue May 22, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change adds a new CI check which uses the cargo-msrv crate to
verify an MSRV version recorded in helix-term's Cargo.toml. When
changing MSRV, we can then edit `helix-term/Cargo.toml`'s
`package.metadata.msrv` key.

The MSRV is set at 1.60.0 for the sake of checkmarks on builds but
ideally we want to support 1.57.0. The PR that fixes the MSRV in helix-editor#2460
should set this MSRV metadata key back to 1.57.0.

Closes helix-editor#2482.
the-mikedavis added a commit to the-mikedavis/helix that referenced this issue May 22, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change adds a new CI check which uses the cargo-msrv crate to
verify an MSRV version recorded in helix-term's Cargo.toml. When
changing MSRV, we can then edit `helix-term/Cargo.toml`'s
`package.metadata.msrv` key.

The MSRV is set at 1.60.0 for the sake of checkmarks on builds but
ideally we want to support 1.57.0. The PR that fixes the MSRV in helix-editor#2460
should set this MSRV metadata key back to 1.57.0.

Closes helix-editor#2482.
the-mikedavis added a commit to the-mikedavis/helix that referenced this issue May 23, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change runs the "Check" step for the pinned version of rust in
the rust-toolchain.toml file as well as the MSRV version in a matrix.
In order to bump the MSRV, we need to edit

    .github/workflows/msrv-rust-toolchain.toml

This commit sets the MSRV as 1.60.0 but a later child commit will
reduce the MSRV back to 1.57.0.

Closes helix-editor#2482.
the-mikedavis added a commit to the-mikedavis/helix that referenced this issue May 23, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change runs the "Check" step for the pinned version of rust in
the rust-toolchain.toml file as well as the MSRV version in a matrix.
In order to bump the MSRV, we need to edit

    .github/workflows/msrv-rust-toolchain.toml

This commit sets the MSRV as 1.60.0 but a later child commit will
reduce the MSRV back to 1.57.0.

Closes helix-editor#2482.
the-mikedavis added a commit to the-mikedavis/helix that referenced this issue May 23, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change runs the "Check" step for the pinned version of rust in
the rust-toolchain.toml file as well as the MSRV version in a matrix.
In order to bump the MSRV, we need to edit

    .github/workflows/msrv-rust-toolchain.toml

This commit sets the MSRV as 1.60.0 but a later child commit will
reduce the MSRV back to 1.57.0.

Closes helix-editor#2482.
mtoohey31 pushed a commit to mtoohey31/helix that referenced this issue Jun 15, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change runs the "Check" step for the pinned version of rust in
the rust-toolchain.toml file as well as the MSRV version in a matrix.
In order to bump the MSRV, we need to edit

    .github/workflows/msrv-rust-toolchain.toml

This commit sets the MSRV as 1.60.0 but a later child commit will
reduce the MSRV back to 1.57.0.

Closes helix-editor#2482.
mtoohey31 pushed a commit to mtoohey31/helix that referenced this issue Jun 15, 2022
It's very easy to use new rust features without realizing it since
the CI and local development workflows may use the latest rust version.
We try to keep some backwards compatibility with rust versions to make
packaging easier for some OS-level package-managers like Void Linux's.
See helix-editor#1881.

This change runs the "Check" step for the pinned version of rust in
the rust-toolchain.toml file as well as the MSRV version in a matrix.
In order to bump the MSRV, we need to edit

    .github/workflows/msrv-rust-toolchain.toml

This commit sets the MSRV as 1.60.0 but a later child commit will
reduce the MSRV back to 1.57.0.

Closes helix-editor#2482.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-enhancement Category: Improvements E-easy Call for participation: Experience needed to fix: Easy / not much
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants