git.delta.rocks / jrsonnet / refs/commits / a102a18fded2

difftreelog

source

Cargo.toml4.8 KiBsourcehistory
1[workspace]2members = ["crates/*", "bindings/jsonnet", "cmds/*", "tests", "xtask"]3default-members = ["cmds/jrsonnet"]4resolver = "2"56[workspace.package]7authors = ["Yaroslav Bolyukin <iam@lach.pw>"]8edition = "2021"9license = "MIT"10repository = "https://github.com/CertainLach/jrsonnet"11version = "0.5.0-pre98"1213[workspace.dependencies]14jrsonnet-evaluator = { path = "./crates/jrsonnet-evaluator", version = "0.5.0-pre98" }15jrsonnet-macros = { path = "./crates/jrsonnet-macros", version = "0.5.0-pre98" }16jrsonnet-ir = { path = "./crates/jrsonnet-ir", version = "0.5.0-pre98" }17jrsonnet-ir-parser = { path = "./crates/jrsonnet-ir-parser", version = "0.5.0-pre98" }18jrsonnet-peg-parser = { path = "./crates/jrsonnet-peg-parser", version = "0.5.0-pre98" }19jrsonnet-rowan-parser = { path = "./crates/jrsonnet-rowan-parser", version = "0.5.0-pre98" }20jrsonnet-interner = { path = "./crates/jrsonnet-interner", version = "0.5.0-pre98" }21jrsonnet-stdlib = { path = "./crates/jrsonnet-stdlib", version = "0.5.0-pre98" }22jrsonnet-cli = { path = "./crates/jrsonnet-cli", version = "0.5.0-pre98" }23jrsonnet-types = { path = "./crates/jrsonnet-types", version = "0.5.0-pre98" }24jrsonnet-formatter = { path = "./crates/jrsonnet-formatter", version = "0.5.0-pre98" }25jrsonnet-gcmodule = { version = "0.4.4" }26# Diagnostics.27# hi-doc is my library, which handles text formatting very well, but isn't polished enough yet28# Previous implementation was based on annotate-snippets, which I don't like for many reasons.29#30# I'm against using miette, because I want to reuse data between interpreter and annotations, yet miette31#   and other libraries want to handle spans etc by itself, which is okay for compiler diagnostics, but is32#   bad for interpreter, where interpreter and parser are paired much closer.33hi-doc = "0.3.0"34annotate-snippets = "0.12.11"3536# CLI37clap = "4.5"38clap_complete = "4.5"3940# Parsing, manifestification is implemented manually everywhere41serde = "1.0.228"42serde_json = "1.0.149"43serde-saphyr = { version = "0.0.25", default-features = false, features = [44  "deserialize",45] }4647# Error handling48anyhow = "1.0.101"49thiserror = "2.0.18"5051# Code formatting52dprint-core = "0.67.4"5354# Stdlib hashing functions55md5 = "0.8.0"56sha1 = "0.11.0"57sha2 = "0.11.0"58sha3 = "0.11.0"59hex = "0.4.3"6061# Source code parsing.62# Jrsonnet has two parsers for jsonnet - one is for execution, and another is for better parsing diagnostics/lints/LSP.63# First (and fast one) is based on peg, second is based on rowan.64peg = "0.8.5"65logos = "0.16.1"66ungrammar = "1.16.1"67rowan = "0.16.1"6869mimallocator = "0.1.3"70indoc = "2.0"71tempfile = "3.24"72pathdiff = "0.2.3"73hashbrown = "0.17.0"74static_assertions = "1.1"75rustc-hash = "2.1"76num-bigint = "0.4.6"77strsim = "0.11.1"78proc-macro2 = "1.0"79quote = "1.0"80syn = "2.0"81drop_bomb = "0.1.5"82base64 = "0.22.1"83indexmap = "2.13.0"84itertools = "0.14.0"85xshell = "0.2.7"8687regex = "1.12"88lru = "0.17.0"8990syn-dissect-closure = "0.1.0"9192# Tests/benchmarks93insta = { version = "1.46", features = ["glob"] }94criterion = { version = "0.8" }9596[workspace.lints.rust]97unsafe_op_in_unsafe_fn = "deny"9899# TODO: add docs everywhere100# missing_doc = "warn"101102elided_lifetimes_in_paths = "allow"103explicit_outlives_requirements = "allow"104noop_method_call = "allow"105single_use_lifetimes = "allow"106variant_size_differences = "allow"107macro_expanded_macro_exports_accessed_by_absolute_paths = "allow"108109[workspace.lints.rustdoc]110all = "warn"111112[workspace.lints.clippy]113all = { level = "warn", priority = -1 }114nursery = { level = "warn", priority = -1 }115pedantic = { level = "warn", priority = -1 }116117ptr_arg = "allow"118# Too verbose119must_use_candidate = "allow"120# A lot of functions pass around errors thrown by code121missing_errors_doc = "allow"122# A lot of pointers have interior Rc123needless_pass_by_value = "allow"124# Its fine125wildcard_imports = "allow"126enum_glob_use = "allow"127module_name_repetitions = "allow"128# False positives129# https://github.com/rust-lang/rust-clippy/issues/6902130use_self = "allow"131# https://github.com/rust-lang/rust-clippy/issues/8539132iter_with_drain = "allow"133type_repetition_in_bounds = "allow"134# ci is being run with nightly, but library should work on stable135missing_const_for_fn = "allow"136# too many false-positives with .expect() calls137missing_panics_doc = "allow"138# false positive for IStr type. There is an configuration option for139# such cases, but it doesn't work:140# https://github.com/rust-lang/rust-clippy/issues/9801141mutable_key_type = "allow"142# false positives143redundant_pub_crate = "allow"144# Sometimes code is fancier without that145manual_let_else = "allow"146# Something is broken about that lint, can't be allowed for147# codegenerated-stdlib block148similar_names = "allow"149150#[profile.test]151#opt-level = 1152153[profile.release]154opt-level = 3155lto = "fat"156codegen-units = 1157debug = 0158panic = "abort"159strip = true160161[profile.releasedebug]162inherits = "release"163debug = 2164panic = "unwind"165strip = false