Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-tree-sitter for 
openSUSE:Factory checked in at 2025-11-10 19:19:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-tree-sitter (Old)
 and      /work/SRC/openSUSE:Factory/.python-tree-sitter.new.1980 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-tree-sitter"

Mon Nov 10 19:19:27 2025 rev:4 rq:1316815 version:0.25.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-tree-sitter/python-tree-sitter.changes    
2025-08-12 17:04:58.856276460 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-tree-sitter.new.1980/python-tree-sitter.changes
  2025-11-10 19:19:32.029860372 +0100
@@ -1,0 +2,17 @@
+Mon Nov 10 08:21:09 UTC 2025 - Dirk Müller <[email protected]>
+
+- update to 0.25.2:
+  * ci: bump actions/download-artifact from 4 to 5 in the actions
+    group
+  * ci: bump actions/checkout from 4 to 5 in the actions group
+  * build: bump tree_sitter/core from `3624198` to `629093d`
+  * build: properly detect MSVC compiler
+  * ci: bump actions/upload-pages-artifact from 3 to 4 in the
+    actions group
+  * ci: bump actions/setup-python from 5 to 6 in the actions
+    group
+  * build: bump tree_sitter/core from `629093d` to `a467ea8`
+  * fix(parser): fix memleak of source_view
+  * build: bump tree_sitter/core from `a467ea8` to `da6fe9b`
+
+-------------------------------------------------------------------

Old:
----
  tree-sitter-0.25.1.tar.gz

New:
----
  tree-sitter-0.25.2.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-tree-sitter.spec ++++++
--- /var/tmp/diff_new_pack.Hsa6a3/_old  2025-11-10 19:19:32.677887579 +0100
+++ /var/tmp/diff_new_pack.Hsa6a3/_new  2025-11-10 19:19:32.677887579 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-tree-sitter
 #
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2025 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-tree-sitter
-Version:        0.25.1
+Version:        0.25.2
 Release:        0
 Summary:        Python bindings to the Tree-sitter parsing library
 License:        MIT

++++++ tree-sitter-0.25.1.tar.gz -> tree-sitter-0.25.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/PKG-INFO 
new/tree-sitter-0.25.2/PKG-INFO
--- old/tree-sitter-0.25.1/PKG-INFO     2025-08-05 19:09:06.451971500 +0200
+++ new/tree-sitter-0.25.2/PKG-INFO     2025-09-25 19:31:46.131384600 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: tree-sitter
-Version: 0.25.1
+Version: 0.25.2
 Summary: Python bindings to the Tree-sitter parsing library
 Author-email: Max Brunsfeld <[email protected]>
 Project-URL: Homepage, https://tree-sitter.github.io/tree-sitter/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/pyproject.toml 
new/tree-sitter-0.25.2/pyproject.toml
--- old/tree-sitter-0.25.1/pyproject.toml       2025-08-05 19:09:00.000000000 
+0200
+++ new/tree-sitter-0.25.2/pyproject.toml       2025-09-25 19:31:41.000000000 
+0200
@@ -4,7 +4,7 @@
 
 [project]
 name = "tree-sitter"
-version = "0.25.1"
+version = "0.25.2"
 description = "Python bindings to the Tree-sitter parsing library"
 keywords = ["incremental", "parsing", "tree-sitter"]
 classifiers = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/setup.py 
new/tree-sitter-0.25.2/setup.py
--- old/tree-sitter-0.25.1/setup.py     2025-08-05 19:09:00.000000000 +0200
+++ new/tree-sitter-0.25.2/setup.py     2025-09-25 19:31:41.000000000 +0200
@@ -1,20 +1,25 @@
-from os import name as os_name
 from platform import machine
 
 from setuptools import Extension, setup  # type: ignore
