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-28 10:47:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/opentui (Old)
 and      /work/SRC/openSUSE:Factory/.opentui.new.383539 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "opentui"

Mon Sep 28 10:47:41 2026 rev:3 rq:1380982 version:0.5.12

Changes:
--------
--- /work/SRC/openSUSE:Factory/opentui/opentui.changes  2026-09-16 
17:42:14.243786000 +0200
+++ /work/SRC/openSUSE:Factory/.opentui.new.383539/opentui.changes      
2026-09-28 10:48:29.117062224 +0200
@@ -1,0 +2,26 @@
+Sun Sep 27 15:46:57 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 0.5.12 (opencode v2 pins @opentui/* at exactly this
+  version; the FFI ABI is unversioned so both move together):
+  * Native core now needs Zig 0.16 and lives in packages/native;
+    its Zig dependencies and image libraries ship vendored in-tree
+  * New embedded terminal runtime and native image rendering in
+    the library, plus audio input capture and clipboard support
+  * Per-line text alignment, mouse pointer styles, double/triple
+    click and CJK line wrapping in the TypeScript API
+  * Renderer and input fixes: split-footer resize, transparent
+    terminal backgrounds, markdown tables and hyperlinks, Thai
+    spacing marks and Ghostty wide grapheme widths
+  * Many more fixes and improvements; see upstream's release notes
+    for the full list
+- Drop opentui-build-id.patch (upstream sets the build ID itself)
+  and rework opentui-baseline-cpu.patch for the moved build.zig
+- Retire opentui-zig-deps-0.4.5.tar.zst and opentui_zigdeps: deps
+  are vendored in-tree, unpacked at build time, nothing is fetched
+- Licence now Apache-2.0 AND BSD-3-Clause AND MIT AND
+  (Unlicense OR MIT-0) for the vendored wuffs and libwebp code
+- Skip two X11 clipboard unit tests on aarch64, where they abort
+  the test runner (opentui-aarch64-skip-crashing-x11-tests.patch);
+  create /tmp/.X11-unix in %check for the socket bind test
+
+-------------------------------------------------------------------

Old:
----
  opentui-0.4.5.tar.gz
  opentui-build-id.patch
  opentui-zig-deps-0.4.5.tar.zst
  opentui_zigdeps

New:
----
  opentui-0.5.12.tar.gz
  opentui-aarch64-skip-crashing-x11-tests.patch

----------(Old B)----------
  Old:    for the full list
- Drop opentui-build-id.patch (upstream sets the build ID itself)
  and rework opentui-baseline-cpu.patch for the moved build.zig
----------(Old E)----------

----------(New B)----------
  New:- Skip two X11 clipboard unit tests on aarch64, where they abort
  the test runner (opentui-aarch64-skip-crashing-x11-tests.patch);
  create /tmp/.X11-unix in %check for the socket bind test
----------(New E)----------

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

Other differences:
------------------
++++++ opentui.spec ++++++
--- /var/tmp/diff_new_pack.hJheSX/_old  2026-09-28 10:48:30.469118873 +0200
+++ /var/tmp/diff_new_pack.hJheSX/_new  2026-09-28 10:48:30.471118956 +0200
@@ -22,7 +22,7 @@
 # Upstream's build.zig refuses to run on anything but this exact version, and
 # the Zig releases it brackets are not source compatible, so a range would be
 # a lie. When Factory moves on, this package has to be rebased, not relaxed.
-%global zig_version 0.15.2
+%global zig_version 0.16.0
 # The npm names for the platform the native library is built for. OpenTUI
 # resolves it as @opentui/core-<platform>-<arch>/libopentui.so, using Node's
 # names for both, not the RPM ones.
@@ -33,26 +33,26 @@
 %global node_arch arm64
 %endif
 Name:           opentui
-Version:        0.4.5
+Version:        0.5.12
 Release:        0
 Summary:        Library for building terminal user interfaces
 # OpenTUI itself is MIT. miniaudio is vendored as a single header in
-# packages/core/src/zig/vendor and is dual licensed; yoga and uucode are
-# pulled in as Zig dependencies and are both MIT.
-License:        MIT AND (Unlicense OR MIT-0)
+# packages/native/src/vendor and is dual licensed, as is stb; uucode,
+# ghostty-vt, yoga and lcms2 are MIT; libwebp is BSD-3-Clause and wuffs is
+# Apache-2.0. All of them are compiled into libopentui.so.
+License:        Apache-2.0 AND BSD-3-Clause AND MIT AND (Unlicense OR MIT-0)
 URL:            https://opentui.com
 Source0:        
https://github.com/anomalyco/%{name}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
-# The two Zig dependencies, prepared for an offline build by opentui_zigdeps.
-Source1:        %{name}-zig-deps-%{version}.tar.zst
-Source2:        opentui_zigdeps
-Source3:        README.SUSE-maint
-# Ask the linker for a build ID, without which rpm cannot split a debuginfo
-# package off the library.
-Patch0:         opentui-build-id.patch
-# Without this the library is generated for whatever CPU the build worker has
-# and SIGILLs on older machines of the same architecture.
-Patch1:         opentui-baseline-cpu.patch
+Source1:        README.SUSE-maint
+# The Zig sources moved to packages/native in 0.5.5 and build the library
+# for an explicit triple by default; -Dlibrary-target=native below keeps the
+# host libc and libstdc++, so pin the code generator back to the baseline.
+Patch0:         opentui-baseline-cpu.patch
+# Two X11 clipboard unit tests abort the test runner on aarch64 (see the
+# patch header); skipped there until upstream fixes them.
+Patch1:         opentui-aarch64-skip-crashing-x11-tests.patch
 BuildRequires:  binutils
+BuildRequires:  gzip
 BuildRequires:  python3-base
 # The grammar modules the highlighter ships: symlinked to the
 # tree-sitter-<lang>-wasm packages' files below, checked at build time.
@@ -61,12 +61,16 @@
 BuildRequires:  tree-sitter-typescript-wasm
 BuildRequires:  tree-sitter-zig-wasm
 BuildRequires:  zig = %{zig_version}
-BuildRequires:  zstd
-Provides:       bundled(miniaudio) = 0.11.24
-Provides:       bundled(uucode) = 0.1.0
+Provides:       bundled(ghostty-vt) = 1.3.2
+Provides:       bundled(lcms2) = 2.19.1
+Provides:       bundled(libwebp) = 1.6.0
+Provides:       bundled(miniaudio) = 0.11.22
+Provides:       bundled(stb) = 2.18
+Provides:       bundled(uucode) = 0.2.0
+Provides:       bundled(wuffs) = 0.3
 Provides:       bundled(yoga) = 3.2.1
 # Upstream supports no other architecture: SUPPORTED_TARGETS in
-# packages/core/src/zig/build.zig lists only x86_64 and aarch64.
+# packages/native/build.zig lists only x86_64 and aarch64.
 ExclusiveArch:  x86_64 aarch64
 
 %description
@@ -94,35 +98,36 @@
 what you build against, and nothing installs it to run.
 
 %prep
-%autosetup -p1 -a1 -n %{name}-%{version}
+%autosetup -p1 -n %{name}-%{version}
 
 %build
-# Zig resolves the entries in build.zig.zon over the network unless --system
-# points it at a directory of already-unpacked packages, which is what
-# Source1 is. Both caches have to be inside the build directory as well, or
-# Zig writes to $HOME.
+# The Zig dependencies (yoga, uucode, ghostty) and the image C libraries
+# (lcms2, libwebp, stb, wuffs, miniaudio) are vendored in-tree under
+# packages/native/src/vendor; the archive unpacks to an ignored directory
+# the build then resolves over relative paths, so nothing is fetched.
 export ZIG_GLOBAL_CACHE_DIR="$PWD/.zig-global-cache"
 export ZIG_LOCAL_CACHE_DIR="$PWD/.zig-local-cache"
-zig_deps="$PWD/deps"
 
-cd packages/core/src/zig
-# -Dtarget=native keeps the host's libc and libstdc++, which is what a
-# distribution build wants. What it must not keep is the host's CPU model -
-# see Patch1.
+cd packages/native
+sh scripts/prepare-zig-deps.sh
+# -Dlibrary-target=native keeps the host's libc and libstdc++, which is what
+# a distribution build wants. What it must not keep is the host's CPU model -
+# see Patch0.
 zig build \
-    --system "$zig_deps" \
-    -Dtarget=native \
+    -Dlibrary-target=native \
     -Doptimize=ReleaseFast \
     --verbose
 
 %install
 install -d %{buildroot}%{_libdir}/%{name}/%{native_pkg}
-install -m 0755 packages/core/src/zig/lib/native/libopentui.so \
+# The -Dlibrary-target override below installs to ../lib/<name> next to the
+# default prefix, i.e. packages/native/lib/native, not zig-out.
+install -m 0755 packages/native/lib/native/libopentui.so \
     %{buildroot}%{_libdir}/%{name}/%{native_pkg}/libopentui.so
 
-# The whole point of the explicit -Dtarget above. If a rebase ever puts a
-# host-detected CPU model back, catch it here rather than in a bug report from
-# somebody with an older machine.
+# The whole point of the explicit -Dlibrary-target above. If a rebase ever
+# puts a host-detected CPU model back, catch it here rather than in a bug
+# report from somebody with an older machine.
 %ifarch aarch64
 if objdump -d %{buildroot}%{_libdir}/%{name}/%{native_pkg}/libopentui.so \
         | grep -qE '\s(ldapr|ldaprb|ldaprh|ldapur|stlur|stlurb|stlurh)\s'; then
@@ -184,17 +189,22 @@
 for pkg in core keymap solid; do
     cp -a packages/$pkg %{buildroot}%{_libdir}/%{name}/@opentui/
     ( cd %{buildroot}%{_libdir}/%{name}/@opentui/$pkg
-      rm -rf src/zig src/tests src/benchmark tests examples \
+      rm -rf src/tests src/benchmark src/specs tests examples \
              dev docs bench-before bench-after node_modules \
              tsconfig.json tsconfig.build.json tsconfig.node-test.json
       # scripts/ is mostly upstream's own build and release plumbing, but in
-      # solid it also holds four modules the exports map points at, so drop
+      # solid it also holds five modules the exports map points at (plus
+      # solid-transform.ts, which the bun-plugin entry imports), so drop
       # the plumbing by name rather than the directory.
       rm -f scripts/build.ts scripts/publish.ts scripts/dist-test.ts \
             scripts/standalone-test.ts scripts/test.ts scripts/test-node.ts \
-            scripts/test-node-hook.mjs scripts/test-packed-consumer.ts
+            scripts/test-node-hook.mjs scripts/test-packed-consumer.ts \
+            scripts/bench-js-node.ts scripts/native-symbols.ts \
+            scripts/native-symbols.test.ts scripts/package-native-symbols.ts \
+            scripts/variants.ts scripts/reconciler-benchmark.ts
       rmdir scripts 2>/dev/null || :
       find . -name '*.test.ts' -delete
+      find . -name '__snapshots__' -type d -prune -exec rm -rf {} +
       find . -name '.gitignore' -delete
       # A couple of modules are exported API that also run themselves as a
       # CLI under import.meta.main, so they carry a bun shebang. Nothing here
@@ -257,10 +267,11 @@
 %check
 export ZIG_GLOBAL_CACHE_DIR="$PWD/.zig-global-cache"
 export ZIG_LOCAL_CACHE_DIR="$PWD/.zig-local-cache"
-zig_deps="$PWD/deps"
-cd packages/core/src/zig
+# The X11 clipboard tests bind filesystem sockets under /tmp/.X11-unix,
+# which exists on any X machine but not in the build root.
+mkdir -p /tmp/.X11-unix
+cd packages/native
 zig build test \
-    --system "$zig_deps" \
     --summary all
 
 %files

++++++ README.SUSE-maint ++++++
--- /var/tmp/diff_new_pack.hJheSX/_old  2026-09-28 10:48:30.505120381 +0200
+++ /var/tmp/diff_new_pack.hJheSX/_new  2026-09-28 10:48:30.509120549 +0200
@@ -12,9 +12,9 @@
 Today the only consumer is opencode, which pins the version in the catalog
 block of its top level package.json:
 
-    "@opentui/core": "0.4.5",
-    "@opentui/keymap": "0.4.5",
-    "@opentui/solid": "0.4.5",
+    "@opentui/core": "0.5.12",
+    "@opentui/keymap": "0.5.12",
+    "@opentui/solid": "0.5.12",
 
 So this package tracks that pin, not the newest tag. Bumping ahead of
 opencode produces a library nothing in the distribution can load. When
@@ -32,32 +32,26 @@
        curl -L -o opentui-<version>.tar.gz \
            
https://github.com/anomalyco/opentui/archive/refs/tags/v<version>.tar.gz
 
-2. Regenerate the offline Zig dependency bundle:
-
-       ./opentui_zigdeps <version>
-
-   This writes opentui-zig-deps-<version>.tar.zst. See below for what it is
-   and why the package cannot do without it.
-
-3. Check that the Zig version upstream demands is still the one Factory
+2. Check that the Zig version upstream demands is still the one Factory
    ships. It is a hard equality check in
-   packages/core/src/zig/build.zig:
+   packages/native/build.zig (the Zig sources moved out of
+   packages/core/src/zig in 0.5.5):
 
-       const SUPPORTED_ZIG_VERSIONS = [_]SupportedZigVersion{
-           .{ .major = 0, .minor = 15, .patch = 2 },
-       };
+        const SUPPORTED_ZIG_VERSIONS = [_]SupportedZigVersion{
+            .{ .major = 0, .minor = 16, .patch = 0 },
+        };
 
    and the spec mirrors it in the zig_version global. The check is not
    over-caution on upstream's part: Zig is not source compatible across
    releases. If Factory's zig has moved past what upstream supports, the
    package has to be rebased onto a newer OpenTUI, not relaxed to a range.
 
-   Note that Factory also has versioned zig0.NN packages. This package does
-   not use them: zig0.15 currently fails to build on aarch64, while the
-   unversioned zig is green on both architectures and is 0.15.2 as well.
-   Revisit if that changes.
+   The unversioned zig BuildRequires resolves through the versioned
+   zig0.16 package's Provides: zig = 0.16.0; that indirection is
+   deliberate, so a Factory zig roll only retargets this package once a
+   zig0.16 successor exists.
 
-4. Check the highlighter's grammar modules. packages/core/src/lib/tree-sitter/
+3. 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
@@ -66,31 +60,47 @@
    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.
-
-
-The offline Zig dependency bundle
----------------------------------
-
-packages/core/src/zig/build.zig.zon names two dependencies that Zig would
-otherwise fetch over the network during the build:
-
-    uucode   a tarball, Unicode character data
-    yoga     a git checkout of facebook/yoga at v3.2.1, the flexbox layout
-             engine, whose C++ sources are compiled straight into the library
-
-Neither has dependencies of its own, so the closure is exactly those two.
-
-`zig build --system <dir>` turns fetching off and looks each dependency up as
-<dir>/<hash>, where <hash> is the string already written in build.zig.zon. In
-that mode Zig does not recompute the hash - the distribution is trusted to
-have put the right tree there - which is what makes the bundle possible to
-build without Zig at all. That matters, because the Zig this package needs is
-newer than the one the maintainer's own machine is likely to have.
-
-opentui_zigdeps parses the dependency table out of the release tarball rather
-than hardcoding it, so a bump that changes a URL or a hash is picked up
-instead of silently ignored.
+4. Re-derive the License tag. Everything below is compiled into
+   libopentui.so, so every copyleft or permissive-but-not-MIT licence in
+   the vendored trees belongs in the tag; see "Vendored dependencies".
+
+5. Re-check the two %check workarounds at the bottom of this file. The
+   aarch64 test skip (opentui-aarch64-skip-crashing-x11-tests.patch)
+   goes away if the crash is fixed; the /tmp/.X11-unix mkdir stays as
+   long as the bind test binds filesystem sockets.
+
+6. Drop the old tarballs, osc addremove, build, submit.
+
+
+Vendored dependencies
+----------------------
+
+Everything the native library links is vendored in-tree; the build fetches
+nothing. Two mechanisms, both hash-pinned by upstream:
+
+packages/native/src/vendor/zig-deps.tar.gz holds the Zig dependencies -
+yoga (the flexbox layout engine, v3.2.1, whose C++ sources are compiled
+straight into the library), uucode (Unicode character data, in a ghostty
+and an opentui flavour) and ghostty (the embedded-terminal VT engine,
+1.3.2-dev). %build unpacks it with upstream's own
+packages/native/scripts/prepare-zig-deps.sh into the ignored
+packages/native/zig-deps directory, which build.zig.zon references over
+relative paths. The pins and SHA-256 hashes live in
+packages/native/src/vendor/update-zig-deps.sh; regenerating the archive is
+upstream's `bun run vendor:update:zig`, not a maintainer script, so there
+is no opentui_zigdeps equivalent anymore - the 0.4.5 bundle and script are
+retired.
+
+Next to it, packages/native/src/vendor/ carries the image C libraries as
+plain sources, compiled straight in: lcms2 (2.19.1, MIT), libwebp (1.6.0,
+BSD-3-Clause, decoder subset listed in libwebp/FILES), stb_image and
+stb_image_resize2 (2.18, MIT-or-public-domain), wuffs (wuffs-v0.3.c,
+Apache-2.0) and miniaudio (0.11.22, Unlicense-or-MIT-0). Their updater is
+`bun run vendor:update:images`, driven by vendor/update.sh pins.
+
+None of this is unbundled: the tree-sitter grammar modules stay the one
+exception (see below), everything else has no system counterpart to link
+against.
 
 
 What gets installed, and why it is shaped that way
@@ -156,20 +166,47 @@
 
 Worth knowing, because it is not obvious from upstream's scripts. Upstream
 builds the native library with `bun run build:native`, but all that does is
-shell out to
+unpack the vendored Zig dependencies (prepare-zig-deps.sh, plain shell -
+the spec calls it directly) and shell out to
 
-    cd packages/core/src/zig && zig build -Doptimize=ReleaseFast
+    cd packages/native && zig build -Doptimize=ReleaseFast
 
 and then copy the result into a generated npm package directory. The spec
 does both of those directly, so opentui does not build-depend on bun and is
 not blocked on bun reaching Factory.
 
-`-Dtarget=native` is passed deliberately. Upstream's default for a native
-build is the first entry in SUPPORTED_TARGETS matching the host, which for
-Linux is a glibc-2.17-pinned cross target - Zig would then compile against
-its own bundled libc headers and link against synthesised stubs rather than
-the system glibc. buildSingleTarget passes any unrecognised target string
-straight to std.Target.Query.parse, so "native" is accepted and gives an
-ordinary system build. This also matches openSUSE's own zig macros, whose
-_zig_target defaults to native.
+`-Dlibrary-target=native` is passed deliberately. Upstream's default for a
+native build is the first entry in SUPPORTED_TARGETS matching the host,
+which for Linux is a glibc-2.17-pinned cross target - Zig would then compile
+against its own bundled libc headers and link against synthesised stubs
+rather than the system glibc. buildSingleTarget passes any unrecognised
+target string straight to std.Target.Query.parse, so "native" is accepted
+and gives an ordinary system build. The library lands in
+packages/native/lib/native/ either way; only the triple behind it
+differs.
+
+The baseline-CPU patch (opentui-baseline-cpu.patch) belongs to that flag:
+"native" leaves the CPU model at host detection, so the patch pins it to
+.baseline and %install fails the build if an aarch64 library ever carries
+FEAT_LRCPC instructions again. The old build-ID patch is retired - upstream
+sets lib.build_id itself since 0.5.10.
+
+
+%check workarounds
+------------------
+
+Two, both clipboard-related, both re-check on every bump:
+
+- opentui-aarch64-skip-crashing-x11-tests.patch skips the "expired
+  initial INCR" and "delayed expired INCR" unit tests on aarch64, where
+  they abort the test runner in drivePendingResponse with a null call
+  through the faked xcb_request_check. The crash reproduces outside the
+  build sandbox with pristine sources and the same code is still
+  upstream, so it is an upstream aarch64 bug, not packaging fallout;
+  upstream CI runs x86_64, where the suite passes. Drop the patch (or
+  narrow it) once the crash is gone.
+- %check creates /tmp/.X11-unix before running the suite: the "bare
+  DISPLAY falls back to a filesystem listener" test binds a socket at
+  /tmp/.X11-unix/X<display>, which exists on any X machine but not in
+  the build root, and fails with ENOENT without it.
 

++++++ opentui-0.4.5.tar.gz -> opentui-0.5.12.tar.gz ++++++
/work/SRC/openSUSE:Factory/opentui/opentui-0.4.5.tar.gz 
/work/SRC/openSUSE:Factory/.opentui.new.383539/opentui-0.5.12.tar.gz differ: 
char 14, line 1

++++++ opentui-aarch64-skip-crashing-x11-tests.patch ++++++
Skip two X11 clipboard unit tests that crash the test runner on aarch64

The "expired initial INCR" and "delayed expired INCR" tests in
packages/native/src/clipboard/x11.zig abort with a null indirect call
through the faked xcb_request_check in drivePendingResponse. The crash
reproduces outside the build sandbox with the pristine 0.5.12 sources, so
it is not packaging-introduced, and the identical code and tests are still
present upstream, so there is nothing to cherry-pick. Upstream CI runs
x86_64, where the suite is green; only this architecture is skipped.

The skipped tests cover an INCR-expiry corner of the X11 clipboard
provider; the remaining 30+ clipboard tests still run. Re-evaluate on
rebase: drop this patch if the crash is gone.

Not sent upstream: the failure was found while packaging and needs an
upstream issue with a proper backtrace first.

Index: opentui-0.5.12/packages/native/src/clipboard/x11.zig
===================================================================
--- opentui-0.5.12.orig/packages/native/src/clipboard/x11.zig
+++ opentui-0.5.12/packages/native/src/clipboard/x11.zig
@@ -2335,6 +2335,10 @@
 
 test "X11 expired initial INCR response refuses its delayed checked reply" {
     if (comptime builtin.os.tag != .linux) return error.SkipZigTest;
+    // Downstream-only skip on aarch64: this test crashes the test runner
+    // with a null call through the faked xcb_request_check, while the
+    // identical binary passes on x86_64. Re-evaluate on rebase.
+    if (comptime builtin.cpu.arch == .aarch64) return error.SkipZigTest;
     try clipboard_clock.init();
     var symbols: linux.XcbSymbols = undefined;
     symbols.xcb_poll_for_reply = fakePollForReply;
@@ -2390,6 +2394,9 @@
 
 test "X11 delayed expired INCR response preserves replacement transfer" {
     if (comptime builtin.os.tag != .linux) return error.SkipZigTest;
+    // Downstream-only skip on aarch64: same crash as the expired-initial
+    // INCR test above. Re-evaluate on rebase.
+    if (comptime builtin.cpu.arch == .aarch64) return error.SkipZigTest;
     try clipboard_clock.init();
     var symbols: linux.XcbSymbols = undefined;
     symbols.xcb_poll_for_reply = fakePollForReply;

++++++ opentui-baseline-cpu.patch ++++++
--- /var/tmp/diff_new_pack.hJheSX/_old  2026-09-28 10:48:30.551122308 +0200
+++ /var/tmp/diff_new_pack.hJheSX/_new  2026-09-28 10:48:30.556122518 +0200
@@ -1,16 +1,17 @@
 Build for the architecture baseline, not for the build machine's CPU
 
-build.zig hands the -Dtarget string straight to std.Target.Query.parse, and
-the string "native" leaves cpu_model at .determined_by_arch_os, which for a
-native query means "detect this CPU and enable everything it has".
+build.zig hands the -Dlibrary-target string straight to
+std.Target.Query.parse, and the string "native" leaves cpu_model at
+.determined_by_arch_os, which for a native query means "detect this CPU
+and enable everything it has".
 
 That is right for a developer building for themselves and wrong for a
-distribution, where the build worker and the user are different machines. On
-an aarch64 worker with FEAT_LRCPC (ARMv8.3) the C++ in yoga compiles down to
-ldapr/stlur, and libopentui.so then dies with SIGILL on any older aarch64 -
-ThunderX2, Cortex-A72 and friends - the moment yoga lays out its first node.
-The x86_64 side has the same shape: whatever the worker happens to support
-gets baked in.
+distribution, where the build worker and the user are different machines.
+On an aarch64 worker with FEAT_LRCPC (ARMv8.3) the C++ in yoga compiles
+down to ldapr/stlur, and libopentui.so then dies with SIGILL on any older
+aarch64 - ThunderX2, Cortex-A72 and friends - the moment yoga lays out its
+first node. The x86_64 side has the same shape: whatever the worker
+happens to support gets baked in.
 
 Pin the CPU model to the architecture baseline instead. This only affects
 which instructions the code generator may use; the libc and libstdc++ the
@@ -19,14 +20,14 @@
 publishes to npm, since every entry in SUPPORTED_TARGETS is an explicit
 triple and an explicit triple already resolves to the baseline model.
 
-Not sent upstream: -Dtarget=native meaning "this exact machine" is a
-reasonable default for the audience upstream is building for.
+Not sent upstream: -Dlibrary-target=native meaning "this exact machine"
+is a reasonable default for the audience upstream is building for.
 
-Index: opentui-0.4.5/packages/core/src/zig/build.zig
+Index: opentui-0.5.12/packages/native/build.zig
 ===================================================================
---- opentui-0.4.5.orig/packages/core/src/zig/build.zig
-+++ opentui-0.4.5/packages/core/src/zig/build.zig
-@@ -466,7 +466,11 @@ fn buildTarget(
+--- opentui-0.5.12.orig/packages/native/build.zig
++++ opentui-0.5.12/packages/native/build.zig
+@@ -720,7 +720,11 @@
      build_options: *std.Build.Step.Options,
      macos_sdk_path: ?[]const u8,
  ) !void {
@@ -37,6 +38,6 @@
 +    // that happened to compile it.
 +    target_query.cpu_model = .baseline;
      const target = b.resolveTargetQuery(target_query);
-
+ 
      if (target.result.os.tag == .macos and macos_sdk_path == null) {
 

Reply via email to