dependabot[bot] opened a new pull request, #40548: URL: https://github.com/apache/superset/pull/40548
Bumps [syntaqlite](https://github.com/LalitMaganti/syntaqlite) from 0.1.0 to 0.5.9. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/LalitMaganti/syntaqlite/releases">syntaqlite's releases</a>.</em></p> <blockquote> <h2>v0.5.9</h2> <p><strong>Parser:</strong></p> <ul> <li>Reverted the eager macro argument expansion introduced in 0.5.8, which broke the rewrite tree shape expected by downstream consumers. The diamond-recursion case it fixed is now detected structurally by walking the expansion layer's parent chain through <code>body_call_offset == ARG_INTERNAL</code> links, with no pre-expansion needed (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/262">#262</a>).</li> </ul> <h2>v0.5.8</h2> <p><strong>Parser:</strong></p> <ul> <li>Macro arguments are now eagerly expanded at the call site before the body is instantiated. This fixes the "diamond" macro problem where an inner macro appeared to recurse through a parent even though no real cycle existed, and also speeds up macros that reference the same argument multiple times (the argument is expanded once instead of N times) (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/260">#260</a>).</li> </ul> <h2>v0.5.7</h2> <p><strong>Build:</strong></p> <ul> <li>Linux CLI binaries (<code>syntaqlite-linux-x64.tar.gz</code>, <code>syntaqlite-linux-arm64.tar.gz</code>) are now built inside <code>manylinux_2_28</code> containers, pinning them to glibc 2.28 (RHEL 8 / Ubuntu 20.04+ / Debian 10+) instead of inheriting <code>ubuntu-latest</code>'s glibc 2.39. Fixes <code>GLIBC_2.39 not found</code> when running the prebuilt CLI on older Linux hosts (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/258">#258</a>).</li> <li>Added a Nix flake for building and running the CLI: <code>nix build</code>, <code>nix run</code>, and consumption via <code>overlays.default</code> are all supported (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/253">#253</a>).</li> </ul> <h2>v0.5.6</h2> <p><strong>Rust API:</strong></p> <ul> <li>Added <code>AnyParsedStatement::node_token_range(node_id)</code> returning the inclusive token range for any AST node. Ranges include expansion-layer tokens, so macro-produced nodes report meaningful ranges instead of collapsing to empty (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Added <code>AnyParsedStatement::node_leading_comments</code> / <code>node_trailing_comments</code> as composition sugar over <code>node_token_range</code> + <code>token_{leading,trailing}_comments</code> for the common boundary-comment case (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Token API is now layer-aware: offsets/lengths are typed as <code>LayerOffset</code> / <code>LayerLen</code>, <code>text()</code> resolves per-layer, and <code>stmt_range()</code> drills expansion tokens up to the authored call site in source coordinates. <code>layer_id()</code> is exposed on tokens (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/247">#247</a>).</li> <li><code>Comment::layer_id</code> distinguishes authored-source comments (layer 0) from comments inside macro expansion bodies (layer > 0); <code>Comment::text()</code> resolves against the owning layer's buffer (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Removed <code>AnyParsedStatement::token_spans()</code> — use <code>tokens().map(|t| t.stmt_range())</code> instead (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/247">#247</a>).</li> </ul> <p><strong>C API:</strong></p> <ul> <li>Added <code>syntaqlite_node_token_range(p, node_id, &first, &last)</code> for O(1) inclusive token ranges per AST node, and <code>syntaqlite_node_{leading,trailing}_comments</code> for boundary comments at the node level (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li><code>SyntaqliteComment.layer_id</code> now distinguishes authored-source comments from comments inside macro expansion bodies (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> </ul> <p><strong>Formatter:</strong></p> <ul> <li>New block-comment classification rule: a block comment is trailing on the preceding token only if it is same-line with that token AND nothing else follows on the rest of the line; otherwise it is leading on the next token. Line comments are unchanged (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Fixed <code>/* c */ KEYWORD</code> losing its separator between the comment and the following keyword after the leading-comment drain cleared <code>pending</code> (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> </ul> <h2>v0.5.5</h2> <p><strong>C API:</strong></p> <ul> <li>Public-API offsets and lengths are now typed with named aliases: <code>SyntaqliteDocOffset</code> / <code>SyntaqliteStmtOffset</code> / <code>SyntaqliteLayerOffset</code> make the coordinate system explicit, and <code>SyntaqliteLength</code> replaces the parallel <code>*Len</code> aliases. <code>SyntaqliteDiagnostic</code> offsets are now documented as document-absolute even when read via <code>statement_diagnostics</code> (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/244">#244</a>).</li> </ul> <p><strong>Build:</strong></p> <ul> <li>Amalgamated headers now also suppress <code>-Wzero-as-null-pointer-constant</code> under C++ to keep Lemon-generated parser code compiling cleanly when the amalgamation is consumed from C++ (notably on Windows toolchains) (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/245">#245</a>).</li> </ul> <h2>v0.5.4</h2> <p><strong>JavaScript package:</strong></p> <ul> <li>Fixed the <code>syntaqlite</code> npm package crashing with <code>window is not defined</code> under Node and Bun. The WASM runtime is now built as an Emscripten <code>MODULARIZE</code> factory and consumed via dynamic <code>import()</code> in Node/Bun (and an injected <code><script></code> in the browser), so <code>new Engine().load()</code> works on all three runtimes. The default SQLite preset also switched to an absolute <code>import.meta.url</code> URL so <code>loadDynamicLibrary</code> resolves in Node (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/242">#242</a>).</li> <li>Added a Node smoke test (<code>npm run test:node</code>) that exercises the full <code>load → loadDefault → runFmt → runDiagnostics</code> path, wired into CI and the npm publish workflow (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/242">#242</a>).</li> </ul> <h2>v0.5.3</h2> <p><strong>Formatter:</strong></p> <ul> <li>Fixed leading comments followed by a blank line collapsing into the next element (e.g. a header comment block above <code>INCLUDE PERFETTO MODULE</code> was losing its trailing blank line) (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/238">#238</a>).</li> <li>Fixed a formatter crash on statements where comments appeared inside a verbatim-emitted span such as a <code>CREATE PERFETTO MACRO</code> body (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/238">#238</a>).</li> <li>Fixed a formatter panic on empty quoted tokens like <code>""</code> when preceded by a comment: <code>span_text</code> was collapsing any zero-length span to offset 0, so the comment-drain walk-back underflowed when computing the position of the opening quote (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/240">#240</a>).</li> <li>Fallback (unresolved) macro calls now always format through the structured path, so multi-line calls get a single canonical layout and interior comments are preserved at every argument position (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/238">#238</a>).</li> <li>Fallback macro-arg re-parses no longer silently strip parens around single-element <code>ColumnNameList</code>-shaped args (e.g. <code>_interval_intersect!(..., (utid))</code> preserves the paren so the one-element list expands correctly) (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/240">#240</a>).</li> </ul> <p><strong>Parser:</strong></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/LalitMaganti/syntaqlite/blob/main/CHANGELOG.md">syntaqlite's changelog</a>.</em></p> <blockquote> <h2>0.5.9</h2> <p><strong>Parser:</strong></p> <ul> <li>Reverted the eager macro argument expansion introduced in 0.5.8, which broke the rewrite tree shape expected by downstream consumers. The diamond-recursion case it fixed is now detected structurally by walking the expansion layer's parent chain through <code>body_call_offset == ARG_INTERNAL</code> links, with no pre-expansion needed (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/262">#262</a>).</li> </ul> <h2>0.5.8</h2> <p><strong>Parser:</strong></p> <ul> <li>Macro arguments are now eagerly expanded at the call site before the body is instantiated. This fixes the "diamond" macro problem where an inner macro appeared to recurse through a parent even though no real cycle existed, and also speeds up macros that reference the same argument multiple times (the argument is expanded once instead of N times) (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/260">#260</a>).</li> </ul> <h2>0.5.7</h2> <p><strong>Build:</strong></p> <ul> <li>Linux CLI binaries (<code>syntaqlite-linux-x64.tar.gz</code>, <code>syntaqlite-linux-arm64.tar.gz</code>) are now built inside <code>manylinux_2_28</code> containers, pinning them to glibc 2.28 (RHEL 8 / Ubuntu 20.04+ / Debian 10+) instead of inheriting <code>ubuntu-latest</code>'s glibc 2.39. Fixes <code>GLIBC_2.39 not found</code> when running the prebuilt CLI on older Linux hosts (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/258">#258</a>).</li> <li>Added a Nix flake for building and running the CLI: <code>nix build</code>, <code>nix run</code>, and consumption via <code>overlays.default</code> are all supported (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/253">#253</a>).</li> </ul> <h2>0.5.6</h2> <p><strong>Rust API:</strong></p> <ul> <li>Added <code>AnyParsedStatement::node_token_range(node_id)</code> returning the inclusive token range for any AST node. Ranges include expansion-layer tokens, so macro-produced nodes report meaningful ranges instead of collapsing to empty (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Added <code>AnyParsedStatement::node_leading_comments</code> / <code>node_trailing_comments</code> as composition sugar over <code>node_token_range</code> + <code>token_{leading,trailing}_comments</code> for the common boundary-comment case (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Token API is now layer-aware: offsets/lengths are typed as <code>LayerOffset</code> / <code>LayerLen</code>, <code>text()</code> resolves per-layer, and <code>stmt_range()</code> drills expansion tokens up to the authored call site in source coordinates. <code>layer_id()</code> is exposed on tokens (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/247">#247</a>).</li> <li><code>Comment::layer_id</code> distinguishes authored-source comments (layer 0) from comments inside macro expansion bodies (layer > 0); <code>Comment::text()</code> resolves against the owning layer's buffer (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Removed <code>AnyParsedStatement::token_spans()</code> — use <code>tokens().map(|t| t.stmt_range())</code> instead (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/247">#247</a>).</li> </ul> <p><strong>C API:</strong></p> <ul> <li>Added <code>syntaqlite_node_token_range(p, node_id, &first, &last)</code> for O(1) inclusive token ranges per AST node, and <code>syntaqlite_node_{leading,trailing}_comments</code> for boundary comments at the node level (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li><code>SyntaqliteComment.layer_id</code> now distinguishes authored-source comments from comments inside macro expansion bodies (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> </ul> <p><strong>Formatter:</strong></p> <ul> <li>New block-comment classification rule: a block comment is trailing on the preceding token only if it is same-line with that token AND nothing else follows on the rest of the line; otherwise it is leading on the next token. Previously, any block comment same-line with the preceding token was treated as trailing, conflating "annotates the prev token" with "sits between two tokens". Line comments are unchanged (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> <li>Fixed <code>/* c */ KEYWORD</code> losing its separator between the comment and the following keyword after the leading-comment drain cleared <code>pending</code> (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/248">#248</a>).</li> </ul> <h2>0.5.5</h2> <p><strong>C API:</strong></p> <ul> <li>Public-API offsets and lengths are now typed with named aliases: <code>SyntaqliteDocOffset</code> / <code>SyntaqliteStmtOffset</code> / <code>SyntaqliteLayerOffset</code> make the coordinate system explicit, and <code>SyntaqliteLength</code> replaces the parallel <code>*Len</code> aliases. <code>SyntaqliteDiagnostic</code> offsets are now documented as document-absolute even when read via <code>statement_diagnostics</code> (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/244">#244</a>).</li> </ul> <p><strong>Build:</strong></p> <ul> <li>Amalgamated headers now also suppress <code>-Wzero-as-null-pointer-constant</code> under C++ to keep Lemon-generated parser code compiling cleanly when the amalgamation is consumed from C++ (notably on Windows toolchains) (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/245">#245</a>).</li> </ul> <h2>0.5.4</h2> <p><strong>JavaScript package:</strong></p> <ul> <li>Fixed the <code>syntaqlite</code> npm package crashing with <code>window is not defined</code> under Node and Bun. The WASM runtime is now built as an Emscripten <code>MODULARIZE</code> factory and consumed via dynamic <code>import()</code> in Node/Bun (and an injected <code><script></code> in the browser), so <code>new Engine().load()</code> works on all three runtimes. The default SQLite preset also switched to an absolute <code>import.meta.url</code> URL so <code>loadDynamicLibrary</code> resolves in Node (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/242">#242</a>).</li> <li>Added a Node smoke test (<code>npm run test:node</code>) that exercises the full <code>load → loadDefault → runFmt → runDiagnostics</code> path, wired into CI and the npm publish workflow (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/pull/242">#242</a>).</li> </ul> <h2>0.5.3</h2> <p><strong>Formatter:</strong></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/b1821643fd6bc497cc723dcf0cdc31244f3be65f"><code>b182164</code></a> synq: bump version to 0.5.9 (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/263">#263</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/2792e651d6b2ec603dd4dbf5207aa18d0cd1f923"><code>2792e65</code></a> synq: recursion check via layer parent chain, not a separate stack (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/262">#262</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/e66cc1297435d12c36bb6a3ecc8882bc2e071ccb"><code>e66cc12</code></a> synq: bump version to 0.5.8 (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/261">#261</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/0cb9677d920d8a527534e8ef3448606e572fbfbb"><code>0cb9677</code></a> synq: eagerly expand macro args (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/260">#260</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/00acd3a86a348ba3ea753c1ad8731220a109f538"><code>00acd3a</code></a> synq: bump version to 0.5.7 (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/259">#259</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/f6e6a84bc2e8651c84da4c6946ba4c1de3539f95"><code>f6e6a84</code></a> synq: build Linux CLI in manylinux_2_28 for glibc compat (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/258">#258</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/1724e96ecd0b6dbd0c532014ed998e2056e23c70"><code>1724e96</code></a> synq: split multi-word keywords in .synq fmt blocks (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/256">#256</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/951028a051a28c64f7eea297d49fc8f314a9138f"><code>951028a</code></a> synq: enable workflow_dispatch for nix CI (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/255">#255</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/664db5ab5bb1ef200328442638ee64dd9e01582a"><code>664db5a</code></a> synq: add advisory nix flake CI (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/254">#254</a>)</li> <li><a href="https://github.com/LalitMaganti/syntaqlite/commit/f6e707480d94b4e6ca4c0fdfa514ce5bad588cfe"><code>f6e7074</code></a> synq: Add Nix flake for the CLI (<a href="https://redirect.github.com/LalitMaganti/syntaqlite/issues/253">#253</a>)</li> <li>Additional commits viewable in <a href="https://github.com/LalitMaganti/syntaqlite/compare/v0.1.0...v0.5.9">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> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
