[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.61.0" authors = ["Wilfred Hughes "] keywords = ["diff", "syntax"] categories = ["development-tools", "command-line-utilities", "parser-implementations"] edition = "2021" # Goal: support at least 12 months of Rust versions, and be # conservative about upgrades to help packagers. # # For reference, Debian stable is on 1.63 (see # https://tracker.debian.org/pkg/rustc) but Debian doesn't currently # package difftastic. Other distros are somewhat newer. rust-version = "1.66.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.10.4" clap = { version = "3.2.25", features = ["cargo", "env", "wrap_help"] } itertools = "0.11.0" typed-arena = "2.0.2" rustc-hash = "2.0.0" strsim = "0.10.0" lazy_static = "1.4.0" # tree-sitter 0.22.5 uses std::os::fd::AsRawFd, which was added in Rust 1.66. # https://github.com/tree-sitter/tree-sitter/commit/a7a47d561d4e64eaf226f93c4d68076afa67fdda # # tree-sitter 0.22.0 has some API changes which we need to update # difftastic for. tree-sitter = "0.20.10" libc = "0.2.108" log = "0.4.14" pretty_env_logger = "0.5.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" # ignore does not declare a MSRV, but it's part of ripgrep, which has # a slightly more aggressive MSRV than difftastic. Constrain ignore to # a known-good max version. ignore = ">= 0.4, < 0.4.22" const_format = "0.2.22" owo-colors = "3.5.0" wu-diff = "0.1.2" rayon = "1.7.0" tree_magic_mini = "3.1.5" # home (used by tree_magic_mini) 0.5.9 has an MSRV of 1.70. home = ">= 0.5, < 0.5.9" # bumpalo 3.15.x requires rust 1.73. bumpalo = ">= 3.11, < 3.15" unicode-width = "0.1.9" crossterm = { version = "0.27.0", features = ["windows"] } glob = "0.3.1" strum = { version = "0.25", features = ["derive"] } hashbrown = "0.14.0" humansize = "2.1.3" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" line-numbers = "0.3.0" smallvec = "1.13.2" [dev-dependencies] # assert_cmd 2.0.10 requires predicates 3. # TODO: update. assert_cmd = ">= 2, < 2.0.9" predicates = "2.1.0" pretty_assertions = "1.3.0" [build-dependencies] # TODO: enable parallel mode once MSRV hits 1.61, see discussion in # https://github.com/rust-lang/cc-rs/pull/849 cc = "1.1.30" rayon = "1.7.0" version_check = "0.9.4" [profile.release] lto = "thin" [[bin]] name = "difft" path = "src/main.rs" [features]