diff --git a/.config/hakari.toml b/.config/hakari.toml deleted file mode 100644 index 0dcb980b6..000000000 --- a/.config/hakari.toml +++ /dev/null @@ -1,8 +0,0 @@ -hakari-package = "workspace-hack" -dep-format-version = "4" -resolver = "2" - -[traversal-excludes] -third-party = [ - { name = "reqwest" }, -] diff --git a/Cargo.lock b/Cargo.lock index a66f632ea..0581147b7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,18 +17,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "aes" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" -dependencies = [ - "cfg-if", - "cipher 0.3.0", - "cpufeatures", - "opaque-debug", -] - [[package]] name = "ahash" version = "0.7.6" @@ -156,7 +144,6 @@ dependencies = [ "utime", "windows", "wiremock", - "workspace-hack", "zip", "zstd 0.12.3+zstd.1.5.2", ] @@ -177,7 +164,6 @@ dependencies = [ "serde", "serde_json", "unic-langid", - "workspace-hack", ] [[package]] @@ -189,7 +175,6 @@ dependencies = [ "regex", "serde_json", "walkdir", - "workspace-hack", ] [[package]] @@ -306,7 +291,6 @@ dependencies = [ "sha2", "tar", "tokio", - "workspace-hack", "xz2", "zip", "zstd 0.12.3+zstd.1.5.2", @@ -361,9 +345,9 @@ dependencies = [ [[package]] name = "async-stream" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad445822218ce64be7a341abfb0b1ea43b5c23aa83902542a4542e78309d8e5e" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" dependencies = [ "async-stream-impl", "futures-core", @@ -372,13 +356,13 @@ dependencies = [ [[package]] name = "async-stream-impl" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4655ae1a7b0cdf149156f780c5bf3f1352bc53cbd9e0a361a7ef7b22947e965" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.18", ] [[package]] @@ -510,12 +494,6 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" -[[package]] -name = "base64ct" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" - [[package]] name = "bitflags" version = "1.3.2" @@ -538,7 +516,7 @@ dependencies = [ "arrayvec", "cc", "cfg-if", - "constant_time_eq 0.2.5", + "constant_time_eq", "digest", ] @@ -602,27 +580,6 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" -[[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.11+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" -dependencies = [ - "cc", - "libc", - "pkg-config", -] - [[package]] name = "camino" version = "1.1.4" @@ -641,7 +598,7 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" dependencies = [ - "cipher 0.4.4", + "cipher", ] [[package]] @@ -698,15 +655,6 @@ dependencies = [ "half", ] -[[package]] -name = "cipher" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" -dependencies = [ - "generic-array", -] - [[package]] name = "cipher" version = "0.4.4" @@ -841,9 +789,9 @@ dependencies = [ [[package]] name = "concurrent-queue" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e" +checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c" dependencies = [ "crossbeam-utils", ] @@ -855,15 +803,8 @@ dependencies = [ "anyhow", "itertools", "ninja_gen", - "workspace-hack", ] -[[package]] -name = "constant_time_eq" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" - [[package]] name = "constant_time_eq" version = "0.2.5" @@ -1091,7 +1032,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e" dependencies = [ - "cipher 0.4.4", + "cipher", ] [[package]] @@ -1382,7 +1323,6 @@ version = "0.0.0" dependencies = [ "camino", "snafu", - "workspace-hack", ] [[package]] @@ -1445,9 +1385,9 @@ checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" [[package]] name = "futures-lite" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ "fastrand", "futures-core", @@ -2143,7 +2083,6 @@ dependencies = [ "reqwest", "strum", "tokio", - "workspace-hack", ] [[package]] @@ -2212,7 +2151,6 @@ dependencies = [ "serde_json", "simple-file-manifest", "walkdir", - "workspace-hack", ] [[package]] @@ -2225,7 +2163,6 @@ dependencies = [ "glob", "tugger-windows-codesign", "walkdir", - "workspace-hack", ] [[package]] @@ -2448,7 +2385,6 @@ dependencies = [ "num_cpus", "walkdir", "which", - "workspace-hack", ] [[package]] @@ -2576,12 +2512,6 @@ version = "11.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" -[[package]] -name = "opaque-debug" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" - [[package]] name = "opener" version = "0.5.2" @@ -2665,7 +2595,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4873306de53fe82e7e484df31e1e947d61514b6ea2ed6cd7b45d63006fd9224" dependencies = [ "cbc", - "cipher 0.4.4", + "cipher", "des", "getrandom 0.2.8", "hmac", @@ -2677,9 +2607,9 @@ dependencies = [ [[package]] name = "parking" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" +checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e" [[package]] name = "parking_lot" @@ -2704,29 +2634,6 @@ dependencies = [ "windows-sys 0.45.0", ] -[[package]] -name = "password-hash" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest", - "hmac", - "password-hash", - "sha2", -] - [[package]] name = "pem" version = "1.1.1" @@ -3284,7 +3191,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62c64daa8e9438b84aaae55010a93f396f8e60e3911590fcba770d04643fc1dd" dependencies = [ - "cipher 0.4.4", + "cipher", ] [[package]] @@ -3417,7 +3324,6 @@ version = "0.0.0" dependencies = [ "anki", "pyo3", - "workspace-hack", ] [[package]] @@ -3432,7 +3338,6 @@ dependencies = [ "junction", "termcolor", "which", - "workspace-hack", ] [[package]] @@ -4104,7 +4009,6 @@ dependencies = [ "libc", "mio", "num_cpus", - "parking_lot", "pin-project-lite", "signal-hook-registry", "socket2", @@ -5039,13 +4943,13 @@ dependencies = [ [[package]] name = "wiremock" -version = "0.5.17" +version = "0.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12316b50eb725e22b2f6b9c4cbede5b7b89984274d113a7440c86e5c3fc6f99b" +checksum = "c6f71803d3a1c80377a06221e0530be02035d5b3e854af56c6ece7ac20ac441d" dependencies = [ "assert-json-diff", "async-trait", - "base64 0.13.1", + "base64 0.21.0", "deadpool", "futures", "futures-timer", @@ -5059,55 +4963,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "workspace-hack" -version = "0.1.0" -dependencies = [ - "bytes", - "cc", - "clap 4.2.1", - "clap_builder", - "crossbeam-utils", - "either", - "flate2", - "futures-channel", - "futures-io", - "futures-util", - "getrandom 0.2.8", - "hashbrown", - "hmac", - "hyper", - "indexmap", - "itertools", - "log", - "num-traits", - "phf_shared 0.11.1", - "rand 0.8.5", - "rand_core 0.6.4", - "regex", - "regex-syntax", - "scopeguard", - "serde", - "serde_json", - "sha2", - "snafu", - "snafu-derive", - "syn 1.0.109", - "syn 2.0.18", - "time", - "tokio", - "tokio-util", - "tracing", - "tracing-core", - "url", - "zip", - "zstd 0.11.2+zstd.1.5.2", - "zstd 0.12.3+zstd.1.5.2", - "zstd-safe 5.0.2+zstd.1.5.2", - "zstd-safe 6.0.4+zstd.1.5.4", - "zstd-sys", -] - [[package]] name = "xattr" version = "0.2.3" @@ -5152,18 +5007,11 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0445d0fbc924bb93539b4316c11afb121ea39296f99a3c4c9edad09e3658cdef" dependencies = [ - "aes", "byteorder", - "bzip2", - "constant_time_eq 0.1.5", "crc32fast", "crossbeam-utils", "flate2", - "hmac", - "pbkdf2", - "sha1", "time", - "zstd 0.11.2+zstd.1.5.2", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 19ed4b630..cbb2adf05 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -20,7 +20,6 @@ members = [ "build/archives", "build/runner", "ftl", - "tools/workspace-hack", "tools/minilints", "qt/bundle/win", "qt/bundle/mac", @@ -28,6 +27,113 @@ members = [ exclude = ["qt/bundle"] resolver = "2" +[workspace.dependencies] +# local +anki = { path = "rslib" } +anki_i18n = { path = "rslib/i18n" } +anki_io = { path = "rslib/io" } +anki_proto = { path = "rslib/proto" } +anki_process = { path = "rslib/process" } +anki_proto_gen = { path = "rslib/proto_gen" } +ninja_gen = { "path" = "build/ninja_gen" } + +# forked +csv = { git = "https://github.com/ankitects/rust-csv.git", rev = "1c9d3aab6f79a7d815c69f925a46a4590c115f90" } +percent-encoding-iri = { git = "https://github.com/ankitects/rust-url.git", rev = "bb930b8d089f4d30d7d19c12e54e66191de47b88" } +linkcheck = { git = "https://github.com/ankitects/linkcheck.git", rev = "184b2ca50ed39ca43da13f0b830a463861adb9ca" } + +# pinned +unicase = "=2.6.0" # any changes could invalidate sqlite indexes + +# normal +ammonia = "3.3.0" +anyhow = "1.0.71" +apple-bundles = "0.17.0" +async-compression = { version = "0.3.15", features = ["zstd", "tokio"] } +async-stream = "0.3.4" +async-trait = "0.1.68" +axum = { version = "0.6.12", features = ["multipart", "macros", "headers"] } +axum-client-ip = "0.3.1" +blake3 = "1.3.3" +bytes = "1.4.0" +camino = "1.1.4" +chrono = { version = "0.4.26", default-features = false, features = ["std", "clock"] } +clap = { version = "4.2.1", features = ["derive"] } +coarsetime = "0.1.23" +convert_case = "0.6.0" +criterion = { version = "0.4.0" } +difflib = "0.4.0" +env_logger = "0.10.0" +flate2 = "1.0.25" +fluent = "0.16.0" +fluent-bundle = "0.15.2" +fluent-syntax = "0.11.0" +fnv = "1.0.7" +futures = "0.3.28" +glob = "0.3.1" +globset = "0.4.10" +hex = "0.4.3" +htmlescape = "0.3.1" +hyper = "0.14.25" +id_tree = "1.8.0" +inflections = "1.1.1" +intl-memoizer = "0.5.1" +itertools = "0.10.5" +junction = "1.0.0" +lazy_static = "1.4.0" +maplit = "1.0.2" +nom = "7.1.3" +num-format = "0.4.4" +num_cpus = "1.15.0" +num_enum = "0.6.1" +once_cell = "1.17.1" +phf = { version = "0.11.1", features = ["macros"] } +pin-project = "1.0.12" +plist = "1.4.3" +prettyplease = "0.2.7" +prost = "0.11.8" +prost-build = "0.11.9" +prost-reflect = "0.11.4" +prost-types = "0.11.9" +pulldown-cmark = "0.9.2" +pyo3 = { version = "0.18.2", features = ["extension-module", "abi3", "abi3-py39"] } +rand = "0.8.5" +regex = "1.7.3" +reqwest = { version = "0.11.16", default-features = false, features = ["json", "socks", "stream", "multipart"] } +rusqlite = { version = "0.29.0", features = ["trace", "functions", "collation", "bundled"] } +scopeguard = "1.1.0" +serde = { version = "1.0.159", features = ["derive"] } +serde-aux = "4.1.2" +serde_json = "1.0.95" +serde_repr = "0.1.12" +serde_tuple = "0.5.0" +sha1 = "0.10.5" +sha2 = { version = "0.10.6" } +simple-file-manifest = "0.11.0" +snafu = { version = "0.7.4", features = ["backtraces", "rust_1_61"] } +strum = { version = "0.24.1", features = ["derive"] } +syn = { version = "2.0.18", features = ["parsing", "printing"] } +tar = "0.4.38" +tempfile = "3.5.0" +termcolor = "1.2.0" +tokio = { version = "1.27", features = ["fs", "rt-multi-thread", "macros", "signal"] } +tokio-util = { version = "0.7.7", features = ["io"] } +tower-http = { version = "0.4.0", features = ["trace"] } +tracing = { version = "0.1.37", features = ["max_level_trace", "release_max_level_debug"] } +tracing-appender = "0.2.2" +tracing-subscriber = { version = "0.3.16", features = ["fmt", "env-filter"] } +tugger-windows-codesign = "0.10.0" +unic-langid = { version = "0.9.1", features = ["macros"] } +unic-ucd-category = "0.9.0" +unicode-normalization = "0.1.22" +utime = "0.3.1" +walkdir = "2.3.3" +which = "4.4.0" +wiremock = "0.5.17" +xz2 = "0.1.7" +zip = { version = "0.6.4", default-features = false, features = ["deflate", "time"] } +zstd = { version = "0.12.3", features = ["zstdmt"] } + # Apply mild optimizations to our dependencies in dev mode, which among other things # improves sha2 performance by about 21x. Opt 1 chosen due to # https://doc.rust-lang.org/cargo/reference/profiles.html#overrides-and-generics. This diff --git a/build/archives/Cargo.toml b/build/archives/Cargo.toml index 05e6a1dce..36eb12a3b 100644 --- a/build/archives/Cargo.toml +++ b/build/archives/Cargo.toml @@ -1,29 +1,24 @@ [package] name = "archives" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anki_io = { version = "0.0.0", path = "../../rslib/io" } -camino = "1.1.4" -flate2 = "1.0.25" -sha2 = { version = "0.10.6" } -tar = "0.4.38" -tokio = { version = "1.27.0", features = ["macros", "rt-multi-thread"] } -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } -xz2 = "0.1.7" -zip = "0.6.4" -zstd = "0.12.3" +anki_io.workspace = true +camino.workspace = true +flate2.workspace = true +reqwest.workspace = true +sha2.workspace = true +tar.workspace = true +tokio.workspace = true +xz2.workspace = true +zip.workspace = true +zstd.workspace = true [features] rustls = ["reqwest/rustls-tls", "reqwest/rustls-tls-native-roots"] native-tls = ["reqwest/native-tls"] - -[dependencies.reqwest] -version = "0.11.16" -default-features = false diff --git a/build/configure/Cargo.toml b/build/configure/Cargo.toml index ed362a738..a41df4eea 100644 --- a/build/configure/Cargo.toml +++ b/build/configure/Cargo.toml @@ -1,15 +1,13 @@ [package] name = "configure" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anyhow = "1.0.71" -itertools = "0.10.5" -ninja_gen = { "path" = "../ninja_gen" } -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } +anyhow.workspace = true +itertools.workspace = true +ninja_gen.workspace = true diff --git a/build/ninja_gen/Cargo.toml b/build/ninja_gen/Cargo.toml index 7f7079334..6beef54bd 100644 --- a/build/ninja_gen/Cargo.toml +++ b/build/ninja_gen/Cargo.toml @@ -1,22 +1,20 @@ [package] name = "ninja_gen" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anki_io = { version = "0.0.0", path = "../../rslib/io" } -anyhow = "1.0.71" -camino = "1.1.4" -globset = "0.4.10" -itertools = "0.10.5" -lazy_static = "1.4.0" -maplit = "1.0.2" -num_cpus = "1.15.0" -walkdir = "2.3.3" -which = "4.4.0" -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } +anki_io.workspace = true +anyhow.workspace = true +camino.workspace = true +globset.workspace = true +itertools.workspace = true +lazy_static.workspace = true +maplit.workspace = true +num_cpus.workspace = true +walkdir.workspace = true +which.workspace = true diff --git a/build/ninja_gen/src/configure.rs b/build/ninja_gen/src/configure.rs index 211ed1500..368591cf5 100644 --- a/build/ninja_gen/src/configure.rs +++ b/build/ninja_gen/src/configure.rs @@ -31,12 +31,7 @@ impl BuildAction for ConfigureBuild { inputs: inputs![glob!["build/**/*"]], outputs: &[RustOutput::Binary("configure")], target: None, - // we ensure runner is up to date, but don't declare it as output, - // as ninja will try to clean up stale outputs, and that fails on - // Windows. The ninja wrapper script should ensure the runner is up to - // date anyway, but advanced users can invoke ninja directly to save - // the ~80+ms it takes cargo to check that the runner is up to date. - extra_args: "-p configure -p runner", + extra_args: "-p configure", release_override: Some(false), }, )?; diff --git a/build/runner/Cargo.toml b/build/runner/Cargo.toml index 65dcd975a..8d908170f 100644 --- a/build/runner/Cargo.toml +++ b/build/runner/Cargo.toml @@ -1,20 +1,18 @@ [package] name = "runner" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anki_io = { version = "0.0.0", path = "../../rslib/io" } -anyhow = "1.0.71" -camino = "1.1.4" -clap = { version = "4.2.1", features = ["derive"] } -itertools = "0.10.5" -junction = "1.0.0" -termcolor = "1.2.0" -which = "4.4.0" -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } +anki_io.workspace = true +anyhow.workspace = true +camino.workspace = true +clap.workspace = true +itertools.workspace = true +junction.workspace = true +termcolor.workspace = true +which.workspace = true diff --git a/cargo/licenses.json b/cargo/licenses.json index d409f97e0..b738c5478 100644 --- a/cargo/licenses.json +++ b/cargo/licenses.json @@ -17,15 +17,6 @@ "license_file": null, "description": "A simple clean-room implementation of the Adler-32 checksum" }, - { - "name": "aes", - "version": "0.7.5", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/block-ciphers", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Pure Rust implementation of the Advanced Encryption Standard (a.k.a. Rijndael) including support for AES in counter mode (a.k.a. AES-CTR)" - }, { "name": "ahash", "version": "0.7.6", @@ -116,42 +107,6 @@ "license_file": null, "description": "Helpers for interface code generation" }, - { - "name": "anstream", - "version": "0.2.6", - "authors": null, - "repository": "https://github.com/rust-cli/anstyle.git", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "A simple cross platform library for writing colored text to a terminal." - }, - { - "name": "anstyle", - "version": "0.3.5", - "authors": null, - "repository": "https://github.com/rust-cli/anstyle.git", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "ANSI text styling" - }, - { - "name": "anstyle-parse", - "version": "0.1.1", - "authors": null, - "repository": "https://github.com/rust-cli/anstyle.git", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Parse ANSI Style Escapes" - }, - { - "name": "anstyle-wincon", - "version": "0.2.0", - "authors": null, - "repository": "https://github.com/rust-cli/anstyle.git", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Styling legacy Windows terminals" - }, { "name": "anyhow", "version": "1.0.71", @@ -208,7 +163,7 @@ }, { "name": "async-stream", - "version": "0.3.4", + "version": "0.3.5", "authors": "Carl Lerche ", "repository": "https://github.com/tokio-rs/async-stream", "license": "MIT", @@ -217,7 +172,7 @@ }, { "name": "async-stream-impl", - "version": "0.3.4", + "version": "0.3.5", "authors": "Carl Lerche ", "repository": "https://github.com/tokio-rs/async-stream", "license": "MIT", @@ -305,15 +260,6 @@ "license_file": null, "description": "encodes and decodes base64 as bytes or utf8" }, - { - "name": "base64ct", - "version": "1.6.0", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/formats/tree/master/base64ct", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Pure Rust implementation of Base64 (RFC 4648) which avoids any usages of data-dependent branches/LUTs and thereby provides portable \"best effort\" constant-time operation and embedded-friendly no_std support" - }, { "name": "bitflags", "version": "1.3.2", @@ -386,24 +332,6 @@ "license_file": null, "description": "Types and traits for working with bytes" }, - { - "name": "bzip2", - "version": "0.4.4", - "authors": "Alex Crichton ", - "repository": "https://github.com/alexcrichton/bzip2-rs", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Bindings to libbzip2 for bzip2 compression and decompression exposed as Reader/Writer streams." - }, - { - "name": "bzip2-sys", - "version": "0.1.11+1.0.8", - "authors": "Alex Crichton ", - "repository": "https://github.com/alexcrichton/bzip2-rs", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Bindings to libbzip2 for bzip2 compression and decompression exposed as Reader/Writer streams." - }, { "name": "cc", "version": "1.0.79", @@ -431,51 +359,6 @@ "license_file": null, "description": "Date and time library for Rust" }, - { - "name": "cipher", - "version": "0.3.0", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/traits", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Traits for describing block ciphers and stream ciphers" - }, - { - "name": "clap", - "version": "4.2.1", - "authors": null, - "repository": "https://github.com/clap-rs/clap", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "A simple to use, efficient, and full-featured Command Line Argument Parser" - }, - { - "name": "clap_builder", - "version": "4.2.1", - "authors": null, - "repository": "https://github.com/clap-rs/clap", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "A simple to use, efficient, and full-featured Command Line Argument Parser" - }, - { - "name": "clap_derive", - "version": "4.2.0", - "authors": null, - "repository": "https://github.com/clap-rs/clap/tree/master/clap_derive", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Parse command line argument by defining a struct, derive crate." - }, - { - "name": "clap_lex", - "version": "0.4.1", - "authors": null, - "repository": "https://github.com/clap-rs/clap/tree/master/clap_lex", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Minimal, flexible command line parser" - }, { "name": "coarsetime", "version": "0.1.23", @@ -494,42 +377,15 @@ "license_file": null, "description": "Beautiful diagnostic reporting for text-based programming languages" }, - { - "name": "concolor-override", - "version": "1.0.0", - "authors": null, - "repository": "https://github.com/rust-cli/concolor", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Global override of color control" - }, - { - "name": "concolor-query", - "version": "0.3.3", - "authors": null, - "repository": "https://github.com/rust-cli/concolor", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Look up colored console capabilities" - }, { "name": "concurrent-queue", - "version": "2.1.0", + "version": "2.2.0", "authors": "Stjepan Glavina |Taiki Endo |John Nunley ", "repository": "https://github.com/smol-rs/concurrent-queue", "license": "Apache-2.0 OR MIT", "license_file": null, "description": "Concurrent multi-producer multi-consumer queue" }, - { - "name": "constant_time_eq", - "version": "0.1.5", - "authors": "Cesar Eduardo Barros ", - "repository": "https://github.com/cesarb/constant_time_eq", - "license": "CC0-1.0", - "license_file": null, - "description": "Compares two equal-sized byte strings in constant time." - }, { "name": "constant_time_eq", "version": "0.2.5", @@ -955,7 +811,7 @@ }, { "name": "futures-lite", - "version": "1.12.0", + "version": "1.13.0", "authors": "Stjepan Glavina |Contributors to futures-rs", "repository": "https://github.com/smol-rs/futures-lite", "license": "Apache-2.0 OR MIT", @@ -1133,15 +989,6 @@ "license_file": null, "description": "Encoding and decoding data into/from hexadecimal representation." }, - { - "name": "hmac", - "version": "0.12.1", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/MACs", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Generic implementation of Hash-based Message Authentication Code (HMAC)" - }, { "name": "html5ever", "version": "0.26.0", @@ -1700,15 +1547,6 @@ "license_file": null, "description": "Single assignment cells and lazy values." }, - { - "name": "opaque-debug", - "version": "0.3.0", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/utils", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Macro for opaque Debug trait implementation" - }, { "name": "openssl", "version": "0.10.55", @@ -1756,9 +1594,9 @@ }, { "name": "parking", - "version": "2.0.0", + "version": "2.1.0", "authors": "Stjepan Glavina |The Rust Project Developers", - "repository": "https://github.com/stjepang/parking", + "repository": "https://github.com/smol-rs/parking", "license": "Apache-2.0 OR MIT", "license_file": null, "description": "Thread parking and unparking" @@ -1781,24 +1619,6 @@ "license_file": null, "description": "An advanced API for creating custom synchronization primitives." }, - { - "name": "password-hash", - "version": "0.4.2", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/traits/tree/master/password-hash", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Traits which describe the functionality of password hashing algorithms, as well as a `no_std`-friendly implementation of the PHC string format (a well-defined subset of the Modular Crypt Format a.k.a. MCF)" - }, - { - "name": "pbkdf2", - "version": "0.11.0", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/password-hashes/tree/master/pbkdf2", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Generic implementation of PBKDF2" - }, { "name": "percent-encoding", "version": "2.2.0", @@ -2447,15 +2267,6 @@ "license_file": null, "description": "SHA-1 hash function" }, - { - "name": "sha2", - "version": "0.10.6", - "authors": "RustCrypto Developers", - "repository": "https://github.com/RustCrypto/hashes", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Pure Rust implementation of the SHA-2 hash function family including SHA-224, SHA-256, SHA-384, and SHA-512." - }, { "name": "sharded-slab", "version": "0.1.4", @@ -2573,15 +2384,6 @@ "license_file": null, "description": "A codegen library for string-cache, developed as part of the Servo project." }, - { - "name": "strsim", - "version": "0.10.0", - "authors": "Danny Guo ", - "repository": "https://github.com/dguo/strsim-rs", - "license": "MIT", - "license_file": null, - "description": "Implementations of string similarity metrics. Includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro, Jaro-Winkler, and Sørensen-Dice." - }, { "name": "strum", "version": "0.24.1", @@ -2663,15 +2465,6 @@ "license_file": null, "description": "A simple cross platform library for writing colored text to a terminal." }, - { - "name": "terminal_size", - "version": "0.2.6", - "authors": "Andrew Chin ", - "repository": "https://github.com/eminence/terminal-size", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Gets the size of your Linux or Windows terminal" - }, { "name": "thiserror", "version": "1.0.40", @@ -3104,15 +2897,6 @@ "license_file": null, "description": "Incremental, zero-copy UTF-8 decoding with error handling" }, - { - "name": "utf8parse", - "version": "0.2.1", - "authors": "Joe Wilm |Christian Duerr ", - "repository": "https://github.com/alacritty/vte", - "license": "Apache-2.0 OR MIT", - "license_file": null, - "description": "Table-driven UTF-8 parser" - }, { "name": "utime", "version": "0.3.1", @@ -3520,22 +3304,13 @@ }, { "name": "wiremock", - "version": "0.5.17", + "version": "0.5.19", "authors": "Luca Palmieri ", "repository": "https://github.com/LukeMathWalker/wiremock-rs", "license": "Apache-2.0 OR MIT", "license_file": null, "description": "HTTP mocking to test Rust applications." }, - { - "name": "workspace-hack", - "version": "0.1.0", - "authors": null, - "repository": null, - "license": null, - "license_file": null, - "description": "workspace-hack package, managed by hakari" - }, { "name": "zip", "version": "0.6.4", diff --git a/ftl/Cargo.toml b/ftl/Cargo.toml index 9adce3525..598e343bc 100644 --- a/ftl/Cargo.toml +++ b/ftl/Cargo.toml @@ -1,11 +1,10 @@ [package] name = "ftl" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [[bin]] @@ -13,6 +12,5 @@ name = "ftl-sync" path = "sync.rs" [dependencies] -camino = "1.1.4" -snafu = { version = "0.7.4" } -workspace-hack = { version = "0.1", path = "../tools/workspace-hack" } +camino.workspace = true +snafu.workspace = true diff --git a/pylib/rsbridge/Cargo.toml b/pylib/rsbridge/Cargo.toml index 6d5d1a4b8..fbe76c8a5 100644 --- a/pylib/rsbridge/Cargo.toml +++ b/pylib/rsbridge/Cargo.toml @@ -1,28 +1,22 @@ [package] name = "rsbridge" -publish = false -description = "Anki's Rust library code Python bindings" - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true - -[dependencies] -anki = { path = "../../rslib" } -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } - -# /cargo/update.py needs to be run if updating the version below -[dependencies.pyo3] -version = "0.18.2" -features = ["extension-module", "abi3", "abi3-py39"] +description = "Anki's Rust library code Python bindings" [lib] name = "rsbridge" crate-type = ["cdylib"] path = "lib.rs" +[dependencies] +anki.workspace = true +pyo3.workspace = true + [features] rustls = ["anki/rustls"] native-tls = ["anki/native-tls"] diff --git a/qt/bundle/mac/Cargo.toml b/qt/bundle/mac/Cargo.toml index ded7c6885..372b7eb0b 100644 --- a/qt/bundle/mac/Cargo.toml +++ b/qt/bundle/mac/Cargo.toml @@ -1,23 +1,21 @@ [package] name = "makeapp" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anyhow = "1.0.70" -apple-bundles = "0.17.0" -camino = "1.1.4" -clap = { version = "4.2.1", features = ["derive"] } -glob = "0.3.1" -lazy_static = "1.4.0" -plist = "1.4.3" -serde = { version = "1.0.159", features = ["derive"] } -serde_json = "1.0.95" -simple-file-manifest = "0.11.0" -walkdir = "2.3.3" -workspace-hack = { version = "0.1", path = "../../../tools/workspace-hack" } +anyhow.workspace = true +apple-bundles.workspace = true +camino.workspace = true +clap.workspace = true +glob.workspace = true +lazy_static.workspace = true +plist.workspace = true +serde.workspace = true +serde_json.workspace = true +simple-file-manifest.workspace = true +walkdir.workspace = true diff --git a/qt/bundle/win/Cargo.toml b/qt/bundle/win/Cargo.toml index b6ba0acfc..ccf7cf32a 100644 --- a/qt/bundle/win/Cargo.toml +++ b/qt/bundle/win/Cargo.toml @@ -1,18 +1,16 @@ [package] name = "makeinstall" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anyhow = "1.0.70" -camino = "1.1.4" -clap = { version = "4.2.1", features = ["derive"] } -glob = "0.3.1" -tugger-windows-codesign = "0.10.0" -walkdir = "2.3.3" -workspace-hack = { version = "0.1", path = "../../../tools/workspace-hack" } +anyhow.workspace = true +camino.workspace = true +clap.workspace = true +glob.workspace = true +tugger-windows-codesign.workspace = true +walkdir.workspace = true diff --git a/rslib/Cargo.toml b/rslib/Cargo.toml index 8242007dc..61e6404cf 100644 --- a/rslib/Cargo.toml +++ b/rslib/Cargo.toml @@ -1,13 +1,13 @@ [package] name = "anki" -publish = false -description = "Anki's Rust library code" - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true +workspace = ".." +description = "Anki's Rust library code" [features] bench = ["criterion"] @@ -20,94 +20,85 @@ harness = false required-features = ["bench"] [build-dependencies] -anki_io = { version = "0.0.0", path = "io" } -anki_proto = { version = "0.0.0", path = "proto" } -anki_proto_gen = { version = "0.0.0", path = "proto_gen" } -anyhow = "1.0.71" -inflections = "1.1.1" -itertools = "0.10.5" -prettyplease = "0.2.7" -prost = "0.11.8" -prost-reflect = "0.11.4" -syn = { version = "2.0.18", features = ["parsing", "printing"] } +anki_io.workspace = true +anki_proto.workspace = true +anki_proto_gen.workspace = true +anyhow.workspace = true +inflections.workspace = true +itertools.workspace = true +prettyplease.workspace = true +prost.workspace = true +prost-reflect.workspace = true +syn.workspace = true [dev-dependencies] -async-stream = "0.3.4" -env_logger = "0.10.0" -wiremock = "0.5.17" - -[dependencies.reqwest] -version = "0.11.16" -default-features = false -features = ["json", "socks", "stream", "multipart"] +async-stream.workspace = true +env_logger.workspace = true +wiremock.workspace = true [dependencies] -anki_i18n = { path = "i18n" } -anki_io = { path = "io" } -anki_proto = { path = "proto" } -workspace-hack = { version = "0.1", path = "../tools/workspace-hack" } +criterion = { workspace = true, optional = true } -csv = { git = "https://github.com/ankitects/rust-csv.git", rev = "1c9d3aab6f79a7d815c69f925a46a4590c115f90" } -percent-encoding-iri = { git = "https://github.com/ankitects/rust-url.git", rev = "bb930b8d089f4d30d7d19c12e54e66191de47b88" } - -# pinned as any changes could invalidate sqlite indexes -unicase = "=2.6.0" - -criterion = { version = "0.4.0", optional = true } - -ammonia = "3.3.0" -async-compression = { version = "0.3.15", features = ["zstd", "tokio"] } -async-trait = "0.1.68" -axum = { version = "0.6.12", features = ["multipart", "macros", "headers"] } -axum-client-ip = "0.3.1" -blake3 = "1.3.3" -bytes = "1.4.0" -chrono = { version = "0.4.26", default-features = false, features = ["std", "clock"] } -coarsetime = "0.1.23" -convert_case = "0.6.0" -difflib = "0.4.0" -flate2 = "1.0.25" -fluent = "0.16.0" -fluent-bundle = "0.15.2" -fnv = "1.0.7" -futures = "0.3.28" -hex = "0.4.3" -htmlescape = "0.3.1" -hyper = "0.14.25" -id_tree = "1.8.0" -itertools = "0.10.5" -lazy_static = "1.4.0" -nom = "7.1.3" -num_cpus = "1.15.0" -num_enum = "0.6.1" -once_cell = "1.17.1" -pin-project = "1.0.12" -prost = "0.11.8" -pulldown-cmark = "0.9.2" -rand = "0.8.5" -regex = "1.7.3" -rusqlite = { version = "0.29.0", features = ["trace", "functions", "collation", "bundled"] } -scopeguard = "1.1.0" -serde = { version = "1.0.159", features = ["derive"] } -serde-aux = "4.1.2" -serde_json = "1.0.95" -serde_repr = "0.1.12" -serde_tuple = "0.5.0" -sha1 = "0.10.5" -snafu = { version = "0.7.4", features = ["backtraces", "rust_1_61"] } -strum = { version = "0.24.1", features = ["derive"] } -tempfile = "3.5.0" -tokio = { version = "1.27", features = ["fs", "rt-multi-thread", "macros", "signal"] } -tokio-util = { version = "0.7.7", features = ["io"] } -tower-http = { version = "0.4.0", features = ["trace"] } -tracing = { version = "0.1.37", features = ["max_level_trace", "release_max_level_debug"] } -tracing-appender = "0.2.2" -tracing-subscriber = { version = "0.3.16", features = ["fmt", "env-filter"] } -unic-ucd-category = "0.9.0" -unicode-normalization = "0.1.22" -utime = "0.3.1" -zip = { version = "0.6.4", default-features = false, features = ["deflate", "time"] } -zstd = { version = "0.12.3", features = ["zstdmt"] } +ammonia.workspace = true +anki_i18n.workspace = true +anki_io.workspace = true +anki_proto.workspace = true +async-compression.workspace = true +async-trait.workspace = true +axum.workspace = true +axum-client-ip.workspace = true +blake3.workspace = true +bytes.workspace = true +chrono.workspace = true +coarsetime.workspace = true +convert_case.workspace = true +csv.workspace = true +difflib.workspace = true +flate2.workspace = true +fluent.workspace = true +fluent-bundle.workspace = true +fnv.workspace = true +futures.workspace = true +hex.workspace = true +htmlescape.workspace = true +hyper.workspace = true +id_tree.workspace = true +itertools.workspace = true +lazy_static.workspace = true +nom.workspace = true +num_cpus.workspace = true +num_enum.workspace = true +once_cell.workspace = true +percent-encoding-iri.workspace = true +pin-project.workspace = true +prost.workspace = true +pulldown-cmark.workspace = true +rand.workspace = true +regex.workspace = true +reqwest.workspace = true +rusqlite.workspace = true +scopeguard.workspace = true +serde.workspace = true +serde-aux.workspace = true +serde_json.workspace = true +serde_repr.workspace = true +serde_tuple.workspace = true +sha1.workspace = true +snafu.workspace = true +strum.workspace = true +tempfile.workspace = true +tokio.workspace = true +tokio-util.workspace = true +tower-http.workspace = true +tracing.workspace = true +tracing-appender.workspace = true +tracing-subscriber.workspace = true +unic-ucd-category.workspace = true +unicase.workspace = true +unicode-normalization.workspace = true +utime.workspace = true +zip.workspace = true +zstd.workspace = true [target.'cfg(windows)'.dependencies.windows] version = "0.48.0" diff --git a/rslib/i18n/Cargo.toml b/rslib/i18n/Cargo.toml index dacb7713a..c6105f9c5 100644 --- a/rslib/i18n/Cargo.toml +++ b/rslib/i18n/Cargo.toml @@ -1,36 +1,34 @@ [package] name = "anki_i18n" -build = "build/main.rs" -publish = false -description = "Anki's Rust library i18n code" - version.workspace = true authors.workspace = true +build = "build/main.rs" edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true +description = "Anki's Rust library i18n code" [lib] name = "anki_i18n" path = "src/lib.rs" [build-dependencies] -fluent-syntax = "0.11.0" -fluent = "0.16.0" -unic-langid = { version = "0.9.1", features = ["macros"] } -serde = { version = "1.0.159", features = ["derive"] } -serde_json = "1.0.95" -inflections = "1.1.1" -anki_io = { version = "0.0.0", path = "../io" } -anyhow = "1.0.71" +fluent-syntax.workspace = true +fluent.workspace = true +unic-langid.workspace = true +serde.workspace = true +serde_json.workspace = true +inflections.workspace = true +anki_io.workspace = true +anyhow.workspace = true [dependencies] -fluent = "0.16.0" -fluent-bundle = "0.15.2" -intl-memoizer = "0.5.1" -num-format = "0.4.4" -phf = { version = "0.11.1", features = ["macros"] } -serde = { version = "1.0.159", features = ["derive"] } -serde_json = "1.0.95" -unic-langid = { version = "0.9.1", features = ["macros"] } -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } +fluent.workspace = true +fluent-bundle.workspace = true +intl-memoizer.workspace = true +num-format.workspace = true +phf.workspace = true +serde.workspace = true +serde_json.workspace = true +unic-langid.workspace = true diff --git a/rslib/i18n_helpers/Cargo.toml b/rslib/i18n_helpers/Cargo.toml index 220949651..b7d51cd4d 100644 --- a/rslib/i18n_helpers/Cargo.toml +++ b/rslib/i18n_helpers/Cargo.toml @@ -1,24 +1,20 @@ [package] name = "anki_i18n_helpers" -publish = false -description = "Helpers for Anki's i18n system" - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true +description = "Helpers for Anki's i18n system" [lib] name = "anki_i18n_helpers" path = "src/lib.rs" -# After updating anything below, run ../cargo/update.py - [dependencies] -fluent-syntax = "0.11.0" -lazy_static = "1.4.0" -regex = "1.7.3" -serde_json = "1.0.95" -walkdir = "2" -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } +fluent-syntax.workspace = true +lazy_static.workspace = true +regex.workspace = true +serde_json.workspace = true +walkdir.workspace = true diff --git a/rslib/io/Cargo.toml b/rslib/io/Cargo.toml index 5e26b924d..37ba8eca4 100644 --- a/rslib/io/Cargo.toml +++ b/rslib/io/Cargo.toml @@ -1,14 +1,13 @@ [package] name = "anki_io" -publish = false -description = "Utils for better I/O error reporting" - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true +description = "Utils for better I/O error reporting" [dependencies] -snafu = "0.7.4" -tempfile = "3.6.0" +snafu.workspace = true +tempfile.workspace = true diff --git a/rslib/linkchecker/Cargo.toml b/rslib/linkchecker/Cargo.toml index d26de56f9..c9a5a9ebb 100644 --- a/rslib/linkchecker/Cargo.toml +++ b/rslib/linkchecker/Cargo.toml @@ -1,34 +1,23 @@ [package] name = "linkchecker" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true -# [[test]] -# name = "links" -# required-features = ["links"] - [dependencies] -anki = { path = ".." } - -linkcheck = { git = "https://github.com/ankitects/linkcheck.git", rev = "184b2ca50ed39ca43da13f0b830a463861adb9ca" } - -futures = "0.3.28" -itertools = "0.10.5" -lazy_static = "1.4.0" -regex = "1.7.3" -strum = { version = "0.24.1", features = ["derive"] } -tokio = { version = "1.27.0", features = ["full"] } -workspace-hack = { version = "0.1", path = "../../tools/workspace-hack" } +anki.workspace = true +futures.workspace = true +itertools.workspace = true +lazy_static.workspace = true +linkcheck.workspace = true +regex.workspace = true +reqwest.workspace = true +strum.workspace = true +tokio.workspace = true [features] rustls = ["reqwest/rustls-tls", "reqwest/rustls-tls-native-roots"] native-tls = ["reqwest/native-tls"] - -[dependencies.reqwest] -version = "0.11.16" -default-features = false diff --git a/rslib/process/Cargo.toml b/rslib/process/Cargo.toml index eb0ee2420..f89b13d2f 100644 --- a/rslib/process/Cargo.toml +++ b/rslib/process/Cargo.toml @@ -1,14 +1,13 @@ [package] name = "anki_process" -publish = false -description = "Utils for better process error reporting" - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true +description = "Utils for better process error reporting" [dependencies] -itertools = "0.10.5" -snafu = "0.7.4" +itertools.workspace = true +snafu.workspace = true diff --git a/rslib/proto/Cargo.toml b/rslib/proto/Cargo.toml index f96283a38..dc5add6e2 100644 --- a/rslib/proto/Cargo.toml +++ b/rslib/proto/Cargo.toml @@ -1,27 +1,26 @@ [package] name = "anki_proto" -publish = false -description = "Anki's Rust library protobuf code" - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true +description = "Anki's Rust library protobuf code" [build-dependencies] -anki_io = { version = "0.0.0", path = "../io" } -anki_proto_gen = { version = "0.0.0", path = "../proto_gen" } -anyhow = "1.0.71" -inflections = "1.1.1" -itertools = "0.10.5" -prost-build = "0.11.9" -prost-reflect = "0.11.4" -prost-types = "0.11.9" +anki_io.workspace = true +anki_proto_gen.workspace = true +anyhow.workspace = true +inflections.workspace = true +itertools.workspace = true +prost-build.workspace = true +prost-reflect.workspace = true +prost-types.workspace = true [dependencies] -num_enum = "0.6.1" -prost = "0.11.9" -serde = { version = "1.0.164", features = ["derive"] } -snafu = "0.7.4" -strum = { version = "0.24.1", features = ["derive"] } +num_enum.workspace = true +prost.workspace = true +serde.workspace = true +snafu.workspace = true +strum.workspace = true diff --git a/rslib/proto_gen/Cargo.toml b/rslib/proto_gen/Cargo.toml index f5b057f9a..244cb2361 100644 --- a/rslib/proto_gen/Cargo.toml +++ b/rslib/proto_gen/Cargo.toml @@ -10,7 +10,7 @@ license.workspace = true rust-version.workspace = true [dependencies] -inflections = "1.1.1" -itertools = "0.10.5" -prost-reflect = "0.11.4" -prost-types = "0.11.9" +inflections.workspace = true +itertools.workspace = true +prost-reflect.workspace = true +prost-types.workspace = true diff --git a/tools/minilints/Cargo.toml b/tools/minilints/Cargo.toml index f9af8dc6f..3c284ada5 100644 --- a/tools/minilints/Cargo.toml +++ b/tools/minilints/Cargo.toml @@ -1,18 +1,17 @@ [package] name = "minilints" -publish = false - version.workspace = true authors.workspace = true edition.workspace = true license.workspace = true +publish = false rust-version.workspace = true [dependencies] -anki_io = { version = "0.0.0", path = "../../rslib/io" } -anki_process = { version = "0.0.0", path = "../../rslib/process" } -anyhow = "1.0.71" -camino = "1.1.4" -once_cell = "1.17.1" -walkdir = "2.3.3" -which = "4.4.0" +anki_io.workspace = true +anki_process.workspace = true +anyhow.workspace = true +camino.workspace = true +once_cell.workspace = true +walkdir.workspace = true +which.workspace = true diff --git a/tools/minilints/src/main.rs b/tools/minilints/src/main.rs index b64d61b5a..9c2315af8 100644 --- a/tools/minilints/src/main.rs +++ b/tools/minilints/src/main.rs @@ -186,7 +186,6 @@ impl LintContext { if licenses != existing_licenses { if self.want_fix { check_cargo_deny()?; - update_hakari()?; write_file(license_path, licenses)?; } else { println!("cargo/licenses.json is out of date; run ./ninja fix:minilints"); @@ -203,12 +202,6 @@ fn check_cargo_deny() -> Result<()> { Ok(()) } -fn update_hakari() -> Result<()> { - Command::run("cargo install cargo-hakari@0.9.23")?; - Command::run("cargo hakari generate")?; - Ok(()) -} - fn head_of_file(path: &Utf8Path) -> Result { let mut file = File::open(path)?; let mut buffer = vec![0; 256]; diff --git a/tools/workspace-hack/.gitattributes b/tools/workspace-hack/.gitattributes deleted file mode 100644 index 3e9dba4b6..000000000 --- a/tools/workspace-hack/.gitattributes +++ /dev/null @@ -1,4 +0,0 @@ -# Avoid putting conflict markers in the generated Cargo.toml file, since their presence breaks -# Cargo. -# Also do not check out the file as CRLF on Windows, as that's what hakari needs. -Cargo.toml merge=binary -crlf diff --git a/tools/workspace-hack/Cargo.toml b/tools/workspace-hack/Cargo.toml deleted file mode 100644 index 9f7eed4fe..000000000 --- a/tools/workspace-hack/Cargo.toml +++ /dev/null @@ -1,102 +0,0 @@ -# This file is generated by `cargo hakari`. -# To regenerate, run: -# cargo hakari generate - -[package] -name = "workspace-hack" -version = "0.1.0" -# You can choose to publish this crate: see https://docs.rs/cargo-hakari/latest/cargo_hakari/publishing. -publish = false -description = "workspace-hack package, managed by hakari" - -# The parts of the file between the BEGIN HAKARI SECTION and END HAKARI SECTION comments -# are managed by hakari. - -### BEGIN HAKARI SECTION -[dependencies] -bytes = { version = "1" } -clap = { version = "4", features = ["cargo", "derive", "wrap_help"] } -clap_builder = { version = "4", default-features = false, features = ["cargo", "color", "std", "suggestions", "usage", "wrap_help"] } -crossbeam-utils = { version = "0.8" } -either = { version = "1" } -flate2 = { version = "1" } -futures-channel = { version = "0.3", features = ["sink"] } -futures-io = { version = "0.3" } -futures-util = { version = "0.3", features = ["channel", "io", "sink"] } -getrandom = { version = "0.2", default-features = false, features = ["std"] } -hashbrown = { version = "0.12", features = ["raw"] } -hmac = { version = "0.12", default-features = false, features = ["reset"] } -hyper = { version = "0.14", features = ["full"] } -indexmap = { version = "1", default-features = false, features = ["std"] } -itertools = { version = "0.10" } -log = { version = "0.4", default-features = false, features = ["std"] } -num-traits = { version = "0.2" } -phf_shared = { version = "0.11", default-features = false, features = ["std"] } -rand = { version = "0.8", features = ["small_rng"] } -rand_core = { version = "0.6", default-features = false, features = ["std"] } -regex = { version = "1" } -regex-syntax = { version = "0.6" } -scopeguard = { version = "1" } -serde = { version = "1", features = ["alloc", "derive", "rc"] } -serde_json = { version = "1", features = ["raw_value"] } -sha2 = { version = "0.10" } -snafu = { version = "0.7", features = ["backtraces", "rust_1_61"] } -time = { version = "0.3", features = ["formatting", "parsing"] } -tokio = { version = "1", features = ["full"] } -tokio-util = { version = "0.7", features = ["codec", "io"] } -tracing = { version = "0.1", features = ["log", "max_level_trace", "release_max_level_debug"] } -tracing-core = { version = "0.1" } -url = { version = "2", features = ["serde"] } -zip = { version = "0.6" } -zstd-5ef9efb8ec2df382 = { package = "zstd", version = "0.12", features = ["zstdmt"] } -zstd-a6292c17cd707f01 = { package = "zstd", version = "0.11" } -zstd-safe-a490c3000a992113 = { package = "zstd-safe", version = "6", default-features = false, features = ["arrays", "legacy", "std", "zdict_builder", "zstdmt"] } -zstd-safe-cdf1610d3e1514e9 = { package = "zstd-safe", version = "5", default-features = false, features = ["arrays", "legacy", "std", "zdict_builder"] } -zstd-sys = { version = "2", default-features = false, features = ["legacy", "std", "zdict_builder", "zstdmt"] } - -[build-dependencies] -bytes = { version = "1" } -cc = { version = "1", default-features = false, features = ["parallel"] } -clap = { version = "4", features = ["cargo", "derive", "wrap_help"] } -clap_builder = { version = "4", default-features = false, features = ["cargo", "color", "std", "suggestions", "usage", "wrap_help"] } -crossbeam-utils = { version = "0.8" } -either = { version = "1" } -flate2 = { version = "1" } -futures-channel = { version = "0.3", features = ["sink"] } -futures-io = { version = "0.3" } -futures-util = { version = "0.3", features = ["channel", "io", "sink"] } -getrandom = { version = "0.2", default-features = false, features = ["std"] } -hashbrown = { version = "0.12", features = ["raw"] } -hmac = { version = "0.12", default-features = false, features = ["reset"] } -hyper = { version = "0.14", features = ["full"] } -indexmap = { version = "1", default-features = false, features = ["std"] } -itertools = { version = "0.10" } -log = { version = "0.4", default-features = false, features = ["std"] } -num-traits = { version = "0.2" } -phf_shared = { version = "0.11", default-features = false, features = ["std"] } -rand = { version = "0.8", features = ["small_rng"] } -rand_core = { version = "0.6", default-features = false, features = ["std"] } -regex = { version = "1" } -regex-syntax = { version = "0.6" } -scopeguard = { version = "1" } -serde = { version = "1", features = ["alloc", "derive", "rc"] } -serde_json = { version = "1", features = ["raw_value"] } -sha2 = { version = "0.10" } -snafu = { version = "0.7", features = ["backtraces", "rust_1_61"] } -snafu-derive = { version = "0.7", default-features = false, features = ["rust_1_39", "rust_1_46", "rust_1_61"] } -syn-dff4ba8e3ae991db = { package = "syn", version = "1", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } -syn-f595c2ba2a3f28df = { package = "syn", version = "2", features = ["extra-traits", "full", "visit-mut"] } -time = { version = "0.3", features = ["formatting", "parsing"] } -tokio = { version = "1", features = ["full"] } -tokio-util = { version = "0.7", features = ["codec", "io"] } -tracing = { version = "0.1", features = ["log", "max_level_trace", "release_max_level_debug"] } -tracing-core = { version = "0.1" } -url = { version = "2", features = ["serde"] } -zip = { version = "0.6" } -zstd-5ef9efb8ec2df382 = { package = "zstd", version = "0.12", features = ["zstdmt"] } -zstd-a6292c17cd707f01 = { package = "zstd", version = "0.11" } -zstd-safe-a490c3000a992113 = { package = "zstd-safe", version = "6", default-features = false, features = ["arrays", "legacy", "std", "zdict_builder", "zstdmt"] } -zstd-safe-cdf1610d3e1514e9 = { package = "zstd-safe", version = "5", default-features = false, features = ["arrays", "legacy", "std", "zdict_builder"] } -zstd-sys = { version = "2", default-features = false, features = ["legacy", "std", "zdict_builder", "zstdmt"] } - -### END HAKARI SECTION diff --git a/tools/workspace-hack/build.rs b/tools/workspace-hack/build.rs deleted file mode 100644 index 92518ef04..000000000 --- a/tools/workspace-hack/build.rs +++ /dev/null @@ -1,2 +0,0 @@ -// A build script is required for cargo to consider build dependencies. -fn main() {} diff --git a/tools/workspace-hack/src/lib.rs b/tools/workspace-hack/src/lib.rs deleted file mode 100644 index 22489f632..000000000 --- a/tools/workspace-hack/src/lib.rs +++ /dev/null @@ -1 +0,0 @@ -// This is a stub lib.rs.