[package]
name = "flowmark"
version = "0.3.1"
edition = "2024"
rust-version = "1.85"
license = "MIT"
description = "A Markdown auto-formatter for clean diffs and semantic line breaks"
readme = "README.md"
repository = "https://github.com/jlevy/flowmark-rs"
documentation = "https://docs.rs/flowmark"
keywords = ["markdown", "formatter", "cli", "semantic-linebreaks"]
categories = ["command-line-utilities", "text-processing"]
exclude = [".claude/", ".tbd/", ".github/", "docs/", "python/", "tests/tryscript/", "repos/", "admin/", "attic/", "pyproject.toml"]
[lib]
name = "flowmark"
path = "src/lib.rs"
[[bin]]
name = "flowmark"
path = "src/main.rs"
required-features = ["cli"]
[[bin]]
name = "flowmark-rs"
path = "src/main.rs"
required-features = ["cli"]
[features]
default = ["cli"]
cli = ["clap", "anyhow", "rayon"]
[dependencies]
comrak = "0.51"
regex = "1.12"
thiserror = "2.0"
toml = "1.0"
glob = "0.3"
tempfile = "3.26"
ignore = "0.4"
dirs = "6.0"
clap = { version = "4.5", features = ["derive", "cargo"], optional = true }
anyhow = { version = "1.0", optional = true }
rayon = { version = "1.11", optional = true }
[target.'cfg(unix)'.dependencies]
libc = "0.2"
[build-dependencies]
toml = "1.0"
[lints.clippy]
pedantic = { level = "deny", priority = -1 }
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
too_many_lines = "allow"
unwrap_used = "deny"
[lints.rust]
unsafe_code = "deny"
warnings = "deny"
[package.metadata.parity]
version = "0.7.2"
[package.metadata.cargo-semver-checks.lints]
function_parameter_count_changed = "allow"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
strip = true