[workspace] members = ["crates/*", "tests", "tests/fuzz"] default-members = ["crates/typst-cli"] resolver = "2" [workspace.package] version = "0.10.0" rust-version = "1.74" # also change in ci.yml authors = ["The Typst Project Developers"] edition = "2021" homepage = "https://typst.app" repository = "https://github.com/typst/typst" readme = "README.md" license = "Apache-2.0" categories = ["compilers"] keywords = ["typst"] [workspace.dependencies] typst = { path = "crates/typst" } typst-cli = { path = "crates/typst-cli" } typst-docs = { path = "crates/typst-docs" } typst-ide = { path = "crates/typst-ide" } typst-macros = { path = "crates/typst-macros" } typst-pdf = { path = "crates/typst-pdf" } typst-render = { path = "crates/typst-render" } typst-svg = { path = "crates/typst-svg" } typst-syntax = { path = "crates/typst-syntax" } typst-timing = { path = "crates/typst-timing" } az = "1.2" base64 = "0.21.2" bitflags = { version = "2", features = ["serde"] } bytemuck = "1" chinese-number = { version = "0.7.2", default-features = false, features = ["number-to-chinese"] } chrono = { version = "0.4.24", default-features = false, features = ["clock", "std"] } ciborium = "0.2.1" clap = { version = "4.4", features = ["derive", "env"] } clap_complete = "4.2.1" clap_mangen = "0.2.10" ctrlc = "3.4.1" codespan-reporting = "0.11" comemo = { git = "https://github.com/typst/comemo", rev = "ddb3773" } csv = "1" dirs = "5" ecow = { version = "0.2", features = ["serde"] } env_proxy = "0.4" flate2 = "1" fontdb = { version = "0.16", default-features = false } hayagriva = "0.5.1" heck = "0.4" hypher = "0.1.4" iai = { git = "https://github.com/typst/iai", rev = "3f0f927" } icu_properties = { version = "1.4", features = ["serde"] } icu_provider = { version = "1.4", features = ["sync"] } icu_provider_adapters = "1.4" icu_provider_blob = "1.4" icu_segmenter = { version = "1.4", features = ["serde"] } if_chain = "1" image = { version = "0.24", default-features = false, features = ["png", "jpeg", "gif"] } include_dir = "0.7" indexmap = { version = "2", features = ["serde"] } kurbo = "0.9" # in sync with usvg libfuzzer-sys = "0.4" lipsum = "0.9" log = "0.4" miniz_oxide = "0.7" native-tls = "0.2" notify = "6" once_cell = "1" open = "5.0.1" oxipng = { version = "9.0", default-features = false, features = ["filetime", "parallel", "zopfli"] } palette = { version = "0.7.3", default-features = false, features = ["approx", "libm"] } parking_lot = "0.12.1" pathdiff = "0.2" pdf-writer = "0.9.2" phf = { version = "0.11", features = ["macros"] } pixglyph = "0.3" proc-macro2 = "1" pulldown-cmark = "0.9" quote = "1" rayon = "1.7.0" regex = "1" resvg = { version = "0.38.0", default-features = false, features = ["raster-images"] } roxmltree = "0.19" rustybuzz = "0.12.1" same-file = "1" self-replace = "1.3.7" semver = "1" serde = { version = "1.0.184", features = ["derive"] } serde_json = "1" serde_yaml = "0.9" siphasher = "1" smallvec = { version = "1.11.1", features = ["union", "const_generics", "const_new"] } stacker = "0.1.15" subsetter = "0.1.1" svg2pdf = { git = "https://github.com/typst/svg2pdf", rev = "49891ef" } syn = { version = "2", features = ["full", "extra-traits"] } syntect = { version = "5", default-features = false, features = ["parsing", "regex-fancy", "plist-load", "yaml-load"] } tar = "0.4" tempfile = "3.7.0" time = { version = "0.3.20", features = ["formatting", "macros", "parsing"] } tiny-skia = "0.11" toml = { version = "0.8", default-features = false, features = ["parse", "display"] } ttf-parser = "0.20.0" two-face = { version = "0.3.0", default-features = false, features = ["syntect-fancy"] } typed-arena = "2" unicode_names2 = "1.2" unicode-bidi = "0.3.13" unicode-ident = "1.0" unicode-math-class = "0.1" unicode-properties = "0.1" unicode-script = "0.5" unicode-segmentation = "1" unscanny = "0.1" ureq = { version = "2", default-features = false, features = ["native-tls", "gzip"] } usvg = { version = "0.38.0", default-features = false, features = ["text"] } walkdir = "2" wasmi = "0.31.0" xmlparser = "0.13.5" xmlwriter = "0.1.0" xmp-writer = "0.2" xz2 = "0.1" yaml-front-matter = "0.1" zip = { version = "0.6", default-features = false, features = ["deflate"] } [profile.dev.package."*"] opt-level = 2 [profile.release] lto = "thin" codegen-units = 1 [profile.release.package."typst-cli"] strip = true [workspace.lints.clippy] uninlined_format_args = "warn" blocks_in_if_conditions = "allow"