Skip to content

Commit

Permalink
Raise MSRV to 1.76 (#3693)
Browse files Browse the repository at this point in the history
* raise msrv to 1.76

* remove older impls

* bless trybuild tests

* Update packages/yew/src/scheduler.rs
  • Loading branch information
ranile authored Aug 3, 2024
1 parent 7ba977e commit b8d3e21
Show file tree
Hide file tree
Showing 35 changed files with 450 additions and 366 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/main-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ jobs:
fail-fast: false
matrix:
toolchain:
- 1.64.0
- 1.76.0
- stable

steps:
Expand Down Expand Up @@ -116,7 +116,7 @@ jobs:
fail-fast: false
matrix:
toolchain:
- 1.64.0
- 1.76.0
- stable
- nightly

Expand Down
2 changes: 1 addition & 1 deletion packages/yew-agent-macro/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "yew-agent-macro"
version = "0.2.0"
edition = "2021"
rust-version = "1.64.0"
rust-version = "1.76.0"
authors = ["Kaede Hoshikawa <futursolo@icloud.com>"]
repository = "https://github.com/yewstack/yew"
homepage = "https://yew.rs"
Expand Down
2 changes: 1 addition & 1 deletion packages/yew-agent/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ edition = "2021"
readme = "../../README.md"
description = "Agents for Yew"
license = "MIT OR Apache-2.0"
rust-version = "1.64.0"
rust-version = "1.76.0"

[dependencies]
yew = { version = "0.21.0", path = "../yew" }
Expand Down
2 changes: 1 addition & 1 deletion packages/yew-macro/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ license = "MIT OR Apache-2.0"
keywords = ["web", "wasm", "frontend", "webasm", "webassembly"]
categories = ["gui", "web-programming", "wasm"]
description = "A framework for making client-side single-page apps"
rust-version = "1.64.0"
rust-version = "1.76.0"

[lib]
proc-macro = true
Expand Down
2 changes: 1 addition & 1 deletion packages/yew-macro/Makefile.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tasks.test]
clear = true
toolchain = "1.64.0"
toolchain = "1.76.0"
command = "cargo"
# test target can be optionally specified like `cargo make test html_macro`,
args = ["test", "${@}"]
Expand Down
101 changes: 52 additions & 49 deletions packages/yew-macro/tests/classes_macro/classes-fail.stderr
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,16 @@ error[E0277]: the trait bound `Classes: From<{integer}>` is not satisfied
| ^^ the trait `From<{integer}>` is not implemented for `Classes`
|
= help: the following other types implement trait `From<T>`:
<Classes as From<&'static str>>
<Classes as From<&Option<T>>>
<Classes as From<&String>>
<Classes as From<&[T]>>
<Classes as From<&implicit_clone::unsync::string::IString>>
<Classes as From<Cow<'static, str>>>
<Classes as From<Option<T>>>
<Classes as From<implicit_clone::unsync::string::IString>>
<Classes as From<Vec<T>>>
<Classes as From<String>>
<Classes as From<Option<T>>>
<Classes as From<[T; SIZE]>>
<Classes as From<&String>>
<Classes as From<&implicit_clone::unsync::string::IString>>
and $N others
= note: required because of the requirements on the impl of `Into<Classes>` for `{integer}`
= note: required for `{integer}` to implement `Into<Classes>`
note: required by a bound in `Classes::push`
--> $WORKSPACE/packages/yew/src/html/classes.rs
|
Expand All @@ -40,16 +40,16 @@ error[E0277]: the trait bound `Classes: From<{float}>` is not satisfied
| ^^^^ the trait `From<{float}>` is not implemented for `Classes`
|
= help: the following other types implement trait `From<T>`:
<Classes as From<&'static str>>
<Classes as From<&Option<T>>>
<Classes as From<&String>>
<Classes as From<&[T]>>
<Classes as From<&implicit_clone::unsync::string::IString>>
<Classes as From<Cow<'static, str>>>
<Classes as From<Option<T>>>
<Classes as From<implicit_clone::unsync::string::IString>>
<Classes as From<Vec<T>>>
<Classes as From<String>>
<Classes as From<Option<T>>>
<Classes as From<[T; SIZE]>>
<Classes as From<&String>>
<Classes as From<&implicit_clone::unsync::string::IString>>
and $N others
= note: required because of the requirements on the impl of `Into<Classes>` for `{float}`
= note: required for `{float}` to implement `Into<Classes>`
note: required by a bound in `Classes::push`
--> $WORKSPACE/packages/yew/src/html/classes.rs
|
Expand All @@ -60,22 +60,25 @@ error[E0277]: the trait bound `Classes: From<{integer}>` is not satisfied
--> tests/classes_macro/classes-fail.rs:9:14
|
9 | classes!(vec![42]);
| ^^^ the trait `From<{integer}>` is not implemented for `Classes`
| ---^^^^^
| |
| the trait `From<{integer}>` is not implemented for `Classes`
| required by a bound introduced by this call
|
= help: the following other types implement trait `From<T>`:
<Classes as From<&'static str>>
<Classes as From<&Option<T>>>
<Classes as From<&String>>
<Classes as From<&[T]>>
<Classes as From<&implicit_clone::unsync::string::IString>>
<Classes as From<Cow<'static, str>>>
<Classes as From<Option<T>>>
<Classes as From<implicit_clone::unsync::string::IString>>
<Classes as From<Vec<T>>>
<Classes as From<String>>
<Classes as From<Option<T>>>
<Classes as From<[T; SIZE]>>
<Classes as From<&String>>
<Classes as From<&implicit_clone::unsync::string::IString>>
and $N others
= note: required because of the requirements on the impl of `Into<Classes>` for `{integer}`
= note: required because of the requirements on the impl of `From<Vec<{integer}>>` for `Classes`
= note: required for `{integer}` to implement `Into<Classes>`
= note: required for `Classes` to implement `From<Vec<{integer}>>`
= note: 1 redundant requirement hidden
= note: required because of the requirements on the impl of `Into<Classes>` for `Vec<{integer}>`
= note: required for `Vec<{integer}>` to implement `Into<Classes>`
note: required by a bound in `Classes::push`
--> $WORKSPACE/packages/yew/src/html/classes.rs
|
Expand All @@ -89,19 +92,19 @@ error[E0277]: the trait bound `Classes: From<{integer}>` is not satisfied
| ^^^^ the trait `From<{integer}>` is not implemented for `Classes`
|
= help: the following other types implement trait `From<T>`:
<Classes as From<&'static str>>
<Classes as From<&Option<T>>>
<Classes as From<&String>>
<Classes as From<&[T]>>
<Classes as From<&implicit_clone::unsync::string::IString>>
<Classes as From<Cow<'static, str>>>
<Classes as From<Option<T>>>
<Classes as From<implicit_clone::unsync::string::IString>>
<Classes as From<Vec<T>>>
<Classes as From<String>>
<Classes as From<Option<T>>>
<Classes as From<[T; SIZE]>>
<Classes as From<&String>>
<Classes as From<&implicit_clone::unsync::string::IString>>
and $N others
= note: required because of the requirements on the impl of `Into<Classes>` for `{integer}`
= note: required because of the requirements on the impl of `From<Option<{integer}>>` for `Classes`
= note: required for `{integer}` to implement `Into<Classes>`
= note: required for `Classes` to implement `From<Option<{integer}>>`
= note: 1 redundant requirement hidden
= note: required because of the requirements on the impl of `Into<Classes>` for `Option<{integer}>`
= note: required for `Option<{integer}>` to implement `Into<Classes>`
note: required by a bound in `Classes::push`
--> $WORKSPACE/packages/yew/src/html/classes.rs
|
Expand All @@ -115,19 +118,19 @@ error[E0277]: the trait bound `Classes: From<u32>` is not satisfied
| ^^^^ the trait `From<u32>` is not implemented for `Classes`
|
= help: the following other types implement trait `From<T>`:
<Classes as From<&'static str>>
<Classes as From<&Option<T>>>
<Classes as From<&String>>
<Classes as From<&[T]>>
<Classes as From<&implicit_clone::unsync::string::IString>>
<Classes as From<Cow<'static, str>>>
<Classes as From<Option<T>>>
<Classes as From<implicit_clone::unsync::string::IString>>
<Classes as From<Vec<T>>>
<Classes as From<String>>
<Classes as From<Option<T>>>
<Classes as From<[T; SIZE]>>
<Classes as From<&String>>
<Classes as From<&implicit_clone::unsync::string::IString>>
and $N others
= note: required because of the requirements on the impl of `Into<Classes>` for `u32`
= note: required because of the requirements on the impl of `From<Option<u32>>` for `Classes`
= note: required for `u32` to implement `Into<Classes>`
= note: required for `Classes` to implement `From<Option<u32>>`
= note: 1 redundant requirement hidden
= note: required because of the requirements on the impl of `Into<Classes>` for `Option<u32>`
= note: required for `Option<u32>` to implement `Into<Classes>`
note: required by a bound in `Classes::push`
--> $WORKSPACE/packages/yew/src/html/classes.rs
|
Expand All @@ -141,16 +144,16 @@ error[E0277]: the trait bound `Classes: From<{integer}>` is not satisfied
| ^^ the trait `From<{integer}>` is not implemented for `Classes`
|
= help: the following other types implement trait `From<T>`:
<Classes as From<&'static str>>
<Classes as From<&Option<T>>>
<Classes as From<&String>>
<Classes as From<&[T]>>
<Classes as From<&implicit_clone::unsync::string::IString>>
<Classes as From<Cow<'static, str>>>
<Classes as From<Option<T>>>
<Classes as From<implicit_clone::unsync::string::IString>>
<Classes as From<Vec<T>>>
<Classes as From<String>>
<Classes as From<Option<T>>>
<Classes as From<[T; SIZE]>>
<Classes as From<&String>>
<Classes as From<&implicit_clone::unsync::string::IString>>
and $N others
= note: required because of the requirements on the impl of `Into<Classes>` for `{integer}`
= note: required for `{integer}` to implement `Into<Classes>`
note: required by a bound in `Classes::push`
--> $WORKSPACE/packages/yew/src/html/classes.rs
|
Expand Down
2 changes: 1 addition & 1 deletion packages/yew-macro/tests/classes_macro_test.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#[allow(dead_code)]
#[rustversion::attr(stable(1.64), test)]
#[rustversion::attr(stable(1.76), test)]
fn classes_macro() {
let t = trybuild::TestCases::new();
t.pass("tests/classes_macro/*-pass.rs");
Expand Down
Loading

0 comments on commit b8d3e21

Please sign in to comment.