[package] name = "typikon" version = "1.2.0" edition = "2021" rust-version = "1.85" description = "The Orthodox liturgical day: feasts, seasons and the fast, computed rather than fetched. Twenty Orthodox jurisdictions and four Byzantine Catholic churches, across the Julian, Revised Julian and Gregorian reckonings." license = "GPL-2.0-only" repository = "https://git.pumpin.online/funkpower/typikon" readme = "README.md" keywords = ["orthodox", "liturgical", "calendar", "byzantine", "pascha"] categories = ["command-line-utilities", "date-and-time"] [dependencies] serde = { version = "1", features = ["derive"] } serde_json = "1" clap = { version = "4", features = ["derive"] } pyo3 = { version = "0.27.2", features = ["extension-module", "abi3-py39"], optional = true } # The JavaScript build. `js-sys` is here only for the clock: WebAssembly has no # time of its own, so `today()` has to ask the host what day it is. wasm-bindgen = { version = "0.2", optional = true } serde-wasm-bindgen = { version = "0.6", optional = true } js-sys = { version = "0.3", optional = true } [profile.release] strip = true lto = true codegen-units = 1 [[bin]] name = "typikon" path = "src/main.rs" [lib] name = "typikon" path = "src/lib.rs" crate-type = ["cdylib", "rlib"] [features] # Only maturin turns this on. pyo3's extension-module feature leaves the Python # symbols to be resolved by the interpreter at load time, so a normal `cargo # build` of the CLI would fail to link if it were on by default. python = ["dep:pyo3"] # The C ABI. Off by default so an ordinary `cargo build` of the CLI does not # also compile and link a shared library nobody asked for. capi = [] # The JavaScript and TypeScript build, via WebAssembly. Only ever compiled for # a wasm32 target. wasm = ["dep:wasm-bindgen", "dep:serde-wasm-bindgen", "dep:js-sys"]