Go back to the hardlink deduplicator (1da0132), keeping backups
Restores the code of 1da0132 ("Add a setting to hide the quarantine from
Plex") and removes everything added after it: the tag editor, album art,
organizing/naming, the step-by-step tune-up and library types.
Kept:
- Database backups (Settings -> Backups): scheduled, manual, download,
restore, and the optional backup before every action.
- The .env-driven docker-compose.yml for Arcane.
Databases that already ran the later migrations keep working: migrations
6-10 stay in the list (they only add columns) so numbering never goes
backwards, and Undo refuses History entries of removed features instead
of treating them as links.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7b180e26db
commit
e0617047f7
44 files changed
+103
-10456
No files matched your search
@@ -565,3 +565,19 @@ func TestBeforeActionOncePerScan(t *testing.T) {
|
||||
t.Fatal("a failed backup must stop the action")
|
||||
}
|
||||
}
|
||||
|
||||
// History can hold operations of removed features; they must never be
|
||||
// undone as if they were links.
|
||||
func TestUndoRefusesUnknownActions(t *testing.T) {
|
||||
ev := setup(t, false)
|
||||
o := store.Operation{PairID: ev.pair.ID, Action: "tags", RelSlave: "A/B/x.flac"}
|
||||
if err := ev.st.CreateOp(ctx, &o); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := ev.st.FinishOp(ctx, o.ID, store.OpDone, ""); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := ev.e.Undo(ctx, o.ID); err == nil || !strings.Contains(err.Error(), "can no longer be undone") {
|
||||
t.Fatalf("got %v", err)
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user