diff --git a/Cargo.lock b/Cargo.lock index 5a62bccf6b2b..df01cd74fe08 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -37,9 +37,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.45" +version = "1.0.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee10e43ae4a853c0a3591d4e2ada1719e553be18199d9da9d4a83f5927c2f5c7" +checksum = "8b26702f315f53b6071259e15dd9d64528213b44d61de1ec926eca7715d62203" [[package]] name = "anymap" @@ -49,9 +49,9 @@ checksum = "33954243bd79057c2de7338850b85983a44588021f8a5fee574a8888c6de4344" [[package]] name = "arbitrary" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "577b08a4acd7b99869f863c50011b01eb73424ccc798ecd996f2e24817adfca7" +checksum = "510c76ecefdceada737ea728f4f9a84bd2e1ef29f1ba555e560940fe279954de" [[package]] name = "arrayvec" @@ -145,9 +145,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.71" +version = "1.0.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79c2681d6594606957bbb8631c4b90a7fcaaa72cdb714743a437b156d6a7eedd" +checksum = "22a9137b95ea06864e018375b72adfb7db6e6f68cfc8df5a04d00288050485ee" [[package]] name = "cfg" @@ -171,9 +171,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chalk-derive" -version = "0.73.0" +version = "0.74.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f182e4c40ae0a36afff9904e46389df47d2f943bae70eab3d779c87aa5dd584" +checksum = "09d8c85134e234bead3fb78e4abd3ca2bdc228e5897b7f0fcd5265c4f4294375" dependencies = [ "proc-macro2", "quote", @@ -183,9 +183,9 @@ dependencies = [ [[package]] name = "chalk-ir" -version = "0.73.0" +version = "0.74.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f998dcab9f6975ce5fe69c28acba246f75f82c1a8faa4455facac82ee61bc14" +checksum = "b08046b4a060d3fbf9df521a3aca331ff14d0a50c184b09a7b80edca1bf2aa79" dependencies = [ "bitflags", "chalk-derive", @@ -194,9 +194,9 @@ dependencies = [ [[package]] name = "chalk-recursive" -version = "0.73.0" +version = "0.74.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c56b019577ff31fc12748cbe2ddcec47d2b9e647f98cce146bfeb69ad2263fb4" +checksum = "a8d0190d6f86bdd3395fb4482879cda3e40a14a4c32241805301fb079fd7b62c" dependencies = [ "chalk-derive", "chalk-ir", @@ -207,9 +207,9 @@ dependencies = [ [[package]] name = "chalk-solve" -version = "0.73.0" +version = "0.74.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "296c92cae565a4000e3eea00ece09e14ce24e6bdc14a5807d140a4cc7652b8d4" +checksum = "2bb39cbb1887edb2e12513ad811bea9a70faf4f98f4de794c5899c2c2e43e1b4" dependencies = [ "chalk-derive", "chalk-ir", @@ -225,6 +225,12 @@ name = "countme" version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "328b822bdcba4d4e402be8d9adb6eebf269f969f8eadef977a553ff3c4fbcb58" + +[[package]] +name = "countme" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03746e0c6dd9b5d2d9132ffe0bede35fb5f815604fd371bb42599fd37bc8e483" dependencies = [ "dashmap", "once_cell", @@ -239,9 +245,9 @@ checksum = "0d48d8f76bd9331f19fe2aaf3821a9f9fb32c3963e1e3d6ce82a8c09cef7444a" [[package]] name = "crc32fast" -version = "1.2.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a" +checksum = "738c290dfaea84fc1ca15ad9c168d083b05a714e1efddd8edaab678dc28d2836" dependencies = [ "cfg-if", ] @@ -346,9 +352,9 @@ dependencies = [ [[package]] name = "expect-test" -version = "1.2.0-pre.1" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a2f1664bc69648747878bfe3430ad9b58bc8d9b50b3b1df9f3c081345e33197" +checksum = "0ffc5e8bf4af3ae147a7797c5d0566d9f038e49179213e29f44ddb031aea96c7" dependencies = [ "dissimilar", "once_cell", @@ -806,15 +812,15 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.107" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbe5e23404da5b4f555ef85ebed98fb4083e55a00c317800bc2a50ede9f3d219" +checksum = "8521a1b57e76b1ec69af7599e75e38e7b7fad6610f037db8c79b127201b5d119" [[package]] name = "libloading" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0cf036d15402bea3c5d4de17b3fce76b3e4a56ebc1f577be0e7a72f7c607cf0" +checksum = "afe203d669ec979b7128619bae5a63b7b42e9203c1b29146079ee05e2f604b52" dependencies = [ "cfg-if", "winapi", @@ -822,9 +828,9 @@ dependencies = [ [[package]] name = "libmimalloc-sys" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1b8479c593dba88c2741fc50b92e13dbabbbe0bd504d979f244ccc1a5b1c01" +checksum = "9636c194f9db483f4d0adf2f99a65011a99f904bd222bbd67fb4df4f37863c30" dependencies = [ "cc", ] @@ -924,18 +930,18 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9" +checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" dependencies = [ "autocfg", ] [[package]] name = "mimalloc" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb74897ce508e6c49156fd1476fc5922cbc6e75183c65e399c765a09122e5130" +checksum = "cf5f78c1d9892fb5677a8b2f543f967ab891ac0f71feecd961435b74f877283a" dependencies = [ "libmimalloc-sys", ] @@ -958,7 +964,7 @@ checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc" dependencies = [ "libc", "log", - "miow", + "miow 0.3.7", "ntapi", "winapi", ] @@ -972,6 +978,15 @@ dependencies = [ "winapi", ] +[[package]] +name = "miow" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7377f7792b3afb6a3cba68daa54ca23c032137010460d667fda53a8d66be00e" +dependencies = [ + "windows-sys", +] + [[package]] name = "notify" version = "5.0.0-pre.13" @@ -1171,7 +1186,7 @@ name = "profile" version = "0.0.0" dependencies = [ "cfg-if", - "countme", + "countme 3.0.0", "la-arena", "libc", "once_cell", @@ -1214,9 +1229,9 @@ dependencies = [ [[package]] name = "pulldown-cmark-to-cmark" -version = "6.0.4" +version = "7.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f5925e2c68fb0c3c189cd0f6bbcf1e16402a070d4fcaf7600e239e8302dd0e8" +checksum = "2d85e607de0249c2b5041e38de8684b00b62a64edee60bfcd85c153031a9d658" dependencies = [ "pulldown-cmark", ] @@ -1294,7 +1309,7 @@ version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f77412a3d1f26af0c0783c23b3555a301b1a49805cba7bf9a7827a9e9e285f0" dependencies = [ - "countme", + "countme 2.0.4", "hashbrown", "memoffset", "rustc-hash", @@ -1376,9 +1391,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "ryu" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" +checksum = "3c9613b5a66ab9ba26415184cfc41156594925a9cf3a2057e57f31ff145f6568" [[package]] name = "salsa" @@ -1461,9 +1476,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.69" +version = "1.0.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e466864e431129c7e0d3476b92f20458e5879919a0596c6472738d9fa2d342f8" +checksum = "d0ffa0837f2dfa6fb90868c2b5468cad482e175f7dad97e7421951e663f2b527" dependencies = [ "indexmap", "itoa", @@ -1526,15 +1541,15 @@ dependencies = [ "always-assert", "backtrace", "libc", - "miow", + "miow 0.4.0", "winapi", ] [[package]] name = "syn" -version = "1.0.81" +version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2afee18b8beb5a596ecb4a2dce128c719b4ba399d34126b9e4396e3f9860966" +checksum = "8daf5dd0bb60cbd4137b1b587d2fc0ae729bc07cf01cd70b36a1ed5ade3b9d59" dependencies = [ "proc-macro2", "quote", @@ -1578,15 +1593,6 @@ dependencies = [ "ungrammar", ] -[[package]] -name = "termcolor" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" -dependencies = [ - "winapi-util", -] - [[package]] name = "test_utils" version = "0.0.0" @@ -1663,9 +1669,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83b2a3d4d9091d0abd7eba4dc2710b1718583bd4d8992e2190720ea38f391f7" +checksum = "2c1c1d5a42b6245520c249549ec267180beaffcc0615401ac8e31853d4b6d8d2" dependencies = [ "tinyvec_macros", ] @@ -1744,13 +1750,12 @@ dependencies = [ [[package]] name = "tracing-tree" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d850f81a21b3877d4360a079c35b7b78f2674f2dafa5c9d381c53c65acebea3" +checksum = "a2a408a91fbd4850982080e643a261aef2a2ef72c8263ce353b61d25acfc2c49" dependencies = [ "ansi_term", "atty", - "termcolor", "tracing-core", "tracing-log", "tracing-subscriber", @@ -1890,6 +1895,49 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-sys" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82ca39602d5cbfa692c4b67e3bcbb2751477355141c1ed434c94da4186836ff6" +dependencies = [ + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_msvc" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52695a41e536859d5308cc613b4a022261a274390b25bd29dfff4bf08505f3c2" + +[[package]] +name = "windows_i686_gnu" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f54725ac23affef038fecb177de6c9bf065787c2f432f79e3c373da92f3e1d8a" + +[[package]] +name = "windows_i686_msvc" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d5158a43cc43623c0729d1ad6647e62fa384a3d135fd15108d37c683461f64" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc31f409f565611535130cfe7ee8e6655d3fa99c1c61013981e491921b5ce954" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f2b8c7cbd3bfdddd9ab98769f9746a7fad1bca236554cd032b78d768bc0e89f" + [[package]] name = "write-json" version = "0.1.2" diff --git a/crates/hir_ty/Cargo.toml b/crates/hir_ty/Cargo.toml index 48820d8c831a..4ec8749f87f6 100644 --- a/crates/hir_ty/Cargo.toml +++ b/crates/hir_ty/Cargo.toml @@ -18,9 +18,9 @@ ena = "0.14.0" tracing = "0.1" rustc-hash = "1.1.0" scoped-tls = "1" -chalk-solve = { version = "0.73", default-features = false } -chalk-ir = "0.73" -chalk-recursive = { version = "0.73", default-features = false } +chalk-solve = { version = "0.74", default-features = false } +chalk-ir = "0.74" +chalk-recursive = { version = "0.74", default-features = false } la-arena = { version = "0.3.0", path = "../../lib/arena" } once_cell = { version = "1.5.0" } diff --git a/crates/hir_ty/src/infer/unify.rs b/crates/hir_ty/src/infer/unify.rs index 852e545bd0e9..88f9d6a31129 100644 --- a/crates/hir_ty/src/infer/unify.rs +++ b/crates/hir_ty/src/infer/unify.rs @@ -3,8 +3,8 @@ use std::{fmt, mem, sync::Arc}; use chalk_ir::{ - cast::Cast, fold::Fold, interner::HasInterner, zip::Zip, FloatTy, IntTy, TyVariableKind, - UniverseIndex, + cast::Cast, fold::Fold, interner::HasInterner, zip::Zip, FloatTy, IntTy, NoSolution, + TyVariableKind, UniverseIndex, }; use chalk_solve::infer::ParameterEnaVariableExt; use ena::unify::UnifyKey; @@ -412,7 +412,9 @@ impl<'a> InferenceTable<'a> { highest_known_var: InferenceVar, } impl<'a, 'b> Folder<'static, Interner> for VarFudger<'a, 'b> { - fn as_dyn(&mut self) -> &mut dyn Folder<'static, Interner> { + type Error = NoSolution; + + fn as_dyn(&mut self) -> &mut dyn Folder<'static, Interner, Error = Self::Error> { self } @@ -538,7 +540,7 @@ mod resolve { use chalk_ir::{ cast::Cast, fold::{Fold, Folder}, - Fallible, + Fallible, NoSolution, }; use hir_def::type_ref::ConstScalar; @@ -551,7 +553,9 @@ mod resolve { where F: Fn(InferenceVar, VariableKind, GenericArg, DebruijnIndex) -> GenericArg + 'i, { - fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner> { + type Error = NoSolution; + + fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner, Error = Self::Error> { self } diff --git a/crates/hir_ty/src/lib.rs b/crates/hir_ty/src/lib.rs index f59e109c85f4..320b170ee40f 100644 --- a/crates/hir_ty/src/lib.rs +++ b/crates/hir_ty/src/lib.rs @@ -35,7 +35,7 @@ use std::sync::Arc; use chalk_ir::{ fold::{Fold, Shift}, interner::HasInterner, - UintTy, + NoSolution, UintTy, }; use hir_def::{ expr::ExprId, @@ -228,11 +228,11 @@ impl CallableSig { impl Fold for CallableSig { type Result = CallableSig; - fn fold_with<'i>( + fn fold_with<'i, E>( self, - folder: &mut dyn chalk_ir::fold::Folder<'i, Interner>, + folder: &mut dyn chalk_ir::fold::Folder<'i, Interner, Error = E>, outer_binder: DebruijnIndex, - ) -> chalk_ir::Fallible + ) -> Result where Interner: 'i, { @@ -282,7 +282,9 @@ pub(crate) fn fold_free_vars + Fold(F); impl<'i, F: FnMut(BoundVar, DebruijnIndex) -> Ty + 'i> Folder<'i, Interner> for FreeVarFolder { - fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner> { + type Error = NoSolution; + + fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner, Error = Self::Error> { self } @@ -312,7 +314,9 @@ pub(crate) fn fold_tys + Fold>( }; struct TyFolder(F); impl<'i, F: FnMut(Ty, DebruijnIndex) -> Ty + 'i> Folder<'i, Interner> for TyFolder { - fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner> { + type Error = NoSolution; + + fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner, Error = Self::Error> { self } @@ -338,13 +342,15 @@ where { use chalk_ir::{ fold::{Folder, SuperFold}, - Fallible, NoSolution, + Fallible, }; struct ErrorReplacer { vars: usize, } impl<'i> Folder<'i, Interner> for ErrorReplacer { - fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner> { + type Error = NoSolution; + + fn as_dyn(&mut self) -> &mut dyn Folder<'i, Interner, Error = Self::Error> { self } diff --git a/crates/ide/Cargo.toml b/crates/ide/Cargo.toml index 3403b5a6311a..0f3311cb71fc 100644 --- a/crates/ide/Cargo.toml +++ b/crates/ide/Cargo.toml @@ -16,7 +16,7 @@ itertools = "0.10.0" tracing = "0.1" rustc-hash = "1.1.0" oorandom = "11.1.2" -pulldown-cmark-to-cmark = "6.0.0" +pulldown-cmark-to-cmark = "7.1" pulldown-cmark = { version = "0.8.0", default-features = false } url = "2.1.1" dot = "0.1.4" diff --git a/crates/ide/src/doc_links.rs b/crates/ide/src/doc_links.rs index 617f63d35828..df25d80178ff 100644 --- a/crates/ide/src/doc_links.rs +++ b/crates/ide/src/doc_links.rs @@ -62,7 +62,7 @@ pub(crate) fn rewrite_links(db: &RootDatabase, markdown: &str, definition: Defin doc, &mut out, None, - CMarkOptions { code_block_backticks: 3, ..Default::default() }, + CMarkOptions { code_block_token_count: 3, ..Default::default() }, ) .ok(); out @@ -98,7 +98,7 @@ pub(crate) fn remove_links(markdown: &str) -> String { doc, &mut out, None, - CMarkOptions { code_block_backticks: 3, ..Default::default() }, + CMarkOptions { code_block_token_count: 3, ..Default::default() }, ) .ok(); out diff --git a/crates/profile/Cargo.toml b/crates/profile/Cargo.toml index 1d4f6d9147bf..b16a3951c2ac 100644 --- a/crates/profile/Cargo.toml +++ b/crates/profile/Cargo.toml @@ -14,7 +14,7 @@ once_cell = "1.3.1" cfg-if = "1" libc = "0.2" la-arena = { version = "0.3.0", path = "../../lib/arena" } -countme = { version = "2.0.1", features = ["enable"] } +countme = { version = "3.0", features = ["enable"] } jemalloc-ctl = { version = "0.4.1", package = "tikv-jemalloc-ctl", optional = true } [target.'cfg(target_os = "linux")'.dependencies] diff --git a/crates/rust-analyzer/tests/slow-tests/tidy.rs b/crates/rust-analyzer/tests/slow-tests/tidy.rs index 5debb9fb3d19..b8713123fba6 100644 --- a/crates/rust-analyzer/tests/slow-tests/tidy.rs +++ b/crates/rust-analyzer/tests/slow-tests/tidy.rs @@ -229,7 +229,6 @@ MIT OR Apache-2.0 MIT OR Apache-2.0 OR Zlib MIT OR Zlib OR Apache-2.0 MIT/Apache-2.0 -Unlicense OR MIT Unlicense/MIT Zlib OR Apache-2.0 OR MIT " diff --git a/crates/stdx/Cargo.toml b/crates/stdx/Cargo.toml index c456883a701f..9bdf22188aa1 100644 --- a/crates/stdx/Cargo.toml +++ b/crates/stdx/Cargo.toml @@ -16,7 +16,7 @@ always-assert = { version = "0.1.2", features = ["log"] } # Think twice before adding anything here [target.'cfg(windows)'.dependencies] -miow = "0.3.6" +miow = "0.4.0" winapi = "0.3.9" [features]