diff --git a/Cargo.lock b/Cargo.lock index c2c624a..e0e8224 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3474,7 +3474,7 @@ checksum = "2ee67f1008b1ba2321834326597b8e186293b049a023cdef258527550b9935b4" [[package]] name = "pdfs-cli" -version = "2.7.0" +version = "2.8.0" dependencies = [ "anyhow", "clap", @@ -3489,7 +3489,7 @@ dependencies = [ [[package]] name = "pdfs-core" -version = "2.7.0" +version = "2.8.0" dependencies = [ "async-trait", "dbus-secret-service-keyring-store", @@ -3513,7 +3513,7 @@ dependencies = [ [[package]] name = "pdfs-fuse" -version = "2.7.0" +version = "2.8.0" dependencies = [ "base64 0.23.1", "fuser", @@ -3533,7 +3533,7 @@ dependencies = [ [[package]] name = "pdfs-gui" -version = "2.7.0" +version = "2.8.0" dependencies = [ "anyhow", "async-channel", diff --git a/Cargo.toml b/Cargo.toml index 94e479f..a0ee26f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ resolver = "2" members = ["crates/pdfs-core", "crates/pdfs-fuse", "crates/pdfs-cli", "crates/pdfs-gui"] [workspace.package] -version = "2.7.0" +version = "2.8.0" edition = "2024" license = "MIT" authors = ["Nils Pukropp "] diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 6f7779b..698ca83 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -11,6 +11,10 @@ scratch (user data in `staging/` and `recovery/` is never touched by this). ## [Unreleased] +## [2.8.0] — 2026-09-30 + +Schema: **35** (unchanged). Requires `proton-drive-rs` **0.7.1**. + ### Added - **`pdfs trash --json`** prints the trash listing as JSON. - **The FUSE acceptance suite tests the signed-in account by default.** @@ -20,6 +24,17 @@ scratch (user data in `staging/` and `recovery/` is never touched by this). block boundaries, unusual names, a deep tree, a wide directory, rename patterns, handle coherency, throughput and B100. `--offline-only` runs the account-free suite as before. +### Changed +- **The mount keeps working through a network drop.** When Drive stops answering, the daemon + now marks itself offline within about 20 seconds instead of failing every call for up to two + minutes. While offline, creating, renaming and deleting files and folders is queued instead of + failing with `Input/output error`, folders list from the local cache, and a read that needs + data from Drive waits up to 30 seconds for the connection. The daemon checks every few seconds + for the connection to return, then uploads the queued changes. A file whose creation timed + out but reached Drive anyway is taken over rather than uploaded again as a conflict copy. +- **A dead connection is noticed sooner.** `proton-drive-rs` 0.7.1 sends TCP keepalives, so a + connection that died silently fails instead of waiting for its request timeout. + ### Fixed - **Truncating and then writing past the end no longer brings old bytes back.** The gap between the new end and the write now reads as zeros, as it should, instead of the file's @@ -1326,6 +1341,7 @@ First stable release: FUSE files-on-demand mount, sync daemon under `proton-driv - The outstanding FUSE defects tracked in `docs/BUGS.md`, plus a truncate defect, validated by a new POSIX compliance suite for the filesystem. +[2.8.0]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.8.0 [2.7.0]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.7.0 [2.6.2]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.6.2 diff --git a/packaging/PKGBUILD b/packaging/PKGBUILD index 2918160..b8e872b 100644 --- a/packaging/PKGBUILD +++ b/packaging/PKGBUILD @@ -9,7 +9,7 @@ # Build + install: cd packaging && makepkg -fi pkgname=proton-drive-linux -pkgver=2.7.0 +pkgver=2.8.0 pkgrel=1 pkgdesc="Unofficial Proton Drive client for Linux: files-on-demand FUSE mount, CLI, GTK4 app + tray" arch=('x86_64')