Upgrade tree-sitter to 0.25, MSRV 1.76

Doing this upgrade would be very useful to unvendor more parsers,
because tree-sitter 0.25 supports ABIs 13, 14 and 15 at the same time,
whereas 0.24 supports ABIs 13 and 14 only.

A lot of the crates.io versions of the parsers are using ABI 15,
which is blocking their unvendoring.

This comes to the cost of bumping MSRV from 1.75 to 1.76, which seems
acceptable to me. This is still far behind the version in Debian stable,
1.85.
pull/885/head
Antonin Delpeuch 2025-10-02 10:42:57 +07:00 committed by Wilfred Hughes
parent 85f88b66cc
commit 07e5b2a85d
3 changed files with 39 additions and 18 deletions

49
Cargo.lock generated

@ -129,10 +129,11 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
[[package]]
name = "cc"
version = "1.2.7"
version = "1.2.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7"
checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f"
dependencies = [
"find-msvc-tools",
"shlex",
]
@ -365,6 +366,12 @@ dependencies = [
"windows-sys 0.52.0",
]
[[package]]
name = "find-msvc-tools"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959"
[[package]]
name = "fixedbitset"
version = "0.4.2"
@ -692,9 +699,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.79"
version = "1.0.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de"
dependencies = [
"unicode-ident",
]
@ -820,18 +827,28 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]]
name = "serde"
version = "1.0.197"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
dependencies = [
"serde_core",
"serde_derive",
]
[[package]]
name = "serde_core"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
version = "1.0.197"
version = "1.0.228"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
dependencies = [
"proc-macro2",
"quote",
@ -840,13 +857,16 @@ dependencies = [
[[package]]
name = "serde_json"
version = "1.0.114"
version = "1.0.145"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
dependencies = [
"indexmap",
"itoa",
"memchr",
"ryu",
"serde",
"serde_core",
]
[[package]]
@ -933,9 +953,9 @@ dependencies = [
[[package]]
name = "syn"
version = "2.0.55"
version = "2.0.106"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "002a1b3dbf967edfafc32655d0f377ab0bb7b994aa1d32c8cc7e9b8bf3ebb8f0"
checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6"
dependencies = [
"proc-macro2",
"quote",
@ -989,13 +1009,14 @@ dependencies = [
[[package]]
name = "tree-sitter"
version = "0.24.5"
version = "0.25.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ac95b18f0f727aaaa012bd5179a1916706ee3ed071920fdbda738750b0c0bf5"
checksum = "78f873475d258561b06f1c595d93308a7ed124d9977cb26b148c2084a4a3cc87"
dependencies = [
"cc",
"regex",
"regex-syntax",
"serde_json",
"streaming-iterator",
"tree-sitter-language",
]

@ -15,10 +15,10 @@ edition = "2021"
# https://releases.rs/ is a useful website to see when different Rust
# versions were released.
#
# For reference, Debian stable is on 1.63 (see
# For reference, Debian stable is on 1.85 (see
# https://tracker.debian.org/pkg/rustc) but Debian doesn't currently
# package difftastic. Other distros are somewhat newer.
rust-version = "1.75.0"
rust-version = "1.76.0"
include = [
"/build.rs",
"/src/",
@ -72,7 +72,7 @@ streaming-iterator = "0.1.9"
encoding_rs = "0.8.35"
# tree-sitter itself.
tree-sitter = "0.24.0"
tree-sitter = "0.25.9"
tree-sitter-language = "0.1.3"
# tree-sitter parsers that are available on crates.io.

@ -1,4 +1,4 @@
[toolchain]
channel = "1.75.0"
channel = "1.76.0"
components = ["rustfmt"]
profile = "minimal"