GitHub Releases
https://github.com/
2026-09-21T16:36:38Z
tag:github.com,2008:Repository/77892243/v0.11.0
2026-09-21T16:36:38Z
rush: v0.11.0
<ul>
<li>rush v0.11.0
<ul>
<li><strong>Add <code>--delay</code>, <code>--load</code>, and <code>--memfree</code> to stagger job starts and limit starts by system load or available memory</strong>. Under severe memory pressure, stop and retry the youngest job without using its retry allowance. <a href="https://github.com/shenwei356/rush/issues/65" data-hovercard-type="issue" data-hovercard-url="/shenwei356/rush/issues/65/hovercard">#65</a></li>
<li><strong>Add <code>--pipe</code> to send each <code>-n</code> record batch to the command's standard input</strong>, preserving terminating record delimiters and replaying the batch for retries. <code>--continue</code> distinguishes batches by their input digest. <a href="https://github.com/shenwei356/rush/issues/22" data-hovercard-type="issue" data-hovercard-url="/shenwei356/rush/issues/22/hovercard">#22</a></li>
<li><strong>Keep <code>{#}</code> stable in <code>--continue</code> records when input order changes</strong>. <a href="https://github.com/shenwei356/rush/issues/77" data-hovercard-type="issue" data-hovercard-url="/shenwei356/rush/issues/77/hovercard">#77</a></li>
<li><strong>Keep <code>{?}</code> stable in <code>--continue</code> records when the job count or available CPU count changes</strong>. <a href="https://github.com/shenwei356/rush/issues/74" data-hovercard-type="issue" data-hovercard-url="/shenwei356/rush/issues/74/hovercard">#74</a></li>
<li>Suppress per-command <code>--continue</code> skip logs by default; use <code>--verbose</code> to show them. <a href="https://github.com/shenwei356/rush/issues/78" data-hovercard-type="issue" data-hovercard-url="/shenwei356/rush/issues/78/hovercard">#78</a></li>
<li><code>--eta</code>: Fix progress bar incorrectly showing 100% after interruption with <code>Ctrl+C</code>. Cancelled commands no longer increment the progress bar.</li>
<li><code>--eta</code>: Add "processed jobs" description to clarify that the progress bar shows processed tasks (including both successful and failed commands).</li>
<li>Add a repository-hosted Scoop bucket for Windows builds and update its hashes automatically after stable releases. <a href="https://github.com/shenwei356/rush/issues/67" data-hovercard-type="issue" data-hovercard-url="/shenwei356/rush/issues/67/hovercard">#67</a></li>
</ul>
</li>
</ul>
shenwei356
tag:github.com,2008:Repository/40844023/v0.69.0
2026-09-21T08:20:02Z
jump: 0.69.0
<p>Hello, friends,</p>
<p>This is a major Jump release – a nice round number, with no cultural significance. But that's how we roll around here, version number over substance! Here's what's new:</p>
<ul>
<li>
<p><strong>Zoxide import</strong> <code>jump import zoxide</code> migrates your zoxide database into jump. You traitors can bind jump to <code>cd</code> now. Jump ship and come back to the proper tool. Name over substance!</p>
</li>
<li>
<p><strong>Single-user install script.</strong> Install the latest release for the current user into <code>~/.local/bin</code> with a single command (or tell your friendly agent to):</p>
<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="curl -fsSL https://raw.githubusercontent.com/gsamokovarov/jump/main/install.sh | bash"><pre>curl -fsSL https://raw.githubusercontent.com/gsamokovarov/jump/main/install.sh <span class="pl-k">|</span> bash</pre></div>
</li>
<li>
<p><strong><code>j .</code> works outside git repositories.</strong> Based Mode now resolves its base directory in this order: <code>$JUMP_BASED_PATH</code>, the git repository root, and finally the current directory. Previously <code>j .</code> relied on being inside a git repo, but it now falls back to the current directory. Use Based Mode to work with your <code>.worktree</code>s or live your life <code>.git</code> free!</p>
</li>
<li>
<p><strong>Fish: <code>j -</code> is fixed.</strong> <code>j -</code> was broken in our Fish integration, but now toggles between the two most recently visited directories and keeps fish's built-in <code>prevd</code>/<code>nextd</code> history in sync, mirroring fish's built-in <code>cd -</code> behavior. To a degree.</p>
</li>
<li>
<p><strong>Fish: base directory env var unified to <code>$JUMP_BASED_PATH</code>.</strong> Fish now reads the Based Mode base directory from <code>$JUMP_BASED_PATH</code>, the same variable used by the other shells. If you previously set <code>$JUMP_BASE_DIR</code> in fish, rename it to <code>$JUMP_BASED_PATH</code>. It was a mistake. Not that we ever do them, because this release is PURR-FECT!!!</p>
</li>
</ul>
<p>Or maybe it's not. Tell us (or your agent) and submit an issue or a pull request. Peace! ✌️</p>
gsamokovarov
tag:github.com,2008:Repository/14973783/Nightly
2026-09-21T03:29:24Z
dexed: Nightly
<p>Release updated Mon Sep 21 03:28:59 UTC 2026</p>
<ul>
<li><a href="https://github.com/asb2m10/dexed/commit/1adef6000065041589866a73caeba40659ceb502">1adef60</a> : feat: more textual log message upon sysex</li>
<li><a href="https://github.com/asb2m10/dexed/commit/a12f4b5ba77bb2713977b788a2899d5e57067a4c">a12f4b5</a> : fix: context menu from operators</li>
<li><a href="https://github.com/asb2m10/dexed/commit/9b555c6879156ad6eed9e2931b31f038147fcd87">9b555c6</a> : fix: Apply clipboard data</li>
<li><a href="https://github.com/asb2m10/dexed/commit/9f463ce880d160defe98ac73b5745bcbd3846fa6">9f463ce</a> : fix: horizontal view for parameters</li>
<li><a href="https://github.com/asb2m10/dexed/commit/c8f1bd16bc3b4fe96edfd0b4468b1dd4863df55b">c8f1bd1</a> : Flush sysex output to plugin output</li>
</ul>
asb2m10
tag:github.com,2008:Repository/294977469/v1.9.34
2026-09-21T02:21:19Z
clink: v1.9.34
<ul>
<li>Added new <code>exec.cwd_first</code> setting (off by default) to make Executable Completions list files from the current directory before other files (<a href="https://github.com/chrisant996/clink/issues/794" data-hovercard-type="issue" data-hovercard-url="/chrisant996/clink/issues/794/hovercard">#794</a>).</li>
<li>Updated the <code>clink-diagnostics</code> bindable command to automatically include performance cost details if classifiers, prompts, hinters, or events exceed a small threshold. When automatically showing the cost details, it filters entries with zero costs. Use a numeric argument to include more diagnostic details (e.g. type <kbd>Alt</kbd>-<kbd>1</kbd> or <kbd>Alt</kbd>-<kbd>2</kbd> or etc before invoking the <code>clink-diagnostics</code> command).</li>
<li>Fixed the "small cost threshold" for classifiers and hinters in <code>clink-diagnostics</code> (it was 1000x more sensitive than intended).</li>
<li>Fixed another rare edge case where a Lua script could potentially make Clink miss clearing part of the input display area.</li>
</ul>
chrisant996
tag:github.com,2008:Repository/341787720/latest-commit
2026-09-20T13:07:26Z
diffutils: latest-commit
<p>commit: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/uutils/diffutils/commit/3f7a9a6ff3ee584d1cedbe013ebdebb437ad33b8/hovercard" href="https://github.com/uutils/diffutils/commit/3f7a9a6ff3ee584d1cedbe013ebdebb437ad33b8"><tt>3f7a9a6</tt></a></p>
github-actions[bot]
tag:github.com,2008:Repository/88200328/9.6.25
2026-09-20T05:32:49Z
LibreraReader: 9.6.25
<ul>
<li>Fixed crashes</li>
<li>Cover radius 0-5 (0 returns to old UI style)</li>
</ul>
foobnix
tag:github.com,2008:Repository/373897031/v4.0.1
2026-09-19T19:53:46Z
rclip: v4.0.1
<h2>What's Changed</h2>
<ul>
<li>fix(compliance): fix brew Linux release by ignoring RPATH path components in binary marker scans by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5510043291" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/352" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/352/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/352">#352</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/yurijmikhalevich/rclip/compare/v4.0.0...v4.0.1"><tt>v4.0.0...v4.0.1</tt></a></p>
github-actions[bot]
tag:github.com,2008:Repository/1114168896/0.1.0
2026-09-19T19:52:42Z
ZLSpectrumEqualizer: 0.1.0
<p>After installation, please load the plugin in an empty DAW session and check its functionality.</p>
<blockquote>
<p>WARNING for Linux users: From the next version, the installer will be built on Ubuntu 24.04, which will make it incompatible with older Linux kernel versions. See <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4676239397" data-permission-text="Title is private" data-url="https://github.com/actions/runner-images/issues/14254" data-hovercard-type="issue" data-hovercard-url="/actions/runner-images/issues/14254/hovercard" href="https://github.com/actions/runner-images/issues/14254">actions/runner-images#14254</a></p>
</blockquote>
<blockquote>
<p>WARNING for Pro Tools users: Unfortunately, AAX won't be available in the future.</p>
</blockquote>
<p>BREAKING CHANGES</p>
<ul>
<li>fix incorrect fresh rate reported by internal refresh handler
<ul>
<li>you may notice the FFT analyzer decays in a different speed after the fix</li>
<li>you may need to re-adjust FFT <code>Speed</code> in UI settings</li>
</ul>
</li>
</ul>
<p>Bug fixes</p>
<ul>
<li>fix preset folder permission issue on macOS</li>
<li>fix floating window position when dynamic is ON</li>
<li>fix solo shortcuts regarding right-click</li>
</ul>
<p>New Features</p>
<ul>
<li>add <code>Flat Gain</code> filter type</li>
<li>add gain adjustment during solo
<ul>
<li>to fix the gain as zero, press <code>Ctrl/Command</code> during right-click dragging</li>
</ul>
</li>
<li>add FFT decibel scale maximum selection</li>
</ul>
<p>Other Changes</p>
<ul>
<li>change filter close button to trash icon</li>
<li>improve FFT analyzer precision</li>
</ul>
github-actions[bot]
tag:github.com,2008:Repository/729959292/1.4.0
2026-09-19T19:42:04Z
ZLEqualizer: 1.4.0
<p>After installation, please load the plugin in an empty DAW session and check its functionality.</p>
<blockquote>
<p>WARNING for Linux users: From the next version, the installer will be built on Ubuntu 24.04, which will make it incompatible with older Linux kernel versions. See <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4676239397" data-permission-text="Title is private" data-url="https://github.com/actions/runner-images/issues/14254" data-hovercard-type="issue" data-hovercard-url="/actions/runner-images/issues/14254/hovercard" href="https://github.com/actions/runner-images/issues/14254">actions/runner-images#14254</a></p>
</blockquote>
<blockquote>
<p>WARNING for Pro Tools users: Because of the continuous friction caused by AAX signing, AAX version will not be available since this version.</p>
</blockquote>
<p>Please read</p>
<p>the manual: <a href="https://zl-audio.github.io/plugins/zlequalizer2/" rel="nofollow">https://zl-audio.github.io/plugins/zlequalizer2/</a><br>
the plugin installation help page: <a href="https://zl-audio.github.io/help/plugin_installation/" rel="nofollow">https://zl-audio.github.io/help/plugin_installation/</a></p>
<p>BREAKING CHANGES</p>
<ul>
<li>fix incorrect default/link side-filter type for <code>Tilt Shelf</code> and <code>Flat Tilt</code></li>
<li>fix incorrect fresh rate reported by internal refresh handler
<ul>
<li>you may notice the FFT analyzer decays in a different speed after the fix</li>
<li>you may need to re-adjust FFT <code>Speed</code> in UI settings</li>
</ul>
</li>
</ul>
<p>Bug fixes</p>
<ul>
<li>fix preset folder permission issue on macOS</li>
<li>fix floating window position when dynamic is ON</li>
<li>fix solo shortcuts regarding right-click</li>
</ul>
<p>New Features</p>
<ul>
<li>add <code>Flat Gain</code> filter type</li>
<li>add gain adjustment during solo
<ul>
<li>to fix the gain as zero, press <code>Ctrl/Command</code> during right-click dragging</li>
</ul>
</li>
<li>add FFT decibel scale maximum selection</li>
</ul>
<p>Other Changes</p>
<ul>
<li>change filter close button to trash icon</li>
<li>improve FFT analyzer precision</li>
</ul>
github-actions[bot]
tag:github.com,2008:Repository/348053395/20.3.0
2026-09-19T15:13:46Z
ConvertWithMoss: 20.3.0
<ul>
<li>Many thanks to Douglas Carmichael for plenty of contributions and fixes!</li>
<li>New: Added support for the E-mu Emulator (1981), the first Emulator (HFE, EMUFD, IMG). Written disks are not yet verified on hardware.</li>
<li>New: Added support for the E-mu Emax and Emax II (EM1, EB1, EM2, EB2, EM1FD, EM2FD, EZ1, EZ2, IMG, ISO, HFE). Written banks are not yet verified on hardware.</li>
<li>New: Added support for the sample instruments of the Sequential Prophet X / XL (GRP, ZIP): the instrument folders with their group file and the ZIP archives which the device imports from a USB drive, as written by the mapping utility of 8Dio and by PXToolkit. Reading was verified on a third-party sample pack; written instruments follow the same conventions but are not yet verified on hardware.</li>
<li>New: If no category could be detected, another attempt is made by using all group and zone names.</li>
<li>New: The fixed loop cross-fade of the processing options can be set on only the loops which click ('Only loops which click', <code>-Zlc</code> together with <code>-Zl</code> on the command line). The loops which the note about clicking loops reports get the cross-fade - after they were snapped to zero-crossings, if that is enabled, so only the loops which snapping could not fix - and all other loops keep what they have, including their own cross-fades. Since a cross-fade blends the end of the loop with the audio in front of the loop start, it is limited to the audio which is there. Converted to Waldorf Quantum/Iridium with 8%, Espen Kraft's 'DX Dreams' gets a cross-fade on 18 of its 2,336 loops in 12 presets, where the fixed cross-fade sets all of them, and the notes about clicking loops are gone; without the option the output is unchanged.</li>
<li>Fixed: That attempt crashed when a group has no name, which e.g. the round-robin groups of an Elektron Tonverk preset do not have: the preset was skipped with 'Cannot invoke "String.split(String)" because the return value of "IGroup.getName()" is null' whenever the file and folder names gave no category, e.g. when converting a single preset file.</li>
<li>Fixed: The main window had a minimum size of 1280x840 pixels and therefore did not fit onto smaller screens like the 1366x768 pixels of many laptops - it opened larger than the screen and could not be made smaller. The minimum and the initial size of the window are now limited to the visible area of the screen.</li>
<li>Fixed: 32-bit float samples (e.g. the WAV files which DirectWave writes) were always converted to 16 bit, even though the log announced the 24 bit of the destination format. A float sample is now converted to the highest resolution the destination supports - 24 bit for e.g. SoundFont 2, Bliss, Tonverk, DirectWave and FLAC, 32 bit for ALAC - and keeps its float format for destinations without a restriction, e.g. when only the chunks of a WAV file are updated.</li>
<li>Fixed: Sample search did only search upwards but not downwards from the current directory.</li>
<li>Fixed: Ignore very short loops (1-2 samples) stored in WAV sample chunks.</li>
<li>Fixed: Converting the sample frequency of a sample made seamless loops click at every repeat - with the processing options as well as for a destination which converts it itself (e.g. Waldorf Quantum/Iridium, Yamaha YSFC, Roland MC-707 and MV-8000). The frames behind the loop end are not the frames which are played after it, but the conversion mixed them into the end of the loop, and a loop rarely has a whole number of frames at the new frequency, so its end moved against its waveform. A loop is now converted as the repeating audio it is and stretched to a whole number of frames, which changes its pitch by less than a quarter of a cent for a loop of 4096 frames. Espen Kraft's 'PX Vol. 2 Digital Voices' (1,129 stereo loops, measured in each channel, with the loop end of the SoundFonts read correctly - see SoundFont 2) converted from 48 kHz to 44.1 kHz: 493 of the 2,258 loop channels clicked and 103 do now, as many as at 48 kHz (115); written by the Waldorf Quantum/Iridium destination without processing, 342 of its 1,145 looped sample map entries clicked and 100 do now. Samples without a loop are converted exactly as before.</li>
<li>Fixed: 'Snap loops to zero-crossings' broke loops which were fine. It moved the loop start and the loop end independently to zero-crossings of the mixed channels, which changes the length of the loop, and applied it whenever the two values came closer together. On the same library it moved 862 of the 1,129 loops and then 613 of the 2,258 loop channels clicked instead of 103. Now only a loop which clicks is moved - to a nearby zero-crossing or to where the waveform continues best, whichever clicks less - and only if that clearly reduces the click, measured in every channel; a loop with a cross-fade is left alone. Now 32 click and none of them was clean before; of the 105 loops of Espen Kraft's 'Digital Collection Vol. 1' without their cross-fades 68 click instead of 94 with the old method. The option is therefore now called 'Snap loops which click'.</li>
<li>Fixed: 'Trim sample start/end' cut off the last frame of a loop which ends before the end of the sample.</li>
<li>Fixed: AIFF files with a chunk of an odd length in front of their sound data - e.g. an author chunk of 13 characters - could not be read. The audio system of Java does not skip the pad byte which follows such a chunk and rejects the file, so the conversion failed with 'Could not retrieve audio file format' or wrote the sample as an empty file ('Resetting to invalid mark'). The format and the audio of such a file are now read from its chunks, as they already were for AIFC files. On the test machine this affected the 45 samples of the 'EmptyVessel' factory presets of TAL-Sampler, which now convert to exactly the audio which macOS decodes from them; the other 974 AIFF files convert as before.</li>
<li>Fixed: A file name could contain a character which a shell or the Windows command processor expands before the file is ever opened - the back-tick, the dollar sign, the semicolon and the percent sign. A converted library is copied to a card, renamed, backed up and read by scripts, and the back-tick substitutes a command, so the E-mu Xtreme Lead 1 preset named "4AM` Flyin'" was written as a preset file and a sample folder which carry it. The apostrophe and the ampersand were already replaced for the same reason, and these four now are as well. The number sign is kept - it is part of almost every note name - and so are the exclamation mark, which only an interactive shell expands, and the tilde, which only expands where it starts a path. Only the names of files and folders are affected: the name a device displays still carries the characters of the source.</li>
<li>Fixed: The destination was not asked whether it can work with the processing options when converting from the command line - only the graphical interface asked it. A destination which cannot use an option now reports that on the command line as well.</li>
<li>Fixed: Zones which the source panned hard left and right were combined into stereo samples even when they were not the two channels of one recording. A sound which layers the same mono samples hard panned and detuned against each other - a common way to create a wide pad - became a dual mono file of twice the size and lost the tuning of one of its two layers. Only zones which reference two different samples and share their tuning are combined now, all others are kept as the separate layers they are. The 'Super Pad' of the E-mu Xtreme Lead 1 library for example arrives at the Waldorf Quantum/Iridium as two oscillators panned left and right and detuned by -4 and +4 cent, the way the source has it, instead of one centred oscillator which plays the same sample on both channels.</li>
<li>Fixed: Two sets of hard panned zones which do not map alike - e.g. two velocity layers, one panned hard left and one hard right - were combined into stereo samples as well. The left and the right zones were paired by their order alone, so a pair could consist of zones with different key or velocity ranges; the two channels of one recording share their key range, root note, velocity range, play range and tuning, and only such pairs are combined now. The name of a combined zone was the part which the names of its two channels share at their start, which is nothing when the channel is marked at the start ('L Piano C3', 'R Piano C3') - every combined zone was then named the same and wrote one and the same sample file, so the patch played a single sample on every key. The shared part is now taken from the end of the names as well, and a name which is not shared at all is kept as the one of the left channel.</li>
<li>Fixed: A zone whose sample is FLAC or OGG had no play range, so destinations which write one wrote the -1 of an unset range. Every sample format fills the play range of a zone in when the source format does not supply one - the length of the audio - but the FLAC and the OGG reader did not, since neither format stores a root key or loops and there seemed to be nothing to add. Converting FLAC or OGG sources therefore wrote -1 as the sample end into Korg KMP/KSF and Reason SXT (as 0xFFFFFFFF), as the slice start and end of an Akai MPC keygroup, and into the Kontakt NKI; the TAL Sampler sums the length of all zones for its amplitude release, which came out negative and clamped the release to its maximum; SoundFont-style destinations like SFZ and Bitwig left the sample end out altogether. The two readers now fill the play range in like the WAV, AIFF, CAF and NCW readers already do.</li>
<li>Fixed: The keywords of a preset were matched as parts of words, so a harp got the keyword 'arp', a trumpet 'mpe', a harmonica 'harmonic' and a harpsichord 'chord'. A keyword now has to be a whole word of the name, of the folder names or of the description; the words of a compound name like 'PPG_PadSlow3WaveWideST' count as well. Destinations which write the keywords, e.g. the attributes of a Waldorf Quantum/Iridium patch, no longer show them.</li>
<li>Fixed: Every word of a folder name which is a keyword was given to all presets in the folder, even when the folder name is the title of a library and not a description of its sounds. All presets of Espen Kraft's 'The Digital Collection' got the keyword 'digital' - a Waldorf Quantum/Iridium shows it as the attribute 'Digital' - the strings of Vol. 6 as well, which were sampled from an Oberheim Matrix-12, an analog synthesizer. Whether a volume got it depended only on how its download folder was named. A folder name now provides keywords only if all of its words are keywords or category names, like 'Digital', 'Mono' or 'Analog Synths', whichever folder is selected as the source. Of 975 presets from 12 libraries, 'digital' was removed from the 367 of the four volumes whose folder names carry the word and of 'PX Vol. 2 Digital Voices', and 'poly' from one preset; no category changed. With 'Category from name prefix' the name of the preset is now checked before the folder names, as documented: 2 of 921 presets change, e.g. 'Flute Pad' in the folder 'STRINGS PADS' is now Pipe instead of Strings.</li>
<li>Fixed: The name of a folder decided the category of all presets in it even when it is the title of a library, since the longest category keyword wins: 'Prophet' in 'Espen Kraft TAL The digital collection Vol4 Sequential Prophet VS' made synthesizers of 'Bass 1', 'Bells 1', 'Choir 1', 'Organ 1' and 'Piano 1', 'Voices' in 'Espen Kraft PX Vol 2 Digital Voices 43 patches SF2' made vocals of 'D-50 EP Classic' and 'D-50 Dry Organ', and the 'str' of the folder 'Sampler Instruments' of E-mu's 'Planet Earth' (Logic EXS24) made strings of its drum kits. As for the keywords, only a folder name which describes the sound of its content takes part now. The last attempt, which uses the names of the groups and zones, read note names as organs, since the letters and digits of a name were not separated: the 'c3' of the sample 'S_000_060_c3' is the Hammond C3 of the organ category. Now they are separate words. Of 2,521 presets of 26 libraries in 7 formats, 423 changed their category: 321 lost a wrong one and are left without a category when their names carry none, 102 got the one of their names or of a describing folder, like 'Bass 1' Bass and 'Earth Kit 01' Drum. A category keyword inside another word still matches, e.g. 'Prima Domra' is a snare (from 'prima').</li>
<li>Fixed: 'Wave' was a keyword of the Chip category, so every sound whose name or folder contains it - the wavetable synthesizers Waldorf Microwave, PPG Wave and Korg Wavestation among them - was categorized as Chip unless a longer keyword matched: 27 of the 50 presets in the 'Waldorf MicroWaveXT' folder of Espen Kraft's 'Digital Collection Vol. 7' came out as Chip, e.g. 'MWIIXT Mellow Pad', 'PPG Wavetable Sawmill' of Vol. 1 as well, and 162 of the 214 presets of the 'BlueWave' pack, whose folder carries the word. The Chip category now recognizes Chiptune, Computer, Gameboy, Nintendo, Commodore, Arcade, 8-Bit, Atari, Amiga, C64 and CPU instead.</li>
<li>Ableton
<ul>
<li>Fixed: A filter whose resonance is not stored in the preset got a resonance of 16,000 on a scale of 0 to 1 - the default of the cutoff frequency had been copied - which a destination like the Waldorf Quantum/Iridium writes as it is; the default is now 0. The amount of the filter envelope (+-72 semitones in Simpler) was read and written with 72 semitones as the full depth of the model instead of its 120, so an envelope of e.g. 36 semitones arrived as one of 60 semitones at a destination which applies the depth of the model.</li>
</ul>
</li>
<li>Akai MPC
<ul>
<li>Fixed: Writing a sample chunk is now enabled by default. It seems that the MPC is always reading the loop data from the chunk.</li>
<li>Fixed: Writing/reading XTY format was off by 1 semitone.</li>
<li>Fixed: Writing XTY used a template which had a panning of +13 and a reverb effect. Panning is now centered and the reverb effect has been removed.</li>
<li>Fixed: Creator configuration was not always stored.</li>
</ul>
</li>
<li>Akai MPC500/MPC1000/MPC2500
<ul>
<li>Fixed: The length of a sample was rounded down to whole seconds before it became the release of a one-shot pad, so every one-shot shorter than a second got a release of 0 seconds - which a destination with an amplitude envelope cuts off at note-off - and a longer one a release up to a second too short.</li>
</ul>
</li>
<li>Akai S900/S950
<ul>
<li>Fixed: The vibrato depth was converted ten times too deep: the full depth of the sampler is 3 semitones, but it was written as a quarter of the 120 semitones of the model, so a program with a vibrato arrived on a Waldorf Iridium with a wobble of the 24 semitones its pitch modulation allows at most.</li>
</ul>
</li>
<li>Akai S-1000/S-3000
<ul>
<li>New: The octave shift, the stereo level and the stereo pan of a program are converted (also for MESA S3P files). A program which is shifted by one or two octaves was converted at its unshifted pitch; the level (0-99) and the pan (-50..50) of the program in the stereo mix are applied on top of the levels and pans of its key-groups.</li>
</ul>
</li>
<li>Audiomodern Soundbox
<ul>
<li>Fixed: Every sample position of a pack whose samples are FLAC was lost, which made converted presets silent on some destinations. The positions of a sound are fractions of the length of its sample, and the frame count they were multiplied with was taken from the zone, where only a WAV sample fills it in - for FLAC it was still -1. Every trimmed sample start was dropped and every loop became a loop of zero length at the start of the sample, which e.g. a Waldorf Iridium plays as silence. The frame count now comes from the audio metadata, which every sample format supplies. The packs of the factory corpus hold WAV and were not affected; in the 'Wired' pack, which holds FLAC, 743 of the 1553 zones had such a loop.</li>
<li>Fixed: The band-pass and the high-pass of a filter effect were swapped, which silenced converted presets. The plug-in stores the filter type as a juce::dsp::StateVariableTPTFilterType (0 = low-pass, 1 = band-pass, 2 = high-pass) and not in the assumed low-pass/high-pass/band-pass order, so e.g. the high-pass at 62 Hz which the 'Wired' pack puts on many of its pads - a plain rumble filter - became a band-pass at 62 Hz, which removes practically the whole sound. The three types the plug-in has are now read and written with their own indices; a band-rejection, which the plug-in cannot store, is written as its low-pass default.</li>
</ul>
</li>
<li>Casio FZ
<ul>
<li>Fixed: The levels of the filter envelope were scaled twice: its depth was set to the highest level of its stages, but the stage levels were still taken as fractions of the full range instead of that highest level, so an envelope which peaks below the full range sustained lower than the voice does - at a quarter of the range instead of the half for a peak of 128 and a sustain of 64. The stage levels are now relative to the peak.</li>
</ul>
</li>
<li>E-mu Emax
<ul>
<li>New: The LFO modulation of the filter cutoff is read and written (the LFO to cutoff amount, 340 cents per step); before, only the vibrato and the tremolo of the LFO were converted.</li>
</ul>
</li>
<li>E-mu Emulator II
<ul>
<li>New: Writing of Emulator II disks (HFE, EMUIIFD): each multi-sample becomes a preset of the bank, several of them as a library on one disk, with the voices of the key ranges, second voices, loops and the companded audio at 27,777 Hz. The settings of the voices are not decoded and are taken from a voice of the factory library; the operating system is copied from a system file or a disk image named in the settings. Not yet verified on hardware.</li>
<li>New: Bank files (EII) are read: the bank memory alone, without the operating system, as the Sound Designer software of 1985 received it from the sampler, as the EMXP tools extract and write it and as Arturia's Emulator II V imports it.</li>
<li>New: The settings of the voices are converted: the 4-pole low-pass filter with cutoff, Q, keyboard tracking, envelope and velocity amount, the amplitude envelope with its velocity amounts on the level and the attack, the LFO with rate, delay and its depths on pitch, filter and level, the fine tuning and the level. The bytes hold them the way the playback engine uses them - velocity tables, envelope counters, pointers into depth tables - and were decoded by aligning 9,563 voice records of the factory and OMI libraries with the SoundFont conversions which EMXP made of the same banks; read from the disk and read from those SoundFonts, the 512 presets of the factory library agree on 96-99% of their cutoffs, envelope times, sustains, velocity depths, tunings and levels (the rest are EMXP's own quirks). The chorus of a voice is not converted.</li>
<li>Fixed: Disks written by the sampler itself could not be read at all - only images which the HxC tools generated from raw dumps. The Emulator II writes the header and the data field of a track separately and the data field starts half a byte earlier than the published track description says, which the byte-aligned decoder never found. The decoder now works on the flux pulses and re-synchronizes on each mark; all 160 tracks of each of the 90 factory disks decode with valid checksums, and the older images still do.</li>
<li>Fixed: Every converted preset was an octave too low and shifted by ten keys. The key map was read with the lowest key at MIDI note 26 and the transposition value 0x0E as unity; the six voices of the factory disk 'Grand Piano', whose names state their pitch, prove the lowest key to be C2 (36) and the unity value to be 0x10.</li>
<li>Fixed: Only the working copy of the selected preset was read, so a disk with several presets gave one of them and a disk whose selected preset was empty gave nothing. The preset records are now decoded - the factory disks hold up to 18 presets and 605 in total instead of 84 - including the second voice which a key range can play, which becomes a second group.</li>
<li>Fixed: The loop of every voice was converted whether it was switched on or not, so plucked and struck voices looped their first period. The loop flag is now read; the loop of a voice may reach beyond its sample end, which the memory slot of the voice reserves room for, and the audio is read up to the end of the loop.</li>
<li>Fixed: A voice whose audio reaches beyond the end of the disk was skipped with a note; the audio which is on the disk is now used.</li>
<li>Fixed: Nearly every looped voice lost its loop, and with it the end of its audio. The loop switch is bit 2 of the voice flags and not bit 1, and the field which was read as the sample end is the loop start: on the Emulator II the loop is the end of a voice - the audio in front of it plays once, the loop repeats. 3,311 of the 3,848 voices of the factory library are looped and the reading agrees with the playback counters which the sampler stores next to the fields on all of them; before, 274 voices looped their beginning and all others ended at their loop start. Voices which start their playback later than their memory begins - the sustain-only layers of the stacked strings - and voices which are windows into a recording they share ('Mallet Cymbals') are read as the sampler plays them.</li>
<li>Fixed: A bank was reported to continue on another disk when a voice reached beyond the disk. The sampler saves 485,888 bytes of bank memory, from its address 0x9600 to the end of its 512 KB, and the last 8,704 bytes of the bank region of a disk are always blank - they were read as audio. A voice which was sampled into the memory behind that - 124 voices on 32 of the 90 factory disks - is cut there and noted; the rest of its audio is on no disk, a bank on two disks does not exist.</li>
<li>Fixed: The presets behind a preset whose name holds characters outside ASCII were lost - the copyright presets with which the Northstar and OMI libraries sign their banks ('p&c© 1986 N*') stopped the reading of the preset chain, which cost 142 of the 1,481 banks of the community library 792 presets ('Bamboo Flute Fx': 2 of 10). A preset record is now recognised by its structure (header and key ranges) and the names are decoded with the Mac Roman characters which the Sound Designer software wrote; a stray control character at the end of a name no longer turns a voice into 'Voice n'. Voices which no preset plays are no longer counted in the note about the bank memory.</li>
<li>Fixed: Written disks laid the loop out the same wrong way and flagged voices without a loop as looped. The audio of a voice is now written up to the end of its loop and the records match the factory library; still not verified on hardware.</li>
<li>Fixed: The end of a loop lay one frame behind the audio of its voice. A voice stores the loop start and the loop length - the number of frames of the loop, whose last frame is also the last frame of the voice - but the start plus the length was taken as the last frame of the loop. Written disks dropped that last frame from the audio and stored a loop one frame shorter than the source loop.</li>
</ul>
</li>
<li>E-mu Emulator III
<ul>
<li>New: The 'Reverse Playback' flag of a sample is now read and applied to its zones.</li>
<li>New: The tremolo (LFO to VCA) and the LFO modulation of the filter cutoff are read; the Emulator III documentation gives no depth for a full amount, so they are scaled like the LFO depths of the Emax, whose steps are known. The vibrato was read but never written: the shape, the rate, the delay and the three amounts of the LFO are now written as well, so a conversion between Emulator III banks keeps them.</li>
<li>Fixed: Every loop was read one frame too long, which makes a seamless loop click in the converted preset. The loop end of a sample is stored as the last frame of the loop, and one frame was added to it. That frame had been found by measuring the step from the loop end to the loop start, which is smallest one frame too late since a seamless loop repeats its first frame behind its last one; the curvature across the seam is smallest at the stored frame itself (library CD-ROMs 'ESI-32 General MIDI' and 'Analog Odyssey', 300 loops each).</li>
<li>Fixed: Forward/backward ('fwd/bkwd') loops of Emulator III banks were lost. The loop type of a sample is a 2 bit field - 0: off, 1: forward, 2: forward/backward - and only the forward bit was tested, so a forward/backward sample was converted as not looped at all. Such loops are now read as alternating loops, which destinations that support them play as intended (e.g. TAL Sampler as a ping-pong loop). The field layout was verified against the sampler's OS 2.42 firmware; only the original Emulator III knows this loop type, the Emulator IIIX and ESI have dropped it.</li>
</ul>
</li>
<li>E-mu Emulator IV
<ul>
<li>New: The velocity to filter cutoff modulation (the velocity to filter frequency cord, slot 4 of the EOS default cord set) is read and written.</li>
<li>Fixed: Every loop was read one frame too long, which makes a seamless loop click in the converted preset - the same mistake as for the Emulator III, whose sample structure the format uses. The curvature across the loop seam is smallest at the stored frame for 261 of 300 loops of the 'Analogia' CD-ROM. Reading a factory bank and writing it again now reproduces its loop positions exactly; before, every loop end grew by one frame.</li>
</ul>
</li>
<li>E-mu Emulator X
<ul>
<li>New: The velocity to VCF attack amount of a voice is read: the low nibble of the byte whose high nibble holds the velocity to VCA attack amount, set on exactly the 199 factory voices whose VCF attack table varies with the velocity.</li>
<li>New: The velocity to filter cutoff modulation cord is read and written.</li>
<li>New: A written voice carries the fine tuning, the level and the velocity to level amount of its zone instead of the ones of the template voice, which played every voice about 6 dB down and without velocity sensitivity. The 16 entries of the level table run linearly from the level at the highest velocity to the one at the lowest, as the sampler fills them on all 2,935 factory voices with a velocity range. The other settings of a voice are still taken from the template.</li>
<li>Fixed: Every loop was read one frame too long and written one frame too short. The loop end of the model is the last frame of the loop, but it was handled as the frame behind the loop. The header of a sample stores the last frame of the loop and its marker trailer the frame behind it, which is what the sample files of the factory banks hold: all 2002 looped samples written from the 'Vintage Keys' bank now match them, and the curvature across the loop seams of that bank is smallest at the stored frame.</li>
</ul>
</li>
<li>Elektron Tonverk Preset
<ul>
<li>Fixed: A sample which could not be found was reported once for every key-zone which is cut out of it - a Multi preset which spreads one WAV file across the keyboard gave a dozen identical lines. A missing sample is now reported once per preset, and a preset none of whose samples could be found is reported as skipped.</li>
<li>Fixed: The samples which alternate on successive notes within one velocity layer (round robins) were converted as layers which sound at the same time - the five round robins of a key became five stacked layers, which e.g. the Waldorf Quantum/Iridium spread over three oscillators and played three at once on the lowest keys. Also for elmulti files.</li>
</ul>
</li>
<li>Logic EXS24
<ul>
<li>Fixed: Instruments which are stored in the big-endian variant of the format could not be read at all - the log only said 'Unknown magic tag'. Those files flag the type byte of a block with 0x80 and additionally set bit 15 of its size, so the very first block was read 32,768 bytes too long and swallowed all of the following ones. The flag is now masked out and such an instrument reads completely: e.g. the 'Muted Electric Bass' and 'Muted Electric Guitar' instruments of the Logic library give their 218 and 125 zones with their groups, velocity ranges, loops, envelopes and filter.</li>
<li>Fixed: An instrument whose zones share their samples never finished being analysed. The sample file of a zone was searched for, opened and - if it is compressed - decoded again for every single zone, and Logic instruments with consolidated samples map all of their zones into one file: the 'Erhu' instrument of the Logic library has 6,083 zones which all play one 17 minute AAC-compressed CAF file, which meant 6,083 decodes of the same audio. Each sample of an instrument is now looked up and read once, which converts that instrument in about a minute; a sample which cannot be found is likewise reported once instead of once per zone.</li>
<li>Fixed: A block of type 5, which Logic writes behind the parameters block of some instruments, was reported as an unknown block type. It holds tagged records of float values which do not belong to the multi-sample and is now skipped silently.</li>
</ul>
</li>
<li>NI Kontakt
<ul>
<li>Fixed: Fixed a null pointer exception reading Kontakt 1 NKIs which was introduced in 20.2.</li>
<li>Fixed: Prevent adding duplicated website info to metadata description (reading Kontakt 2 - 4.2).</li>
<li>Fixed: An instrument with the 'Wave' icon - the waveform, Kontakt's generic icon of a sampled sound - was categorized as Chip. Like an instrument with the 'New' icon it is now categorized from its name and folder.</li>
</ul>
</li>
<li>Renoise
<ul>
<li>New: The 'Map key to pitch' switch of a sample is read and written. A drum kit whose samples do not follow the key was converted as a chromatic instrument, and the switch was always written as on.</li>
</ul>
</li>
<li>Roland S-10 Series
<ul>
<li>Fixed: The vibrato depth was converted as if the full depth of the model were 2 octaves instead of 10, five times too deep, and a layer which is enabled for the vibrato kept the full depth of 10 octaves when the performance parameters of the disk are missing.</li>
</ul>
</li>
<li>Roland SP-404MK2
<ul>
<li>Fixed: The loop of a pad which loops the whole sample ended one frame behind the sample, e.g. 0..144000 for a sample of 144000 frames. It ends at the last frame of the sample now.</li>
</ul>
</li>
<li>Roland MC-707/MC-101
<ul>
<li>New: The pitch key follow of a partial (100 = chromatic, 0 = the same pitch on every key) is read and written, and the keys of a written drum kit which play a zone without key tracking all get the pitch of its root key.</li>
<li>Fixed: A stereo sample was read and written with its two channels interleaved, but the project stores all frames of the left channel followed by all frames of the right channel. Every stereo sample of a read project therefore played at double speed, an octave up and twice in a row - the left channel, then the right one - which the audition of the Contents dialog played as two notes for every tone of the VHS Soundpack, and a written project would have played its samples the same way on the device. Both directions now use the layout of the device. Roland's own projects store every sample in stereo; a project recorded on the device stores mono samples, which were not affected.</li>
<li>Fixed: The key range, the velocity range and the switch of the partials of a tone were not read, so every partial covered the whole keyboard: a keyboard split - 'VHS 4LAY PIANO1' of the VHS Soundpack puts four piano samples on partials with the ranges C-2..C2, C#2..G2, G#2..D3 and D#3..G8 - arrived as four layers which all sound on every key, which is also what the audition of the Contents dialog played, and a switched-off partial which kept its wave played as well. The keyboard table of the tone (one 12-byte row per partial with its switch, key range and velocity range) is now read: a switched-off partial is skipped and the zones of a partial are limited to its key range.</li>
</ul>
</li>
<li>Roland ZEN-Core
<ul>
<li>New: The pitch key follow of a partial is read and written - the same field as on the MC-707, 100 = chromatic in all templates. A drum zone was converted as chromatic and written to follow the keyboard.</li>
<li>Fixed: Loops were read one frame too long, and written one frame too short unless the seam search moved their end. The engine loops from the loop start up to the frame before the end point (measured on the hardware), while the end of a loop in this application is its last frame. On the loops of samples exported by a FANTOM-0 the curvature across the loop seam was smallest one frame before the end which was read and is smallest at it now; a loop ending at frame 29999 is written with the end point 30000 instead of 29999.</li>
<li>Fixed: Every loop was read one frame too long and written one frame too short. Kontakt stores a loop as its start and its length - the number of frames of the loop - but the start plus the length was taken as the last frame. Reading the Kontakt, Logic EXS24 and TAL-Sampler editions of the BlueWave library, which use the same samples, gave loop ends one frame behind the other two editions for 3557 of the 3634 zones of the 'Raw_Osc' instruments; now all three agree, and the curvature across the loop seams is smallest at the end which is read.</li>
<li>Fixed: The switch and the key range of the partials of a tone were not read, only their velocity range: a switched-off partial which kept its wave played, and a partial with a key range covered the whole keyboard. The keyboard table is one 12-byte row per partial starting at 0x98 (switch, key range, velocity range), which also explains why its switch byte seemed to belong to the next partial.</li>
<li>Fixed: The samples of sample packs which store their WAV files scrambled, e.g. the '02_Melodic' pack, were read as noise. Such a sample holds a complete WAV file like the ones of Roland's SVZ Sample Converter, but every byte of it is substituted - with one law for the low and one for the high bytes of the 16-bit samples - and it was taken for raw audio behind a longer header. The WAV file is now decoded and read like the converter's.</li>
</ul>
</li>
<li>SFZ
<ul>
<li>New: The modulation of the filter cutoff by the modulation wheel is read and written (cutoff_oncc1 or cutoff_cc1, in cent).</li>
<li>New: Opcode groups are now aggregated to group and global level.</li>
<li>New: The 'transpose' opcode is read; it was ignored, so a region which is transposed by whole semitones played at the wrong pitch (75 of the 1,787 SFZ files on the test machine use it). When writing, whole semitones go into 'transpose' and only the remainder into 'tune', whose range the specification limits to one semitone.</li>
<li>Fixed: Unused opcodes were not logged.</li>
<li>Fixed: The key tracking of the filter ('fil_keytrack') was read and written with 1,200 as the full tracking. The opcode is in cent per key, so 100 is the cutoff following the keyboard one to one, which is what the model calls full tracking: a fully tracked filter of an SFZ from another tool arrived with 8 % tracking, e.g. on a Waldorf Iridium. SFZ to SFZ conversions are unchanged.</li>
<li>Fixed: The depth of the pitch LFO ('pitchlfo_depth') and of the filter LFO ('fillfo_depth') was read and written with 1,200 cent as the full depth of the model, while the pitch and filter envelopes and every other format use the 12,000 cent of IEnvelope.MAX_ENVELOPE_DEPTH - the law with which the Waldorf Quantum/Iridium destination was verified on the device. A vibrato of 50 cent therefore arrived on an Iridium as one of 500 cent and a filter LFO of 600 cent as one of 60 semitones. The depths are now read and written in the unit of the model, limited to the +-1,200 cent of the opcodes when written; SFZ to SFZ conversions are unchanged.</li>
</ul>
</li>
<li>Sample Files
<ul>
<li>New: The 'Pitch' switch of a zone is read and written: a zone with the switch off plays its sample at the same pitch on every key (e.g. a drum) and was converted as a chromatic instrument - 644 of the 66,392 zones of the DSF E-mu Proteus library have it off - and every written zone had it on. The transposition of the instrument is read as well.</li>
<li>Fixed: Sub-folders were scanned once for each of the configured sample file types and every scan converted the multi-samples it found again - with all six types enabled, a folder one level below the source folder gave six copies of its multi-sample and a folder two levels below 36. The folders are now listed once and the files are sorted into their types afterwards, which also stops the report of a type of which a folder holds no file at all ('Detected 0 CAF (*.caf) files.').</li>
<li>Fixed: Only the first multi-sample of a folder was converted, so a folder which holds sample files of several of the configured types - e.g. both WAV and AIFF files - lost all but the first of them.</li>
</ul>
</li>
<li>SoundFont 2
<ul>
<li>Fixed: Every loop was one frame too long when reading and one frame too short when writing. The loop end of a SoundFont is the first frame behind the loop, the loop end of all other formats and of this application is the last frame of the loop, but the value was taken over unchanged in both directions. A loop which is seamless in the SoundFont therefore clicked at every repeat after the conversion: of the 2,254 loops of Espen Kraft's 'PX Vol. 2 Digital Voices', 1,023 did so in a plain conversion to WAV files and 115 do now, about as many as the SoundFonts themselves contain. A written SoundFont plays its loops correctly now as well - fluidsynth played a loop of whole sine periods with a glitch at every repeat before and plays it seamlessly now.</li>
<li>Fixed: 24-bit samples were missing the padding byte in case that the number of samples were uneven. This made reading the created SF2 file fail in some tools (e.g. Polyphone).</li>
<li>Fixed: The specification version is now set to 2.04 if 24-bit samples are used otherwise it is still 2.01. This prevented 24-bit files to be loaded in Viena.</li>
<li>Fixed: Set bank and program number for the closing EOP preset to 0 (was 255) to comply with specification.</li>
<li>Fixed: Written SoundFonts were silent at full velocity in players which apply modulators (e.g. FL Studio, fluidsynth). The velocity to volume modulator was written with the positive direction, which attenuates by the full 96 dB at velocity 127 and not at all at velocity 0, so only the softest notes were audible - the velocity to filter cutoff modulator was inverted the same way. Both are now written with the negative direction of the default modulators of the SoundFont specification; the volume one thereby also supersedes that default, so a source without velocity sensitivity no longer falls back to the full sensitivity of the default.</li>
<li>Fixed: The key range and the velocity range were written behind the panning and tuning generators of a zone. The SoundFont specification requires them to be the first two generators, and players which enforce this (e.g. fluidsynth) discarded them, so every zone played on all keys.</li>
<li>Fixed: Negative modulator amounts, e.g. of a velocity to filter cutoff modulator, were read as large positive numbers, and the direction of a velocity modulator was ignored when reading.</li>
<li>Fixed: The coarse offset generators of a zone - sample start, sample end, loop start and loop end in units of 32768 frames - were ignored when reading, so a play range or loop which begins beyond the first 32768 frames of a sample was placed 32768 frames (or a multiple) too early, e.g. the loops of the E-mu library SoundFonts which EMXP writes.</li>
<li>Fixed: The modulators of the global zone of an instrument or preset were ignored - only the modulators of the zone itself were read - so e.g. the velocity to volume and velocity to cutoff amounts of SoundFonts which keep them in the global zone (again the EMXP conversions of the E-mu libraries) were lost.</li>
<li>Fixed: The depth of the vibrato LFO ('vibLfoToPitch') was read and written with 1,200 cent as the full depth of the model instead of the 12,000 cent which the modulation envelope of the same file and every other format use, so a SoundFont vibrato arrived ten times too deep at a destination which applies the depth of the model - a 50 cent vibrato as 500 cent on a Waldorf Iridium. SoundFont to SoundFont conversions are unchanged.</li>
</ul>
</li>
<li>Synclavier Regen
<ul>
<li>Fixed: Partials which are muted in the editor were converted as layers. The editor keeps the samples of a muted partial in the timbre, so e.g. the switched-off sub-octave pulse of 'Prodigy Pad' (Starsky's Prodigy) became the first layer - and since it has no release time, destinations with one amplitude envelope per preset (e.g. Waldorf Iridium/Quantum) got an instant release instead of the 3.5 seconds of the pad. Only the active partials are converted now - those which carry a volume line, which is also how the device builds the active-partial mask of its timbre index.</li>
<li>Fixed: The contour of the note filter envelope was lost: only its peak level was read, the start level and the end level which the release heads to were ignored, and no sustain level was set - so destinations which default a missing sustain to the full level (e.g. Waldorf Iridium/Quantum) kept the filter at its peak for the whole note; none of the 26 filter envelopes of 'Starsky's Prodigy' ever decayed there. The three levels are octaves relative to the cutoff, which is the sustain level of the contour (Regen manual, 'Filter Envelope'); they are now read and written completely, and a contour which reaches below the cutoff is re-based so that the envelope of the model can carry it.</li>
</ul>
</li>
<li>TAL Sampler
<ul>
<li>Fixed: The cross-fade of a loop was ignored when reading and always written as 0. TAL-Sampler stores it in the attribute 'fadeinsamples', which despite its name is not a fade-in but the cross-fade relative to the length of the loop, ending at the loop end, and plays its loops with it - 104 of the 105 loops of Espen Kraft's 'Digital Collection Vol. 1' have one of 55% to 100%. Without it the loops wrapped with an audible click, e.g. in the presets converted for the Waldorf Iridium, which plays the cross-fade from its sample map. The cross-fade is now read and written.</li>
<li>Fixed: A preset without a velocity range - e.g. all 138 presets of Espen Kraft's 'Digital Collection Vol. 1' - was read with the velocity range -1 to -1, and most destinations wrote it as it was: Waldorf Quantum/Iridium, Bliss and Omnisphere wrote -1, Yamaha YSFC 255, E-mu Emulator IV and Emulator X 0 to 0, E-mu Emulator III and Roland MV-8000 1 to 1, Kurzweil played the sample only up to velocity 15, Synclavier Regen closed the velocity window and 1010music blackbox and bento did not write the preset at all. A missing key or velocity range now covers the full range.</li>
<li>Fixed: The name of a preset was taken from the 'programname' attribute inside the file instead of from the file name. TAL Sampler lists its presets by file name, and the attribute keeps the name the program was saved under, which the producer of a pack often changes afterwards by renaming the file - Espen Kraft's 'Vol. 7 Super Hybrid' prefixes the synthesizer the samples come from ('MM Bass 13.talsmpl' holds the program name 'Bass 13'), so 65 of its 99 presets lost that part of their name and the presets of its three synthesizers collided under one name.</li>
<li>Fixed: The amount of the filter envelope was read and written as if 0 were no modulation, but TAL-Sampler stores it bipolar with 0.5 as 0 % - the value the plug-in shows as '0.00 %'. Every preset whose filter envelope is turned off was therefore converted with a filter envelope of +50 % (209 of the 391 presets with a filter on the test machine), and a negative amount became a positive one. With the instant filter release of the plug-in's default and a low cutoff this snapped the filter shut at every note-off: 'MWIIXT MKS Strings' of Espen Kraft's 'Vol. 7 Super Hybrid' stopped the moment a key was released on a Waldorf Iridium, whatever its 6 second amplitude release said.</li>
<li>Fixed: The times of the envelopes were scaled with the average length of the samples, so the same envelope came out differently with different samples, and far off: the amplitude release of 'MWIIXT MKS Strings' (0.59) was written as 6.18 seconds and its attack (0.336) as 3.52 seconds. TAL-Sampler plays a stage of the value x in 7.2 x^4 seconds whatever the samples are - measured by rendering the plug-in (4.7.2) offline: the release values 0.4, 0.6, 0.8 and 1.0 fade a note out in 0.19, 0.93, 2.95 and 7.2 seconds, and the attack follows the same law. The preset above now gets a release of 0.87 seconds and an attack of 0.09 seconds, which is what the plug-in plays.</li>
<li>Fixed: Samples were only looked up at the path stored in the preset, appended to the folder of the preset: an absolute path was therefore never found, and on macOS and Linux, where the back-slash does not separate folders, no path of Windows either. A sample which is not at its path is now looked up by its file name next to the preset and in the folders below it, where packs keep their samples. Of 1,602 presets on the test machine 29 lost samples this way and all of them find them now: the 25 presets of the 'SOURCE Sample Pack 1' reference all their samples like <code>..\SOURCE\SoundFont\0- LEAD Source Triangl-0-C1.wav</code>, and <code>String 1</code> of Espen Kraft's <code>Vol. 4 Sequential Prophet VS</code> stores its samples as <code>F:\Nuendo\000007 Prophet VS\Samples\STRINGS\String 1 C3.wav</code> - they lie next to it - and was not converted at all.</li>
<li>Fixed: The transpose of a layer was read as a tuning of its samples, but TAL-Sampler adds it to the played note before it looks up the zone which plays that note. Both layers of Espen Kraft's 'T1000 Strings' ('Digital Collection Vol. 6') are transposed by -24 semi-tones, so the key C3 plays the zone of C1 as it plays C1 - the conversion played the zone of C3 two octaves lower instead, at a quarter of the speed of its sample, which sounds slowed down and unnatural. The zones of a transposed layer are now moved on the keyboard by the transpose: rendered offline with the plug-in (4.7.2), the preset with its zones moved by 24 keys and without the transpose plays the keys G1, G2, G3 and G4 identically to the original, sample for sample. 234 of the 1,644 programs in the TAL-Sampler libraries on the test machine transpose a layer, mostly by an octave.</li>
<li>Fixed: The panning and the volume of a layer were not read. 'T1000 Strings' plays its two layers detuned against each other and panned 70 % left and 81 % right, the conversion put both into the centre; 171 of the 1,644 programs pan a layer, and 303 of the 431 programs with more than one layer give their layers different volumes. The volume is read with the law which the plug-in displays, 40 log(2x) dB - 0.5 is 0 dB and 1.0 is +12 dB; measured, 0.25 plays 11.9 dB quieter than 0.5. A layer with the volume 0 keeps the level of its zones, since it is only heard through a modulation of its volume.</li>
<li>Fixed: The volume of a sample was read and written as if 0.353 were -12 dB and 1.0 were +6 dB, but TAL-Sampler plays it as a linear amplitude factor: 0.7843 is 0 dB, 0.353 is -6.9 dB and 1.0 - the volume of every sample in Espen Kraft's libraries - is +2.1 dB (rendered offline at eight volumes, within 0.01 dB). The main volume of a program, 40 log(2x) dB like the volume of a layer, was not read at all, although it balances the presets of a library: Espen Kraft sets 'Kawai PHM Digi StringChoir' of 'Digital Collection Vol. 1' to -1.1 dB and 'D-50 Subdude Reso Pad' to +6.3 dB, so converted, the first played 5.0 dB louder than in TAL-Sampler and the second 2.4 dB quieter. Of the 598 presets of the eight volumes the typical one was 3.9 dB too loud, 338 by 3 to 7.6 dB, and 43 were up to 4.8 dB too quiet. Both are now read with the laws of the plug-in. When writing, the volume of a sample reaches only +2.1 dB, so the main volume and then the volume of the layers carry the gain above it, up to +26 dB: written again as a TAL-Sampler preset, 'D-50 Subdude Reso Pad' played 12.9 dB quieter than the original and now plays within 0.04 dB of it.</li>
<li>New: A modulation of the filter cutoff by the modulation wheel - an entry of the modulation matrix with the source MW on the cutoff - is read and written. Espen Kraft's 'Vol. 7 Super Hybrid' builds its seven string presets on it: their filter is closed until the wheel opens it, so converted without the routing they stay closed.</li>
</ul>
</li>
<li>Waldorf Quantum/Iridium
<ul>
<li>New: The modulation of the filter cutoff by the modulation wheel is read and written, with the source Wheel on the destination Filter1 Cutoff. The written slots of the matrix are now filled from the first one, the wheel first and then the pitch envelopes, the vibrato, the tremolo and the filter LFO, so a preset shows its modulations at the top of its matrix page - previously each modulation had a fixed slot and a preset with only a wheel showed it in the slot 7. The amount is the share of the range of the filter which the wheel at its top adds to the cutoff, which is how the device applies it (Iridium MK2 firmware 4.0.6); 291 of the 1,787 factory patches of an Iridium MK2 route the wheel to the cutoff this way.</li>
<li>New: The Author and Bank options only take as much text as the device shows completely. Its Load Patch page shows the bank and the author of a preset in a narrow column and leaves out what does not fit - of the bank 'Digital Collection Vintage' only 'Digital Collection Vinta'. The font is proportional, so the width of the text is measured with the widths of the characters of its DIN font instead of counting characters: 'Digital Vintage Voices' (22 characters) fits, 'DW-8000 Breathy Breakup Pad' is cut after 20. On the command line a value which is too wide is reported with the part the device would show.</li>
<li>New: The volume and the pan of the whole timbre (TBPIVolume, an attenuation in dB, and TBPIPan, -63..63) are read and applied on top of the settings of the partials; a timbre which the editor turned down - by up to 16 dB in the Studio G Dallas library - was converted at full level.</li>
<li>New: The 'Use a second layer' option became 'Maximum number of layers' with 1 to 4 layers. With 3 or 4 layers a source with more than 6 groups is written with up to 9 or 12 multi-samples in the layout of the MK2 generation: the layer count 2, the format version 15 and always four stored layers, of which the unused ones are switched off, exactly as the Iridium MK2 stores its own patches (304 files of the corpus). The loader of the device clears the file offsets of the layers 3 and 4 in files up to the version 14, which is why four layers need the version 15; the first generation of the instruments holds two layers (its manuals) and cannot play such a file. Verified on an Iridium MK2 (OS 4.0.6): a written 4-layer patch with one sample pitch per layer plays all four pitches, a 3-layer patch with its switched-off fourth layer plays its three. Only as many layers as the groups need are used, so a source with up to 6 groups is still written as the 2-layer patch which every instrument of the family plays. The samples of all later layers are named in the first layer for the importer of the device. A setting of the old option is taken over.</li>
<li>New: Round robins are written into one sample map. Entries of a map which overlap in key and velocity alternate on successive notes on the device, which is exactly a round robin; the zones of a round robin were spread over separate oscillators as if they were stacked layers, so all of them sounded at once on every note. When reading, overlapping entries of a map become a round robin. The device has no random selection, so random zones alternate as well.</li>
<li>New: A monophonic source is written with the mono mode of the patch (PolyMonoMode), which is read back as well. A source with a polyphony of 1 is written with it too, and a patch in the mono mode is read with a polyphony of 1.</li>
<li>New: The modulation of the filter cutoff by a low frequency oscillator is read and written, with LFO 3 on the destination Filter1 Cutoff. The device adds the amount to the cutoff without squaring it, and the full amount covers the whole range of the filter, 135 semitones (Iridium MK2 firmware 4.0.6). Verified on an Iridium MK2: +8.89 % moves the cutoff by an octave.</li>
<li>New: The portamento of a source is written as the glide of the patch and read back. The device glides for 2 x GlideRate^2 seconds, the same time for every interval (Iridium MK2 firmware 4.0.6), which is what the portamento time of a source means; a legato source uses the glide type Legato. Verified on an Iridium MK2: a glide of 1 second takes 1.000 seconds over 2 and over 4 semitones.</li>
<li>New: A key tracking other than 100 % which all key-tracked zones of a group share is written as the key tracking of their oscillator instead of 100 %.</li>
<li>New: The key window of an oscillator (Osc{i}MinNote/MaxNote) is applied when reading: a zone outside of it is silent on the device and is dropped, a zone across its edge is cut at it.</li>
<li>New: The volume, the gain and the panning of a layer (LayerVolume, LayerGain, LayerPan) are applied to the zones of the layer when reading. A layer at a LayerVolume of 0.81 - the value of one of the factory patches - is 3.7 dB quieter than its oscillators say. The laws come from the firmware of the Iridium MK2: LayerVolume follows the law of the oscillator volume (40 x log10), LayerGain adds 0 to 24 dB.</li>
<li>New: A sample map with more than 1024 entries is reported. The device stores at most 1024 entries per map and drops every further one with the error 'Number of entries in sample map exceeded' (Iridium MK2 firmware 4.0.6).</li>
<li>Fixed: A key map whose zones overlap was split across oscillators, which left each of them with a hole. The zones of a group are separated into layers when they overlap in key and velocity, since that is what a stack looks like - but a source sometimes gives the zones of one key map ranges which overlap slightly: the E-mu Xtreme Lead 1 'Air Age' maps its lowest sample up to key 54 while the next one starts at 43. Its five zones were spread over two oscillators, the first of which was then silent from key 55 to 71, the middle of the keyboard. Zones whose root notes and lower key limits both rise from zone to zone are now kept as the one map they are; a stack does not look like that, because its layers sound on the same notes and therefore share their lower key limit. Checked against the 1,670 groups of more than one zone in eight banks of the E-mu Xtreme Lead 1 and Planet Earth libraries: of the 570 whose zones overlap, 17 are key maps by this rule, and not one of them holds two zones with the same key range.</li>
<li>Fixed: Groups which never sound at the same time were spread over the oscillators, and a source which keeps its round robins in separate groups was played with several of them at once. An SFZ file with one group per round-robin position put positions 1 and 2 on the first two oscillators, which sound on every note, and cycled only the remaining positions on the third; the Elektron Tonverk presets with round robins went the same way. Zones which never sound together - velocity layers, round robins and key ranges which follow each other - now share one sample map and one oscillator: the device selects the entry by key and velocity and alternates the entries which overlap. Only zones which do sound together on the same note, a stack of layers, still get an oscillator each, and so do groups which differ in their panning or key tracking, which only an oscillator can hold.</li>
<li>Fixed: Zones which only sound on note-off (release samples) were written into the sample maps and sounded on note-on, stacked on the attack samples. The device has no release trigger for a sample map, so they are skipped now, which the log reports.</li>
<li>Fixed: The attributes of a patch were written in the spelling of their source - the keywords of the analysis in lower case ('arp', 'digital'), the tags of a source pack in capitals ('KEYS', 'VINTAGE') - so the device listed 'KEYS', 'Keys' and 'keys' as three filter entries which each found a part of the sounds. Every attribute is now written in the spelling of the factory sound sets ('Keys', 'Pad', 'Arp', 'FX'; 'Atmo' for 'atmospheric', 'Drum' for 'DRUMS'), and a word the factory sets do not use is capitalized ('Vintage', 'Dark'). On a card with 1,220 converted presets 498 carried at least one attribute in another spelling.</li>
<li>Fixed: A multi-sample without a zone which sounds on note-on - e.g. one of which no sample could be found - stopped the writing of its patch with 'Index 0 out of bounds for length 0'. It is now skipped with a note, like the SFZ, Kontakt and Maschine destinations do.</li>
<li>Fixed: 'Snap loops which click' did not remove the loop click when the source was not recorded at 44.1 kHz. The loops were snapped in the processing stage, but this format re-samples to 44.1 kHz afterwards, which moves every boundary off the zero-crossing it was snapped to. The up-sampling is now done first: 'always re-sample' is enabled, which the processing line of the log reports. Measured over one bank of the E-mu Xtreme Lead 1 library, whose samples are recorded between 25 and 32 kHz: across its 333 loops of 4096 frames or more the jump at the loop wrap drops from 4.57% to 2.14% of the sample level on average, the loops which jump by more than a tenth of the level fall from 63 to 15, 142 loops improve and 21 get worse. On the 'Shaku High', whose 0.9 second pad loop thumped once per repeat, that loop goes from 14.4% to 0.2%. A loop shorter than 4096 frames is still left alone, since snapping a loop of a few frames would change its pitch.</li>
<li>Fixed: A preset could play every key with the same pitch. The sample maps were written without the line feed and the NUL byte with which the device ends every map it writes, and the device does not stop reading a map at its length: it appended the digits which followed the map in its memory to the Track Pitch flag of the last entry - presets which an Iridium MK2 saved again carry values such as 10, 19 or 1000000 there instead of 1. Such an entry no longer tracks the keyboard; 6 of 12 converted single-sample presets of one pack were affected, and which ones depended on the memory of the device and not on the files. Every sample map now ends like the maps of the device.</li>
<li>Fixed: Nearly every sample start and loop point was one frame early on the device, and a loop which starts at the beginning of its sample was one frame short. The positions of a sample map are fractions of the sample, and the firmware converts them with the last frame as 1.0 - frame = (int) (0.001 + (frames - 1) x fraction) in single precision - while they were written and read as fractions of the number of frames. They are now written as the middle of the frame on that scale, which the device converts into exactly the intended frame, and read the way the device converts them. The sample end is written as the last frame, which the device plays.</li>
<li>Fixed: A key or velocity range which the source did not set was written into the sample map as -1, which the device takes over as the range of the entry, so the entry never played - it had to be set to 0-127 on the device. Such a range is now written as the full range, as the distribution of the zones across the layers already assumed. The lowest velocity of a range is written as 0 instead of 1, like in the patches of the device, since the device plays a very soft note with the velocity 0.</li>
<li>Fixed: A velocity which is written as a fraction of the range (0.5 instead of 63), which the device accepts, stopped the reading of the patch with a number format error. It is now read the way the device reads it.</li>
<li>Fixed: The cutoff of the filter was written with the normalized parameter value as its display text, so the device listed a patch with a cutoff of e.g. 61.7 Hz as '0.2592 Hz'. A cutoff at the top of the range of the model (20,000 Hz) also wrote a parameter value slightly above the 1.0 the device expects; it is now limited to the 19,912.2 Hz of the device.</li>
<li>Fixed: Pitch envelopes and vibratos were written far too shallow and read far too deep. The device squares the amount of a matrix slot which modulates a pitch before it applies it, keeping its sign, and multiplies the result with 24 semitones (Iridium MK2 firmware 4.0.6): an amount of 50 % raises the pitch by 6 semitones, not by 12, and the amount which was written for a vibrato of 50 cents plays one of about 1 cent. The amounts are now written and read with the law of the device. The vibratos which the factory patches put on the modulation wheel, 11 to 20 %, are 29 to 96 cents with it. Verified on an Iridium MK2 (OS 4.0.6): an oscillator modulated at +50 % plays 6.00 semitones above an unmodulated one, and a converted vibrato of 50 cents swings +/-49.97 cents, where the previous conversion swings +/-1.04 cents.</li>
<li>Fixed: Every attack, decay and release was played 60 ms shorter than the source asked for, and a stage shorter than 60 ms was written as instant. The sound engine plays the value x of such a stage as 60 x 10^(3 (x - 1)) - 0.06 seconds, while the display of the device shows 60 x 10^(3 (x - 1)) - 0.001 seconds - the law which was used. Measured on an Iridium MK2 with OS 4.0.6: stages written for 0.07, 0.1, 0.25, 0.5, 1 and 2 seconds took 0.011, 0.041, 0.190, 0.441, 0.940 and 1.940 seconds, alike for the attack, the decay and the release. The times are now written and read with the law of the sound engine. The shortest amplitude attack and release which avoid a click stay at the 10 ms which the device played before.</li>
<li>Fixed: The decay of a pitch envelope was lost when the source did not set a start level. Such an envelope was written like one which starts at a level: no attack, and the attack time of the source as its decay. An SFZ pitch drop over 0.5 seconds arrived as an instant blip. Only an envelope with a start level above 0 is written that way now. Verified on an Iridium MK2: the converted pitch drop starts every note an octave high and slides down in a straight line, where the previous conversion plays the note at its pitch from the start.</li>
<li>Fixed: The tremolo of a patch written by an older firmware was not found, and a slot which modulates another destination with the index 117 could be read as a tremolo. The list of matrix destinations grew with the firmware - the VCA is 107 up to the format version 13, 108 in version 14 and 117 in version 15 - and the device resolves a destination by the name in the hint of the parameter (Iridium MK2 firmware 4.0.6). Destinations are now read by their name, by the index of the format version if the hint is empty, and written with the index of the written version.</li>
<li>Fixed: A patch written with the second layer enabled did not play the samples of that layer. When the device imports a patch, it copies the samples into its memory, but it collects them from the sample maps of the first layer only - the importer reads the resource table of the first header of the file and walks its maps (Iridium MK2 firmware 4.0.6, PatchLib::importPatch). A sample which only a later layer names is never copied, and when the patch is loaded that layer reports 'loading samples//.wav failed' and stays silent - which an Iridium MK2 showed for every two-layer patch whose second layer brought samples of its own, while a second layer which re-uses the samples of the first played. Of the 104 two-layer patches which the E-mu Xtreme Lead 1 library produces, 85 bring samples of their own into the second layer. The first layer now names every such sample in an additional entry which never plays - its velocity window is 0 to 0, which no note-on reaches, its gain is 0 and it covers only the key 0 - so the importer copies it. When reading, such an entry is skipped. Verified on an Iridium MK2 (OS 4.0.6): a two-layer test patch whose second layer brings a sample of its own plays both layers after the import, while the same patch without the entry fails with 'loading samples/.../L2_saw_octave.wav failed'.</li>
<li>Fixed: The 'Exp alt' curve of a decay or a release was written with the value 0.5 instead of its option index 1. The device rounds the value of an enumeration to the nearest option when it shows its name, which made the written value look right, while what its sound engine makes of a value between two options is not known. The exact index is written now.</li>
<li>Fixed: An entry of a sample map which does not follow the keyboard (Track Pitch 0) was read as tracking it: the key tracking of the oscillator replaced the flag of the entry. The flag is now kept - an entry which the device plays at a fixed pitch stays at a fixed pitch, only a tracking entry gets the tracking amount of the oscillator. Only the value 1 tracks the keyboard on the device; the value 2 plays the entry at the pitch of its pitch column whatever the key is, and the digits which the device appends behind a map without a terminator (10, 19, 1000000) play at a fixed pitch as well, so every value other than 1 is read as a fixed pitch.</li>
<li>Fixed: A preset whose name was already in the destination folder got a counter in its file name (e.g. 'Bass 2 (2).qpat'), but its samples were written into the sample folder of the first preset, where samples of the same name overwrote those of the first preset - which then played the audio of the second one. The sample folder now carries the same counter as the file name.</li>
</ul>
</li>
</ul>
git-moss
tag:github.com,2008:Repository/1215362023/2.5.64
2026-09-19T11:08:52Z
PolyHostInterface: 2.5.64
<ul>
<li>Keyboard now shown in Routing and Macro Mapping views.</li>
</ul>
sl2365
tag:github.com,2008:Repository/373897031/v4.0.0
2026-09-19T10:58:38Z
rclip: v4.0.0
<h2>rclip got a TUI</h2>
<p><strong>rclip</strong> now has an interactive terminal UI. Run <code>rclip --interactive</code> to browse and search your images as a thumbnail grid, and copy or download results without leaving the terminal. It requires Kitty graphics with Unicode-placeholder support; copying and downloading additionally require the actual Kitty terminal with a discoverable <code>kitten</code>.</p>
<a target="_blank" rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/4187729/655080794-774588d5-f6b1-4781-b500-c4976c733c1d.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3OTAwMTkzNjMsIm5iZiI6MTc5MDAxOTA2MywicGF0aCI6Ii80MTg3NzI5LzY1NTA4MDc5NC03NzQ1ODhkNS1mNmIxLTQ3ODEtYjUwMC1jNDk3NmM3MzNjMWQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDkyMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA5MjFUMTkzMTAzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MzgzYjM0ZGI0YzYxOTIyZjgzNmJmNDk3NDZiNGVjM2VlMjUwNmJmODI3OWVmNmMwNGVkMWUyZTQ0OGQxOWZmMCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmcmVzcG9uc2UtY29udGVudC10eXBlPWltYWdlJTJGcG5nIn0.mMrrSDjvcIEOalwAVTdo1eID1s3k1x6Dc0omDuARnFY"><img width="1082" height="953" alt="image" src="https://private-user-images.githubusercontent.com/4187729/655080794-774588d5-f6b1-4781-b500-c4976c733c1d.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3OTAwMTkzNjMsIm5iZiI6MTc5MDAxOTA2MywicGF0aCI6Ii80MTg3NzI5LzY1NTA4MDc5NC03NzQ1ODhkNS1mNmIxLTQ3ODEtYjUwMC1jNDk3NmM3MzNjMWQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDkyMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA5MjFUMTkzMTAzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MzgzYjM0ZGI0YzYxOTIyZjgzNmJmNDk3NDZiNGVjM2VlMjUwNmJmODI3OWVmNmMwNGVkMWUyZTQ0OGQxOWZmMCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmcmVzcG9uc2UtY29udGVudC10eXBlPWltYWdlJTJGcG5nIn0.mMrrSDjvcIEOalwAVTdo1eID1s3k1x6Dc0omDuARnFY" content-type-secured-asset="image/png" style="max-width: 100%; height: auto; max-height: 953px;"></a>
<a target="_blank" rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/4187729/655080823-076150c5-5ae5-4283-b334-5daa8a936764.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3OTAwMTkzNjMsIm5iZiI6MTc5MDAxOTA2MywicGF0aCI6Ii80MTg3NzI5LzY1NTA4MDgyMy0wNzYxNTBjNS01YWU1LTQyODMtYjMzNC01ZGFhOGE5MzY3NjQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDkyMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA5MjFUMTkzMTAzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZjMyMzRhYjc5MDdmYTViMTYwZTc3MDJhZTkyMjQxODgxOTg1YzMzNmVkZjkwYTEyNTk1MmVhY2JlMjc0ZjVjZiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmcmVzcG9uc2UtY29udGVudC10eXBlPWltYWdlJTJGcG5nIn0.ozYdkLY1lWqjIgiuN0C-NUPj-wNIfdy6wVSSU8nOoQY"><img width="1082" height="953" alt="image" src="https://private-user-images.githubusercontent.com/4187729/655080823-076150c5-5ae5-4283-b334-5daa8a936764.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3OTAwMTkzNjMsIm5iZiI6MTc5MDAxOTA2MywicGF0aCI6Ii80MTg3NzI5LzY1NTA4MDgyMy0wNzYxNTBjNS01YWU1LTQyODMtYjMzNC01ZGFhOGE5MzY3NjQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDkyMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA5MjFUMTkzMTAzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZjMyMzRhYjc5MDdmYTViMTYwZTc3MDJhZTkyMjQxODgxOTg1YzMzNmVkZjkwYTEyNTk1MmVhY2JlMjc0ZjVjZiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmcmVzcG9uc2UtY29udGVudC10eXBlPWltYWdlJTJGcG5nIn0.ozYdkLY1lWqjIgiuN0C-NUPj-wNIfdy6wVSSU8nOoQY" content-type-secured-asset="image/png" style="max-width: 100%; height: auto; max-height: 953px;"></a>
<h2>Breaking changes</h2>
<ul>
<li><code>--preview</code> now requires Kitty graphics – wezterm, Mintty, and mlterm are no longer supported.</li>
<li>HEIC support changed – removed on Linux; on Windows it requires the OS HEIF Image Extension.</li>
<li>hidden files and directories are skipped by default – pass <code>--include-hidden</code> to index and search them.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>fix: use native heif support (when available) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5067083059" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/300" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/300/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/300">#300</a></li>
<li>ci: allow dry runs of the release pipeline by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5068237732" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/301" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/301/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/301">#301</a></li>
<li>fix(AppImage): keep AppImage build tools out of the resulting image by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5068692396" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/302" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/302/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/302">#302</a></li>
<li>fix: skip macOS metadata and hidden files on external drives (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5071690240" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/303" data-hovercard-type="issue" data-hovercard-url="/yurijmikhalevich/rclip/issues/303/hovercard" href="https://github.com/yurijmikhalevich/rclip/issues/303">#303</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SergeyKarleev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SergeyKarleev">@SergeyKarleev</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5072157553" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/304" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/304/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/304">#304</a></li>
<li>docs: add SergeyKarleev as a contributor for code by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/allcontributors/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/allcontributors">@allcontributors</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5077560835" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/305" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/305/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/305">#305</a></li>
<li>ci: fix Windows system e2e test imports by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5118334774" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/307" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/307/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/307">#307</a></li>
<li>feat: generate release compliance artifacts by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5104931053" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/306" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/306/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/306">#306</a></li>
<li>docs: include CLIP model notices by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5167766901" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/309" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/309/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/309">#309</a></li>
<li>fix: include dependency extras in compliance checks by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5225196525" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/311" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/311/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/311">#311</a></li>
<li>Build AppImage with Python 3.13 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5230069683" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/316" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/316/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/316">#316</a></li>
<li>chore: deprecate Python 3.11 support by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5230085515" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/317" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/317/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/317">#317</a></li>
<li>feat: add interactive terminal image search by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5171374202" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/310" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/310/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/310">#310</a></li>
<li>feat: download remote images from the TUI by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5225197068" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/312" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/312/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/312">#312</a></li>
<li>fix: interrupt superseded TUI searches by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5225197292" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/313" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/313/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/313">#313</a></li>
<li>docs: make README head more clear by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5251782531" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/318" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/318/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/318">#318</a></li>
<li>feat: paginate TUI results on scroll by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5229542178" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/314" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/314/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/314">#314</a></li>
<li>feat: show focused image path in the TUI gallery by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5363513618" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/320" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/320/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/320">#320</a></li>
<li>perf: cut search time 34–36% and memory 91–94% by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5229557035" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/315" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/315/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/315">#315</a></li>
<li>fix: preserve excluded images and scope filters to the search directory by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5363634848" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/321" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/321/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/321">#321</a></li>
<li>feat: switch <code>--preview</code> to use Kitty graphics and force Kitty graphics for <code>--interactive</code> (because the TUI isn't built for Sixel anyway) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364351909" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/322" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/322/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/322">#322</a></li>
<li>feat(tui): add centered filmstrip to TUI detail view by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364590406" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/323" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/323/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/323">#323</a></li>
<li>chore: update deps by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5367627569" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/324" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/324/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/324">#324</a></li>
<li>feat(tui): toggle between grid and detail gallery views by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5367955454" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/325" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/325/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/325">#325</a></li>
<li>fix: improve TUI border visibility and focus contrast by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5368691665" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/326" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/326/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/326">#326</a></li>
<li>test: increase detail navigation test deadline to 500 ms by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5368713878" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/327" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/327/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/327">#327</a></li>
<li>feat(tui): clarify gallery scope and ordering by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5368861588" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/328" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/328/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/328">#328</a></li>
<li>fix(tui): improve hotkeys and detail navigation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5369155477" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/329" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/329/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/329">#329</a></li>
<li>fix(tui): improve selection and hotkey contrast by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5370042451" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/330" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/330/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/330">#330</a></li>
<li>feat(tui): preload adjacent detail images by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5370174593" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/331" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/331/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/331">#331</a></li>
<li>ci: preserve Homebrew dependency extras when generating the formula by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5370219133" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/332" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/332/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/332">#332</a></li>
<li>fix: authenticate daily CI release API requests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5439440612" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/333" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/333/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/333">#333</a></li>
<li>fix(tui): probe Kitty before image copy and download by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5439770402" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/334" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/334/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/334">#334</a></li>
<li>fix(tui): restore the TUI after a failed copy or download by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443004422" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/335" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/335/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/335">#335</a></li>
<li>fix(tui): wait for card layout before loading more results by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443258098" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/336" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/336/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/336">#336</a></li>
<li>fix(tui): fix the Kitty probe for real Kitty and old kittens by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5444163396" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/337" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/337/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/337">#337</a></li>
<li>fix(tui): avoid a shutdown error during a detail resize by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445614913" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/338" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/338/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/338">#338</a></li>
<li>test(tui): drop the deadline waits from the detail navigation test by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5447062235" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/340" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/340/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/340">#340</a></li>
<li>perf(db): filter directory paths with an indexed range by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5448233241" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/341" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/341/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/341">#341</a></li>
<li>perf(db): read only the image state during the indexing walk by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5448671008" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/342" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/342/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/342">#342</a></li>
<li>feat(tui): explain the screen switch during Kitty copy and download by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5456225554" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/344" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/344/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/344">#344</a></li>
<li>test(tui): wait for the filmstrip in the detail navigation test by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5456597617" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/346" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/346/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/346">#346</a></li>
<li>fix(tui): restore iTerm2 screen after Kitty probes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5505463325" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/347" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/347/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/347">#347</a></li>
<li>chore: update deps by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5505698076" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/348" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/348/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/348">#348</a></li>
<li>fix(ci): let unsquashfs create the Snap extraction directories by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5506070158" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/349" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/349/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/349">#349</a></li>
<li>fix(e2e): skip the Kitty transfer module before importing the TUI runtime by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5507109800" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/350" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/350/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/350">#350</a></li>
<li>fix(ci): bundle <code>numpy._core._exceptions</code> in the Windows build by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yurijmikhalevich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yurijmikhalevich">@yurijmikhalevich</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5508505767" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/351" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/351/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/351">#351</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SergeyKarleev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SergeyKarleev">@SergeyKarleev</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5072157553" data-permission-text="Title is private" data-url="https://github.com/yurijmikhalevich/rclip/issues/304" data-hovercard-type="pull_request" data-hovercard-url="/yurijmikhalevich/rclip/pull/304/hovercard" href="https://github.com/yurijmikhalevich/rclip/pull/304">#304</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/yurijmikhalevich/rclip/compare/v3.3.0...v4.0.0"><tt>v3.3.0...v4.0.0</tt></a></p>
github-actions[bot]
tag:github.com,2008:Repository/1305551246/v1.16
2026-09-19T07:31:31Z
gander: Gander 1.16
<p>Selecting text in a PDF now follows your finger, and the page moves with it.</p>
<h3>Dragging a selection</h3>
<p>A drag would climb a few lines, freeze, then jump, taking a heading or the rest of a paragraph with it.</p>
<p>A text layer only covers the words themselves, so the space between lines, beside a short line, and out in a page's margins belonged to nothing a finger could land on. A touch that missed every word got the same answer wherever it was, and that was the freeze. Lines are now given the space around them, out to the next word along and to the page edges, and the margin between two pages is bridged so a selection can cross it. Nothing moves on the page: the words are where they always were, and a highlight still hugs the text.</p>
<p>Dragging to the top or bottom of the screen also scrolls the document, so a selection can run past the fold without letting go and starting again.</p>
<p>Closes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5322493874" data-permission-text="Title is private" data-url="https://github.com/mokshablr/gander/issues/22" data-hovercard-type="issue" data-hovercard-url="/mokshablr/gander/issues/22/hovercard" href="https://github.com/mokshablr/gander/issues/22">#22</a>, reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/XZY123lol/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/XZY123lol">@XZY123lol</a>, whose video and files are what made it findable. The black screen in the first of those videos is a separate thing that has not been reproduced, so please do open a new issue if it happens again.</p>
<h3>The home screen</h3>
<p>Removing a granted folder asks first. It is the only thing on that screen that cannot be undone, since Android has no way to hand a released permission back. A recent file still goes on the long press alone.</p>
<p>Screen readers name the gesture: a row that can be removed reads as "double tap and hold to Remove" rather than an unnamed long press.</p>
<p>Removing several things quickly shows one "Removed" badge rather than one per removal, which used to keep a badge on screen for another half a minute after the last one.</p>
<h3>While a document is being built</h3>
<p>That line now sits in the middle of the screen rather than at the top, and it is legible in Word, slide, spreadsheet and image documents, where it had been shrinking to about 40% of the size it was written at. Errors and the PDF password prompt sit there too.</p>
<h3>Install</h3>
<p><code>Gander-1.16.apk</code> runs on every phone. The app ships no native code, so there is no architecture to choose.</p>
<p>Viewing PDFs needs Android System WebView 125 or newer (May 2024). Any phone still receiving WebView updates is well past that.</p>
<p>Verify before installing if you like. Signing certificate SHA-256:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="5B:5C:F6:4A:94:23:7C:D5:F0:E0:85:76:00:38:BC:1C:EB:DF:18:DA:BA:5C:B3:EA:CA:7C:15:9F:22:A7:E2:4B"><pre class="notranslate"><code>5B:5C:F6:4A:94:23:7C:D5:F0:E0:85:76:00:38:BC:1C:EB:DF:18:DA:BA:5C:B3:EA:CA:7C:15:9F:22:A7:E2:4B
</code></pre></div>
<p>And the APK itself:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="ff0beccaa946c2b08c58dedd38acad79823889d573a58ea30ff9204fd647ec1a"><pre class="notranslate"><code>ff0beccaa946c2b08c58dedd38acad79823889d573a58ea30ff9204fd647ec1a
</code></pre></div>
mokshablr
tag:github.com,2008:Repository/1305551246/v1.15
2026-09-19T07:31:30Z
gander: Gander 1.15
<p>Gander reads PDFs in the dark now, and redraws them as you zoom in.</p>
<h3>Night mode for PDFs</h3>
<p>A page stayed white at midnight however the phone was set, which is right for a Word page and wrong for reading a long PDF in bed. From the viewer's menu, paper goes black and text goes white.</p>
<p>Colours keep their hue rather than swapping to the opposite one, so a blue heading comes back blue rather than orange. Photographs are left exactly as they were printed, while the things that only look like images, a scanned page, a figure exported as a picture, a logo on a letterhead, turn over with the text around them, so none of them is left as a white rectangle on a dark page. The one thing it gets wrong is a photograph pale enough to pass for paper itself, which it will turn over.</p>
<p>Nothing is written to the file, and the setting is remembered. Closes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5259010699" data-permission-text="Title is private" data-url="https://github.com/mokshablr/gander/issues/19" data-hovercard-type="issue" data-hovercard-url="/mokshablr/gander/issues/19/hovercard" href="https://github.com/mokshablr/gander/issues/19">#19</a>, asked for by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MaxKash-06/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MaxKash-06">@MaxKash-06</a>.</p>
<h3>Sharp however far you zoom in</h3>
<p>A page was drawn once at a fixed size, and pinching in magnified that picture rather than drawing a better one, so anything taken past about twice its fitted size went soft. That is why a tube map or a site plan was unreadable at the magnification it actually needs.</p>
<p>The part of the page you are looking at is now drawn again at the zoom you are at, about a third of a second after you stop pinching, however far in you go. Pages are also drawn at the screen's own resolution rather than at twice it, now that they no longer need to hold spare detail for pinching, so each one keeps about a third of the picture it used to. Closes <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5259176353" data-permission-text="Title is private" data-url="https://github.com/mokshablr/gander/issues/20" data-hovercard-type="issue" data-hovercard-url="/mokshablr/gander/issues/20/hovercard" href="https://github.com/mokshablr/gander/issues/20">#20</a>.</p>
<h3>A document that fits sits in the middle of the screen</h3>
<p>A PDF or Word page is about two thirds of a phone screen tall and a slide is under a third, so a one-page document or a short deck stood at the top with a band of empty ground below it. Anything longer than the screen is exactly where it was.</p>
<p>A Word page also fills the width of the screen now. It was drawn at its real paper width, 816 pixels for US Letter against the 980 the viewer lays out at, so a page sat at 83% of the screen with a strip of ground down each side. It is now scaled to fit, the way a PDF page and a slide always have. No line break moves: it is the same page, about a fifth larger.</p>
<h3>Install</h3>
<p><code>Gander-1.15.apk</code> runs on every phone. The app ships no native code, so there is no architecture to choose.</p>
<p>Viewing PDFs needs Android System WebView 125 or newer (May 2024). Any phone still receiving WebView updates is well past that.</p>
<p>Verify before installing if you like. Signing certificate SHA-256:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="5B:5C:F6:4A:94:23:7C:D5:F0:E0:85:76:00:38:BC:1C:EB:DF:18:DA:BA:5C:B3:EA:CA:7C:15:9F:22:A7:E2:4B"><pre class="notranslate"><code>5B:5C:F6:4A:94:23:7C:D5:F0:E0:85:76:00:38:BC:1C:EB:DF:18:DA:BA:5C:B3:EA:CA:7C:15:9F:22:A7:E2:4B
</code></pre></div>
<p>And the APK itself:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="6aa23b771c382fcc6320d25375a7566ecbaf491e9f5c7b9bc15756875acd780a"><pre class="notranslate"><code>6aa23b771c382fcc6320d25375a7566ecbaf491e9f5c7b9bc15756875acd780a
</code></pre></div>
mokshablr
tag:github.com,2008:Repository/19330466/v0.8.4
2026-09-19T01:04:19Z
xxHash: v0.8.4
<p>xxHash <code>v0.8.4</code> is a general maintenance update, offering broader hardware acceleration, command line enhancements, and more predictable builds across platforms. No change to the API entry points.</p>
<h3>Faster performance with vectorization</h3>
<p>This release adds several vectorized implementations: for the <code>RISC-V</code> Vector extension and LoongArch LASX, together with improvements to the existing LSX implementation.</p>
<p>On <code>aarch64</code>, <code>XXH3</code> now prefers <code>NEON</code> over <code>SVE</code>. On tested processors, this improves performance by 25–40%. <code>XXH3</code> streaming performance has also been improved for workloads made of small updates.</p>
<h3>Command-line enhancements</h3>
<p><code>xxhsum</code> can now receive a full 64-bit seed through <code>-s</code> or <code>--seed</code>.</p>
<p>Command-line parsing is more flexible: options may appear anywhere, even after filenames, while <code>--</code> explicitly terminates option processing.</p>
<p>When processing a list of files, read errors no longer prevent subsequent files from being processed.</p>
<p>Windows support received a substantial update, notably for long paths, UNC paths and filenames containing components that require extended <code>Win32</code> path handling.</p>
<h3>Build and integration</h3>
<p>Runtime dispatch detection has been corrected for cross-compilation and non-x86 targets.</p>
<p><code>make</code> builds now isolate object files by configuration, avoiding accidental reuse across incompatible flag sets and allowing parallel test builds.</p>
<p>The <code>cmake</code> integration moved from <code>cmake_unofficial</code> to <code>build/cmake</code>. Projects referring directly to the previous directory must update that path.</p>
<p>Low-level integrations can now redirect <code>XXH_memcpy()</code>, <code>XXH_memset()</code> and <code>XXH_memcmp()</code>. A new <code>XXH_NO_EXTERNC_GUARD</code> macro is also available for projects that need to manage C++ linkage themselves.</p>
<h3>Correctness and portability</h3>
<p>A strict-aliasing issue that could cause <code>gcc</code> to miscompile some unaligned reads has been fixed. This release also addresses combinations involving <code>XXH_INLINE_ALL</code>, namespaces and x86 runtime dispatch, system headers included from an <code>extern "C"</code> block, and MSVC link-time optimization with warnings enabled as errors.</p>
<p>Portability improvements include compatibility with ARM builds using GCC versions older than 8, C++ compilation on Solaris and illumos, and improved installation metadata and paths on Windows and FreeBSD.</p>
<h3>Detailed changelist</h3>
<ul>
<li>perf : added RISC-V Vector extension (RVV) implementation, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zijianli1234/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zijianli1234">@zijianli1234</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/BoBoDai/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/BoBoDai">@BoBoDai</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/camel-cdr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/camel-cdr">@camel-cdr</a></li>
<li>perf : added LoongArch LASX implementation and improved LSX, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/24bit-xjkp/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/24bit-xjkp">@24bit-xjkp</a></li>
<li>perf : prefer NEON over SVE on AArch64, improving XXH3 speed by 25–40%, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Nicoshev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Nicoshev">@Nicoshev</a></li>
<li>perf : improved XXH3 streaming speed for very small updates, suggested by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aleksazr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aleksazr">@aleksazr</a></li>
<li>api : <code>XXH_memcpy()</code>, <code>XXH_memset()</code> and <code>XXH_memcmp()</code> can be redirected at compile time</li>
<li>api : new <code>XXH_NO_EXTERNC_GUARD</code> build macro for complex C++ integration</li>
<li>cli : added 64-bit seed support (<code>-s</code>, <code>--seed</code>), by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/d06i/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/d06i">@d06i</a></li>
<li>cli : options can appear after filenames; <code>--</code> terminates option parsing, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4013769614" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1098" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1098/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1098">#1098</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/unterkomplex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/unterkomplex">@unterkomplex</a></li>
<li>cli : continue processing subsequent files after read errors, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3357103660" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1064" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1064/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1064">#1064</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ZoomRmc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ZoomRmc">@ZoomRmc</a></li>
<li>cli : support long and special Windows paths, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3336732023" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1060" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1060/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1060">#1060</a>, based on <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3341996031" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1061" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1061/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1061">#1061</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/t-mat/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/t-mat">@t-mat</a></li>
<li>cli : improved benchmark accuracy, error handling and unit labels, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3181314195" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1051" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1051/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1051">#1051</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/calgray/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/calgray">@calgray</a></li>
<li>fix : unaligned reads could be miscompiled by GCC under strict aliasing, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2852260031" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1013" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1013/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1013">#1013</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lassipulkkinen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lassipulkkinen">@lassipulkkinen</a></li>
<li>fix : <code>XXH_INLINE_ALL</code> compatibility with <code>XXH_NAMESPACE</code> and x86 runtime dispatch, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pps83/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pps83">@pps83</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3454614831" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1071" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1071/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1071">#1071</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Dr-Hex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Dr-Hex">@Dr-Hex</a></li>
<li>fix : avoid including system headers inside an <code>extern "C"</code> block, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5071752914" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1122" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1122/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1122">#1122</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/andreas-schwab/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/andreas-schwab">@andreas-schwab</a></li>
<li>fix : compilation with MSVC link-time optimization and warnings as errors, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3082679178" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1038" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1038/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1038">#1038</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mi2think/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mi2think">@mi2think</a></li>
<li>build: improved runtime dispatch detection for cross-compilation and non-x86 targets, with help from <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eworm-de/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eworm-de">@eworm-de</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3606769571" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1081" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1081/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1081">#1081</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/PotMJ/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/PotMJ">@PotMJ</a></li>
<li>build: <code>LIBXXH_DISPATCH=1</code> now applies to static and dynamic libraries, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3316708801" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1058" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1058/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1058">#1058</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xiota/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xiota">@xiota</a></li>
<li>build: Make builds now isolate objects by configuration and support parallel test builds</li>
<li>build: moved CMake integration to <code>build/cmake</code> and improved cross-compilation detection</li>
<li>install: improved package metadata and installation paths on Windows and FreeBSD, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/iwamatsu/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/iwamatsu">@iwamatsu</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chitao1234/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chitao1234">@chitao1234</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sunpoet/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sunpoet">@sunpoet</a></li>
<li>portability: fixed compilation on ARM with GCC < 8, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mstorsjo/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mstorsjo">@mstorsjo</a></li>
<li>portability: fixed C++ compilation on Solaris and illumos, by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/luqmana/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/luqmana">@luqmana</a></li>
<li>doc : expanded <code>xxhsum</code> documentation and clarified the algorithm specification files</li>
<li>doc : documented non-cryptographic collision properties, notably for XXH3's mid-size path, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5328710907" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1127" data-hovercard-type="issue" data-hovercard-url="/Cyan4973/xxHash/issues/1127/hovercard" href="https://github.com/Cyan4973/xxHash/issues/1127">#1127</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/thomasahle/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/thomasahle">@thomasahle</a></li>
</ul>
<p><strong>Full changelog</strong>: <a class="commit-link" href="https://github.com/Cyan4973/xxHash/compare/v0.8.3...v0.8.4"><tt>v0.8.3...v0.8.4</tt></a></p>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sunpoet/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sunpoet">@sunpoet</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2768799987" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/994" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/994/hovercard" href="https://github.com/Cyan4973/xxHash/pull/994">#994</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/24bit-xjkp/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/24bit-xjkp">@24bit-xjkp</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2782440247" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/996" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/996/hovercard" href="https://github.com/Cyan4973/xxHash/pull/996">#996</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/walterdejong/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/walterdejong">@walterdejong</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2765615960" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/993" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/993/hovercard" href="https://github.com/Cyan4973/xxHash/pull/993">#993</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/chitao1234/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/chitao1234">@chitao1234</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2817186525" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1008" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1008/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1008">#1008</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Schell-HAR/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Schell-HAR">@Schell-HAR</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2832580632" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1009" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1009/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1009">#1009</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/musvaage/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/musvaage">@musvaage</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3018663372" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1021" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1021/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1021">#1021</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/iwamatsu/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/iwamatsu">@iwamatsu</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3026482622" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1024" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1024/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1024">#1024</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Nicoshev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Nicoshev">@Nicoshev</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3025397458" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1023" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1023/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1023">#1023</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zijianli1234/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zijianli1234">@zijianli1234</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3142871907" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1043" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1043/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1043">#1043</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lassipulkkinen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lassipulkkinen">@lassipulkkinen</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2852260031" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1013" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1013/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1013">#1013</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/YexuanXiao/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/YexuanXiao">@YexuanXiao</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3245615366" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1052" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1052/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1052">#1052</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eworm-de/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eworm-de">@eworm-de</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3268388164" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1055" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1055/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1055">#1055</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/stefan-sedlak/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/stefan-sedlak">@stefan-sedlak</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3395291166" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1068" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1068/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1068">#1068</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/BoBoDai/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/BoBoDai">@BoBoDai</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3397147001" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1069" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1069/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1069">#1069</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/camel-cdr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/camel-cdr">@camel-cdr</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3391231057" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1066" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1066/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1066">#1066</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FatihBAKIR/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FatihBAKIR">@FatihBAKIR</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3471652944" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1073" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1073/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1073">#1073</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/luqmana/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/luqmana">@luqmana</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3840532984" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1093" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1093/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1093">#1093</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marcusmueller/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marcusmueller">@marcusmueller</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3957633789" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1096" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1096/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1096">#1096</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mstorsjo/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mstorsjo">@mstorsjo</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3800165619" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1092" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1092/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1092">#1092</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/d06i/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/d06i">@d06i</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3730771055" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1088" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1088/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1088">#1088</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/NexusXe/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/NexusXe">@NexusXe</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4090561519" data-permission-text="Title is private" data-url="https://github.com/Cyan4973/xxHash/issues/1101" data-hovercard-type="pull_request" data-hovercard-url="/Cyan4973/xxHash/pull/1101/hovercard" href="https://github.com/Cyan4973/xxHash/pull/1101">#1101</a></li>
</ul>
Cyan4973
tag:github.com,2008:Repository/1215362023/2.5.62
2026-09-18T10:44:33Z
PolyHostInterface: 2.5.62
<ul>
<li>Added Session Recall toggle in Options, so you can either start from last loaded session or New Preset.</li>
<li>Added Single Instance toggle in Options. You can now run multiple instances of PHI standalone. Please note, this will affect the Session Recall as the last closed instance will be what loads in the next session.</li>
<li>Added mouse scrolling to the keyboard Pitch Bend and Mod wheels. PB has a 100ms reset, so continuous scrolling works, until a gap in scrolling of 100ms is read and that resets the PB back to central position. PB also now responds to incoming MIDI.</li>
<li>Added mouse scrolling to keyboard to adjust octaves shown.</li>
<li>Added Option to show/hide C# labels so you can see which notes you are playing.</li>
<li>Aligned tabs and right-hand tab buttons.</li>
</ul>
sl2365
tag:github.com,2008:Repository/1349499425/v1.1.0
2026-09-18T09:20:04Z
Celine: v1.1.0
<p>Built from <code>v1.1.0</code>.</p>
<p>Available for macOS, Windows, and Linux in VST3, LV2 and CLAP formats, plus AU on macOS and AAX on macOS and Windows.<br>
These builds are not code signed. macOS will warn the app is from an unidentified developer. Windows SmartScreen will warn on first run.<br>
The AAX build is still waiting for approval from AVID, so it will not work in consumer versions as of now.</p>
<p>To remove the quarantine attribute from a file or app on macOS, use the following command on all the files you wish to install.</p>
<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="xattr -d com.apple.quarantine <file_path>"><pre>xattr -d com.apple.quarantine <span class="pl-k"><</span>file_path<span class="pl-k">></span></pre></div>
<hr>
<p>Céline is free software under the <a href="https://github.com/Celine-audio/Celine/blob/v1.1.0/COPYING">AGPLv3</a>, and comes with no warranty. The corresponding source for these binaries is this repository at tag <a href="https://github.com/Celine-audio/Celine/tree/v1.1.0"><code>v1.1.0</code></a>.</p>
<p>If you have any issues with the software, please <a href="https://github.com/Celine-audio/Celine/issues">file an issue</a>.</p>
<p>Thank you for using our software !<br>
Céline Team.</p>
github-actions[bot]
tag:github.com,2008:Repository/1357647442/v1.2.1
2026-09-18T01:46:48Z
GALLERY: v1.2.1
<p>Built from <code>v1.2.1</code>.</p>
<p>Available for macOS, Windows, and Linux in VST3, LV2 and CLAP formats, plus AU on macOS and AAX on macOS and Windows.<br>
These builds are not code signed. macOS will warn the app is from an unidentified developer. Windows SmartScreen will warn on first run.<br>
The AAX build is still waiting for approval from AVID, so it will not work in consumer versions as of now.</p>
<p>To remove the quarantine attribute from a file or app on macOS, use the following command on all the files you wish to install.</p>
<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="xattr -d com.apple.quarantine <file_path>"><pre>xattr -d com.apple.quarantine <span class="pl-k"><</span>file_path<span class="pl-k">></span></pre></div>
<hr>
<p>GALLERY is free software under the <a href="https://github.com/Celine-audio/GALLERY/blob/v1.2.1/COPYING">AGPLv3</a>, and comes with no warranty. The corresponding source for these binaries is this repository at tag <a href="https://github.com/Celine-audio/GALLERY/tree/v1.2.1"><code>v1.2.1</code></a>.</p>
<p>If you have any issues with the software, please <a href="https://github.com/Celine-audio/GALLERY/issues">file an issue</a>.</p>
<p>Thank you for using our software!<br>
Céline Team.</p>
github-actions[bot]
tag:github.com,2008:Repository/56722299/2026-09-17
2026-09-17T15:43:52Z
mpv-android: 2026-09-17 Build
<h4>ℹ️ New <code>allstorage</code> APK</h4>
<p>The <code>api29</code> APK has been removed and replaced with <code>allstorage</code>, which uses the "manage external storage" permission to allow unrestricted file access without having to downgrade the API level.<br>
It will stay separate and not be shipped to Google Play.</p>
<h2>Change log</h2>
<ul>
<li>Fixes:
<ul>
<li>Fixed freeze/long delay before first TLS connection (<a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/obscenelyvague/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/obscenelyvague">@obscenelyvague</a>)</li>
<li>hwdec-related bug fixes</li>
</ul>
</li>
</ul>
<h2>Full set of build dependencies</h2>
<ul>
<li>Android NDK r30</li>
<li>mbedtls 3.6.7</li>
<li>dav1d <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/videolan/dav1d/commit/362bc1138228390a0a521ecf3af18b23c6afeb9e/hovercard" href="https://github.com/videolan/dav1d/commit/362bc1138228390a0a521ecf3af18b23c6afeb9e">videolan/dav1d@<tt>362bc11</tt></a></li>
<li>ffmpeg <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/FFmpeg/FFmpeg/commit/094a2f8a2a5e7fa64736e067de224ce28fdf5979/hovercard" href="https://github.com/FFmpeg/FFmpeg/commit/094a2f8a2a5e7fa64736e067de224ce28fdf5979">FFmpeg/FFmpeg@<tt>094a2f8</tt></a></li>
<li>libxml2 2.15.4</li>
<li>fontconfig 2.18.3</li>
<li>freetype 2.14.3</li>
<li>fribidi 1.0.16</li>
<li>harfbuzz 14.4.0</li>
<li>libunibreak 8.0</li>
<li>libass <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/libass/libass/commit/b2fe9d8770678a7b5271387d38c20657ebf3429a/hovercard" href="https://github.com/libass/libass/commit/b2fe9d8770678a7b5271387d38c20657ebf3429a">libass/libass@<tt>b2fe9d8</tt></a></li>
<li>lua 5.2.4</li>
<li>libplacebo <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/haasn/libplacebo/commit/3330a515d62139259c26239014f286e233bd3a5c/hovercard" href="https://github.com/haasn/libplacebo/commit/3330a515d62139259c26239014f286e233bd3a5c">haasn/libplacebo@<tt>3330a51</tt></a></li>
<li>curl 8.21.0</li>
<li>libmpv <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/mpv-player/mpv/commit/0b7ed670f7c353dd3dd4f8ae0fc788a181a15aa6/hovercard" href="https://github.com/mpv-player/mpv/commit/0b7ed670f7c353dd3dd4f8ae0fc788a181a15aa6">mpv-player/mpv@<tt>0b7ed67</tt></a></li>
<li>mpv-android <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/mpv-android/mpv-android/commit/fdf74f6830c47dbaa8a22ac79726e8303f1db5af/hovercard" href="https://github.com/mpv-android/mpv-android/commit/fdf74f6830c47dbaa8a22ac79726e8303f1db5af"><tt>fdf74f6</tt></a></li>
</ul>
<h3>🔽 Which APK do I download? 🔽</h3>
<p>You generally want to get <strong><code>arm64-v8a</code></strong>. Try <code>armeabi-v7a</code> for old devices. Or <code>x86</code> otherwise.<br>
If you are unsure then the <code>universal</code> APK will work everywhere.</p>
<p><strong>Note</strong>: Android TV is supported, but only available on F-Droid or by installing the APK manually using e.g. <a href="https://play.google.com/store/apps/details?id=com.esaba.downloader" rel="nofollow">Downloader</a>.</p>
sfan5
tag:github.com,2008:Repository/1238504280/v2.8.0
2026-09-17T11:18:27Z
aria2-next: v2.8.0 - Native HLS/DASH Downloads and Browser Capture Support
<div class="markdown-alert markdown-alert-note"><p class="markdown-alert-title"><svg data-component="Octicon" class="octicon octicon-info mr-2" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg>Note</p><p><strong>This is the first aria2-next release with native streaming-media downloads.</strong> HLS and MPEG-DASH now run inside the engine, with live recording and support for browser-captured inputs. These capabilities are available through the standalone CLI and RPC.</p>
</div>
<h3>Before upgrading</h3>
<ul>
<li>Linux binaries require <strong>glibc 2.35 or newer</strong> and a compatible system C++ runtime, matching Ubuntu 22.04. Older Linux installations must upgrade before using these binaries.</li>
<li>HLS/DASH manifests are now recognized automatically by URL or HTTP content type. Use <strong><code>--media=file</code></strong> when a script needs to save the original playlist or manifest unchanged.</li>
<li>If you used an unreleased media build, incompatible media checkpoints and task caches are discarded. Existing downloaded output is kept.</li>
</ul>
<h3>Native media downloads</h3>
<ul>
<li><strong>HLS and MPEG-DASH:</strong> download finite presentations or record live streams. Select video, audio and subtitle tracks, then save MP4, Matroska or compatible subtitle-only WebVTT output without transcoding.</li>
<li><strong>Inspect before downloading:</strong> expose available tracks and pause before fetching media payload. Track IDs remain stable when a manifest reorders its representations; unavailable selections return an explicit error.</li>
<li><strong>Recording and time ranges:</strong> set a live recording duration, finish a recording on demand, or select a finite HLS/DASH range. Ranges follow segment boundaries rather than individual frames.</li>
<li><strong>Pause, restart and retry:</strong> persist committed segments and track selection in SQLite, verify cached resources before reuse, and recover interrupted output finalization. <code>aria2.retryMedia</code> retains the task's GID and recovery data; <code>aria2.finishMedia</code> finalizes a live recording.</li>
<li><strong>Media progress:</strong> report download or recording phases and completed media duration. Final output size remains unknown until remuxing finishes; live streams do not show a fabricated completion percentage.</li>
</ul>
<h3>Browser capture support</h3>
<ul>
<li>Accept captured HLS/DASH manifests, ordered media fragments, separate source tracks and relative track offsets through <code>media-input</code> and <code>media=collection</code>.</li>
<li>Support AES-128 keys and IVs supplied with captured inputs. OpenSSL handles decryption, and FFmpeg checks candidate output. Inline live manifests retain their original URLs for subsequent refreshes.</li>
<li>Apply browser request headers to their observed origins, including scheme and port. Redirects, child playlists, segments and key requests each select their own context instead of inheriting another origin's credentials.</li>
<li>Advertise media capabilities and structured errors through RPC so clients can negotiate capture support and distinguish authentication, protected-media and selection failures.</li>
</ul>
<p>Browser discovery and recording are handled by the client; the engine accepts captured inputs for downloading and remuxing.</p>
<h3>Engine changes and fixes</h3>
<ul>
<li>Integrate GPAC <strong>26.07.0</strong> for manifests and segment timing, and FFmpeg <strong>8.1.2</strong> for demuxing and remuxing. Transfers use the existing libcurl transport; the engine does not launch an external downloader or FFmpeg process.</li>
<li>Refactor task lifecycle, RPC, options, HTTP transport, BitTorrent and platform code into focused modules while retaining the existing CLI, RPC and libaria2 entry points.</li>
<li>Centralize output naming. Use accepted payload headers for implicit HTTP filenames, preserve already-decoded browser hints, and retain the resolved path across restarts. Media titles keep embedded dots and receive the selected container extension.</li>
<li>Fix BitTorrent progress freezing after hash failures or file-selection changes by consuming libtorrent's native file progress, while retaining native completion checks.</li>
<li>Preserve separate HLS audio renditions, subtitle timing and presentation offsets through remuxing, including supported discontinuities and multi-period DASH content.</li>
</ul>
<h3>Scope</h3>
<p>DRM and unsupported encryption remain explicit errors. There is no transcoding. Captured fragments must form compatible media streams; arbitrary complete videos cannot be concatenated through this interface. Live recovery is limited to media still available from the server, and output containers must support the selected codecs.</p>
<p>See the <a href="https://github.com/AnInsomniacy/aria2-next/blob/v2.8.0/docs/media-downloads.md">media download guide</a> for CLI examples, RPC fields, track selection and recovery behavior.</p>
<h3>Downloads</h3>
<p>Release binaries and SHA-256 checksums are attached after the release build completes.</p>
<table>
<thead>
<tr>
<th>Platform</th>
<th>Asset</th>
</tr>
</thead>
<tbody>
<tr>
<td>Linux x86_64</td>
<td><code>aria2-next-2.8.0-linux-x86_64</code></td>
</tr>
<tr>
<td>Linux ARM64</td>
<td><code>aria2-next-2.8.0-linux-aarch64</code></td>
</tr>
<tr>
<td>macOS Apple Silicon</td>
<td><code>aria2-next-2.8.0-macos-arm64</code></td>
</tr>
<tr>
<td>macOS Intel</td>
<td><code>aria2-next-2.8.0-macos-x86_64</code></td>
</tr>
<tr>
<td>Windows x86_64</td>
<td><code>aria2-next-2.8.0-windows-x86_64.exe</code></td>
</tr>
<tr>
<td>Windows ARM64</td>
<td><code>aria2-next-2.8.0-windows-arm64.exe</code></td>
</tr>
<tr>
<td>Android ARM64</td>
<td><code>aria2-next-2.8.0-android-arm64</code></td>
</tr>
<tr>
<td>SHA-256 checksums</td>
<td><code>aria2-next-2.8.0-checksums.sha256</code></td>
</tr>
</tbody>
</table>
<p><strong>Full changelog:</strong> <a href="https://github.com/AnInsomniacy/aria2-next/compare/v2.7.5...v2.8.0">v2.7.5...v2.8.0</a></p>
AnInsomniacy
tag:github.com,2008:Repository/88200328/9.6.17
2026-09-17T10:43:36Z
LibreraReader: 9.6.17
<ul>
<li>Fixed crash</li>
<li>LibreraX has been integrated for opening books</li>
</ul>
<p>If you enjoy Librera PRO, LibreraX PRO, donations are appreciated: <a href="https://www.patreon.com/librera" rel="nofollow">https://www.patreon.com/librera</a></p>
<p>Please try the new LibreraX PRO app. Feedback is welcome at <a href="mailto:librera.reader@gmail.com">librera.reader@gmail.com</a><br>
<a href="https://github.com/foobnix/LibreraReader/blob/master/LIBRERAX.md">https://github.com/foobnix/LibreraReader/blob/master/LIBRERAX.md</a></p>
foobnix
tag:github.com,2008:Repository/11847500/0.12.0
2026-09-17T06:32:14Z
coreutils: 0.12.0
<h3><strong>Rust Coreutils 0.12.0 Release:</strong></h3>
<p>We are happy to announce the release of <strong>Rust Coreutils 0.12.0</strong> - a release focused on <strong>compatibility fixes for our Ubuntu friends</strong>.<br>
Ubuntu ships uutils coreutils as its default coreutils implementation, and this cycle was driven by what their users and maintainers reported: the bugs they asked us to prioritize are all fixed here, along with a long tail of smaller divergences from GNU. Few of these are glamorous, but they are exactly what breaks a script that has worked for twenty years.</p>
<p>Alongside that, we removed the last C dependency of <code>expr</code> (<code>onig</code> is replaced by the pure-Rust <a href="https://github.com/fancy-regex/fancy-regex">fancy-regex</a>), continued the Windows port (<code>nice</code>, <code>nohup</code> and <code>hostid</code> now build there, and <code>uucore</code>'s filesystem layer was rewritten with safe Win32 wrappers) and landed another round of security hardening on <code>ls</code>, <code>sort</code> and <code>install</code>.<br>
Also, some contributions had carried comments and code over from GNU coreutils, against our own rule<br>
that uutils is an original implementation. We reviewed the tree and rewrote what we found, in comments and in the few functions that followed the C too closely; no behaviour change. The GNU coreutils maintainers have been notified.</p>
<p><a href="https://savannah.gnu.org/news/?id=10932" rel="nofollow">GNU coreutils 9.12</a> was released during our cycle (kudos to the team!), and some of the work went that way too. Chasing compatibility tends to turn up things worth fixing or improving on both sides.</p>
<p>We also made it official: a utility being significantly slower than GNU is now treated as a bug, not a wishlist item. If you hit one, please report it as a bug.</p>
<p>We are now at <strong>653 passing, 21 failing, 0 errors</strong> on the GNU test suite.</p>
<hr>
<h3>GNU Test Suite Compatibility:</h3>
<table>
<thead>
<tr>
<th>Result</th>
<th>0.11.0</th>
<th>0.12.0</th>
<th>Change 0.11.0 to 0.12.0</th>
<th>% Total 0.11.0</th>
<th>% Total 0.12.0</th>
<th>% Change 0.11.0 to 0.12.0</th>
</tr>
</thead>
<tbody>
<tr>
<td>Pass</td>
<td>653</td>
<td>653</td>
<td>0</td>
<td>95.33%</td>
<td>94.36%</td>
<td>-0.97%</td>
</tr>
<tr>
<td>Skip</td>
<td>10</td>
<td>18</td>
<td>+8</td>
<td>1.46%</td>
<td>2.60%</td>
<td>+1.14%</td>
</tr>
<tr>
<td>Fail</td>
<td>22</td>
<td>21</td>
<td>-1</td>
<td>3.21%</td>
<td>3.03%</td>
<td>-0.18%</td>
</tr>
<tr>
<td>Error</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
<td>0%</td>
<td>0%</td>
</tr>
<tr>
<td>Total</td>
<td>685</td>
<td>692</td>
<td>+7 (new tests)</td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<blockquote>
<p><strong>Note:</strong> the suite grew by 7 tests (backport of GNU tests) and 8 more tests are skipped on our reference runner, so the raw pass count is flat while the failures went down again. Counting only the tests that actually run, we are at <strong>653/674 (96.9%)</strong>, our best ratio so far, and the second release in a row with no erroring test. We are comparing against Coreutils 9.11.</p>
</blockquote>
<hr>
<p><a target="_blank" rel="noopener noreferrer" href="https://github.com/uutils/coreutils-tracking/blob/main/gnu-results.svg?raw=true"><img src="https://github.com/uutils/coreutils-tracking/raw/main/gnu-results.svg?raw=true" alt="GNU testsuite evolution" style="max-width: 100%;"></a></p>
<hr>
<h3>Highlights:</h3>
<ul>
<li>
<p><strong>Ubuntu Compatibility</strong></p>
<ul>
<li>The issues Ubuntu asked us to fix first are all fixed: data loss in a parallel <code>install -D</code> (<a href="https://github.com/uutils/coreutils/issues/12355" data-hovercard-type="issue" data-hovercard-url="/uutils/coreutils/issues/12355/hovercard">#12355</a>), <code>du</code> on 32-bit architectures (<a href="https://github.com/uutils/coreutils/issues/11848" data-hovercard-type="issue" data-hovercard-url="/uutils/coreutils/issues/11848/hovercard">#11848</a>), <code>ls</code> ACL dereferencing (<a href="https://github.com/uutils/coreutils/issues/13234" data-hovercard-type="issue" data-hovercard-url="/uutils/coreutils/issues/13234/hovercard">#13234</a>), <code>cp -R</code> name collisions (<a href="https://bugs.launchpad.net/ubuntu/+source/rust-coreutils/+bug/2167118" rel="nofollow">LP#2167118</a>) and <code>chmod -R</code> through symlinks (<a href="https://bugs.launchpad.net/ubuntu/+source/rust-coreutils/+bug/2167122" rel="nofollow">LP#2167122</a>)</li>
<li>A whole family of options now accept a hyphen-leading value, like GNU does: <code>csplit --suffix-format</code>, <code>paste -d</code>, <code>join -t</code>, <code>stat --format</code>/<code>--printf</code>/<code>-c</code> and all of <code>numfmt</code>'s options. A <code>-</code> in a delimiter or a format string is data, not a flag</li>
<li><code>rm</code> no longer segfaults on very deeply nested directories</li>
<li><code>sort -n</code> applies to the key instead of the whole line, echoes a disorder line verbatim instead of reformatting it as a number, and no longer keeps every input file open while sorting</li>
<li><code>basename</code> trailing-separator handling for dot components, <code>realpath</code> exit status in quiet mode, <code>ln</code> keeping the destination when a forced link fails, <code>csplit</code> always creating the final split even when empty, <code>fmt -x</code>/<code>-X</code>, <code>printf</code> treating a <code>--</code> past the format as an argument, <code>test</code> rejecting an <code>-a</code>/<code>-o</code> that ends the expression, <code>echo -e</code> no longer expanding <code>\u</code>, <code>\U</code> and <code>\"</code></li>
<li><code>ls</code>: <code>dired</code> fixes, a tie in the time sort broken by the name, name sort for <code>-u</code>/<code>-c</code> in long format, capability markers that respect the dereference config; <code>dir</code> and <code>vdir</code> match the GNU default quoting</li>
<li><code>cp</code>: <code>--no-preserve</code> is retained over a later <code>--preserve</code>, and <code>--attributes-only</code> gives the destination the source's type</li>
<li>Error messages and exit codes aligned with GNU in <code>uniq</code>, <code>chgrp</code>, <code>factor</code>, <code>date</code>, <code>expr</code>, <code>od</code>, <code>tty</code>, <code>tsort</code> and <code>pathchk</code></li>
<li><code>truncate</code> finally implements <code>--io-blocks</code>, and <code>date</code> accepts multiple <code>--reference</code></li>
</ul>
</li>
<li>
<p><strong>Security Hardening</strong></p>
<ul>
<li><code>ls</code>: report <code>stat()</code> failures on directory entries instead of silently showing wrong metadata</li>
<li><code>sort</code>: temporary files are created with mode 0600 instead of the umask, the <code>-o</code> output copy is kept private too, and a failure to truncate the output file is now reported</li>
<li><code>install</code>: the fd-based destination is created exclusively and at 0600</li>
<li><code>rm</code>, <code>chmod</code>, <code>chown</code>, <code>chgrp</code>: <code>--preserve-root</code> compares <code>(st_dev, st_ino)</code> rather than the path</li>
<li><code>chcon</code> walks directories with <code>DirFd</code> instead of <code>fts</code></li>
<li><code>SECURITY.md</code> now requires a boundary crossing, not just a GNU divergence, for a report to be treated as a vulnerability</li>
</ul>
</li>
<li>
<p><strong>Robustness</strong></p>
<ul>
<li>Panics and overflows fixed in <code>stat</code> (out-of-range octal escape), <code>ls</code> (a color style with no attributes), <code>split</code> (a huge <code>-n l/K/N</code> chunk count), <code>truncate</code> (a size above <code>i64::MAX</code> no longer creates the file), <code>cksum</code> (an over-length BLAKE2b digest in a check file) and <code>uucore</code> (invalid input lines)</li>
<li><code>tsort</code> handles invalid UTF-8 input and flushes stdout properly; <code>date</code> reports invalid UTF-8 lines in <code>-f</code> input; <code>truncate</code> supports non-UTF-8 paths for <code>--reference</code></li>
</ul>
</li>
<li>
<p><strong>Dependency Diet</strong></p>
<ul>
<li><code>expr</code> replaces <code>onig</code> with <a href="https://github.com/fancy-regex/fancy-regex">fancy-regex</a>, removing a C dependency and the CI hacks that came with it. As a side effect, <code>expr</code> switched to leftmost-longest regex matching, matching GNU</li>
<li><code>mv</code> replaces <code>fs_extra</code> with std directory sizing; <code>fts-sys</code> is gone; <code>cksum</code> uses aws-lc instead of vendored OpenSSL on MSVC, so a Perl install is no longer needed to build on Windows</li>
<li><code>bstr</code> default features disabled, <code>uucore</code>'s hand-rolled process functions dropped in favor of <code>rustix</code></li>
</ul>
</li>
<li>
<p><strong>Cross-platform Reach</strong></p>
<ul>
<li>Windows: <code>nice</code> (with a Priority Class mapping), <code>nohup</code> and <code>hostid</code> now build, <code>dirname</code> handles backslashes, user locale detection landed, checksum paths use forward slashes, and <code>mv</code>, <code>sync</code>, <code>hostname</code>, <code>touch</code> and <code>rm</code> moved to safe std APIs</li>
<li><code>uucore</code> on Windows: <code>fsext</code> rewritten with safe Win32 wrappers, real free space and mount paths; <code>df</code> resolves paths by mount prefix</li>
<li>New and improved targets: <code>aarch64-unknown-linux-ohos</code>, AIX (<code>fsext</code>), Haiku (<code>fs</code>), Hurd (<code>signals</code>), NetBSD (<code>safe-traversal</code>), plus wider <code>process</code>, <code>utmpx</code> and <code>entries</code> support</li>
<li>WASI: <code>cp</code> attribute preservation and reflink handling, <code>mktemp</code> temporary directories, <code>tail</code> integration coverage</li>
<li>macOS: <code>tail</code> stdin-redirect, pid and follow-name tests re-enabled</li>
</ul>
</li>
<li>
<p><strong>Performance</strong></p>
<ul>
<li><code>sort</code> gained benchmarks for spilling, checking and shared prefixes; <code>du</code> benchmarks now warm the OS page cache before timing</li>
<li><code>cp</code> avoids resolving the cwd for absolute recursive copies; <code>tsort</code> gives the OS a sequential access hint</li>
<li>A significant performance gap with GNU is now stated in the README as a bug, and we handle it as one</li>
</ul>
</li>
<li>
<p><strong>Contributions</strong>: This release landed <strong>191 pull requests</strong> from <strong>16 new contributors</strong></p>
</li>
</ul>
<hr>
<h3>Call to Action:</h3>
<p><strong>Try it in your browser</strong> - <a href="https://uutils.github.io/playground/" rel="nofollow">Online Playground</a> powered by WebAssembly<br>
<strong>Help us translate</strong> - Contribute to <a href="https://hosted.weblate.org/projects/rust-coreutils/" rel="nofollow">Rust Coreutils on Weblate</a><br>
<strong>Sponsor us on GitHub</strong> to accelerate development: <a href="https://github.com/sponsors/uutils">github.com/sponsors/uutils</a></p>
<h2>What's Changed</h2>
<h2>basename</h2>
<ul>
<li>basename: fix trailing-separator handling for dot components by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wangyusheng1985/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wangyusheng1985">@wangyusheng1985</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5334172446" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14365" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14365/hovercard" href="https://github.com/uutils/coreutils/pull/14365">#14365</a></li>
</ul>
<h2>chcon</h2>
<ul>
<li>chcon: walk directories with DirFd instead of fts by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5365363097" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14413" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14413/hovercard" href="https://github.com/uutils/coreutils/pull/14413">#14413</a></li>
</ul>
<h2>chgrp</h2>
<ul>
<li>rm, chmod, chown, chgrp: compare (st_dev, st_ino) for --preserve-root by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364929990" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14411" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14411/hovercard" href="https://github.com/uutils/coreutils/pull/14411">#14411</a></li>
<li>chgrp: strip error when changing group of file fails by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Devel08/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Devel08">@Devel08</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5359988399" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14403" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14403/hovercard" href="https://github.com/uutils/coreutils/pull/14403">#14403</a></li>
</ul>
<h2>chmod</h2>
<ul>
<li>rm, chmod, chown, chgrp: compare (st_dev, st_ino) for --preserve-root by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364929990" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14411" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14411/hovercard" href="https://github.com/uutils/coreutils/pull/14411">#14411</a></li>
<li>chmod: fix clippy lints by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381809355" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14447" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14447/hovercard" href="https://github.com/uutils/coreutils/pull/14447">#14447</a></li>
<li>chmod: do not check umask on skipped symlinks during recursion by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okaythi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okaythi">@okaythi</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5431934645" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14512" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14512/hovercard" href="https://github.com/uutils/coreutils/pull/14512">#14512</a></li>
<li>chmod: gate by target support by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5467077569" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14585" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14585/hovercard" href="https://github.com/uutils/coreutils/pull/14585">#14585</a></li>
</ul>
<h2>chown</h2>
<ul>
<li>rm, chmod, chown, chgrp: compare (st_dev, st_ino) for --preserve-root by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364929990" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14411" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14411/hovercard" href="https://github.com/uutils/coreutils/pull/14411">#14411</a></li>
</ul>
<h2>cksum</h2>
<ul>
<li>cksum: use aws-lc instead of vendored openssl on MSVC to avoid perl by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5450334660" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14559" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14559/hovercard" href="https://github.com/uutils/coreutils/pull/14559">#14559</a></li>
<li>cksum: do not abort on an over-length BLAKE2b digest in a check file by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Dijaa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Dijaa">@Dijaa</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5425876910" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14508" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14508/hovercard" href="https://github.com/uutils/coreutils/pull/14508">#14508</a></li>
</ul>
<h2>cp</h2>
<ul>
<li>cp: avoid resolving cwd for absolute recursive copies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/varranvar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/varranvar">@varranvar</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5303947047" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14336" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14336/hovercard" href="https://github.com/uutils/coreutils/pull/14336">#14336</a></li>
<li>fix(wasi): cp attribute preservation and reflink handling by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eduardomourar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eduardomourar">@eduardomourar</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5034766764" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13685" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13685/hovercard" href="https://github.com/uutils/coreutils/pull/13685">#13685</a></li>
<li>cp: fix copying entries sharing parent directory name with -R . by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okaythi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okaythi">@okaythi</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5438557376" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14530" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14530/hovercard" href="https://github.com/uutils/coreutils/pull/14530">#14530</a></li>
<li>cp: retain --no-preserve over later --preserve by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5448868044" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14555" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14555/hovercard" href="https://github.com/uutils/coreutils/pull/14555">#14555</a></li>
<li>cp: --attributes-only must give the destination the source's type by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5479832801" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14622" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14622/hovercard" href="https://github.com/uutils/coreutils/pull/14622">#14622</a></li>
</ul>
<h2>csplit</h2>
<ul>
<li>csplit: accept a hyphen-leading --suffix-format value by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arbelonson-source/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arbelonson-source">@arbelonson-source</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5297298972" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14320" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14320/hovercard" href="https://github.com/uutils/coreutils/pull/14320">#14320</a></li>
<li>csplit: always create the final split, even when empty by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yuefdev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yuefdev">@yuefdev</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5452933892" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14565" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14565/hovercard" href="https://github.com/uutils/coreutils/pull/14565">#14565</a></li>
</ul>
<h2>date</h2>
<ul>
<li>date: report invalid UTF-8 lines in -f file/stdin input by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/alexchen-sys/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/alexchen-sys">@alexchen-sys</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5292802361" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14280" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14280/hovercard" href="https://github.com/uutils/coreutils/pull/14280">#14280</a></li>
<li>date: wrap errors with thiserror by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Devel08/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Devel08">@Devel08</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5302771963" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14333" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14333/hovercard" href="https://github.com/uutils/coreutils/pull/14333">#14333</a></li>
<li>date: exit with 1 for expected file, got directory by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Devel08/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Devel08">@Devel08</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5376277648" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14435" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14435/hovercard" href="https://github.com/uutils/coreutils/pull/14435">#14435</a></li>
<li>date: rewrite test to remove <code>thread::sleep</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5441001933" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14535" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14535/hovercard" href="https://github.com/uutils/coreutils/pull/14535">#14535</a></li>
<li>date: allow multiple <code>--reference</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445944467" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14546" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14546/hovercard" href="https://github.com/uutils/coreutils/pull/14546">#14546</a></li>
</ul>
<h2>dd</h2>
<ul>
<li>dd: simplify windows stdin in match guard by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hlsxx/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hlsxx">@hlsxx</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5314948785" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14347" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14347/hovercard" href="https://github.com/uutils/coreutils/pull/14347">#14347</a></li>
<li>dd: fix broken man page formatting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hlsxx/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hlsxx">@hlsxx</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5315285650" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14348" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14348/hovercard" href="https://github.com/uutils/coreutils/pull/14348">#14348</a></li>
</ul>
<h2>dir</h2>
<ul>
<li>dir, vdir: match GNU default quoting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443639668" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14538" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14538/hovercard" href="https://github.com/uutils/coreutils/pull/14538">#14538</a></li>
</ul>
<h2>dirname</h2>
<ul>
<li>dirname: Fix backslash support on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5402835184" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14479" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14479/hovercard" href="https://github.com/uutils/coreutils/pull/14479">#14479</a></li>
</ul>
<h2>du</h2>
<ul>
<li>du: warm OS page cache before timing in benchmarks by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5158815855" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13958" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13958/hovercard" href="https://github.com/uutils/coreutils/pull/13958">#13958</a></li>
<li>du: fix EOVERFLOW on 32-bit Linux by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5446708892" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14548" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14548/hovercard" href="https://github.com/uutils/coreutils/pull/14548">#14548</a></li>
</ul>
<h2>echo</h2>
<ul>
<li>echo: don't expand \u, \U and " in -e by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SichenLiang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SichenLiang">@SichenLiang</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5394965173" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14475" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14475/hovercard" href="https://github.com/uutils/coreutils/pull/14475">#14475</a></li>
</ul>
<h2>env</h2>
<ul>
<li>env: trace the environment changes under -v by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5359789472" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14401" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14401/hovercard" href="https://github.com/uutils/coreutils/pull/14401">#14401</a></li>
<li>Revert "env: trace the environment changes under -v" by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5410168825" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14493" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14493/hovercard" href="https://github.com/uutils/coreutils/pull/14493">#14493</a></li>
</ul>
<h2>expr</h2>
<ul>
<li>expr: replace onig with fancy-regex by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5299940133" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14329" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14329/hovercard" href="https://github.com/uutils/coreutils/pull/14329">#14329</a></li>
<li>expr: re-enable test_regex_caret on Windows arm64 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5373912073" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14429" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14429/hovercard" href="https://github.com/uutils/coreutils/pull/14429">#14429</a></li>
<li>expr: exit with on a write error by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Devel08/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Devel08">@Devel08</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5417428551" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14500" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14500/hovercard" href="https://github.com/uutils/coreutils/pull/14500">#14500</a></li>
<li>expr: switch to leftmost-longest regex matching behavior by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/keith-hall/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/keith-hall">@keith-hall</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5437546771" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14527" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14527/hovercard" href="https://github.com/uutils/coreutils/pull/14527">#14527</a></li>
</ul>
<h2>factor</h2>
<ul>
<li>factor: strip error code in stdin error message by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Devel08/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Devel08">@Devel08</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5429121168" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14511" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14511/hovercard" href="https://github.com/uutils/coreutils/pull/14511">#14511</a></li>
</ul>
<h2>fmt</h2>
<ul>
<li>fmt: honor -x and -X instead of always matching prefixes exactly by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MaxFreedomPollard/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MaxFreedomPollard">@MaxFreedomPollard</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5367245882" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14417" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14417/hovercard" href="https://github.com/uutils/coreutils/pull/14417">#14417</a></li>
</ul>
<h2>head</h2>
<ul>
<li>head, tail: reject multiplier suffixes that GNU rejects by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kennywillbe/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kennywillbe">@kennywillbe</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5286285967" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14228" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14228/hovercard" href="https://github.com/uutils/coreutils/pull/14228">#14228</a></li>
</ul>
<h2>hostid</h2>
<ul>
<li>hostid: remove unuseful lock() by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5371997809" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14426" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14426/hovercard" href="https://github.com/uutils/coreutils/pull/14426">#14426</a></li>
<li>hostid: build for Windows & remove unsafe by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5372356719" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14427" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14427/hovercard" href="https://github.com/uutils/coreutils/pull/14427">#14427</a></li>
</ul>
<h2>hostname</h2>
<ul>
<li>mv, sync, hostname, touch, rm: use safe std APIs on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381078816" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14445" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14445/hovercard" href="https://github.com/uutils/coreutils/pull/14445">#14445</a></li>
<li>hostname: gate by target support by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5476847123" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14612" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14612/hovercard" href="https://github.com/uutils/coreutils/pull/14612">#14612</a></li>
</ul>
<h2>install</h2>
<ul>
<li>install: fix EEXIST race losing files in parallel install -D by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eyupcanakman/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eyupcanakman">@eyupcanakman</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4497013771" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/12429" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/12429/hovercard" href="https://github.com/uutils/coreutils/pull/12429">#12429</a></li>
<li>test_install.rs: add test case for eCryptfs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445563381" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14545" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14545/hovercard" href="https://github.com/uutils/coreutils/pull/14545">#14545</a></li>
<li>install: create the fd-based destination exclusively and at 0600 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5480204849" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14625" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14625/hovercard" href="https://github.com/uutils/coreutils/pull/14625">#14625</a></li>
</ul>
<h2>join</h2>
<ul>
<li>join: accept a hyphen-leading -t separator, quote it in the error by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arbelonson-source/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arbelonson-source">@arbelonson-source</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5297287170" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14318" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14318/hovercard" href="https://github.com/uutils/coreutils/pull/14318">#14318</a></li>
</ul>
<h2>link</h2>
<ul>
<li>link: add tests for zero args and existing destination by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/anihal/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/anihal">@anihal</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3991871859" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/11119" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/11119/hovercard" href="https://github.com/uutils/coreutils/pull/11119">#11119</a></li>
</ul>
<h2>ln</h2>
<ul>
<li>ln: keep the destination when a forced link fails by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nagendramohan/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nagendramohan">@nagendramohan</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5458519231" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14574" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14574/hovercard" href="https://github.com/uutils/coreutils/pull/14574">#14574</a></li>
</ul>
<h2>logname</h2>
<ul>
<li>logname: use no_flush by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5333609905" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14364" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14364/hovercard" href="https://github.com/uutils/coreutils/pull/14364">#14364</a></li>
</ul>
<h2>ls</h2>
<ul>
<li>ls: fix panic on a color style with no attributes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/harshasiddartha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/harshasiddartha">@harshasiddartha</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5339897946" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14373" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14373/hovercard" href="https://github.com/uutils/coreutils/pull/14373">#14373</a></li>
<li>ls: avoid accessing by index by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5345611741" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14380" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14380/hovercard" href="https://github.com/uutils/coreutils/pull/14380">#14380</a></li>
<li>ls: apply dir and vdir format defaults in Config::from by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5383397369" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14450" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14450/hovercard" href="https://github.com/uutils/coreutils/pull/14450">#14450</a></li>
<li>ls: break a tie in the time sort with the name by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/luantaraschi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/luantaraschi">@luantaraschi</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5207284258" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14049" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14049/hovercard" href="https://github.com/uutils/coreutils/pull/14049">#14049</a></li>
<li>ls: fix two dired bugs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5416736909" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14499" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14499/hovercard" href="https://github.com/uutils/coreutils/pull/14499">#14499</a></li>
<li>fix(ls): ensure ACL and capability markers respect dereference config by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sachinskss/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sachinskss">@sachinskss</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4866930286" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13368" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13368/hovercard" href="https://github.com/uutils/coreutils/pull/13368">#13368</a></li>
<li>ls: use name sort for -u/-c in long format by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5457258766" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14573" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14573/hovercard" href="https://github.com/uutils/coreutils/pull/14573">#14573</a></li>
<li>ls: report stat() failures on directory entries (GHSA-fhfr-qj69-pq5m) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5448524816" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14553" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14553/hovercard" href="https://github.com/uutils/coreutils/pull/14553">#14553</a></li>
</ul>
<h2>mknod</h2>
<ul>
<li>mknod: use dev_t type to avoid casting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5455961318" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14569" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14569/hovercard" href="https://github.com/uutils/coreutils/pull/14569">#14569</a></li>
</ul>
<h2>mktemp</h2>
<ul>
<li>fix(mktemp): add wasi platform support for temporary directory handling by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eduardomourar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eduardomourar">@eduardomourar</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5085930789" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13786" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13786/hovercard" href="https://github.com/uutils/coreutils/pull/13786">#13786</a></li>
</ul>
<h2>mv</h2>
<ul>
<li>mv: avoid accessing by index by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5345438328" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14379" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14379/hovercard" href="https://github.com/uutils/coreutils/pull/14379">#14379</a></li>
<li>mv: test broken symlink file/dir as target by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hlsxx/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hlsxx">@hlsxx</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3901978502" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/10739" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/10739/hovercard" href="https://github.com/uutils/coreutils/pull/10739">#10739</a></li>
<li>mv, sync, hostname, touch, rm: use safe std APIs on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381078816" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14445" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14445/hovercard" href="https://github.com/uutils/coreutils/pull/14445">#14445</a></li>
<li>mv: replace fs_extra with std directory sizing by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5375746154" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14432" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14432/hovercard" href="https://github.com/uutils/coreutils/pull/14432">#14432</a></li>
<li>generalize some mv code for ln, cp by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5479924502" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14623" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14623/hovercard" href="https://github.com/uutils/coreutils/pull/14623">#14623</a></li>
</ul>
<h2>nice</h2>
<ul>
<li>nice: prepare supporting Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5384283594" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14452" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14452/hovercard" href="https://github.com/uutils/coreutils/pull/14452">#14452</a></li>
<li>nice: map Windows Priority Class by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5387508204" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14457" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14457/hovercard" href="https://github.com/uutils/coreutils/pull/14457">#14457</a></li>
</ul>
<h2>nohup</h2>
<ul>
<li>nohup: simplify by .into() by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5395839529" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14476" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14476/hovercard" href="https://github.com/uutils/coreutils/pull/14476">#14476</a></li>
<li>nohup: build for Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5389671363" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14461" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14461/hovercard" href="https://github.com/uutils/coreutils/pull/14461">#14461</a></li>
<li>nohup: move platform code into platform/{unix,windows}.rs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5436261075" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14525" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14525/hovercard" href="https://github.com/uutils/coreutils/pull/14525">#14525</a></li>
</ul>
<h2>numfmt</h2>
<ul>
<li>numfmt: accept hyphen-leading -d/--suffix/--padding values by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arbelonson-source/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arbelonson-source">@arbelonson-source</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5297330209" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14322" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14322/hovercard" href="https://github.com/uutils/coreutils/pull/14322">#14322</a></li>
<li>numfmt: accept hyphen-leading values for the remaining options by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5333349740" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14362" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14362/hovercard" href="https://github.com/uutils/coreutils/pull/14362">#14362</a></li>
<li>numfmt: zero-pad the number, not the unit suffix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5358481296" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14393" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14393/hovercard" href="https://github.com/uutils/coreutils/pull/14393">#14393</a></li>
</ul>
<h2>od</h2>
<ul>
<li>od: say the skip ran past the end of the combined input by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5359684933" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14399" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14399/hovercard" href="https://github.com/uutils/coreutils/pull/14399">#14399</a></li>
</ul>
<h2>paste</h2>
<ul>
<li>paste: accept a hyphen-leading -d delimiter list by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arbelonson-source/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arbelonson-source">@arbelonson-source</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5297311983" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14321" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14321/hovercard" href="https://github.com/uutils/coreutils/pull/14321">#14321</a></li>
</ul>
<h2>pathchk</h2>
<ul>
<li>pathchk: reject empty path in portability mode by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5425421367" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14506" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14506/hovercard" href="https://github.com/uutils/coreutils/pull/14506">#14506</a></li>
<li>pathchk: remove <code>#![allow(unused_must_use)]</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5425757994" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14507" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14507/hovercard" href="https://github.com/uutils/coreutils/pull/14507">#14507</a></li>
</ul>
<h2>pinky</h2>
<ul>
<li>pinky: make it more rust idiomatic by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5371756418" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14424" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14424/hovercard" href="https://github.com/uutils/coreutils/pull/14424">#14424</a></li>
</ul>
<h2>pr</h2>
<ul>
<li>pr: three small refactorings by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5440604438" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14534" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14534/hovercard" href="https://github.com/uutils/coreutils/pull/14534">#14534</a></li>
</ul>
<h2>printf</h2>
<ul>
<li>printf: honor POSIXLY_CORRECT for the character-constant warning by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SichenLiang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SichenLiang">@SichenLiang</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5366678609" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14416" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14416/hovercard" href="https://github.com/uutils/coreutils/pull/14416">#14416</a></li>
<li>printf: treat a <code>--</code> past the format as an argument by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5358856372" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14394" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14394/hovercard" href="https://github.com/uutils/coreutils/pull/14394">#14394</a></li>
</ul>
<h2>ptx</h2>
<ul>
<li>ptx: make the code more rust idiomatic + fix some comments by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5472186168" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14595" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14595/hovercard" href="https://github.com/uutils/coreutils/pull/14595">#14595</a></li>
</ul>
<h2>realpath</h2>
<ul>
<li>realpath: fix exit status in quiet mode by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378496309" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14442" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14442/hovercard" href="https://github.com/uutils/coreutils/pull/14442">#14442</a></li>
</ul>
<h2>rm</h2>
<ul>
<li>rm, chmod, chown, chgrp: compare (st_dev, st_ino) for --preserve-root by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364929990" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14411" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14411/hovercard" href="https://github.com/uutils/coreutils/pull/14411">#14411</a></li>
<li>mv, sync, hostname, touch, rm: use safe std APIs on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381078816" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14445" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14445/hovercard" href="https://github.com/uutils/coreutils/pull/14445">#14445</a></li>
<li>rm: fix segfault on very deeply nested directories by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5448723800" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14554" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14554/hovercard" href="https://github.com/uutils/coreutils/pull/14554">#14554</a></li>
</ul>
<h2>sort</h2>
<ul>
<li>sort: apply -n to the key, not the whole line by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5300238923" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14331" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14331/hovercard" href="https://github.com/uutils/coreutils/pull/14331">#14331</a></li>
<li>sort: add benchmarks for spilling, checking and shared prefixes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5335594697" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14367" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14367/hovercard" href="https://github.com/uutils/coreutils/pull/14367">#14367</a></li>
<li>sort: echo the disorder line verbatim, not reformatted as a number by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5356425842" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14389" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14389/hovercard" href="https://github.com/uutils/coreutils/pull/14389">#14389</a></li>
<li>sort: do not hold all inputs open while sorting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Hekzory/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Hekzory">@Hekzory</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5371683344" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14423" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14423/hovercard" href="https://github.com/uutils/coreutils/pull/14423">#14423</a></li>
<li>sort: simplify get_unit by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5424863700" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14505" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14505/hovercard" href="https://github.com/uutils/coreutils/pull/14505">#14505</a></li>
<li>sort: gate tests correctly for BSD by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5440533489" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14533" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14533/hovercard" href="https://github.com/uutils/coreutils/pull/14533">#14533</a></li>
<li>sort: report a failure to truncate the -o output file by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5478663766" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14617" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14617/hovercard" href="https://github.com/uutils/coreutils/pull/14617">#14617</a></li>
<li>sort: create temporary files with mode 0600 instead of the umask by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3883106179" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/10647" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/10647/hovercard" href="https://github.com/uutils/coreutils/pull/10647">#10647</a></li>
<li>sort: keep the output-file copy private too by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5480161417" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14624" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14624/hovercard" href="https://github.com/uutils/coreutils/pull/14624">#14624</a></li>
</ul>
<h2>split</h2>
<ul>
<li>split: fix overflow on a huge -n l/K/N chunk count by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/harshasiddartha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/harshasiddartha">@harshasiddartha</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5340109746" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14374" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14374/hovercard" href="https://github.com/uutils/coreutils/pull/14374">#14374</a></li>
</ul>
<h2>stat</h2>
<ul>
<li>stat: accept a hyphen-leading --format/--printf/-c value by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/arbelonson-source/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/arbelonson-source">@arbelonson-source</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5297344963" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14323" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14323/hovercard" href="https://github.com/uutils/coreutils/pull/14323">#14323</a></li>
<li>stat: fix overflow on out-of-range octal escape by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/harshasiddartha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/harshasiddartha">@harshasiddartha</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5339896380" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14371" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14371/hovercard" href="https://github.com/uutils/coreutils/pull/14371">#14371</a></li>
</ul>
<h2>stty</h2>
<ul>
<li>test(stty): gate by target support by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5456224942" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14571" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14571/hovercard" href="https://github.com/uutils/coreutils/pull/14571">#14571</a></li>
</ul>
<h2>sync</h2>
<ul>
<li>mv, sync, hostname, touch, rm: use safe std APIs on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381078816" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14445" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14445/hovercard" href="https://github.com/uutils/coreutils/pull/14445">#14445</a></li>
</ul>
<h2>tail</h2>
<ul>
<li>head, tail: reject multiplier suffixes that GNU rejects by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kennywillbe/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kennywillbe">@kennywillbe</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5286285967" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14228" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14228/hovercard" href="https://github.com/uutils/coreutils/pull/14228">#14228</a></li>
<li>test(tail): fix follow name truncate failing on macos by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/eduardomourar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/eduardomourar">@eduardomourar</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5377307483" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14438" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14438/hovercard" href="https://github.com/uutils/coreutils/pull/14438">#14438</a></li>
<li>tail: enable working stdin-redirect and pid tests on macOS by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5375765958" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14433" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14433/hovercard" href="https://github.com/uutils/coreutils/pull/14433">#14433</a></li>
</ul>
<h2>test</h2>
<ul>
<li>test: reject a <code>-a</code>/<code>-o</code> that ends the expression by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5358897034" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14395" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14395/hovercard" href="https://github.com/uutils/coreutils/pull/14395">#14395</a></li>
<li>test: Honor PATHEXT on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5404380407" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14481" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14481/hovercard" href="https://github.com/uutils/coreutils/pull/14481">#14481</a></li>
</ul>
<h2>touch</h2>
<ul>
<li>mv, sync, hostname, touch, rm: use safe std APIs on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wtcpython/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wtcpython">@wtcpython</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381078816" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14445" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14445/hovercard" href="https://github.com/uutils/coreutils/pull/14445">#14445</a></li>
</ul>
<h2>truncate</h2>
<ul>
<li>truncate: reject a size above i64::MAX instead of creating the file by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AlejandroCoronadoN/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AlejandroCoronadoN">@AlejandroCoronadoN</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5137323144" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13902" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13902/hovercard" href="https://github.com/uutils/coreutils/pull/13902">#13902</a></li>
<li>fix(truncate): implement --io-blocks by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ThomasHabets/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ThomasHabets">@ThomasHabets</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4912067294" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13432" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13432/hovercard" href="https://github.com/uutils/coreutils/pull/13432">#13432</a></li>
<li>truncate: group fifo-related tests in mod by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5348359346" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14385" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14385/hovercard" href="https://github.com/uutils/coreutils/pull/14385">#14385</a></li>
<li>truncate: support non-UTF8 paths for <code>--reference</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5349784883" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14386" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14386/hovercard" href="https://github.com/uutils/coreutils/pull/14386">#14386</a></li>
<li>truncate: remove unreachable code by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5370654469" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14422" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14422/hovercard" href="https://github.com/uutils/coreutils/pull/14422">#14422</a></li>
</ul>
<h2>tsort</h2>
<ul>
<li>tsort stdout flushing fix and several error messages handling ameliorations by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/anastygnome/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/anastygnome">@anastygnome</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5348122519" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14384" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14384/hovercard" href="https://github.com/uutils/coreutils/pull/14384">#14384</a></li>
<li>tsort: handle invalid utf8 in input by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/anastygnome/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/anastygnome">@anastygnome</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5391526339" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14464" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14464/hovercard" href="https://github.com/uutils/coreutils/pull/14464">#14464</a></li>
<li>tsort: add sequential file access hint on windows and where available on unix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/anastygnome/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/anastygnome">@anastygnome</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5391163749" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14463" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14463/hovercard" href="https://github.com/uutils/coreutils/pull/14463">#14463</a></li>
</ul>
<h2>tty</h2>
<ul>
<li>tty: add missing newline to output by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChrisX101010/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChrisX101010">@ChrisX101010</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3815373845" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/10252" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/10252/hovercard" href="https://github.com/uutils/coreutils/pull/10252">#10252</a></li>
<li>tty: avoid exit & show write error by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5334595277" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14366" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14366/hovercard" href="https://github.com/uutils/coreutils/pull/14366">#14366</a></li>
</ul>
<h2>uniq</h2>
<ul>
<li>uniq: drop the "Could not open" prefix from open errors by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/abhijeetvichare76/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/abhijeetvichare76">@abhijeetvichare76</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5289816191" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14262" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14262/hovercard" href="https://github.com/uutils/coreutils/pull/14262">#14262</a></li>
</ul>
<h2>uptime</h2>
<ul>
<li>uptime: accept hour or minute in pretty-print tests by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5446141225" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14547" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14547/hovercard" href="https://github.com/uutils/coreutils/pull/14547">#14547</a></li>
</ul>
<h2>vdir</h2>
<ul>
<li>dir, vdir: match GNU default quoting by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443639668" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14538" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14538/hovercard" href="https://github.com/uutils/coreutils/pull/14538">#14538</a></li>
</ul>
<h2>who</h2>
<ul>
<li>who: make the code more rust idiomatic by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5364409882" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14410" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14410/hovercard" href="https://github.com/uutils/coreutils/pull/14410">#14410</a></li>
</ul>
<h2>uucore</h2>
<ul>
<li>uucore: update fsext to build on aix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5374912494" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14430" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14430/hovercard" href="https://github.com/uutils/coreutils/pull/14430">#14430</a></li>
<li>uucore: fix a fsext test by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5381431772" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14446" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14446/hovercard" href="https://github.com/uutils/coreutils/pull/14446">#14446</a></li>
<li>uucore: Avoid panic on invalid input lines by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5392217358" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14470" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14470/hovercard" href="https://github.com/uutils/coreutils/pull/14470">#14470</a></li>
<li>uucore: use libc implementations of <code>major</code>, <code>minor</code>, and <code>makedev</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5392855793" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14471" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14471/hovercard" href="https://github.com/uutils/coreutils/pull/14471">#14471</a></li>
<li>uucore: Implement user locale detection for Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5399866439" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14477" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14477/hovercard" href="https://github.com/uutils/coreutils/pull/14477">#14477</a></li>
<li>uucore: Use forward slashes for checksum paths on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5392167620" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14469" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14469/hovercard" href="https://github.com/uutils/coreutils/pull/14469">#14469</a></li>
<li>uucore: Fix strip_errno doctest for Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5404393289" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14482" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14482/hovercard" href="https://github.com/uutils/coreutils/pull/14482">#14482</a></li>
<li>uucore: remove process functions by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4004610174" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/11158" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/11158/hovercard" href="https://github.com/uutils/coreutils/pull/11158">#11158</a></li>
<li>uucore: os_str_from_bytes does not need to alloc by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5391935126" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14466" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14466/hovercard" href="https://github.com/uutils/coreutils/pull/14466">#14466</a></li>
<li>uucore(windows): rewrite fsext with safe Win32 wrappers, real free space and mount paths; df(windows): resolve paths by mount prefix by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nikolalukovic/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nikolalukovic">@nikolalukovic</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5386939803" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14455" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14455/hovercard" href="https://github.com/uutils/coreutils/pull/14455">#14455</a></li>
<li>uucore: support fs feature for haiku by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5456090885" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14570" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14570/hovercard" href="https://github.com/uutils/coreutils/pull/14570">#14570</a></li>
<li>uucore: support process feature for more platforms by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5464349640" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14579" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14579/hovercard" href="https://github.com/uutils/coreutils/pull/14579">#14579</a></li>
<li>chore(uucore): fix clippy lints for fsext feature by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5465229471" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14581" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14581/hovercard" href="https://github.com/uutils/coreutils/pull/14581">#14581</a></li>
<li>uucore: fix test_crlf_across_blocks not compiling on Windows by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/abhijeetvichare76/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/abhijeetvichare76">@abhijeetvichare76</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5289349584" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14254" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14254/hovercard" href="https://github.com/uutils/coreutils/pull/14254">#14254</a></li>
<li>uucore: support signals feature for hurd by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5386564681" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14454" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14454/hovercard" href="https://github.com/uutils/coreutils/pull/14454">#14454</a></li>
<li>uucore: fix entries feature by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5474452953" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14601" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14601/hovercard" href="https://github.com/uutils/coreutils/pull/14601">#14601</a></li>
<li>uucore: support utmpx feature for more platforms by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5466697061" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14584" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14584/hovercard" href="https://github.com/uutils/coreutils/pull/14584">#14584</a></li>
<li>uucore: escape embedded locale content instead of using a raw string by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5478261491" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14616" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14616/hovercard" href="https://github.com/uutils/coreutils/pull/14616">#14616</a></li>
<li>uucore: support safe-traversal feature for netbsd by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5475275178" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14606" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14606/hovercard" href="https://github.com/uutils/coreutils/pull/14606">#14606</a></li>
</ul>
<h2>Testing</h2>
<ul>
<li>tests: don't pipe input into commands that exit before reading it by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Socialpranker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Socialpranker">@Socialpranker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5375051995" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14431" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14431/hovercard" href="https://github.com/uutils/coreutils/pull/14431">#14431</a></li>
</ul>
<h2>Code Quality & Cleanup</h2>
<ul>
<li>fix: redundant_homepage cargo lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378063106" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14440" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14440/hovercard" href="https://github.com/uutils/coreutils/pull/14440">#14440</a></li>
<li>fix: missing_lints_inheritance cargo lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378065821" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14441" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14441/hovercard" href="https://github.com/uutils/coreutils/pull/14441">#14441</a></li>
<li>fix outdated comments about onig by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5382264524" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14448" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14448/hovercard" href="https://github.com/uutils/coreutils/pull/14448">#14448</a></li>
<li>fix: needless_range_loop clippy lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378926216" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14444" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14444/hovercard" href="https://github.com/uutils/coreutils/pull/14444">#14444</a></li>
<li>fix: unused_dependencies cargo lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378747870" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14443" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14443/hovercard" href="https://github.com/uutils/coreutils/pull/14443">#14443</a></li>
<li>simplify matches! and inequalities in match by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5422287005" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14502" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14502/hovercard" href="https://github.com/uutils/coreutils/pull/14502">#14502</a></li>
<li>remove some matches! & use .get() by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5423053486" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14503" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14503/hovercard" href="https://github.com/uutils/coreutils/pull/14503">#14503</a></li>
<li>use .is_root() of rustix::process by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5434098828" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14519" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14519/hovercard" href="https://github.com/uutils/coreutils/pull/14519">#14519</a></li>
<li>fix: missing_const_for_thread_local clippy lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5390872734" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14462" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14462/hovercard" href="https://github.com/uutils/coreutils/pull/14462">#14462</a></li>
<li>chore: add missing newlines to source header by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5456497794" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14572" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14572/hovercard" href="https://github.com/uutils/coreutils/pull/14572">#14572</a></li>
<li>chore: fix clippy missing_const_for_thread_local lint by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5477003496" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14613" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14613/hovercard" href="https://github.com/uutils/coreutils/pull/14613">#14613</a></li>
</ul>
<h2>CI & Build</h2>
<ul>
<li>Revert "remove rust-version from fuzz" by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5229359572" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14105" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14105/hovercard" href="https://github.com/uutils/coreutils/pull/14105">#14105</a></li>
<li>fetch-gnu.sh: fix hardcoded pathes to GNU test binary by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5300595382" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14332" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14332/hovercard" href="https://github.com/uutils/coreutils/pull/14332">#14332</a></li>
<li>[pre-commit.ci] pre-commit autoupdate by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/pre-commit-ci/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pre-commit-ci">@pre-commit-ci</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5303573076" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14335" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14335/hovercard" href="https://github.com/uutils/coreutils/pull/14335">#14335</a></li>
<li>Cargo.toml: remove unused <code>fts-sys</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5371945206" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14425" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14425/hovercard" href="https://github.com/uutils/coreutils/pull/14425">#14425</a></li>
<li>CICD.yml: remove a hack for onig by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5373085134" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14428" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14428/hovercard" href="https://github.com/uutils/coreutils/pull/14428">#14428</a></li>
<li>[pre-commit.ci] pre-commit autoupdate by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/pre-commit-ci/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pre-commit-ci">@pre-commit-ci</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5377952342" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14439" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14439/hovercard" href="https://github.com/uutils/coreutils/pull/14439">#14439</a></li>
<li>openbsd.yml: remove C toolchain by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5382514030" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14449" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14449/hovercard" href="https://github.com/uutils/coreutils/pull/14449">#14449</a></li>
<li>ci: fix <code>style_empty_assertions</code> job by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5384034544" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14451" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14451/hovercard" href="https://github.com/uutils/coreutils/pull/14451">#14451</a></li>
<li>Cargo.toml: remove timeout & kill from feat_require_unix_core by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5385783781" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14453" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14453/hovercard" href="https://github.com/uutils/coreutils/pull/14453">#14453</a></li>
<li>freebsd.yml: fix warning by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5407333672" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14488" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14488/hovercard" href="https://github.com/uutils/coreutils/pull/14488">#14488</a></li>
<li>Fix the GNU reference + send a notification to coreutils-tracking for data refresh by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5409753562" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14492" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14492/hovercard" href="https://github.com/uutils/coreutils/pull/14492">#14492</a></li>
<li>github copilot: Create code review guidelines for uutils/coreutils by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5428470870" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14510" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14510/hovercard" href="https://github.com/uutils/coreutils/pull/14510">#14510</a></li>
<li>cargo: use workspace inheritance for dev-dependencies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5433670377" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14517" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14517/hovercard" href="https://github.com/uutils/coreutils/pull/14517">#14517</a></li>
<li>CICD.yml, test_openssl: drop non-*sum & avoid release build by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5394772514" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14473" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14473/hovercard" href="https://github.com/uutils/coreutils/pull/14473">#14473</a></li>
<li>CI: fix artifact name for Cygwin by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5411430784" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14494" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14494/hovercard" href="https://github.com/uutils/coreutils/pull/14494">#14494</a></li>
<li>Cargo.toml: reconsider feat_{wasm, common_core,Tier1} for wasi by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5444860932" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14543" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14543/hovercard" href="https://github.com/uutils/coreutils/pull/14543">#14543</a></li>
<li>CICD.yml: publish binaries with static openssl by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443818222" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14539" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14539/hovercard" href="https://github.com/uutils/coreutils/pull/14539">#14539</a></li>
<li>CI: remove brew install by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5449700023" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14557" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14557/hovercard" href="https://github.com/uutils/coreutils/pull/14557">#14557</a></li>
<li>fix(build): adjust check for cross-platform building by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5455832548" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14568" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14568/hovercard" href="https://github.com/uutils/coreutils/pull/14568">#14568</a></li>
<li>CICD.yml: drop unnecessay setup, simplify by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5437977459" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14528" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14528/hovercard" href="https://github.com/uutils/coreutils/pull/14528">#14528</a></li>
<li>fix cspell by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5464791743" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14580" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14580/hovercard" href="https://github.com/uutils/coreutils/pull/14580">#14580</a></li>
<li>GnuTests: autoreconf for portability by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5459064761" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14575" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14575/hovercard" href="https://github.com/uutils/coreutils/pull/14575">#14575</a></li>
<li>chore(cargo): use workspace inheritance for dependencies by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5472833847" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14596" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14596/hovercard" href="https://github.com/uutils/coreutils/pull/14596">#14596</a></li>
<li>cargo: avoid safe_traversal feature on unsupported platforms by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5467842564" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14588" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14588/hovercard" href="https://github.com/uutils/coreutils/pull/14588">#14588</a></li>
<li>deny.toml: remove <code>windows-sys 0.59</code> and related crates from skip list by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5476136586" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14611" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14611/hovercard" href="https://github.com/uutils/coreutils/pull/14611">#14611</a></li>
</ul>
<h2>Documentation</h2>
<ul>
<li>README.md: clear statement wrt performances by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5309321577" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14345" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14345/hovercard" href="https://github.com/uutils/coreutils/pull/14345">#14345</a></li>
<li>uudoc: improve loop by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5333042993" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14361" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14361/hovercard" href="https://github.com/uutils/coreutils/pull/14361">#14361</a></li>
<li>CONTRIBUTING.md: update link to DL GNU coreutils by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5475660518" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14608" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14608/hovercard" href="https://github.com/uutils/coreutils/pull/14608">#14608</a></li>
<li>SECURITY.md: require a boundary crossing, not just a GNU divergence by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5478187482" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14615" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14615/hovercard" href="https://github.com/uutils/coreutils/pull/14615">#14615</a></li>
</ul>
<h2>Platform Support</h2>
<ul>
<li>tests: enable tail integration coverage on WASI by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DePasqualeOrg/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/DePasqualeOrg">@DePasqualeOrg</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5096822063" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13805" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13805/hovercard" href="https://github.com/uutils/coreutils/pull/13805">#13805</a></li>
<li>coreutils: replace /proc/ by /dev/ by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/oech3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/oech3">@oech3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4562480632" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/12553" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/12553/hovercard" href="https://github.com/uutils/coreutils/pull/12553">#12553</a></li>
<li>ohos: add aarch64-unknown-linux-ohos support (fsext/hostid/date) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/YodonTan/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/YodonTan">@YodonTan</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5294494217" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14288" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14288/hovercard" href="https://github.com/uutils/coreutils/pull/14288">#14288</a></li>
</ul>
<h2>Dependency Updates</h2>
<ul>
<li>build(deps): update rust crates by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5305115749" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14338" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14338/hovercard" href="https://github.com/uutils/coreutils/pull/14338">#14338</a></li>
<li>fix(deps): refactor rustix/nix package configuration by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5304958322" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14337" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14337/hovercard" href="https://github.com/uutils/coreutils/pull/14337">#14337</a></li>
<li>chore(deps): update rust crate rstest to 0.27.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5367454879" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14418" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14418/hovercard" href="https://github.com/uutils/coreutils/pull/14418">#14418</a></li>
<li>chore(deps): update vmactions/freebsd-vm action to v1.5.6 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4698594369" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/12977" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/12977/hovercard" href="https://github.com/uutils/coreutils/pull/12977">#12977</a></li>
<li>chore(deps): update rust crate console to v0.16.6 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5409642111" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14491" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14491/hovercard" href="https://github.com/uutils/coreutils/pull/14491">#14491</a></li>
<li>Revert "chore(deps): update vmactions/freebsd-vm action to v1.5.6 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4698594369" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/12977" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/12977/hovercard" href="https://github.com/uutils/coreutils/pull/12977">#12977</a>)" by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5432965394" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14513" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14513/hovercard" href="https://github.com/uutils/coreutils/pull/14513">#14513</a></li>
<li>chore(deps): update vmactions/freebsd-vm action to v1.5.5 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5433413172" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14516" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14516/hovercard" href="https://github.com/uutils/coreutils/pull/14516">#14516</a></li>
<li>chore(deps): update rust crate jiff to v0.2.37 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5434645426" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14521" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14521/hovercard" href="https://github.com/uutils/coreutils/pull/14521">#14521</a></li>
<li>chore(deps): update rust crate textwrap to v0.16.4 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5406049778" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14486" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14486/hovercard" href="https://github.com/uutils/coreutils/pull/14486">#14486</a></li>
<li>chore(deps): update rust crate clap to v4.6.7 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5453506711" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14566" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14566/hovercard" href="https://github.com/uutils/coreutils/pull/14566">#14566</a></li>
<li>chore(deps): update rust crate clap_complete to v4.6.10 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5453508311" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14567" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14567/hovercard" href="https://github.com/uutils/coreutils/pull/14567">#14567</a></li>
<li>chore(deps): update rust crate clap_complete to v4.6.11 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5465357367" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14582" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14582/hovercard" href="https://github.com/uutils/coreutils/pull/14582">#14582</a></li>
<li>chore(deps): update ICU derive crates by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5467726651" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14587" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14587/hovercard" href="https://github.com/uutils/coreutils/pull/14587">#14587</a></li>
<li>chore(deps): update vmactions/freebsd-vm action to v1.5.6 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/xtqqczze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/xtqqczze">@xtqqczze</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5468338846" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14589" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14589/hovercard" href="https://github.com/uutils/coreutils/pull/14589">#14589</a></li>
<li>chore(deps): update rust crate platform-info to v2.2.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5473658515" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14597" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14597/hovercard" href="https://github.com/uutils/coreutils/pull/14597">#14597</a></li>
<li>deps: disable default features of <code>bstr</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/cakebaker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/cakebaker">@cakebaker</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5475002280" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14605" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14605/hovercard" href="https://github.com/uutils/coreutils/pull/14605">#14605</a></li>
</ul>
<h2>Version Management</h2>
<ul>
<li>Prepare version 0.12.0 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sylvestre/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sylvestre">@sylvestre</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5460582887" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14578" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14578/hovercard" href="https://github.com/uutils/coreutils/pull/14578">#14578</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kennywillbe/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kennywillbe">@kennywillbe</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5286285967" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14228" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14228/hovercard" href="https://github.com/uutils/coreutils/pull/14228">#14228</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChrisX101010/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChrisX101010">@ChrisX101010</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3815373845" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/10252" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/10252/hovercard" href="https://github.com/uutils/coreutils/pull/10252">#10252</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wangyusheng1985/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wangyusheng1985">@wangyusheng1985</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5334172446" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14365" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14365/hovercard" href="https://github.com/uutils/coreutils/pull/14365">#14365</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/harshasiddartha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/harshasiddartha">@harshasiddartha</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5339896380" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14371" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14371/hovercard" href="https://github.com/uutils/coreutils/pull/14371">#14371</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/varranvar/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/varranvar">@varranvar</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5303947047" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14336" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14336/hovercard" href="https://github.com/uutils/coreutils/pull/14336">#14336</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SichenLiang/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/SichenLiang">@SichenLiang</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5366678609" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14416" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14416/hovercard" href="https://github.com/uutils/coreutils/pull/14416">#14416</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/YodonTan/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/YodonTan">@YodonTan</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5294494217" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14288" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14288/hovercard" href="https://github.com/uutils/coreutils/pull/14288">#14288</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Hekzory/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Hekzory">@Hekzory</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5371683344" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14423" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14423/hovercard" href="https://github.com/uutils/coreutils/pull/14423">#14423</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MaxFreedomPollard/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MaxFreedomPollard">@MaxFreedomPollard</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5367245882" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14417" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14417/hovercard" href="https://github.com/uutils/coreutils/pull/14417">#14417</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ChihweiLHBird/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ChihweiLHBird">@ChihweiLHBird</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5383397369" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14450" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14450/hovercard" href="https://github.com/uutils/coreutils/pull/14450">#14450</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/lhecker/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/lhecker">@lhecker</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5392217358" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14470" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14470/hovercard" href="https://github.com/uutils/coreutils/pull/14470">#14470</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/okaythi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/okaythi">@okaythi</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5438557376" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14530" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14530/hovercard" href="https://github.com/uutils/coreutils/pull/14530">#14530</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/keith-hall/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/keith-hall">@keith-hall</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5437546771" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14527" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14527/hovercard" href="https://github.com/uutils/coreutils/pull/14527">#14527</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sachinskss/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sachinskss">@sachinskss</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4866930286" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/13368" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/13368/hovercard" href="https://github.com/uutils/coreutils/pull/13368">#13368</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yuefdev/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yuefdev">@yuefdev</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5452933892" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14565" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14565/hovercard" href="https://github.com/uutils/coreutils/pull/14565">#14565</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Dijaa/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Dijaa">@Dijaa</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5425876910" data-permission-text="Title is private" data-url="https://github.com/uutils/coreutils/issues/14508" data-hovercard-type="pull_request" data-hovercard-url="/uutils/coreutils/pull/14508/hovercard" href="https://github.com/uutils/coreutils/pull/14508">#14508</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/uutils/coreutils/compare/0.11.0...0.12.0"><tt>0.11.0...0.12.0</tt></a></p>
github-actions[bot]
tag:github.com,2008:Repository/1215362023/2.5.58
2026-09-16T21:21:59Z
PolyHostInterface: 2.5.58
<ul>
<li>Fixed arp plugins not functioning correctly.</li>
<li>There has been some changes to the Macro Mapping view due to massive integration with a new sequencer plugin to be released. The new plugin is called Seqwencer. That plugin will allow sequencing any parameter of any plugin loaded in PHI. It will also run on its own as VST3. But PHI has a lot of underlying work added and some changes made to it to allow these two plugins to work together.</li>
<li>Added Volume to every tab/plugin row in Routing view to allow easy mixing of plugins.</li>
<li>Changed AdjustMethod in Routing view to knob.</li>
<li>Macro Mappings view is now a list of all available parameters of all loaded plugins by default. You can select to show Assigned parameters only. Columns are sortable, plugins are colour coded for ease of navigation. Click the Mapped columns checkbox to toggle the assigned macro on/off. Switching it off keeps the assigned macro, but only disables it.</li>
</ul>
sl2365
tag:github.com,2008:Repository/830127839/release-2026_09_16_2
2026-09-16T19:09:59Z
gbe_fork: Release 2026 09 16 (2) (VS26 FIX)
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/Detanup01/gbe_fork/compare/release-2026_09_16...release-2026_09_16_2"><tt>release-2026_09_16...release-2026_09_16_2</tt></a></p>
<p>Fixed VS26 Release</p>
Detanup01
tag:github.com,2008:Repository/88200328/9.6.7
2026-09-16T17:59:20Z
LibreraReader: 9.6.7
<ul>
<li>New design: floating rounded tabs, round buttons, rounded dialogs and menus, new theme colours.</li>
<li>Redesigned settings, book info and TTS dialogs.</li>
<li>Library button and one-tap Vertical/Paged switch in the reader.</li>
<li>BBCode formatting in books.</li>
<li>Bookmarks and reading position stay on the right page after font changes and sync.</li>
<li>Favourites use a heart.</li>
</ul>
<p>If you enjoy <strong>Librera PRO</strong>, donations are appreciated: <a href="https://www.patreon.com/librera" rel="nofollow">https://www.patreon.com/librera</a></p>
<p>Please try the new <strong>LibreraX</strong> app. Feedback is welcome at <a href="mailto:librera.reader@gmail.com">librera.reader@gmail.com</a><br>
<a href="https://github.com/foobnix/LibreraReader/blob/master/LIBRERAX.md">https://github.com/foobnix/LibreraReader/blob/master/LIBRERAX.md</a></p>
foobnix
tag:github.com,2008:Repository/830127839/release-2026_09_16
2026-09-16T16:18:27Z
gbe_fork: Release 2026 09 16
<h2>What's Changed</h2>
<ul>
<li>Fix the missing callback in <code>ConnectP2P()</code> and <code>ConnectByIPAddress()</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/universal963/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/universal963">@universal963</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5290321126" data-permission-text="Title is private" data-url="https://github.com/Detanup01/gbe_fork/issues/596" data-hovercard-type="pull_request" data-hovercard-url="/Detanup01/gbe_fork/pull/596/hovercard" href="https://github.com/Detanup01/gbe_fork/pull/596">#596</a></li>
<li>Update Traditional Chinese Translations by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Johnson80331/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Johnson80331">@Johnson80331</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5338907161" data-permission-text="Title is private" data-url="https://github.com/Detanup01/gbe_fork/issues/599" data-hovercard-type="pull_request" data-hovercard-url="/Detanup01/gbe_fork/pull/599/hovercard" href="https://github.com/Detanup01/gbe_fork/pull/599">#599</a></li>
<li>Fix out-of-order <code>DATA</code> message drop by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/axd1x8a/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/axd1x8a">@axd1x8a</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5409529541" data-permission-text="Title is private" data-url="https://github.com/Detanup01/gbe_fork/issues/602" data-hovercard-type="pull_request" data-hovercard-url="/Detanup01/gbe_fork/pull/602/hovercard" href="https://github.com/Detanup01/gbe_fork/pull/602">#602</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Johnson80331/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Johnson80331">@Johnson80331</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5338907161" data-permission-text="Title is private" data-url="https://github.com/Detanup01/gbe_fork/issues/599" data-hovercard-type="pull_request" data-hovercard-url="/Detanup01/gbe_fork/pull/599/hovercard" href="https://github.com/Detanup01/gbe_fork/pull/599">#599</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/axd1x8a/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/axd1x8a">@axd1x8a</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5409529541" data-permission-text="Title is private" data-url="https://github.com/Detanup01/gbe_fork/issues/602" data-hovercard-type="pull_request" data-hovercard-url="/Detanup01/gbe_fork/pull/602/hovercard" href="https://github.com/Detanup01/gbe_fork/pull/602">#602</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/Detanup01/gbe_fork/compare/release-2026_08_23...release-2026_09_16"><tt>release-2026_08_23...release-2026_09_16</tt></a></p>
Detanup01
tag:github.com,2008:Repository/671654508/@biomejs/biome@2.5.14
2026-09-16T07:52:49Z
biome: Biome CLI v2.5.14
<h2>2.5.14</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a href="https://github.com/biomejs/biome/pull/9022" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/9022/hovercard">#9022</a> <a href="https://github.com/biomejs/biome/commit/0d49e24f51af4568d9c64f0f18a5b2a2758b7fe3"><code>0d49e24</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/no-return-in-finally/" rel="nofollow"><code>noReturnInFinally</code></a>. This rule disallows return statements in <code>Promise.prototype.finally()</code> callbacks, including inside nested blocks and conditional branches. Returns in nested functions are ignored by the rule.</p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="// Invalid: return in finally callback
Promise.resolve(1).finally(() => { return 2 })
// Valid: no return in finally callback
Promise.resolve(1).finally(() => { console.log(2) })"><pre><span class="pl-c">// Invalid: return in finally callback</span>
<span class="pl-v">Promise</span><span class="pl-kos">.</span><span class="pl-en">resolve</span><span class="pl-kos">(</span><span class="pl-c1">1</span><span class="pl-kos">)</span><span class="pl-kos">.</span><span class="pl-en">finally</span><span class="pl-kos">(</span><span class="pl-kos">(</span><span class="pl-kos">)</span> <span class="pl-c1">=></span> <span class="pl-kos">{</span> <span class="pl-k">return</span> <span class="pl-c1">2</span> <span class="pl-kos">}</span><span class="pl-kos">)</span>
<span class="pl-c">// Valid: no return in finally callback</span>
<span class="pl-v">Promise</span><span class="pl-kos">.</span><span class="pl-en">resolve</span><span class="pl-kos">(</span><span class="pl-c1">1</span><span class="pl-kos">)</span><span class="pl-kos">.</span><span class="pl-en">finally</span><span class="pl-kos">(</span><span class="pl-kos">(</span><span class="pl-kos">)</span> <span class="pl-c1">=></span> <span class="pl-kos">{</span> <span class="pl-smi">console</span><span class="pl-kos">.</span><span class="pl-en">log</span><span class="pl-kos">(</span><span class="pl-c1">2</span><span class="pl-kos">)</span> <span class="pl-kos">}</span><span class="pl-kos">)</span></pre></div>
<p>Returning a value from a <code>Promise.prototype.finally()</code> callback does not replace the original promise's fulfillment value, which can be confusing. Returned promises and thenables are awaited, and their rejection rejects the resulting promise.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11754" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11754/hovercard">#11754</a> <a href="https://github.com/biomejs/biome/commit/71eaa0d66b47af90329adb83ba125089f31d9484"><code>71eaa0d</code></a> Thanks <a href="https://github.com/griff-rees">@griff-rees</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/no-svelte-at-debug-tags/" rel="nofollow"><code>noSvelteAtDebugTags</code></a>, which disallows Svelte's <code>{@debug}</code> tag.</p>
<div class="highlight highlight-source-svelte notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="<!-- Invalid: leftover debugging tag -->
{@debug user}"><pre><span class="pl-c"><!-- Invalid: leftover debugging tag --></span>
{@<span class="pl-smi">debug</span> <span class="pl-smi">user</span>}</pre></div>
<p>The <code>{@debug}</code> tag is a debugging aid and should be removed once you no longer need it, as it should not remain in production code. The rule provides a safe fix that removes the tag.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11725" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11725/hovercard">#11725</a> <a href="https://github.com/biomejs/biome/commit/5eb5f09b867bf8b6693cbf8004c4534089cbfc43"><code>5eb5f09</code></a> Thanks <a href="https://github.com/m1handr">@m1handr</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/use-valid-test-title/" rel="nofollow"><code>useValidTestTitle</code></a>, which enforces valid titles for unit test cases and suites.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11735" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11735/hovercard">#11735</a> <a href="https://github.com/biomejs/biome/commit/9bd70c7fd887242536d4bf135bb63e64bd96e2e7"><code>9bd70c7</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8471" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8471/hovercard">#8471</a>: <code>source.fixAll.biome</code> ignored <code>formatter.formatWithErrors</code>. It now applies safe fixes without formatting files that have parse errors when the option is disabled.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard">#11715</a> <a href="https://github.com/biomejs/biome/commit/f05a3c3bd376a0515da44ab4cd4efde57c71c766"><code>f05a3c3</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7771" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7771/hovercard">#7771</a>: Grit plugins that use <code>sequential</code> no longer panic when Biome processes files.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11766" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11766/hovercard">#11766</a> <a href="https://github.com/biomejs/biome/commit/c2542c613e5c8d7fb8ca6cbb66f67322446c621a"><code>c2542c6</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed validation of <code>readonly</code> and <code>accessor</code> modifiers: combining them in either order now reports that they cannot be used together.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11461" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11461/hovercard">#11461</a> <a href="https://github.com/biomejs/biome/commit/22e9966804906969d1fa9d411aacf31ebfa63d76"><code>22e9966</code></a> Thanks <a href="https://github.com/FoundDream">@FoundDream</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11423" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11423/hovercard">#11423</a>: Multiline template interpolations now preserve the indentation of their closing brace when the source indentation is not a multiple of <code>tabWidth</code>.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" const value = `
${
condition
? "yes"
: "no"
-}
+ }
`;"><pre> const value = `
${
condition
? "yes"
: "no"
<span class="pl-md"><span class="pl-md">-</span>}</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> }</span>
`;</pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11766" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11766/hovercard">#11766</a> <a href="https://github.com/biomejs/biome/commit/c2542c613e5c8d7fb8ca6cbb66f67322446c621a"><code>c2542c6</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11763" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11763/hovercard">#11763</a>: TypeScript class members using <code>override accessor</code>, such as <code>override accessor value = 1</code>, now parse correctly. The reversed order, <code>accessor override</code>, now reports that <code>override</code> must precede <code>accessor</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11790" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11790/hovercard">#11790</a> <a href="https://github.com/biomejs/biome/commit/17d0ff027a87c4fe6e07b9fa6f0708bed37aeb52"><code>17d0ff0</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/10248" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/10248/hovercard">#10248</a>: <a href="https://biomejs.dev/linter/rules/no-useless-fragments/" rel="nofollow"><code>noUselessFragments</code></a> now allows fragments with props in Astro files, such as <code><Fragment slot="name">{text}</Fragment></code> inside template expressions.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11777" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11777/hovercard">#11777</a> <a href="https://github.com/biomejs/biome/commit/7ee3a6cf44d578547eb62aca412693f6cc4d4d0d"><code>7ee3a6c</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7573" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7573/hovercard">#7573</a>: added the <code>requireExplicitCase</code> option to <a href="https://biomejs.dev/linter/rules/use-exhaustive-switch-cases/" rel="nofollow"><code>useExhaustiveSwitchCases</code></a>. When set to <code>true</code>, the rule reports missing cases even when the switch has a <code>default</code> clause, so you can keep a runtime fallback while checking that every value in the union has its own case. The option defaults to <code>false</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11751" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11751/hovercard">#11751</a> <a href="https://github.com/biomejs/biome/commit/d37f24b5fa901916a1e1b488857dd3ee4c8e74ec"><code>d37f24b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8347" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8347/hovercard">#8347</a>: the fix from <a href="https://biomejs.dev/linter/rules/use-consistent-arrow-return/" rel="nofollow"><code>useConsistentArrowReturn</code></a> now parenthesizes returned expressions that begin with object literals before removing the arrow function body braces, preventing invalid output for expressions such as object property access.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11784" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11784/hovercard">#11784</a> <a href="https://github.com/biomejs/biome/commit/46e8912580b2fbf96c6417da9bf1a822e0d13584"><code>46e8912</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11782" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11782/hovercard">#11782</a>: <a href="https://biomejs.dev/linter/rules/no-undeclared-custom-properties/" rel="nofollow"><code>noUndeclaredCustomProperties</code></a> could hang while checking stylesheets imported by JavaScript modules with many shared dependencies.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11731" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11731/hovercard">#11731</a> <a href="https://github.com/biomejs/biome/commit/15348855723550556333cdecfc6cfa6e08a28a00"><code>1534885</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7984" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7984/hovercard">#7984</a>: The fix from <a href="https://biomejs.dev/linter/rules/use-simplified-logic-expression/" rel="nofollow"><code>useSimplifiedLogicExpression</code></a> now preserves line breaks in multiline conditions with line comments, preventing the right-hand side condition from being commented out.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11735" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11735/hovercard">#11735</a> <a href="https://github.com/biomejs/biome/commit/9bd70c7fd887242536d4bf135bb63e64bd96e2e7"><code>9bd70c7</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7304" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7304/hovercard">#7304</a>: the HTML formatter now preserves authored segment breaks between CJK characters, and next to CJK punctuation, instead of replacing them with spaces.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" <div lang="zh-Hant-TW">
- 這個段落是那麼長, 在一行寫不行。
+ 這個段落是那麼長,
+ 在一行寫不行。
</div>"><pre> <div lang="zh-Hant-TW">
<span class="pl-md"><span class="pl-md">-</span> 這個段落是那麼長, 在一行寫不行。</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> 這個段落是那麼長,</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> 在一行寫不行。</span>
</div></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11749" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11749/hovercard">#11749</a> <a href="https://github.com/biomejs/biome/commit/ff992a19d91d022dc28960c0153b369ed828d274"><code>ff992a1</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11747" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11747/hovercard">#11747</a>: formatting and checking large parenthesized object expressions no longer exhibit quadratic slowdowns.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11736" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11736/hovercard">#11736</a> <a href="https://github.com/biomejs/biome/commit/1dd1fc420534dcb6104e7000d7905e88ce512631"><code>1dd1fc4</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8177" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8177/hovercard">#8177</a>: code actions no longer modify the wrong part of Vue, Svelte, or Astro files when experimental full HTML support is disabled.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11743" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11743/hovercard">#11743</a> <a href="https://github.com/biomejs/biome/commit/3835945f0638c88162351318b7bc8b64c5f2fba7"><code>3835945</code></a> Thanks <a href="https://github.com/santichausis">@santichausis</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/10247" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/10247/hovercard">#10247</a>: <code>biome check --write</code>/<code>biome lint --write</code> now correctly writes fixes for code inside an HTML attribute expression (for example a Svelte <code>onclick={...}</code> handler, or a mustache expression like <code>{count}</code>), instead of silently reporting the diagnostic as fixable and applying nothing.</p>
<p>For example, running <code>biome lint --write --unsafe</code> for <a href="https://biomejs.dev/linter/rules/use-block-statements/" rel="nofollow"><code>useBlockStatements</code></a> (an unsafe fix) on this Svelte component used to leave the file unchanged:</p>
<div class="highlight highlight-source-svelte notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="<button onclick={() => { if (open) close(); }}>Close</button>"><pre><<span class="pl-ent">button</span> <span class="pl-e">onclick</span>={() <span class="pl-k">=></span> { <span class="pl-k">if</span> (<span class="pl-smi">open</span>) <span class="pl-en">close</span>(); }}>Close</<span class="pl-ent">button</span>></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11740" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11740/hovercard">#11740</a> <a href="https://github.com/biomejs/biome/commit/8ea8b4a4eceb7098b67bc031cc101306847df8e3"><code>8ea8b4a</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11453" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11453/hovercard">#11453</a>: <a href="https://biomejs.dev/linter/rules/use-consistent-test-it/" rel="nofollow"><code>useConsistentTestIt</code></a> now updates imports alongside calls, preserving the original export through an alias. The rule ignores locally declared functions and withholds fixes when the preferred name would conflict with another binding or global reference.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11355" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11355/hovercard">#11355</a> <a href="https://github.com/biomejs/biome/commit/27177ca7ea1e60c16c44ee0de645038610d5a921"><code>27177ca</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed the HTML formatter incorrectly applying native HTML element formatting to PascalCase component names such as <code><Ul></code> and <code><Body></code> in Vue, Svelte, and Astro files.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="-<Body>
- <div>content</div>
-</Body>
+<Body><div>content</div></Body>"><pre><span class="pl-md"><span class="pl-md">-</span><Body></span>
<span class="pl-md"><span class="pl-md">-</span> <div>content</div></span>
<span class="pl-md"><span class="pl-md">-</span></Body></span>
<span class="pl-mi1"><span class="pl-mi1">+</span><Body><div>content</div></Body></span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11355" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11355/hovercard">#11355</a> <a href="https://github.com/biomejs/biome/commit/27177ca7ea1e60c16c44ee0de645038610d5a921"><code>27177ca</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed the HTML formatter incorrectly applying SVG block formatting to unknown elements whose names matched SVG element names.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="-<foreignobject>
- <div>content</div>
-</foreignobject>
+<foreignobject><div>content</div></foreignobject>"><pre><span class="pl-md"><span class="pl-md">-</span><foreignobject></span>
<span class="pl-md"><span class="pl-md">-</span> <div>content</div></span>
<span class="pl-md"><span class="pl-md">-</span></foreignobject></span>
<span class="pl-mi1"><span class="pl-mi1">+</span><foreignobject><div>content</div></foreignobject></span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11741" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11741/hovercard">#11741</a> <a href="https://github.com/biomejs/biome/commit/fc690476f317270d6e7e0604cabb16657cbbe8a3"><code>fc69047</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8893" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8893/hovercard">#8893</a>: <a href="https://biomejs.dev/linter/rules/use-import-extensions/" rel="nofollow"><code>useImportExtensions</code></a> no longer suggests adding <code>.ts</code> to <code>.jsx</code> imports when a colocated <code>.d.ts</code> file provides type declarations.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11642" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11642/hovercard">#11642</a> <a href="https://github.com/biomejs/biome/commit/c87341cbddfd2fd59fc024727e70583bc04122db"><code>c87341c</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/use-consistent-function-style/" rel="nofollow">useConsistentFunctionStyle</a>, which requires a consistent style for defining functions.</p>
<p>By default, the rule reports the following declaration because it requires a function expression assigned to a variable:</p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="function greet() {
return "Hello";
}"><pre><span class="pl-k">function</span> <span class="pl-en">greet</span><span class="pl-kos">(</span><span class="pl-kos">)</span> <span class="pl-kos">{</span>
<span class="pl-k">return</span> <span class="pl-s">"Hello"</span><span class="pl-kos">;</span>
<span class="pl-kos">}</span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11770" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11770/hovercard">#11770</a> <a href="https://github.com/biomejs/biome/commit/ddfd622d23cc99ccc39199ca98f6c890fe33900b"><code>ddfd622</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8980" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8980/hovercard">#8980</a>: suppression comments targeting the entire <code>assist</code> category are now respected, including <code>biome-ignore-all assist</code> when running <code>check</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11792" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11792/hovercard">#11792</a> <a href="https://github.com/biomejs/biome/commit/7a4b895345002b63add6b2a9ef130cbf33837bc5"><code>7a4b895</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed dashed utility base names in the Tailwind parser, including <code>border-bs</code>, <code>font-features</code>, and <code>scrollbar-thumb</code>. Classes such as <code>min-inline-[12rem]</code> now preserve the complete base name and parse the arbitrary value separately.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11739" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11739/hovercard">#11739</a> <a href="https://github.com/biomejs/biome/commit/1fc17e34eb090e203b6961a0cad52533454c8c99"><code>1fc17e3</code></a> Thanks <a href="https://github.com/Netail">@Netail</a>! - The rule <a href="https://biomejs.dev/linter/rules/use-includes/" rel="nofollow"><code>useIncludes</code></a> now also reports <code>lastIndexOf()</code> comparisons and <code>some()</code> calls with a strict-equality callback.</p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="arr.lastIndexOf(x) !== -1
arr.some(item => item === x)"><pre><span class="pl-s1">arr</span><span class="pl-kos">.</span><span class="pl-en">lastIndexOf</span><span class="pl-kos">(</span><span class="pl-s1">x</span><span class="pl-kos">)</span> <span class="pl-c1">!==</span> <span class="pl-c1">-</span><span class="pl-c1">1</span>
<span class="pl-s1">arr</span><span class="pl-kos">.</span><span class="pl-en">some</span><span class="pl-kos">(</span><span class="pl-s1">item</span> <span class="pl-c1">=></span> <span class="pl-s1">item</span> <span class="pl-c1">===</span> <span class="pl-s1">x</span><span class="pl-kos">)</span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11735" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11735/hovercard">#11735</a> <a href="https://github.com/biomejs/biome/commit/9bd70c7fd887242536d4bf135bb63e64bd96e2e7"><code>9bd70c7</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/6888" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/6888/hovercard">#6888</a>. GritQL plugins can now use <code>contains</code> on import-clause metavariables such as <code>$clause</code> in <code>import $clause from "module"</code> patterns.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11790" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11790/hovercard">#11790</a> <a href="https://github.com/biomejs/biome/commit/17d0ff027a87c4fe6e07b9fa6f0708bed37aeb52"><code>17d0ff0</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11786" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11786/hovercard">#11786</a>: <a href="https://biomejs.dev/linter/rules/use-anchor-content/" rel="nofollow"><code>useAnchorContent</code></a> now reports anchors without accessible content in HTML, Astro, Vue, and Svelte even when they have an <code>aria-label</code>, <code>aria-labelledby</code>, or <code>title</code> attribute, matching JSX behavior.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11651" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11651/hovercard">#11651</a> <a href="https://github.com/biomejs/biome/commit/a9c4aa020b0b0a03a0e334dc6b107ac30ad5f774"><code>a9c4aa0</code></a> Thanks <a href="https://github.com/saberoueslati">@saberoueslati</a>! - Added the new nursery rule <a href="https://biomejs.dev/linter/rules/no-vue-undeclared-directives/" rel="nofollow"><code>noVueUndeclaredDirectives</code></a>, which reports custom Vue directives that are not declared by a <code><script setup></code> binding, the component's <code>directives</code> option, or the rule's <code>globals</code> option. Closes <a href="https://github.com/biomejs/biome/issues/11478" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11478/hovercard">#11478</a>.</p>
<div class="highlight highlight-text-html-vue notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="<template>
<!-- v-highlight is not declared anywhere -->
<div v-highlight></div>
</template>"><pre><<span class="pl-ent">template</span>>
<span class="pl-c"><span class="pl-c"><!--</span> v-highlight is not declared anywhere <span class="pl-c">--></span></span>
<<span class="pl-ent">div</span> <span class="pl-e">v-highlight</span>></<span class="pl-ent">div</span>>
</<span class="pl-ent">template</span>></pre></div>
<p>Aliased named imports in single-file components are now tracked under their local name, so <code>noUndeclaredVariables</code> recognizes <code>vHighlight</code> in <code>import { highlight as vHighlight } from "./directives"</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard">#11715</a> <a href="https://github.com/biomejs/biome/commit/f05a3c3bd376a0515da44ab4cd4efde57c71c766"><code>f05a3c3</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7795" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7795/hovercard">#7795</a>. The <a href="https://biomejs.dev/linter/rules/no-jsx-literals/" rel="nofollow"><code>noJsxLiterals</code></a> rule now ignores surrounding whitespace when matching literals against <code>allowedStrings</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11780" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11780/hovercard">#11780</a> <a href="https://github.com/biomejs/biome/commit/99c704908566b40eec4516046e250620b51de44d"><code>99c7049</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed false positives in <a href="https://biomejs.dev/linter/rules/use-exhaustive-switch-cases/" rel="nofollow"><code>useExhaustiveSwitchCases</code></a> when numeric cases use different spellings of the same value. For example, <code>case 0x1</code> now covers the numeric literal type <code>1</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11720" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11720/hovercard">#11720</a> <a href="https://github.com/biomejs/biome/commit/c7c4e2b4495c50381852ff9d0102d561c8f76cd5"><code>c7c4e2b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7880" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7880/hovercard">#7880</a>: <a href="https://biomejs.dev/linter/rules/no-useless-string-concat/" rel="nofollow"><code>noUselessStringConcat</code></a> no longer reports literal concatenations split across multiple lines when a numeric literal ends the chain.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11355" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11355/hovercard">#11355</a> <a href="https://github.com/biomejs/biome/commit/27177ca7ea1e60c16c44ee0de645038610d5a921"><code>27177ca</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Improved performance of the HTML formatter for documents that contain many HTML-native or SVG-native tags.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11720" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11720/hovercard">#11720</a> <a href="https://github.com/biomejs/biome/commit/c7c4e2b4495c50381852ff9d0102d561c8f76cd5"><code>c7c4e2b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7949" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7949/hovercard">#7949</a>: <a href="https://biomejs.dev/linter/rules/use-readonly-class-properties/" rel="nofollow"><code>useReadonlyClassProperties</code></a> now reports static class properties that are never reassigned.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11751" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11751/hovercard">#11751</a> <a href="https://github.com/biomejs/biome/commit/d37f24b5fa901916a1e1b488857dd3ee4c8e74ec"><code>d37f24b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7644" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7644/hovercard">#7644</a>: <a href="https://biomejs.dev/linter/rules/use-import-extensions/" rel="nofollow"><code>useImportExtensions</code></a> now resolves path aliases declared by referenced TypeScript project configurations.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11791" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11791/hovercard">#11791</a> <a href="https://github.com/biomejs/biome/commit/f88793cec17a2c5bd22a774cbe01890f32b75463"><code>f88793c</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed a false positive in <a href="https://biomejs.dev/linter/rules/use-tailwind-shorthand-classes/" rel="nofollow"><code>useTailwindShorthandClasses</code></a> for strings in conditional tests, such as <code>cn(m === "w-2 h-2" ? "bg-red-800" : "bg-red-400")</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11720" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11720/hovercard">#11720</a> <a href="https://github.com/biomejs/biome/commit/c7c4e2b4495c50381852ff9d0102d561c8f76cd5"><code>c7c4e2b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7783" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7783/hovercard">#7783</a>: <a href="https://biomejs.dev/linter/rules/no-noninteractive-element-interactions/" rel="nofollow"><code>noNoninteractiveElementInteractions</code></a> no longer reports event handlers on native <code><dialog></code> elements.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11733" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11733/hovercard">#11733</a> <a href="https://github.com/biomejs/biome/commit/7030068bc57fe53c9e311ef12dc19e97cbb4369a"><code>7030068</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11730" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11730/hovercard">#11730</a>: <a href="https://biomejs.dev/linter/rules/use-exhaustive-switch-cases/" rel="nofollow"><code>useExhaustiveSwitchCases</code></a> reports missing cases when iterating over a class property with <code>for...of</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11717" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11717/hovercard">#11717</a> <a href="https://github.com/biomejs/biome/commit/2107dae2003546bdc59a288b947a6f3c39f6d4e9"><code>2107dae</code></a> Thanks <a href="https://github.com/ternaus">@ternaus</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11716" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11716/hovercard">#11716</a>: the <a href="https://biomejs.dev/linter/rules/no-unknown-attribute/" rel="nofollow"><code>noUnknownAttribute</code></a> rule now accepts fullscreen event handlers, the <code>credentialless</code> iframe property, and the SVG <code>maskType</code> property when the React dependency range allows React 19.3 or later. The <code>credentialless</code> and <code>maskType</code> properties are restricted to <code><iframe></code> and <code><mask></code> elements, respectively.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11737" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11737/hovercard">#11737</a> <a href="https://github.com/biomejs/biome/commit/b7e3559aa35024aa8f793fd763b5e14c06ee6c62"><code>b7e3559</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11692" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11692/hovercard">#11692</a>: <a href="https://biomejs.dev/linter/rules/no-floating-promises/" rel="nofollow"><code>noFloatingPromises</code></a> now detects unhandled promises returned through generic method signatures, including Playwright fixtures.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11780" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11780/hovercard">#11780</a> <a href="https://github.com/biomejs/biome/commit/99c704908566b40eec4516046e250620b51de44d"><code>99c7049</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7747" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7747/hovercard">#7747</a>: <a href="https://biomejs.dev/linter/rules/use-exhaustive-switch-cases/" rel="nofollow"><code>useExhaustiveSwitchCases</code></a> now reports missing cases for literal unions derived from const tuples with <code>(typeof values)[number]</code> and objects with <code>keyof typeof object</code>.</p>
<p>Other type-aware rules, including <a href="https://biomejs.dev/linter/rules/no-floating-promises/" rel="nofollow"><code>noFloatingPromises</code></a> and <a href="https://biomejs.dev/linter/rules/no-useless-type-conversion/" rel="nofollow"><code>noUselessTypeConversion</code></a>, also recognize supported indexed-access results.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11724" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11724/hovercard">#11724</a> <a href="https://github.com/biomejs/biome/commit/a9a5e9a9f8d74784bc7198911e8d00cde18f4dc2"><code>a9a5e9a</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed redundant parentheses around binary and logical unary operands with leading line comments.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" !(
// leading
- (a || b)
+ a || b
);"><pre> !(
// leading
<span class="pl-md"><span class="pl-md">-</span> (a || b)</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> a || b</span>
);</pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard">#11715</a> <a href="https://github.com/biomejs/biome/commit/f05a3c3bd376a0515da44ab4cd4efde57c71c766"><code>f05a3c3</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7722" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7722/hovercard">#7722</a>: <a href="https://biomejs.dev/linter/rules/no-unused-imports/" rel="nofollow"><code>noUnusedImports</code></a> no longer reports type-only imports used in computed names of declared class properties.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11731" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11731/hovercard">#11731</a> <a href="https://github.com/biomejs/biome/commit/15348855723550556333cdecfc6cfa6e08a28a00"><code>1534885</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/6390" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/6390/hovercard">#6390</a>: Biome now offers suppression actions for <a href="https://biomejs.dev/linter/rules/no-dynamic-namespace-import-access/" rel="nofollow"><code>noDynamicNamespaceImportAccess</code></a> in editors.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11751" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11751/hovercard">#11751</a> <a href="https://github.com/biomejs/biome/commit/d37f24b5fa901916a1e1b488857dd3ee4c8e74ec"><code>d37f24b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7533" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7533/hovercard">#7533</a>: <a href="https://biomejs.dev/linter/rules/no-descending-specificity/" rel="nofollow"><code>noDescendingSpecificity</code></a> no longer compares selector specificity across separate cascade layer blocks.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11735" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11735/hovercard">#11735</a> <a href="https://github.com/biomejs/biome/commit/9bd70c7fd887242536d4bf135bb63e64bd96e2e7"><code>9bd70c7</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/6206" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/6206/hovercard">#6206</a>: <a href="https://biomejs.dev/linter/rules/use-unique-element-ids" rel="nofollow"><code>useUniqueElementIds</code></a> no longer reports static IDs on elements in SVG contexts.</p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="<svg>
<defs>
<pattern id="dots" width="10" height="10" />
</defs>
<rect fill="url(#dots)" width="100%" height="100%" />
</svg>"><pre><span class="pl-c1"><</span><span class="pl-s1">svg</span><span class="pl-c1">></span>
<span class="pl-c1"><</span><span class="pl-s1">defs</span><span class="pl-c1">></span>
<span class="pl-c1"><</span><span class="pl-s1">pattern</span> <span class="pl-c1">id</span><span class="pl-c1">=</span><span class="pl-s">"dots"</span> <span class="pl-c1">width</span><span class="pl-c1">=</span><span class="pl-s">"10"</span> <span class="pl-c1">height</span><span class="pl-c1">=</span><span class="pl-s">"10"</span> <span class="pl-kos">/></span>
<span class="pl-kos"></</span><span class="pl-s1">defs</span><span class="pl-c1">></span>
<span class="pl-c1"><</span><span class="pl-s1">rect</span> <span class="pl-c1">fill</span><span class="pl-c1">=</span><span class="pl-s">"url(#dots)"</span> <span class="pl-c1">width</span><span class="pl-c1">=</span><span class="pl-s">"100%"</span> <span class="pl-c1">height</span><span class="pl-c1">=</span><span class="pl-s">"100%"</span> <span class="pl-kos">/></span>
<span class="pl-kos"></</span><span class="pl-s1">svg</span><span class="pl-c1">></span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard">#11715</a> <a href="https://github.com/biomejs/biome/commit/f05a3c3bd376a0515da44ab4cd4efde57c71c766"><code>f05a3c3</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/5447" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/5447/hovercard">#5447</a>, so the GitHub reporter now associates annotations with the correct files when Biome runs from a nested directory.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11720" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11720/hovercard">#11720</a> <a href="https://github.com/biomejs/biome/commit/c7c4e2b4495c50381852ff9d0102d561c8f76cd5"><code>c7c4e2b</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7816" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7816/hovercard">#7816</a>: <a href="https://biomejs.dev/linter/rules/use-hook-at-top-level/" rel="nofollow"><code>useHookAtTopLevel</code></a> no longer reports methods named like hooks when called on another function's result, such as <code>Reactotron.configure(...).useReactNative(...)</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11355" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11355/hovercard">#11355</a> <a href="https://github.com/biomejs/biome/commit/27177ca7ea1e60c16c44ee0de645038610d5a921"><code>27177ca</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Removed special HTML formatter handling for the obsolete <code><listing></code> element.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11731" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11731/hovercard">#11731</a> <a href="https://github.com/biomejs/biome/commit/15348855723550556333cdecfc6cfa6e08a28a00"><code>1534885</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed an issue where Grit plugin code fixes weren't available as editor code actions.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11726" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11726/hovercard">#11726</a> <a href="https://github.com/biomejs/biome/commit/dea163f8fe3cccbfd8518b054c30560d87212f2f"><code>dea163f</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11722" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11722/hovercard">#11722</a>: the JavaScript formatter inserts a newline before the closing angle bracket when a leading comment forces type arguments onto multiple lines.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" type Foo = Record<
// comment
string,
- number>;
+ number
+>;"><pre> type Foo = Record<
// comment
string,
<span class="pl-md"><span class="pl-md">-</span> number>;</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> number</span>
<span class="pl-mi1"><span class="pl-mi1">+</span>>;</span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/9758" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/9758/hovercard">#9758</a> <a href="https://github.com/biomejs/biome/commit/02ea438ca753faca8a87fc6935de501096dd4188"><code>02ea438</code></a> Thanks <a href="https://github.com/Netail">@Netail</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/no-json-unsafe-values/" rel="nofollow"><code>noJsonUnsafeValues</code></a>, which disallows JSON values that are unsafe to use between different tools or languages.</p>
<p><strong>Invalid:</strong></p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="[
2e308, // Number evaluating to Infinity
-2e308, // Number evaluating to -Infinity
"\ud83d", // String with lone surrogate
1e-400, // Unsafe zero (too small, will evaluate to 0)
9007199254740992, // Unsafe integer (outside safe integer range)
2.2250738585072009e-308, // Subnormal number
]"><pre><span class="pl-kos">[</span>
<span class="pl-c1">2e308</span><span class="pl-kos">,</span> <span class="pl-c">// Number evaluating to Infinity</span>
<span class="pl-c1">-</span><span class="pl-c1">2e308</span><span class="pl-kos">,</span> <span class="pl-c">// Number evaluating to -Infinity</span>
<span class="pl-s">"\ud83d"</span><span class="pl-kos">,</span> <span class="pl-c">// String with lone surrogate</span>
<span class="pl-c1">1e-400</span><span class="pl-kos">,</span> <span class="pl-c">// Unsafe zero (too small, will evaluate to 0)</span>
<span class="pl-c1">9007199254740992</span><span class="pl-kos">,</span> <span class="pl-c">// Unsafe integer (outside safe integer range)</span>
<span class="pl-c1">2.2250738585072009e-308</span><span class="pl-kos">,</span> <span class="pl-c">// Subnormal number</span>
<span class="pl-kos">]</span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11790" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11790/hovercard">#11790</a> <a href="https://github.com/biomejs/biome/commit/17d0ff027a87c4fe6e07b9fa6f0708bed37aeb52"><code>17d0ff0</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8574" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8574/hovercard">#8574</a>: the JavaScript formatter sometimes added extra parentheses and moved comments when formatting multiline expressions after operators such as <code>!</code>. Comments now stay beside the values they describe, without an extra pair of parentheses.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" !(
- (
- cond1 || // force this to be multi line
- cond3
- ) // comment
+ cond1 || // force this to be multi line
+ cond3 // comment
);"><pre> !(
<span class="pl-md"><span class="pl-md">-</span> (</span>
<span class="pl-md"><span class="pl-md">-</span> cond1 || // force this to be multi line</span>
<span class="pl-md"><span class="pl-md">-</span> cond3</span>
<span class="pl-md"><span class="pl-md">-</span> ) // comment</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> cond1 || // force this to be multi line</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> cond3 // comment</span>
);</pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard">#11715</a> <a href="https://github.com/biomejs/biome/commit/f05a3c3bd376a0515da44ab4cd4efde57c71c766"><code>f05a3c3</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7711" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7711/hovercard">#7711</a>: <code>biome lint --suppress</code> no longer fails with conflicting rule fixes when multiple diagnostics target a declaration preceded by a multiline comment.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11700" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11700/hovercard">#11700</a> <a href="https://github.com/biomejs/biome/commit/0e9fe53d4b9edb5cb574392772f1ae76f29fd0f8"><code>0e9fe53</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/no-obsolete-tags/" rel="nofollow"><code>noObsoleteTags</code></a>, which reports obsolete HTML elements in HTML and JSX, such as <code><font color="red">Text</font></code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11735" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11735/hovercard">#11735</a> <a href="https://github.com/biomejs/biome/commit/9bd70c7fd887242536d4bf135bb63e64bd96e2e7"><code>9bd70c7</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7363" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7363/hovercard">#7363</a>: Biome GritQL plugins now match TypeScript interface snippets such as <code>interface $name { $body }</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11729" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11729/hovercard">#11729</a> <a href="https://github.com/biomejs/biome/commit/f04798503ed913572c78275f1c97995a510fee5c"><code>f047985</code></a> Thanks <a href="https://github.com/m1handr">@m1handr</a>! - Added support for <code>suite()</code> as an alias of <code>describe()</code> across test analysis rules and formatter. Rules now recognize <code>suite</code>, <code>fsuite</code>, <code>xsuite</code>, and <code>test.suite</code> blocks. The formatter recognises them as test declarations.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11778" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11778/hovercard">#11778</a> <a href="https://github.com/biomejs/biome/commit/4b7aa1f2fe1b1301e7c7f4b2e3a9f9edd8c4b26d"><code>4b7aa1f</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7727" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7727/hovercard">#7727</a>: GritQL snippets such as <code>import $what from $where</code> now match namespace imports, including type-only imports. Explicit <code>import type $what from $where</code> patterns also match type-only named and namespace imports.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard">#11715</a> <a href="https://github.com/biomejs/biome/commit/f05a3c3bd376a0515da44ab4cd4efde57c71c766"><code>f05a3c3</code></a> Thanks <a href="https://github.com/ematipico">@ematipico</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/7603" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/7603/hovercard">#7603</a>: <a href="https://biomejs.dev/linter/rules/use-single-js-doc-asterisk/" rel="nofollow"><code>useSingleJsDocAsterisk</code></a> no longer reports asterisks that are part of JSDoc comment content, such as italic text, as extra line markers.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11706" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11706/hovercard">#11706</a> <a href="https://github.com/biomejs/biome/commit/e19512a4c75e6819e679eb9246c1b819d2a2373c"><code>e19512a</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/11704" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11704/hovercard">#11704</a>: files re-included by negation patterns in a nested <code>.gitignore</code> are processed when <code>vcs.useIgnoreFile</code> is enabled, even when the ignore file contains <code>*</code>.</p>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/11718" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11718/hovercard">#11718</a> <a href="https://github.com/biomejs/biome/commit/76a302ac9d71f3888f298985f7e508148c676465"><code>76a302a</code></a> Thanks <a href="https://github.com/dyc3">@dyc3</a>! - Fixed <a href="https://github.com/biomejs/biome/issues/8573" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/8573/hovercard">#8573</a>: own-line comments before binary operators stay above the operator when <code>javascript.formatter.operatorLinebreak</code> is <code>"before"</code>.</p>
<div class="highlight highlight-source-diff notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" foo
- || // comment
- bar;
+ // comment
+ || bar;"><pre> foo
<span class="pl-md"><span class="pl-md">-</span> || // comment</span>
<span class="pl-md"><span class="pl-md">-</span> bar;</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> // comment</span>
<span class="pl-mi1"><span class="pl-mi1">+</span> || bar;</span></pre></div>
</li>
<li>
<p><a href="https://github.com/biomejs/biome/pull/9797" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/9797/hovercard">#9797</a> <a href="https://github.com/biomejs/biome/commit/64fd31405857b104f0c1a56c29bee70a6388471e"><code>64fd314</code></a> Thanks <a href="https://github.com/Netail">@Netail</a>! - Added the nursery rule <a href="https://biomejs.dev/linter/rules/use-consistent-object-keys" rel="nofollow"><code>useConsistentObjectKeys</code></a>, which requires JSON object keys to follow a consistent Unicode representation.</p>
</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>feat(lint/js): add <code>noReturnInFinally</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3922094307" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/9022" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/9022/hovercard" href="https://github.com/biomejs/biome/pull/9022">#9022</a></li>
<li>fix: honor negation in nested gitignore files by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5406332575" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11706" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11706/hovercard" href="https://github.com/biomejs/biome/pull/11706">#11706</a></li>
<li>feat(lint/js): add useConsistentFunctionStyle by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5367306392" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11642" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11642/hovercard" href="https://github.com/biomejs/biome/pull/11642">#11642</a></li>
<li>feat(lint): add noObsoleteTags by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5403938161" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11700" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11700/hovercard" href="https://github.com/biomejs/biome/pull/11700">#11700</a></li>
<li>fix: closed various bugs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5413007335" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11715" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11715/hovercard" href="https://github.com/biomejs/biome/pull/11715">#11715</a></li>
<li>fix(noUnknownAttribute): support React 19.3 DOM properties by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ternaus/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ternaus">@ternaus</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5413171311" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11717" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11717/hovercard" href="https://github.com/biomejs/biome/pull/11717">#11717</a></li>
<li>fix(format/js): keep comments above binary operators with operatorLinebreak before by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5413307956" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11718" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11718/hovercard" href="https://github.com/biomejs/biome/pull/11718">#11718</a></li>
<li>fix(format/js): omit redundant unary operand parentheses by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5415998139" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11724" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11724/hovercard" href="https://github.com/biomejs/biome/pull/11724">#11724</a></li>
<li>fix(format/js): add newline before closing angle bracket after commented type arguments by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5416525398" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11726" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11726/hovercard" href="https://github.com/biomejs/biome/pull/11726">#11726</a></li>
<li>feat(biome_js_analyze): implement useValidTestTitle rule (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3972171512" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/9176" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/9176/hovercard" href="https://github.com/biomejs/biome/issues/9176">#9176</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/m1handr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/m1handr">@m1handr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5416303302" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11725" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11725/hovercard" href="https://github.com/biomejs/biome/pull/11725">#11725</a></li>
<li>test(cli): remove path-dependent GitHub reporter snapshot by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5418247165" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11728" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11728/hovercard" href="https://github.com/biomejs/biome/pull/11728">#11728</a></li>
<li>fix(css_parser): allow final semicolon omission in SCSS at-rules by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/denbezrukov/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/denbezrukov">@denbezrukov</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5412748844" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11714" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11714/hovercard" href="https://github.com/biomejs/biome/pull/11714">#11714</a></li>
<li>fix(analyzer): various bugs by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5414513293" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11720" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11720/hovercard" href="https://github.com/biomejs/biome/pull/11720">#11720</a></li>
<li>fix(useSimplifiedLogicExpression): preserve all trivia by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5423038943" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11731" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11731/hovercard" href="https://github.com/biomejs/biome/pull/11731">#11731</a></li>
<li>feat(markdown): port markdownlint MD040 fenced code language rule by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/saberoueslati/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/saberoueslati">@saberoueslati</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5085981377" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11267" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11267/hovercard" href="https://github.com/biomejs/biome/pull/11267">#11267</a></li>
<li>fix(format): preserve template closing brace indentation by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FoundDream/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FoundDream">@FoundDream</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5221788758" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11461" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11461/hovercard" href="https://github.com/biomejs/biome/pull/11461">#11461</a></li>
<li>feat: utils for case insensitive binary search by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5414047899" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11719" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11719/hovercard" href="https://github.com/biomejs/biome/pull/11719">#11719</a></li>
<li>feat(unit_tests): support suite() as an alias of describe() in test rules (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5417746259" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11727" data-hovercard-type="issue" data-hovercard-url="/biomejs/biome/issues/11727/hovercard" href="https://github.com/biomejs/biome/issues/11727">#11727</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/m1handr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/m1handr">@m1handr</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5418262934" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11729" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11729/hovercard" href="https://github.com/biomejs/biome/pull/11729">#11729</a></li>
<li>fix(analyzer): infer types for for-of bindings by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5426614122" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11733" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11733/hovercard" href="https://github.com/biomejs/biome/pull/11733">#11733</a></li>
<li>fix: various bug fixes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5427229739" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11735" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11735/hovercard" href="https://github.com/biomejs/biome/pull/11735">#11735</a></li>
<li>fix: correct code action offsets in embedded files in legacy htmlish support by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5427508283" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11736" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11736/hovercard" href="https://github.com/biomejs/biome/pull/11736">#11736</a></li>
<li>chore: lint rules on eslint-react-xyz umbrella-subset relationship by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Netail/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Netail">@Netail</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5428102362" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11738" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11738/hovercard" href="https://github.com/biomejs/biome/pull/11738">#11738</a></li>
<li>fix(types): resolve generic method signatures in their own scope by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5427594233" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11737" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11737/hovercard" href="https://github.com/biomejs/biome/pull/11737">#11737</a></li>
<li>fix(js/parse): avoid consuming huge iterator by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5433250376" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11749" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11749/hovercard" href="https://github.com/biomejs/biome/pull/11749">#11749</a></li>
<li>perf(format/html): replace string comparisons with token set checks by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5160711397" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11355" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11355/hovercard" href="https://github.com/biomejs/biome/pull/11355">#11355</a></li>
<li>feat(lint/html/svelte): add noSvelteAtDebugTags by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/griff-rees/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/griff-rees">@griff-rees</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5435340268" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11754" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11754/hovercard" href="https://github.com/biomejs/biome/pull/11754">#11754</a></li>
<li>fix(html): write fixes back to attribute-expression embeds by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/santichausis/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/santichausis">@santichausis</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5430873416" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11743" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11743/hovercard" href="https://github.com/biomejs/biome/pull/11743">#11743</a></li>
<li>perf(formatter): skip unnecessary comment and context scans by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/denbezrukov/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/denbezrukov">@denbezrukov</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5434565510" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11753" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11753/hovercard" href="https://github.com/biomejs/biome/pull/11753">#11753</a></li>
<li>fix(css): preserve Sass function call boundaries by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/denbezrukov/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/denbezrukov">@denbezrukov</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5440034507" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11764" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11764/hovercard" href="https://github.com/biomejs/biome/pull/11764">#11764</a></li>
<li>fix(css_parser): parse SCSS module variables in media queries by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/denbezrukov/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/denbezrukov">@denbezrukov</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5440531609" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11765" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11765/hovercard" href="https://github.com/biomejs/biome/pull/11765">#11765</a></li>
<li>feat(type-gen): expand lowering codegen to cover more types by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5426921484" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11734" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11734/hovercard" href="https://github.com/biomejs/biome/pull/11734">#11734</a></li>
<li>fix(parse/js): fix class member modifier errors by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5442254780" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11766" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11766/hovercard" href="https://github.com/biomejs/biome/pull/11766">#11766</a></li>
<li>chore(deps): update dependency @changesets/cli to v3.0.2 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443888396" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11769" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11769/hovercard" href="https://github.com/biomejs/biome/pull/11769">#11769</a></li>
<li>chore(deps): update dependency @changesets/changelog-github to v1.0.1 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5443887174" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11768" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11768/hovercard" href="https://github.com/biomejs/biome/pull/11768">#11768</a></li>
<li>chore(deps): update dependency @types/node to v24.13.4 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5444848932" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11771" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11771/hovercard" href="https://github.com/biomejs/biome/pull/11771">#11771</a></li>
<li>chore(deps): update dependency tombi to v1.5.4 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5444850007" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11772" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11772/hovercard" href="https://github.com/biomejs/biome/pull/11772">#11772</a></li>
<li>chore(deps): update github-actions by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445544550" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11773" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11773/hovercard" href="https://github.com/biomejs/biome/pull/11773">#11773</a></li>
<li>chore(deps): update rust crate jiff to 0.2.37 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445698476" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11774" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11774/hovercard" href="https://github.com/biomejs/biome/pull/11774">#11774</a></li>
<li>chore(deps): update rust crate ureq to 3.4.2 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445974999" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11775" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11775/hovercard" href="https://github.com/biomejs/biome/pull/11775">#11775</a></li>
<li>fix(deps): update <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/biomejs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/biomejs">@biomejs</a> packages by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/renovate/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/renovate">@renovate</a>[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5445978820" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11776" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11776/hovercard" href="https://github.com/biomejs/biome/pull/11776">#11776</a></li>
<li>fix: lint rules and typescript reference resolution by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5433825810" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11751" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11751/hovercard" href="https://github.com/biomejs/biome/pull/11751">#11751</a></li>
<li>feat: expand useIncludes by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Netail/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Netail">@Netail</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5428784653" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11739" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11739/hovercard" href="https://github.com/biomejs/biome/pull/11739">#11739</a></li>
<li>fix(grit): match import patterns by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5447388753" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11778" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11778/hovercard" href="https://github.com/biomejs/biome/pull/11778">#11778</a></li>
<li>feat(codegen): lower primitive and scalar literal types by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5436600663" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11756" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11756/hovercard" href="https://github.com/biomejs/biome/pull/11756">#11756</a></li>
<li>feat(type_inference): handle built in global types with class members, lower WeakMap instance members by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5436600854" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11757" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11757/hovercard" href="https://github.com/biomejs/biome/pull/11757">#11757</a></li>
<li>feat(codegen): lower Set, Map, Date, RegExp class members by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5436601037" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11758" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11758/hovercard" href="https://github.com/biomejs/biome/pull/11758">#11758</a></li>
<li>feat(codegen): lower iterator and result declarations by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5436601300" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11759" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11759/hovercard" href="https://github.com/biomejs/biome/pull/11759">#11759</a></li>
<li>feat(html): detect undeclared custom Vue directives by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/saberoueslati/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/saberoueslati">@saberoueslati</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5368971110" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11651" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11651/hovercard" href="https://github.com/biomejs/biome/pull/11651">#11651</a></li>
<li>feat(json_analyze): implement useConsistentObjectKeys by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Netail/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Netail">@Netail</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4206011304" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/9797" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/9797/hovercard" href="https://github.com/biomejs/biome/pull/9797">#9797</a></li>
<li>fix(useConsistentTestIt): update imports with renamed calls by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5428927082" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11740" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11740/hovercard" href="https://github.com/biomejs/biome/pull/11740">#11740</a></li>
<li>fix(useImportExtensions): support JSX imports with declarations by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5428975871" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11741" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11741/hovercard" href="https://github.com/biomejs/biome/pull/11741">#11741</a></li>
<li>feat(json_analyze): implement noJsonUnsafeValues by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Netail/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Netail">@Netail</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4182794407" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/9758" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/9758/hovercard" href="https://github.com/biomejs/biome/pull/9758">#9758</a></li>
<li>chore(deps): upgrade rustls by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5453530555" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11781" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11781/hovercard" href="https://github.com/biomejs/biome/pull/11781">#11781</a></li>
<li>fix(inference): indexed access types by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5448828557" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11780" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11780/hovercard" href="https://github.com/biomejs/biome/pull/11780">#11780</a></li>
<li>fix(css): avoid repeated custom property dependency traversal by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5455015411" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11784" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11784/hovercard" href="https://github.com/biomejs/biome/pull/11784">#11784</a></li>
<li>refactor(core): retrieve services from salsa by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5447754647" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11779" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11779/hovercard" href="https://github.com/biomejs/biome/pull/11779">#11779</a></li>
<li>fix: formatter and lint rules by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5460576712" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11790" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11790/hovercard" href="https://github.com/biomejs/biome/pull/11790">#11790</a></li>
<li>fix(tailwind): ignore conditional test strings by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5461385618" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11791" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11791/hovercard" href="https://github.com/biomejs/biome/pull/11791">#11791</a></li>
<li>fix(tailwind): update dashed utility base names by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5461606430" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11792" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11792/hovercard" href="https://github.com/biomejs/biome/pull/11792">#11792</a></li>
<li>feat(analyze): add @shadcn/lint rule source by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5462748597" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11793" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11793/hovercard" href="https://github.com/biomejs/biome/pull/11793">#11793</a></li>
<li>fix(suppressions): respect top-level assist category by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/dyc3/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dyc3">@dyc3</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5444057132" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11770" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11770/hovercard" href="https://github.com/biomejs/biome/pull/11770">#11770</a></li>
<li>fix(useExhaustiveSwitchCases): add option <code>requireExplicitCase</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ematipico/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ematipico">@ematipico</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5447029969" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11777" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11777/hovercard" href="https://github.com/biomejs/biome/pull/11777">#11777</a></li>
<li>ci: release by @github-actions[bot] in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5411955657" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11711" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11711/hovercard" href="https://github.com/biomejs/biome/pull/11711">#11711</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ternaus/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ternaus">@ternaus</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5413171311" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11717" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11717/hovercard" href="https://github.com/biomejs/biome/pull/11717">#11717</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/m1handr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/m1handr">@m1handr</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5416303302" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11725" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11725/hovercard" href="https://github.com/biomejs/biome/pull/11725">#11725</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FoundDream/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FoundDream">@FoundDream</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5221788758" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11461" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11461/hovercard" href="https://github.com/biomejs/biome/pull/11461">#11461</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/griff-rees/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/griff-rees">@griff-rees</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5435340268" data-permission-text="Title is private" data-url="https://github.com/biomejs/biome/issues/11754" data-hovercard-type="pull_request" data-hovercard-url="/biomejs/biome/pull/11754/hovercard" href="https://github.com/biomejs/biome/pull/11754">#11754</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/biomejs/biome/compare/@biomejs/biome@2.5.13...@biomejs/biome@2.5.14">https://github.com/biomejs/biome/compare/@biomejs/biome@2.5.13...@biomejs/biome@2.5.14</a></p>
github-actions[bot]
tag:github.com,2008:Repository/136558084/v1.32.0
2026-09-15T19:56:50Z
goawk: v1.32.0: dynamic RS regex, Config.FileSystem
<p>This release adds two minor new features:</p>
<ul>
<li>Allow dynamically changing RS regex in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4245847768" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/282" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/282/hovercard" href="https://github.com/benhoyt/goawk/pull/282">#282</a></li>
<li>Add Config.FileSystem to allow overriding how GoAWK open, reads, and writes files with an fs.FS-based approach in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4994250365" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/296" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/296/hovercard" href="https://github.com/benhoyt/goawk/pull/296">#296</a> and <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5375020506" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/302" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/302/hovercard" href="https://github.com/benhoyt/goawk/pull/302">#302</a></li>
</ul>
<p>In addition, it fixes several smaller bugs:</p>
<ul>
<li>Avoid sub/gsub rebuilding $0 when no substitutions made (fix gsubtst7) in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4209549861" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/276" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/276/hovercard" href="https://github.com/benhoyt/goawk/pull/276">#276</a></li>
<li>Ensure split() handles string " " differently from regex / / in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4213790660" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/278" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/278/hovercard" href="https://github.com/benhoyt/goawk/pull/278">#278</a></li>
<li>Fix handling of integer special variables in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4230462342" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/279" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/279/hovercard" href="https://github.com/benhoyt/goawk/pull/279">#279</a></li>
<li>Fix hex float parsing with uppercase 'P' exponent in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4536434272" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/289" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/289/hovercard" href="https://github.com/benhoyt/goawk/pull/289">#289</a></li>
<li>Default bare <code>%g</code>/<code>%G</code> to 6 significant digits like C/POSIX awk in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5201852876" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/297" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/297/hovercard" href="https://github.com/benhoyt/goawk/pull/297">#297</a></li>
<li>Fix CONVFMT and OFMT for non-float types in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5244612091" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/299" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/299/hovercard" href="https://github.com/benhoyt/goawk/pull/299">#299</a></li>
</ul>
<p>There were three new contributors in this release:</p>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/andrea-berling/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/andrea-berling">@andrea-berling</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3977682749" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/272" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/272/hovercard" href="https://github.com/benhoyt/goawk/pull/272">#272</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/fermat-tech/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/fermat-tech">@fermat-tech</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4764867654" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/292" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/292/hovercard" href="https://github.com/benhoyt/goawk/pull/292">#292</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jaideeppyne/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jaideeppyne">@jaideeppyne</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5201852876" data-permission-text="Title is private" data-url="https://github.com/benhoyt/goawk/issues/297" data-hovercard-type="pull_request" data-hovercard-url="/benhoyt/goawk/pull/297/hovercard" href="https://github.com/benhoyt/goawk/pull/297">#297</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/benhoyt/goawk/compare/v1.31.0...v1.32.0"><tt>v1.31.0...v1.32.0</tt></a></p>
benhoyt
tag:github.com,2008:Repository/298255706/v2.87.5
2026-09-15T19:41:27Z
dgVoodoo2: v2.87.5 - Hopefully an AV-undetected version
<p>Remarks:</p>
<ul>
<li>I release this build because the previous one is detected by MS Defender and they don't remove the detection for whatever reason(??)</li>
<li>VirusTotal ratio is 1/68 at the moment and Defender does not detect the files (but I guess it will completely change by tomorrow, as usual)</li>
<li>For NV GPU's use driver version of at least 616.56 to avoid 32 bit D3D12 crashes (tested by me, it is stable now, no GPU crashes)</li>
<li>Make sure that the executable of "heavy" 32 bit games (late D3D9) are patched to be 4GB aware: the default 2GB address space is very tight with a modern GPU driver (and even dgVoodoo has an overhead) - if it's eaten up then the game simply crashes.</li>
<li>If you experience rendering errors in a game, try the GeForce 9800GT virtual video card (with the proper amount of VRAM). The default internal one exposes too many features and capabilities (like D32 Z-buffers), and not all games handle it properly.</li>
</ul>
<p>Changes:</p>
<ul>
<li>Fixed all of the undervalidated false error messages coming from the Win11 DX12 debug layer</li>
<li>Option <strong>DirectExt\D3D12BoundsChecking</strong> is enabled by default</li>
<li>A hidden option, <strong>DirectExt\AlternativeScaling</strong> is now exposed - try it for misalignmented postprocess effects with forced resolution</li>
<li>Fixed a viewport bug in D3D9 with forced resolution</li>
</ul>
dege-diosg
tag:github.com,2008:Repository/450825576/2.32
2026-09-15T10:01:19Z
Clock: 2.32
<h2>Fixes</h2>
<ul>
<li>Fix the display of the <em>"Start"</em> button in the timer creation view (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5221339385" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/672" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/672/hovercard" href="https://github.com/BlackyHawky/Clock/issues/672">#672</a>);</li>
<li>Fix the hiding of the <em>"Vibration"</em> category in the timer settings for devices without vibrator;</li>
<li>Fix the hiding of the <em>"Dismiss"</em> button in alarm cards;</li>
<li>Fix the toolbar title hiding issue (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4908872623" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/646" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/646/hovercard" href="https://github.com/BlackyHawky/Clock/issues/646">#646</a>);</li>
<li>Fix buttons that cannot be selected with TalkBack (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5017130472" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/655" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/655/hovercard" href="https://github.com/BlackyHawky/Clock/issues/655">#655</a>);</li>
<li>Fix vibration preview on modern Android devices (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5346367367" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/695" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/695/hovercard" href="https://github.com/BlackyHawky/Clock/issues/695">#695</a>);</li>
<li>Fix the color of the stopwatch laps when added from the notification;</li>
<li>Fix the alarm position when sorting is set to <em>"By next alarm time"</em> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378721830" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/701" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/701/hovercard" href="https://github.com/BlackyHawky/Clock/issues/701">#701</a>);</li>
<li>Fix UI delay when dismissing a snoozed alarm from the notification;</li>
</ul>
<h2>Improvements</h2>
<h3>General</h3>
<ul>
<li>Add a <em>"Save"</em> button to the alarm and timer editing panels;</li>
<li>Remove the <em>"Apply a blur effect to the background image"</em> setting:
<ul>
<li>This is now handled by the slider;</li>
</ul>
</li>
<li>Disable rapid clicks on the main FAB, except for the stopwatch tab:
<ul>
<li>This prevents, for example, the creation of multiple timers;</li>
</ul>
</li>
<li>Optimize dialog window margins (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5118890530" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/664" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/664/hovercard" href="https://github.com/BlackyHawky/Clock/issues/664">#664</a>):
<ul>
<li>For phones in portrait mode, the window automatically resizes (e.g., when the keyboard appears) so that the buttons remain visible;</li>
</ul>
</li>
<li>Add the ability to hide the next alarm (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5209210905" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/670" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/670/hovercard" href="https://github.com/BlackyHawky/Clock/issues/670">#670</a>):
<ul>
<li>The next alarm can now be hidden in the Clock tab and in the screensaver;</li>
<li>If the next alarm is hidden or there are no scheduled alarms, the date will be displayed in a long format. This applies to the Clock tab, the screensaver, and the Digital Clock widget;</li>
</ul>
</li>
<li>Improve notifications (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5327846656" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/691" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/691/hovercard" href="https://github.com/BlackyHawky/Clock/issues/691">#691</a>):
<ul>
<li>Fix the timestamp display for alarm group notifications;</li>
<li>Use different icon for each alarm notification type;</li>
<li>Use a fixed color for the icons;</li>
</ul>
</li>
<li>Disable touch for full screen alert when proximity sensor is covered (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5327629820" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/687" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/687/hovercard" href="https://github.com/BlackyHawky/Clock/issues/687">#687</a>);</li>
<li>Improve the editing panels:
<ul>
<li>Add information icons to the alarm editing panel to explain why some features are disabled;</li>
</ul>
</li>
<li>Add Swedish, Laotian and Persian languages to the app language setting;</li>
<li>Big changes have been made to the code in order to improve the overall performance and fluidity of the application;</li>
<li>Update translations;</li>
</ul>
<h3>Alarm</h3>
<ul>
<li>Add the ability to dismiss/snooze alarms by solving math problems (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3461440204" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/374" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/374/hovercard" href="https://github.com/BlackyHawky/Clock/issues/374">#374</a>):
<ul>
<li>3 difficulty levels: easy, normal, and hard;</li>
<li>Note: when this feature is enabled, the auto-silence duration is at least 10 minutes. To preserve the battery, the alarm stops automatically after this time;</li>
</ul>
</li>
<li>Add the ability to dismiss/snooze alarms with the headphones Play/Pause button (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4868577113" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/642" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/642/hovercard" href="https://github.com/BlackyHawky/Clock/issues/642">#642</a>):
<ul>
<li>This is only possible if the settings <em>"Use advanced audio playback"</em> and <em>"Enable automatic routing of ringtones to external audio devices"</em> are enabled;</li>
<li>Only works on the lock screen;</li>
</ul>
</li>
<li>Add the ability to display the alarm title across multiple lines (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4822135212" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/635" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/635/hovercard" href="https://github.com/BlackyHawky/Clock/issues/635">#635</a>);</li>
<li>Add the ability to use a custom background image for each alarm (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4813368928" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/634" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/634/hovercard" href="https://github.com/BlackyHawky/Clock/issues/634">#634</a>):
<ul>
<li>The background image is no longer tinted; therefore, it is no longer necessary to choose a transparent background color;</li>
</ul>
</li>
<li>Add the ability to blur the background image for each alarm;</li>
<li>Add a <em>"Preview"</em> button to the alarm editing panel;</li>
<li>Improve the visual style of the days of the week buttons;</li>
<li>Use the dynamic theme background color for alarms by default;</li>
<li>Improve the swipe action to delete alarms (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5221387524" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/673" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/673/hovercard" href="https://github.com/BlackyHawky/Clock/issues/673">#673</a>);</li>
<li>Ability to set a custom color for the <em>"Dismiss"</em> and <em>"Snooze"</em> button text (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5209402694" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/671" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/671/hovercard" href="https://github.com/BlackyHawky/Clock/issues/671">#671</a>);</li>
<li>Handle simultaneous alarms sequentially (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5360152228" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/697" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/697/hovercard" href="https://github.com/BlackyHawky/Clock/issues/697">#697</a>):
<ul>
<li>When two alarms are scheduled at the exact same time, they will no longer conflict. The second alarm will now wait in a queue and ring immediately after the first one is dismissed or snoozed, instead of being skipped;</li>
</ul>
</li>
<li>Add action to mute the alarm (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5378760020" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/702" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/702/hovercard" href="https://github.com/BlackyHawky/Clock/issues/702">#702</a>);</li>
</ul>
<h3>Clock</h3>
<ul>
<li>Search for cities in English regardless of the app's language (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4847554084" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/640" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/640/hovercard" href="https://github.com/BlackyHawky/Clock/issues/640">#640</a>);</li>
</ul>
<h3>Timer</h3>
<ul>
<li>Display an editing panel to edit the timers. This allows you to:
<ul>
<li>Enable vibrations per timer;</li>
<li>Set the vibration pattern per timer (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4868615797" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/643" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/643/hovercard" href="https://github.com/BlackyHawky/Clock/issues/643">#643</a>);</li>
<li>Set the auto silence duration per timer;</li>
<li>Set the volume crescendo duration per timer;</li>
<li>Set the ringtone per timer;</li>
<li>Turn on the flash when a timer expires;</li>
<li>Turn off media when a timer expires (useful when media player apps do not have this feature built-in) (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4790980508" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/630" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/630/hovercard" href="https://github.com/BlackyHawky/Clock/issues/630">#630</a>);</li>
<li>Delete the timer once expired (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4669254058" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/612" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/612/hovercard" href="https://github.com/BlackyHawky/Clock/issues/612">#612</a>);</li>
<li>Duplicate a timer;</li>
</ul>
</li>
<li>Hide the <em>"+1: 00"</em> button when timer is reset;</li>
<li>Hide the timer label if not set;</li>
<li>Remove the <em>"Edit"</em> button as it's no longer necessary;</li>
<li>Rename the setting title <em>"Display the active timers in compact mode"</em> to <em>"Display the timers in compact mode"</em> (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="4780298582" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/629" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/629/hovercard" href="https://github.com/BlackyHawky/Clock/issues/629">#629</a>);</li>
<li>Add the ability to reset expired timers with the headphones Play/Pause button:
<ul>
<li>This is only possible if the settings <em>"Use advanced audio playback"</em> and <em>"Enable automatic routing of ringtones to external audio devices"</em> are enabled under <em>"Alarms"</em>;</li>
<li>Only works on the lock screen;</li>
</ul>
</li>
</ul>
<h3>Stopwatch</h3>
<ul>
<li>Add the ability to hide the stopwatch milliseconds (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="5208573314" data-permission-text="Title is private" data-url="https://github.com/BlackyHawky/Clock/issues/668" data-hovercard-type="issue" data-hovercard-url="/BlackyHawky/Clock/issues/668/hovercard" href="https://github.com/BlackyHawky/Clock/issues/668">#668</a>);</li>
</ul>
<h2>Notes</h2>
<h3>- Please make a new backup after updating the app and delete the old one.</h3>
<h3>Checksums</h3>
<table>
<thead>
<tr>
<th align="center">Version</th>
<th align="center">SHA-256</th>
</tr>
</thead>
<tbody>
<tr>
<td align="center">Release</td>
<td align="center">15bc990a7ccfb2b085335c7d699f8a22bf9e788d24bc0620dd1b738f525a4519</td>
</tr>
<tr>
<td align="center">Debug</td>
<td align="center">799d5a61d01bdab719404ca07fd29ed78ffc48a54189ae847f9358fa658d21bf</td>
</tr>
</tbody>
</table>
BlackyHawky