tag:github.com,2008:https://github.com/rsonquery/rsonpath/releases Release notes from rsonpath 2026-02-16T15:11:14Z tag:github.com,2008:Repository/512192888/v0.10.0 2026-02-16T15:54:35Z v0.10.0 <h2>[0.10.0] - 2025-02-16 ([0.4.1] for <code>rsonpath-syntax</code>)</h2> <h3>Features</h3> <ul> <li> <p>Support for AVX512 SIMD.</p> <ul> <li>available on x86-64</li> </ul> </li> <li> <p>Support for Neon SIMD.</p> <ul> <li>available on aarch64</li> </ul> </li> <li> <p>MSRV bumped to 1.89.</p> <ul> <li>stable AVX512 since 1.89</li> </ul> </li> <li> <p>Removed the <code>arbitrary</code> feature and the <code>Arbitrary</code> implementations from <code>rsonpath-syntax</code>.</p> </li> <li> <p>Revised the list of Tier 1 targets that are continuously built and released.</p> <ul> <li>The following targets are now in CI and release: <ul> <li><code>aarch64-apple-darwin</code></li> <li><code>aarch64-pc-windows-msvc</code></li> </ul> </li> <li>The following targets are no longer built or released: <ul> <li><code>i686-pc-windows-gnu</code></li> <li><code>x86_64-apple-darwin</code></li> </ul> </li> </ul> </li> <li> <p>Added prebuilt binaries for a few MUSL-based Tier 2 targets. (<a href="https://github.com/V0ldek/rsonpath/issues/705" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/705/hovercard">#705</a>)</p> <ul> <li>Binaries now released for: <ul> <li><code>aarch64-unknown-linux-musl</code></li> <li><code>i686-unknown-linux-musl</code></li> <li><code>x86_64-unknown-linux-musl</code></li> </ul> </li> </ul> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> <p>Skipping inside arrays on comma-atomic (<a href="https://github.com/V0ldek/rsonpath/issues/757" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/757/hovercard">#757</a>, <a href="https://github.com/V0ldek/rsonpath/issues/751" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/751/hovercard">#751</a>)</p> <ul> <li>Tail skipping was not triggered when the item matching the unitary transition was an atomic value inside a list. For example, selecting <code>$[0]</code> from a long list of integers would never skip, massively degrading performance.</li> <li>Skipping was added to <code>handle_comma</code> in the same vein as it was in <code>handle_colon</code> to enable this.</li> </ul> </li> <li> <p>Fix panic in specific cases of reclassification at end of file (<a href="https://github.com/V0ldek/rsonpath/issues/788" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/788/hovercard">#788</a>)</p> <ul> <li>A particular combination of reclassification after tail-skipping at the very end of the file could cause a panic if the file-ending closing occurred directly after the skipped-to character.</li> </ul> </li> <li> <p>Error messages blowing up on long inputs. (<a href="https://github.com/V0ldek/rsonpath/issues/842" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/842/hovercard">#842</a>, <a href="https://github.com/V0ldek/rsonpath/issues/749" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/749/hovercard">#749</a>)</p> <ul> <li>Previously, when displaying a ParseError every underlying SyntaxError would be printed with the full query input as context. If the density of errors in the input was high this would effectively cause a quadratic blowup during printing.</li> <li>It's probably unlikely inputs like this would be given by a user, but they do happen during fuzzing (when we're throwing long strings of essentially random characters at the parser) and could potentially be used as a DoS attack vector (intentionally supplying nonsensical large queries and forcing error messages to be sent back).</li> <li>Additionally fixed an invalid error message given when a side of a comparison operator was a non-singular query.</li> </ul> </li> </ul> <h3>Reliability</h3> <ul> <li> <p>Use github hosted ARM runners. (<a href="https://github.com/V0ldek/rsonpath/issues/718" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/718/hovercard">#718</a>)</p> </li> <li> <p>ARM SIMD is now tested in CI.</p> </li> <li> <p>Fix serde proptests. (<a href="https://github.com/V0ldek/rsonpath/issues/742" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/742/hovercard">#742</a>)</p> <ul> <li>Proptests in automaton serde were not properly guarding for arbitrary generated queries being too complex and exceeding the automaton size limit.</li> </ul> </li> <li> <p>Add CodeQl for Rust scanning.</p> <ul> <li>We now require the analysis to pass before PR merges.</li> </ul> </li> <li> <p>All fuzzers now correctly run on a nightly basis. (<a href="https://github.com/V0ldek/rsonpath/issues/749" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/749/hovercard">#749</a>)</p> </li> </ul> <h3>Dependencies</h3> <ul> <li>Update <code>cfg-if</code> from 1.0.0 to 1.0.4</li> <li>Update <code>clap</code> from 4.5.23 to 4.5.58</li> <li>Update <code>color-eyre</code> from 0.6.3 to 0.6.5</li> <li>Update <code>log</code> from 0.4.22 to 0.4.29</li> <li>Update <code>memmap2</code> from 0.9.5 to 0.9.9</li> <li>Update <code>nom</code> from 7.1.3 to 8.0.0</li> <li>Update <code>owo-colors</code> from 4.1.0 to 4.2.3</li> <li>Update <code>rustflags</code> from 0.1.6 to 0.1.7</li> <li>Update <code>serde</code> from 1.0.217 to 1.0.228</li> <li>Update <code>simple_logger</code> from 5.0.0 to 5.1.0</li> <li>Update <code>smallvec</code> from 1.13.2 to 1.15.1</li> <li>Update <code>thiserror</code> from 2.0.9 to 2.0.18</li> <li>Update <code>unicode-width</code> from 0.2.0 to 0.2.2</li> <li>Update <code>vector-map</code> from 1.0.1 to 1.0.2</li> <li>Update <code>vergen</code> from 9.0.2 to 9.1.0</li> <li>Update <code>vergen-git2</code> from 1.0.2 to 9.1.0</li> <li>Remove <code>vergen-gitcl</code> from build dependencies</li> </ul> <h3>Documentation</h3> <ul> <li>Fix old link to rsonbook in readme.</li> <li>Add a strict no-LLM policy to CONTRIBUTING.</li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.9.4 2024-12-31T04:25:01Z v0.9.4 <h2>[0.9.4] - 2024-12-31 ([0.4.0] for <code>rsonpath-syntax</code>)</h2> <h3>Library</h3> <ul> <li>Serde support for <code>MainEngine</code> and <code>JsonPathQuery</code> in <code>rsonpath-syntax</code>. <ul> <li>Implemented <code>serde::Serialize</code> and <code>serde::Deserialize</code> for <code>MainEngine</code> in rsonpath-lib,<br> and for <code>JsonPathQuery</code> and its consituent types in <code>rsonpath-syntax</code>.<br> The <code>serde</code> dependency is guarded behind the optional <code>serde</code> feature.</li> <li>The serialization format for <code>rsonpath-lib</code> is not stable, as the <code>Automaton</code><br> is expected to evolve. Thus, serialization includes a version<br> and deserialization will fail if the version disagrees.</li> <li>The format in <code>rsonpath-syntax</code> is expected to be stable, but no guarantees before 1.0.0.</li> <li>Also added snapshot tests for serialization based on <code>insta</code>.</li> </ul> </li> <li>Added the <code>MainEngine::automaton</code> function to retrieve a reference to the compiled query.</li> <li>Removed the <code>arbitrary</code> feature from <code>rsonpath-lib</code> as it didn't actually do anything anymore.</li> </ul> <h3>Dependencies</h3> <ul> <li><code>serde</code> (1.0.217) is now an optional dependency for <code>rsonpath</code>, <code>rsonpath-lib</code>, and <code>rsonpath-syntax</code></li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.9.3 2024-12-24T16:00:18Z v0.9.3 <h2>[0.9.3] - 2024-12-24</h2> <p>Thanks to <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/azoyan/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/azoyan">@azoyan</a> for contributions 🎉</p> <h3>Library</h3> <ul> <li>Made <code>MainEngine</code> <code>Send</code> and <code>Sync</code> <ul> <li>Changed internal <code>Rc</code>s to <code>Arc</code>s in the automaton labels.</li> <li>Added a <code>static_assert</code> to make sure <code>MainEngine</code> is <code>Send+Sync</code> forever.</li> </ul> </li> <li>Added a <code>Debug</code> impl for <code>MainEngine</code>.</li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.9.2 2024-12-23T00:36:58Z v0.9.2 <h2>[0.9.2] - 2024-12-22</h2> <h3>Library</h3> <ul> <li>[<strong>breaking</strong>] Added <code>StringPattern</code> and made <code>Automaton</code> no longer borrow the query. (<a href="https://github.com/V0ldek/rsonpath/issues/117" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/117/hovercard">#117</a><a href="https://github.com/V0ldek/rsonpath/issues/613" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/613/hovercard">#613</a>) <ul> <li>The <code>Automaton</code> struct borrowed the source query, which also caused the Engine to carry the query's lifetime with it.<br> The actual data being borrowed were the <code>JsonString</code> values for member transitions.<br> In preparation for <a href="https://github.com/V0ldek/rsonpath/issues/117" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/117/hovercard">#117</a>we remove the borrowed <code>JsonString</code> and replace it<br> with <code>StringPattern</code>. For UTF-8 the <code>StringPattern</code> will be a more complex struct that precomputes some stuff for efficient matching later.<br> For now, it's a thin wrapper over a <code>JsonString</code>.</li> <li>During construction we may create many transitions over the same pattern.<br> To reduce the size of the automaton we cache the patterns and put them into an <code>Rc</code>.<br> This may get optimised later to instead use some kind of inline storage, but it's unlike to actually matter.<br> I ran the benchmarks and saw no measurable difference between the previous version and this one.</li> <li>This is a breaking API change -- the <code>MainEngine</code> is now lifetimeless and the <code>Compiler</code> trait requires the<br> returned engine to be lifetimeless.</li> </ul> </li> </ul> <h3>Dependencies</h3> <ul> <li>Bump arbitrary from 1.3.1 to 1.4.1</li> <li>Bump clap from 4.5.2 to 4.5.23</li> <li>Bump color-eyre from 0.6.2 to 0.6.3</li> <li>Bump log from 0.4.21 to 0.4.22</li> <li>Bump memmap2 from 0.9.4 to 0.9.5</li> <li>Bump simple_logger from 4.3.3 to 5.0.0</li> <li>Bump smallvec from 1.13.1 to 1.13.2</li> <li>Bump thiserror from 1.0.58 to 2.0.9 (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2754652311" data-permission-text="Title is private" data-url="https://github.com/rsonquery/rsonpath/issues/617" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/617/hovercard" href="https://github.com/rsonquery/rsonpath/pull/617">#617</a>). (<a href="https://github.com/V0ldek/rsonpath/issues/617" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/617/hovercard">#617</a>)</li> <li>Remove <code>nom</code> as a direct dependency of <code>rsonpath-lib</code></li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.9.1 2024-04-03T18:23:23Z v0.9.1 <h2>[0.9.1] - 2024-04-03</h2> <h3>Bug Fixes</h3> <ul> <li>Child slice selectors only selecting first matching index (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2221690794" data-permission-text="Title is private" data-url="https://github.com/rsonquery/rsonpath/issues/499" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/499/hovercard" href="https://github.com/rsonquery/rsonpath/pull/499">#499</a>). (<a href="https://github.com/V0ldek/rsonpath/issues/499" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/499/hovercard">#499</a>) <ul> <li>Fixed a bug where the compiler would erroneously mark states<br> with a single slice transition as unitary, even though such<br> transitions could match more than one index.</li> </ul> </li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.9.0 2024-03-28T18:34:47Z v0.9.0 <h2>[0.9.0] - 2024-03-28</h2> <h3>Features</h3> <ul> <li>Array slice selector. (<a href="https://github.com/V0ldek/rsonpath/issues/152" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/152/hovercard">#152</a>) <ul> <li>Simple slicing: forward step and positive bounds.<br> Includes an overhaul to how array transitions are compiled.</li> </ul> </li> </ul> <h3>Performance</h3> <ul> <li>Improve performance of the index selector. (<a href="https://github.com/V0ldek/rsonpath/issues/138" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/138/hovercard">#138</a>) <ul> <li>Added more structure and metadata to the automaton,<br> improving perf of all queries in general (~6% thpt) and<br> array-index queries in particular (~12% thpt).</li> </ul> </li> </ul> <h3>Reliability</h3> <ul> <li>Run JSONPath Compliance Test Suite on basic queries. <ul> <li>CTS is now run in CI on queries that the engine supports.</li> </ul> </li> </ul> <h3>Dependencies</h3> <ul> <li>Bump clap from 4.5.1 to 4.5.2</li> <li>Bump thiserror from 1.0.57 to 1.0.58</li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.8.7 2024-02-29T20:25:28Z v0.8.7 <h2>[0.8.7] - 2024-02-29</h2> <h3>Features</h3> <ul> <li>[<strong>breaking</strong>] Parsing filter expressions. (<a href="https://github.com/V0ldek/rsonpath/issues/154" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/154/hovercard">#154</a>) <ul> <li>This is mainly an <code>rsonpath-syntax</code> change – the selectors are parsed,<br> but <code>rq</code> will give you an unsupported error and a link to <a href="https://github.com/V0ldek/rsonpath/issues/154" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/154/hovercard">#154</a><br> if you put them in a query.</li> </ul> </li> </ul> <h3>Reliability</h3> <ul> <li>Add msrv verify as ci check. (<a href="https://github.com/V0ldek/rsonpath/issues/480" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/480/hovercard">#480</a>) <ul> <li>The MSRV got unknowingly bumped before, with this CI check we will avoid it in the future.</li> </ul> </li> </ul> <h3>Dependencies</h3> <ul> <li>Bump clap from 4.4.16 to 4.5.1</li> <li>Bump eyre from 0.6.11 to 0.6.12</li> <li>Bump log from 0.4.20 to 0.4.21</li> <li>Bump memmap2 from 0.9.3 to 0.9.4</li> <li>Bump smallvec from 1.12.0 to 1.13.1</li> <li>Bump thiserror from 1.0.56 to 1.0.57</li> <li>Bump vergen from 8.2.7 to 8.3.1</li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.8.6 2024-01-15T15:06:15Z v0.8.6 <h2>[0.8.6] - 2024-01-15</h2> <h3>Features</h3> <ul> <li>[<strong>breaking</strong>] Parsing <code>Slice</code> selectors. <ul> <li>This is mainly an <code>rsonpath-syntax</code> change – the selectors are parsed,<br> but <code>rq</code> will give you an unsupported error and a link to <a href="https://github.com/V0ldek/rsonpath/issues/152" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/152/hovercard">#152</a><br> if you put them in a query.</li> </ul> </li> </ul> <h3>Bug Fixes</h3> <ul> <li> <p>Bug in <code>-c</code> graph display.</p> <ul> <li>dot format was temporarily broken by doubling double quotes in labels</li> </ul> </li> <li> <p>U+001A-U+001F in name selectors.</p> <ul> <li>Characters U+001A through U+001F were erroneously accepted unescaped.<br> This is now a hard error.</li> </ul> </li> </ul> <h3>Dependencies</h3> <ul> <li>Bump clap from 4.4.14 to 4.4.16</li> <li>Bump vergen from 8.2.6 to 8.2.7.</li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.8.5 2024-01-10T16:39:58Z v0.8.5 <h2>[0.8.5] - 2024-01-10</h2> <p>Nice parsing errors 🪄</p> <p><a target="_blank" rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/20441980/295638990-38bd30b0-6c7c-422f-81e8-72bbae972a04.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQxNTE4NDQsIm5iZiI6MTc3NDE1MTU0NCwicGF0aCI6Ii8yMDQ0MTk4MC8yOTU2Mzg5OTAtMzhiZDMwYjAtNmM3Yy00MjJmLTgxZTgtNzJiYmFlOTcyYTA0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAzMjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMzIyVDAzNTIyNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJlYWU4ZGFkM2JiMjc4OTk0NTI1MDQzYjM4ZjY4ZjgzYjI1ZjcyZjQ1MjkzYWZjNWVhNTNmZTc3MGZhOTMxMDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.oPiJMy1UqirDEQ1IES7V-K31s0JjMY899mLRQzDEQGo"><img src="https://private-user-images.githubusercontent.com/20441980/295638990-38bd30b0-6c7c-422f-81e8-72bbae972a04.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQxNTE4NDQsIm5iZiI6MTc3NDE1MTU0NCwicGF0aCI6Ii8yMDQ0MTk4MC8yOTU2Mzg5OTAtMzhiZDMwYjAtNmM3Yy00MjJmLTgxZTgtNzJiYmFlOTcyYTA0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAzMjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMzIyVDAzNTIyNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJlYWU4ZGFkM2JiMjc4OTk0NTI1MDQzYjM4ZjY4ZjgzYjI1ZjcyZjQ1MjkzYWZjNWVhNTNmZTc3MGZhOTMxMDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.oPiJMy1UqirDEQ1IES7V-K31s0JjMY899mLRQzDEQGo" alt="image" content-type-secured-asset="image/png" style="max-width: 100%;"></a></p> <h3>Features</h3> <ul> <li>[<strong>breaking</strong>] Separate <code>rsonpath-syntax</code>. <ul> <li>The parsing logic and query AST are now moved to a separately published subcrate.</li> <li>The crate is versioned separately. Changes to it that do not affect <code>rq</code> will be documented<br> in its separate changelog. See the <code>crates/rsonpath-syntax</code> subdirectory.</li> </ul> </li> <li>[<strong>breaking</strong>] Rework numeric types in the query parser. <ul> <li>renamed <code>NonNegativeArrayIndex</code> to <code>JsonUInt</code></li> <li>added the <code>JsonInt</code> and <code>JsonNonZeroUInt</code> types</li> </ul> </li> <li>Fancy error handling in the parser.</li> </ul> <h3>Reliability</h3> <ul> <li>Use self-hosted runner for ARM. <ul> <li>We now have a self-hosted runner to continuously test rsonpath on ARM64!</li> </ul> </li> <li>Set restrictive egress rules on runners. <ul> <li>Following up on StepSecurity upgrades, runners now block egress<br> traffic by default and allow only specific trusted endpoints.</li> </ul> </li> </ul> <h3>Dependencies</h3> <ul> <li>Bump arbitrary from 1.3.0 to 1.3.2.</li> <li>Bump clap from 4.4.7 to 4.4.14.</li> <li>Bump eyre from 0.6.8 to 0.6.11.</li> <li>Bump memmap2 from 0.9.0 to 0..3.</li> <li>Bump simple_logger from 4.2.0 to 4.3.3.</li> <li>Bump smallvec from 1.11.1 to 1.11.2.</li> <li>Bump thiserror from 1.0.49 to 1.0.56.</li> <li>Bump vergen from 8.2.5 to 8.2.6.</li> </ul> github-actions[bot] tag:github.com,2008:Repository/512192888/v0.8.4 2023-10-30T22:11:53Z v0.8.4 <h2>[0.8.4] - 2023-10-30</h2> <h3>Features</h3> <ul> <li>[<strong>breaking</strong>] Refactor the <code>Input</code> implementors with automatic padding (#<a href="https://github.com/V0ldek/rsonpath/issues/276" data-hovercard-type="issue" data-hovercard-url="/rsonquery/rsonpath/issues/276/hovercard">276</a>). <ul> <li>Padding and alignment is now handled automatically by the input types,<br> allowing them to work safely without copying the entire input. The overhead is now<br> limited to the padding, which is at most 256 bytes in total.</li> <li><a href="https://docs.rs/rsonpath-lib/0.8.4/rsonpath/input/borrowed/struct.BorrowedBytes.html" rel="nofollow"><code>BorrowedBytes</code></a> is now safe to construct.</li> <li><a href="https://docs.rs/rsonpath-lib/0.8.4/rsonpath/input/owned/struct.OwnedBytes.html" rel="nofollow"><code>OwnedBytes</code></a> no longer copies<br> the entire source on construction.</li> </ul> </li> </ul> <h3>Bug Fixes</h3> <ul> <li>Atomic values getting invalid spans (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1955675591" data-permission-text="Title is private" data-url="https://github.com/rsonquery/rsonpath/issues/327" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/327/hovercard" href="https://github.com/rsonquery/rsonpath/pull/327">#327</a>). (<a href="https://github.com/V0ldek/rsonpath/issues/327" data-hovercard-type="pull_request" data-hovercard-url="/rsonquery/rsonpath/pull/327/hovercard">#327</a>) <ul> <li>Fixed an issue where atomic values would be matched with all<br> trailing characters up until the next closing.</li> </ul> </li> </ul> <h3>Performance</h3> <ul> <li>Improve SIMD codegen. <ul> <li>Improved the way we dispatch to SIMD-intensive functions.<br> This results in slightly larger binaries, but <em>massive</em> speedups –<br> throughput increase of 5, 10, 20, or in case of <code>google_map::travel_modes/rsonpath_direct_count</code><br> 59 (fifty-nine) percent.</li> </ul> </li> </ul> <h3>Reliability</h3> <ul> <li>Harden GitHub Actions. <ul> <li>We now use the StepSecurity <a href="https://github.com/step-security/harden-runner">harden-runner</a> in audit mode<br> to test a more secure approach to GitHub CI.</li> </ul> </li> <li>End to end test refactor. <ul> <li>tests are now generated into many separate files instead of one gigantic file.<br> This improves compilation times, responsiveness of rust-analyzer,<br> and in general makes the tooling happier.</li> </ul> </li> </ul> <h3>Dependencies</h3> <ul> <li>Bump arbitrary from 1.3.0 to 1.3.2.</li> <li>Bump clap from 4.4.6 to 4.4.7.</li> <li>Bump thiserror from 1.0.49 to 1.0.50.</li> </ul> github-actions[bot]