Repository navigation
Fix/dependency security - #239
Merged
Merged
Conversation
Rust: rustls 0.23.46, rustls-webpki 0.103.16, webpki-roots and webpki-root-certs 1.0.11, quinn-proto 0.11.19, crossbeam-epoch 0.9.21, quick-xml 0.42 (via plist 1.10), tokio 1.54. The app's own zip moves 2 -> 9 with only the deflate codec; extract() no longer follows symlinks or keeps SUID bits from downloaded CLI archives. Frontend: vite, postcss, nanoid, brace-expansion, babel patched in range; vitest 3 -> 4 (tinypool RCE, dev-only); monaco-editor 0.55 -> 0.57 (bundled DOMPurify). 0.57 dropped edcore.main.js and moved the suggest widget and document semantic tokens out of the shared feature list, so the slim entry now mirrors editor.main.js minus languages, and monacoSetup.test.ts fails if an upgrade adds a contribution it misses. Docs site: in-range Astro dependency fixes. cli.rs: drop the CommandExt import that newer tokio makes unused (Windows clippy -D warnings failed). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Roadmap: every item on it was closed (#7, #8, #11, #38, #40, #41, #44, #46); they move to a "Recently shipped" list, and Now/Next/Later are rebuilt from open issues (#10, #39, #185, #237, #149, #24, #186, #91, #2) plus the vault, SSH and signing follow-ups. New pages: completion and navigation, psql console, exporting results, saved queries and Multi Query. Corrected claims that didn't match the code: there is no master-password or unlock step, the master key isn't in the OS keychain, there's no exponential lockout or magic-header file format, psql isn't auto-downloaded or version-matched, Ctrl+T/Ctrl+Alt+H/Ctrl+Y/Ctrl+W don't do what the shortcuts page said, keymap edits aren't applied to the editor yet, there's no SSL selector, and the explain page link was dead. Security pages no longer point at the encryption source file. macOS is listed as universal, and site.ts recognises the _universal.dmg asset so the download page keeps its macOS button. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
Resolves the conflicts with #238: - monacoSetup.ts: Monaco 0.57 slim entry plus QueryDen's own SQL grammar (registerSqlLanguage); Monaco's built-in SQL registration is dropped so its lazy loader can't overwrite the grammar. - CHANGELOG.md: Security section kept above the merged release notes. - byo-key.mdx, install.mdx: this branch's edits of main's versions. Follow-ups the merge needed: - sqlLanguage.test.ts / sqlCompletionAdapter.test.ts import monaco-editor/<path> (0.57's export map no longer serves esm/vs/...). - export.rs test reads entry names through zip 9's Result-returning API. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The tunnel thread sent its error to the caller first and removed its registry entry afterwards. In between, create_ssh_tunnel returned any registered entry as a live tunnel, so a retry right after a failure (fixing a mistyped password, say) could be handed the dead tunnel's port and then time out connecting to the database. On slower CI runners tunnel_creation_reports_the_real_failure_immediately caught the window. The caller now unregisters its own tunnel before returning the error, and every removal checks the entry is still the same tunnel, so a late- exiting old tunnel can't delete its replacement's entry. Reproduced by delaying the thread's cleanup by 50 ms: the old code fails the test, the fix passes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Clears most of the open Dependabot / RustSec advisories across the app, the Rust backend and the docs site. It also brings the website
docs and roadmap in line with what the app actually does.
The dependency changes are lockfile-level apart from three upgrades:
zip2 → 9 (QueryDen's own dependency)vitest3 → 4 (dev only)monaco-editor0.55 → 0.57, which needed a rework of the slim Monaco entry; a new guard test keeps it complete.Flagged areas: none of
storage.rs,updater.rs,capabilities/or the AI code path are touched.tauri-plugin-updaterstays atthe same version.
Related issue
Partly addresses #185:
devalueis fixed. Theglibandrandwarnings come in through Tauri/GTK and can't be bumped from here.Related: #186 (Node runtime). The docs site's remaining Astro alert needs Node ≥ 22.23.4.
Changes
Rust (
src-tauri/Cargo.lock,Cargo.toml)fixes.
.xlsxexport).extract()no longer follows symlinks out of thetarget directory or keeps SUID/SGID bits. Only the
deflatefeature is enabled, which drops the bzip2/lzma C libraries zip pulled in bydefault.
cli.rs: removed theCommandExtimport that newer tokio makes unused. Windowsclippy -D warningsfailed on it.Frontend (
package.json,package-lock.json)edcore.main.js, and its export map now resolvesmonaco-editor/<path>toesm/vs/<path>.autocompletion.
monacoSetup.tsnow mirrorseditor/editor.main.jsminus the language packs, plus the built-in SQL language.monacoSetup.test.tsfails if a future Monaco release adds an editor contribution the slim entry doesn't import. I checked thatit fails when
suggestControlleris removed.Docs site (
website/package-lock.json)Docs and roadmap (
website/src)Now/Next/Later are rebuilt from open issues (AIAssistantDialog.tsx is a setTimeout stub — no LLM is actually called #10, Expose a CLI tools management UI (Settings → CLI Tools) #39, Resolve 3 open Dependabot alerts (devalue high, glib medium, rand low) #185, Refresh database list #237, Establish design system and apply it consistently across the app #149, Testing infrastructure roadmap #24, CI: GitHub Actions still on Node.js 20 runtime (forced to Node 24 on 2026-06-02) #186, Feature: allow downgrading to a previous version #91, refactor: split ConnectionContext into focused hooks #1–refactor: extract EXPLAIN parsers and AI client from VisualOptimizer #6, Adopt ESLint for frontend static analysis #33) plus the vault, SSH and signing
follow-ups.
file format;
Ctrl+T,Ctrl+Alt+H,Ctrl+Y,Ctrl+W), and keymap edits aren't applied to the editor yet;/docs/editor/explainlink.pillars, Linux glibc 2.35, macOS universal).
site.tsrecognises_universal.dmgassets, so the download page keeps its macOS button once the universal build ships.CHANGELOG.md: new Security section under Unreleased.Not fixable in this PR
zip4.6.1 insidetauri-plugin-updater: even 2.14 requireszip ^4, and there's no patched 4.x. Update archives areminisign-verified before extraction.
rsa(RUSTSEC-2023-0071) in sqlx's MySQL driver: no fixed release. QueryDen only encrypts with the server's public key.rkyv0.7: present inCargo.lockas an optional dependency ofrust_decimal, not compiled in.astro(critical, AVIF image optimization at build time),sharpandesbuildneed Astro 7, which requires Node ≥22.23.4 on the build host (Vercel). Astro 6 already requires ≥ 22.12.
Testing notes
npx tsc --noEmit: clean.npm test: 27 files, 395 tests pass on Vitest 4, including the new Monaco guard test.npx vite build: OK. Onlyeditor.workeris bundled, no language packs.cargo clippy --all-targets -- -D warnings: clean on Linux and onx86_64-pc-windows-msvc(cargo-xwin).npm run buildon Node 22.23.4: 31 pages built, Pagefind indexed 19 docs pages, all internal doc links resolve.Ctrl+Space,schema.), parameter hints, find(
Ctrl+F), Ctrl+Enter and table/alias colouring. Also confirm the Definition and Compare dialogs highlight SQL.fix/cli-tools-editor-intelligencePR (per-tab sessions, completion, psqlconsole, exports). The site deploys on release, so merge both before the next release. Expect small conflicts in
install.mdxandbyo-key.mdxwhen the second one merges.Checklist
npm run tauri devornpm run tauri build) and verified the change works.npx tsc --noEmit).cargo check --manifest-path src-tauri/Cargo.toml). Also clippy-D warningson Linux and the Windows MSVCtarget.
#[tauri::command], I registered it insrc-tauri/src/lib.rs'sgenerate_handler!. (No new commands.)CHANGELOG.mdunder## [Unreleased].storage.rs,updater.rs,capabilities/, or the AI assistant code path, I flagged it in the summary above.(None touched.)