gnu: tree-sitter: Update to 0.25.3.

* gnu/packages/tree-sitter.scm (tree-sitter): Update to 0.25.3.
[arguments]<#:phases>: Add 'patch-_ts_dup-visibility for linking with Rust
bindings.
(tree-sitter-cli)[source]: Keep files required for building bindings.
[inputs]: Use ‘cargo-inputs’.
[arguments]: Remove #:cargo-inputs, #:cargo-development-inputs.
<#:cargo-test-flags>: Adjust failing tests to skip.
<#:cargo-install-paths>: Add "cli".
<#:phases>: Merge 'patch-node and 'patch-dot into 'patch-references.
Update their references and use ‘search-input-file’.
Remove modification of 'install, #:cargo-install-paths now takes care of the
installation.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[tree-sitter-cli]: New
entry.
* guix/build/tree-sitter-build-system.scm
(patch-dependencies): Drop `peerDependencies' from package.json.
(build): Remove deprecated ‘--no-bindings’ option.
(check): Set CC.
(install): Add `src' to include directories in order for external
scanners to find `tree_sitter/parser.h'.

Co-authored-by: Hilton Chain <hako@ultrarare.space>
Change-Id: I3941a1785be8deb60f288fcd5983255f075f9215
Signed-off-by: Hilton Chain <hako@ultrarare.space>
This commit is contained in:
Jean-Pierre De Jesus DIAZ 2025-04-12 01:35:34 +08:00 committed by Hilton Chain
parent 329466a25a
commit f0560f865a
No known key found for this signature in database
GPG key ID: ACC66D09CA528292
3 changed files with 592 additions and 64 deletions

View file

@ -159,6 +159,10 @@
(crate-source "annotate-snippets" "0.9.2"
"07p8r6jzb7nqydq0kr5pllckqcdxlyld2g275v425axnzffpxbyc"))
(define rust-ansi-colours-1.2.3
(crate-source "ansi_colours" "1.2.3"
"1zimwh84gs1r0g0chy6x5lm9v0ksxxlzwy8nyj80f6cq08zc9vhl"))
(define rust-ansi-parser-0.6.5
(crate-source "ansi-parser" "0.6.5"
"152idb8a6gwdxzj6m099h3xgx8vw0sjc6skgw94nm2k3y5swc6kn"))
@ -271,6 +275,10 @@
(crate-source "as-raw-xcb-connection" "1.0.1"
"0sqgpz2ymv5yx76r5j2npjq2x5qvvqnw0vrs35cyv30p3pfp2m8p"))
(define rust-ascii-1.1.0
(crate-source "ascii" "1.1.0"
"05nyyp39x4wzc1959kv7ckwqpkdzjd9dw4slzyjh73qbhjcfqayr"))
(define rust-ascii-canvas-3.0.0
(crate-source "ascii-canvas" "3.0.0"
"1in38ziqn4kh9sw89ys4naaqzvvjscfs0m4djqbfq7455v5fq948"))
@ -1117,6 +1125,10 @@
(crate-source "chumsky" "0.9.3"
"1jcnafc8rjfs1al08gqzyn0kpbaizgdwrd0ajqafspd18ikxdswf"))
(define rust-chunked-transfer-1.5.0
(crate-source "chunked_transfer" "1.5.0"
"00a9h3csr1xwkqrzpz5kag4h92zdkrnxq4ppxidrhrx29syf6kbf"))
(define rust-ciborium-0.2.2
(crate-source "ciborium" "0.2.2"
"03hgfw4674im1pdqblcp77m7rc8x2v828si5570ga5q9dzyrzrj2"))
@ -1229,6 +1241,10 @@
(crate-source "cmake" "0.1.54"
"1w41ma28yzad9x757s9sfq1wigjs9j902hbzc0nbxpc9vvws7jp7"))
(define rust-cobs-0.2.3
(crate-source "cobs" "0.2.3"
"05gd16mws4yd63h8jr3p08in8y8w21rpjp5jb55hzl9bgalh5fk7"))
(define rust-cocoa-0.25.0
(crate-source "cocoa" "0.25.0"
"0g1pl5hq28arqmvsswf2ib7smj445miwa58qa7wrfvksz54h857n"))
@ -1419,6 +1435,46 @@
(crate-source "cpufeatures" "0.2.17"
"10023dnnaghhdl70xcds12fsx2b966sxbxjq5sxs49mvxqw5ivar"))
(define rust-cranelift-bforest-0.116.1
(crate-source "cranelift-bforest" "0.116.1"
"1i13rpcpzi2b26nf1fajf2jcvmpzjgv8rmlav3m3djw6rsh08pg1"))
(define rust-cranelift-bitset-0.116.1
(crate-source "cranelift-bitset" "0.116.1"
"0d4zvspdxpw8jl1q2zm8n1jrxg6kqmkphjr4rrcp49nflxlkjvkw"))
(define rust-cranelift-codegen-0.116.1
(crate-source "cranelift-codegen" "0.116.1"
"0kihpw7gaj9wx4rw2x9lkn0x3nkcy93vn5pm3hvmh9dl9hn068ic"))
(define rust-cranelift-codegen-meta-0.116.1
(crate-source "cranelift-codegen-meta" "0.116.1"
"1f70xrardmbpvfij1djkavllzrlxy9wi6jkzh9bzq9qvqrqvq169"))
(define rust-cranelift-codegen-shared-0.116.1
(crate-source "cranelift-codegen-shared" "0.116.1"
"1src5xxbh4va2g0f1n5lgcfyrqhsk20589ccx1668bspjxa0y620"))
(define rust-cranelift-control-0.116.1
(crate-source "cranelift-control" "0.116.1"
"1vymgmnqqnmirvkyqraah03hgnjr2wbzqaj7cfali2mxs3335l96"))
(define rust-cranelift-entity-0.116.1
(crate-source "cranelift-entity" "0.116.1"
"08xk00xzncxycxm0z1g6daysq2g0qs503pbryvxp8m1732b0sbab"))
(define rust-cranelift-frontend-0.116.1
(crate-source "cranelift-frontend" "0.116.1"
"0msd90p3p5hs1bl687hf21k2h1zv60vrw32b2y9p6419czhl3b2g"))
(define rust-cranelift-isle-0.116.1
(crate-source "cranelift-isle" "0.116.1"
"0kclhdj14l7av24k2h2hlrm4vkza5pyfzabj196h8w2hdrbhv8hw"))
(define rust-cranelift-native-0.116.1
(crate-source "cranelift-native" "0.116.1"
"1ivna3w02yxa1hs2kkcv6xj8gs8g6mgcrwbpj6x4qb0z7wpyipmq"))
(define rust-crates-io-0.40.9
(crate-source "crates-io" "0.40.9"
"0553wkxfgki90cb7qkzyb5f2z4lvqzwc5za8fzw5qj5wh7xbjrv9"))
@ -1536,6 +1592,10 @@
(crate-source "ctor" "0.1.26"
"15m0wqhv12p25xkxz5dxvg23r7a6bkh7p8zi1cdhgswjhdl028vd"))
(define rust-ctor-0.2.9
(crate-source "ctor" "0.2.9"
"00b5vprqi4a2cr29xhqijg800b4dwkhrr5wj2kf3s7vnambpi8ij"))
(define rust-ctr-0.8.0
(crate-source "ctr" "0.8.0"
"1sk1aykwhkny92cnvl6s75dx3fyvfzw5xkd6xz3y7w5anhgvk6q4"
@ -1993,6 +2053,14 @@
(crate-source "embed-resource" "2.5.1"
"0yb3kbw3xpghiwf69769jpng725kwa2cxm27qj5s7dm0cfgnz2xn"))
(define rust-embedded-io-0.4.0
(crate-source "embedded-io" "0.4.0"
"1v9wrc5nsgaaady7i3ya394sik5251j0iq5rls7mrx7fv696h6pg"))
(define rust-embedded-io-0.6.1
(crate-source "embedded-io" "0.6.1"
"0v901xykajh3zffn6x4cnn4fhgfw3c8qpjwbsk6gai3gaccg3l7d"))
(define rust-eml-parser-0.1.4
(crate-source "eml-parser" "0.1.4"
"0bhgx1i952g2v7w0icnqkylvhfiyb2am2mbw89v8zq0jz0aqvnx7"))
@ -3777,6 +3845,10 @@
(crate-source "icu_provider_macros" "1.5.0"
"1mjs0w7fcm2lcqmbakhninzrjwqs485lkps4hz0cv3k36y9rxj0y"))
(define rust-id-arena-2.2.1
(crate-source "id-arena" "2.2.1"
"01ch8jhpgnih8sawqs44fqsqpc7bzwgy0xpi6j0f4j0i5mkvr8i5"))
(define rust-ident-case-1.0.1
(crate-source "ident_case" "1.0.1"
"0fac21q6pwns8gh1hz3nbq15j8fi441ncl6w4vlnd1cmc55kiq5r"))
@ -3871,6 +3943,10 @@
(crate-source "inotify" "0.10.2"
"1k2m6a95827yspax1icmwiz4szr7c01w3dnn2b2bil4hfvcnilgx"))
(define rust-inotify-0.11.0
(crate-source "inotify" "0.11.0"
"1wq8m657rl085cg59p38sc5y62xy9yhhpvxbkd7n1awi4zzwqzgk"))
(define rust-inotify-0.9.6
(crate-source "inotify" "0.9.6"
"1zxb04c4qccp8wnr3v04l503qpxzxzzzph61amlqbsslq4z9s1pq"))
@ -4666,6 +4742,10 @@
"18z32bhxrax0fnjikv475z7ii718hq457qwmaryixfxsl2qrmjkq"
#:snippet '(delete-file-recursively "src/tests")))
(define rust-memfd-0.6.4
(crate-source "memfd" "0.6.4"
"0r5cm3wzyr1x7768h3hns77b494qbz0g05cb9wgpjvrcsm5gmkxj"))
(define rust-memmap2-0.3.1
(crate-source "memmap2" "0.3.1"
"0mz3fdcq443m3a1phrhp2yvd1h9vrvbhinzmi23ik031zzmw5dh0"))
@ -5031,14 +5111,26 @@
(crate-source "notify" "6.1.1"
"0bad98r0ilkhhq2jg3zs11zcqasgbvxia8224wpasm74n65vs1b2"))
(define rust-notify-8.0.0
(crate-source "notify" "8.0.0"
"0hz9ab68gsbkidms6kgl4v7capfqjyl40vpfdarcfsnnnc1q9vig"))
(define rust-notify-debouncer-full-0.3.2
(crate-source "notify-debouncer-full" "0.3.2"
"0kpkz1y4v2kwh5rgkhx4h2fxnwqka30lsrcy2vzwk2cpfdkd2zzv"))
(define rust-notify-debouncer-full-0.5.0
(crate-source "notify-debouncer-full" "0.5.0"
"1ldqk50zzfayq7l4adzv2c2mj6lkgkgki0r5r18l619qfld8pn6j"))
(define rust-notify-rust-4.11.7
(crate-source "notify-rust" "4.11.7"
"0024xqbn29z1k6cfbi8w7c1p73hscqwkpbwlwwa2bam5cn328hk4"))
(define rust-notify-types-2.0.0
(crate-source "notify-types" "2.0.0"
"0pcjm3wnvb7pvzw6mn89csv64ip0xhx857kr8jic5vddi6ljc22y"))
(define rust-ntapi-0.3.7
(crate-source "ntapi" "0.3.7"
"03wqq2x5jv5xrsirbxmm460gcfmpakjpq8yqmc5lzfrgznkp91y2"))
@ -5942,6 +6034,10 @@
(crate-source "portable-atomic-util" "0.2.4"
"01rmx1li07ixsx3sqg2bxqrkzk7b5n8pibwwf2589ms0s3cg18nq"))
(define rust-postcard-1.1.1
(crate-source "postcard" "1.1.1"
"1a18yvgmjazphf6frnlnq4nnl6pp2l5qgi6qxnldpjbwyq0jc2hp"))
(define rust-powerfmt-0.2.0
(crate-source "powerfmt" "0.2.0"
"14ckj2xdpkhv3h6l5sdmb9f1d57z8hbfpdldjc2vl5givq2y77j3"))
@ -6144,6 +6240,10 @@
(crate-source "pulldown-cmark" "0.9.6"
"0av876a31qvqhy7gzdg134zn4s10smlyi744mz9vrllkf906n82p"))
(define rust-pulley-interpreter-29.0.1
(crate-source "pulley-interpreter" "29.0.1"
"0pg7rvnqkj47vz91zyqh0b1rvkw8m14jy64qhdqa4jfzfn2mznb2"))
(define rust-pure-rust-locales-0.8.1
(crate-source "pure-rust-locales" "0.8.1"
"0fkkwggiq2053rmiah2h06dz6w3yhy9pa82g30vy3sbcmqcgv40i"))
@ -6484,6 +6584,10 @@
(crate-source "reflink-copy" "0.1.26"
"15g89wsra90s4wcp2fvcj1brwfcx04pzklh0rhrl2lic1801vj3q"))
(define rust-regalloc2-0.11.2
(crate-source "regalloc2" "0.11.2"
"16k30jbh1ag5vb4l6p43jik1dzq8pymjbiwblkj189hl32ryc1nw"))
(define rust-regex-1.11.1
(crate-source "regex" "1.11.1"
"148i41mzbx8bmq32hsj1q4karkzzx5m60qza6gdw4pdc9qdyyi5m"
@ -6811,6 +6915,10 @@
(crate-source "rustls" "0.23.25"
"0g5idwxm04i71k3n66ml30zyfbgv6p85a7jky2i09v64i8cfjbl2"))
(define rust-rustls-0.23.26
(crate-source "rustls" "0.23.26"
"1w7ha5ivbhs91rvzh3ccgdgjizw6shagzs65xaaiai1sky3balfz"))
(define rust-rustls-native-certs-0.8.1
(crate-source "rustls-native-certs" "0.8.1"
"1ls7laa3748mkn23fmi3g4mlwk131lx6chq2lyc8v2mmabfz5kvz"))
@ -7355,6 +7463,10 @@
(crate-source "slotmap" "1.0.7"
"0amqb2fn9lcy1ri0risblkcp88dl0rnfmynw7lx0nqwza77lmzyv"))
(define rust-smallbitvec-2.6.0
(crate-source "smallbitvec" "2.6.0"
"0gqf2nj32gwrk5v4xx9v7b8c2vfanqm1h8i994d0wmhqs4yjc7fk"))
(define rust-smallvec-1.15.0
(crate-source "smallvec" "1.15.0"
"1sgfw8z729nlxk8k13dhs0a762wnaxmlx70a7xlf3wz989bjh5w9"))
@ -7432,6 +7544,10 @@
"17fj8k5fmx4w9mp27l970clrh5qa7r5sjdvbsln987xhb34dc7nr"
#:snippet '(delete-file-recursively "tests")))
(define rust-sptr-0.3.2
(crate-source "sptr" "0.3.2"
"0shddkys046nnrng929mrnjjrh31mlxl95ky7dgxd6i4kclkk6rv"))
(define rust-stable-deref-trait-1.2.0
(crate-source "stable_deref_trait" "1.2.0"
"1lxjr8q2n534b2lhkxd6l6wcddzjvnksi58zv11f9y0jjmr15wd8"))
@ -7944,6 +8060,10 @@
(crate-source "tint" "1.0.1"
"15k89pp3ddxczfnv2j995yvy02mfpmjrmxmv7mkp8c2acrq4bwks"))
(define rust-tiny-http-0.12.0
(crate-source "tiny_http" "0.12.0"
"10nw9kk2i2aq4l4csy0825qkq0l66f9mz2c1n57yg8hkckgib69q"))
(define rust-tiny-keccak-2.0.2
(crate-source "tiny-keccak" "2.0.2"
"0dq2x0hjffmixgyf6xv9wgsbcxkd65ld0wrfqmagji8a829kg79c"))
@ -8452,6 +8572,15 @@
(crate-source "ureq" "2.12.1"
"07f0qdn6459k4rmdnkivkz0y7j28vxh5c8q8sr0gcxgdfxiadl82"))
(define rust-ureq-3.0.10
(crate-source "ureq" "3.0.10"
"07979dkp96fdrbgbwzhqq9i7zxjmjxfnrfzrwjl42yswcb5520sb"))
(define rust-ureq-proto-0.3.5
(crate-source "ureq-proto" "0.3.5"
"195g5y87f6y9f9kq3g5y3ka8gkngczfd254l4nabrbj16c59s8xf"
#:snippet '(delete-file-recursively "doc")))
(define rust-urid-0.1.0
(crate-source "urid" "0.1.0"
"195672gs136vczn1r4hkjg5vfa7vdzr26bzv6lwhk0z7cvbvaa38"))
@ -8705,6 +8834,10 @@
(crate-source "wasm-bindgen-test-macro" "0.3.50"
"16znd6wz79v2i3b2sf5n4ld2kcci8br3wcx7z5c9c07sqln09m8p"))
(define rust-wasm-encoder-0.221.3
(crate-source "wasm-encoder" "0.221.3"
"1r9jv84kbjf6z18rgf3666vvcn5fybzn9daszsj81pi097z4916w"))
(define rust-wasm-streams-0.4.2
(crate-source "wasm-streams" "0.4.2"
"0rddn007hp6k2cm91mm9y33n79b0jxv0c3znzszcvv67hn6ks18m"))
@ -8717,6 +8850,78 @@
(crate-source "wasmparser" "0.207.0"
"0b694q3frf4xvavj0rw7xk3j852gqljdp2pghajnsq87mgwbk6z1"))
(define rust-wasmparser-0.221.3
(crate-source "wasmparser" "0.221.3"
"11ficyz79dcypkxxg1c8vl8bm0avg8a80csnxq6vxhismcvglsyh"))
(define rust-wasmparser-0.224.1
(crate-source "wasmparser" "0.224.1"
"04cf332ajrccf1nfkw61p7bjkfnnw3x63il4ks0x7pf22xcpmw84"))
(define rust-wasmprinter-0.221.3
(crate-source "wasmprinter" "0.221.3"
"10xjs2bzvppwr4qdsgfqqmafjah9290bd0gz35w6r4pjjwmc8hvk"))
(define rust-wasmtime-29.0.1
(crate-source "wasmtime" "29.0.1"
"0s8f05h19hnnhx2jmi7dr4m1kjbacpbxbih49hf6smbj0qjnm5qi"))
(define rust-wasmtime-asm-macros-29.0.1
(crate-source "wasmtime-asm-macros" "29.0.1"
"1wk4rwn8085nllba4nz4z68ihl9ypm4zisjvyzlzn0aj286qn5qz"))
(define rust-wasmtime-c-api-impl-29.0.1
(crate-source "wasmtime-c-api-impl" "29.0.1"
"037dcqkjwl8vxmnfh6pqlzcpcdjgpb0r9fvvgiwyabcgc3rwwc7a"))
(define rust-wasmtime-c-api-macros-29.0.1
(crate-source "wasmtime-c-api-macros" "29.0.1"
"0nxndnwfwx490yw5rwc1gn2xvd66c5z3sil29lw5sk8jw7mpjah2"))
(define rust-wasmtime-component-macro-29.0.1
(crate-source "wasmtime-component-macro" "29.0.1"
"1byzawnz8myzmlwbc0g5y415sk9h5ac464pp0akd0ifr5rcyckfp"))
(define rust-wasmtime-component-util-29.0.1
(crate-source "wasmtime-component-util" "29.0.1"
"0vh5dzz2nn7clnbdy5igd07nm3igbgxy5krhdcv5maqjq6rwfzbh"))
(define rust-wasmtime-cranelift-29.0.1
(crate-source "wasmtime-cranelift" "29.0.1"
"11wyks7pdzshspw6ks5k5z45r28ngm6vrg0g559z2jsdcwiffsrn"))
(define rust-wasmtime-environ-29.0.1
(crate-source "wasmtime-environ" "29.0.1"
"1bclk4g44v8bcqf9fik9njsjdxqhk290iw54fsi7ld4pf2pw3bfd"))
(define rust-wasmtime-fiber-29.0.1
(crate-source "wasmtime-fiber" "29.0.1"
"05qis8ry2z3mqkw2hlpz3yz1g9ih0xjqa10rj751n24z27a91fnc"))
(define rust-wasmtime-jit-icache-coherence-29.0.1
(crate-source "wasmtime-jit-icache-coherence" "29.0.1"
"1la7aw71kavh11d9k9nig7nbv2pd9xq72c99wp1fd4hnw198appc"))
(define rust-wasmtime-math-29.0.1
(crate-source "wasmtime-math" "29.0.1"
"05yy3npnfk6h199bvibjm00yqf8g12pysp30ai6hzq15mb10w899"))
(define rust-wasmtime-slab-29.0.1
(crate-source "wasmtime-slab" "29.0.1"
"1kswbqx53kcnsgd78nnvafh2jxydsnrqn5bvphaaq17sjqd85dgw"))
(define rust-wasmtime-versioned-export-macros-29.0.1
(crate-source "wasmtime-versioned-export-macros" "29.0.1"
"0nvvm5xh6yclnf7511cnvzfi79l710lwhh6yc8229h3d47dqdzw6"))
(define rust-wasmtime-winch-29.0.1
(crate-source "wasmtime-winch" "29.0.1"
"13yg8dx7nf37fp6syyj8i2cyaak8sgmbk4hhv3hxa0h5yawbzfpx"))
(define rust-wasmtime-wit-bindgen-29.0.1
(crate-source "wasmtime-wit-bindgen" "29.0.1"
"1rh6ds0kcslrwks8k7rz6hand5c4myjx7if1wdwxpr6i5nf32n43"))
(define rust-wax-0.6.0
(crate-source "wax" "0.6.0"
"0mqk9qxsjlbwnjnj0gkaa29qm3mmgbgrc6pd4qpjvcmsl25af4ld"))
@ -8810,6 +9015,10 @@
(crate-source "web-time" "1.1.0"
"1fx05yqx83dhx628wb70fyy10yjfq1jpl20qfqhdkymi13rq0ras"))
(define rust-webbrowser-1.0.4
(crate-source "webbrowser" "1.0.4"
"0pjmpl6p09y837ikdh4v8dymisfz0sk8dgdiaqc2y52ihigjkpym"))
(define rust-webpki-roots-0.26.8
(crate-source "webpki-roots" "0.26.8"
"1jf54brni9lk4ak5pkma2pn18hli22gr7i7wp9zn2lzayy8v4412"
@ -8881,6 +9090,10 @@
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"
#:snippet '(delete-file-recursively "lib")))
(define rust-winch-codegen-29.0.1
(crate-source "winch-codegen" "29.0.1"
"1745a92ni167lczz20rc5vjld613m9x4id7l1aib0v7lqpr9x11g"))
(define rust-windows-0.44.0
(crate-source "windows" "0.44.0"
"0ax1ip82dhszxz4hhsrdj3b0681xw6axahnfldxcgi506nmmsx4y"
@ -9252,6 +9465,10 @@
"1hd65pa5hp0nl664m94bg554h4zlhrzmkjsf6lsgsb7yc4734hkg"
#:snippet '(for-each delete-file (find-files "." "\\.(a|o)$"))))
(define rust-wit-parser-0.221.3
(crate-source "wit-parser" "0.221.3"
"1b5j2vpiww0crqavaijw4vv1y41darpd38q7id9llsymkrbi4qc9"))
(define rust-wl-clipboard-rs-0.9.2
(crate-source "wl-clipboard-rs" "0.9.2"
"1sxsaspzix3xiq6wi1l1g55acgi04sv6r7gxz94zar80wv8ghpwf"))
@ -19783,6 +20000,313 @@
rust-zstd-0.13.3
rust-zstd-safe-7.2.4
rust-zstd-sys-2.0.15+zstd.1.5.7))
(tree-sitter-cli =>
(list rust-adler2-2.0.0
rust-ahash-0.8.11
rust-aho-corasick-1.1.3
rust-allocator-api2-0.2.21
rust-ansi-colours-1.2.3
rust-anstream-0.6.18
rust-anstyle-1.0.10
rust-anstyle-parse-0.2.6
rust-anstyle-query-1.1.2
rust-anstyle-wincon-3.0.7
rust-anyhow-1.0.97
rust-arbitrary-1.4.1
rust-ascii-1.1.0
rust-base64-0.22.1
rust-bindgen-0.71.1
rust-bitflags-1.3.2
rust-bitflags-2.9.0
rust-bstr-1.12.0
rust-bumpalo-3.17.0
rust-bytemuck-1.22.0
rust-bytes-1.10.1
rust-cc-1.2.19
rust-cesu8-1.1.0
rust-cexpr-0.6.0
rust-cfg-if-1.0.0
rust-cfg-aliases-0.2.1
rust-chunked-transfer-1.5.0
rust-clang-sys-1.8.1
rust-clap-4.5.35
rust-clap-builder-4.5.35
rust-clap-complete-4.5.47
rust-clap-complete-nushell-4.5.5
rust-clap-derive-4.5.32
rust-clap-lex-0.7.4
rust-cobs-0.2.3
rust-colorchoice-1.0.3
rust-combine-4.6.7
rust-console-0.15.11
rust-core-foundation-0.10.0
rust-core-foundation-sys-0.8.7
rust-cranelift-bforest-0.116.1
rust-cranelift-bitset-0.116.1
rust-cranelift-codegen-0.116.1
rust-cranelift-codegen-meta-0.116.1
rust-cranelift-codegen-shared-0.116.1
rust-cranelift-control-0.116.1
rust-cranelift-entity-0.116.1
rust-cranelift-frontend-0.116.1
rust-cranelift-isle-0.116.1
rust-cranelift-native-0.116.1
rust-crc32fast-1.4.2
rust-ctor-0.2.9
rust-ctrlc-3.4.6
rust-dialoguer-0.11.0
rust-diff-0.1.13
rust-displaydoc-0.2.5
rust-either-1.15.0
rust-embedded-io-0.4.0
rust-embedded-io-0.6.1
rust-encode-unicode-1.0.0
rust-encoding-rs-0.8.35
rust-equivalent-1.0.2
rust-errno-0.3.11
rust-etcetera-0.8.0
rust-fallible-iterator-0.3.0
rust-fastrand-2.3.0
rust-file-id-0.2.2
rust-filetime-0.2.25
rust-flate2-1.1.1
rust-fnv-1.0.7
rust-foldhash-0.1.5
rust-form-urlencoded-1.2.1
rust-fs4-0.12.0
rust-fsevent-sys-4.1.0
rust-fuzzy-matcher-0.3.7
rust-getrandom-0.2.15
rust-getrandom-0.3.2
rust-gimli-0.31.1
rust-git2-0.20.1
rust-glob-0.3.2
rust-hashbrown-0.14.5
rust-hashbrown-0.15.2
rust-heck-0.5.0
rust-home-0.5.11
rust-html-escape-0.2.13
rust-http-1.3.1
rust-httparse-1.10.1
rust-httpdate-1.0.3
rust-icu-collections-1.5.0
rust-icu-locid-1.5.0
rust-icu-locid-transform-1.5.0
rust-icu-locid-transform-data-1.5.1
rust-icu-normalizer-1.5.0
rust-icu-normalizer-data-1.5.1
rust-icu-properties-1.5.1
rust-icu-properties-data-1.5.1
rust-icu-provider-1.5.0
rust-icu-provider-macros-1.5.0
rust-id-arena-2.2.1
rust-idna-1.0.3
rust-idna-adapter-1.2.0
rust-indexmap-2.9.0
rust-indoc-2.0.6
rust-inotify-0.11.0
rust-inotify-sys-0.1.5
rust-is-terminal-polyfill-1.70.1
rust-itertools-0.12.1
rust-itertools-0.13.0
rust-itoa-1.0.15
rust-jni-0.21.1
rust-jni-sys-0.3.0
rust-jobserver-0.1.33
rust-js-sys-0.3.77
rust-kqueue-1.0.8
rust-kqueue-sys-1.0.4
rust-leb128-0.2.5
rust-libc-0.2.171
rust-libgit2-sys-0.18.1+1.9.0
rust-libloading-0.8.6
rust-libm-0.2.11
rust-libredox-0.1.3
rust-libssh2-sys-0.3.1
rust-libz-sys-1.1.22
rust-linux-raw-sys-0.4.15
rust-linux-raw-sys-0.9.4
rust-litemap-0.7.5
rust-log-0.4.27
rust-mach2-0.4.2
rust-memchr-2.7.4
rust-memfd-0.6.4
rust-minimal-lexical-0.2.1
rust-miniz-oxide-0.8.8
rust-mio-1.0.3
rust-ndk-context-0.1.1
rust-nix-0.29.0
rust-nom-7.1.3
rust-notify-8.0.0
rust-notify-debouncer-full-0.5.0
rust-notify-types-2.0.0
rust-objc2-0.6.0
rust-objc2-encode-4.1.0
rust-objc2-foundation-0.3.0
rust-object-0.36.7
rust-once-cell-1.21.3
rust-openssl-probe-0.1.6
rust-openssl-sys-0.9.107
rust-paste-1.0.15
rust-path-slash-0.2.1
rust-percent-encoding-2.3.1
rust-pin-project-lite-0.2.16
rust-pkg-config-0.3.32
rust-postcard-1.1.1
rust-ppv-lite86-0.2.21
rust-pretty-assertions-1.4.1
rust-prettyplease-0.2.32
rust-proc-macro2-1.0.94
rust-psm-0.1.25
rust-pulley-interpreter-29.0.1
rust-quote-1.0.40
rust-r-efi-5.2.0
rust-rand-0.8.5
rust-rand-chacha-0.3.1
rust-rand-core-0.6.4
rust-redox-syscall-0.5.11
rust-regalloc2-0.11.2
rust-regex-1.11.1
rust-regex-automata-0.4.9
rust-regex-syntax-0.8.5
rust-rgb-0.8.50
rust-ring-0.17.14
rust-rustc-hash-2.1.1
rust-rustix-0.38.44
rust-rustix-1.0.5
rust-rustls-0.23.26
rust-rustls-pemfile-2.2.0
rust-rustls-pki-types-1.11.0
rust-rustls-webpki-0.103.1
rust-ryu-1.0.20
rust-same-file-1.0.6
rust-semver-1.0.26
rust-serde-1.0.219
rust-serde-derive-1.0.219
rust-serde-json-1.0.140
rust-serde-spanned-0.6.8
rust-shell-words-1.1.0
rust-shlex-1.3.0
rust-similar-2.7.0
rust-smallbitvec-2.6.0
rust-smallvec-1.15.0
rust-sptr-0.3.2
rust-stable-deref-trait-1.2.0
rust-streaming-iterator-0.1.9
rust-strsim-0.11.1
rust-subtle-2.6.1
rust-syn-2.0.100
rust-synstructure-0.13.1
rust-target-lexicon-0.13.2
rust-tempfile-3.19.1
rust-termcolor-1.4.1
rust-thiserror-1.0.69
rust-thiserror-2.0.12
rust-thiserror-impl-1.0.69
rust-thiserror-impl-2.0.12
rust-thread-local-1.1.8
rust-tiny-http-0.12.0
rust-tinystr-0.7.6
rust-toml-0.8.20
rust-toml-datetime-0.6.8
rust-toml-edit-0.22.24
rust-tracing-0.1.41
rust-tracing-attributes-0.1.28
rust-tracing-core-0.1.33
rust-unicode-ident-1.0.18
rust-unicode-width-0.2.0
rust-unicode-xid-0.2.6
rust-unindent-0.2.4
rust-untrusted-0.9.0
rust-ureq-3.0.10
rust-ureq-proto-0.3.5
rust-url-2.5.4
rust-utf-8-0.7.6
rust-utf16-iter-1.0.5
rust-utf8-width-0.1.7
rust-utf8-iter-1.0.4
rust-utf8parse-0.2.2
rust-vcpkg-0.2.15
rust-version-check-0.9.5
rust-walkdir-2.5.0
rust-wasi-0.11.0+wasi-snapshot-preview1
rust-wasi-0.14.2+wasi-0.2.4
rust-wasm-bindgen-0.2.100
rust-wasm-bindgen-backend-0.2.100
rust-wasm-bindgen-macro-0.2.100
rust-wasm-bindgen-macro-support-0.2.100
rust-wasm-bindgen-shared-0.2.100
rust-wasm-encoder-0.221.3
rust-wasmparser-0.221.3
rust-wasmparser-0.224.1
rust-wasmprinter-0.221.3
rust-wasmtime-29.0.1
rust-wasmtime-asm-macros-29.0.1
rust-wasmtime-c-api-impl-29.0.1
rust-wasmtime-c-api-macros-29.0.1
rust-wasmtime-component-macro-29.0.1
rust-wasmtime-component-util-29.0.1
rust-wasmtime-cranelift-29.0.1
rust-wasmtime-environ-29.0.1
rust-wasmtime-fiber-29.0.1
rust-wasmtime-jit-icache-coherence-29.0.1
rust-wasmtime-math-29.0.1
rust-wasmtime-slab-29.0.1
rust-wasmtime-versioned-export-macros-29.0.1
rust-wasmtime-winch-29.0.1
rust-wasmtime-wit-bindgen-29.0.1
rust-web-sys-0.3.77
rust-webbrowser-1.0.4
rust-webpki-roots-0.26.8
rust-widestring-1.2.0
rust-winapi-util-0.1.9
rust-winch-codegen-29.0.1
rust-windows-sys-0.45.0
rust-windows-sys-0.48.0
rust-windows-sys-0.52.0
rust-windows-sys-0.59.0
rust-windows-targets-0.42.2
rust-windows-targets-0.48.5
rust-windows-targets-0.52.6
rust-windows-aarch64-gnullvm-0.42.2
rust-windows-aarch64-gnullvm-0.48.5
rust-windows-aarch64-gnullvm-0.52.6
rust-windows-aarch64-msvc-0.42.2
rust-windows-aarch64-msvc-0.48.5
rust-windows-aarch64-msvc-0.52.6
rust-windows-i686-gnu-0.42.2
rust-windows-i686-gnu-0.48.5
rust-windows-i686-gnu-0.52.6
rust-windows-i686-gnullvm-0.52.6
rust-windows-i686-msvc-0.42.2
rust-windows-i686-msvc-0.48.5
rust-windows-i686-msvc-0.52.6
rust-windows-x86-64-gnu-0.42.2
rust-windows-x86-64-gnu-0.48.5
rust-windows-x86-64-gnu-0.52.6
rust-windows-x86-64-gnullvm-0.42.2
rust-windows-x86-64-gnullvm-0.48.5
rust-windows-x86-64-gnullvm-0.52.6
rust-windows-x86-64-msvc-0.42.2
rust-windows-x86-64-msvc-0.48.5
rust-windows-x86-64-msvc-0.52.6
rust-winnow-0.7.6
rust-wit-bindgen-rt-0.39.0
rust-wit-parser-0.221.3
rust-write16-1.0.0
rust-writeable-0.5.5
rust-yansi-1.0.1
rust-yoke-0.7.5
rust-yoke-derive-0.7.5
rust-zerocopy-0.7.35
rust-zerocopy-0.8.24
rust-zerocopy-derive-0.7.35
rust-zerocopy-derive-0.8.24
rust-zerofrom-0.1.6
rust-zerofrom-derive-0.1.6
rust-zeroize-1.8.1
rust-zerovec-0.10.4
rust-zerovec-derive-0.10.3))
(uv =>
(list rust-addr2line-0.24.2
rust-adler2-2.0.0

View file

@ -7,6 +7,7 @@
;;; Copyright © 2023, 2024 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023, 2024 Raven Hallsby <karl@hallsby.com>
;;; Copyright © 2024 Foundation Devices, Inc. <hello@foundation.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -102,16 +103,16 @@ Tree-sitter parsing library.")
(define-public tree-sitter
(package
(name "tree-sitter")
(version "0.20.10") ;untagged
(version "0.25.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tree-sitter/tree-sitter")
(commit "0e4ff0bb27edf37b76fc7d35aa768b02cf4392ad")))
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1bai4gdhf8w5p1i9np2kl2ms0jq6rgq98qpiipipzayb9jjjlxcy"))
"0cck2wa17figxww7lb508sgwy9sbyqj89vxci07hiscr5sgdx9y5"))
(modules '((guix build utils)))
(snippet #~(begin
;; Remove bundled ICU parts
@ -121,7 +122,16 @@ Tree-sitter parsing library.")
(arguments
(list #:phases
#~(modify-phases %standard-phases
(delete 'configure))
(delete 'configure)
;; The library uses -fvisibility=hidden to compile, but this
;; symbol is needed by the Rust bindings.
(add-after 'unpack 'patch-_ts_dup-visibility
(lambda _
(substitute* "lib/src/tree.c"
(("int _ts_dup")
(string-append
"int __attribute__ ((visibility (\"default\"))) "
"_ts_dup"))))))
#:tests? #f ; there are no tests for the runtime library
#:make-flags
#~(list (string-append "PREFIX=" #$output)
@ -150,22 +160,35 @@ This package includes the @code{libtree-sitter} runtime library.")
(package
(inherit tree-sitter)
(name "tree-sitter-cli")
(source (origin
(source
(origin
(inherit (package-source tree-sitter))
(snippet
#~(begin
;; Remove the runtime library code and dynamically link to
;; it instead.
(delete-file-recursively "lib/src")
;; Remove the runtime library code and dynamically link to it
;; instead.
(for-each delete-file-recursively
(find-files
"lib/src"
(lambda (file stat)
;; These files are required for building the binding.
(not
(or (string-contains file "parser.h")
(string-contains file "stdlib-symbols.txt"))))))
(delete-file "lib/binding_rust/build.rs")
(with-output-to-file "lib/binding_rust/build.rs"
(lambda _
(format #t "fn main() {~@
println!(\"cargo:rustc-link-lib=tree-sitter\");~@
(format #t "~
use std::{env, fs, path::{Path, PathBuf}};
fn main() {
let out_dir = PathBuf::from(env::var(\"OUT_DIR\").unwrap());
fs::copy(\"src/wasm/stdlib-symbols.txt\",
out_dir.join(\"stdlib-symbols.txt\")).unwrap();
println!(\"cargo:rustc-link-lib=tree-sitter\");
}~%")))))))
(build-system cargo-build-system)
(inputs
(list tree-sitter graphviz node-lts))
(cons* tree-sitter graphviz node-lts (cargo-inputs 'tree-sitter-cli)))
(arguments
(list
#:cargo-test-flags
@ -179,7 +202,6 @@ This package includes the @code{libtree-sitter} runtime library.")
;; good compromise compared to maintaining two different sets of
;; grammars (Guix packages vs test fixtures).
"--skip=tests::corpus_test"
"--skip=tests::github_issue_test"
"--skip=tests::highlight_test"
"--skip=tests::node_test"
"--skip=tests::parser_test"
@ -188,55 +210,32 @@ This package includes the @code{libtree-sitter} runtime library.")
"--skip=tests::tags_test"
"--skip=tests::test_highlight_test"
"--skip=tests::test_tags_test"
"--skip=tests::tree_test")
"--skip=tests::tree_test"
"--skip=tests::async_context_test"
"--skip=tests::text_provider_test"
"--skip=tests::detect_language"
"--skip=tests::language_test"
"--skip=tests::parser_hang_test")
;; We're only packaging the CLI program so we do not need to install
;; sources.
#:install-source? #f
#:cargo-inputs
`(("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-anyhow" ,rust-anyhow-1)
("rust-atty" ,rust-atty-0.2)
("rust-clap" ,rust-clap-2)
("rust-difference" ,rust-difference-2)
("rust-dirs" ,rust-dirs-3)
("rust-html-escape" ,rust-html-escape-0.2)
("rust-libloading" ,rust-libloading-0.7)
("rust-path-slash" ,rust-path-slash-0.2)
("rust-rand" ,rust-rand-0.8)
("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-semver" ,rust-semver-1)
("rust-smallbitvec" ,rust-smallbitvec-2)
("rust-thiserror" ,rust-thiserror-1)
("rust-tiny-http" ,rust-tiny-http-0.12)
("rust-toml" ,rust-toml-0.5)
("rust-walkdir" ,rust-walkdir-2)
("rust-webbrowser" ,rust-webbrowser-0.8)
("rust-which" ,rust-which-4))
#:cargo-development-inputs
`(("rust-ctor" ,rust-ctor-0.1)
("rust-pretty-assertions" ,rust-pretty-assertions-0.7)
("rust-rand" ,rust-rand-0.8)
("rust-tempfile" ,rust-tempfile-3)
("rust-unindent" ,rust-unindent-0.2))
#:cargo-install-paths ''("cli")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-node
(lambda _
(substitute* "cli/src/generate/mod.rs"
(("Command::new\\(\"node\"\\)")
(add-after 'unpack 'patch-references
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cli/generate/src/lib.rs"
(("(js_runtime\\.unwrap_or\\(\")node(\"\\))" _ prefix suffix)
(string-append
"Command::new(\"" #$node-lts "/bin/node\")")))))
(add-after 'unpack 'patch-dot
(lambda _
prefix
(search-input-file inputs "bin/node")
suffix)))
(substitute* "cli/src/util.rs"
(("Command::new\\(\"dot\"\\)")
(string-append
"Command::new(\"" #$graphviz "/bin/dot\")")))))
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin")))
(mkdir-p bin)
(install-file "target/release/tree-sitter" bin)))))))
"Command::new(\""
(search-input-file inputs "bin/dot")
"\")"))))))))
(description "Tree-sitter is a parser generator tool and an incremental
parsing library. It can build a concrete syntax tree for a source file and
efficiently update the syntax tree as the source file is edited.

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2024 Foundation Devices, Inc. <hello@foundation.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -52,6 +53,8 @@ and replace development dependencies with tree-sitter grammar node modules."
(map (match-lambda
(("dependencies" dependencies ...)
'("dependencies"))
(("peerDependencies" peer-dependencies ...)
'("peerDependencies"))
(("devDependencies" dev-dependencies ...)
`("devDependencies"
,@(filter-map (match-lambda
@ -75,14 +78,15 @@ and replace development dependencies with tree-sitter grammar node modules."
(define* (build #:key grammar-directories #:allow-other-keys)
(for-each (lambda (dir)
(with-directory-excursion dir
;; Avoid generating binding code for other languages, we do
;; not support this use-case yet and it relies on running
;; `node-gyp' to build native addons.
(invoke "tree-sitter" "generate" "--no-bindings")))
(invoke "tree-sitter" "generate")))
grammar-directories))
(define* (check #:key grammar-directories tests? #:allow-other-keys)
(define* (check #:key grammar-directories tests? target #:allow-other-keys)
(when tests?
(setenv "CC"
(if target
(string-append target "-gcc")
"gcc"))
(for-each (lambda (dir)
(with-directory-excursion dir
(invoke "tree-sitter" "test")))
@ -111,6 +115,7 @@ and replace development dependencies with tree-sitter grammar node modules."
"-O2"
"-g"
"-o" ,(string-append lib "/libtree-sitter-" lang ".so")
"-Isrc"
;; An additional `scanner.{c,cc}' file is sometimes
;; provided.
,@(cond