mirror of
https://github.com/max-sixty/worktrunk.git
synced 2026-09-14 20:00:38 +08:00
codex/remove-codex-cloud-specific-tests
362 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
6ccdae8a53 |
chore: bump the patch group with 3 updates (#3830)
Bumps the patch group with 3 updates: [tree-sitter-highlight](https://github.com/tree-sitter/tree-sitter), [skim](https://github.com/skim-rs/skim) and [jsonschema](https://github.com/Stranger6667/jsonschema). Updates `tree-sitter-highlight` from 0.26.11 to 0.26.12 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tree-sitter/tree-sitter/releases">tree-sitter-highlight's releases</a>.</em></p> <blockquote> <h2>v0.26.12</h2> <h2>What's Changed</h2> <ul> <li>fix(generate): fold case-insensitive patterns ourselves by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5761">tree-sitter/tree-sitter#5761</a></li> <li>fix(query): keep the trailing anchor when a zero-matched quantifier is anchored on both sides by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5764">tree-sitter/tree-sitter#5764</a></li> <li>fix(templates): add C source files to Python sdist by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5765">tree-sitter/tree-sitter#5765</a></li> <li>fix(init): don't lowercase repository url by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5768">tree-sitter/tree-sitter#5768</a></li> <li>fix(highlight): use <code>std::sync::OnceCell</code> for various loader fields by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5785">tree-sitter/tree-sitter#5785</a></li> <li>fix(parser): restart recovery for invalid tokens in the error state by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5792">tree-sitter/tree-sitter#5792</a></li> <li>Fix associativity resolution with mixed shift precedences by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5796">tree-sitter/tree-sitter#5796</a></li> <li>fix(parser): fix parsing bug repeat operator by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5829">tree-sitter/tree-sitter#5829</a></li> <li>release v0.26.12 by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5831">tree-sitter/tree-sitter#5831</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.11...v0.26.12">https://github.com/tree-sitter/tree-sitter/compare/v0.26.11...v0.26.12</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/808e4b1fc06e269a107c4bd8bd936cc6fde18b00"><code>808e4b1</code></a> release v0.26.12</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/7566ffacb7a11e859cf1800f15209b021f53fb53"><code>7566ffa</code></a> fix(lib): continue search for later named siblings in</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/4b7e2c956c8653947385394b644771da2ff031b4"><code>4b7e2c9</code></a> fix(generate): honor right associativity despite a lower-precedence shift</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/3ee7c639dee4a0fd02cd0fa0a0146d05d29063a6"><code>3ee7c63</code></a> fix(parser): restart recovery for invalid tokens in the error state</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/fd0ccd65a597ffdaf9cd4c199c47564ef4f5c709"><code>fd0ccd6</code></a> fix(highlight): use <code>std::sync::OnceCell</code> for various loader fields</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/8df22e6f0e878d683605eb8200d2c2861920e7d8"><code>8df22e6</code></a> fix(init): don't lowercase repository url</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/c02f32485a76063b17a95c24b1c3758489d459d3"><code>c02f324</code></a> fix(cli): <code>init --update</code> should not update <code>setup.py</code> after replacing it (<a href="https://redirect.github.com/tree-sitter/tree-sitter/issues/5">#5</a>...</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/f9b9b390756c7ce9013542eb90e727f1785d6962"><code>f9b9b39</code></a> fix(templates): replace deprecated method in Package.swift</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/09384230b4d0d1deda7edf33d3c7e342cd874b0e"><code>0938423</code></a> fix(templates): add C source files to Python sdist</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/5ccdbb6b84b689350e47e1c53f5525307f5585d2"><code>5ccdbb6</code></a> fix(query): transfer a leading boundary anchor across a zero-matched quantifier</li> <li>Additional commits viewable in <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.11...v0.26.12">compare view</a></li> </ul> </details> <br /> Updates `skim` from 5.6.1 to 5.6.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/releases">skim's releases</a>.</em></p> <blockquote> <h2>5.6.4 - 2026-08-10</h2> <h2>Release Notes</h2> <h3>🐛 Bug Fixes</h3> <ul> <li><em>(image)</em> Detect picker from tty to support protocol detection with piped input</li> <li>Platform-dependant timevals</li> <li>Different suseconds and time per platform</li> <li>Avoid truncation by casting up instead of down</li> </ul> <h2>Install skim 5.6.4</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-installer.ps1 | iex" </code></pre> <h2>Download skim 5.6.4</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-aarch64-apple-darwin.tar.xz">skim-aarch64-apple-darwin.tar.xz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-aarch64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-apple-darwin.tar.xz">skim-x86_64-apple-darwin.tar.xz</a></td> <td>Intel macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-pc-windows-msvc.zip">skim-x86_64-pc-windows-msvc.zip</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-pc-windows-msvc.msi">skim-x86_64-pc-windows-msvc.msi</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-pc-windows-msvc.msi.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-aarch64-unknown-linux-gnu.tar.xz">skim-aarch64-unknown-linux-gnu.tar.xz</a></td> <td>ARM64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-aarch64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-unknown-linux-gnu.tar.xz">skim-x86_64-unknown-linux-gnu.tar.xz</a></td> <td>x64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-aarch64-unknown-linux-musl.tar.xz">skim-aarch64-unknown-linux-musl.tar.xz</a></td> <td>ARM64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-aarch64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-unknown-linux-musl.tar.xz">skim-x86_64-unknown-linux-musl.tar.xz</a></td> <td>x64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.4/skim-x86_64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> </tbody> </table> <h2>5.6.3 - 2026-08-07</h2> <h2>Release Notes</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Advance the input cursor by byte length in insert_str (<a href="https://redirect.github.com/skim-rs/skim/issues/1151">#1151</a>)</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/vimsucks"><code>@vimsucks</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1151">#1151</a></li> </ul> <h2>Install skim 5.6.3</h2> <h3>Install prebuilt binaries via shell script</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/blob/master/CHANGELOG.md">skim's changelog</a>.</em></p> <blockquote> <h2>[5.6.4] - 2026-08-10</h2> <h3>🐛 Bug Fixes</h3> <ul> <li><em>(image)</em> Detect picker from tty to support protocol detection with piped input</li> <li>Platform-dependant timevals</li> <li>Different suseconds and time per platform</li> <li>Avoid truncation by casting up instead of down</li> </ul> <h2>[5.6.3] - 2026-08-07</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Advance the input cursor by byte length in insert_str (<a href="https://redirect.github.com/skim-rs/skim/issues/1151">#1151</a>)</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/vimsucks"><code>@vimsucks</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1151">#1151</a></li> </ul> <h2>[5.6.2] - 2026-08-07</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Assymetry in char_equal causing panic with some unicode characters</li> <li>Reorder batches in <code>--tac</code> mode (<a href="https://redirect.github.com/skim-rs/skim/issues/1150">#1150</a>)</li> <li>Match double-width roman characters (closes <a href="https://redirect.github.com/skim-rs/skim/issues/1149">#1149</a>)</li> </ul> <h3>📚 Documentation</h3> <ul> <li>Preview command runs with sh/cmd, not SHELL</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/skim-rs/skim/commit/01be03f0d5821b48ae0311c41d02e9330a2571d8"><code>01be03f</code></a> release: v5.6.4 (<a href="https://redirect.github.com/skim-rs/skim/issues/1153">#1153</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/733aaeb14848969a0f55e06fac11a75d0c41b989"><code>733aaeb</code></a> fix: avoid truncation by casting up instead of down</li> <li><a href="https://github.com/skim-rs/skim/commit/f6a302390c45875a01a7a51ead5286b8b9dafb5c"><code>f6a3023</code></a> fix: different suseconds and time per platform</li> <li><a href="https://github.com/skim-rs/skim/commit/5ff1bda145b63b00509a2f75f9def6cb3982f04e"><code>5ff1bda</code></a> fix: platform-dependant timevals</li> <li><a href="https://github.com/skim-rs/skim/commit/070d0849b253938ac0d7ff9394b2ec21bda9d884"><code>070d084</code></a> fix(image): detect picker from tty to support protocol detection with piped i...</li> <li><a href="https://github.com/skim-rs/skim/commit/5fc3b0c1a0cb1f42cfe9b9edab13b719d74e1bbd"><code>5fc3b0c</code></a> release: v5.6.3 (<a href="https://redirect.github.com/skim-rs/skim/issues/1152">#1152</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/a5bd0fefa6308739f36a635b0854cab22b3dfad7"><code>a5bd0fe</code></a> fix: advance the input cursor by byte length in insert_str (<a href="https://redirect.github.com/skim-rs/skim/issues/1151">#1151</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/f3c03000b35e1f7c20334ba92bfe54f2350d76bf"><code>f3c0300</code></a> release: v5.6.2 (<a href="https://redirect.github.com/skim-rs/skim/issues/1145">#1145</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/1dead2b3c670e0b8222a3a2ea624cacb6f10cec7"><code>1dead2b</code></a> fix: match double-width roman characters (closes <a href="https://redirect.github.com/skim-rs/skim/issues/1149">#1149</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/b17e93890aa0d393236b9158f6c197b0eb5dce11"><code>b17e938</code></a> fix: reorder batches in <code>--tac</code> mode (<a href="https://redirect.github.com/skim-rs/skim/issues/1150">#1150</a>)</li> <li>Additional commits viewable in <a href="https://github.com/skim-rs/skim/compare/v5.6.1...v5.6.4">compare view</a></li> </ul> </details> <br /> Updates `jsonschema` from 0.49.6 to 0.49.9 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Stranger6667/jsonschema/releases">jsonschema's releases</a>.</em></p> <blockquote> <h2>[Python] Release 0.49.9</h2> <h3>Added</h3> <ul> <li>Canonicalization of a <code>oneOf</code> whose branches name object targets a required constant tells apart, which degrades to a union.</li> </ul> <h3>Changed</h3> <ul> <li><code>CanonicalSchema.to_json_schema</code> on a definition emits only the definitions that one names, not the whole document's.</li> </ul> <h3>Fixed</h3> <ul> <li>Canonicalization running without end on a conjunction over unions; past a ceiling on the meets it takes, the document stays unmodeled.</li> </ul> <h2>[Ruby] Release 0.49.9</h2> <h3>Added</h3> <ul> <li>Canonicalization of a <code>oneOf</code> whose branches name object targets a required constant tells apart, which degrades to a union.</li> </ul> <h3>Changed</h3> <ul> <li><code>CanonicalSchema#to_json_schema</code> on a definition emits only the definitions that one names, not the whole document's.</li> </ul> <h3>Fixed</h3> <ul> <li>Canonicalization running without end on a conjunction over unions; past a ceiling on the meets it takes, the document stays unmodeled.</li> </ul> <h2>[Rust] Release 0.49.9</h2> <h3>Added</h3> <ul> <li>Canonicalization of a <code>oneOf</code> whose branches name object targets a required constant tells apart, which degrades to a union.</li> </ul> <h3>Changed</h3> <ul> <li><code>CanonicalSchema::to_json_schema</code> on a definition emits only the definitions that one names, not the whole document's.</li> </ul> <h3>Fixed</h3> <ul> <li>Canonicalization running without end on a conjunction over unions; past a ceiling on the meets it takes, the document stays unmodeled.</li> </ul> <h2>[Python] Release 0.49.8</h2> <h3>Performance</h3> <ul> <li>Up to 380x faster canonicalization of a <code>oneOf</code> whose overlapping branches carry many properties, which no longer removes shared regions the exactly-one spelling discards.</li> </ul> <h3>Fixed</h3> <ul> <li>Draft detection treating the version-less <code>http://json-schema.org/schema</code> meta-schema URI as a custom dialect, where it names the current draft.</li> <li>A <code>patternProperties</code> entry matching every key leaving <code>additionalProperties: false</code> spelled as a key constraint, where it forbids nothing.</li> </ul> <h2>[Ruby] Release 0.49.8</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Stranger6667/jsonschema/blob/master/CHANGELOG.md">jsonschema's changelog</a>.</em></p> <blockquote> <h2>[0.49.9] - 2026-08-09</h2> <h3>Added</h3> <ul> <li>Canonicalization of a <code>oneOf</code> whose branches name object targets a required constant tells apart, which degrades to a union.</li> </ul> <h3>Changed</h3> <ul> <li><code>CanonicalSchema::to_json_schema</code> on a definition emits only the definitions that one names, not the whole document's.</li> </ul> <h3>Fixed</h3> <ul> <li>Canonicalization running without end on a conjunction over unions; past a ceiling on the meets it takes, the document stays unmodeled.</li> </ul> <h2>[0.49.8] - 2026-08-08</h2> <h3>Performance</h3> <ul> <li>Up to 380x faster canonicalization of a <code>oneOf</code> whose overlapping branches carry many properties, which no longer removes shared regions the exactly-one spelling discards.</li> </ul> <h3>Fixed</h3> <ul> <li>Draft detection treating the version-less <code>http://json-schema.org/schema</code> meta-schema URI as a custom dialect, where it names the current draft.</li> <li>A <code>patternProperties</code> entry matching every key leaving <code>additionalProperties: false</code> spelled as a key constraint, where it forbids nothing.</li> <li><code>unevaluatedProperties</code>/<code>unevaluatedItems</code> set to <code>true</code> forcing the whole document to stay unmodeled beside an unresolved applicator, where the keyword rejects nothing regardless of the evaluated set.</li> <li><code>unevaluatedProperties</code>/<code>unevaluatedItems</code> beside a <code>$ref</code> forcing the whole document to stay unmodeled, where the reference's own evaluated properties or items are known once it is resolved.</li> </ul> <h2>[0.49.7] - 2026-08-07</h2> <h3>Added</h3> <ul> <li><code>CanonicalizeOptions::with_retriever</code> to fetch external resources absent from the registry.</li> <li><code>CanonicalizeOptions::with_base_uri</code> to resolve relative references in the root schema.</li> <li>Canonicalization of a <code>oneOf</code> whose branches name disjoint targets, which degrades to a union.</li> <li>Canonicalization of a vacuous <code>patternProperties</code> entry beside schema-valued <code>additionalProperties</code>, where matching keys escape its value constraint.</li> <li>Canonicalization of a Draft 4 closed pattern map with a reference nested under a property.</li> <li>Canonicalization of Draft 4 closed pattern maps that meet through an applicator.</li> <li>The complement of a reference back to a target already being negated, which stays symbolic instead of declining.</li> <li><code>CanonicalSchema::definition</code> resolving <code>#</code> to the document the handle was read against.</li> </ul> <h3>Performance</h3> <ul> <li>Up to 150x faster canonicalization of <code>not</code> over a union of many branches.</li> <li>2% faster emission of canonical schemas, which no longer formats copied string values.</li> <li>5% faster emission of canonical schemas, which no longer formats object keys while copying them.</li> <li>Up to 12% faster canonicalization of schemas that repeatedly intersect the same branches.</li> <li>13% faster canonicalization of a non-dynamic OpenAPI document, which no longer scans every schema object for dynamic references.</li> <li>Faster canonicalization of schemas with local <code>$defs</code> references, which avoid decoding unescaped definition names.</li> <li>23% faster canonicalization of an object whose keys a finite property-name set spells.</li> <li>3% faster intersection of schemas where one side constrains nothing.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Stranger6667/jsonschema/commit/07484f9164fa555be12fe5f7d3a41c7e0c0ce754"><code>07484f9</code></a> chore(ruby): Release 0.49.9</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/4aba49fb8b5115eca2b7a7b59e179cf7c743e6d6"><code>4aba49f</code></a> chore(python): Release 0.49.9</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/4ad172231ae487511bfc4cf3199d7edab328923b"><code>4ad1722</code></a> chore(rust): Release 0.49.9</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/0f114eed7329bbb19b4985a4cf4b450039872d60"><code>0f114ee</code></a> fix: Canonicalization running without end on a conjunction over unions; past ...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/8d4d60caa027a346e1759bbd90c656ebded8db95"><code>8d4d60c</code></a> chore: <code>CanonicalSchema::to_json_schema</code> on a definition emits only the defin...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/bed45535e954d60dbed2fd3628604eacc07ab2bf"><code>bed4553</code></a> feat: Canonicalization of a <code>oneOf</code> whose branches name object targets a requ...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/0c310f43d71e1ebf6b698e641cf572ad3047cd8b"><code>0c310f4</code></a> chore(ruby): Release 0.49.8</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/bd6836d60e96d6265288f5d067d2e16a0262fd41"><code>bd6836d</code></a> chore(python): Release 0.49.8</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/71de15619cdaa1bee84b58ce89f2e29ebe0707a5"><code>71de156</code></a> chore(rust): Release 0.49.8</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/a90819b37e4371ecf0b422e22318964a7454107d"><code>a90819b</code></a> feat: Extend support for <code>unevaluated*</code> keywords in canonicalization</li> <li>Additional commits viewable in <a href="https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.6...ruby-v0.49.9">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
93624131e3 |
chore: bump petname-macros from 3.1.0 to 3.2.0 (#3832)
Bumps [petname-macros](https://github.com/allenap/rust-petname) from 3.1.0 to 3.2.0. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/allenap/rust-petname/commit/a80733a5b317dcb0b929a7009490927a0fb190eb"><code>a80733a</code></a> Remove the VS Code settings</li> <li><a href="https://github.com/allenap/rust-petname/commit/8cafcdbabfb0e8c014bd0dbf53272f709c2f4fc9"><code>8cafcdb</code></a> Anchor the exclude patterns to the crate root</li> <li><a href="https://github.com/allenap/rust-petname/commit/eacea6de5794fdbc059838dd3b3734a1e49e600c"><code>eacea6d</code></a> Bump version to 3.2.0</li> <li><a href="https://github.com/allenap/rust-petname/commit/fb7268407f4757580739daa88ae45fb277cb4dc0"><code>fb72684</code></a> Trim the published crate, and check that it is complete</li> <li><a href="https://github.com/allenap/rust-petname/commit/1eaf3ab966d480932862e2627af330f46fe67861"><code>1eaf3ab</code></a> Drop the upgrade notes for additive releases</li> <li><a href="https://github.com/allenap/rust-petname/commit/36c1fdb1c0850b40f5f1334b67699a914b63e70e"><code>36c1fdb</code></a> Flag the Luxembourgish word lists as awaiting review</li> <li><a href="https://github.com/allenap/rust-petname/commit/6a21770d3df6c67cbcfc4e66abf1cfa16d02da6c"><code>6a21770</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/139">#139</a> from allenap/maintenance</li> <li><a href="https://github.com/allenap/rust-petname/commit/e8456aab57971a31de80656b8e073fcc1e60477e"><code>e8456aa</code></a> Upgrade syn to 3</li> <li><a href="https://github.com/allenap/rust-petname/commit/40f166eeca33bfa3247443c688cb4537b6712ec2"><code>40f166e</code></a> Record the commit message wrapping convention</li> <li><a href="https://github.com/allenap/rust-petname/commit/eae215bced99a41e90b05719b2cda108ed04d05d"><code>eae215b</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/138">#138</a> from allenap/maintenance</li> <li>Additional commits viewable in <a href="https://github.com/allenap/rust-petname/compare/v3.1.0...v3.2.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
4011ee4e9c |
chore: bump minijinja from 2.23.0 to 2.24.0 (#3831)
Bumps [minijinja](https://github.com/mitsuhiko/minijinja) from 2.23.0 to 2.24.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mitsuhiko/minijinja/blob/main/CHANGELOG.md">minijinja's changelog</a>.</em></p> <blockquote> <h2>2.24.0</h2> <ul> <li>Added the <code>wordwrap</code> filter to the Python bindings. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/885">#885</a></li> <li>Fixed conditional expressions in keyword argument values for Jinja2 compatibility in Rust and Go. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/921">#921</a></li> <li>Fixed <code>context!</code> sorting keys when the <code>preserve_order</code> feature is enabled. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/920">#920</a></li> <li>Limited string repetition to 100 MB in Rust and Go to prevent excessive memory allocations.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mitsuhiko/minijinja/commit/0ca749f7ba507514fa6b052c74130ae6ae472e03"><code>0ca749f</code></a> chore(release): 2.24.0</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/0f2989add87d1903247c3977a72ff1f00cf21e07"><code>0f2989a</code></a> feat(python): expose wordwrap filter</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/3eac8fabe29fc2432622dd6e8b43c1e7adb0f44c"><code>3eac8fa</code></a> docs(changelog): document context key ordering fix</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/c867352c5b370f6218e7b273c1f17479a6d5d670"><code>c867352</code></a> fix(macros): preserve context key order</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/a9e1813d3c6489a63532a340b4bb3afdea0bf755"><code>a9e1813</code></a> fix(parser): allow conditionals in keyword arguments</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/c6fa683e99e2f190b60a38060607f7b9900e9012"><code>c6fa683</code></a> fix(value): limit repeated strings to 100 MB</li> <li>See full diff in <a href="https://github.com/mitsuhiko/minijinja/compare/minijinja-go/v2.23.0...minijinja-go/v2.24.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1e0ca1ce66 |
Release v0.74.0 (#3820)
Cuts 0.74.0. Minor bump: `cargo semver-checks` reports two breaking
library changes from #3808 (`GitError::WorktreePathNotOurs` gained a
field, `WorkingTree::ensure_belongs_to_repo` was renamed), and patch is
disallowed pre-1.0 with semver breakage.
Alongside the release, one fix the release's data-loss review turned up.
## The fix
`wt step promote` stages a worktree's gitignored files through
`<git-common-dir>/wt/staging/promote` and moves them back after the
branch exchange. When a worktree and the git dir sit on different
filesystems, `fs::rename` fails with EXDEV and `copy_and_remove` copies
then unconditionally deletes the source.
#3744 made the copy tolerate a source that vanishes mid-walk — correct
for `wt step copy-ignored`, which never deletes a source, and wrong
here: an incomplete copy reported `Ok` immediately before the delete, so
a gitignored file a concurrent build removed and rewrote was destroyed
rather than moved. Before #3744 the copy errored and the source
survived, so this was a regression introduced in this release window and
caught before it shipped.
`copy_dir_recursive` now returns how many of the entries the walk
collected to copy were not copied. `copy_and_remove` refuses on a
non-zero count and leaves the source in place; `copy-ignored` names the
count and drops it, with `#[must_use]` so a future third caller decides
rather than inheriting the old bug.
A non-regular file is dropped at classification rather than counted, per
@worktrunk-bot's review: a socket carries no content the destination can
be short of, and refusing over one lands worst where it is least
recoverable — `distribute_staged` runs *after* `exchange_branches`, so a
socket that reached staging by same-filesystem rename would kill the
promote with the branches already swapped and the staged files behind a
`check_leftover_staging` refusal whose remedy deletes them. Both
directions are pinned by tests.
## Release gates
- Local `wt hook pre-merge --yes`: 4649 tests, lints, doctests, rustdoc
under `-Dwarnings`.
- `nightly.yaml` green twice on this branch (full 3-OS matrix,
feature-powerset, release-target, nix-flake, minimal-versions), and
green on the cut-from tip
|
||
|
|
3ecb5d9852 |
chore: bump minijinja from 2.21.0 to 2.23.0 (#3795)
Bumps [minijinja](https://github.com/mitsuhiko/minijinja) from 2.21.0 to 2.23.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mitsuhiko/minijinja/blob/main/CHANGELOG.md">minijinja's changelog</a>.</em></p> <blockquote> <h2>2.23.0</h2> <ul> <li>Fixed Unicode identifiers in templates rendered through the Python bindings.</li> </ul> <h2>2.22.0</h2> <ul> <li>Changed rendering of none and boolean values to <code>None</code>, <code>True</code>, and <code>False</code> for Jinja2 compatibility in Rust and Go. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/913">#913</a></li> <li>Added <code>StringInput</code> for custom Rust filters and functions that transform strings while preserving safety provenance.</li> <li>Fixed safety handling in string-transforming and composing filters to preserve safe strings and escape unsafe fragments in Rust and Go.</li> <li>Fixed the <code>split</code> filter to return a sequence, enabling negative indexing and slicing in Rust and Go. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/909">#909</a></li> <li>Fixed Python-compatible dict methods being shadowed by same-named map keys. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/903">#903</a></li> <li>Fixed loop-local assignments leaking into subsequent iterations in Rust and Go. <a href="https://redirect.github.com/mitsuhiko/minijinja/issues/912">#912</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mitsuhiko/minijinja/commit/19af7d4afbd7ea529c4251c29483dce2179f3130"><code>19af7d4</code></a> chore(release): 2.23.0</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/7f63616efcc76e326d07a7f923a5314b948010a4"><code>7f63616</code></a> docs(changelog): document Python Unicode identifiers</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/179652f1393cd1b4c46e10e55896a5713cf15eb6"><code>179652f</code></a> ref: Remove CLAUDE.md</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/52b1cc66b290cef1fb58b00e2fa277973bfc5f82"><code>52b1cc6</code></a> ref: Move claude stuff</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/0d4c6f49a589e35da50f50dd024d316d21c35427"><code>0d4c6f4</code></a> ref: Remove broken symlinks</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/be3c6f58af1c8b18b52513fc866afe823073883b"><code>be3c6f5</code></a> fix(python): enable Unicode identifiers</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/d5bf25e588f219272c84ea1825181e402696134f"><code>d5bf25e</code></a> chore(release): 2.22.0</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/cdbd4a98c485ad81a92c666efe7ef3327de61cb6"><code>cdbd4a9</code></a> docs(changelog): document unreleased filter fixes</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/d715d56328169e41bed04025830ddcb1e4c82e84"><code>d715d56</code></a> fix: doc link</li> <li><a href="https://github.com/mitsuhiko/minijinja/commit/cd62d8c1fe7a15eac2e910a87a7b0b1e3d45f8cd"><code>cd62d8c</code></a> fix(filters): preserve safety in string transformations</li> <li>Additional commits viewable in <a href="https://github.com/mitsuhiko/minijinja/compare/minijinja-go/v2.21.0...minijinja-go/v2.23.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: worktrunk-bot <254187624+worktrunk-bot@users.noreply.github.com> |
||
|
|
7a2a3e003e |
Release v0.73.0 (#3804)
Version bump, Cargo.lock, and the 0.73.0 changelog section. |
||
|
|
6466b91673 |
chore: bump the patch group with 6 updates (#3794)
Bumps the patch group with 6 updates: | Package | From | To | | --- | --- | --- | | [clap_complete](https://github.com/clap-rs/clap) | `4.6.8` | `4.6.9` | | [ignore](https://github.com/BurntSushi/ripgrep) | `0.4.31` | `0.4.33` | | [open](https://github.com/Byron/open-rs) | `5.4.0` | `5.4.1` | | [similar](https://github.com/mitsuhiko/similar) | `3.1.1` | `3.1.2` | | [jsonschema](https://github.com/Stranger6667/jsonschema) | `0.49.5` | `0.49.6` | | [vergen-gitcl](https://github.com/rustyhorde/vergen) | `10.0.1` | `10.0.2` | Updates `clap_complete` from 4.6.8 to 4.6.9 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/715b812f3b72ebca1d5ce257e0495e1e76aea56f"><code>715b812</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/89e6e9b59c6209c5d9817c7d113ad7ad7f6d6907"><code>89e6e9b</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/3918cb4db643ffdfb3c8206d241d70acf6d5c5de"><code>3918cb4</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6468">#6468</a> from sjh9714/fix-bash-posix-fn-name</li> <li><a href="https://github.com/clap-rs/clap/commit/526c81906357cae595259d46cea2fd4675489331"><code>526c819</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6469">#6469</a> from latent-9/docs/fix-derive-reference-link</li> <li><a href="https://github.com/clap-rs/clap/commit/b2bd685a8e809df2049f5cf6777641d8f86aeef6"><code>b2bd685</code></a> docs(clap_derive): Fix derive reference link</li> <li><a href="https://github.com/clap-rs/clap/commit/ecee8a4f862b1b97ce2c7db5bf806cfe394a55f6"><code>ecee8a4</code></a> fix(complete): Name the function after fn_name</li> <li><a href="https://github.com/clap-rs/clap/commit/6dd2e5a0802d84226afd63c427fc09940fa837d4"><code>6dd2e5a</code></a> test(complete): Show POSIX bash will not source</li> <li><a href="https://github.com/clap-rs/clap/commit/4684d7abc545cef1d78708864cfe8c7668ed49c1"><code>4684d7a</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/51d50ad3ae341f987f26115d6a6719cf76cc78f4"><code>51d50ad</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/3bc36222053a49936ea67e8616d1584a75c811b0"><code>3bc3622</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6457">#6457</a> from bl4ck4t/master</li> <li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/clap_complete-v4.6.8...clap_complete-v4.6.9">compare view</a></li> </ul> </details> <br /> Updates `ignore` from 0.4.31 to 0.4.33 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/BurntSushi/ripgrep/commit/3fce3b5bb0236da2df6d99672afb8a719642eca7"><code>3fce3b5</code></a> ignore-0.4.33</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/5055264ae021b5d0e01e55f723622d638ea877f0"><code>5055264</code></a> globset-0.4.20</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/020687a77d13146923333f0beb274eeabd54a270"><code>020687a</code></a> ignore,globset: increase pool capacity</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/5ed408e17eccfc59bcec48f584feece902873e54"><code>5ed408e</code></a> ignore-0.4.32</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/435f59fc4b43af3ab32f34d53fa34978f393fe52"><code>435f59f</code></a> ignore: skip loading unreachable ignore files</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/f9c05a949d1a0dc8e16dee28ca9605d38611faeb"><code>f9c05a9</code></a> index: remove incorrect README</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/8372866810a1f2a647d11d7780984d4402a5c1e9"><code>8372866</code></a> index: add some initial indexing scaffolding</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/d99ac34406f82c03c3938c222f1786495c845034"><code>d99ac34</code></a> core: add <code>index</code> module</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/2ed0c006fee4c441add774a711d9122a88477619"><code>2ed0c00</code></a> flags: disable many flags when indexing is enabled</li> <li>See full diff in <a href="https://github.com/BurntSushi/ripgrep/compare/ignore-0.4.31...ignore-0.4.33">compare view</a></li> </ul> </details> <br /> Updates `open` from 5.4.0 to 5.4.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Byron/open-rs/releases">open's releases</a>.</em></p> <blockquote> <h2>v5.4.1</h2> <h3>Bug Fixes</h3> <ul> <li> <p>Forward WSL targets to PowerShell to make <code>open</code> actually work there</p> <!-- raw HTML omitted --> <p>Opening a URL from WSL failed because the Windows process did not receive OPEN_RS_TARGET, even though it was present in the Linux command environment. The failure reproduces with cargo run -- <a href="https://google.com">https://google.com</a> on Ubuntu under WSL, where Start-Process receives a null FilePath and exits unsuccessfully.</p> <p>Add OPEN_RS_TARGET to WSLENV so WSL interop forwards the target into the PowerShell environment. Preserve existing WSLENV entries and their flags, while keeping the PowerShell command fixed so targets remain data rather than shell code.</p> <p>Validated with focused WSL tests, the all-features test suite, rustfmt, Clippy with warnings denied, and an end-to-end cargo run from WSL.</p> </li> </ul> <h3>Commit Statistics</h3> <ul> <li>1 commit contributed to the release.</li> <li>24 days passed between releases.</li> <li>1 commit was understood as <a href="https://www.conventionalcommits.org">conventional</a>.</li> <li>1 unique issue was worked on: <a href="https://redirect.github.com/Byron/open-rs/issues/128">#128</a></li> </ul> <h3>Commit Details</h3> <!-- raw HTML omitted --> <!-- raw HTML omitted --> <ul> <li><strong><a href="https://redirect.github.com/Byron/open-rs/issues/128">#128</a></strong> <ul> <li>Forward WSL targets to PowerShell to make <code>open</code> actually work there (96fa673)</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Byron/open-rs/blob/main/changelog.md">open's changelog</a>.</em></p> <blockquote> <h2>5.4.1 (2026-08-05)</h2> <h3>Bug Fixes</h3> <ul> <li> <p><!-- raw HTML omitted --> Forward WSL targets to PowerShell to make <code>open</code> actually work there</p> <!-- raw HTML omitted --> <p>Opening a URL from WSL failed because the Windows process did not receive OPEN_RS_TARGET, even though it was present in the Linux command environment. The failure reproduces with cargo run -- <a href="https://google.com">https://google.com</a> on Ubuntu under WSL, where Start-Process receives a null FilePath and exits unsuccessfully.</p> <p>Add OPEN_RS_TARGET to WSLENV so WSL interop forwards the target into the PowerShell environment. Preserve existing WSLENV entries and their flags, while keeping the PowerShell command fixed so targets remain data rather than shell code.</p> <p>Validated with focused WSL tests, the all-features test suite, rustfmt, Clippy with warnings denied, and an end-to-end cargo run from WSL.</p> </li> </ul> <h3>Commit Statistics</h3> <!-- raw HTML omitted --> <ul> <li>1 commit contributed to the release.</li> <li>24 days passed between releases.</li> <li>1 commit was understood as <a href="https://www.conventionalcommits.org">conventional</a>.</li> <li>1 unique issue was worked on: <a href="https://redirect.github.com/Byron/open-rs/issues/128">#128</a></li> </ul> <h3>Commit Details</h3> <!-- raw HTML omitted --> <!-- raw HTML omitted --> <ul> <li><strong><a href="https://redirect.github.com/Byron/open-rs/issues/128">#128</a></strong> <ul> <li>Forward WSL targets to PowerShell to make <code>open</code> actually work there (<a href="https://github.com/Byron/open-rs/commit/96fa673a6a152d193c210ff77766270192b42d16"><code>96fa673</code></a>)</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Byron/open-rs/commit/e548a4e9180ef8ca7e6b605f3f248fee534a03d1"><code>e548a4e</code></a> Release open v5.4.1</li> <li><a href="https://github.com/Byron/open-rs/commit/96fa673a6a152d193c210ff77766270192b42d16"><code>96fa673</code></a> fix: Forward WSL targets to PowerShell to make <code>open</code> actually work there (<a href="https://redirect.github.com/Byron/open-rs/issues/128">#128</a>)</li> <li>See full diff in <a href="https://github.com/Byron/open-rs/compare/v5.4.0...v5.4.1">compare view</a></li> </ul> </details> <br /> Updates `similar` from 3.1.1 to 3.1.2 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mitsuhiko/similar/blob/main/CHANGELOG.md">similar's changelog</a>.</em></p> <blockquote> <h2>3.1.2</h2> <ul> <li>Fixed <code>Algorithm::Lcs</code> deadline fallback emitting edits twice, which produced out-of-bounds <code>DiffOp</code> ranges and panics when consuming timed-out diffs. <a href="https://redirect.github.com/mitsuhiko/similar/issues/97">#97</a></li> <li>Fixed <code>Algorithm::Lcs</code> reporting identical subranges with zero-based indices instead of preserving the supplied range offsets. <a href="https://redirect.github.com/mitsuhiko/similar/issues/98">#98</a></li> <li>Fixed <code>Algorithm::Lcs</code> and <code>Algorithm::Hunt</code> emitting zero-length delete operations when both inputs are empty. <a href="https://redirect.github.com/mitsuhiko/similar/issues/99">#99</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mitsuhiko/similar/commit/71f0a30e449f857aec934b839cc4c9ca5b21eb26"><code>71f0a30</code></a> chore(release): prepare 3.1.2</li> <li><a href="https://github.com/mitsuhiko/similar/commit/a0aa51e37a31a15898371430a6c03386b111303d"><code>a0aa51e</code></a> docs(changelog): document recent fixes</li> <li><a href="https://github.com/mitsuhiko/similar/commit/51195348b1c7f0bf46d79970294ee84a802e1500"><code>5119534</code></a> fix(algorithms): omit operations for empty inputs</li> <li><a href="https://github.com/mitsuhiko/similar/commit/043c9071ecdd328c9a6e8717f8765dda0c3982eb"><code>043c907</code></a> fix(lcs): preserve indices for equal subranges</li> <li><a href="https://github.com/mitsuhiko/similar/commit/cfad604ea2f213c6816095edb94e49c81768a1d8"><code>cfad604</code></a> fix(lcs): avoid duplicate deadline fallback edits</li> <li>See full diff in <a href="https://github.com/mitsuhiko/similar/compare/3.1.1...3.1.2">compare view</a></li> </ul> </details> <br /> Updates `jsonschema` from 0.49.5 to 0.49.6 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Stranger6667/jsonschema/releases">jsonschema's releases</a>.</em></p> <blockquote> <h2>[Python] Release 0.49.6</h2> <h3>Added</h3> <ul> <li>Canonicalization of a negated <code>uniqueItems</code>, where the complement demands a repeated element under the length floor two elements imply.</li> <li>Canonicalization of a negated array tuple, where each position's complement stands under the length that reaches it.</li> <li>Canonicalization of <code>contains</code> demands sharing no value, where their counts add up into a length floor.</li> <li><code>CanonicalSchema.negate</code> through references, where the complement of the resolved target takes the reference's place.</li> <li>Canonicalization of negated <code>propertyNames</code> and <code>additionalProperties</code>, where the complement spells the violating-key demand instead of a <code>not</code> residual.</li> <li>Canonicalization of negated <code>additionalProperties</code> under Draft 4, where the violating-key demand spells the closed property map.</li> <li>Canonicalization of <code>not</code> a reference, where the complement of the resolved target takes the pointer's place.</li> <li>Canonicalization of a negated <code>oneOf</code>, where the complement spells the values no branch admits beside the values two branches share.</li> <li>Canonicalization of negated <code>items</code> under Draft 4, where the violating-element demand spells the barred element schema.</li> </ul> <h3>Changed</h3> <ul> <li><code>ArrayView</code> reports distinctness in three states, so an array demanding a repeated element reads apart from one demanding distinct elements.</li> </ul> <h3>Fixed</h3> <ul> <li><code>CanonicalSchema.negate</code> keeping a root self-reference in the complement, where it points at the complement instead of the source.</li> <li>An <code>additionalItems</code> that tails no tuple keeping the whole document unmodeled under Draft 2020-12.</li> </ul> <h2>[Ruby] Release 0.49.6</h2> <h3>Added</h3> <ul> <li>Canonicalization of a negated <code>uniqueItems</code>, where the complement demands a repeated element under the length floor two elements imply.</li> <li>Canonicalization of a negated array tuple, where each position's complement stands under the length that reaches it.</li> <li>Canonicalization of <code>contains</code> demands sharing no value, where their counts add up into a length floor.</li> <li><code>CanonicalSchema#negate</code> through references, where the complement of the resolved target takes the reference's place.</li> <li>Canonicalization of negated <code>propertyNames</code> and <code>additionalProperties</code>, where the complement spells the violating-key demand instead of a <code>not</code> residual.</li> <li>Canonicalization of negated <code>additionalProperties</code> under Draft 4, where the violating-key demand spells the closed property map.</li> <li>Canonicalization of <code>not</code> a reference, where the complement of the resolved target takes the pointer's place.</li> <li>Canonicalization of a negated <code>oneOf</code>, where the complement spells the values no branch admits beside the values two branches share.</li> <li>Canonicalization of negated <code>items</code> under Draft 4, where the violating-element demand spells the barred element schema.</li> </ul> <h3>Changed</h3> <ul> <li><code>ArrayView</code> reports distinctness in three states, so an array demanding a repeated element reads apart from one demanding distinct elements.</li> </ul> <h3>Fixed</h3> <ul> <li><code>CanonicalSchema#negate</code> keeping a root self-reference in the complement, where it points at the complement instead of the source.</li> <li>An <code>additionalItems</code> that tails no tuple keeping the whole document unmodeled under Draft 2020-12.</li> </ul> <h2>[Rust] Release 0.49.6</h2> <h3>Added</h3> <ul> <li>Canonicalization of a negated <code>uniqueItems</code>, where the complement demands a repeated element under the length floor two elements imply.</li> <li>Canonicalization of a negated array tuple, where each position's complement stands under the length that reaches it.</li> <li>Canonicalization of <code>contains</code> demands sharing no value, where their counts add up into a length floor.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Stranger6667/jsonschema/blob/master/CHANGELOG.md">jsonschema's changelog</a>.</em></p> <blockquote> <h2>[0.49.6] - 2026-08-06</h2> <h3>Added</h3> <ul> <li>Canonicalization of a negated <code>uniqueItems</code>, where the complement demands a repeated element under the length floor two elements imply.</li> <li>Canonicalization of a negated array tuple, where each position's complement stands under the length that reaches it.</li> <li>Canonicalization of <code>contains</code> demands sharing no value, where their counts add up into a length floor.</li> <li><code>CanonicalSchema::negate</code> through references, where the complement of the resolved target takes the reference's place.</li> <li>Canonicalization of negated <code>propertyNames</code> and <code>additionalProperties</code>, where the complement spells the violating-key demand instead of a <code>not</code> residual.</li> <li>Canonicalization of negated <code>additionalProperties</code> under Draft 4, where the violating-key demand spells the closed property map.</li> <li>Canonicalization of <code>not</code> a reference, where the complement of the resolved target takes the pointer's place.</li> <li>Canonicalization of a negated <code>oneOf</code>, where the complement spells the values no branch admits beside the values two branches share.</li> <li>Canonicalization of negated <code>items</code> under Draft 4, where the violating-element demand spells the barred element schema.</li> </ul> <h3>Changed</h3> <ul> <li><code>ArrayView</code> reports distinctness in three states, so an array demanding a repeated element reads apart from one demanding distinct elements.</li> </ul> <h3>Fixed</h3> <ul> <li><code>CanonicalSchema::negate</code> keeping a root self-reference in the complement, where it points at the complement instead of the source.</li> <li>An <code>additionalItems</code> that tails no tuple keeping the whole document unmodeled under Draft 2020-12.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Stranger6667/jsonschema/commit/7888cb4bdc40fa07dd908a06802323d0f4ad134f"><code>7888cb4</code></a> chore(ruby): Release 0.49.6</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/d57a7e0b176923ebc9e6b05f39b5a6ca66709420"><code>d57a7e0</code></a> chore(python): Release 0.49.6</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/eaeb5b3ece16ec7cabca85bdf98c97601bcc1983"><code>eaeb5b3</code></a> chore(rust): Release 0.49.6</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/d87ab9b5f95d1bd73f9147a339b0f856c12150bc"><code>d87ab9b</code></a> fix: An <code>additionalItems</code> that tails no tuple keeping the whole document unmo...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/b31c40474d01f83881479f20806b8254b4250311"><code>b31c404</code></a> feat: Canonicalization of a negated <code>uniqueItems</code>, where the complement deman...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/cbcf7553ded29cc7e1e47acd4637a8b7069c5318"><code>cbcf755</code></a> build(deps): bump crates/jsonschema/tests/suite</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/d89a297b61a70cf040ac81febab580bffa8caea1"><code>d89a297</code></a> build(deps): bump crate-ci/typos from 1.48.0 to 1.49.0</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/8285c9619cc2294f2cea3473bb93fc014a20d563"><code>8285c96</code></a> feat: Canonicalization of a negated array tuple, where each position's comple...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/05d579c9ec40f1e2e5c2c84a29d484a48a40a567"><code>05d579c</code></a> feat: Canonicalization of negated <code>items</code> under Draft 4, where the violating-...</li> <li><a href="https://github.com/Stranger6667/jsonschema/commit/8c53ddb0f4adab9db1ca6a49b7de61546b29989a"><code>8c53ddb</code></a> feat: Canonicalization of a negated <code>oneOf</code>, where the complement spells the ...</li> <li>Additional commits viewable in <a href="https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.5...ruby-v0.49.6">compare view</a></li> </ul> </details> <br /> Updates `vergen-gitcl` from 10.0.1 to 10.0.2 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rustyhorde/vergen/commit/8355721c8288a4853cb2f2d029ff8f217905c469"><code>8355721</code></a> chore(deps): dependency updates and Windows lcov fix (<a href="https://redirect.github.com/rustyhorde/vergen/issues/520">#520</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/ff70eebb23a0be1e15a23d07b5f91dc31572200c"><code>ff70eeb</code></a> chore(msrv): bump MSRV to 1.96.0 (<a href="https://redirect.github.com/rustyhorde/vergen/issues/519">#519</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/13e7cb6ae74143aa130f1dd12e89deb0d31dc353"><code>13e7cb6</code></a> chore(rake): Rakefile.toml build pipeline and lint updates (<a href="https://redirect.github.com/rustyhorde/vergen/issues/518">#518</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/a39ba617e1232a4da7381575558446dec8de5c69"><code>a39ba61</code></a> chore: replace deprecated provenance lints with implicit_provenance_casts (<a href="https://redirect.github.com/rustyhorde/vergen/issues/517">#517</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/8d9813a74034ca9382371e98ed3b0cd5125ac14b"><code>8d9813a</code></a> chore(rake): tweak macos daily (<a href="https://redirect.github.com/rustyhorde/vergen/issues/516">#516</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/cd4af2aaecb5d76c42e79f2b793f9a319169ec50"><code>cd4af2a</code></a> chore: add Rakefile.toml build pipeline and fix doc references (<a href="https://redirect.github.com/rustyhorde/vergen/issues/515">#515</a>)</li> <li>See full diff in <a href="https://github.com/rustyhorde/vergen/compare/10.0.1...v10.0.2">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
f57fac365b |
Release v0.72.0 (#3759)
Release v0.72.0 — 55 commits since v0.71.0. Minor bump: `cargo semver-checks` reports 5 breaking library changes, so patch is disallowed pre-1.0. ## Headline changes - **`wt merge` / `wt step push` no longer autostash the target worktree** (#3703). Both strategies now advance the target through one `advance_target` — a compare-and-swap `update-ref`, then `read-tree -m -u` in the target worktree — so `refs/stash` is never entered and staged changes stay staged. - **Forge classification returns to brand-in-hostname** (#3673), reverting the exact-DNS-label rule 0.71.0 shipped. `github-enterprise.acme.com` and friends resolve again with no config. - **`[projects."…"]` keys match by `*` pattern and carry forge settings** (#3701), so one user-config entry covers every repository on a self-hosted host. - **A published JSON Schema for `wt list --format=json` schema 2** (#3747), plus machine-readable approval state and `branch_outcome` (#3710). Full detail in `CHANGELOG.md`. ## One fix made during the release cut The release audit surfaced a gap this release's own `advance_target` rewrite introduced, fixed here rather than deferred: **`wt merge` / `wt step push` now refuse a target worktree parked mid-operation.** The target sync is a two-tree merge, which refuses an unmerged index but *not* a stopped cherry-pick or rebase whose conflict has already been staged. A target paused between steps could therefore have the push range written into it, and the user's `--continue` would commit the synced tree as the step's result. The old fast-forward path got this check for free from `receive.denyCurrentBranch=updateInstead`, which refused any unclean target outright; both strategies now ask directly, and the refusal names the worktree holding the operation. `test_push_refuses_target_mid_operation` covers it in both shapes a stopped operation can take, and both are mutation-verified. With the gate disabled, the push succeeds and writes `feature.txt` into the mid-cherry-pick worktree. The rebase case was added in response to review feedback on this PR, and pins a second dependency. A rebase detaches HEAD, so `git worktree list --porcelain` reports the target with no branch and `worktree_for_branch` finds it only because `finalize_worktree` backfills from `rebase-merge/head-name`. That makes the rebase arm the one place this guarantee rests on a helper of ours rather than on git — the fast-forward path it replaced got the refusal from `find_shared_symref`. With the backfill disabled, `wt step push` succeeds against a worktree parked mid-rebase while the cherry-pick case still passes, so the gap was real. ## Validation - Local gate green: `cargo run -- hook pre-merge --yes` — 4570 tests, clippy, fmt, doc sync. - Cross-platform nightly green on the cut-from tip `3817df079` (run 31133551751): full nextest matrix on linux/macOS/Windows, feature-powerset, all three release triples, nix-flake, minimal-versions, unused-deps, crate-build, link-check. - Changelog verified entry-by-entry against the diffs by an independent pass; every one of the 55 commits either maps to an entry or is a documented skip. - `main` advanced during the CI wait. #3762 ships in this release and now has a changelog entry; the other two commits that landed (#3758, #3749) touch only `.github/`. - Data-loss surface reviewed by four independent finders over the cumulative diff. One further finding — a pre-0.72 `approvals.toml` key containing `*` being reinterpreted as a wildcard on upgrade — was reviewed and accepted as out of scope for this release. > _This was written by Claude Code on behalf of max-sixty_ --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|
|
7f8ac8e5d7 |
feat(list): publish a JSON Schema for the schema-2 envelope (#3747)
`wt list --format=json` schema 2 now has a published, machine-readable contract at [worktrunk.dev/schema/list-v2.json](https://worktrunk.dev/schema/list-v2.json). The schema was already derived — `test_schema_generates` built one, asserted it compiled, and threw it away, with a comment saying "until the schema export ships." This ships it: `wt list --print-schema` prints the document (a developer entry point alongside `--help-page`, intercepted before clap), and a new step in `test_docs_are_in_sync` commits it to `docs/static/schema/list-v2.json`, the same generate-and-commit pattern as `llms.txt`. It shells out rather than calling `schema_for!` because `JsonEnvelope` lives in the bin-only `crate::commands` tree. Two things had to be fixed for the document to be usable. **The contract.** `schema_for!` generates under schemars' *deserialize* contract, which marks a `skip_serializing_if` field required — nothing supplies it on the way in. The first document I generated therefore required `default_branch`, `upstream`, `pr`, `checks`, `summary` and `vars` on every item, all of which the absence rule routinely omits, so it rejected the output it documents. Generating under `for_serialize()` fixes it. **The vocabularies.** Four fields — `checks.status`, `display.state`, `default_branch.integration.reason` and `worktree.operation` — were `&'static str`, so the schema described them as bare strings. They are now `JsonCheckStatus`, `JsonMainState`, `JsonIntegrationReason` and `JsonOperation`, each converted from its domain enum by an exhaustive match, so a new `CiStatus`, `MainState`, `IntegrationReason` or `InProgressOperation` variant is a compile error rather than a value silently missing from the published vocabulary. **The emitted JSON is unchanged**; the existing envelope snapshot passes untouched. <details> <summary>Before and after, for one item</summary> ```json // before — rejects its own output, and loses the vocabulary "required": ["default_branch", "upstream", "pr", "checks", "summary", "vars", "display"], "status": { "type": "string" } // after "required": ["branch", "head", "display"], "status": { "enum": ["passed", "running", "failed"] } ``` </details> ## Testing `test_schema_accepts_envelopes` validates a battery — every `CiStatus` over both sources, every `MainState`, a populated worktree row, an integrated row with an upstream and a dev server, plus the absent and null arms of the absence rule — against the same document `--print-schema` emits. Validating proves nothing about a type the battery never instantiates, so the test also pins every non-`Nullable_` type in the document to a path that must carry a non-null value. A new `Json*` type fails until the battery reaches it, and a row that stops populating one fails too — the check reports the type names rather than leaving the gap to a reader. This needed a `jsonschema` dev-dependency: schemars only generates, and derives the document from the types without ever seeing an envelope, so nothing otherwise tied the two together. The test was confirmed to fail on the bug it exists for. Reverting to `for_deserialize()` makes it report `pr`, `checks`, `summary`, `vars` and `display.columns` as wrongly required. The dependency is dev-only: `reqwest`, `rustls` and `async-trait` stay unselected so no HTTP stack comes along, and `cargo tree --package worktrunk --edges normal -i jsonschema` finds no path to it. One direction it deliberately does not cover: a *loosening*. If a field reverted to `&'static str` the schema would say `type: string` and anything would validate. That direction is held by the compiler instead, via the exhaustive matches. ## Notes for review - `schema_document()` lives in `json_v2.rs` beside the types, not in `help.rs`, so `--print-schema` and the test compile the same document rather than two constructions that could drift on the contract setting. - The lychee exclusion for `worktrunk.dev/schema/` follows the entry directly above it: a generated link that 404s until the site deploys. > _This was written by Claude Code on behalf of max-sixty_ |
||
|
|
970976bd32 |
Consolidate benchmark recipes and cases (#3721)
Benchmark fixtures had accumulated around individual call sites, leaving the same repository shapes and command modes expressed several ways. This change makes repository state the organizing concept: benchmark groups select semantic `FixtureRecipe`s, share table-driven cases, and retain separate fixtures only when a controlled contrast, destructive precondition, or disproportionate setup cost requires one. The real-repository list benchmarks now share one pinned `rust-lang/rust` fixture with eight worktrees and fifty branches spread across history. The list matrix keeps default, branch, warm, and cold coverage without maintaining several “real” repository handles. Remove and prune cases share the same case machinery, while the destructive large-repository prune state remains separate. The scheduled workflow now converts Criterion estimates directly with `jq`, removing the one-off Python converter and its tests. The benchmark guide records the canonical-fixture principle and the remaining recipe-to-group mapping. Tests: `cargo run -- hook pre-merge --yes` (4,551 tests); `cargo bench --bench list large_repository -- --test`; `cargo test -p wt-perf`; benchmark check, clippy, formatting, and diff checks. > _This was written by Codex on behalf of max-sixty_. |
||
|
|
286004f1eb |
chore: bump skim from 5.5.0 to 5.6.1 (#3718)
Bumps [skim](https://github.com/skim-rs/skim) from 5.5.0 to 5.6.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/releases">skim's releases</a>.</em></p> <blockquote> <h2>5.6.1 - 2026-07-27</h2> <h2>Release Notes</h2> <h3>🤖 CI</h3> <ul> <li>Do not fail release on public API breakage</li> </ul> <h2>Install skim 5.6.1</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-installer.ps1 | iex" </code></pre> <h2>Download skim 5.6.1</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-aarch64-apple-darwin.tar.xz">skim-aarch64-apple-darwin.tar.xz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-aarch64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-apple-darwin.tar.xz">skim-x86_64-apple-darwin.tar.xz</a></td> <td>Intel macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-pc-windows-msvc.zip">skim-x86_64-pc-windows-msvc.zip</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-pc-windows-msvc.msi">skim-x86_64-pc-windows-msvc.msi</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-pc-windows-msvc.msi.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-aarch64-unknown-linux-gnu.tar.xz">skim-aarch64-unknown-linux-gnu.tar.xz</a></td> <td>ARM64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-aarch64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-unknown-linux-gnu.tar.xz">skim-x86_64-unknown-linux-gnu.tar.xz</a></td> <td>x64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-aarch64-unknown-linux-musl.tar.xz">skim-aarch64-unknown-linux-musl.tar.xz</a></td> <td>ARM64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-aarch64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-unknown-linux-musl.tar.xz">skim-x86_64-unknown-linux-musl.tar.xz</a></td> <td>x64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.6.1/skim-x86_64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> </tbody> </table> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/blob/master/CHANGELOG.md">skim's changelog</a>.</em></p> <blockquote> <h2>[5.6.1] - 2026-07-27</h2> <h3>🤖 CI</h3> <ul> <li>Do not fail release on public API breakage</li> </ul> <h2>[5.6.0] - 2026-07-26</h2> <h3>🚀 Features</h3> <ul> <li>Add the <code>set-cmd</code> action to change interactive mode command from bindings (<a href="https://redirect.github.com/skim-rs/skim/issues/1142">#1142</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li><em>(examples)</em> Gate malloc_trim to gcc in the multiple_runs example</li> </ul> <h3>📚 Documentation</h3> <ul> <li>Readd default keybindings to the manpage as an auto-generated separate subsection</li> </ul> <h3>🧪 Testing</h3> <ul> <li>Replace tmux e2e harness with cross-platform Zellij harness (<a href="https://redirect.github.com/skim-rs/skim/issues/1139">#1139</a>)</li> </ul> <h3>🤖 CI</h3> <ul> <li>Make coverage non-blocking to avoid issues with nightly rust</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/skim-rs/skim/commit/c398374a85967c83cad0646807d99cac62de5d6c"><code>c398374</code></a> release: v5.6.1 (<a href="https://redirect.github.com/skim-rs/skim/issues/1143">#1143</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/2303a15b0c5dc3863398636205cbf6c38c1f6c67"><code>2303a15</code></a> ci: do not fail release on public API breakage</li> <li><a href="https://github.com/skim-rs/skim/commit/794ddddb71c56b5a2feca5cb48df08b9758d2021"><code>794dddd</code></a> release: v5.6.0 (<a href="https://redirect.github.com/skim-rs/skim/issues/1140">#1140</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/47456133420131a4a58f4085321305ea9e2f8341"><code>4745613</code></a> ci: make coverage non-blocking to avoid issues with nightly rust</li> <li><a href="https://github.com/skim-rs/skim/commit/29370cc0041baf14f5dddd88b290002205538863"><code>29370cc</code></a> docs: readd default keybindings to the manpage as an auto-generated separate ...</li> <li><a href="https://github.com/skim-rs/skim/commit/cbfb7fac0f95a84ebdf5376115645fafe0084a40"><code>cbfb7fa</code></a> feat: add the <code>set-cmd</code> action to change interactive mode command from bindin...</li> <li><a href="https://github.com/skim-rs/skim/commit/e929c512e307bcac3a53f3c67677b1cd8a746837"><code>e929c51</code></a> fix(examples): gate malloc_trim to gcc in the multiple_runs example</li> <li><a href="https://github.com/skim-rs/skim/commit/88ce5b97ac455c4d1e341fcc105c5ce46bf99fae"><code>88ce5b9</code></a> test: replace tmux e2e harness with cross-platform Zellij harness (<a href="https://redirect.github.com/skim-rs/skim/issues/1139">#1139</a>)</li> <li>See full diff in <a href="https://github.com/skim-rs/skim/compare/v5.5.0...v5.6.1">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
a75328214c |
chore: bump the patch group with 2 updates (#3717)
Bumps the patch group with 2 updates: [clap_complete](https://github.com/clap-rs/clap) and [schemars](https://github.com/GREsau/schemars). Updates `clap_complete` from 4.6.7 to 4.6.8 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/d93a00d64e3c697cef06cb7ff875d1a98d73d2f6"><code>d93a00d</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/4709d1a391292ef383b8c900c36a6e7312d3945b"><code>4709d1a</code></a> docs(complete): Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/2246e8b0c7c8b5ccb2d24a461862b43150d08e0d"><code>2246e8b</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6455">#6455</a> from epage/possible</li> <li><a href="https://github.com/clap-rs/clap/commit/2550f328b0c4d23c38cdb553c39042f544c07c47"><code>2550f32</code></a> feat(complete): Expose possible value completers</li> <li><a href="https://github.com/clap-rs/clap/commit/9048857bc4b46ce588e9a238f6a548c93104392b"><code>9048857</code></a> refactor(complete): Pull out possible values candidate conversion</li> <li><a href="https://github.com/clap-rs/clap/commit/0607d6600133d505c10c7197956217bc54eb1558"><code>0607d66</code></a> refactor(complete): Remove unused allocation</li> <li><a href="https://github.com/clap-rs/clap/commit/943de7350014a880ca787ddca5675ec4fed3dde1"><code>943de73</code></a> refactor(complete): Move related functions next to each other</li> <li><a href="https://github.com/clap-rs/clap/commit/81b86a9fc3d3e2773873e4175ac26c8611fd29b5"><code>81b86a9</code></a> refactor(complete): Generalize value candidate handling</li> <li><a href="https://github.com/clap-rs/clap/commit/ae09202eebb45d2ddca9b280dd91d50d810afc79"><code>ae09202</code></a> refactor(complete): Remove extra allocation</li> <li><a href="https://github.com/clap-rs/clap/commit/466b2be56c5811d1af62c407f5a00456350ece62"><code>466b2be</code></a> chore: Release</li> <li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/clap_complete-v4.6.7...clap_complete-v4.6.8">compare view</a></li> </ul> </details> <br /> Updates `schemars` from 1.2.1 to 1.2.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/GREsau/schemars/releases">schemars's releases</a>.</em></p> <blockquote> <h2>v1.2.2</h2> <ul> <li>Update to syn 3 in schemars_derive</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/GREsau/schemars/blob/master/CHANGELOG.md">schemars's changelog</a>.</em></p> <blockquote> <h2>[1.2.2] - 2026-07-27</h2> <ul> <li>Update to syn 3 in schemars_derive</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/GREsau/schemars/commit/ed6186319d5ebf1959a03f558df375d2bb5c44a6"><code>ed61863</code></a> v1.2.2</li> <li><a href="https://github.com/GREsau/schemars/commit/ae618c3a8e1ca0da5026df5a417be2c5259ab5f9"><code>ae618c3</code></a> Update <code>syn</code> to v3 (<a href="https://redirect.github.com/GREsau/schemars/issues/528">#528</a>)</li> <li><a href="https://github.com/GREsau/schemars/commit/c072ea038c3db93d27c881ede41689ce0777d554"><code>c072ea0</code></a> docs: add missing attributes to table of contents (<a href="https://redirect.github.com/GREsau/schemars/issues/517">#517</a>)</li> <li><a href="https://github.com/GREsau/schemars/commit/015272f20570535a49db0403924c13fc4c51317e"><code>015272f</code></a> Clippy fix (<a href="https://redirect.github.com/GREsau/schemars/issues/512">#512</a>)</li> <li><a href="https://github.com/GREsau/schemars/commit/944f72728f9744992e045e132aab56c5d557c0ad"><code>944f727</code></a> Bump bytes from 1.10.1 to 1.11.1 (<a href="https://redirect.github.com/GREsau/schemars/issues/507">#507</a>)</li> <li>See full diff in <a href="https://github.com/GREsau/schemars/compare/v1.2.1...v1.2.2">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
dd453304ed |
test: fold the mock stub into the wt binary (#3712)
`cargo test --test integration` neither built nor rebuilt `mock-stub`: a
target filter deselects the dummy test that pulled it in, so a fresh
tree panicked ("mock-stub binary not found") and a warm one could run a
stale stub. The chain that compensated — the separate helper package,
its dummy `builds.rs`, the `default-members` entry, nextest's
experimental `build-bins` setup script, `workspace_bin()` — existed only
because cargo-dist ships every `[[bin]]`, and carried a TODO to collapse
once that changed. dist 0.30.2 does support per-binary exclusion now
(`[dist.binaries]`, since 0.29.0; verified with `dist plan`), but the
TODO's plan has a hole it predates: `cargo install worktrunk` installs
every feature-satisfied `[[bin]]`, and dist config doesn't govern
crates.io installs.
So the mock commands are now the `wt` binary itself. `mock_commands`
links `wt` under the mock's name (`gh`, `glab`, …), and `main()`
dispatches to the ported playback (`testing::mock_stub`) when
`WORKTRUNK_TEST_MOCK_CONFIG_DIR` is set, argv[0] is a foreign name, and
the config dir holds `<argv0>.json` for it. The existence check keeps wt
under a foreign argv[0] *without* a config being wt — the
argv0-validation security test symlinks it as `wt;touch` and must reach
wt's own rejection. The shipped binary already compiles the whole
`testing` module unconditionally, so this adds no new category of test
code to it. Windows links `wt.exe` with `hard_link` (copy fallback for
cross-drive dirs); the debug binary is ~67 MB, so per-mock copies stay
the fallback.
Every runner is now safe by construction — cargo rebuilds a package's
own binaries whenever its integration tests build, so there is no
separate artifact to go missing or stale. Deleted: the helper package,
the setup script plus `experimental = ["setup-scripts"]`, the
`default-members` trick, `workspace_bin()`, and `wt_bin()`'s dead
compile-time branch (unit-test targets get neither the runtime variable
nor the `option_env!` value, so the runtime resolution is the one
mechanism).
Validated locally: the pre-merge gate's full suite passes (4542/4542;
its doc step also caught unescaped `argv[0]` intra-doc links in the new
comments, fixed and `cargo doc -Dwarnings` re-verified). With all stub
artifacts purged from `target/`, plain `cargo test --test integration`
on mock-dependent tests builds them and passes — the command that used
to hit the trap. Two integration tests pin the dispatch's argv[0] edges
(an empty argv[0], and a non-UTF8 one), alongside the existing
`wt;touch` carve-out test.
The first commit is the investigation that preceded the fix: it verified
the `wt` binary itself was never subject to the staleness the mock-stub
was, and documented that in `tests/CLAUDE.md`; the fix then narrows that
paragraph further, since the gap it scoped no longer exists.
A two-reviewer subagent round (one prosecuting the diff against the
failure modes documented in the repo's own mock history — the #401/#407
Windows era, #547, #654, #127, #2544, #2730, #2744 — the other
adversarial) then hardened the dispatch. The reserved-name guard is
case-insensitive, matching the config probe, which goes through a
filesystem that equates `WT.json` with `wt.json` on macOS and Windows;
`command_name()` reads `args_os` — `env::args()` panics on a non-Unicode
argument, and this runs inside `main()` on every invocation (caught by
the tend review) — and returns `None` for a degenerate argv[0] instead
of panicking; the `.exe` suffix is stripped explicitly rather than via
`file_stem`, so a dotted mock name (`python3.11`) resolves identically
on every platform; and `copy_mock_binary` is now private —
`MockConfig::write` writes `<name>.json` before linking and is the only
way to create a mock, so a link cannot exist without its config, and the
dispatch's missing-config fall-through can only mean "wt under a foreign
name" (the argv0-validation tests' `wt;touch`), never a half-configured
mock that silently runs real wt with the mocked tool's arguments. The
`Option<&str>` mock helpers whose `None` arm produced exactly such
configless links lost the arm (every caller passed `Some`), and 25
redundant standalone link calls went with it.
The review also surfaced the one remaining spawn-a-stale-binary path
outside the suite: `wt-perf timeline` resolved a sibling `wt` by path,
checked only existence, and told the user to build it manually — so
`cargo run -p wt-perf -- timeline` after a `src/` edit silently measured
stale code. It now builds `wt` first and takes the artifact path from
cargo's `--message-format=json` report rather than deriving a sibling
location, so target-dir and profile overrides can't divert the build
away from where it's resolved; a release wt-perf builds and measures a
release wt. The build runs before the timeline's wall-clock measurement
starts, cargo's progress streams on stderr, and stdout keeps the
`--chrome` JSON contract.
> _This was written by Claude Code on behalf of max-sixty_
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
|
||
|
|
aac20eeab6 |
Release v0.71.0 (#3670)
Release 0.71.0. Minor bump, forced by ten breaking library-API changes from the forge, shell, and removal consolidation — patch is disallowed pre-1.0 with semver breakage. ## Gates - `cargo run -- hook pre-merge --yes` — 4,491 tests, 1 skipped, all lints - `nightly.yaml` on the cut-from tip (`aba7bad08`) — `full-tests` green on all three platforms; `gate`, `crate-build`, `minimal-versions`, `check-unused-dependencies`, `link-check`, `nix-flake`, and the musl release targets green - `cargo semver-checks check-release -p worktrunk` — 10 major, 0 minor ## Two entries users need to read **Forge hosts are now classified by exact DNS label.** A host that carries the forge name only as part of a label stops being detected: `gitlab-internal.company.com`, `github-mirror.example.com`, and `mygithub.com` join the lookalikes the change targets. That costs CI status in `wt list --full`, `wt switch --prs`, and `repo.provider` in JSON output. `forge.platform` in `.config/wt.toml` restores it. Only the single-label SSH alias form (`github-personal`) announces itself; a self-hosted instance at a hyphenated hostname goes quiet without a message. **The retired single-file shell directive is gone.** Wrappers written before 0.37 stop changing directory *and* stop running `--execute` until `wt config shell install` and a shell restart. Nushell needs the reinstall because its wrapper is a static file. ## Data-loss surface review Five independent finders over the cumulative diff — behavioral, blast-radius, automation-diff, and keyword, plus a dedicated pass on the consolidation commit. The removal chain saw heavy churn and moved consistently in the safe direction: the repo-wide `git worktree prune` that could unregister an innocent bystander is gone, the lock guard now precedes the missing-directory fallback, planning is a pure read, and a fresh topology read guards the compare-and-swap branch delete. No new unbounded deletion path. Residual items, adjudicated as acceptable: 1. A worktree directory that *reappears* between plan and execution is deleted rather than trashed. `prune_worktree_entry` runs `git worktree remove`, which deletes a clean worktree's ignored files at exit 0 with no `--force` (verified in a scratch repo). The normal path renames into `.git/wt/trash/` first, so git finds nothing there; only the missing-directory fallback and `step prune`'s stale-detached arm are exposed. Requires a remount inside the window, and #3658 documents the tradeoff. 2. The picker's `BranchOnly` arm destructures with `..` and discards `prune_entry`, so `alt-x` on a gone-directory row leaves a stale registration behind. A regression from #3658, but it leaves *more* state, not less. 3. `wt config shell install` derives its preview and its deletion from two separate scans, and `wt switch`'s first-run install offer still removes legacy files unpreviewed. Both pre-existing; #3648 tightened `shell install` and did not reach that path. 4. `enable_hermetic_test_env()` is a `pub` process-global in library code that blinds every git child to user config. No production caller, carries its own TODO. 5. Two directive-injection regression tests were deleted in the same release as the directive-protocol rework. ## Follow-up worth filing Widen the forge diagnostic to any host that would have matched under the old substring rule but no longer does — today only the single-label SSH alias form gets a message, so a self-hosted instance at a hyphenated hostname loses CI status silently. Additive; needs no further breaking change. 🤖 Generated with [Claude Code](https://claude.com/claude-code) |
||
|
|
1eded27943 |
Simplify forge, shell integration, and removal internals (#3662)
This consolidates cross-cutting models that had accumulated parallel representations, while preserving the CLI and config interfaces. ## What changed - Forge identity now flows through one `ForgeKind`, with boundary-safe network-host classification shared by CI, remote references, and structured repository metadata. Branded SSH aliases such as `github-personal` remain outside provider dispatch and receive an actionable `forge.platform` diagnostic when forge data is requested. - Worktree removal now uses one owned target type and rechecks uncached worktree topology immediately before compare-and-swap branch deletion, retaining branches that gained a live or locked checkout. - Shell integration no longer implements the retired single-file directive writer. Stale wrappers receive repair guidance, execution fails closed, and child processes cannot inherit the retired sourceable-file capability. - Zsh and Git-version probes are shared, while dead mocks, redundant dependency edges, serializer detours, pass-through types, and duplicate tests are removed. The removal guard deliberately distinguishes live, stale-prunable, and locked registrations. The detached cleanup path performs the same record-aware check before deleting a branch ref. ## Testing `cargo run -- hook pre-merge --yes` passed after merging current `origin/main`: 4,489 tests, Clippy, formatting, lockfile checks, docs, doctests, and snapshot review. > _This was written by Claude Code on behalf of max_. |
||
|
|
5e85e8af71 |
chore: bump the patch group with 4 updates (#3625)
Bumps the patch group with 4 updates: [clap](https://github.com/clap-rs/clap), [serde_json](https://github.com/serde-rs/json), [ignore](https://github.com/BurntSushi/ripgrep) and [tokio](https://github.com/tokio-rs/tokio). Updates `clap` from 4.6.2 to 4.6.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.6.3</h2> <h2>[4.6.3] - 2026-07-20</h2> <h3>Fixes</h3> <ul> <li><em>(derive)</em> Allow <code>"literal".function()</code> as attribute values</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.6.3] - 2026-07-20</h2> <h3>Fixes</h3> <ul> <li><em>(derive)</em> Allow <code>"literal".function()</code> as attribute values</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/7e0bccab8cf7be047fc84d804d19c7b30715d3fb"><code>7e0bcca</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/0f09905658535c4b3a92afc037e8970959f55559"><code>0f09905</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/970695102173e40bddb0c95b0a3f6fb216f2eb19"><code>9706951</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6353">#6353</a> from truffle-dev/feat-completer-arg-index</li> <li><a href="https://github.com/clap-rs/clap/commit/ac0d148f7e21068fd1f544230456f30c95311f78"><code>ac0d148</code></a> feat(complete): Index-aware ValueCompleter</li> <li><a href="https://github.com/clap-rs/clap/commit/1565a3cbb411dedc410154fca0de7ec445fcdb08"><code>1565a3c</code></a> test(complete): Cover indexed multi-value case</li> <li><a href="https://github.com/clap-rs/clap/commit/48fc10ae88e4d723fd581745cbbff40eea9ebc88"><code>48fc10a</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6350">#6350</a> from stefankreutz/missing_docs</li> <li><a href="https://github.com/clap-rs/clap/commit/7d4c353d5b843ac3b45473172ebdf9c80e89b697"><code>7d4c353</code></a> docs: Hint at clippy's missing docs lint</li> <li><a href="https://github.com/clap-rs/clap/commit/f6a6701e60f372c2104c6aca413c86b996e3e026"><code>f6a6701</code></a> chore(deps): Update Rust Stable to v1.95 (<a href="https://redirect.github.com/clap-rs/clap/issues/6347">#6347</a>)</li> <li><a href="https://github.com/clap-rs/clap/commit/ac5fda6a799e4c640d671edd1111d4a5e723dc1a"><code>ac5fda6</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/b73c627638fb8d03497079408f5d684f281d132d"><code>b73c627</code></a> docs: Update changelog</li> <li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/clap_complete-v4.6.2...clap_complete-v4.6.3">compare view</a></li> </ul> </details> <br /> Updates `serde_json` from 1.0.150 to 1.0.151 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.151</h2> <ul> <li>Add RawValue::from_string_unchecked (<a href="https://redirect.github.com/serde-rs/json/issues/1331">#1331</a>, thanks <a href="https://github.com/WonderLawrence"><code>@WonderLawrence</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/serde-rs/json/commit/de8500740cdcabffb9734f503e4889def823cf10"><code>de85007</code></a> Release 1.0.151</li> <li><a href="https://github.com/serde-rs/json/commit/3b2b3c5f28c20ed988bd081a4147c535e7e65c74"><code>3b2b3c5</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/json/issues/1331">#1331</a> from WonderLawrence/rawvalue-from-string-unchecked</li> <li><a href="https://github.com/serde-rs/json/commit/0406d96860e9d8b9252e2002fa3e626ae48ca1b0"><code>0406d96</code></a> Debug-assert well-formedness and no-whitespace in from_string_unchecked</li> <li><a href="https://github.com/serde-rs/json/commit/cf16f75d81e28c723323bfc60a68fc02d2994fff"><code>cf16f75</code></a> Add RawValue::from_string_unchecked</li> <li><a href="https://github.com/serde-rs/json/commit/827a315bf2198558f0325b07bcc1e2cd973aba2f"><code>827a315</code></a> Update actions/upload-artifact@v6 -> v7</li> <li><a href="https://github.com/serde-rs/json/commit/cea36a5c017ebffdeb95d0cd0f1aad473bfab758"><code>cea36a5</code></a> Update actions/checkout@v6 -> v7</li> <li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.150...v1.0.151">compare view</a></li> </ul> </details> <br /> Updates `ignore` from 0.4.30 to 0.4.31 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/BurntSushi/ripgrep/commit/59e318f5ace48db54f37bb67c152535bc17fa153"><code>59e318f</code></a> ignore-0.4.31</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/a9dc2228fbddd1d25146f38d0926830812c97419"><code>a9dc222</code></a> cargo: set <code>rust-version</code> on all crates</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/be739c7910288905d966f87607b28435d1576295"><code>be739c7</code></a> index: add grep-index crate</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/d958105d412b6a1ad014cb0e5832a9b029fa4977"><code>d958105</code></a> cargo: add new build-time <code>unstable-index</code> feature</li> <li>See full diff in <a href="https://github.com/BurntSushi/ripgrep/compare/ignore-0.4.30...ignore-0.4.31">compare view</a></li> </ul> </details> <br /> Updates `tokio` from 1.53.0 to 1.53.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tokio-rs/tokio/releases">tokio's releases</a>.</em></p> <blockquote> <h2>Tokio v1.53.1</h2> <h1>1.53.1 (July 20th, 2026)</h1> <h3>Fixed</h3> <ul> <li>signal: restore MSRV by removing <code>OnceLock::wait</code> from the Windows handler (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8300">#8300</a>)</li> </ul> <h3>Fixed (unstable)</h3> <ul> <li>time: fix alt timer cancellation and insertion race (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8252">#8252</a>)</li> </ul> <h3>Documented</h3> <ul> <li>runtime: remove dead link definition in Runtime::block_on (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8301">#8301</a>)</li> </ul> <p><a href="https://redirect.github.com/tokio-rs/tokio/issues/8252">#8252</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/8252">tokio-rs/tokio#8252</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/8300">#8300</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/8300">tokio-rs/tokio#8300</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/8301">#8301</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/8301">tokio-rs/tokio#8301</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tokio-rs/tokio/commit/75fef53d0a8590c2d1dbb63672aa7b7d1ef51155"><code>75fef53</code></a> chore: prepare Tokio v1.53.1 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8303">#8303</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/ae9d01121377cdbef32b9d5e8559843cce9f927e"><code>ae9d011</code></a> signal: restore MSRV by removing OnceLock::wait from the Windows handler (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8300">#8300</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/eb4988dc2ecb85d2617971fbbabc84938c141bfd"><code>eb4988d</code></a> time: fix the loom test of the race between cancellation/insertion (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8302">#8302</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/91d3b4c0bccf2234fc3ed19e605e2cd402f19437"><code>91d3b4c</code></a> time: fix alt timer cancellation and insertion race (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8252">#8252</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/a46338401b9e0ffc9bd68c31100ee99cee717481"><code>a463384</code></a> runtime: remove dead link definition in <code>Runtime::block_on</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8301">#8301</a>)</li> <li>See full diff in <a href="https://github.com/tokio-rs/tokio/compare/tokio-1.53.0...tokio-1.53.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
946e360447 |
Release v0.70.0 (#3640)
Cuts 0.70.0 — version bump plus the changelog for the 45 commits since
v0.69.2.
**Minor bump, not patch.** `cargo semver-checks` reports 6 breaking
library changes (`set_command_timeout` and `ListConfig::task_timeout_ms`
removed, `WorkingTree::stage` arity changed, three enum variants added
to exhaustive enums). Worktrunk ships breaking library changes freely,
but semver still puts a break at minor while pre-1.0.
## Release validation
- Local gate green on the release commit: 4631 tests, lints, doctests.
- `nightly` dispatched on the cut-from tip (`a27cbd42`) for the full
cross-platform suite — `full-tests` green on linux, macOS, and Windows,
plus minimal-versions, nix-flake, crate-build, and the release targets.
## Data-loss surface review
The cumulative diff was audited against the deletion surface. One
deliberate widening, signed off for this release with follow-ups to
file:
- **#3602** removes the content check from `wt config shell install`'s
legacy cleanup, so `conf.d/{cmd}.fish` and the stranded nushell
`{cmd}.nu` are now deleted by path, unread. Only that exact filename is
touched and each removal is reported, but the deletion is absent from
both `--dry-run` and the confirmation prompt, and the already-configured
path skips the prompt entirely.
Also noted, none blocking:
- The `!path.exists()` check precedes the lock guard on the
`Path`/`Current` removal arm, so a locked worktree whose directory is
absent loses its branch. This already governed the branch-targeted route
in v0.69.2; #3533 unified the other arms onto it. The FAQ's "Neither
`git worktree remove` nor `wt remove` (even with `--force`) will delete
them" is absolute where the behavior isn't.
- On the default background removal path, `ensure_clean` and
`stop_fsmonitor_daemon` swapped order, so the safety gate is now
answered by the live fsmonitor daemon rather than a full re-stat.
Bounded by trash staging with 24-hour retention, and the foreground and
picker paths were already daemon-served.
Net *improvements* to the same surface: shared-branch retention across
remove/prune/merge (#3533), outcome-accurate removal reporting (#3633,
#3637), and the removal of the thread-local command timeout that could
kill in-flight git commands on worker threads (#3615).
## Changelog accuracy
Entries were verified against the actual diffs rather than commit
messages, which corrected several drafts: the prune figures were one PR
stale (~2.9 s → the real ~0.6 s), `wt merge` takes no worktree argument
so it only gained the retention half of #3533, the Azure DevOps report
is behind `--full`, #3608 never touched `nightly.yaml`, and #3601
inverted what the FAQ change actually said. Two omissions were added —
the `install-statusline` foreign-statusline fix (#3595) and the shipped
`/wt-switch-create` skill change (#3636).
> _This was written by Claude Code on behalf of Maximilian_
|
||
|
|
21ea6d6f1a | chore: bump skim from 5.1.0 to 5.5.0 (#3626) | ||
|
|
6b29c2802b |
Release v0.69.2 (#3590)
Cuts v0.69.2, and fixes the Windows code-signing path it depends on. ## The signing fix v0.69.1 shipped an unsigned `wt.exe` under a green run and a **Completed** SignPath signing request. `archive: false` (#3566) had already made the GitHub artifact name `worktrunk-x86_64-pc-windows-msvc.zip`, and SignPath names its download after the artifact — so with `output-artifact-directory: target/distrib` the signed zip landed at `worktrunk-x86_64-pc-windows-msvc.zip.zip`, beside the untouched unsigned build. The checksum step and the release upload both kept reading the original. Confirmed by parsing the published asset's PE certificate table: `size=0`. The download now goes to a scratch directory and whatever single file lands there replaces the built zip, so SignPath's naming isn't load-bearing. ## Verification, because this failure is invisible Signing is `continue-on-error` by design (self-signed test certificate pending SignPath's OSS review), so nothing in the logs distinguishes "signed" from "silently unsigned" — which is how it slipped through twice, two different ways. `.github/verify-windows-signature.py` reads the zip's PE certificate tables directly, and runs at two points with distinct jobs: - **before the overwrite** — an unsigned release is tolerable while the certificate is a test one; a corrupt one never is, so the replacement has to verify before it can clobber a good build. - **after** — reports what the release actually ships, which is the question the logs never answered. ## Rehearsed before landing The signing path only runs on a tag, so each question about it used to cost a release. This chain was instead run on a Windows runner against the already-published v0.69.1 zip (identical bytes, no build): ``` saved to …\target\signpath\worktrunk-x86_64-pc-windows-msvc.zip.zip git-wt.exe: certificate table 8480 bytes wt.exe: certificate table 8472 bytes → mv → target/distrib/worktrunk-x86_64-pc-windows-msvc.zip target/distrib/worktrunk-x86_64-pc-windows-msvc.zip: all 2 executables signed worktrunk-x86_64-pc-windows-msvc.zip: OK (checksum matches) ``` That also settled the open question behind #3556: SignPath returns the signed zip itself, not a wrapper, so `skip-decompress: true` is correct — the extract mode does explode it into loose files. ## Release contents `wt remove`'s fsmonitor sweep (#3581), the troubleshooting doc trim, and this fix. The two refactors in range (#3582, #3584) are behavior-preserving and omitted per convention. Local gate green (4547 passed). Changelog entries verified against the diffs by subagent; two claims corrected (the doc entry's rationale, and an overclaim attributing v0.69.0's unsigned binary to this bug rather than the separate upload failure #3566 fixed). Data-loss surface reviewed across the cumulative diff. > _This was written by Claude Code on behalf of max_ |
||
|
|
bd3ebaffde |
Release v0.69.1 (#3577)
Release v0.69.1. A patch release: the Windows code-signing upload fix (`archive: false`, so SignPath receives the real zip rather than a zip-of-a-zip), crates.io publishing via trusted publishing (OIDC), a `wt switch` picker correctness fix after a deleted-CWD recovery, and a statusline dev-server URL dim. See CHANGELOG.md for the full list. > _This was written by Claude Code on behalf of max_ |
||
|
|
7b2e0705a1 |
Release v0.69.0 (#3559)
Highlights: clickable CI and dev-server-URL statusline segments in Claude Code (#3550), `wt merge --no-rebase` accepting merge-shaped fast-forward histories (#3509), a faster and lower-CPU `wt switch` picker (#3544, #3534), and SignPath code signing for the Windows release binary (#3553). Full details in CHANGELOG.md. > _This was written by Claude Code on behalf of max_ |
||
|
|
a7c4a7a120 |
refactor(wt-perf): place fixtures under target/wt-perf, not the cache dir (#3547)
## What Move every `wt-perf` on-disk fixture out of the per-user cache dir and under the cargo target dir at `<target>/wt-perf/`, resolved by a renamed `wt_perf_fixture_dir()`: - `setup <config>` fixtures → `<target>/wt-perf/<config>` (was `~/.cache/wt-perf/<config>`). - The rust-lang/rust clone and `prune-real` fixtures → `<target>/wt-perf/bench-repos/` (was `~/.cache/wt-perf/bench-repos/`). - `wt_perf_cache_dir()` → `wt_perf_fixture_dir()`. The target dir is derived from the **running executable's own path** (it lives inside whichever dir cargo built into — `<target>/debug/wt-perf`, `<target>/release/deps/<bench>`), so it honors `CARGO_TARGET_DIR`, a config-file `build.target-dir`, and cargo-llvm-cov's `target/llvm-cov-target/` — none of which a bare `CARGO_TARGET_DIR` env read covers. Falls back to `<workspace>/target` if the binary isn't under a recognizable profile dir. The `etcetera` dependency is dropped. - The `WT_PERF_CACHE_DIR` env override (and the empty-value guard it required) is removed; the benchmarks workflow now caches the deterministic `target/wt-perf/bench-repos` path directly. - In-process throwaway fixtures (`create_repo`) are unchanged — they keep using `tempfile::TempDir`. This reverses the location decision from #3542, which had moved these into `~/.cache/wt-perf`. ## Why `target/` is the conventional home for build/test-generated artifacts — gitignored, reaped by `cargo clean`, and already where criterion writes (`target/criterion`). Keeping every wt-perf fixture there gives one predictable location under the repo that `cargo clean` fully resets. Deriving the target dir from the running binary (rather than assuming `<workspace>/target`) keeps that property intact even when the target dir is relocated. ## Tradeoff (accepted) `target/` is **not** shared across git worktrees (worktrees don't share it) and is wiped by `cargo clean`. So the ~15 GiB `prune-real` rust clone re-clones per worktree and after every `cargo clean` — the cost #3542 avoided by using the cache dir. This is deliberate and documented on `wt_perf_fixture_dir`; it's cheap for the synthetic `setup` fixtures, which rebuild in seconds. ## Testing - `cargo build -p wt-perf --all-targets`, `cargo test -p wt-perf` — clean. - New unit test `target_dir_from_exe_finds_cargo_target` covers the resolution logic (relocated `CARGO_TARGET_DIR`, bench binary under `release/deps/`, cargo-llvm-cov's nested target, closest-profile-wins, and the outside-any-target fallback). - `pre-commit run --all-files` (fmt, clippy, yaml, typos, cargo-lock, custom hooks) — clean. - Smoke-tested end-to-end: `setup branches-2` lands at `<worktree>/target/wt-perf/branches-2` and writes nothing to `~/.cache/`; a copy of the binary run from a fake `<dir>/debug/wt-perf` correctly resolves fixtures to `<dir>/wt-perf/`, proving a relocated target dir is honored. > _This was written by Claude Code on behalf of Maximilian_ --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> |
||
|
|
4121dc979c |
refactor(wt-perf): cache fixtures in the platform cache dir, not /tmp or target/ (#3542)
## What Move `wt-perf`'s benchmark/debug fixture repos out of `std::env::temp_dir()` and `target/bench-repos/` into the per-user cache dir, resolved by a new `wt_perf_cache_dir()`: - `$WT_PERF_CACHE_DIR` if set, else `<cache>/wt-perf` via `etcetera::choose_base_strategy().cache_dir()` — `~/.cache/wt-perf` (or `$XDG_CACHE_HOME/wt-perf`) on Linux **and** macOS. This matches worktrunk's own base-dir convention (`src/config/user/path.rs` resolves user config through the same XDG-on-macOS strategy). - `setup <config>` fixtures → `<cache>/<config>` (was `temp_dir()/wt-perf-<config>`). `--path` still overrides. - Real cloned fixtures (`prune-real`, the rust-lang/rust clone) → `<cache>/bench-repos/` (was `target/bench-repos/`). - In-process throwaway fixtures (`create_repo`) are unchanged — they keep using `tempfile::TempDir`. ## Why Both old homes were wrong for a *reused* fixture (these are given stable names, persist between runs, and are referenced from docs and `-C <path>` — that's a cache, not a temp file): - **A fixed name in a shared `/tmp` (Linux)** collides across users: `/tmp` is sticky (`1777`), so a second user's `setup` hits `remove_dir_all().unwrap()` on a dir they don't own → `EPERM` → panic. It's also a predictable-path/TOCTOU hazard, and `systemd-tmpfiles` reaps `/tmp` per-file at 10 days by `max(atime,mtime,ctime)` — on a `noatime` mount an actively-*read* fixture still loses cold `.git/objects/pack/*.pack` mid-use → silent git corruption. - **On macOS**, `temp_dir()` is already `/var/folders/.../T` (per-user, `0700`), so the docs' `/tmp/wt-perf-*` paths were simply wrong there. - **`target/`** is per-worktree (git worktrees don't share it) and wiped by `cargo clean`, so the ~15 GiB rust clone was re-cloned per worktree — worst for the most expensive fixture, in a worktree-heavy workflow. The cache dir is per-user (no collision, no TOCTOU), stable and discoverable (docs/`-C` references still work), shared across worktrees (clone once per machine), and survives `cargo clean` — matching sccache, cargo, rustup, Go, Bazel, and Hugging Face, which all place large reusable caches there rather than in `/tmp`. ## Migration notes - First bench/setup run after this rebuilds the cache under the new location (the old `target/bench-repos/` is no longer read). Existing fixtures can be dropped with `rm -rf target/bench-repos`. - `.github/workflows/benchmarks.yaml` sets `WT_PERF_CACHE_DIR` and caches `$WT_PERF_CACHE_DIR/bench-repos`, so the cached path and the path wt-perf writes stay pinned together (no drift if a runner sets `$XDG_CACHE_HOME`); key unchanged. - Docs (`benches/CLAUDE.md`, `src/commands/CLAUDE.md`) updated to the new paths, noting that `wt-perf setup` prints the exact path. ## Testing - `cargo build --workspace --all-targets`, `cargo clippy --workspace --all-targets --features shell-integration-tests -- -D warnings` — clean. - `cargo test -p wt-perf` — passes. - Smoke-tested default resolution (`~/.cache/wt-perf/…` on macOS), `$WT_PERF_CACHE_DIR` override, and the `prune-real --path` rejection (now names the resolved cache path). > _This was written by Claude Code on behalf of Maximilian_ --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> |
||
|
|
bf9e603ccd |
build(deps): hold skim at 5.1.0 — 5.3.1 breaks the picker on legacy Windows (#3538)
## Problem skim 5.3.1 breaks the picker on the legacy Windows console. Every picker PTY test on `test (windows)` fails with: ``` ✗ interactive picker failed: Keyboard progressive enhancement not implemented for the legacy Windows API. ``` That is a crossterm keyboard-enhancement error: the picker (via skim 5.3.1) drives keyboard-enhancement handling that the legacy Windows console API doesn't support, crashing the picker at runtime. ~40 `switch_picker` tests fail as a result. ## Evidence it's skim 5.3.1 - **#3526 (bump skim 5.1.0 → 5.3.1) merged with its own `full-tests (windows)` already red** — the regression landed on main unnoticed. - **main at skim 5.1.0 (`0958a365b`) was green on `test (windows)` the same day.** The only relevant change between that green run and the failures is the skim bump. - The failure is a picker runtime crash, unrelated to any picker source change — no `switch_picker` code moved. Since it's on main, it reddens Windows CI for every open PR (e.g. #3346), not just one branch. ## Fix Pin `skim = "=5.1.0"` in `Cargo.toml` — the last Windows-green release — with a comment naming the regression. `Cargo.toml` specified `skim = "5.0"` (a caret range that `5.3.1` satisfies), so #3526 changed **only** the lockfile. A lock-only revert would silently drift back to 5.3.1 on the next `cargo update`, so the hold has to live in the manifest. The lockfile downgrade (skim 5.3.1 → 5.1.0, frizbee 0.11.0 → 0.10.0 and the deps that pulls) follows from the pin. Unpin once skim's keyboard-enhancement path is guarded for the legacy Windows console (upstream fix, or a worktrunk-side guard before enabling enhancement). ## Testing - `cargo run -- hook pre-merge --yes` — full suite green locally (4475 passed, 1 skipped), including the `switch_picker` tests that fail on Windows at 5.3.1. - CI will confirm `test (windows)` returns to green. > _This was written by Claude Code on behalf of Maximilian Roos_ Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
87715c305b |
chore: bump skim from 5.1.0 to 5.3.1 (#3526)
Bumps [skim](https://github.com/skim-rs/skim) from 5.1.0 to 5.3.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/releases">skim's releases</a>.</em></p> <blockquote> <h2>5.3.1 - 2026-07-19</h2> <h2>Release Notes</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Ignore KeyEventState (<a href="https://redirect.github.com/skim-rs/skim/issues/1127">#1127</a>)</li> </ul> <h2>Install skim 5.3.1</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-installer.ps1 | iex" </code></pre> <h2>Download skim 5.3.1</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-aarch64-apple-darwin.tar.xz">skim-aarch64-apple-darwin.tar.xz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-aarch64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-apple-darwin.tar.xz">skim-x86_64-apple-darwin.tar.xz</a></td> <td>Intel macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-pc-windows-msvc.zip">skim-x86_64-pc-windows-msvc.zip</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-pc-windows-msvc.msi">skim-x86_64-pc-windows-msvc.msi</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-pc-windows-msvc.msi.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-aarch64-unknown-linux-gnu.tar.xz">skim-aarch64-unknown-linux-gnu.tar.xz</a></td> <td>ARM64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-aarch64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-unknown-linux-gnu.tar.xz">skim-x86_64-unknown-linux-gnu.tar.xz</a></td> <td>x64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-aarch64-unknown-linux-musl.tar.xz">skim-aarch64-unknown-linux-musl.tar.xz</a></td> <td>ARM64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-aarch64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-unknown-linux-musl.tar.xz">skim-x86_64-unknown-linux-musl.tar.xz</a></td> <td>x64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.3.1/skim-x86_64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> </tbody> </table> <h2>5.3.0 - 2026-07-19</h2> <h2>Release Notes</h2> <h3>🚀 Features</h3> <ul> <li>Add 'left' and <code>right</code> info display modes (<a href="https://redirect.github.com/skim-rs/skim/issues/1120">#1120</a>)</li> <li>Add <code>--hide-nth</code> to hide fields from display but keep them searchable (<a href="https://redirect.github.com/skim-rs/skim/issues/1122">#1122</a>)</li> <li>Add bind and unbind actions (<a href="https://redirect.github.com/skim-rs/skim/issues/1121">#1121</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>Kitty keyboard protocol</li> </ul> <h3>🤖 CI</h3> <ul> <li>Add public-api check (<a href="https://redirect.github.com/skim-rs/skim/issues/1124">#1124</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/blob/master/CHANGELOG.md">skim's changelog</a>.</em></p> <blockquote> <h2>[5.3.1] - 2026-07-19</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Ignore KeyEventState (<a href="https://redirect.github.com/skim-rs/skim/issues/1127">#1127</a>)</li> </ul> <h2>[5.3.0] - 2026-07-19</h2> <h3>🚀 Features</h3> <ul> <li>Add 'left' and <code>right</code> info display modes (<a href="https://redirect.github.com/skim-rs/skim/issues/1120">#1120</a>)</li> <li>Add <code>--hide-nth</code> to hide fields from display but keep them searchable (<a href="https://redirect.github.com/skim-rs/skim/issues/1122">#1122</a>)</li> <li>Add bind and unbind actions (<a href="https://redirect.github.com/skim-rs/skim/issues/1121">#1121</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>Kitty keyboard protocol</li> </ul> <h3>🤖 CI</h3> <ul> <li>Add public-api check (<a href="https://redirect.github.com/skim-rs/skim/issues/1124">#1124</a>)</li> </ul> <h2>[5.2.0] - 2026-07-17</h2> <h3>🚀 Features</h3> <ul> <li>Collapsed borders by default and <code>--border-no-collapse</code> flag (<a href="https://redirect.github.com/skim-rs/skim/issues/1117">#1117</a>)</li> <li>Reduce binary size by removing uncommon image formats and color_eyre (<a href="https://redirect.github.com/skim-rs/skim/issues/1118">#1118</a>)</li> </ul> <h2>[5.1.4] - 2026-07-17</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Preserve input order with --no-sort (<a href="https://redirect.github.com/skim-rs/skim/issues/1115">#1115</a>)</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/juneboku"><code>@juneboku</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1115">#1115</a></li> </ul> <h2>[5.1.3] - 2026-07-16</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>Manually resize the Tui when not in fullscreen mode</li> </ul> <h3>🤖 CI</h3> <ul> <li>Fix fixed viewport resize test in non-interactive env (<a href="https://redirect.github.com/skim-rs/skim/issues/1114">#1114</a>)</li> </ul> <h3>⚙️ Miscellaneous Tasks</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/skim-rs/skim/commit/6dbe37a7fa43f69d906f42b647a5b0221f721bd8"><code>6dbe37a</code></a> release: v5.3.1 (<a href="https://redirect.github.com/skim-rs/skim/issues/1128">#1128</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/6f94d80973063e3464ef169afbf27034642cde35"><code>6f94d80</code></a> fix: ignore KeyEventState (<a href="https://redirect.github.com/skim-rs/skim/issues/1127">#1127</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/4d093a42e1ebf94c64d7950e2d4817b30089ae05"><code>4d093a4</code></a> release: v5.3.0 (<a href="https://redirect.github.com/skim-rs/skim/issues/1123">#1123</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/3c3f26ebc923491031f2728928fd3c18efe46163"><code>3c3f26e</code></a> fix: kitty keyboard protocol</li> <li><a href="https://github.com/skim-rs/skim/commit/ad97bfa7deeee352d743f41ec7cb8bd4b26b4bf6"><code>ad97bfa</code></a> feat: add bind and unbind actions (<a href="https://redirect.github.com/skim-rs/skim/issues/1121">#1121</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/ff98133bbd4502633a5b01fcadcadccccef437e0"><code>ff98133</code></a> ci: add public-api check (<a href="https://redirect.github.com/skim-rs/skim/issues/1124">#1124</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/dce26d622a7caec4649b2d379c029a64e4fad66e"><code>dce26d6</code></a> feat: add <code>--hide-nth</code> to hide fields from display but keep them searchable (...</li> <li><a href="https://github.com/skim-rs/skim/commit/55aa7dacd573ccea22f1c3fb655e0a4f91f297a7"><code>55aa7da</code></a> feat: add 'left' and <code>right</code> info display modes (<a href="https://redirect.github.com/skim-rs/skim/issues/1120">#1120</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/57a7487323b7f63f28a0e142ba38136b79dca11b"><code>57a7487</code></a> release: v5.2.0 (<a href="https://redirect.github.com/skim-rs/skim/issues/1119">#1119</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/bb6c03f3771766a1830e7c48c3abc26af02de97f"><code>bb6c03f</code></a> feat: reduce binary size by removing uncommon image formats and color_eyre (#...</li> <li>Additional commits viewable in <a href="https://github.com/skim-rs/skim/compare/v5.1.0...v5.3.1">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
076e09a2e4 |
chore: bump tokio from 1.52.3 to 1.53.0 (#3525)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.52.3 to 1.53.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tokio-rs/tokio/releases">tokio's releases</a>.</em></p> <blockquote> <h2>Tokio v1.53.0</h2> <h1>1.53.0 (July 17th, 2026)</h1> <h3>Added</h3> <ul> <li>fs: implement <code>From<OwnedFd></code> and <code>From<OwnedHandle></code> for <code>File</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8266">#8266</a>)</li> <li>metrics: add task schedule latency metric (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7986">#7986</a>)</li> <li>net: add <code>SocketAddr</code> methods to Unix sockets (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8144">#8144</a>)</li> </ul> <h3>Changed</h3> <ul> <li>io: add <code>#[inline]</code> to IO trait impls for in-memory types (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8242">#8242</a>)</li> <li>net: implement UCred::pid on FreeBSD (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8086">#8086</a>)</li> <li>net: support Nuttx target os (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8259">#8259</a>)</li> <li>signal: refactor global variables on Windows (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8231">#8231</a>)</li> <li>sync: <code>mpsc::{Receiver,UnboundedReceiver}</code> now drops waker on drop, even if there are still senders (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8095">#8095</a>)</li> <li>taskdump: support taskdumps on s390x (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8192">#8192</a>)</li> <li>time: add <code>#[track_caller]</code> to <code>timeout_at()</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8077">#8077</a>)</li> <li>time: consolidate mutex locks on spurious poll (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8124">#8124</a>)</li> <li>time: defer waker clone on spurious poll (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8107">#8107</a>)</li> <li>time: move lazy-registration state into <code>Sleep</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8132">#8132</a>)</li> <li>tracing: remove unnecessary span clone (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8126">#8126</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>io: do not treat zero-length reads as EOF in <code>Chain</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8251">#8251</a>)</li> <li>net: use getpeereid for QNX peer credentials (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8270">#8270</a>)</li> <li>runtime: avoid illegal state in <code>FastRand</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8078">#8078</a>)</li> <li>sync: wake mpsc receiver when a queued <code>reserve[_many]</code> returns permits (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8260">#8260</a>)</li> <li>taskdump: skip double wake on <code>Trace::capture</code>/<code>Trace::trace_with</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8043">#8043</a>)</li> <li>time: avoid stack overflow in runtime constructor (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8093">#8093</a>)</li> <li>time (alt timer): ensure timers stay in the same runtime after <code>.reset()</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8169">#8169</a>)</li> </ul> <h3>IO uring (unstable)</h3> <ul> <li>fs: use io-uring for <code>fs::try_exists</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8080">#8080</a>)</li> <li>fs: use io-uring for renaming files (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7800">#7800</a>)</li> <li>rt: flush io-uring CQE in case of CQE overflow (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8277">#8277</a>)</li> </ul> <h3>Documented</h3> <ul> <li>docs: clarify cancel safety wording (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8181">#8181</a>)</li> <li>fs: clarify <code>create_dir_all</code> succeeds if path exists (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8149">#8149</a>)</li> <li>io: add warning about stdout reordering with multiple handles (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8276">#8276</a>)</li> <li>net: document pipe <code>try_read*</code>/<code>try_write*</code> readiness behavior (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8032">#8032</a>)</li> <li>runtime: document interaction with fork() (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8202">#8202</a>)</li> <li>sync: clarify broadcast lagging semantics (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8239">#8239</a>)</li> <li>sync: document memory ordering guarantees for Semaphore (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8119">#8119</a>)</li> <li>task: explain why <code>yield_now</code> defers its waker (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8254">#8254</a>)</li> <li>time: add panic docs to <code>timeout_at()</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8077">#8077</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tokio-rs/tokio/commit/be689a35f5ade5a39e507f79d3ec85cdab27806f"><code>be689a3</code></a> chore: prepare Tokio v1.53.0 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8294">#8294</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/50f76c71ec7203013f7f0cda59deaa9016e93939"><code>50f76c7</code></a> chore: prepare tokio-macros v2.7.1 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8295">#8295</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/f61fccad3cd598cce743fc511a983364b77af92a"><code>f61fcca</code></a> Merge 'tokio-1.52.4' into 'master' (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8290">#8290</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/efdba5fcf02c4b93d379114df136b994c3b21445"><code>efdba5f</code></a> chore: prepare Tokio v1.52.4 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8289">#8289</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/b0ba02e75507518baed6718b0c37105e430f3a93"><code>b0ba02e</code></a> Merge 'tokio-1.51.4' into 'tokio-1.52.x' (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8288">#8288</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/7bcd2d343d997a658be5bc165520070c997fefbc"><code>7bcd2d3</code></a> taskdump: remove crate disambiguators from output (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8288">#8288</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/f84b209126a9b0f66dae1025e30e44d217205513"><code>f84b209</code></a> chore: prepare Tokio v1.51.4 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8286">#8286</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/eacb98e18901fcbe011bfceddbc31853f1bf0c27"><code>eacb98e</code></a> runtime: don't skip the driver when <code>before_park</code> schedules work (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8222">#8222</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/5e16ee00faae5b81a58f70b734577b800e0b203b"><code>5e16ee0</code></a> task: avoid replacing the JoinQueue waker in <code>try_join_next</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8279">#8279</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/88212ab64afd2b2f87deeb073f9eef6aaaad3701"><code>88212ab</code></a> sync: document memory ordering guarantees for Semaphore (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8119">#8119</a>)</li> <li>Additional commits viewable in <a href="https://github.com/tokio-rs/tokio/compare/tokio-1.52.3...tokio-1.53.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
0958a365bb |
chore: bump the patch group with 6 updates (#3524)
Bumps the patch group with 6 updates: | Package | From | To | | --- | --- | --- | | [anyhow](https://github.com/dtolnay/anyhow) | `1.0.103` | `1.0.104` | | [clap](https://github.com/clap-rs/clap) | `4.6.1` | `4.6.2` | | [serde](https://github.com/serde-rs/serde) | `1.0.228` | `1.0.229` | | [which](https://github.com/harryfei/which-rs) | `8.0.4` | `8.0.5` | | [regex](https://github.com/rust-lang/regex) | `1.13.0` | `1.13.1` | | [ignore](https://github.com/BurntSushi/ripgrep) | `0.4.28` | `0.4.30` | Updates `anyhow` from 1.0.103 to 1.0.104 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/anyhow/releases">anyhow's releases</a>.</em></p> <blockquote> <h2>1.0.104</h2> <ul> <li>Update <code>syn</code> dev-dependency to version 3</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/anyhow/commit/1dbe1862aae650423e3361fbd20b7d17c5109cc3"><code>1dbe186</code></a> Release 1.0.104</li> <li><a href="https://github.com/dtolnay/anyhow/commit/f6479f8e5e10761d7fecde0970cff363dc644d92"><code>f6479f8</code></a> Update to syn 3</li> <li>See full diff in <a href="https://github.com/dtolnay/anyhow/compare/1.0.103...1.0.104">compare view</a></li> </ul> </details> <br /> Updates `clap` from 4.6.1 to 4.6.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.6.2</h2> <h2>[4.6.2] - 2026-07-15</h2> <h3>Fixes</h3> <ul> <li><em>(help)</em> Say <code>alias</code> when there is only one</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.6.2] - 2026-07-15</h2> <h3>Fixes</h3> <ul> <li><em>(help)</em> Say <code>alias</code> when there is only one</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/0fe0be302726f4253b9bee27eed48438c92917aa"><code>0fe0be3</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/480af9d045453f4ab96d9bdd4d4b9f5aab3c272f"><code>480af9d</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/2b3ddd0294a147d1eda917cb303243bcde0c12ee"><code>2b3ddd0</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6340">#6340</a> from liskin/fix-completion-escape</li> <li><a href="https://github.com/clap-rs/clap/commit/7ffe7399ff032cc247eb0449cf8fcdfbfe55a4ec"><code>7ffe739</code></a> fix(complete): Do not suggest options after "--"</li> <li><a href="https://github.com/clap-rs/clap/commit/d47fc4f8a5e9fcc16d0cae15b51e6eb1a8ed5832"><code>d47fc4f</code></a> test(complete): Options suggested after escape (<code>--</code>)</li> <li>See full diff in <a href="https://github.com/clap-rs/clap/compare/clap_complete-v4.6.1...clap_complete-v4.6.2">compare view</a></li> </ul> </details> <br /> Updates `serde` from 1.0.228 to 1.0.229 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p> <blockquote> <h2>v1.0.229</h2> <ul> <li>Update to syn 3</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/serde-rs/serde/commit/7fc3b4c30c94f73a96ebd1553f2b090d928fc3a8"><code>7fc3b4c</code></a> Release 1.0.229</li> <li><a href="https://github.com/serde-rs/serde/commit/6d6e9a11101354ce769a3438a088b6b9305c1863"><code>6d6e9a1</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/serde/issues/3085">#3085</a> from dtolnay/syn3</li> <li><a href="https://github.com/serde-rs/serde/commit/6dec3b751126c8338cac0fe8085612d695e4ecf3"><code>6dec3b7</code></a> Update to syn 3</li> <li><a href="https://github.com/serde-rs/serde/commit/cfe669241065984177ff63af8b45058e6e9b499d"><code>cfe6692</code></a> Resolve mut_mut pedantic clippy lint</li> <li><a href="https://github.com/serde-rs/serde/commit/1023d077510b4aef36a41ef56fdb7798568a2654"><code>1023d07</code></a> Update actions/upload-artifact@v6 -> v7</li> <li><a href="https://github.com/serde-rs/serde/commit/dd682c2c86aa7629e77c1ccd93212d3729f4c66d"><code>dd682c2</code></a> Update actions/checkout@v6 -> v7</li> <li><a href="https://github.com/serde-rs/serde/commit/5f0f18b9211732f2d82f73b5a43e4f5ff3701251"><code>5f0f18b</code></a> Update ui test suite to nightly-2026-06-01</li> <li><a href="https://github.com/serde-rs/serde/commit/63a1498f0e7be991ffac5939bdd202ca16e9a23f"><code>63a1498</code></a> Regenerate stderr with trybuild normalization fixes</li> <li><a href="https://github.com/serde-rs/serde/commit/fa7da4a93567ed347ad0735c28e439fca688ef26"><code>fa7da4a</code></a> Fix unused_features warning</li> <li><a href="https://github.com/serde-rs/serde/commit/6b1a17851ea3d86a56aa116ca1cbf428f8d5f22d"><code>6b1a178</code></a> Unpin CI miri toolchain</li> <li>Additional commits viewable in <a href="https://github.com/serde-rs/serde/compare/v1.0.228...v1.0.229">compare view</a></li> </ul> </details> <br /> Updates `which` from 8.0.4 to 8.0.5 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/harryfei/which-rs/releases">which's releases</a>.</em></p> <blockquote> <h2>8.0.5</h2> <h2>What's Changed</h2> <ul> <li>Fix absolute path lookup when cwd is disabled by <a href="https://github.com/weifanglab"><code>@weifanglab</code></a> in <a href="https://redirect.github.com/harryfei/which-rs/pull/126">harryfei/which-rs#126</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/weifanglab"><code>@weifanglab</code></a> made their first contribution in <a href="https://redirect.github.com/harryfei/which-rs/pull/126">harryfei/which-rs#126</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/harryfei/which-rs/compare/8.0.4...8.0.5">https://github.com/harryfei/which-rs/compare/8.0.4...8.0.5</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/harryfei/which-rs/blob/master/CHANGELOG.md">which's changelog</a>.</em></p> <blockquote> <h2>8.0.5</h2> <ul> <li>Bug fix: <a href="https://redirect.github.com/harryfei/which-rs/pull/126">#126</a> Do not use current directory for search when provided path is absolute. Thanks <a href="https://github.com/weifanglab"><code>@weifanglab</code></a> for your contribution to which!</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/harryfei/which-rs/commit/7fba0e04d0674bbe8ccf5bfb4f09b1d00925806f"><code>7fba0e0</code></a> bump version number, update CHANGELOG.md</li> <li><a href="https://github.com/harryfei/which-rs/commit/e28a3bf34e41bcc009b990e6c05b4a6e6b01635f"><code>e28a3bf</code></a> Fix absolute path lookup when cwd is disabled (<a href="https://redirect.github.com/harryfei/which-rs/issues/126">#126</a>)</li> <li>See full diff in <a href="https://github.com/harryfei/which-rs/compare/8.0.4...8.0.5">compare view</a></li> </ul> </details> <br /> Updates `regex` from 1.13.0 to 1.13.1 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p> <blockquote> <h1>1.13.1 (2026-07-15)</h1> <p>This is a release that fixes a bug where incorrect regex match offsets could be reported. Note that this doesn't impact whether a match occurs or not, just where it occurs. The match offsets are still valid for slicing, they just may not refer to the correct leftmost-first match. See <a href="https://redirect.github.com/rust-lang/regex/pull/1364">#1364</a> for (many) more details.</p> <p>Bug fixes:</p> <ul> <li><a href="https://redirect.github.com/rust-lang/regex/issues/1354">#1354</a>: Fixes previously unsound reverse suffix and inner optimizations.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rust-lang/regex/commit/2b527599eb9eea0dcc288c704584f242f26a5c61"><code>2b52759</code></a> 1.13.1, redux</li> <li><a href="https://github.com/rust-lang/regex/commit/40e98238fff903f3e1ec95bbdb487185dd60504a"><code>40e9823</code></a> 1.13.1</li> <li><a href="https://github.com/rust-lang/regex/commit/75fcb962d6ea1c456f6f023c9537a66389413a85"><code>75fcb96</code></a> changelog: 1.13.1</li> <li><a href="https://github.com/rust-lang/regex/commit/64ad0b618e043b791ed5385dd5504a436da1ddae"><code>64ad0b6</code></a> automata: fix bug in reverse suffix/inner optimization</li> <li><a href="https://github.com/rust-lang/regex/commit/fa91c31a4291c9dda6afe19829e6fe2e3bbc2da5"><code>fa91c31</code></a> automata: fix a bug caught by Codex review</li> <li><a href="https://github.com/rust-lang/regex/commit/30390ec3e8889aad830337cdf3a7a01ae195ae73"><code>30390ec</code></a> automata: formatting tweaks</li> <li><a href="https://github.com/rust-lang/regex/commit/821a8eb1ad7860ddc788fe36f495036df63cfc35"><code>821a8eb</code></a> automata: refactor reverse suffix/inner search slightly</li> <li><a href="https://github.com/rust-lang/regex/commit/10afd704d88d00ddfcd10218883a81b3ae5e4831"><code>10afd70</code></a> automata: expose the extracted literals for inner literal extraction</li> <li><a href="https://github.com/rust-lang/regex/commit/8c34f41d3c5a0e16ce17dfb964587cb48625a8d5"><code>8c34f41</code></a> automata: avoid reverse suffix optimization for non-leftmost-first</li> <li><a href="https://github.com/rust-lang/regex/commit/5524f02430d2d118d5c34fde54136d08376de711"><code>5524f02</code></a> test: add regression tests for failed reverse suffix/inner optimizations</li> <li>Additional commits viewable in <a href="https://github.com/rust-lang/regex/compare/1.13.0...1.13.1">compare view</a></li> </ul> </details> <br /> Updates `ignore` from 0.4.28 to 0.4.30 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/BurntSushi/ripgrep/commit/227381db0ee83dfa4341f1e27ff9617c0f5ad992"><code>227381d</code></a> ignore-0.4.30</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/b621e65b4fc8a50b55576b07526f21c5d051ad71"><code>b621e65</code></a> ignore: add incremental checking</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/c55818fd32d68cf742aea67bce86529f198bc985"><code>c55818f</code></a> ignore: more pathutil clean-up</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/6e527e9202f85a39ab2c4698636710204eb096e0"><code>6e527e9</code></a> ignore: add routine for checking if a path is hidden or not</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/626b8951acbced7ff710f4e01624a05f219eec38"><code>626b895</code></a> ignore: refactor <code>is_hidden</code></li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/0d7054d8e466d6aa0a6bb6cf121e87225d26df44"><code>0d7054d</code></a> ignore: fix deadlock when visitor panics</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/576005b322c41174bb21d76122b1411e5d983402"><code>576005b</code></a> grep-searcher-0.1.17</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/432976d69cdff36d5a0d6845b093cf3f67262b43"><code>432976d</code></a> grep-pcre2-0.1.10</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/41e0ae702bcbd47b093a33ee73f1497aa4ed20d6"><code>41e0ae7</code></a> grep-matcher-0.1.9</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/40ffc6e0bd990ba6e56702ed1ec519b7ad96a1e7"><code>40ffc6e</code></a> ignore-0.4.29</li> <li>Additional commits viewable in <a href="https://github.com/BurntSushi/ripgrep/compare/ignore-0.4.28...ignore-0.4.30">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
fd97aa8bc3 |
Release v0.68.0 (#3484)
Release v0.68.0. Highlights: on-demand picker preview tabs (#3439), bare-repo project config read from the object store when the default branch is checked out nowhere (#3462), shell detection via the process tree (#3455), and `wt config state` flagging a stale default-branch cache (#3478). Full details in CHANGELOG.md. > _This was written by Claude Code on behalf of max_ |
||
|
|
6895ce23e1 |
chore: bump the patch group with 4 updates (#3445)
Bumps the patch group with 4 updates: [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam), [tree-sitter](https://github.com/tree-sitter/tree-sitter), [tree-sitter-highlight](https://github.com/tree-sitter/tree-sitter) and [ignore](https://github.com/BurntSushi/ripgrep). Updates `crossbeam-channel` from 0.5.15 to 0.5.16 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/crossbeam-rs/crossbeam/releases">crossbeam-channel's releases</a>.</em></p> <blockquote> <h2>crossbeam-channel 0.5.16</h2> <ul> <li>Improve support for rust-analyzer auto-completion of code inside <code>select!</code>/<code>select_biased!</code> macro. (<a href="https://redirect.github.com/crossbeam-rs/crossbeam/issues/1240">#1240</a>)</li> <li>Make <code>never</code> const. (<a href="https://redirect.github.com/crossbeam-rs/crossbeam/issues/1250">#1250</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/9b56303b8aa9ff8ec5bbebb9d2da05e034977889"><code>9b56303</code></a> Prepare for the next release</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/a078b17b7319ab49e53720ebeed8fa8a539a8e18"><code>a078b17</code></a> ci: Sync config with main</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/508c29d3c27d7e27791244644dae2169a2f1678a"><code>508c29d</code></a> Remove crossbeam-skiplist which is not published from this branch from worksp...</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/6a20e57c492da6ba327b587bc5f38c7a4a3067ef"><code>6a20e57</code></a> tests: Fix mismatched_lifetime_syntaxes</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/c2d674f88af9501a0a939d8d4b0d52bdbc453ef9"><code>c2d674f</code></a> epoch: Fix rustdoc::invalid_rust_codeblocks</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/bd6563e2118a5f2e9eec0f9e16006d428b82ffb0"><code>bd6563e</code></a> Update no_atomic.rs</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/d3e1e364093763a40affe7ea3ff8368c7dc25ee9"><code>d3e1e36</code></a> Make CachePadded<T> have C repr to allow casting to and from T (<a href="https://redirect.github.com/crossbeam-rs/crossbeam/issues/1270">#1270</a>)</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/c0c466e5c3b5f177884e1df5f8f2c8c939c31aab"><code>c0c466e</code></a> channel: Use non-poison Mutex</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/8b3940f1063f2e0795e44d3f5dde973f08e2a50b"><code>8b3940f</code></a> Add missing word to docs (<a href="https://redirect.github.com/crossbeam-rs/crossbeam/issues/1208">#1208</a>)</li> <li><a href="https://github.com/crossbeam-rs/crossbeam/commit/df6eec0610f91de504a5834c9faa0de40e3aec83"><code>df6eec0</code></a> docs: Link <code>select_biased!</code> from <code>select!</code> macro (<a href="https://redirect.github.com/crossbeam-rs/crossbeam/issues/1202">#1202</a>)</li> <li>Additional commits viewable in <a href="https://github.com/crossbeam-rs/crossbeam/compare/crossbeam-channel-0.5.15...crossbeam-channel-0.5.16">compare view</a></li> </ul> </details> <br /> Updates `tree-sitter` from 0.26.10 to 0.26.11 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tree-sitter/tree-sitter/releases">tree-sitter's releases</a>.</em></p> <blockquote> <h2>v0.26.11</h2> <h2>What's Changed</h2> <ul> <li>fix(deps): zig manifest for wasmtime is missing windows hashes by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5720">tree-sitter/tree-sitter#5720</a></li> <li>fix(xtask): eliminate silent errors in zig fetch by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5724">tree-sitter/tree-sitter#5724</a></li> <li>fix(query): short-circuit longest-match dedup for disjoint states by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5726">tree-sitter/tree-sitter#5726</a></li> <li>fix(query): various anchor fixes by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5727">tree-sitter/tree-sitter#5727</a></li> <li>Fix C++ compilation errors in array macros. by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5735">tree-sitter/tree-sitter#5735</a></li> <li>fix(rust): address new clippy lints by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5743">tree-sitter/tree-sitter#5743</a></li> <li>fix(generate): strip non-ASCII case folds by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5744">tree-sitter/tree-sitter#5744</a></li> <li>fix(ci): re-set executable permission on release artifacts before zipping by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5746">tree-sitter/tree-sitter#5746</a></li> <li>release v0.26.11 by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5748">tree-sitter/tree-sitter#5748</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.10...v0.26.11">https://github.com/tree-sitter/tree-sitter/compare/v0.26.10...v0.26.11</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/64402de2857cc197ecc4ca3bc144ea91fda7e72e"><code>64402de</code></a> release v0.26.11</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/2194ac1a9c9fb8960b8471daade1da07aaeb2b0b"><code>2194ac1</code></a> fix(ci): re-set executable permission on release artifacts before zipping</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/a2b8369c4a18373c08a8b7e742fac8b14674eefc"><code>a2b8369</code></a> fix(generate): strip non-ASCII case folds</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/1ae3cc575388c8429a8991b8c9580946243598a7"><code>1ae3cc5</code></a> fix(rust): address new clippy lints</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/90dd1a0cfbf6262483a9e5953a35659585129120"><code>90dd1a0</code></a> fix(templates): generated array macros do not compile with C++</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/fa6222a0d37ecf2bfb4fccd31e857133f3e81930"><code>fa6222a</code></a> docs(queries): clarify behavior of first child anchor example</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/77b741bb8309d6755797f942bf0ff1a9a74475a4"><code>77b741b</code></a> docs(queries): specify anchor behavior with quantifiers and groups</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/1c21ff33d688c328a687e37a7f4215136b6e6dc6"><code>1c21ff3</code></a> fix(query): apply a trailing anchor when its optional node is skipped</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/5756ced350638708becc00d7ccb2e8d171b4feae"><code>5756ced</code></a> fix(query): make an anchor after a zero-matched quantifier vacuous</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/eca86a7a6c77c0a7124a59be712661256e361cbd"><code>eca86a7</code></a> fix(query): forbid an anchor at the end of a group</li> <li>Additional commits viewable in <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.10...v0.26.11">compare view</a></li> </ul> </details> <br /> Updates `tree-sitter-highlight` from 0.26.10 to 0.26.11 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tree-sitter/tree-sitter/releases">tree-sitter-highlight's releases</a>.</em></p> <blockquote> <h2>v0.26.11</h2> <h2>What's Changed</h2> <ul> <li>fix(deps): zig manifest for wasmtime is missing windows hashes by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5720">tree-sitter/tree-sitter#5720</a></li> <li>fix(xtask): eliminate silent errors in zig fetch by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5724">tree-sitter/tree-sitter#5724</a></li> <li>fix(query): short-circuit longest-match dedup for disjoint states by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5726">tree-sitter/tree-sitter#5726</a></li> <li>fix(query): various anchor fixes by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5727">tree-sitter/tree-sitter#5727</a></li> <li>Fix C++ compilation errors in array macros. by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5735">tree-sitter/tree-sitter#5735</a></li> <li>fix(rust): address new clippy lints by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5743">tree-sitter/tree-sitter#5743</a></li> <li>fix(generate): strip non-ASCII case folds by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5744">tree-sitter/tree-sitter#5744</a></li> <li>fix(ci): re-set executable permission on release artifacts before zipping by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5746">tree-sitter/tree-sitter#5746</a></li> <li>release v0.26.11 by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5748">tree-sitter/tree-sitter#5748</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.10...v0.26.11">https://github.com/tree-sitter/tree-sitter/compare/v0.26.10...v0.26.11</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/64402de2857cc197ecc4ca3bc144ea91fda7e72e"><code>64402de</code></a> release v0.26.11</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/2194ac1a9c9fb8960b8471daade1da07aaeb2b0b"><code>2194ac1</code></a> fix(ci): re-set executable permission on release artifacts before zipping</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/a2b8369c4a18373c08a8b7e742fac8b14674eefc"><code>a2b8369</code></a> fix(generate): strip non-ASCII case folds</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/1ae3cc575388c8429a8991b8c9580946243598a7"><code>1ae3cc5</code></a> fix(rust): address new clippy lints</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/90dd1a0cfbf6262483a9e5953a35659585129120"><code>90dd1a0</code></a> fix(templates): generated array macros do not compile with C++</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/fa6222a0d37ecf2bfb4fccd31e857133f3e81930"><code>fa6222a</code></a> docs(queries): clarify behavior of first child anchor example</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/77b741bb8309d6755797f942bf0ff1a9a74475a4"><code>77b741b</code></a> docs(queries): specify anchor behavior with quantifiers and groups</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/1c21ff33d688c328a687e37a7f4215136b6e6dc6"><code>1c21ff3</code></a> fix(query): apply a trailing anchor when its optional node is skipped</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/5756ced350638708becc00d7ccb2e8d171b4feae"><code>5756ced</code></a> fix(query): make an anchor after a zero-matched quantifier vacuous</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/eca86a7a6c77c0a7124a59be712661256e361cbd"><code>eca86a7</code></a> fix(query): forbid an anchor at the end of a group</li> <li>Additional commits viewable in <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.10...v0.26.11">compare view</a></li> </ul> </details> <br /> Updates `ignore` from 0.4.27 to 0.4.28 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/BurntSushi/ripgrep/commit/324f7efe5ce92da0c938291fb69a8027cc2b12a8"><code>324f7ef</code></a> ignore-0.4.28</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/241b87b3377136659ef0f57948b8e0739e9a691b"><code>241b87b</code></a> ignore: support <code>GIT_CONFIG_GLOBAL</code> and <code>GIT_CONFIG_SYSTEM</code> for `core.exclude...</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/b6849daee84a67b42b0844b2f6a91e47c24705b1"><code>b6849da</code></a> ignore/walk: add <code>WalkBuilder::empty</code> and <code>WalkBuilder::from_iter</code></li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/8bca2ebfed844bcbbb649a836783c08da110f2e9"><code>8bca2eb</code></a> doc: fix typo in man page</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/61a9fd82294c155ca00febc948d8d23c9b678367"><code>61a9fd8</code></a> doc: fix typo</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/e7b0f89e81811b295446404f02ca133fe8434054"><code>e7b0f89</code></a> lint: use <code>cloned()</code> or <code>copied()</code> when we can</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/767086db4ccb6abc3e4ce5125da614ea62f7346b"><code>767086d</code></a> searcher: hint at sequential memory map reading</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/9548e86b14f1aa853911239f439e27a20c10fb69"><code>9548e86</code></a> ignore/types: add PKGBUILD type</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/bc3ad92b345eeddc48afff3194a5e2385e3d6a3b"><code>bc3ad92</code></a> ignore/types: add Rocq <code>.v</code> files</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/93acfe2d47d46bc2f92a78f1e64098ad0a7b34b5"><code>93acfe2</code></a> ignore/types: add <code>proto</code> for filtering to protobuf files</li> <li>Additional commits viewable in <a href="https://github.com/BurntSushi/ripgrep/compare/ignore-0.4.27...ignore-0.4.28">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
70c9b40b1f |
chore: bump skim from 5.0.0 to 5.1.0 (#3446)
Bumps [skim](https://github.com/skim-rs/skim) from 5.0.0 to 5.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/releases">skim's releases</a>.</em></p> <blockquote> <h2>5.1.0 - 2026-07-09</h2> <h2>Release Notes</h2> <h3>🚀 Features</h3> <ul> <li>Bump frizbee to 0.10.0, thread local matcher (<a href="https://redirect.github.com/skim-rs/skim/issues/1105">#1105</a>)</li> <li>Add cargo-fuzz targets for hand-rolled text parsers (<a href="https://redirect.github.com/skim-rs/skim/issues/1106">#1106</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>Less restrictive max pattern in ari matcher</li> <li>Unknown border values fallback to plain (closes <a href="https://redirect.github.com/skim-rs/skim/issues/1107">#1107</a>)</li> </ul> <h3>🧪 Testing</h3> <ul> <li>Fix arinae max pat len test after constant update</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/saghen"><code>@saghen</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1105">#1105</a></li> </ul> <h2>Install skim 5.1.0</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-installer.ps1 | iex" </code></pre> <h2>Download skim 5.1.0</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-aarch64-apple-darwin.tar.xz">skim-aarch64-apple-darwin.tar.xz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-aarch64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-apple-darwin.tar.xz">skim-x86_64-apple-darwin.tar.xz</a></td> <td>Intel macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-pc-windows-msvc.zip">skim-x86_64-pc-windows-msvc.zip</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-pc-windows-msvc.msi">skim-x86_64-pc-windows-msvc.msi</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-pc-windows-msvc.msi.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-aarch64-unknown-linux-gnu.tar.xz">skim-aarch64-unknown-linux-gnu.tar.xz</a></td> <td>ARM64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-aarch64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-unknown-linux-gnu.tar.xz">skim-x86_64-unknown-linux-gnu.tar.xz</a></td> <td>x64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-aarch64-unknown-linux-musl.tar.xz">skim-aarch64-unknown-linux-musl.tar.xz</a></td> <td>ARM64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-aarch64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-unknown-linux-musl.tar.xz">skim-x86_64-unknown-linux-musl.tar.xz</a></td> <td>x64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v5.1.0/skim-x86_64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> </tbody> </table> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/blob/master/CHANGELOG.md">skim's changelog</a>.</em></p> <blockquote> <h2>[5.1.0] - 2026-07-09</h2> <h3>🚀 Features</h3> <ul> <li>Bump frizbee to 0.10.0, thread local matcher (<a href="https://redirect.github.com/skim-rs/skim/issues/1105">#1105</a>)</li> <li>Add cargo-fuzz targets for hand-rolled text parsers (<a href="https://redirect.github.com/skim-rs/skim/issues/1106">#1106</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>Less restrictive max pattern in ari matcher</li> <li>Unknown border values fallback to plain (closes <a href="https://redirect.github.com/skim-rs/skim/issues/1107">#1107</a>)</li> </ul> <h3>🧪 Testing</h3> <ul> <li>Fix arinae max pat len test after constant update</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/saghen"><code>@saghen</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1105">#1105</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/skim-rs/skim/commit/c4bc5e1be48367a7fec8a90b0e2550635eed7f3d"><code>c4bc5e1</code></a> release: v5.1.0</li> <li><a href="https://github.com/skim-rs/skim/commit/ef593397276298af6ad95bdbf2fa9d4a220d991f"><code>ef59339</code></a> fix: unknown border values fallback to plain (closes <a href="https://redirect.github.com/skim-rs/skim/issues/1107">#1107</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/1effd9a69d30b1aa5e55dc3aaf8c43ac1101010e"><code>1effd9a</code></a> test: fix arinae max pat len test after constant update</li> <li><a href="https://github.com/skim-rs/skim/commit/0a4d4b2ea040c4435ac206bd15461ad49a8c98af"><code>0a4d4b2</code></a> fix: less restrictive max pattern in ari matcher</li> <li><a href="https://github.com/skim-rs/skim/commit/026a622a9d12c23379442857bf8e98c85c6e4926"><code>026a622</code></a> feat: add cargo-fuzz targets for hand-rolled text parsers (<a href="https://redirect.github.com/skim-rs/skim/issues/1106">#1106</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/8a1f2783a864e1e993ec3a59149f1b3f2ee6bd5b"><code>8a1f278</code></a> feat: bump frizbee to 0.10.0, thread local matcher (<a href="https://redirect.github.com/skim-rs/skim/issues/1105">#1105</a>)</li> <li>See full diff in <a href="https://github.com/skim-rs/skim/compare/v5.0.0...v5.1.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
f679b6511f |
chore: bump open from 5.3.6 to 5.4.0 (#3447)
Bumps [open](https://github.com/Byron/open-rs) from 5.3.6 to 5.4.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Byron/open-rs/releases">open's releases</a>.</em></p> <blockquote> <h2>v5.4.0</h2> <h3>New Features</h3> <ul> <li><code>cargo run</code> now shows the exact commands that were tried when opening. This is useful for debugging, mainly.</li> </ul> <h3>Bug Fixes</h3> <ul> <li> <p>Align WSL PowerShell invocation with Windows Pass the WSL open target to PowerShell through the OPEN_RS_TARGET environment variable instead of embedding it in the command string and escaping it as a single-quoted PowerShell value.</p> <p>This matches the safer invocation already used by the native Windows backend. Keeping the PowerShell program fixed ensures that paths and URLs are treated purely as data, even when they contain quotes, semicolons, or other PowerShell metacharacters. It also removes the need for custom PowerShell quoting and avoids converting the target through to_string_lossy() during command construction.</p> <p>Add -NonInteractive for consistency with the Windows launcher and update the WSL tests to verify both the fixed command and the unchanged environment-variable value.</p> </li> <li> <p>prevent launcher option and shell injection Opening an attacker-controlled dash-leading path could be interpreted as launcher options. On Windows, cmd /c start also parsed embedded quotes and metacharacters as command language, while the legacy gnome-open fallback could load a module even after a double-dash separator.</p> <p>Add command-construction regressions for malicious option-shaped paths and Windows shell metacharacters. Use supported separators on macOS and KDE, and rewrite dash-leading relative paths for launchers without separator support. Keep Windows values out of shell syntax by passing the default target through the environment and invoking custom applications directly, with explorer.exe as a PowerShell-free fallback.</p> <p>Exclude cmd-based opening by default, while providing an explicit insecure Cargo feature for users who need compatibility it and accept their unsafe handling of untrusted input.</p> <p>Validated with default and all-feature cargo tests, clippy, and cross-target cargo check --tests for aarch64 Linux and Windows.</p> </li> </ul> <h3>Commit Statistics</h3> <ul> <li>5 commits contributed to the release.</li> <li>3 commits were understood as <a href="https://www.conventionalcommits.org">conventional</a>.</li> <li>1 unique issue was worked on: <a href="https://redirect.github.com/Byron/open-rs/issues/124">#124</a></li> </ul> <h3>Commit Details</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Byron/open-rs/blob/main/changelog.md">open's changelog</a>.</em></p> <blockquote> <h2>5.4.0 (2026-07-12)</h2> <h3>New Features</h3> <ul> <li><!-- raw HTML omitted --> <code>cargo run</code> now shows the exact commands that were tried when opening. This is useful for debugging, mainly.</li> </ul> <h3>Bug Fixes</h3> <ul> <li> <p><!-- raw HTML omitted --> Align WSL PowerShell invocation with Windows Pass the WSL open target to PowerShell through the OPEN_RS_TARGET environment variable instead of embedding it in the command string and escaping it as a single-quoted PowerShell value.</p> <p>This matches the safer invocation already used by the native Windows backend. Keeping the PowerShell program fixed ensures that paths and URLs are treated purely as data, even when they contain quotes, semicolons, or other PowerShell metacharacters. It also removes the need for custom PowerShell quoting and avoids converting the target through to_string_lossy() during command construction.</p> <p>Add -NonInteractive for consistency with the Windows launcher and update the WSL tests to verify both the fixed command and the unchanged environment-variable value.</p> </li> <li> <p><!-- raw HTML omitted --> prevent launcher option and shell injection Opening an attacker-controlled dash-leading path could be interpreted as launcher options. On Windows, cmd /c start also parsed embedded quotes and metacharacters as command language, while the legacy gnome-open fallback could load a module even after a double-dash separator.</p> <p>Add command-construction regressions for malicious option-shaped paths and Windows shell metacharacters. Use supported separators on macOS and KDE, and rewrite dash-leading relative paths for launchers without separator support. Keep Windows values out of shell syntax by passing the default target through the environment and invoking custom applications directly, with explorer.exe as a PowerShell-free fallback.</p> <p>Exclude cmd-based opening by default, while providing an explicit insecure Cargo feature for users who need compatibility it and accept their unsafe handling of untrusted input.</p> <p>Validated with default and all-feature cargo tests, clippy, and cross-target cargo check --tests for aarch64 Linux and Windows.</p> </li> </ul> <h3>Commit Statistics</h3> <!-- raw HTML omitted --> <ul> <li>5 commits contributed to the release.</li> <li>3 commits were understood as <a href="https://www.conventionalcommits.org">conventional</a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Byron/open-rs/commit/b5c12bd9207a02272570252071d601a5dc44a3c6"><code>b5c12bd</code></a> Release open v5.4.0</li> <li><a href="https://github.com/Byron/open-rs/commit/bdc33978cdbfa1defef31e23659af4ba4a8913b0"><code>bdc3397</code></a> Merge pull request <a href="https://redirect.github.com/Byron/open-rs/issues/126">#126</a> from Byron/fix-wsl</li> <li><a href="https://github.com/Byron/open-rs/commit/7265cae8c19180c1022d8b1a7fbec815d0264909"><code>7265cae</code></a> fix: Align WSL PowerShell invocation with Windows</li> <li><a href="https://github.com/Byron/open-rs/commit/407b05879efb2b33c4e51fa15d77b49fa748a241"><code>407b058</code></a> Merge pull request <a href="https://redirect.github.com/Byron/open-rs/issues/125">#125</a> from Byron/open-with-dash-dash</li> <li><a href="https://github.com/Byron/open-rs/commit/fd29861355bfb981aecdb94d0915f4e41c2686ee"><code>fd29861</code></a> fix: prevent launcher option and shell injection (<a href="https://redirect.github.com/Byron/open-rs/issues/124">#124</a>)</li> <li><a href="https://github.com/Byron/open-rs/commit/7c19c0a1a810326b9a9e7542a0992d80adf0a365"><code>7c19c0a</code></a> feat: <code>cargo run</code> now shows the exact commands that were tried when opening.</li> <li>See full diff in <a href="https://github.com/Byron/open-rs/compare/v5.3.6...v5.4.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1ff647bdd6 |
chore: bump regex from 1.12.4 to 1.13.0 (#3448)
Bumps [regex](https://github.com/rust-lang/regex) from 1.12.4 to 1.13.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p> <blockquote> <h1>1.13.0 (2026-07-09)</h1> <p>This release includes a new API, a <code>regex!</code> macro, for lazy compilation of a regex from a string literal. If you use regexes a lot, it's likely you've already written one exactly like it. The new macro can be used like this:</p> <pre lang="rust"><code>use regex::regex; <p>fn is_match(line: &str) -> bool {<br /> // The regex will be compiled approximately once and reused automatically.<br /> // This avoids the footgun of using <code>Regex::new</code> here, which would<br /> // guarantee that it would be compiled every time this routine is called.<br /> // This would likely make this routine much slower than it needs to be.<br /> regex!(r"bar|baz").is_match(line)<br /> }</p> <p>let hay = "<br /> path/to/foo:54:Blue Harvest<br /> path/to/bar:90:Something, Something, Something, Dark Side<br /> path/to/baz:3:It's a Trap!<br /> ";</p> <p>let matches = hay.lines().filter(|line| is_match(line)).count();<br /> assert_eq!(matches, 2);<br /> </code></pre></p> <p>Improvements:</p> <ul> <li><a href="https://redirect.github.com/rust-lang/regex/issues/709">#709</a>: Add a new <code>regex!</code> macro for efficient and automatic reuse of a compiled regex.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rust-lang/regex/commit/926af2e68eca3ce089815790541cf50759ba2c59"><code>926af2e</code></a> 1.13.0</li> <li><a href="https://github.com/rust-lang/regex/commit/7d941a93561430cd259bb9ceb84cc66f33ae7be8"><code>7d941a9</code></a> regex-automata-0.4.15</li> <li><a href="https://github.com/rust-lang/regex/commit/e358341229ebd5feb9a78d8cc85b459c3c7b6600"><code>e358341</code></a> api: add <code>regex!</code> macro for lazy compilation</li> <li><a href="https://github.com/rust-lang/regex/commit/c42033379c8760105ef90287f319de73d1572242"><code>c420333</code></a> automata: disable miri on a couple doc tests</li> <li><a href="https://github.com/rust-lang/regex/commit/b9d2cf724f89754ea879b6c223d2292c4d3e2dd3"><code>b9d2cf7</code></a> github: add FUNDING link</li> <li><a href="https://github.com/rust-lang/regex/commit/0858006b1460ba781deda54b8d2b01b3f9f949f7"><code>0858006</code></a> docs: add AI policy for contributors</li> <li><a href="https://github.com/rust-lang/regex/commit/468fc64ecd6493caaca40dbe8319c31c5c08a83d"><code>468fc64</code></a> automata: reject dense DFA start states that are match states</li> <li>See full diff in <a href="https://github.com/rust-lang/regex/compare/1.12.4...1.13.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
c3c07a4e5b |
chore(deps): bump termimad to 0.35.1, drop ragged-table panic workaround (#3422)
Follow-up to #3408, as promised in that thread: [@Canop published termimad 0.35.1](https://github.com/max-sixty/worktrunk/pull/3408#issuecomment-4945043938) with the fix for the ragged-table panic ([Canop/termimad#77](https://github.com/Canop/termimad/issues/77)). This bumps to it and drops the `catch_unwind` workaround. ## What changed - **`termimad` 0.34.1 → 0.35.1** (pulls transitive `minimad` 0.14 → 0.16). - **Removed the `catch_unwind` guard** in `render_table_with_termimad` — the only panic reachable through this path was the `Table::fix_columns` out-of-bounds on a ragged narrow table, now fixed upstream. (The broken-pipe panics termimad has had historically live in `print_text`, an I/O path we don't use — we call `MadSkin::text`, which returns a `String`.) - **Regression test kept**, repurposed: `test_render_table_ragged_narrow_does_not_panic` now guards against reintroducing the panic via a downgrade rather than asserting the plain-text fallback. ## Verification Ran the original reproducer against a clean `termimad = "=0.35.1"` scratch crate across the full width band — all render, none panic (16/20/24 previously panicked): ``` width 8: ok width 20: ok width 60: ok width 12: ok width 24: ok width 200: ok width 16: ok width 30: ok width 40: ok ``` `md_help` suite (26), picker unit tests (226), and the integration `test_help` / `test_docs_are_in_sync` snapshots (48) all pass. `cargo clippy` clean. ## One rendering note `minimad` 0.16 no longer treats a **single-dash** delimiter row (`| - | - |`) as a table separator — it renders as cell content. Worktrunk only ever emits **multi-dash** (`---`) separators (`render_data_table` builds `| --- | ... |`, and every hand-authored help table uses `-----`), so real help/list output is byte-for-byte unchanged — the help/docs snapshot tests didn't move. The one test that used a single-dash input was artificial; I switched it to the canonical `---` form. <details><summary>Defense-in-depth tradeoff — your call</summary> Dropping `catch_unwind` removes a general safety net around rendering untrusted PR-comment markdown on a rayon worker (where an escaped panic aborts the whole process). I removed it because (a) the only reachable panic class here is fixed, and (b) keeping it would leave the fallback branch untestable and uncovered — no input triggers it anymore, which trips the coverage gate. If you'd rather retain the guard as belt-and-suspenders against a future termimad regression, say the word and I'll restore it with a `#[cfg]`-gated or otherwise coverage-exempt shape. </details> --------- Co-authored-by: worktrunk-bot <254187624+worktrunk-bot@users.noreply.github.com> |
||
|
|
abf9155546 |
Release v0.67.0 (#3416)
Release v0.67.0: version bump and changelog. Highlights since v0.66.0: experimental `wt remove --reap` (#3396), `wt switch -x` opening the picker (#3394), the termimad panic containment in the picker's PR-comments preview (#3408), the `wt config show` SIGTTOU fix (#3327), the `GIT_*` discovery-var scrub for `wt step for-each` and the `--execute` fallback (#3400), and the `wt list` prompt-reserve fix (#3409). Seven commits landed on `main` after the initial cut; `origin/main` is merged back in and the two user-facing ones (#3394, #3411) plus the BY CONTEXT profile table (#3403) are folded into the changelog. Pre-release validation: local pre-merge gate green on the merged tree (4389 tests); nightly cross-platform suite green on the initial cut ([run 29086956095](https://github.com/max-sixty/worktrunk/actions/runs/29086956095)), with the seven post-cut commits each validated by their own PR CI; `cargo semver-checks` reports no breaking changes; data-loss surface review of the cumulative diff (including the drift commits) found one new destructive capability (`--reap`, explicit opt-in, adjudicated acceptable). > _This was written by Claude Code on behalf of max_ |
||
|
|
18d2bef84b |
refactor(perf): canonicalize the benchmark / wt-perf system (#3403)
Implements the design proposal from this branch's first commit
(
|
||
|
|
9f552bbae7 | chore: bump skim from 4.10.0 to 5.0.0 (#3378) | ||
|
|
696fdc3bc7 |
Release v0.66.0 (#3385)
Release v0.66.0 — minor bump (semver-checks: `ListConfig` gained a pub
field, so patch is disallowed pre-1.0).
## Changes since v0.65.0
### Improved
- **Opt-in JSON schema 2 for `wt list`** behind the `[list] json-schema`
config key ([#3357](https://github.com/max-sixty/worktrunk/pull/3357))
- **`wt config approvals list` and `clear --stale`**
([#3380](https://github.com/max-sixty/worktrunk/pull/3380))
### Fixed
- **User hooks no longer inherit `wt`'s `GIT_*` discovery vars**
([#3374](https://github.com/max-sixty/worktrunk/pull/3374), thanks
@silvanshade for reporting) — this entry also moves from the 0.65.0
CHANGELOG section (where #3374 misfiled it post-release) into 0.66.0,
which ships it.
### Documentation
- **`/wt-switch-create` always creates a worktree**
([#3356](https://github.com/max-sixty/worktrunk/pull/3356))
## Release validation
- Local pre-merge gate: 4,357 tests green
- Nightly cross-platform run on the cut-from tip (
|
||
|
|
d90d148e73 |
chore: bump humantime from 2.3.0 to 2.4.0 (#3377)
Bumps [humantime](https://github.com/chronotope/humantime) from 2.3.0 to 2.4.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/chronotope/humantime/releases">humantime's releases</a>.</em></p> <blockquote> <h2>2.4.0</h2> <h2>What's Changed</h2> <ul> <li>feat: allow creating Duration in const context by <a href="https://github.com/ctron"><code>@ctron</code></a> in <a href="https://redirect.github.com/chronotope/humantime/pull/70">chronotope/humantime#70</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/chronotope/humantime/commit/fc092817fa8689298eaac28ff49bd8bede4ff605"><code>fc09281</code></a> chore: prepare release 2.4.0</li> <li><a href="https://github.com/chronotope/humantime/commit/8a022cce55a07da2be81721e7deaa5bd071add72"><code>8a022cc</code></a> feat: allow creating Duration in const context</li> <li><a href="https://github.com/chronotope/humantime/commit/27a4f77519a436f4137d1c50ff2f3eb559292cfd"><code>27a4f77</code></a> Explicitly set rust-version to 1.60</li> <li><a href="https://github.com/chronotope/humantime/commit/acc3c19658ecae06cf35467dfe03392a67dbf2b1"><code>acc3c19</code></a> ci: upgrade to actions/checkout v7</li> <li><a href="https://github.com/chronotope/humantime/commit/3acf96bb886ebd16f9e2e8a37d7229e4bd30dd17"><code>3acf96b</code></a> ci: fix workflow formatting</li> <li>See full diff in <a href="https://github.com/chronotope/humantime/compare/v2.3.0...v2.4.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
828aebdee7 |
chore: bump the patch group with 2 updates (#3376)
Bumps the patch group with 2 updates: [clap_complete](https://github.com/clap-rs/clap) and [ignore](https://github.com/BurntSushi/ripgrep). Updates `clap_complete` from 4.6.5 to 4.6.7 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/d3e59a9ab214910b9dad02921b7ef42c6400de9b"><code>d3e59a9</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/d997f878c484e02b2935d32a7b67afe990e91227"><code>d997f87</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/fb6058cc38cf6f4b07b8db89c850fc80e059e222"><code>fb6058c</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6409">#6409</a> from heaths/pwsh-support</li> <li><a href="https://github.com/clap-rs/clap/commit/2310870f7a9fe4c39f5bb5620261a06ac9aaa0b1"><code>2310870</code></a> test(complete): Add tests for completer_for_path</li> <li><a href="https://github.com/clap-rs/clap/commit/5967c17393a09f90112cdc5b2c20a1383f0bd8e4"><code>5967c17</code></a> refactor(complete): Move shell detection to Shells</li> <li><a href="https://github.com/clap-rs/clap/commit/594602bb29f374e49da5029df63e5c740c723ad0"><code>594602b</code></a> fix(complete): Detect pwsh for PowerShell</li> <li><a href="https://github.com/clap-rs/clap/commit/3a4f2d031b5110aaaac40f1cb1d6c0b8ff619df8"><code>3a4f2d0</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6427">#6427</a> from clap-rs/renovate/shlex-2.x</li> <li><a href="https://github.com/clap-rs/clap/commit/67ebaed4ac95a83d5d7cc22d64ee0fc162ae1db3"><code>67ebaed</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/6426">#6426</a> from clap-rs/renovate/actions-checkout-7.x</li> <li><a href="https://github.com/clap-rs/clap/commit/c968b136d0e6f560c08b06a844a20f2798a00096"><code>c968b13</code></a> chore(deps): Update Rust crate shlex to v2</li> <li><a href="https://github.com/clap-rs/clap/commit/8f247cbf58c582a755ee4dbe62a2390d93b9f8eb"><code>8f247cb</code></a> chore(deps): Update actions/checkout action to v7</li> <li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/clap_complete-v4.6.5...clap_complete-v4.6.7">compare view</a></li> </ul> </details> <br /> Updates `ignore` from 0.4.26 to 0.4.27 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/BurntSushi/ripgrep/commit/48b0c795f4feb37343b2832d991c5c6a3900c08a"><code>48b0c79</code></a> ignore-0.4.27</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/c10f151e4436da7c37d34359cdfe10d6f5aa0bb4"><code>c10f151</code></a> ignore: always include depth in errors</li> <li><a href="https://github.com/BurntSushi/ripgrep/commit/dfe4a81d2591daca76d25ae4e052c34b26578155"><code>dfe4a81</code></a> ignore/types: add Hurl</li> <li>See full diff in <a href="https://github.com/BurntSushi/ripgrep/compare/ignore-0.4.26...ignore-0.4.27">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
5175153b39 |
Release v0.65.0 (#3351)
Release v0.65.0. Version bump plus the 0.65.0 changelog section. **User-facing changes in this release:** - **Picker `alt-x` flashes why a worktree wasn't removed** (#3336, #3350) — the keep/failure reason now appears in the picker header instead of only draining to stderr on exit. - **`-vv` diagnostics consolidate on `diagnostic.md`, led by the performance profile** (#3329). This entry's bullet was previously misfiled under the already-released `0.63.0` section (the PR merged after `0.64.0` was tagged); this release moves it into `0.65.0`, where the change actually ships, and drops a misleading "removed `profile.txt`" clause for a file that never existed. - **`wt remove` preserves your subdirectory position** (#3344, closes #3343, thanks @caillou for reporting). **Also included:** a fix to the release skill's reporter-finding grep — `sort -un` on `#`-prefixed lines collapsed the whole issue-reference list to a single entry (every line sorts as numeric 0), which nearly dropped @caillou's credit. Now sorts on the numeric field after `#`. The nightly cross-platform suite (full-tests linux/macos/windows, feature-powerset, release-target, nix-flake, minimal-versions) passed green on the cut-from tip before this PR was opened. > _This was written by Claude Code on behalf of max_ --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
7f4c9c323a |
Release v0.64.0 (#3338)
Release v0.64.0. Folds the version bump (`Cargo.toml`, `Cargo.lock`) and
the `CHANGELOG.md` section into one commit.
A small release on top of v0.63.0: a new per-branch git-config template
namespace for `wt list` custom columns, a warm-cache `wt list` speedup,
and a few correctness/safety fixes.
**Improved**: a `{{ git.branch.* }}` template namespace lets custom
columns read a branch's own git config (`branch.<name>.jira`, the
git-native `description`) without re-storing via `wt config state vars
set` (thanks @cazador481 for the request); warm-cache `wt list` re-runs
are ~36% faster after removing redundant per-row git forks (commit→tree
priming, a persistent merge-base cache, and seeded worktree paths).
**Fixed**: refs that look like flags can no longer inject git options
(`--end-of-options` / `--` fencing across diff previews, diffstats, and
branch removal); `wt list statusline` renders untruncated when
`COLUMNS=0` instead of collapsing to an empty line; the watchdog "still
waiting" line uses the hint symbol (`↳`).
The release-process data-loss surface review (four independent finders
over the full `v0.63.0..HEAD` diff) found no data-loss risk introduced.
The one candidate — a new persistent merge-base cache that feeds the
branch-deletion safety verdict — was adjudicated acceptable: the
verdict's direct input (`has-added-changes`) was already a
content-addressed, SHA-keyed persistent cache before this release, so
the merge-base cache extends an accepted pattern rather than introducing
a new risk class.
> _This was written by Claude Code on behalf of max_
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
||
|
|
cb8e8beb6d |
chore: bump open from 5.3.5 to 5.3.6 in the patch group (#3325)
Bumps the patch group with 1 update: [open](https://github.com/Byron/open-rs). Updates `open` from 5.3.5 to 5.3.6 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Byron/open-rs/releases">open's releases</a>.</em></p> <blockquote> <h2>v5.3.6</h2> <h3>Bug Fixes</h3> <ul> <li> <p>use PowerShell instead of wslview on WSL WSL users reported that wslu's wslview is discontinued and unavailable in some package managers. The regression tests cover the WSL command builder and initially failed because the first generated command was still <code>wslview</code>.</p> <p>Build the WSL opener as a PowerShell <code>Start-Process -FilePath</code> script argument with the target quoted as data, then retain the xdg-open, gio, gnome-open, and kde-open fallbacks. Update the user-facing docs and keep the WSL command builder testable from host builds without adding dev-dependencies.</p> </li> </ul> <h3>Commit Statistics</h3> <ul> <li>2 commits contributed to the release.</li> <li>48 days passed between releases.</li> <li>1 commit was understood as <a href="https://www.conventionalcommits.org">conventional</a>.</li> <li>1 unique issue was worked on: <a href="https://redirect.github.com/Byron/open-rs/issues/122">#122</a></li> </ul> <h3>Commit Details</h3> <!-- raw HTML omitted --> <!-- raw HTML omitted --> <ul> <li><strong><a href="https://redirect.github.com/Byron/open-rs/issues/122">#122</a></strong> <ul> <li>Use PowerShell instead of wslview on WSL (44d1d41)</li> </ul> </li> <li><strong>Uncategorized</strong> <ul> <li>Merge pull request <a href="https://redirect.github.com/Byron/open-rs/issues/123">#123</a> from Byron/avoid-wslview (41c4cf0)</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Byron/open-rs/blob/main/changelog.md">open's changelog</a>.</em></p> <blockquote> <h2>5.3.6 (2026-06-29)</h2> <h3>Bug Fixes</h3> <ul> <li> <p><!-- raw HTML omitted --> use PowerShell instead of wslview on WSL WSL users reported that wslu's wslview is discontinued and unavailable in some package managers. The regression tests cover the WSL command builder and initially failed because the first generated command was still <code>wslview</code>.</p> <p>Build the WSL opener as a PowerShell <code>Start-Process -FilePath</code> script argument with the target quoted as data, then retain the xdg-open, gio, gnome-open, and kde-open fallbacks. Update the user-facing docs and keep the WSL command builder testable from host builds without adding dev-dependencies.</p> </li> </ul> <h3>Commit Statistics</h3> <!-- raw HTML omitted --> <ul> <li>2 commits contributed to the release.</li> <li>48 days passed between releases.</li> <li>1 commit was understood as <a href="https://www.conventionalcommits.org">conventional</a>.</li> <li>1 unique issue was worked on: <a href="https://redirect.github.com/Byron/open-rs/issues/122">#122</a></li> </ul> <h3>Commit Details</h3> <!-- raw HTML omitted --> <!-- raw HTML omitted --> <ul> <li><strong><a href="https://redirect.github.com/Byron/open-rs/issues/122">#122</a></strong> <ul> <li>Use PowerShell instead of wslview on WSL (<a href="https://github.com/Byron/open-rs/commit/44d1d41349fdfd23e5e74e3c0ac4c9aca2ed7282"><code>44d1d41</code></a>)</li> </ul> </li> <li><strong>Uncategorized</strong> <ul> <li>Merge pull request <a href="https://redirect.github.com/Byron/open-rs/issues/123">#123</a> from Byron/avoid-wslview (<a href="https://github.com/Byron/open-rs/commit/41c4cf09cab155460c29ac6a8b36ad6ec70b3d81"><code>41c4cf0</code></a>)</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Byron/open-rs/commit/cfb39d8c323bc147096ae00b1360cb6633ce4c35"><code>cfb39d8</code></a> Release open v5.3.6</li> <li><a href="https://github.com/Byron/open-rs/commit/41c4cf09cab155460c29ac6a8b36ad6ec70b3d81"><code>41c4cf0</code></a> Merge pull request <a href="https://redirect.github.com/Byron/open-rs/issues/123">#123</a> from Byron/avoid-wslview</li> <li><a href="https://github.com/Byron/open-rs/commit/44d1d41349fdfd23e5e74e3c0ac4c9aca2ed7282"><code>44d1d41</code></a> fix: use PowerShell instead of wslview on WSL (<a href="https://redirect.github.com/Byron/open-rs/issues/122">#122</a>)</li> <li>See full diff in <a href="https://github.com/Byron/open-rs/compare/v5.3.5...v5.3.6">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
0258993ad8 |
chore: bump petname from 3.0.1 to 3.1.0 (#3326)
Bumps [petname](https://github.com/allenap/rust-petname) from 3.0.1 to 3.1.0. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/allenap/rust-petname/commit/051547f28093e70cf7b86e1f77259b5178651267"><code>051547f</code></a> Bump version to 3.1.0</li> <li><a href="https://github.com/allenap/rust-petname/commit/69d5c31e84d3602e2159aafbe8e725374b8103b3"><code>69d5c31</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/131">#131</a> from allenap/completions</li> <li><a href="https://github.com/allenap/rust-petname/commit/9c9a846ede025b5311ba26045106abb744f893d7"><code>9c9a846</code></a> Add command-line completion support via a <code>completions</code> subcommand</li> <li><a href="https://github.com/allenap/rust-petname/commit/ce6f2ba938175c8308615b2cfed7ef6c898cb40b"><code>ce6f2ba</code></a> Build binary releases with <code>--all-features</code></li> <li><a href="https://github.com/allenap/rust-petname/commit/2cb888d1feaa0bf90d1889d49ee503af0211b907"><code>2cb888d</code></a> Upgrade notes from 3.0.0 to 3.0.1</li> <li>See full diff in <a href="https://github.com/allenap/rust-petname/compare/v3.0.1...v3.1.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
753431d6f8 |
chore: bump petname-macros from 3.0.1 to 3.1.0 (#3316)
Bumps [petname-macros](https://github.com/allenap/rust-petname) from 3.0.1 to 3.1.0. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/allenap/rust-petname/commit/051547f28093e70cf7b86e1f77259b5178651267"><code>051547f</code></a> Bump version to 3.1.0</li> <li><a href="https://github.com/allenap/rust-petname/commit/69d5c31e84d3602e2159aafbe8e725374b8103b3"><code>69d5c31</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/131">#131</a> from allenap/completions</li> <li><a href="https://github.com/allenap/rust-petname/commit/9c9a846ede025b5311ba26045106abb744f893d7"><code>9c9a846</code></a> Add command-line completion support via a <code>completions</code> subcommand</li> <li><a href="https://github.com/allenap/rust-petname/commit/ce6f2ba938175c8308615b2cfed7ef6c898cb40b"><code>ce6f2ba</code></a> Build binary releases with <code>--all-features</code></li> <li><a href="https://github.com/allenap/rust-petname/commit/2cb888d1feaa0bf90d1889d49ee503af0211b907"><code>2cb888d</code></a> Upgrade notes from 3.0.0 to 3.0.1</li> <li>See full diff in <a href="https://github.com/allenap/rust-petname/compare/v3.0.1...v3.1.0">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
dacf02fa15 |
chore: bump skim from 4.8.0 to 4.10.0 (#3315)
Bumps [skim](https://github.com/skim-rs/skim) from 4.8.0 to 4.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/releases">skim's releases</a>.</em></p> <blockquote> <h2>4.10.0 - 2026-06-28</h2> <h2>Release Notes</h2> <h3>🚀 Features</h3> <ul> <li><em>(theme)</em> Add a themeable scrollbar color for the item list (<a href="https://redirect.github.com/skim-rs/skim/issues/1101">#1101</a>)</li> </ul> <h3>🧪 Testing</h3> <ul> <li>Improve coverage on matchers & algos (<a href="https://redirect.github.com/skim-rs/skim/issues/1100">#1100</a>)</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/max-sixty"><code>@max-sixty</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1101">#1101</a></li> </ul> <h2>Install skim 4.10.0</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-installer.ps1 | iex" </code></pre> <h2>Download skim 4.10.0</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-aarch64-apple-darwin.tar.xz">skim-aarch64-apple-darwin.tar.xz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-aarch64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-apple-darwin.tar.xz">skim-x86_64-apple-darwin.tar.xz</a></td> <td>Intel macOS</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-apple-darwin.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-pc-windows-msvc.zip">skim-x86_64-pc-windows-msvc.zip</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-pc-windows-msvc.msi">skim-x86_64-pc-windows-msvc.msi</a></td> <td>x64 Windows</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-pc-windows-msvc.msi.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-aarch64-unknown-linux-gnu.tar.xz">skim-aarch64-unknown-linux-gnu.tar.xz</a></td> <td>ARM64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-aarch64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-unknown-linux-gnu.tar.xz">skim-x86_64-unknown-linux-gnu.tar.xz</a></td> <td>x64 Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-aarch64-unknown-linux-musl.tar.xz">skim-aarch64-unknown-linux-musl.tar.xz</a></td> <td>ARM64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-aarch64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-unknown-linux-musl.tar.xz">skim-x86_64-unknown-linux-musl.tar.xz</a></td> <td>x64 MUSL Linux</td> <td><a href="https://github.com/skim-rs/skim/releases/download/v4.10.0/skim-x86_64-unknown-linux-musl.tar.xz.sha256">checksum</a></td> </tr> </tbody> </table> <h2>4.9.0 - 2026-06-25</h2> <h2>Release Notes</h2> <h3>🚀 Features</h3> <ul> <li><em>(ci)</em> Upload coverage report to pages for easier browsing (<a href="https://redirect.github.com/skim-rs/skim/issues/1096">#1096</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/skim-rs/skim/blob/master/CHANGELOG.md">skim's changelog</a>.</em></p> <blockquote> <h2>[4.10.0] - 2026-06-28</h2> <h3>🚀 Features</h3> <ul> <li><em>(theme)</em> Add a themeable scrollbar color for the item list (<a href="https://redirect.github.com/skim-rs/skim/issues/1101">#1101</a>)</li> </ul> <h3>🧪 Testing</h3> <ul> <li>Improve coverage on matchers & algos (<a href="https://redirect.github.com/skim-rs/skim/issues/1100">#1100</a>)</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/max-sixty"><code>@max-sixty</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1101">#1101</a></li> </ul> <h2>[4.9.0] - 2026-06-25</h2> <h3>🚀 Features</h3> <ul> <li><em>(ci)</em> Upload coverage report to pages for easier browsing (<a href="https://redirect.github.com/skim-rs/skim/issues/1096">#1096</a>)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>Refresh preview after mouse selection (<a href="https://redirect.github.com/skim-rs/skim/issues/1095">#1095</a>)</li> </ul> <h3>🧪 Testing</h3> <ul> <li>Add unit tests for the shell & manpage generators (<a href="https://redirect.github.com/skim-rs/skim/issues/1098">#1098</a>)</li> <li>Improve coverage to 90% (<a href="https://redirect.github.com/skim-rs/skim/issues/1099">#1099</a>)</li> </ul> <h3>⚙️ Miscellaneous Tasks</h3> <ul> <li><em>(ci)</em> Use github's coverage (<a href="https://redirect.github.com/skim-rs/skim/issues/1094">#1094</a>)</li> </ul> <h3>New Contributors</h3> <ul> <li><a href="https://github.com/wang-borong"><code>@wang-borong</code></a> made their first contribution in <a href="https://redirect.github.com/skim-rs/skim/pull/1095">#1095</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/skim-rs/skim/commit/aeba919fab2e33822596394a0df7e1461b4ba6da"><code>aeba919</code></a> release: v4.10.0</li> <li><a href="https://github.com/skim-rs/skim/commit/bfec6e198da776a3a28f4f3c4bb16278a56339b4"><code>bfec6e1</code></a> feat(theme): add a themeable scrollbar color for the item list (<a href="https://redirect.github.com/skim-rs/skim/issues/1101">#1101</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/5f4798325ac5d78456f9b87976acc132f1b2da74"><code>5f47983</code></a> tests: improve coverage on matchers & algos (<a href="https://redirect.github.com/skim-rs/skim/issues/1100">#1100</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/d14407196b3887096b7daa66fe31d0a3f2704b8c"><code>d144071</code></a> release: v4.9.0</li> <li><a href="https://github.com/skim-rs/skim/commit/7d4502201f89a09fc5750881049167e13d8715a2"><code>7d45022</code></a> fix: refresh preview after mouse selection (<a href="https://redirect.github.com/skim-rs/skim/issues/1095">#1095</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/7e2cdf3c8e5812baa100e5aa3f85f1bec2b7b39e"><code>7e2cdf3</code></a> tests: improve coverage to 90% (<a href="https://redirect.github.com/skim-rs/skim/issues/1099">#1099</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/8187a121969f12f9f76f0274f223ed09eb5d8368"><code>8187a12</code></a> test: add unit tests for the shell & manpage generators (<a href="https://redirect.github.com/skim-rs/skim/issues/1098">#1098</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/b56eed4125efa5c81528442afbdd270e9b841aaf"><code>b56eed4</code></a> feat(ci): upload coverage report to pages for easier browsing (<a href="https://redirect.github.com/skim-rs/skim/issues/1096">#1096</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/e85cf6b708131f177fb1304eb2c270bc9a97f7d2"><code>e85cf6b</code></a> chore(ci): use github's coverage (<a href="https://redirect.github.com/skim-rs/skim/issues/1094">#1094</a>)</li> <li><a href="https://github.com/skim-rs/skim/commit/7994e4441279ce35fe2aaf582ccbb337c24320b9"><code>7994e44</code></a> chore(deps): bump the cargo-prod group with 4 updates (<a href="https://redirect.github.com/skim-rs/skim/issues/1093">#1093</a>)</li> <li>See full diff in <a href="https://github.com/skim-rs/skim/compare/v4.8.0...v4.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
748f82efa3 |
chore: bump petname from 3.0.0 to 3.0.1 (#3314)
Bumps [petname](https://github.com/allenap/rust-petname) from 3.0.0 to 3.0.1. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/allenap/rust-petname/commit/4a28e9da951537e1b5a8bb953390e4b54dcaa441"><code>4a28e9d</code></a> Bump version to 3.0.1</li> <li><a href="https://github.com/allenap/rust-petname/commit/6641b4fdd151879551b7238cf8d759cec0b880db"><code>6641b4f</code></a> Capture <code>-h</code> output with <code>--all-features</code></li> <li><a href="https://github.com/allenap/rust-petname/commit/47cb39b33bedbe830c36b2df8d47cd8902ffba4c"><code>47cb39b</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/129">#129</a> from allenap/dependabot/github_actions/actions/checko...</li> <li><a href="https://github.com/allenap/rust-petname/commit/3aff4246f32d19191afd6830c85836c97f371831"><code>3aff424</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/130">#130</a> from allenap/install-homebrew-tap</li> <li><a href="https://github.com/allenap/rust-petname/commit/65523cd4078c9beba56d6dae77c39c8ef2619764"><code>65523cd</code></a> Instructions for installing from the <code>allenap/utils</code> Homebrew tap</li> <li><a href="https://github.com/allenap/rust-petname/commit/0474cf2ea400a6861d46aefa58c830ff508391ac"><code>0474cf2</code></a> Bump actions/checkout from 6 to 7</li> <li><a href="https://github.com/allenap/rust-petname/commit/ee3b522af706af405408e9aa04e11184e5082ffa"><code>ee3b522</code></a> Merge pull request <a href="https://redirect.github.com/allenap/rust-petname/issues/128">#128</a> from allenap/lang-turkish</li> <li><a href="https://github.com/allenap/rust-petname/commit/2ae3dcba8f5288c5860abc47c108f515a586aa1f"><code>2ae3dcb</code></a> Update <code>README.md</code></li> <li><a href="https://github.com/allenap/rust-petname/commit/7d1fe87a0db8b68cc4179786cbe8481e99bded8f"><code>7d1fe87</code></a> Add <code>--lang</code> as an alias of <code>--language</code></li> <li><a href="https://github.com/allenap/rust-petname/commit/b9021dd2909d7087157c981e010db63d3af08209"><code>b9021dd</code></a> Check SemVer compatibility</li> <li>Additional commits viewable in <a href="https://github.com/allenap/rust-petname/compare/v3.0.0...v3.0.1">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: worktrunk-bot <254187624+worktrunk-bot@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> |
||
|
|
6032ee9d89 |
chore: bump the patch group with 4 updates (#3313)
Bumps the patch group with 4 updates: [anyhow](https://github.com/dtolnay/anyhow), [tree-sitter](https://github.com/tree-sitter/tree-sitter), [tree-sitter-highlight](https://github.com/tree-sitter/tree-sitter) and [vergen-gitcl](https://github.com/rustyhorde/vergen). Updates `anyhow` from 1.0.102 to 1.0.103 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/anyhow/releases">anyhow's releases</a>.</em></p> <blockquote> <h2>1.0.103</h2> <ul> <li>Fix Stacked Borrows violation (UB) in <code>Error::downcast_mut</code> (<a href="https://redirect.github.com/dtolnay/anyhow/issues/451">#451</a>, <a href="https://redirect.github.com/dtolnay/anyhow/issues/452">#452</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/anyhow/commit/5bdb0e24db3994be119d42f18fe2d655e1f68f4a"><code>5bdb0e2</code></a> Release 1.0.103</li> <li><a href="https://github.com/dtolnay/anyhow/commit/e621bd35ddddcd8b2f39d80b9f5938583571a87d"><code>e621bd3</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/anyhow/issues/452">#452</a> from dtolnay/downcast</li> <li><a href="https://github.com/dtolnay/anyhow/commit/6e8c000690151cba99305092024535905b2be162"><code>6e8c000</code></a> Eliminate pointer->reference->pointer during downcast</li> <li><a href="https://github.com/dtolnay/anyhow/commit/67c4abd7718b6191768193993270abe8dcdd66bb"><code>67c4abd</code></a> Add regression test for issue 451</li> <li><a href="https://github.com/dtolnay/anyhow/commit/917a16932009c1957f53c2ea325663948add2153"><code>917a169</code></a> Update actions/upload-artifact@v6 -> v7</li> <li><a href="https://github.com/dtolnay/anyhow/commit/d9dc3faf78b8647fdb5b8c5b53abb85e05e13d42"><code>d9dc3fa</code></a> Update actions/checkout@v6 -> v7</li> <li><a href="https://github.com/dtolnay/anyhow/commit/841522b2aa09732fecee40804440d2c35c68c480"><code>841522b</code></a> Raise minimum tested compiler to rust 1.85</li> <li>See full diff in <a href="https://github.com/dtolnay/anyhow/compare/1.0.102...1.0.103">compare view</a></li> </ul> </details> <br /> Updates `tree-sitter` from 0.26.9 to 0.26.10 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tree-sitter/tree-sitter/releases">tree-sitter's releases</a>.</em></p> <blockquote> <h2>v0.26.10</h2> <h2>What's Changed</h2> <ul> <li>fix(lib): update doc comment for <code>ts_parser_parse</code> by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5642">tree-sitter/tree-sitter#5642</a></li> <li>fix(lib): use correct TREE_SITTER_HIDE_SYMBOLS macro name in alloc.h by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5643">tree-sitter/tree-sitter#5643</a></li> <li>fix(cli): improve soundness of cst range calculation by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5650">tree-sitter/tree-sitter#5650</a></li> <li>fix(lib): Consider subtree lookahead bytes when determining whether the parser can reuse a node. by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5656">tree-sitter/tree-sitter#5656</a></li> <li>fix(cli): display warning to user if parser test corpus dir isn't found by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5669">tree-sitter/tree-sitter#5669</a></li> <li>fix: add DESCRIPTION to grammar Makefile template by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5672">tree-sitter/tree-sitter#5672</a></li> <li>fix(cli): infinite loop in highlight test by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5674">tree-sitter/tree-sitter#5674</a></li> <li>fix(lib): address strict aliasing violations in <code>TreeCursor</code> type by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5693">tree-sitter/tree-sitter#5693</a></li> <li>build(deps): bump wasmtime-c-api to v36.0.12 by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5709">tree-sitter/tree-sitter#5709</a></li> <li>fix(dsl): forbid invalid field names by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5710">tree-sitter/tree-sitter#5710</a></li> <li>Fix issues with queries matching a parent node with anchored children (siblings) by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5712">tree-sitter/tree-sitter#5712</a></li> <li>test(query): regression test for anchored siblings inside a parent by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5716">tree-sitter/tree-sitter#5716</a></li> <li>release v0.26.10 by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5717">tree-sitter/tree-sitter#5717</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.9...v0.26.10">https://github.com/tree-sitter/tree-sitter/compare/v0.26.9...v0.26.10</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/3fc4cd21bca378f8acf8c823809de4706b1808f6"><code>3fc4cd2</code></a> release v0.26.10</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/568aee0b7e2e93b6eb7c132c9fafc185203b0661"><code>568aee0</code></a> test(query): regression test for anchored siblings inside a parent</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/2efce10fe988408a1b02de4527b3f6128bb68d0e"><code>2efce10</code></a> fix(query): skip passthrough steps when checking for fallible step splitting</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/e8b96392919aeae84c52678be1489b9d507c568a"><code>e8b9639</code></a> fix(query): avoid overriding states not seeking immediate match with states s...</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/576564d25a6944859d70925b6cb693843cafc2c7"><code>576564d</code></a> fix(query): take anchors between siblings into account for fallible step spli...</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/fbf3049dc085b01c124308c0d61dba06cdc92a16"><code>fbf3049</code></a> fix(dsl): forbid invalid field names</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/99bc36b857eccb3cb70d8734aaf7e2a83d672d60"><code>99bc36b</code></a> build(deps): bump wasmtime-c-api to v36.0.12</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/1ef1048d0567cacc0b74ad1a911b95f3de2b8c47"><code>1ef1048</code></a> fix(build): use <code>std</code> helper rather than passing <code>-std=c11</code> flag</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/a61be4ac277bc8cb4ffa8419759faec0562c46f3"><code>a61be4a</code></a> fix(lib): address strict aliasing violations in <code>TreeCursor</code> type</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/be8f380ad47333e0df5a7b4f447485a6cd7f0fa7"><code>be8f380</code></a> fix(cli): highlight test did not properly check for spans on later rows</li> <li>Additional commits viewable in <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.9...v0.26.10">compare view</a></li> </ul> </details> <br /> Updates `tree-sitter-highlight` from 0.26.9 to 0.26.10 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tree-sitter/tree-sitter/releases">tree-sitter-highlight's releases</a>.</em></p> <blockquote> <h2>v0.26.10</h2> <h2>What's Changed</h2> <ul> <li>fix(lib): update doc comment for <code>ts_parser_parse</code> by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5642">tree-sitter/tree-sitter#5642</a></li> <li>fix(lib): use correct TREE_SITTER_HIDE_SYMBOLS macro name in alloc.h by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5643">tree-sitter/tree-sitter#5643</a></li> <li>fix(cli): improve soundness of cst range calculation by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5650">tree-sitter/tree-sitter#5650</a></li> <li>fix(lib): Consider subtree lookahead bytes when determining whether the parser can reuse a node. by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5656">tree-sitter/tree-sitter#5656</a></li> <li>fix(cli): display warning to user if parser test corpus dir isn't found by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5669">tree-sitter/tree-sitter#5669</a></li> <li>fix: add DESCRIPTION to grammar Makefile template by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5672">tree-sitter/tree-sitter#5672</a></li> <li>fix(cli): infinite loop in highlight test by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5674">tree-sitter/tree-sitter#5674</a></li> <li>fix(lib): address strict aliasing violations in <code>TreeCursor</code> type by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5693">tree-sitter/tree-sitter#5693</a></li> <li>build(deps): bump wasmtime-c-api to v36.0.12 by <a href="https://github.com/clason"><code>@clason</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5709">tree-sitter/tree-sitter#5709</a></li> <li>fix(dsl): forbid invalid field names by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5710">tree-sitter/tree-sitter#5710</a></li> <li>Fix issues with queries matching a parent node with anchored children (siblings) by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5712">tree-sitter/tree-sitter#5712</a></li> <li>test(query): regression test for anchored siblings inside a parent by <a href="https://github.com/tree-sitter-ci-bot"><code>@tree-sitter-ci-bot</code></a>[bot] in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5716">tree-sitter/tree-sitter#5716</a></li> <li>release v0.26.10 by <a href="https://github.com/WillLillis"><code>@WillLillis</code></a> in <a href="https://redirect.github.com/tree-sitter/tree-sitter/pull/5717">tree-sitter/tree-sitter#5717</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.9...v0.26.10">https://github.com/tree-sitter/tree-sitter/compare/v0.26.9...v0.26.10</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/3fc4cd21bca378f8acf8c823809de4706b1808f6"><code>3fc4cd2</code></a> release v0.26.10</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/568aee0b7e2e93b6eb7c132c9fafc185203b0661"><code>568aee0</code></a> test(query): regression test for anchored siblings inside a parent</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/2efce10fe988408a1b02de4527b3f6128bb68d0e"><code>2efce10</code></a> fix(query): skip passthrough steps when checking for fallible step splitting</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/e8b96392919aeae84c52678be1489b9d507c568a"><code>e8b9639</code></a> fix(query): avoid overriding states not seeking immediate match with states s...</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/576564d25a6944859d70925b6cb693843cafc2c7"><code>576564d</code></a> fix(query): take anchors between siblings into account for fallible step spli...</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/fbf3049dc085b01c124308c0d61dba06cdc92a16"><code>fbf3049</code></a> fix(dsl): forbid invalid field names</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/99bc36b857eccb3cb70d8734aaf7e2a83d672d60"><code>99bc36b</code></a> build(deps): bump wasmtime-c-api to v36.0.12</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/1ef1048d0567cacc0b74ad1a911b95f3de2b8c47"><code>1ef1048</code></a> fix(build): use <code>std</code> helper rather than passing <code>-std=c11</code> flag</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/a61be4ac277bc8cb4ffa8419759faec0562c46f3"><code>a61be4a</code></a> fix(lib): address strict aliasing violations in <code>TreeCursor</code> type</li> <li><a href="https://github.com/tree-sitter/tree-sitter/commit/be8f380ad47333e0df5a7b4f447485a6cd7f0fa7"><code>be8f380</code></a> fix(cli): highlight test did not properly check for spans on later rows</li> <li>Additional commits viewable in <a href="https://github.com/tree-sitter/tree-sitter/compare/v0.26.9...v0.26.10">compare view</a></li> </ul> </details> <br /> Updates `vergen-gitcl` from 10.0.0 to 10.0.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rustyhorde/vergen/releases">vergen-gitcl's releases</a>.</em></p> <blockquote> <h2>vergen 10.0.1</h2> <p>Patch release adding a new error-fallback knob, a builder-access API addition, dependency updates, and a security-audit refresh.</p> <h3>New features</h3> <ul> <li><strong><code>VERGEN_DEFAULT_ON_ERROR</code> fallback</strong> (<a href="https://redirect.github.com/rustyhorde/vergen/issues/509">#509</a>) — When building outside a git worktree (or any time an instruction cannot be generated), the new <code>VERGEN_DEFAULT_ON_ERROR</code> env var and <code>Emitter::default_on_error()</code> builder method populate missing instructions with the idempotent default (<code>VERGEN_IDEMPOTENT_OUTPUT</code>) so <code>env!("VERGEN_GIT_SHA")</code> keeps compiling — while builds <em>inside</em> a real worktree still emit real values.</li> <li><strong><code>all()</code> builder accessor</strong> (<a href="https://redirect.github.com/rustyhorde/vergen/issues/513">#513</a>) — Exposes <code>Build::all()</code>, <code>Cargo::all()</code>, <code>Rustc::all()</code>, and <code>Sysinfo::all()</code> as public methods that return the builder with all instructions enabled, enabling subtractive modification (turn all on, then selectively disable).</li> </ul> <h3>Dependency updates</h3> <ul> <li><code>bon</code> 3.9.1 → 3.9.3</li> <li><code>gix</code> 0.84.0 → 0.85.0</li> <li><code>regex</code> 1.12.3 → 1.12.4</li> <li><code>time</code> 0.3.47 → 0.3.51</li> <li><code>sysinfo</code> 0.39.3 → 0.39.5</li> <li><code>memmap2</code> 0.9.10 → 0.9.11 (resolves <strong>RUSTSEC-2026-0186</strong>)</li> </ul> <h3>Security audit refresh</h3> <ul> <li>Added <code>RUSTSEC-2026-0173</code> ignore (<code>proc-macro-error2</code> unmaintained, informational only)</li> <li>Removed <code>RUSTSEC-2025-0055</code> ignore (<code>tracing-subscriber</code> now resolved to ≥ 0.3.20)</li> <li>Removed <code>RUSTSEC-2025-0141</code> ignore (<code>bincode</code> no longer in the dependency tree)</li> <li><code>cargo audit</code> passes clean</li> </ul> <h3>Other</h3> <ul> <li>Fixed inaccurate <code>fail_on_error</code> and <code>idempotent</code> docs (<a href="https://redirect.github.com/rustyhorde/vergen/issues/509">#509</a>)</li> <li>Added <code>cargo:rerun-if-changed=VERGEN_DEFAULT_ON_ERROR</code> rerun directive</li> <li>Bumped <code>cargo-binstall</code> in CI (<a href="https://redirect.github.com/rustyhorde/vergen/issues/503">#503</a>)</li> <li>Parse deprecation fixes (<a href="https://redirect.github.com/rustyhorde/vergen/issues/505">#505</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rustyhorde/vergen/compare/v10.0.0...10.0.1">https://github.com/rustyhorde/vergen/compare/v10.0.0...10.0.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rustyhorde/vergen/commit/23a615917d339062777d013afd4204e40309fe61"><code>23a6159</code></a> feat(api): expose all that returns builder for subtractive modification. (<a href="https://redirect.github.com/rustyhorde/vergen/issues/513">#513</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/b1ee36128a5b1b903722bc7bc6f35b2c9e1cbe7a"><code>b1ee361</code></a> v10.0.1 enhancements: VERGEN_DEFAULT_ON_ERROR fallback, dependency updates, a...</li> <li><a href="https://github.com/rustyhorde/vergen/commit/a3ffa569e9d0ea5a151813128acb992c09eddffe"><code>a3ffa56</code></a> Fix parse deprecation issues (<a href="https://redirect.github.com/rustyhorde/vergen/issues/505">#505</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/2bab576a171eb950e67baef81bbae4989535a29b"><code>2bab576</code></a> chore: version bump for next release (<a href="https://redirect.github.com/rustyhorde/vergen/issues/504">#504</a>)</li> <li><a href="https://github.com/rustyhorde/vergen/commit/ee3edb23bcea7b42373dcd068529c74a2c88a813"><code>ee3edb2</code></a> Bump cargo-bins/cargo-binstall from 1.19.1 to 1.20.0 (<a href="https://redirect.github.com/rustyhorde/vergen/issues/503">#503</a>)</li> <li>See full diff in <a href="https://github.com/rustyhorde/vergen/compare/v10.0.0...10.0.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
50553be344 |
Release v0.63.0 (#3300)
Release v0.63.0. Folds the version bump (`Cargo.toml`, `Cargo.lock`) and the `CHANGELOG.md` section into one commit. This release is mostly polish and fixes on top of the v0.62.0 picker + `wt list` overhaul, plus list correctness/perf and safer branch deletion. **Improved**: `[list] columns` can force a column on past `--full`; `Alt-r` refreshes the picker preview panes; a narrowed `wt list` is now actually faster (thanks @jtaby for reporting); fewer duplicate git calls in `wt list --full`; picker `comments` tab caches across runs. **Fixed**: fork diff/ahead-behind columns use the upstream default tip; integrated branches stop flashing `✗`; atomic CAS branch deletion (a safety improvement — fails closed when a ref races); Age/Message columns paint sooner; `Alt-x` cursor flash + `--prs` row preservation; removable rows stay gray when selected; preview scroll preserved on CI fetch; summary tab dims when empty; first-run hints show the resolved config path. **Internal**: `-vv` trace/profiler accuracy. The release-process data-loss surface review (four independent finders over the full `v0.62.0..HEAD` diff) found no data-loss risk introduced; the CAS branch-deletion change is a net safety improvement. > _This was written by Claude Code on behalf of max_ |
||
|
|
5b83c0f1d8 | fix(deps): pin petname-macros to =3.0.0 to fix nightly minimal-versions (#3283) | ||
|
|
51f7fe8abb |
Release v0.62.0 (#3263)
Release v0.62.0 — minor bump (`cargo semver-checks` reports a breaking library-API change — `ListConfig.columns` added a public field, which requires at least a minor pre-1.0 — plus many new features). ### Highlights - **`wt switch --prs`** — browse open PRs/MRs in the interactive picker, with a live CI/review column and `pr` / `comments` / `log` preview tabs ([#3128](https://github.com/max-sixty/worktrunk/pull/3128)). [Docs](https://worktrunk.dev/switch/) - **Interactive picker now runs on Windows** ([#3217](https://github.com/max-sixty/worktrunk/pull/3217)). - **`main…±` diff column shows by default** in `wt list`; `--full` now adds only the off-machine columns (CI status, LLM summaries) ([#3236](https://github.com/max-sixty/worktrunk/pull/3236)). - **`[list] columns`** selects and orders the columns `wt list` renders ([#3141](https://github.com/max-sixty/worktrunk/pull/3141)). - **`wt config state logs profile`** performance profiler ([#3184](https://github.com/max-sixty/worktrunk/pull/3184)). - Picker keyboard shortcuts (copy / open / refresh) and the `Alt-x` removal rework, fish completion-recursion fixes, `CLAUDE_CONFIG_DIR` support, and more. **Breaking:** in the picker, remove moved from `Alt-r` to `Alt-x` (`Alt-r` now refreshes). Two "Still waiting" entries ([#3178](https://github.com/max-sixty/worktrunk/pull/3178), [#3183](https://github.com/max-sixty/worktrunk/pull/3183)) were moved here from 0.61.0 — they landed after the v0.61.0 tag, so they ship in 0.62.0. The changelog also documents the `Alt-x` removal rework ([#3262](https://github.com/max-sixty/worktrunk/pull/3262)); the tag will be placed on the `main` tip that includes both this release commit and #3262. Full notes in the `CHANGELOG.md` diff. Data-loss surface review of the cumulative diff in progress; the keyword pass came back clean (the new `Alt-x` removal uses safe variants — `SafeDelete`, no force, approval-gated). > _This was written by Claude Code on behalf of max_ |