For many many years now, it has been unnecessary to initialize the user
stack pointer before calling main(). TL;DR - %usp comes from the exception
frame and is restored in the syscall stub (always) or rei (if an AST is
pending). For newly-forked processes, those take the non-AST path through
rei, but lwp_trampoline() takes care of it in that case.
PR bin/60099 - Fix unquoted $* ($@) expansion
Make unquoted $* (or $@) when used in a context where field
splitting happens (which requires unquoted of course) generate
the same result, always, as would have been obtained had the
number of params been known, and
$1 $2 $3 ... ${n} (n is the value of $#)
been used instead of $* - so for x$*y, for any strings x & y
(including empty), the equivalent would be
x$1 $2 $3 ... ${n}y
This must hold, whatever the setting of IFS (which affects
how the fields generated are field split after they appear,
but should not affect the generation of those fields).
The bug this fixes is (in practice) never encountered, which is
how it has persisted for so long, and in so many different shells.
The method that was previously used to expand $* in this situation
would work perfectly, if the first character of ${IFS} was an IFS
[28 lines not shown]
Minor cleanups
Cleanup CTLccc char definitions (layout only):
#define [space|tab] consistency, align value column,
add hex equivalents (in comments) for octal char values
Minor changes to comments.
NFC.
Add DEBUG_ONLY() to include anything in DEBUG code
DEBUG_ONLY(x) expands to its arg, which should not contain commas
(outside parens) only in DEBUG mode compiles, most useful for var
declarations, and similar. Nb: code only, not outside functions.
Some cleanups/additions to comments.
By itself, this is a NFC change (until something uses DEBUG_ONLY()
for DEBUG mode code alteration).
PR lib/60111 - Add some bounds checking
As requested by the PR, bounds checking on the two obvious
places I could see where overflow looks possible has been added.
Detected overflow should generate a decode error.
PR 60119 - don't set -o pipefail (revert previous)
I was going to make the setting of the pipefail option check if
the executing shell supports the option or not (all should really,
and up to date dash does - it is a standard option) - but then I
looked at the script, and couldn't find a pipe used anywhere.
The option is useless here. So, bye-bye pipefail.
Reorder slightly for correctness
The "pipefail" option is now a POSIX standard option, move it
from the extensions section to the standard options section.
The (very fake) "r" option is not a standard option, though it
is a command line only "option" - move it away from -s, -c
the other (but standard) command line only options, and to a
section of its own (our first non-standard command line only option).
NFC - the order of options in this definition file is for human
(those who view this file) purposes only, all is reordered by
mkoptions.sh before being included with the shell sources.
Use sh internal char typing, not <ctype.h>
That is, use the internal shell is_digit() rather than isdigit().
No practical functional change (a digit is a digit).
Rather than pmap_boostrap2() returning the address of the lwp0 uarea,
let pmap_bootstrap2() construct the fake exception frame, initialize
lwp0.l_md.md_regs, and return the new lwp0 stack pointer, thus removing
a bunch of duplicated asm code in each platform's locore.s.
XXX amiga and atari TBD, but the changes will be less mechanical.
XXX sun2/sun3/sun3x TBD, require a slightly different set of mechanical
changes.
Update to version 9.2.219.
Changes:
- patch 9.2.0219: call stack can be corrupted
- patch 9.2.0218: visual selection highlighting in X11 GUI is wrong.
- patch 9.2.0217: filetype: cto files are not recognized
- patch 9.2.0216: MS-Windows: Rendering artifacts with DirectX
- patch 9.2.0215: MS-Windows: several tests fail in the Windows CUI.
- patch 9.2.0214: tests: Test_gui_system_term_scroll() is flaky
- patch 9.2.0213: Crash when using a partial or lambda as a clipboard provider
- patch 9.2.0212: MS-Windows: version packing may overflow
- translation(zh): Update the Simplify Chinese translation
- translation: align sponsor menu string spacing
- patch 9.2.0211: possible crash when setting 'winhighlight'
- runtime(fish): Add matchit support to filetype plugin
- patch 9.2.0210: tests: Test_xxd tests are failing
- runtime(doc): Update Italian xxd manpage
- patch 9.2.0209: freeze during wildmenu completion
- patch 9.2.0208: MS-Windows: excessive scroll-behaviour with go+=!
[49 lines not shown]
lowdown: update to 3.0.1.
Only 1 package depends on this.
Version 3.0.1, 2026-03-18
Flesh out -tmdoc to handle macros flush against other words and punctuation, e.g., (*-abcd*):.
Properly format -tmdoc and -tman compact lists, including nested compact lists.
libzim: update to 9.5.1.
Only 3 packages depend on this.
libzim 9.5.1
============
* Eliminated zim::Compressor trapped in an infinite loop scenario (@veloman-yunkan #1047)
* Use windows-2025 CI runner (@kelson42 #1041)
jjui: update to 0.10.2.
Leaf package.
Quick release to continue the release early, release often streak.
Features
Custom diff and preview content — You can now use diff.show() and ui.preview.show() in your Lua actions to display custom command output in the diff and preview panels. (#593)
Bug Fixes
Rebase source + insert between — Rebase now correctly uses -s (source) instead of -r when combining source mode with insert-between. (#598)
Missing actions in status bar — Actions with the same name in different scopes (e.g. revset.edit and revisions.edit) are no longer hidden from the status bar. (#595)
Misaligned lines across terminals — Terminals handle Unicode width calculation differently — Ghostty enables grapheme clustering by default while Kitty does not. We now detect the terminal's width mode and calculate widths accordingly, fixing rendering in both. (#592)
Operation action overrides — Some built-in actions during operations couldn't be overridden in config.lua. For example, revisions.details.diff, revisions.evolog.diff, and revisions.rebase.* actions can now be properly overridden. (#586, #598)
git-delta: update to 0.19.1.
Leaf package.
0.19.1
Fix CD: replace defunct ubuntu-20.04 runners by @dandavison in #2129
0.19.0
Tons of improvements; thanks very much to all delta contributors.