mirror of
https://github.com/jj-vcs/jj.git
synced 2025-12-23 06:01:01 +00:00
The [vars] section is used to define the tool versions, and the tools are only declared in each task in order to be able to run a task and install only the required dependencies. This way mise build:docs only install the docs dependencies, but not the rust toolchain. The task are organized hierarchically, allowing to run all of the tasks in a category, for example with mise run "check:*" Some aliases for the most common tasks are defined in order to keep the command line short and easy to type. For example use mise test squash to run all the squash tests. Co-authored-by: Emily <artyom@artyom.me>
161 lines
4.5 KiB
TOML
161 lines
4.5 KiB
TOML
cargo-features = []
|
|
|
|
[workspace]
|
|
resolver = "3"
|
|
members = ["cli", "lib", "lib/gen-protos", "lib/proc-macros", "lib/testutils"]
|
|
|
|
[workspace.package]
|
|
version = "0.33.0"
|
|
license = "Apache-2.0"
|
|
rust-version = "1.85" # NOTE: remember to update CI, mise.toml, contributing.md, changelog.md, and install-and-setup.md
|
|
edition = "2024"
|
|
readme = "README.md"
|
|
homepage = "https://github.com/jj-vcs/jj"
|
|
repository = "https://github.com/jj-vcs/jj"
|
|
documentation = "https://jj-vcs.github.io/jj/"
|
|
categories = ["version-control", "development-tools"]
|
|
keywords = ["VCS", "DVCS", "SCM", "Git", "Mercurial"]
|
|
|
|
[workspace.dependencies]
|
|
assert_cmd = "2.0.8"
|
|
assert_matches = "1.5.0"
|
|
async-trait = "0.1.89"
|
|
blake2 = "0.10.6"
|
|
bstr = "1.11.3"
|
|
clap = { version = "4.5.43", features = [
|
|
"derive",
|
|
"deprecated",
|
|
"wrap_help",
|
|
"string",
|
|
] }
|
|
clap_complete = { version = "4.5.56", features = ["unstable-dynamic"] }
|
|
clap_complete_nushell = "4.5.8"
|
|
# Update clap-markdown manually since test_generate_md_cli_help snapshot
|
|
# will need regenerating.
|
|
clap-markdown = "=0.1.5"
|
|
clap_mangen = "0.2.25"
|
|
chrono = { version = "0.4.41", default-features = false, features = [
|
|
"std",
|
|
"clock",
|
|
"serde",
|
|
] }
|
|
clru = "0.6.2"
|
|
criterion = "0.5.1"
|
|
crossterm = { version = "0.28", default-features = false, features = ["windows"] }
|
|
datatest-stable = "0.3.2"
|
|
digest = "0.10.7"
|
|
dunce = "1.0.5"
|
|
erased-serde = "0.4.6"
|
|
etcetera = "0.10.0"
|
|
either = "1.15.0"
|
|
futures = "0.3.31"
|
|
gix = { version = "0.73.0", default-features = false, features = [
|
|
"attributes",
|
|
"blob-diff",
|
|
"index",
|
|
"max-performance-safe",
|
|
"zlib-rs",
|
|
] }
|
|
globset = "0.4.16"
|
|
hashbrown = { version = "0.15.5", default-features = false, features = ["inline-more"] }
|
|
ignore = "0.4.23"
|
|
indexmap = { version = "2.11.0", features = ["serde"] }
|
|
indoc = "2.0.6"
|
|
insta = { version = "1.43.1", features = ["filters"] }
|
|
interim = { version = "0.2.1", features = ["chrono_0_4"] }
|
|
itertools = "0.14.0"
|
|
jsonschema = { version = "0.32.1", default-features = false }
|
|
libc = { version = "0.2.175" }
|
|
maplit = "1.0.2"
|
|
nix = "0.30.1"
|
|
num_cpus = "1.17.0"
|
|
once_cell = "1.21.3"
|
|
os_pipe = "1.2.2"
|
|
pest = "2.8.1"
|
|
pest_derive = "2.8.1"
|
|
pollster = "0.4.0"
|
|
pretty_assertions = "1.4.1"
|
|
proc-macro2 = "1.0.96"
|
|
proptest = "1.7.0"
|
|
proptest-derive = "0.6.0"
|
|
proptest-state-machine = "0.3.1"
|
|
prost = "0.13.5"
|
|
prost-build = "0.13.5"
|
|
quote = "1.0.40"
|
|
rand = "0.9.2"
|
|
rand_chacha = "0.9.0"
|
|
rayon = "1.10.0"
|
|
ref-cast = "1.0.24"
|
|
regex = "1.11.2"
|
|
rpassword = "7.4.0"
|
|
rustix = { version = "1.0.7", features = ["fs"] }
|
|
same-file = "1.0.6"
|
|
sapling-renderdag = "0.1.0"
|
|
sapling-streampager = "0.11.0"
|
|
scm-record = "0.8.0"
|
|
serde = { version = "1.0", features = ["derive", "rc"] }
|
|
serde_json = "1.0.143"
|
|
slab = "0.4.11"
|
|
smallvec = { version = "1.15.1", features = [
|
|
"const_generics",
|
|
"const_new",
|
|
"serde",
|
|
"union",
|
|
] }
|
|
strsim = "0.11.1"
|
|
syn = "2.0.104"
|
|
rustversion = "1.0.22"
|
|
tempfile = "3.21.0"
|
|
test-case = "3.3.1"
|
|
textwrap = "0.16.2"
|
|
thiserror = "2.0.16"
|
|
timeago = { version = "0.4.2", default-features = false }
|
|
tokio = { version = "1.47.1", features = ["io-util"] }
|
|
toml = "0.9.5"
|
|
toml_edit = { version = "0.23.4", features = ["serde"] }
|
|
tracing = "0.1.41"
|
|
tracing-chrome = "0.7.2"
|
|
tracing-subscriber = { version = "0.3.20", default-features = false, features = [
|
|
"std",
|
|
"ansi",
|
|
"env-filter",
|
|
"fmt",
|
|
] }
|
|
unicode-width = "0.2.0"
|
|
version_check = "0.9.5"
|
|
watchman_client = { version = "0.9.0" }
|
|
whoami = "1.6.1"
|
|
winreg = "0.52"
|
|
|
|
# put all inter-workspace libraries, i.e. those that use 'path = ...' here in
|
|
# their own (alphabetically sorted) block
|
|
|
|
jj-lib = { path = "lib", version = "0.33.0", default-features = false }
|
|
jj-lib-proc-macros = { path = "lib/proc-macros", version = "0.33.0" }
|
|
testutils = { path = "lib/testutils" }
|
|
|
|
[workspace.lints.clippy]
|
|
explicit_iter_loop = "warn"
|
|
flat_map_option = "warn"
|
|
implicit_clone = "warn"
|
|
needless_for_each = "warn"
|
|
semicolon_if_nothing_returned = "warn"
|
|
uninlined_format_args = "warn"
|
|
unused_trait_names = "warn"
|
|
useless_conversion = "warn"
|
|
use_self = "warn"
|
|
|
|
[profile.dev.package]
|
|
# Insta suggests compiling these packages in opt mode for faster testing.
|
|
# See https://docs.rs/insta/latest/insta/#optional-faster-runs.
|
|
insta.opt-level = 3
|
|
similar.opt-level = 3
|
|
# Proptest suggests compiling itself and its RNG in opt mode as well.
|
|
# See https://proptest-rs.github.io/proptest/proptest/tips-and-best-practices.html#setting-opt-level
|
|
proptest.opt-level = 3
|
|
proptest-state-machine.opt-level = 3
|
|
rand_chacha.opt-level = 3
|
|
|
|
[profile.release]
|
|
strip = "debuginfo"
|
|
codegen-units = 1
|