diff --git a/Cargo.lock b/Cargo.lock index b09d94c..f84c101 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -76,6 +76,12 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" +[[package]] +name = "bumpalo" +version = "3.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" + [[package]] name = "camino" version = "1.1.9" @@ -232,15 +238,39 @@ dependencies = [ "regex-syntax", ] +[[package]] +name = "futures-core" +version = "0.3.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2cd50c473c80f6d7c3670a752354b8e569b1a7cbfdc0419ec88e5edad85e0dc7" + +[[package]] +name = "futures-task" +version = "0.3.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b231ed28831efb4a61a08580c4bc233ec56bc009f4cd8f52da2c3cb97df0c109" + +[[package]] +name = "futures-util" +version = "0.3.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a77a90a256fce34da66415271e30f94ee91c57b04b8a2c042d9cf3220179deaa" +dependencies = [ + "futures-core", + "futures-task", + "pin-project-lite", + "slab", +] + [[package]] name = "getrandom" -version = "0.2.15" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" dependencies = [ "cfg-if", "libc", - "wasi", + "r-efi", ] [[package]] @@ -289,6 +319,17 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +[[package]] +name = "js-sys" +version = "0.3.103" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53b44bfcdb3f8d5837a46dae1ca9660a837176eee74a28b229bc626816589102" +dependencies = [ + "cfg-if", + "futures-util", + "wasm-bindgen", +] + [[package]] name = "libc" version = "0.2.169" @@ -324,9 +365,9 @@ dependencies = [ [[package]] name = "newtype-uuid" -version = "1.2.1" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee3224f0e8be7c2a1ebc77ef9c3eecb90f55c6594399ee825de964526b3c9056" +checksum = "5c012d14ef788ab066a347d19e3dda699916c92293b05b85ba2c76b8c82d2830" dependencies = [ "uuid", ] @@ -355,6 +396,12 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "pin-project-lite" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" + [[package]] name = "prettyplease" version = "0.3.0" @@ -383,6 +430,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "r-efi" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + [[package]] name = "regex-automata" version = "0.4.9" @@ -400,6 +453,12 @@ version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +[[package]] +name = "rustversion" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f" + [[package]] name = "ryu" version = "1.0.18" @@ -497,6 +556,12 @@ version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa" +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" + [[package]] name = "strsim" version = "0.11.1" @@ -615,11 +680,13 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.12.1" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3758f5e68192bb96cc8f9b7e2c2cfdabb435499a28499a42f8f984092adad4b" +checksum = "bf3923a6f5c4c6382e0b653c4117f48d631ea17f38ed86e2a828e6f7412f5239" dependencies = [ "getrandom", + "js-sys", + "wasm-bindgen", ] [[package]] @@ -633,10 +700,49 @@ dependencies = [ ] [[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +name = "wasm-bindgen" +version = "0.2.126" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b067c0c11094aef6b7a801c1e34a26affafdf3d051dba08456b868789aaf9a4" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.126" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "167ce5e579f6bcf889c4f7175a8a5a585de84e8ff93976ce393efa5f2837aab1" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.126" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3997c7839262f4ef12cf90b818d6340c18e80f263f1a94bf157d0ec4420380e" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn 2.0.96", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "dc1b4cb0cc549fcf58d7dfc081778139b3d283a081644e833e84682ad71cea24" +dependencies = [ + "unicode-ident", +] [[package]] name = "winapi-util" diff --git a/daft-derive/tests/fixtures/invalid/struct-field-not-diffable.stderr b/daft-derive/tests/fixtures/invalid/struct-field-not-diffable.stderr index 9c5628c..2a8f73a 100644 --- a/daft-derive/tests/fixtures/invalid/struct-field-not-diffable.stderr +++ b/daft-derive/tests/fixtures/invalid/struct-field-not-diffable.stderr @@ -2,8 +2,13 @@ error[E0277]: the trait bound `NonDiffable: Diffable` is not satisfied --> tests/fixtures/invalid/struct-field-not-diffable.rs:8:5 | 8 | b: NonDiffable, - | ^ the trait `Diffable` is not implemented for `NonDiffable` + | ^ unsatisfied trait bound | +help: the trait `Diffable` is not implemented for `NonDiffable` + --> tests/fixtures/invalid/struct-field-not-diffable.rs:3:1 + | +3 | struct NonDiffable {} + | ^^^^^^^^^^^^^^^^^^ = help: the following other types implement trait `Diffable`: &'a T () @@ -19,8 +24,13 @@ error[E0277]: the trait bound `NonDiffable: Diffable` is not satisfied --> tests/fixtures/invalid/struct-field-not-diffable.rs:5:10 | 5 | #[derive(Diffable)] - | ^^^^^^^^ the trait `Diffable` is not implemented for `NonDiffable` + | ^^^^^^^^ unsatisfied trait bound + | +help: the trait `Diffable` is not implemented for `NonDiffable` + --> tests/fixtures/invalid/struct-field-not-diffable.rs:3:1 | +3 | struct NonDiffable {} + | ^^^^^^^^^^^^^^^^^^ = help: the following other types implement trait `Diffable`: &'a T () @@ -36,39 +46,49 @@ error[E0277]: the trait bound `NonDiffable: Diffable` is not satisfied error[E0277]: the trait bound `NonDiffable: Diffable` is not satisfied in `MyStructDiff<'__daft>` --> tests/fixtures/invalid/struct-field-not-diffable.rs:5:10 | -5 | #[derive(Diffable)] - | ^^^^^^^^ within `MyStructDiff<'__daft>`, the trait `Diffable` is not implemented for `NonDiffable` - | - = help: the following other types implement trait `Diffable`: - &'a T - () - (A, B) - (A, B, C) - (A, B, C, D) - (A, B, C, D, E) - (A, B, C, D, E, F) - (A, B, C, D, E, F, G) - and $N others + 5 | #[derive(Diffable)] + | ^^^^^^^^ unsatisfied trait bound + | +help: within `MyStructDiff<'__daft>`, the trait `Diffable` is not implemented for `NonDiffable` + --> tests/fixtures/invalid/struct-field-not-diffable.rs:3:1 + | + 3 | struct NonDiffable {} + | ^^^^^^^^^^^^^^^^^^ + = help: the following other types implement trait `Diffable`: + &'a T + () + (A, B) + (A, B, C) + (A, B, C, D) + (A, B, C, D, E) + (A, B, C, D, E, F) + (A, B, C, D, E, F, G) + and $N others note: required because it appears within the type `MyStructDiff<'__daft>` - --> tests/fixtures/invalid/struct-field-not-diffable.rs:5:10 - | -5 | #[derive(Diffable)] - | ^^^^^^^^ + --> tests/fixtures/invalid/struct-field-not-diffable.rs:5:10 + | + 5 | #[derive(Diffable)] + | ^^^^^^^^ note: required by a bound in `daft::Diffable::Diff` - --> $WORKSPACE/daft/src/diffable.rs - | - | / type Diff<'daft> - | | where - | | Self: 'daft; - | |____________________^ required by this bound in `Diffable::Diff` - = note: this error originates in the derive macro `Diffable` (in Nightly builds, run with -Z macro-backtrace for more info) + --> $WORKSPACE/daft/src/diffable.rs + | + | / type Diff<'daft> + | | where + | | Self: 'daft; + | |____________________^ required by this bound in `Diffable::Diff` + = note: this error originates in the derive macro `Diffable` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `NonDiffable: Diffable` is not satisfied in `MyStructDiff<'__daft>` --> tests/fixtures/invalid/struct-field-not-diffable.rs:5:10 | 5 | #[derive(Diffable)] - | ^^^^^^^^ within `MyStructDiff<'__daft>`, the trait `Diffable` is not implemented for `NonDiffable` + | ^^^^^^^^ unsatisfied trait bound + | +help: within `MyStructDiff<'__daft>`, the trait `Diffable` is not implemented for `NonDiffable` + --> tests/fixtures/invalid/struct-field-not-diffable.rs:3:1 | +3 | struct NonDiffable {} + | ^^^^^^^^^^^^^^^^^^ = help: the following other types implement trait `Diffable`: &'a T () diff --git a/daft/README.md b/daft/README.md index 5b7b680..5841beb 100644 --- a/daft/README.md +++ b/daft/README.md @@ -421,9 +421,9 @@ Implementations for standard library types, all **enabled** by default: Implementations for third-party types, all **disabled** by default: -* `uuid1`: Enable diffing for [`uuid::Uuid`](https://docs.rs/uuid/1.12.1/uuid/struct.Uuid.html). +* `uuid1`: Enable diffing for [`uuid::Uuid`](https://docs.rs/uuid/1.24.0/uuid/struct.Uuid.html). * `oxnet01`: Enable diffing for network types from the [`oxnet`](https://docs.rs/oxnet/0.1.0/oxnet/index.html) crate. -* `newtype-uuid1`: Enable diffing for [`newtype_uuid::TypedUuid`](https://docs.rs/newtype-uuid/1.2.1/newtype_uuid/struct.TypedUuid.html). +* `newtype-uuid1`: Enable diffing for [`newtype_uuid::TypedUuid`](https://docs.rs/newtype-uuid/1.3.2/newtype_uuid/struct.TypedUuid.html). ## Minimum supported Rust version (MSRV) diff --git a/rust-toolchain.toml b/rust-toolchain.toml index ad7507a..e11e9a1 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -4,5 +4,5 @@ # The intent is to keep this updated as new stable versions are relased. [toolchain] -channel = "1.88.0" +channel = "1.97.1" profile = "default"