+from setuptools.command.build_ext import build_ext
+
+
+class BuildExt(build_ext):
+    def build_extension(self, ext: Extension):
+        if self.compiler.compiler_type != "msvc":
+            ext.extra_compile_args = [
+                "-std=c11",
+                "-fvisibility=hidden",
+                "-Wno-cast-function-type",
+                "-Werror=implicit-function-declaration",
+            ]
+            # FIXME: GCC optimizer bug workaround for #330 & #386
+            if machine().startswith("aarch64"):
+                ext.extra_compile_args.append("--param=early-inlining-insns=9")
+        else:
+            ext.extra_compile_args = ["/std:c11", "/wd4244"]
+        super().build_extension(ext)
 
-if os_name != "nt":
-    cflags = [
-        "-std=c11",
-        "-fvisibility=hidden",
-        "-Wno-cast-function-type",
-        "-Werror=implicit-function-declaration",
-    ]
-    # FIXME: GCC optimizer bug workaround for #330 & #386
-    if machine().startswith("aarch64"):
-        cflags.append("--param=early-inlining-insns=9")
-else:
-    cflags = ["/std:c11", "/wd4244"]
 
 setup(
     packages=["tree_sitter"],
@@ -22,6 +27,9 @@
     package_data={
         "tree_sitter": ["py.typed", "*.pyi"],
     },
+    cmdclass={
+        "build_ext": BuildExt,
+    },
     ext_modules=[
         Extension(
             name="tree_sitter._binding",
@@ -50,7 +58,6 @@
                 ("PY_SSIZE_T_CLEAN", None),
                 ("TREE_SITTER_HIDE_SYMBOLS", None),
             ],
-            extra_compile_args=cflags,
         )
     ],
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/tree_sitter/binding/parser.c 
new/tree-sitter-0.25.2/tree_sitter/binding/parser.c
--- old/tree-sitter-0.25.1/tree_sitter/binding/parser.c 2025-08-05 
19:09:00.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter/binding/parser.c 2025-09-25 
19:31:41.000000000 +0200
@@ -140,6 +140,7 @@
         if (progress_callback_obj != NULL) {
             const char *warning = "The progress_callback is ignored when 
parsing a bytestring";
             if (PyErr_WarnEx(PyExc_UserWarning, warning, 1) < 0) {
+                PyBuffer_Release(&source_view);
                 return NULL;
             }
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/tree-sitter-0.25.1/tree_sitter/core/lib/src/language.c 
new/tree-sitter-0.25.2/tree_sitter/core/lib/src/language.c
--- old/tree-sitter-0.25.1/tree_sitter/core/lib/src/language.c  2025-08-05 
19:09:01.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter/core/lib/src/language.c  2025-09-25 
19:31:42.000000000 +0200
@@ -186,7 +186,7 @@
   uint32_t length,
   bool is_named
 ) {
-  if (!strncmp(string, "ERROR", length)) return ts_builtin_sym_error;
+  if (is_named && !strncmp(string, "ERROR", length)) return 
ts_builtin_sym_error;
   uint16_t count = (uint16_t)ts_language_symbol_count(self);
   for (TSSymbol i = 0; i < count; i++) {
     TSSymbolMetadata metadata = ts_language_symbol_metadata(self, i);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/tree_sitter/core/lib/src/parser.c 
new/tree-sitter-0.25.2/tree_sitter/core/lib/src/parser.c
--- old/tree-sitter-0.25.1/tree_sitter/core/lib/src/parser.c    2025-08-05 
19:09:01.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter/core/lib/src/parser.c    2025-09-25 
19:31:42.000000000 +0200
@@ -396,20 +396,24 @@
 static unsigned ts_parser__external_scanner_serialize(
   TSParser *self
 ) {
+  uint32_t length;
   if (ts_language_is_wasm(self->language)) {
-    return ts_wasm_store_call_scanner_serialize(
+    length = ts_wasm_store_call_scanner_serialize(
       self->wasm_store,
       (uintptr_t)self->external_scanner_payload,
       self->lexer.debug_buffer
     );
+    if (ts_wasm_store_has_error(self->wasm_store)) {
+      self->has_scanner_error = true;
+    }
   } else {
-    uint32_t length = self->language->external_scanner.serialize(
+    length = self->language->external_scanner.serialize(
       self->external_scanner_payload,
       self->lexer.debug_buffer
     );
-    ts_assert(length <= TREE_SITTER_SERIALIZATION_BUFFER_SIZE);
-    return length;
   }
+  ts_assert(length <= TREE_SITTER_SERIALIZATION_BUFFER_SIZE);
+  return length;
 }
 
 static void ts_parser__external_scanner_deserialize(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/tree-sitter-0.25.1/tree_sitter/core/lib/src/portable/endian.h 
new/tree-sitter-0.25.2/tree_sitter/core/lib/src/portable/endian.h
--- old/tree-sitter-0.25.1/tree_sitter/core/lib/src/portable/endian.h   
2025-08-05 19:09:01.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter/core/lib/src/portable/endian.h   
2025-09-25 19:31:42.000000000 +0200
@@ -18,6 +18,7 @@
 #if defined(HAVE_ENDIAN_H) || \
     defined(__linux__) || \
     defined(__GNU__) || \
+    defined(__HAIKU__) || \
     defined(__illumos__) || \
     defined(__NetBSD__) || \
     defined(__OpenBSD__) || \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/tree_sitter/core/lib/src/query.c 
new/tree-sitter-0.25.2/tree_sitter/core/lib/src/query.c
--- old/tree-sitter-0.25.1/tree_sitter/core/lib/src/query.c     2025-08-05 
19:09:01.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter/core/lib/src/query.c     2025-09-25 
19:31:42.000000000 +0200
@@ -1340,7 +1340,12 @@
           // Determine if this hypothetical child node would match the current 
step
           // of the query pattern.
           bool does_match = false;
-          if (visible_symbol) {
+
+          // ERROR nodes can appear anywhere, so if the step is 
+          // looking for an ERROR node, consider it potentially matchable.
+          if (step->symbol == ts_builtin_sym_error) {
+            does_match = true;
+          } else if (visible_symbol) {
             does_match = true;
             if (step->symbol == WILDCARD_SYMBOL) {
               if (
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/tree-sitter-0.25.1/tree_sitter/core/lib/src/wasm_store.c 
new/tree-sitter-0.25.2/tree_sitter/core/lib/src/wasm_store.c
--- old/tree-sitter-0.25.1/tree_sitter/core/lib/src/wasm_store.c        
2025-08-05 19:09:01.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter/core/lib/src/wasm_store.c        
2025-09-25 19:31:42.000000000 +0200
@@ -754,6 +754,7 @@
   wasmtime_val_t stack_pointer_value = WASM_I32_VAL(0);
   wasmtime_global_t stack_pointer_global;
   error = wasmtime_global_new(context, var_i32_type, &stack_pointer_value, 
&stack_pointer_global);
+  wasm_globaltype_delete(var_i32_type);
   ts_assert(!error);
 
   *self = (TSWasmStore) {
@@ -1376,11 +1377,12 @@
       if (symbol == 0) break;
       uint16_t value_count;
       memcpy(&value_count, &memory[wasm_language.alias_map + alias_map_size], 
sizeof(value_count));
+      alias_map_size += sizeof(uint16_t);
       alias_map_size += value_count * sizeof(TSSymbol);
     }
     language->alias_map = copy(
       &memory[wasm_language.alias_map],
-      alias_map_size * sizeof(TSSymbol)
+      alias_map_size
     );
     language->alias_sequences = copy(
       &memory[wasm_language.alias_sequences],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tree-sitter-0.25.1/tree_sitter.egg-info/PKG-INFO 
new/tree-sitter-0.25.2/tree_sitter.egg-info/PKG-INFO
--- old/tree-sitter-0.25.1/tree_sitter.egg-info/PKG-INFO        2025-08-05 
19:09:06.000000000 +0200
+++ new/tree-sitter-0.25.2/tree_sitter.egg-info/PKG-INFO        2025-09-25 
19:31:46.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: tree-sitter
-Version: 0.25.1
+Version: 0.25.2
 Summary: Python bindings to the Tree-sitter parsing library
 Author-email: Max Brunsfeld <[email protected]>
 Project-URL: Homepage, https://tree-sitter.github.io/tree-sitter/

Reply via email to