[package] name = "fsmentry" version.workspace = true license.workspace = true edition.workspace = true repository.workspace = true documentation.workspace = true homepage.workspace = true readme.workspace = true description.workspace = true [[bin]] name = "fsmentry" required-features = ["cli"] [features] default = ["macros", "std", "svg"] macros = ["dep:fsmentry-macros"] std = ["dep:fsmentry-core"] svg = ["macros", "fsmentry-macros/svg"] cli = [ "dep:prettyplease", "dep:clap", "dep:anyhow", "dep:syn-miette", "dep:miette", "dep:syn", "dep:syn-graphs", "dep:quote", ] [dependencies] fsmentry-core = { workspace = true, optional = true } fsmentry-macros = { workspace = true, optional = true } anyhow = { version = "1.0.75", optional = true } clap = { version = "4.4.6", features = ["derive"], optional = true } syn-miette = { version = "0.3.0", optional = true } miette = { version = "7", features = ["fancy-no-backtrace"], optional = true } prettyplease = { version = "0.2.15", optional = true } syn = { workspace = true, optional = true } syn-graphs = { workspace = true, optional = true } quote = { workspace = true, optional = true } [dev-dependencies] derive-quickcheck-arbitrary = "0.1.3" proc-macro2 = { version = "1.0.68", default-features = false } quickcheck = "1.0.3" syn = { workspace = true, features = ["extra-traits"] } quote.workspace = true trybuild = { version = "1.0.85", features = ["diff"] } assert_cmd = "2.0.12" [workspace] members = ["core", "macros"] [workspace.package] version = "0.2.0" license = "MIT OR Apache-2.0" edition = "2021" repository = "https://github.com/aatifsyed/fsmentry" documentation = "https://docs.rs/fsmentry" homepage = "https://crates.io/crates/fsmentry" readme = "README.md" description = "Finite State Machines with an entry API and data storage" [workspace.dependencies] syn = { version = "2.0.37", default-features = false } fsmentry-core = { version = "0.2.0", path = "core" } fsmentry-macros = { version = "0.2.0", path = "macros" } syn-graphs = "0.2.0" quote = { version = "1.0.33", default-features = false } [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"]