diff --git a/Cargo.lock b/Cargo.lock index 0fbbeceb..475fb147 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1271,6 +1271,7 @@ dependencies = [ "ignore", "log", "mdbook-core", + "mdbook-summary", "memchr", "notify", "notify-debouncer-mini", @@ -1336,6 +1337,13 @@ dependencies = [ [[package]] name = "mdbook-summary" version = "0.5.0-alpha.1" +dependencies = [ + "anyhow", + "log", + "memchr", + "pulldown-cmark 0.10.3", + "serde", +] [[package]] name = "memchr" diff --git a/Cargo.toml b/Cargo.toml index 9db4957b..16858e37 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,6 +25,7 @@ anyhow = "1.0.98" log = "0.4.27" mdbook-core = { path = "crates/mdbook-core" } mdbook-summary = { path = "crates/mdbook-summary" } +memchr = "2.7.5" pulldown-cmark = { version = "0.10.3", default-features = false, features = ["html"] } # Do not update, part of the public api. regex = "1.11.1" serde = { version = "1.0.219", features = ["derive"] } @@ -60,7 +61,8 @@ handlebars = "6.0" hex = "0.4.3" log.workspace = true mdbook-core.workspace = true -memchr = "2.5.0" +mdbook-summary.workspace = true +memchr.workspace = true opener = "0.8.1" pulldown-cmark.workspace = true regex.workspace = true diff --git a/crates/mdbook-summary/Cargo.toml b/crates/mdbook-summary/Cargo.toml index 7315091e..94a59248 100644 --- a/crates/mdbook-summary/Cargo.toml +++ b/crates/mdbook-summary/Cargo.toml @@ -8,6 +8,11 @@ repository.workspace = true rust-version.workspace = true [dependencies] +anyhow.workspace = true +log.workspace = true +memchr.workspace = true +pulldown-cmark.workspace = true +serde.workspace = true [lints] workspace = true diff --git a/crates/mdbook-summary/src/lib.rs b/crates/mdbook-summary/src/lib.rs index 72021842..cacb753e 100644 --- a/crates/mdbook-summary/src/lib.rs +++ b/crates/mdbook-summary/src/lib.rs @@ -1,3 +1,5 @@ +//! Summary parser for mdBook. + use anyhow::{Context, Error, Result, bail}; use log::{debug, trace, warn}; use memchr::Memchr; diff --git a/src/book/book.rs b/src/book/book.rs index 1242c625..e7f92f4e 100644 --- a/src/book/book.rs +++ b/src/book/book.rs @@ -4,11 +4,11 @@ use std::fs::{self, File}; use std::io::{Read, Write}; use std::path::{Path, PathBuf}; -use super::summary::{Link, SectionNumber, Summary, SummaryItem, parse_summary}; use anyhow::{Context, Result}; use log::debug; use mdbook_core::config::BuildConfig; use mdbook_core::utils::bracket_escape; +use mdbook_summary::{Link, SectionNumber, Summary, SummaryItem, parse_summary}; use serde::{Deserialize, Serialize}; /// Load a book into memory from its `src/` directory. diff --git a/src/book/mod.rs b/src/book/mod.rs index d3433b4e..07e2b4d2 100644 --- a/src/book/mod.rs +++ b/src/book/mod.rs @@ -7,16 +7,15 @@ mod book; mod init; -mod summary; pub use self::book::{Book, BookItem, BookItems, Chapter, load_book}; pub use self::init::BookBuilder; -pub use self::summary::{Link, SectionNumber, Summary, SummaryItem, parse_summary}; use anyhow::{Context, Error, Result, bail}; use log::{debug, error, info, log_enabled, trace, warn}; use mdbook_core::config::{Config, RustEdition}; use mdbook_core::utils; +pub use mdbook_summary::{Link, SectionNumber, Summary, SummaryItem, parse_summary}; use std::ffi::OsString; use std::io::{IsTerminal, Write}; use std::path::{Path, PathBuf};