summaryrefslogtreecommitdiffstats
path: root/Cargo.toml
blob: b650be65455cbc7212511d17e440ef199026f72a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
[package]
name = "difftastic"
description = "A structural diff that understands syntax."
repository = "https://github.com/wilfred/difftastic"
homepage = "http://difftastic.wilfred.me.uk/"
license = "MIT"
version = "0.51.0"
authors = ["Wilfred Hughes <me@wilfred.me.uk>"]
keywords = ["diff", "syntax"]
categories = ["development-tools", "command-line-utilities", "parser-implementations"]
edition = "2021"
# Goal: support at least 12 months of Rust versions, and also the Rust
# version on Debian stable:
# https://tracker.debian.org/pkg/rustc
rust-version = "1.59.0"
include = [
        "/build.rs",
        "/src/",
        "/vendored_parsers/highlights/*.scm",
        "/vendored_parsers/*-src/**/*.c",
        "/vendored_parsers/*-src/**/*.h",
        "/vendored_parsers/*-src/**/*.cc",
        "/LICENSE",
        "/README.md",
]

[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/{ version }/difft-{ target }.{ archive-format }"

[package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
pkg-fmt = "zip"

[dependencies]
# regex 1.8 requires rust 1.60.
regex = ">= 1.7, < 1.8"
clap = { version = "3.1.8", features = ["cargo", "env", "wrap_help"] }
itertools = "0.10.1"
typed-arena = "2.0.2"
rustc-hash = "1.1.0"
strsim = "0.10.0"
lazy_static = "1.4.0"
# tree-sitter 0.20.10 requires rust 1.65.
tree-sitter = "0.20.9"
libc = "0.2.108"
log = "0.4.14"
pretty_env_logger = "0.4.0"
mimalloc = { version = "0.1.28", default-features = false }
# Pin libmimalloc-sys due to 0.1.25 producing a huge slowdown in very
# large textual files, as discussed in #297.
libmimalloc-sys = "=0.1.24"
radix-heap = "0.4.2"
walkdir = "2.3.3"
const_format = "0.2.22"
owo-colors = "3.5.0"
wu-diff = "0.1.2"
rayon = "1.7.0"
tree_magic_mini = "3.0.2"
# bumpalo 3.12 requires rust 1.60
bumpalo = "3.11.1"
unicode-width = "0.1.9"
crossterm = { version = "0.26.1", features = [] }
glob = "0.3.1"
strum = { version = "0.25", features = ["derive"] }
# hashbrown 0.13 requires rust 1.61
hashbrown = "0.12.3"
humansize = "2.1.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
id-arena = "2.2.1"

[dev-dependencies]
# assert_cmd 2.0.6 requires rust 1.60
assert_cmd = ">= 2, <= 2.0.5"
# Predicates is a dependency of assert_cmd, but 2.1.2 requires rust 1.60.
predicates = ">= 2, <= 2.1.1"

pretty_assertions = "1.3.0"

[build-dependencies]
cc = "1.0.78"
rayon = "1.7.0"
version_check = "0.9.4"

[profile.release]
lto = "thin"

[[bin]]
name = "difft"
path = "src/main.rs"

[features]

[patch.crates-io]
# https://github.com/mbrubeck/tree_magic/pull/13 hasn't been merged yet.
tree_magic_mini = { git = 'https://github.com/Wilfred/tree_magic', branch = 'fix-panic-for-empty-strings' }