[package] name = "cargo-spellcheck" version = "0.15.1" authors = ["Bernhard Schuster "] edition = "2021" rust-version = "1.76.0" repository = "https://github.com/drahnr/cargo-spellcheck.git" homepage = "https://github.com/drahnr/cargo-spellcheck" license = "MIT OR Apache-2.0" keywords = ["spellcheck", "spelling", "grammar"] description = "Checks all doc comments for spelling mistakes" readme = "README.md" build = "build.rs" include = [ "nlprule-data/**/*.bin.xz", "hunspell-data/*", "src/**/*.rs", "Cargo.toml", "build.rs", "/LICENSE-*", "/README.md", "tests/**/*.rs", "CHANGELOG.md", ] [workspace] members = ["./doc-chunks"] [build-dependencies] nlprule-build = { version = "=0.6.4", optional = true } # compress the nlprule artifacts to be under the 10 MB limit # that cargo enforces xz2 = "0.1" [dependencies] doc-chunks = { version = "0.2.0", path = "./doc-chunks" } color-eyre = "0.6" cargo_toml = "0.20" console = "0.15" crossterm = "0.27" # for the config file directories = "5" clap = { version = "4.1.8", features = ["derive", "env"] } clap_complete = "4.1.4" clap-verbosity-flag = "2.0" env_logger = "0.11" fancy-regex = "0.13" fs-err = { version = "2", features = ["io_safety"] } indexmap = { version = "2", features = ["rayon", "serde"] } itertools = "0.12" lazy_static = "1" memchr = "2" log = "0.4" num_cpus = "1.13" proc-macro2 = { version = "1", features = ["span-locations"] } pulldown-cmark = "0.10" rayon = "1.5" regex = "1.5" serde = { version = "1", features = ["derive"] } signal-hook = "0.3" syn = { version = "2", features = ["full"] } thiserror = "1" # for parsing and extracting elements from Cargo.toml toml = "0.8" glob = "0.3" # for the config file ignore = "0.4.18" tokio = { version = "1", features = ["full", "rt-multi-thread"] } futures = "0.3" uuid = { version = "1.0.0", features = ["v4"] } # config parsing, must be independent of features # TODO parse the country codes of dictionaries? iso_country = { version = "0.1", features = ["serde"] } isolang = { version = "2", features = ["serde"] } url = { version = "2", features = ["serde"] } # dictionary lookup with affixes hunspell-rs = { version = "0.4.0", optional = true } fd-lock = { version = "4", optional = true } encoding_rs = { version = "0.8.31", optional = true, features = [] } zspell = { version = "0.5.5", optional = true } spellbook = { version = "0.1", optional = true } # full grammar check, but also tokenization and disambiguation nlprule = { version = "=0.6.4", optional = true } # cache some expensive expansions xz2 = "0.1" sha2 = "0.10" bincode = "1" hex = "0.4" thousands = "0.2" [dev-dependencies] # for stripping ansi color codes console = "0.15" assert_matches = "1" maplit = "1" serde_plain = "1" nix = "0.26.2" [features] default = ["all"] # hunspell uses the segmenter provided by nlprules hunspell = [ "dep:hunspell-rs", "hunspell-rs?/bundled", "dep:fd-lock", "nlprules", "dep:encoding_rs", ] zet = ["dep:zspell"] spellbook = ["dep:spellbook"] nlprules = ["dep:nlprule", "nlprule?/regex-fancy", "dep:nlprule-build"] all = ["hunspell", "zet", "spellbook", "nlprules"] [profile.dev] build-override = { opt-level = 2 } [profile.dev.package] backtrace = { opt-level = 3 } bincode = { opt-level = 3 } xz2 = { opt-level = 3 } sha2 = { opt-level = 3 } hunspell-rs = { opt-level = 3 } nlprule = { opt-level = 3 } [profile.release] debug = true [package.metadata.spellcheck] config = ".config/spellcheck.toml" [[test]] name = "signal_handler" path = "tests/signal_handler.rs"