diff --git a/staged/.npmrc b/staged/.npmrc new file mode 100644 index 0000000..214c29d --- /dev/null +++ b/staged/.npmrc @@ -0,0 +1 @@ +registry=https://registry.npmjs.org/ diff --git a/staged/AGENTS.md b/staged/AGENTS.md index 4b61701..b006ab4 100644 --- a/staged/AGENTS.md +++ b/staged/AGENTS.md @@ -61,11 +61,15 @@ All components use `var(--*)` for colors—no hardcoded values. ## Commands ```bash +just install # First-time setup (deps + git hooks) just dev # Run with hot-reload (human runs this) -just fmt # Format all code +just build # Production build +just fmt # Auto-format all code just lint # Clippy for Rust -just typecheck # Type check everything -just check-all # All checks before submitting +just typecheck # Type-check frontend + backend +just check-all # Format + lint + typecheck (run before pushing) +just ci # Same checks without modifying files (for CI) +just clean # Nuke all build artifacts and dependencies ``` **Note:** The human runs the dev server. Don't start it yourself. @@ -74,8 +78,7 @@ just check-all # All checks before submitting Before finishing work: ```bash -just fmt # Auto-format Rust + TypeScript/Svelte -just check-all # Verify everything passes +just check-all # Auto-formats, then verifies lint + types pass ``` ## Git Workflow diff --git a/staged/justfile b/staged/justfile index 57f5f8f..a19fff5 100644 --- a/staged/justfile +++ b/staged/justfile @@ -1,41 +1,39 @@ # Staged - Git Diff Viewer +# Run `just install` once after cloning, then `just dev` to start. + +# ============================================================================ +# Development +# ============================================================================ # Run the app in development mode (optionally point to another repo) -dev repo="": _ensure-deps +dev repo="": #!/usr/bin/env bash set -euo pipefail + # Pick a free port so multiple worktrees can run simultaneously VITE_PORT=$(python3 -c 'import socket; s=socket.socket(); s.bind(("",0)); print(s.getsockname()[1]); s.close()') export VITE_PORT - - # Build Tauri config with dynamic port TAURI_CONFIG="{\"build\":{\"devUrl\":\"http://localhost:${VITE_PORT}\"}}" - - # Check if we're in a worktree and generate custom icon + + # In worktrees, generate a labeled icon so you can tell instances apart if git rev-parse --is-inside-work-tree &>/dev/null; then GIT_DIR=$(git rev-parse --git-dir) if [[ "$GIT_DIR" == *".git/worktrees/"* ]]; then - # Get branch name and take only the last component (after final /) BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD) - WORKTREE_NAME="${BRANCH_NAME##*/}" - echo "Worktree detected, branch: ${BRANCH_NAME}, label: ${WORKTREE_NAME}" - - # Generate dev icon with worktree label + WORKTREE_LABEL="${BRANCH_NAME##*/}" + ICON_DIR="$(pwd)/src-tauri/target/dev-icons" mkdir -p "$ICON_DIR" DEV_ICON="$ICON_DIR/icon.icns" - - if swift scripts/generate-dev-icon.swift src-tauri/icons/icon.icns "$DEV_ICON" "$WORKTREE_NAME"; then - echo "Generated dev icon with label: ${WORKTREE_NAME}" - # Add icon override to Tauri config + + if swift scripts/generate-dev-icon.swift src-tauri/icons/icon.icns "$DEV_ICON" "$WORKTREE_LABEL"; then + echo "🌳 Worktree: ${WORKTREE_LABEL}" TAURI_CONFIG="{\"build\":{\"devUrl\":\"http://localhost:${VITE_PORT}\"},\"bundle\":{\"icon\":[\"$DEV_ICON\"]}}" - else - echo "Warning: Failed to generate dev icon, using default" fi fi fi - - echo "Starting dev server on port ${VITE_PORT}" + + echo "Starting on port ${VITE_PORT}" {{ if repo != "" { "export STAGED_REPO=" + repo } else { "" } }} npx tauri dev --config "$TAURI_CONFIG" @@ -43,54 +41,46 @@ dev repo="": _ensure-deps build: npm run tauri:build -# Run just the frontend (for quick UI iteration) -frontend: - npm run dev - # ============================================================================ # Code Quality # ============================================================================ -# Format all code (Rust + TypeScript/Svelte) +# Auto-format all code fmt: cd src-tauri && cargo fmt npx prettier --write "src/**/*.{ts,svelte,css,html}" -# Check formatting without modifying files +# Verify formatting without modifying files (used by CI/hooks) fmt-check: cd src-tauri && cargo fmt --check npx prettier --check "src/**/*.{ts,svelte,css,html}" -# Lint Rust code +# Lint Rust code with clippy lint: cd src-tauri && cargo clippy -- -D warnings -# Type check everything +# Type-check frontend (Svelte + TypeScript) and backend (Rust) typecheck: npm run check cd src-tauri && cargo check -# Run all checks (format, lint, typecheck) - use before submitting work -check-all: fmt-check lint typecheck +# Format, then verify everything passes — run before pushing +check-all: fmt lint typecheck + +# Verify everything without modifying files — for CI +ci: fmt-check lint typecheck # ============================================================================ # Setup & Maintenance # ============================================================================ -# Install deps if needed (runs silently if already installed) -_ensure-deps: - @[ -d node_modules/.package-lock.json ] || npm install - @[ -d src-tauri/target/debug ] || (cd src-tauri && cargo fetch) - -# Install dependencies +# First-time setup: install all dependencies and git hooks install: - rustup default stable npm install - lefthook install cd src-tauri && cargo fetch + lefthook install -# Clean build artifacts +# Delete all build artifacts and dependencies clean: - rm -rf dist + rm -rf dist node_modules rm -rf src-tauri/target - rm -rf node_modules diff --git a/staged/package-lock.json b/staged/package-lock.json index a89346d..0be70c1 100644 --- a/staged/package-lock.json +++ b/staged/package-lock.json @@ -8,9 +8,9 @@ "name": "staged", "version": "0.1.0", "dependencies": { - "@tauri-apps/api": "^2.0.0", + "@tauri-apps/api": "^2.10.0", "@tauri-apps/plugin-clipboard-manager": "^2.3.2", - "@tauri-apps/plugin-dialog": "^2.4.2", + "@tauri-apps/plugin-dialog": "^2.6.0", "@tauri-apps/plugin-store": "^2.4.2", "ansi-to-html": "^0.7.2", "dompurify": "^3.3.1", @@ -20,7 +20,7 @@ }, "devDependencies": { "@sveltejs/vite-plugin-svelte": "^6.2.1", - "@tauri-apps/cli": "^2.9.6", + "@tauri-apps/cli": "^2.10.0", "@tsconfig/svelte": "^5.0.6", "@types/dompurify": "^3.0.5", "@types/node": "^24.10.1", @@ -2060,9 +2060,9 @@ } }, "node_modules/svelte": { - "version": "5.49.2", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.49.2.tgz", - "integrity": "sha512-PYLwnngYzyhKzqDlGVlCH4z+NVI8mC0/bTv15vw25CcdOhxENsOHIbQ36oj5DIf3oBazM+STbCAvaskpxtBmWA==", + "version": "5.50.0", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.50.0.tgz", + "integrity": "sha512-FR9kTLmX5i0oyeQ5j/+w8DuagIkQ7MWMuPpPVioW2zx9Dw77q+1ufLzF1IqNtcTXPRnIIio4PlasliVn43OnbQ==", "license": "MIT", "peer": true, "dependencies": { diff --git a/staged/package.json b/staged/package.json index bed6688..3764d50 100644 --- a/staged/package.json +++ b/staged/package.json @@ -14,7 +14,7 @@ }, "devDependencies": { "@sveltejs/vite-plugin-svelte": "^6.2.1", - "@tauri-apps/cli": "^2.9.6", + "@tauri-apps/cli": "^2.10.0", "@tsconfig/svelte": "^5.0.6", "@types/dompurify": "^3.0.5", "@types/node": "^24.10.1", @@ -26,9 +26,9 @@ "vite": "^7.2.4" }, "dependencies": { - "@tauri-apps/api": "^2.0.0", + "@tauri-apps/api": "^2.10.0", "@tauri-apps/plugin-clipboard-manager": "^2.3.2", - "@tauri-apps/plugin-dialog": "^2.4.2", + "@tauri-apps/plugin-dialog": "^2.6.0", "@tauri-apps/plugin-store": "^2.4.2", "ansi-to-html": "^0.7.2", "dompurify": "^3.3.1", diff --git a/staged/src-tauri/Cargo.lock b/staged/src-tauri/Cargo.lock index 8668e17..8000297 100644 --- a/staged/src-tauri/Cargo.lock +++ b/staged/src-tauri/Cargo.lock @@ -133,27 +133,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -[[package]] -name = "ashpd" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cbdf310d77fd3aaee6ea2093db7011dc2d35d2eb3481e5607f1f8d942ed99df" -dependencies = [ - "enumflags2", - "futures-channel", - "futures-util", - "rand 0.9.2", - "raw-window-handle", - "serde", - "serde_repr", - "tokio", - "url", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "zbus", -] - [[package]] name = "async-broadcast" version = "0.7.2" @@ -166,17 +145,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "async-recursion" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.111", -] - [[package]] name = "async-trait" version = "0.1.89" @@ -958,15 +926,6 @@ dependencies = [ "syn 2.0.111", ] -[[package]] -name = "dlib" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" -dependencies = [ - "libloading", -] - [[package]] name = "dlopen2" version = "0.8.2" @@ -1061,33 +1020,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "endi" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66b7e2430c6dff6a955451e2cfc438f09cea1965a9d6f87f7e3b90decc014099" - -[[package]] -name = "enumflags2" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1027f7680c853e056ebcec683615fb6fbbc07dbaa13b4d5d9442b146ded4ecef" -dependencies = [ - "enumflags2_derive", - "serde", -] - -[[package]] -name = "enumflags2_derive" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.111", -] - [[package]] name = "env_filter" version = "0.1.4" @@ -1382,19 +1314,6 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" -[[package]] -name = "futures-lite" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" -dependencies = [ - "fastrand", - "futures-core", - "futures-io", - "parking", - "pin-project-lite", -] - [[package]] name = "futures-macro" version = "0.3.31" @@ -2003,9 +1922,9 @@ dependencies = [ [[package]] name = "ico" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc50b891e4acf8fe0e71ef88ec43ad82ee07b3810ad09de10f1d01f072ed4b98" +checksum = "3e795dff5605e0f04bff85ca41b51a96b83e80b281e96231bcaaf1ac35103371" dependencies = [ "byteorder", "png 0.17.16", @@ -2670,19 +2589,6 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" -[[package]] -name = "nix" -version = "0.30.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" -dependencies = [ - "bitflags 2.10.0", - "cfg-if", - "cfg_aliases", - "libc", - "memoffset", -] - [[package]] name = "nodrop" version = "0.1.14" @@ -3271,16 +3177,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" -[[package]] -name = "ordered-stream" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" -dependencies = [ - "futures-core", - "pin-project-lite", -] - [[package]] name = "os_pipe" version = "1.2.3" @@ -3992,41 +3888,6 @@ dependencies = [ "bytecheck", ] -[[package]] -name = "reqwest" -version = "0.12.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-core", - "futures-util", - "http", - "http-body", - "http-body-util", - "hyper", - "hyper-util", - "js-sys", - "log", - "percent-encoding", - "pin-project-lite", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "tokio", - "tokio-util", - "tower", - "tower-http", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "wasm-streams", - "web-sys", -] - [[package]] name = "reqwest" version = "0.13.1" @@ -4037,6 +3898,7 @@ dependencies = [ "bytes", "encoding_rs", "futures-core", + "futures-util", "h2", "http", "http-body", @@ -4058,22 +3920,23 @@ dependencies = [ "sync_wrapper", "tokio", "tokio-rustls", + "tokio-util", "tower", "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", + "wasm-streams", "web-sys", ] [[package]] name = "rfd" -version = "0.15.4" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef2bee61e6cffa4635c72d7d81a84294e28f0930db0ddcb0f66d10244674ebed" +checksum = "a15ad77d9e70a92437d8f74c35d99b4e4691128df018833e99f90bcd36152672" dependencies = [ - "ashpd", "block2 0.6.2", "dispatch2", "glib-sys", @@ -4089,7 +3952,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -4275,12 +4138,6 @@ version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" -[[package]] -name = "ryu" -version = "1.0.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62049b2877bf12821e8f9ad256ee38fdc31db7387ec2d3b3f403024de2034aea" - [[package]] name = "same-file" version = "1.0.6" @@ -4363,12 +4220,6 @@ dependencies = [ "syn 2.0.111", ] -[[package]] -name = "scoped-tls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" - [[package]] name = "scopeguard" version = "1.2.0" @@ -4527,18 +4378,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - [[package]] name = "serde_with" version = "3.16.1" @@ -4769,7 +4608,7 @@ dependencies = [ "notify", "notify-debouncer-full", "open", - "reqwest 0.13.1", + "reqwest", "rusqlite", "serde", "serde_json", @@ -4789,12 +4628,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - [[package]] name = "string_cache" version = "0.8.9" @@ -5026,9 +4859,9 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tauri" -version = "2.9.5" +version = "2.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a3868da5508446a7cd08956d523ac3edf0a8bc20bf7e4038f9a95c2800d2033" +checksum = "463ae8677aa6d0f063a900b9c41ecd4ac2b7ca82f0b058cc4491540e55b20129" dependencies = [ "anyhow", "bytes", @@ -5054,7 +4887,7 @@ dependencies = [ "percent-encoding", "plist", "raw-window-handle", - "reqwest 0.12.28", + "reqwest", "serde", "serde_json", "serde_repr", @@ -5077,9 +4910,9 @@ dependencies = [ [[package]] name = "tauri-build" -version = "2.5.3" +version = "2.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17fcb8819fd16463512a12f531d44826ce566f486d7ccd211c9c8cebdaec4e08" +checksum = "ca7bd893329425df750813e95bd2b643d5369d929438da96d5bbb7cc2c918f74" dependencies = [ "anyhow", "cargo_toml", @@ -5099,9 +4932,9 @@ dependencies = [ [[package]] name = "tauri-codegen" -version = "2.5.2" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa9844cefcf99554a16e0a278156ae73b0d8680bbc0e2ad1e4287aadd8489cf" +checksum = "aac423e5859d9f9ccdd32e3cf6a5866a15bedbf25aa6630bcb2acde9468f6ae3" dependencies = [ "base64 0.22.1", "brotli", @@ -5126,9 +4959,9 @@ dependencies = [ [[package]] name = "tauri-macros" -version = "2.5.2" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3764a12f886d8245e66b7ee9b43ccc47883399be2019a61d80cf0f4117446fde" +checksum = "1b6a1bd2861ff0c8766b1d38b32a6a410f6dc6532d4ef534c47cfb2236092f59" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -5172,9 +5005,9 @@ dependencies = [ [[package]] name = "tauri-plugin-dialog" -version = "2.4.2" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "313f8138692ddc4a2127c4c9607d616a46f5c042e77b3722450866da0aad2f19" +checksum = "9204b425d9be8d12aa60c2a83a289cf7d1caae40f57f336ed1155b3a5c0e359b" dependencies = [ "log", "raw-window-handle", @@ -5190,9 +5023,9 @@ dependencies = [ [[package]] name = "tauri-plugin-fs" -version = "2.4.4" +version = "2.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47df422695255ecbe7bac7012440eddaeefd026656171eac9559f5243d3230d9" +checksum = "ed390cc669f937afeb8b28032ce837bac8ea023d975a2e207375ec05afaf1804" dependencies = [ "anyhow", "dunce", @@ -5212,9 +5045,9 @@ dependencies = [ [[package]] name = "tauri-plugin-log" -version = "2.7.1" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5709c792b8630290b5d9811a1f8fe983dd925fc87c7fc7f4923616458cd00b6" +checksum = "7545bd67f070a4500432c826e2e0682146a1d6712aee22a2786490156b574d93" dependencies = [ "android_logger", "byte-unit", @@ -5294,9 +5127,9 @@ dependencies = [ [[package]] name = "tauri-runtime" -version = "2.9.2" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f766fe9f3d1efc4b59b17e7a891ad5ed195fa8d23582abb02e6c9a01137892" +checksum = "b885ffeac82b00f1f6fd292b6e5aabfa7435d537cef57d11e38a489956535651" dependencies = [ "cookie", "dpi", @@ -5319,9 +5152,9 @@ dependencies = [ [[package]] name = "tauri-runtime-wry" -version = "2.9.3" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "187a3f26f681bdf028f796ccf57cf478c1ee422c50128e5a0a6ebeb3f5910065" +checksum = "5204682391625e867d16584fedc83fc292fb998814c9f7918605c789cd876314" dependencies = [ "gtk", "http", @@ -5346,9 +5179,9 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a423c51176eb3616ee9b516a9fa67fed5f0e78baaba680e44eb5dd2cc37490" +checksum = "fcd169fccdff05eff2c1033210b9b94acd07a47e6fa9a3431cf09cfd4f01c87e" dependencies = [ "anyhow", "brotli", @@ -5543,7 +5376,6 @@ dependencies = [ "signal-hook-registry", "socket2", "tokio-macros", - "tracing", "windows-sys 0.61.2", ] @@ -5834,17 +5666,6 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" -[[package]] -name = "uds_windows" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9" -dependencies = [ - "memoffset", - "tempfile", - "winapi", -] - [[package]] name = "unic-char-property" version = "0.9.0" @@ -6128,7 +5949,6 @@ dependencies = [ "cc", "downcast-rs", "rustix", - "scoped-tls", "smallvec", "wayland-sys", ] @@ -6187,8 +6007,6 @@ version = "0.31.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34949b42822155826b41db8e5d0c1be3a2bd296c747577a43a3e6daefc296142" dependencies = [ - "dlib", - "log", "pkg-config", ] @@ -6214,9 +6032,9 @@ dependencies = [ [[package]] name = "webkit2gtk" -version = "2.0.1" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76b1bc1e54c581da1e9f179d0b38512ba358fb1af2d634a1affe42e37172361a" +checksum = "a1027150013530fb2eaf806408df88461ae4815a45c541c8975e61d6f2fc4793" dependencies = [ "bitflags 1.3.2", "cairo-rs", @@ -6238,9 +6056,9 @@ dependencies = [ [[package]] name = "webkit2gtk-sys" -version = "2.0.1" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62daa38afc514d1f8f12b8693d30d5993ff77ced33ce30cd04deebc267a6d57c" +checksum = "916a5f65c2ef0dfe12fff695960a2ec3d4565359fdbb2e9943c974e06c734ea5" dependencies = [ "bitflags 1.3.2", "cairo-sys-rs", @@ -6878,9 +6696,9 @@ checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" [[package]] name = "wry" -version = "0.53.5" +version = "0.54.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728b7d4c8ec8d81cab295e0b5b8a4c263c0d41a785fb8f8c4df284e5411140a2" +checksum = "5ed1a195b0375491dd15a7066a10251be217ce743cf4bbbbdcf5391d6473bee0" dependencies = [ "base64 0.22.1", "block2 0.6.2", @@ -7000,62 +6818,6 @@ dependencies = [ "synstructure", ] -[[package]] -name = "zbus" -version = "5.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b622b18155f7a93d1cd2dc8c01d2d6a44e08fb9ebb7b3f9e6ed101488bad6c91" -dependencies = [ - "async-broadcast", - "async-recursion", - "async-trait", - "enumflags2", - "event-listener", - "futures-core", - "futures-lite", - "hex", - "nix", - "ordered-stream", - "serde", - "serde_repr", - "tokio", - "tracing", - "uds_windows", - "uuid", - "windows-sys 0.61.2", - "winnow 0.7.14", - "zbus_macros", - "zbus_names", - "zvariant", -] - -[[package]] -name = "zbus_macros" -version = "5.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cdb94821ca8a87ca9c298b5d1cbd80e2a8b67115d99f6e4551ac49e42b6a314" -dependencies = [ - "proc-macro-crate 3.4.0", - "proc-macro2", - "quote", - "syn 2.0.111", - "zbus_names", - "zvariant", - "zvariant_utils", -] - -[[package]] -name = "zbus_names" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7be68e64bf6ce8db94f63e72f0c7eb9a60d733f7e0499e628dfab0f84d6bcb97" -dependencies = [ - "serde", - "static_assertions", - "winnow 0.7.14", - "zvariant", -] - [[package]] name = "zerocopy" version = "0.8.31" @@ -7171,44 +6933,3 @@ checksum = "410e9ecef634c709e3831c2cfdb8d9c32164fae1c67496d5b68fff728eec37fe" dependencies = [ "zune-core 0.5.1", ] - -[[package]] -name = "zvariant" -version = "5.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2be61892e4f2b1772727be11630a62664a1826b62efa43a6fe7449521cb8744c" -dependencies = [ - "endi", - "enumflags2", - "serde", - "url", - "winnow 0.7.14", - "zvariant_derive", - "zvariant_utils", -] - -[[package]] -name = "zvariant_derive" -version = "5.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da58575a1b2b20766513b1ec59d8e2e68db2745379f961f86650655e862d2006" -dependencies = [ - "proc-macro-crate 3.4.0", - "proc-macro2", - "quote", - "syn 2.0.111", - "zvariant_utils", -] - -[[package]] -name = "zvariant_utils" -version = "3.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6949d142f89f6916deca2232cf26a8afacf2b9fdc35ce766105e104478be599" -dependencies = [ - "proc-macro2", - "quote", - "serde", - "syn 2.0.111", - "winnow 0.7.14", -] diff --git a/staged/src-tauri/Cargo.toml b/staged/src-tauri/Cargo.toml index dea0a24..dc0f32f 100644 --- a/staged/src-tauri/Cargo.toml +++ b/staged/src-tauri/Cargo.toml @@ -14,14 +14,14 @@ name = "staged_lib" crate-type = ["staticlib", "cdylib", "rlib"] [build-dependencies] -tauri-build = { version = "2.5.3", features = [] } +tauri-build = { version = "2.5.5", features = [] } [dependencies] serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } log = "0.4" -tauri = { version = "2.9.5", features = [] } -tauri-plugin-log = "2" +tauri = { version = "2.10.2", features = [] } +tauri-plugin-log = "2.8.0" # Git integration git2 = "0.19" @@ -36,7 +36,7 @@ ignore = "0.4" # Syntax highlighting syntect = "5.2" -tauri-plugin-dialog = "2.4.2" +tauri-plugin-dialog = "2.6.0" # Review storage rusqlite = { version = "0.38", features = ["bundled"] } @@ -44,7 +44,7 @@ uuid = { version = "1.0", features = ["v4", "serde"] } chrono = { version = "0.4", features = ["serde"] } dirs = "5.0" tauri-plugin-clipboard-manager = "2.3.2" -tauri-plugin-window-state = "2" +tauri-plugin-window-state = "2.4.1" reqwest = { version = "0.13.1", features = ["json"] } tokio = { version = "1.49.0", features = ["sync", "process", "io-util", "macros", "rt-multi-thread"] } open = "5" @@ -53,7 +53,7 @@ open = "5" agent-client-protocol = "0.9" # MCP Bridge for automation/testing (debug only) -tauri-plugin-mcp-bridge = "0.8" +tauri-plugin-mcp-bridge = "0.8.1" async-trait = "0.1" tokio-util = { version = "0.7", features = ["compat"] } futures = "0.3"