[packages/tree-sitter-rust] - added python3 binding

qboosh qboosh at pld-linux.org
Tue Jan 20 18:35:54 CET 2026


commit c00ff28ffc084bd1e28af8294b26c8cf5961524e
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Tue Jan 20 18:35:52 2026 +0100

    - added python3 binding

 tree-sitter-rust.spec | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)
---
diff --git a/tree-sitter-rust.spec b/tree-sitter-rust.spec
index 28cb43b..09155c2 100644
--- a/tree-sitter-rust.spec
+++ b/tree-sitter-rust.spec
@@ -1,3 +1,7 @@
+#
+# Conditional build:
+%bcond_without	python3	# Python 3.x binding
+
 Summary:	Rust grammar for tree-sitter
 Summary(pl.UTF-8):	Gramatyka języka Rust dla tree-sittera
 Name:		tree-sitter-rust
@@ -11,6 +15,11 @@ Source0:	https://github.com/tree-sitter/tree-sitter-rust/archive/v%{version}/%{n
 URL:		https://github.com/tree-sitter/tree-sitter-rust
 # c11
 BuildRequires:	gcc >= 6:4.7
+%if %{with python3}
+BuildRequires:	python3-devel >= 1:3.10
+BuildRequires:	python3-setuptools
+BuildRequires:	python3-wheel
+%endif
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		soname_ver	15.0
@@ -57,6 +66,18 @@ Rust parser for Neovim.
 %description -n neovim-parser-rust -l pl.UTF-8
 Analizator składni języka Rust dla Neovima.
 
+%package -n python3-tree-sitter-rust
+Summary:	Rust parser for Python
+Summary(pl.UTF-8):	Analizator składni języka Rust dla Pythona
+Group:		Libraries/Python
+Requires:	python3-tree-sitter >= 0.24
+
+%description -n python3-tree-sitter-rust
+Rust parser for Python.
+
+%description -n python3-tree-sitter-rust -l pl.UTF-8
+Analizator składni języka Rust dla Pythona.
+
 %prep
 %setup -q
 
@@ -70,6 +91,10 @@ Analizator składni języka Rust dla Neovima.
 	INCLUDEDIR="%{_includedir}" \
 	LIBDIR="%{_libdir}"
 
+%if %{with python3}
+%py3_build
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT%{_libdir}/nvim/parser
@@ -85,6 +110,12 @@ install -d $RPM_BUILD_ROOT%{_libdir}/nvim/parser
 # redundant symlink
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libtree-sitter-rust.so.15
 
+%if %{with python3}
+%py3_install
+
+%{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/tree_sitter_rust/*.c
+%endif
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -109,3 +140,16 @@ rm -rf $RPM_BUILD_ROOT
 %files -n neovim-parser-rust
 %defattr(644,root,root,755)
 %{_libdir}/nvim/parser/rust.so
+
+%if %{with python3}
+%files -n python3-tree-sitter-rust
+%defattr(644,root,root,755)
+%dir %{py3_sitedir}/tree_sitter_rust
+%{py3_sitedir}/tree_sitter_rust/_binding.abi3.so
+%{py3_sitedir}/tree_sitter_rust/__init__.py
+%{py3_sitedir}/tree_sitter_rust/__init__.pyi
+%{py3_sitedir}/tree_sitter_rust/py.typed
+%{py3_sitedir}/tree_sitter_rust/__pycache__
+%{py3_sitedir}/tree_sitter_rust/queries
+%{py3_sitedir}/tree_sitter_rust-%{version}-py*.egg-info
+%endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/tree-sitter-rust.git/commitdiff/c00ff28ffc084bd1e28af8294b26c8cf5961524e



More information about the pld-cvs-commit mailing list