# cargo-features = ["profile-rustflags"] cargo-features = ["codegen-backend"] [package] name = "organic" version = "0.1.16" authors = ["Tom Alexander "] description = "An org-mode parser." edition = "2021" license = "0BSD" repository = "https://code.fizz.buzz/talexander/organic" readme = "README.md" keywords = ["emacs", "org-mode"] categories = ["parsing"] resolver = "2" include = [ "LICENSE", "**/*.rs", "Cargo.toml" ] [lib] name = "organic" path = "src/lib.rs" [[bin]] # This bin exists for development purposes only. The real target of this crate is the library. name = "parse" path = "src/main.rs" [[bin]] # This bin exists for development purposes only. The real target of this crate is the library. name = "compare" path = "src/bin_compare.rs" required-features = ["compare"] [[bin]] # This bin exists for development purposes only. The real target of this crate is the library. name = "foreign_document_test" path = "src/bin_foreign_document_test.rs" required-features = ["foreign_document_test"] [[bin]] name = "wasm" path = "src/bin_wasm.rs" required-features = ["wasm"] [[bin]] # This bin exists for development purposes only. The real target of this crate is the library. name = "wasm_test" path = "src/bin_wasm_test.rs" required-features = ["wasm_test"] [dependencies] futures = { version = "0.3.28", optional = true } gloo-utils = "0.2.0" nom = "7.1.1" opentelemetry = { version = "0.20.0", optional = true, default-features = false, features = ["trace", "rt-tokio"] } opentelemetry-otlp = { version = "0.13.0", optional = true } opentelemetry-semantic-conventions = { version = "0.12.0", optional = true } serde = { version = "1.0.193", optional = true, features = ["derive"] } serde-wasm-bindgen = { version = "0.6.3", optional = true } serde_json = { version = "1.0.108", optional = true } tokio = { version = "1.30.0", optional = true, default-features = false, features = ["rt", "rt-multi-thread"] } tracing = { version = "0.1.37", optional = true } tracing-opentelemetry = { version = "0.20.0", optional = true } tracing-subscriber = { version = "0.3.17", optional = true, features = ["env-filter"] } walkdir = { version = "2.3.3", optional = true } wasm-bindgen = { version = "0.2.89", optional = true } [build-dependencies] walkdir = "2.3.3" [features] default = [] compare = ["tokio/process", "tokio/macros"] foreign_document_test = ["compare", "dep:futures", "tokio/sync", "dep:walkdir", "tokio/process"] tracing = ["dep:opentelemetry", "dep:opentelemetry-otlp", "dep:opentelemetry-semantic-conventions", "dep:tokio", "dep:tracing", "dep:tracing-opentelemetry", "dep:tracing-subscriber"] event_count = [] wasm = ["dep:serde", "dep:wasm-bindgen", "dep:serde-wasm-bindgen"] wasm_test = ["wasm", "dep:serde_json", "tokio/process", "tokio/macros"] # Optimized build for any sort of release. [profile.release-lto] inherits = "release" lto = true strip = "symbols" # Optimized build for local execution. # [profile.native] # inherits = "release" # lto = true # strip = "symbols" # rustflags = ["-C", "target-cpu=native"] # Profile for performance testing with the "perf" tool. Notably keeps debug enabled and does not strip symbols to make reading the perf output easier. [profile.perf] inherits = "release" lto = true debug = true [profile.wasm] inherits = "release" lto = true strip = true [profile.dev] codegen-backend = "cranelift" [profile.dev.package."*"] codegen-backend = "llvm" opt-level = 3