Skip to content

Releases: dickwu/r2

R2 Client v0.2.8

15 May 21:37

Choose a tag to compare

What's Changed

Improvements / Maintenance

  • Bump JS dependencies: antd 6.3.7 → 6.4.2, @ant-design/icons 6.2.2 → 6.2.3, AWS SDK 3.1045 → 3.1048, @smithy/fetch-http-handler 5.3.17 → 5.4.3, @types/node 25.6.2 → 25.8.0
  • Regenerate JS and Rust dependency lockfiles

Full Changelog: v0.2.6...v0.2.8

Note: v0.2.7 was skipped due to a CI lockfile sync issue; v0.2.8 ships the same upgrades plus the fix.

R2 Client v0.2.6

11 May 17:42

Choose a tag to compare

What's Changed

Bug Fixes

  • Encode object keys when constructing public URLs for R2, AWS, MinIO, and RustFS. Keys containing spaces, Unicode, or reserved characters (#, ?, %, +) now produce valid URLs while path separators are preserved.

Maintenance

  • Keep the Homebrew tap cask installable locally by removing the unsupported license stanza from the generated cask.
  • Refresh JS and Rust dependency lockfiles (AWS SDK 3.1045, Next.js 16.2.6, React 19.2.6, TanStack Query 5.100.10, Tailwind 4.3, zustand 5.0.13, @tauri-apps/cli 2.11.1, plus transitive Rust bumps).

Full Changelog: v0.2.5...v0.2.6

R2 Client v0.2.5

04 May 22:46

Choose a tag to compare

Changes since v0.2.1

  • Added release quality gates before desktop packaging: frozen Bun installs, frontend checks, Rust format, clippy, and workspace tests.
  • Hardened CI and release reproducibility across GitHub runners with pinned Bun, LF checkout normalization, and generated Next env formatting excluded from Prettier gates.
  • Fixed platform-scoped Tauri menu imports so Linux clippy passes with -D warnings.
  • Made automated release bump commits follow the repo Lore commit protocol.

Verification

  • CI passed on Ubuntu, Windows, macOS x64, and macOS arm64.
  • Release packaging passed on Ubuntu, Windows, macOS x64, and macOS arm64.

R2 Client v0.2.1

29 Apr 21:54

Choose a tag to compare

What's Changed

New Features

  • Inline account management: SettingsModal Account tab now embeds the full add / edit / remove flow (R2, AWS S3, MinIO, RustFS, API tokens) instead of bouncing to a separate window.
  • Account edit modal lets you update existing account credentials and metadata in place.
  • Floating sync banner auto-shows during sync pipelines and self-hides when idle.
  • Transfer dock auto-dismisses 2.5s after every task reaches a terminal state and clears finished entries from the upload/download/move stores.

Improvements

  • Sidebar "Add account" and the settings cog now route directly into Settings → Account.
  • Settings modal footer simplified to a single "Done" button.
  • Expanded design tokens in globals.css for the new account and banner surfaces.

Full Changelog: v0.2.0...v0.2.1

R2 Client v0.2.0

29 Apr 15:49

Choose a tag to compare

What's Changed

New Features

  • Redesigned app shell with custom Titlebar, Toolbar, Inspector panel, TransferDock, and EmptyState components
  • Command palette (⌘K) for quick navigation and actions
  • Settings modal with appearance / accent customization
  • Selection action bar for batch operations on selected files
  • Toast notification system alongside antd messages
  • Global keyboard shortcuts via new useGlobalShortcuts hook
  • New design tokens (light/dark, accent system, typography scale) with Inter / Inter Tight / JetBrains Mono fonts

Bug Fixes

  • Serialize tauri-action releases to a single shared draft to avoid parallel-draft races during multi-platform builds

Improvements

  • Refactored AccountSidebar, FileGridView, FileListView into composable row/tile components (AccountSidebarRows, FileGridTile, FileListRow)
  • Replaced PathBreadcrumb with new Crumbs component
  • Modernized Modal primitive (ui/Modal.tsx) reused across rename/delete/preview flows
  • Bumped antd 6.3.7, aws-sdk 3.1038, react-query 5.100.6, react-virtuoso, framer-motion, postcss, prettier-plugin-tailwindcss

Full Changelog: v0.1.77...v0.2.0

R2 Client v0.1.77

27 Apr 21:11

Choose a tag to compare

What's Changed

New Features

  • Lazy listing now accepts a force_refresh flag to bypass the cache TTL on demand.
  • Background sync for RustFS walks the bucket via delimiter listing to mirror lazy browsing.

Improvements

  • Serialize concurrent S3 list calls and retry once on transient failures for steadier syncs.
  • Background sync uses a run_id plus dedicated mutex so superseded runs no longer emit stale results.
  • Folder-size cache reuses metadata only when counts are proven, skipping zero/null placeholders that were going stale.
  • Folder item building/sorting moved into a shared loadFolderItems utility used by useR2Files.

Maintenance

  • Bump GitHub Actions: actions/checkout@v5 and actions/upload-artifact@v6.
  • Add unit tests for folderItems and folderSizeStore reuse logic.

Full Changelog: v0.1.76...v0.1.77

R2 Client v0.1.76

24 Apr 22:17

Choose a tag to compare

What's Changed

New Features

  • Selectable account export and import. The Import / Export modal is now split into Export and Import tabs.
    • Export lists every account grouped by provider (R2, AWS, MinIO, RustFS) with per-account checkboxes and a tri-state per-group toggle. Only selected accounts are written to the JSON file.
    • Import opens a preview table that classifies each account as New, Conflict, or Invalid. Each row gets its own action: skip, import, overwrite the local copy, or import as a duplicate (<name> (imported)). Bulk-action toolbar handles the common cases; an extra confirm dialog appears when overwrites are pending.
  • Added duplicate-detection on import for AWS, MinIO, and RustFS accounts (matched by access_key_id). Re-importing the same file no longer silently creates duplicate accounts.
  • Export file format bumped to version 2 with an optional selection_summary. Files exported by previous versions still import without changes.

Full Changelog: v0.1.75...v0.1.76

R2 Client v0.1.75

24 Apr 04:46

Choose a tag to compare

What's Changed

Improvements / Maintenance

  • Stabilized release automation and kept the connector feature out of release builds
  • Homebrew cask workflow: creates r2.rb on first publish and runs automatically after release
  • CI: added libpipewire-0.3-dev for libspa-sys build on Ubuntu
  • Revised README for clarity and detail, plus formatting cleanup

Dependencies

  • @aws-sdk/* 3.1031 → 3.1036
  • @tanstack/react-query 5.99 → 5.100.1
  • tailwindcss 4.2.2 → 4.2.4
  • @zumer/snapdom 2.8 → 2.9
  • prettier-plugin-tailwindcss 0.7.2 → 0.7.3
  • tauri-plugin-connector 0.8 → 0.9 (dev-only optional feature)
  • Cargo.lock transitive updates (rustls, turso, aws-sdk crates)

Full Changelog: v0.1.74...v0.1.75

R2 Client v0.1.74

17 Apr 16:47

Choose a tag to compare

What's Changed

Improvements

  • Improved video preview handling with a shared lazy-loaded thumbnail hook and modal poster support
  • Simplified connector development setup for Tauri debugging

Maintenance

  • Updated app dependencies and related lockfiles
  • Ignored local OMX tooling state from source control

Full Changelog: v0.1.73...v0.1.74

R2 Client v0.1.73

31 Mar 17:37

Choose a tag to compare

What's Changed

New Features

  • Auto-rename toggle in upload modal to avoid S3 key collisions — appends timestamp before extension, handles compound extensions (.tar.gz), dotfiles, and relative paths
  • Integrate tauri-connector for AI-assisted debugging (opt-in via --features connector)

Bug Fixes

  • Fix double-slash display in upload path indicator

Improvements

  • Conditional connector capability generation in build.rs (no longer hardcoded in default.json)
  • Update dependencies (antd 6.3.5, next 16.2.1, AWS SDK 3.1020, tailwind 4.2.2, react-query 5.96)
  • tauri-plugin-connector bumped to 0.8

Full Changelog: v0.1.72...v0.1.73