[workspace] members = [ "parser", "parser/visitable-derive", "parser/generator", "checker", "checker/binary-serialize-derive", "checker/specification", # "lsp/server", ] [package] name = "ezno" description = "A fast and correct TypeScript type checker and compiler with additional experiments. For use as a library or through the CLI" authors = ["Ben "] version = "0.0.23" edition = "2021" license = "MIT" homepage = "https://kaleidawave.github.io/posts/introducing-ezno/" repository = "https://github.com/kaleidawave/ezno" default-run = "ezno" categories = ["compilers"] keywords = ["javascript", "typescript", "type-checker"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [lib] name = "ezno_lib" path = "src/lib.rs" # cdylib is for WASM crate-type = ["cdylib", "rlib"] [[bin]] name = "ezno" path = "src/main.rs" [dependencies] # ezno-web-framework = { path = "./plugins/web" } argh = "0.1" base64 = "0.21" console = "0.15" codespan-reporting = "0.11" enum-variants-strings = "0.3" # For `StrComparison` for string comparison pretty_assertions = "1.3.0" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" simple-json-parser = "0.0.2" js-sys = "0.3" [target.'cfg(not(target_family = "wasm"))'.dependencies] # For updating binary self-replace = "1.3.7" # For updating binary and possibly more in the future native-tls = "0.2.11" # For CLI input across multiple lines multiline-term-input = "0.1.0" # For watching files notify = "6.1.0" notify-debouncer-full = "0.3.1" glob = "0.3" [dependencies.checker] path = "./checker" version = "0.0.18" features = ["ezno-parser", "serde-serialize"] package = "ezno-checker" [dependencies.parser] path = "./parser" version = "0.1.7" features = ["extras"] package = "ezno-parser" [target.'cfg(target_family = "wasm")'.dependencies] wasm-bindgen = "0.2" wasm-bindgen-derive = "0.2.1" serde-wasm-bindgen = "0.6.3" console_error_panic_hook = "0.1.7" js-sys = "0.3" tsify = "0.4.5" [workspace.lints.clippy] all = { level = "deny", priority = -1 } pedantic = { level = "deny", priority = -1 } cast_precision_loss = "warn" cast_possible_truncation = "warn" cast_sign_loss = "warn" default_trait_access = "allow" missing_errors_doc = "allow" missing_panics_doc = "allow" module_name_repetitions = "allow" too_many_lines = "allow" new_without_default = "allow" result_unit_err = "allow" thread_local_initializer_can_be_made_const = "allow" implicit_hasher = "allow" [profile.dev] debug = false