mirror of
https://github.com/narrrl/proton-drive-linux.git
synced 2026-11-03 16:41:26 +01:00
fix(gui): word a queued edit kept as a conflict copy in the user's language (B181)
The daemon logs it as "<reason>; local changes uploaded as <copy>" or "...kept at <path>", which the Activity page showed as written, in English. It now reads both and the three reasons, one sentence each.
This commit is contained in:
1 parent
457a9d26f4
commit
da013c29d6
13 files changed
+786
-199
No files matched your search
@@ -12,6 +12,33 @@ Conventions:
|
||||
|
||||
---
|
||||
|
||||
## B181 — The app shows a queued edit kept as a conflict copy in English
|
||||
|
||||
**Status:** Fixed.
|
||||
**Found:** 2026-10-05, checking that every name collision and conflict the drain resolves is
|
||||
reported (`docs/MILESTONE-3.0.0.md` §6.2). Each one is in the activity log, and the app words
|
||||
each in the user's language but one.
|
||||
|
||||
**Where:** `detail_label` in `crates/pdfs-gui/src/app/pages/activity_text.rs`; the daemon
|
||||
writes the entry in `Core::keep_as_conflict_copy` and `Core::abandon_to_staging`
|
||||
(`crates/pdfs-fuse/src/drain.rs`).
|
||||
|
||||
**Cause.** A queued edit whose file was changed, trashed or removed on Drive meanwhile is
|
||||
uploaded as a conflict copy, or kept in staging when it cannot be. The entry's detail is the
|
||||
reason followed by "; local changes uploaded as {copy}" or "; local changes kept at {path}".
|
||||
The app knew neither shape, so it showed the detail as the daemon wrote it, in English: "The
|
||||
remote revision changed under the queued write (based on revision …); local changes uploaded
|
||||
as …".
|
||||
|
||||
**Fix.** The app reads both shapes and the three reasons the daemon gives, and says each as
|
||||
one sentence: "It was changed on Proton Drive, so your changes were uploaded as {name}". A
|
||||
reason it does not know still gets a sentence without the why. Translated in every catalog.
|
||||
|
||||
**Test:** `an_edit_kept_as_a_copy_says_why_in_words` in
|
||||
`crates/pdfs-gui/src/app/pages/activity_text.rs`.
|
||||
|
||||
---
|
||||
|
||||
## B180 — A stop waits 10 s for a drain worker that slept through it
|
||||
|
||||
**Status:** Fixed.
|
||||
|
||||
@@ -89,6 +89,8 @@ by its local id, in the queue, the stored tree and pins alike.
|
||||
- **A folder made while offline or with sync paused no longer fails with "Input/output
|
||||
error"** once it is refreshed or the connection comes back (B125).
|
||||
- **The daemon no longer hangs when a file being read changes on Drive** (B130).
|
||||
- **The Activity page says in your language why an edit was kept as a conflicting copy**,
|
||||
instead of the daemon's English (B181).
|
||||
- **A file renamed just as its upload finished keeps its new name.** The mount no longer showed
|
||||
the old name, and a second rename no longer failed with "No such file or directory" (B152,
|
||||
B172).
|
||||
|
||||
@@ -9,7 +9,7 @@ Tracks `docs/MILESTONE-3.0.0.md`. Update it with every commit that moves a phase
|
||||
- **Phase 2**: local ids, inode = local id, one tree for every mount (2.10.0).
|
||||
- **Phase 3, first part**: mkdir, create, rename, unlink and rmdir on the mount are recorded
|
||||
locally and sent from the queue; `"local_first": false` brings back the old path (5e0f30c).
|
||||
- Fixes from the simulation and account runs since then: B125, B127, B130 and B141 to B180.
|
||||
- Fixes from the simulation and account runs since then: B125, B127, B130 and B141 to B181.
|
||||
- **Sync issues, first cut** (§6.2): refusals sorted into issues, shown at once in the app,
|
||||
tray and CLI; Export button and `pdfs sync export`; `pdfs sync issues`.
|
||||
|
||||
@@ -24,6 +24,9 @@ Tracks `docs/MILESTONE-3.0.0.md`. Update it with every commit that moves a phase
|
||||
- [x] `pdfs sync issues`, and the issue shown in `pdfs sync queue`.
|
||||
- [x] The app's Sync page shows each issue with what the user can do; Export and Retry
|
||||
buttons; translated in every catalog.
|
||||
- [x] A name collision lands under a conflict name (create, rename, move, re-homed create)
|
||||
and goes in the activity log, as does a queued edit kept as a conflict copy. The app
|
||||
words each one in the user's language (the last one since B181).
|
||||
- [ ] Discard an issue on purpose (after export, or for a change with no content), and
|
||||
undo the local change it stood for. Not in the first cut.
|
||||
- [ ] Show the issue on the node itself (file browser emblem or status). Not in the first
|
||||
|
||||
Reference in new issue
Block a user