Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package opentui for openSUSE:Factory checked 
in at 2026-09-16 17:41:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/opentui (Old)
 and      /work/SRC/openSUSE:Factory/.opentui.new.383539 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "opentui"

Wed Sep 16 17:41:18 2026 rev:2 rq:1378041 version:0.4.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/opentui/opentui.changes  2026-08-11 
17:14:26.019176229 +0200
+++ /work/SRC/openSUSE:Factory/.opentui.new.383539/opentui.changes      
2026-09-16 17:42:14.243786000 +0200
@@ -1,0 +2,8 @@
+Mon Sep 14 19:39:50 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Use the tree-sitter-javascript-wasm, -typescript-wasm,
+  -markdown-wasm and -zig-wasm packages for the highlighter's
+  grammar modules: the copies in the source tree become symlinks
+  to them (Requires on the devel subpackage)
+
+-------------------------------------------------------------------

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

Other differences:
------------------
++++++ opentui.spec ++++++
--- /var/tmp/diff_new_pack.tAHqtv/_old  2026-09-16 17:42:15.904855405 +0200
+++ /var/tmp/diff_new_pack.tAHqtv/_new  2026-09-16 17:42:15.905855447 +0200
@@ -54,6 +54,12 @@
 Patch1:         opentui-baseline-cpu.patch
 BuildRequires:  binutils
 BuildRequires:  python3-base
+# The grammar modules the highlighter ships: symlinked to the
+# tree-sitter-<lang>-wasm packages' files below, checked at build time.
+BuildRequires:  tree-sitter-javascript-wasm
+BuildRequires:  tree-sitter-markdown-wasm
+BuildRequires:  tree-sitter-typescript-wasm
+BuildRequires:  tree-sitter-zig-wasm
 BuildRequires:  zig = %{zig_version}
 BuildRequires:  zstd
 Provides:       bundled(miniaudio) = 0.11.24
@@ -74,6 +80,10 @@
 %package        devel
 Summary:        TypeScript sources for OpenTUI
 Requires:       %{name} = %{version}
+Requires:       tree-sitter-javascript-wasm
+Requires:       tree-sitter-markdown-wasm
+Requires:       tree-sitter-typescript-wasm
+Requires:       tree-sitter-zig-wasm
 
 %description    devel
 The TypeScript half of OpenTUI: the core bindings, the keymap library and
@@ -198,6 +208,22 @@
       sed -i 's/"workspace:\*"/"%{version}"/g' package.json )
 done
 
+# The highlighter's grammar modules (tree-sitter-<lang>.wasm) are the
+# tree-sitter-<lang>-wasm packages' files, built from the grammar sources;
+# the copies in the tree become symlinks to them. The queries next to them
+# stay upstream's. Every module in the tree must have a packaged
+# counterpart, so a grammar upstream adds fails here until its package is
+# in BuildRequires and the devel Requires.
+assets=%{buildroot}%{_libdir}/%{name}/@opentui/core/src/lib/tree-sitter/assets
+for wasm in "$assets"/*/tree-sitter-*.wasm; do
+    sys=%{_datadir}/tree-sitter/wasm/$(basename "$wasm")
+    if ! test -f "$sys"; then
+        echo "no packaged module for ${wasm#%{buildroot}}: add its 
tree-sitter-<lang>-wasm package" >&2
+        exit 1
+    fi
+    ln -sf "$sys" "$wasm"
+done
+
 # Nothing above may delete a file the packages advertise. Everything a
 # consumer can import goes through an exports map, so walk them and fail the
 # build rather than shipping a package that resolves to a missing path.

++++++ README.SUSE-maint ++++++
--- /var/tmp/diff_new_pack.tAHqtv/_old  2026-09-16 17:42:15.969858121 +0200
+++ /var/tmp/diff_new_pack.tAHqtv/_new  2026-09-16 17:42:15.976858414 +0200
@@ -57,6 +57,15 @@
    unversioned zig is green on both architectures and is 0.15.2 as well.
    Revisit if that changes.
 
+4. Check the highlighter's grammar modules. packages/core/src/lib/tree-sitter/
+   parsers-config.ts pins the grammar releases upstream downloaded the
+   .wasm files from; the package replaces them with the tree-sitter-<lang>-
+   wasm packages' modules (see "What gets installed"). A grammar upstream
+   adds fails %install until its package exists and is listed; a moved pin
+   means re-checking the highlights.scm/injections.scm next to the module
+   against the packaged grammar version (load the module and the query with
+   web-tree-sitter; a query naming a node the grammar lacks throws).
+
 4. Drop the old tarballs, osc addremove, build, submit.
 
 
@@ -126,6 +135,21 @@
 not noarch, because it sits in the same tree as the native package it has to
 resolve alongside.
 
+One part of that tree is not upstream's file: the syntax highlighter's
+grammar modules, packages/core/src/lib/tree-sitter/assets/<lang>/
+tree-sitter-<lang>.wasm (javascript, typescript, markdown, markdown_inline,
+zig), which upstream commits as downloads from the grammars' releases. The
+distribution builds every tree-sitter grammar to WebAssembly in a
+tree-sitter-<lang>-wasm subpackage (%treesitter_wasm_* macros, clang, lld
+and wasi-libc through the tree-sitter CLI's own wasi-sdk invocation), so
+%install turns those five files into symlinks to /usr/share/tree-sitter/wasm
+and opentui-devel requires the four packages. The loop walks the asset
+directories: a grammar upstream adds fails the build until its package is
+in BuildRequires and the devel Requires. The highlight queries next to the
+modules stay upstream's; they were checked against the packaged grammar
+versions (javascript 0.23.1 and markdown 0.5.3 where upstream pins 0.25.0
+and 0.5.1) when this was introduced, and belong on the bump checklist.
+
 
 The build does not need bun
 ---------------------------

Reply via email to