[workspace] members = [".", "examples/remove-emphasis/mdbook-remove-emphasis"] [workspace.lints.clippy] all = { level = "allow", priority = -2 } correctness = { level = "warn", priority = -1 } complexity = { level = "warn", priority = -1 } [workspace.lints.rust] missing_docs = "warn" rust_2018_idioms = "warn" [workspace.package] edition = "2024" license = "MPL-2.0" repository = "https://github.com/rust-lang/mdBook" rust-version = "1.85.0" # Keep in sync with installation.md and .github/workflows/main.yml [package] name = "mdbook" version = "0.4.52" authors = [ "Mathieu David ", "Michael-F-Bryan ", "Matt Ickstadt " ] documentation = "https://rust-lang.github.io/mdBook/index.html" edition.workspace = true exclude = ["/guide/*"] keywords = ["book", "gitbook", "rustbook", "markdown"] license.workspace = true readme = "README.md" repository.workspace = true description = "Creates a book from markdown files" rust-version.workspace = true [dependencies] anyhow = "1.0.71" chrono = { version = "0.4.24", default-features = false, features = ["clock"] } clap = { version = "4.3.12", features = ["cargo", "wrap_help"] } clap_complete = "4.3.2" env_logger = "0.11.1" handlebars = "6.0" hex = "0.4.3" log = "0.4.17" memchr = "2.5.0" opener = "0.8.1" pulldown-cmark = { version = "0.10.0", default-features = false, features = ["html"] } # Do not update, part of the public api. regex = "1.8.1" serde = { version = "1.0.163", features = ["derive"] } serde_json = "1.0.96" sha2 = "0.10.8" shlex = "1.3.0" tempfile = "3.4.0" toml = "0.5.11" # Do not update, see https://github.com/rust-lang/mdBook/issues/2037 topological-sort = "0.2.2" # Watch feature notify = { version = "8.0.0", optional = true } notify-debouncer-mini = { version = "0.6.0", optional = true } ignore = { version = "0.4.20", optional = true } pathdiff = { version = "0.2.1", optional = true } walkdir = { version = "2.3.3", optional = true } # Serve feature futures-util = { version = "0.3.28", optional = true } tokio = { version = "1.43.1", features = ["macros", "rt-multi-thread"], optional = true } axum = { version = "0.8.0", features = ["ws"], optional = true } tower-http = { version = "0.6.0", features = ["fs", "trace"], optional = true } # Search feature elasticlunr-rs = { version = "3.0.2", optional = true } ammonia = { version = "4.0.0", optional = true } [dev-dependencies] select = "0.6.0" semver = "1.0.17" snapbox = { version = "0.6.21", features = ["diff", "dir", "term-svg", "regex", "json"] } pretty_assertions = "1.3.0" walkdir = "2.3.3" [features] default = ["watch", "serve", "search"] watch = ["dep:notify", "dep:notify-debouncer-mini", "dep:ignore", "dep:pathdiff", "dep:walkdir"] serve = ["dep:futures-util", "dep:tokio", "dep:axum", "dep:tower-http"] search = ["dep:elasticlunr-rs", "dep:ammonia"] [[bin]] doc = false name = "mdbook" [[example]] name = "nop-preprocessor" test = true [[example]] name = "remove-emphasis" path = "examples/remove-emphasis/test.rs" crate-type = ["lib"] test = true [[test]] harness = false test = false name = "gui" path = "tests/gui/runner.rs" crate-type = ["bin"] [lints] workspace = true