Commit Graph

  • 8e06d05cf4 Roadmap 1.2.0: restore only the database from a restore point, with occ 1.2.0 dillard 2026-11-10 09:39:12 +01:00
  • c6fdaad487 Merge pull request #31 from dillardblom/1.1.0 main v1.1.0 Dillard Blom 2026-11-09 17:44:23 +01:00
  • 6ae1b2277f Version 1.1.0: release date 1.1.0 dillard 2026-11-09 17:02:30 +01:00
  • 2a72acb70b Review fixes: the derived key is wiped also when a key is damaged, each tidy-up step after a removal on its own dillard 2026-11-09 02:33:50 +01:00
  • fb8e8d0694 Review fixes: a malformed key reads as damaged, removing a location always reports it, a key from before 1.1.0 in the recovery guide dillard 2026-11-09 00:55:20 +01:00
  • 042fdae686 Review fixes: the longest deletion delay when the location's settings cannot be read, a damaged passphrase slot does not stop the next one dillard 2026-11-08 18:25:59 +01:00
  • 99f1655d04 Review fixes: a missed passphrase change follows at the next backup, a key from before 1.1.0 counts as used, schedules edited in their own time zone dillard 2026-11-08 16:57:55 +01:00
  • 373d7e0424 Screenshots of 1.1.0: a schedule per location, a pinned restore point with a note, passphrase slots, the Bin dillard 2026-11-08 16:12:07 +01:00
  • c5024d3ddc Version 1.1.0: changelog, README status and roadmap dillard 2026-11-08 13:02:28 +01:00
  • 345b1d545e Keep the list of backups within the page: long text wraps instead of scrolling dillard 2026-11-08 12:28:10 +01:00
  • 98067f7746 Roadmap: what 1.1.0 brings, parallel uploads in 1.2.0 dillard 2026-11-08 12:11:15 +01:00
  • cd951af1a1 Test the update from a released version on a server that was backing up dillard 2026-11-08 11:58:36 +01:00
  • cf9cf50286 Replace a backup key that was never used by the key of existing backups dillard 2026-11-08 11:53:55 +01:00
  • 2b21596b3a Plan: speed measurements, parallel uploads planned for 1.2.0 dillard 2026-11-08 11:37:13 +01:00
  • 953312bf44 Read files for a backup in pieces of 4 MiB instead of 8 KiB dillard 2026-11-07 12:44:57 +01:00
  • 569077fa69 Restore without the recovery kit: the key from the location, with a passphrase dillard 2026-11-07 12:22:38 +01:00
  • 51a4a67bc4 Heavy background jobs of other apps pause while a backup runs dillard 2026-11-07 01:56:44 +01:00
  • a8b5e85c9b All folders get their original modification time back on a restore dillard 2026-11-07 01:07:09 +01:00
  • 36f2427e9a Tell administrators about a location without a schedule dillard 2026-11-07 00:23:28 +01:00
  • e58b86fc48 A schedule per location, and locations backed up one after the other dillard 2026-11-07 00:04:00 +01:00
  • 193f65940b Pin a restore point and keep a note on it dillard 2026-11-06 23:49:50 +01:00
  • 6540a9314a A name a snapshot cannot hold gets a notification of its own dillard 2026-11-06 23:38:40 +01:00
  • f81c5e13e9 Merge pull request #30 from dillardblom/1.0.3 v1.0.3 polish Dillard Blom 2026-11-06 20:29:09 +01:00
  • 1b621b7149 Backup state stays valid JSON with a name that is not UTF-8; Bin reads on from an id, not a position dillard 2026-11-06 20:02:09 +01:00
  • 1736005648 Review of 1.0.3: names a snapshot cannot hold, restore-directory errors under salvage, browse speed dillard 2026-11-06 19:44:52 +01:00
  • c7a651f269 Version 1.0.3: changelog, README status and roadmap dillard 2026-11-06 19:05:54 +01:00
  • 8897d8074f Restore through Nextcloud: also a restored folder that is itself empty gets its time back dillard 2026-11-06 18:40:10 +01:00
  • 0b9fa1ae92 Restore through Nextcloud: empty folders get their time back dillard 2026-11-06 18:36:15 +01:00
  • ee406c481e Restore: go on after a partial write; created tables stay once the database is committed dillard 2026-11-06 18:27:00 +01:00
  • dd2e1af997 Roadmap: original modification time for all folders; guide: folders reported as updated dillard 2026-11-06 18:08:34 +01:00
  • d96229f370 Release the locks of a killed restore when it runs again; legacy test without empty folders dillard 2026-11-06 17:34:33 +01:00
  • b14b16c66c Empty folders in backup and restore, a full disk stops a restore, progress in the Bin dillard 2026-11-06 15:50:02 +01:00
  • ce40053cec Merge remote-tracking branch 'github/main' into 1.0.3 dillard 2026-11-06 12:23:09 +01:00
  • 46e0186f35 Merge pull request #29 from dillardblom/polish Dillard Blom 2026-11-06 12:22:58 +01:00
  • d5eb7abbff Guide: after a full disk, run the restore again as in step 8 dillard 2026-11-06 12:02:38 +01:00
  • 4c973d5cd8 Docs: a full disk during a restore looks like a damaged backup, to be fixed in 1.0.3 dillard 2026-11-06 12:00:52 +01:00
  • e9592cb6c6 PLAN: findings from the reviews of 1.0.2, for 1.0.3 dillard 2026-11-06 11:57:08 +01:00
  • b86b07a49c Disaster recovery guide: --salvage after a restore that stopped halfway dillard 2026-11-06 11:56:10 +01:00
  • ecae6e9cdd PLAN: 1.0.2 released; a branch per version 1.0.3 dillard 2026-11-06 11:29:57 +01:00
  • d36c40e77b Merge pull request #28 from dillardblom/release-1.0.2 v1.0.2 Dillard Blom 2026-11-06 11:29:14 +01:00
  • 50c2636926 Version 1.0.2: changelog, README status and roadmap dillard 2026-11-06 11:03:14 +01:00
  • d1e9a53ce5 App store text: the line asking for a star in bold dillard 2026-11-06 10:42:16 +01:00
  • b625fe7666 A restore that stops at a file gone from the location points at --salvage; test a full restore with a damaged and a missing pack dillard 2026-11-06 10:27:41 +01:00
  • 74bfa7052f PLAN: DR test 1.0.2 over SMB, findings so far dillard 2026-11-05 08:35:46 +01:00
  • bf48d339e4 Remove the read-ahead folder of a killed restore with what it kept; changelog and DR guide: a stopped full restore goes on where it was dillard 2026-11-05 08:35:28 +01:00
  • 029b3b9cc7 Full restore goes on where it stopped; SMB recovers from a failed read dillard 2026-11-05 08:18:50 +01:00
  • dce93aa75e Over SMB, read index files in fewer round trips dillard 2026-11-04 20:18:46 +01:00
  • 3ec23a3072 PLAN: DR test for 1.0.2 over SMB; screenshots approved dillard 2026-11-04 13:28:04 +01:00
  • 4a395c75f2 PLAN: 1.0.2 status, DR test planned before the release dillard 2026-11-04 04:22:40 +01:00
  • 36a30732ad Without system cron: warning and a backup that moves on while the page is open (#13); progress of the database phase; Bin tab dillard 2026-11-04 04:08:20 +01:00
  • d7c7ca093b target:add: estimate the time left only once enough of the index is in dillard 2026-11-04 04:08:20 +01:00
  • 05d02f3c70 Faster full restores from S3 and SMB dillard 2026-11-04 04:08:20 +01:00
  • dfe1fe9aad --salvage for backup:restore and backup:restore:full: restore what can be read from a damaged backup dillard 2026-11-04 04:08:20 +01:00
  • f0293e6d01 Roadmap 1.0.2: the trash of restore points on a tab of its own (Bin) dillard 2026-11-01 17:13:50 +01:00
  • f7c9894b78 PLAN: 1.0.1 released; new screenshots in 1.0.2 dillard 2026-11-01 12:59:49 +01:00
  • be3746e1c3 Merge pull request #26 from dillardblom/release-1.0.1 v1.0.1 Dillard Blom 2026-11-01 12:58:34 +01:00
  • f5473495ce App description and README: ask for a star in the app store and on GitHub dillard 2026-11-01 12:08:01 +01:00
  • 3694184674 Version 1.0.1: changelog, README status and roadmap dillard 2026-11-01 12:03:19 +01:00
  • a0fc91a700 Integration tests: grep the whole occ output instead of grep -q, which stopped reading and failed the pipe under pipefail dillard 2026-10-31 23:13:27 +01:00
  • a11e6c7254 1.0.1: label for "Back up now", retention explained in the trash, occ times in the schedule's zone, single-file restore to a directory, leftovers of a stopped restore removed dillard 2026-10-30 19:32:53 +01:00
  • 6f1a37f4f4 Changelog: release candidate headings carry their app version, so the app store no longer shows all of them under 1.0.0 dillard 2026-10-29 13:07:25 +01:00
  • 5cde57bc1b Changelog: 1.0.0 says what the app is instead of release bookkeeping; rc.6 drops its outdated outlook dillard 2026-10-29 12:42:44 +01:00
  • 3eec2e9554 Full restore on SQLite: take the write lock first, so another writer is waited for instead of "database is locked" dillard 2026-10-29 03:06:05 +01:00
  • cdf0b70e25 Changelog: the admin page's single-line key field as the cause of #24; PLAN 1.0.1: #24, database locked at the start of a full restore on SQLite dillard 2026-10-29 02:40:03 +01:00
  • 66615c2a88 Merge branch 'main' into polish dillard 2026-10-29 02:27:01 +01:00
  • cc75c7128c Merge pull request #25 from dillardblom/release-1.0.0 v1.0.0 Dillard Blom 2026-10-29 02:26:04 +01:00
  • a0c4abb60a Version 1.0.0: same code as 1.0.0-rc.6; changelog, README status release-1.0.0 dillard 2026-10-29 01:32:12 +01:00
  • 4847ce293d SFTP: restore the line breaks of an OpenSSH private key before use (#24) dillard 2026-10-28 01:41:58 +01:00
  • 90dd97977a CI: build the admin page on every push dillard 2026-10-27 11:34:53 +01:00
  • 08534975d7 Admin page: Docs tab with links to the how-to, disaster recovery guide and roadmap; drop "in beta" from the feedback line dillard 2026-10-27 11:23:34 +01:00
  • 95e3dfcf6d User restore by user id, backup:user:list (#22) dillard 2026-10-27 00:09:07 +01:00
  • 7f4cae0e42 Roadmap: pin a restore point (1.1.0); PLAN 1.0.1: explain retention in the trash, time zone in backup:status dillard 2026-10-25 02:40:13 +02:00
  • 965440d1f7 Merge pull request #20 from dillardblom/rc6 v1.0.0-rc.6 Dillard Blom 2026-10-24 01:04:23 +02:00
  • 3a0f882a38 1.0.0-rc.6: changelog, SMB disaster recovery result in the README, 1.0.1 items (salvage mode, leftover restore files, single-file restore) rc6 dillard 2026-10-24 00:40:51 +02:00
  • 632d2a2838 Admin page: widen the sections through their width; NcSettingsSection sets width, not max-width dillard 2026-10-23 18:10:48 +02:00
  • 9e9234e2a8 Admin page: sections up to 1400px wide, so the runs table fits without scrolling dillard 2026-10-23 13:29:47 +02:00
  • 3ac3298313 Database restore: close the pack stream of a blob read again before the next range dillard 2026-10-22 20:30:18 +02:00
  • 384b2d2792 Full-restore test: the emoji deck board sets archived as a boolean (PostgreSQL refuses 0) dillard 2026-10-22 20:09:58 +02:00
  • 8032411789 Restore: the warning for a blob read again says how the first read differed (zeros, shifted, other bytes) dillard 2026-10-22 19:50:27 +02:00
  • b4f20cb070 Version 0.9.12 (1.0.0-rc.6) dillard 2026-10-22 19:48:57 +02:00
  • 343389b98b Changelog: the second read covers the database phase too dillard 2026-10-22 19:48:22 +02:00
  • 133f5f9d34 Schedule: say why a server zone of UTC is passed over dillard 2026-10-22 19:47:30 +02:00
  • cf4bd9db7f Review fixes: the database restore also reads a damaged blob once more; schedule conversion right on days the clocks change; the field follows a changed schedule time zone dillard 2026-10-22 19:45:49 +02:00
  • 67cc350b8c Daily backup time in the administrator's time zone (#19); a time saved before is converted once so it shows as it ran dillard 2026-10-22 16:38:54 +02:00
  • fb5b234e8a Restore: a blob that does not decrypt as first read is read once more on a request of its own before the restore gives up dillard 2026-10-22 14:43:48 +02:00
  • fd12c586b6 Roadmap: restore mode for hosted Nextcloud, read-ahead for S3 and SMB; changelog for rc6 dillard 2026-10-22 13:07:09 +02:00
  • 6ffe979ea7 Merge branch 'polish' into rc6 dillard 2026-10-22 13:06:59 +02:00
  • a03b7354b3 README: tested disaster recoveries, backend measurements, restores without shell access; guide lists shell access; changelog for rc6 dillard 2026-10-22 13:06:49 +02:00
  • be1c628f07 Full-restore test: install Mail and Deck with up to three tries (the app store is slow at times) dillard 2026-10-22 03:38:30 +02:00
  • a8355df12e Full restore: tables the restore creates get this installation's charset and collation (utf8mb4 on MySQL/MariaDB); test with an emoji dillard 2026-10-22 03:36:46 +02:00
  • f0537f0f2c Merge pull request #18 from dillardblom/rc5 v1.0.0-rc.5 Dillard Blom 2026-10-22 02:28:05 +02:00
  • fd0f786f5f Full restore: a run again after an interrupted restore keeps maintenance mode on when its check refuses; retry text about apps dillard 2026-10-22 01:59:01 +02:00
  • 2eabdf44d5 README and store description: background jobs must run on system cron, with how to set it up; rc5 date dillard 2026-10-22 01:03:52 +02:00
  • 61e2a28b67 Full restore: maintenance mode on before the checks (off again when they refuse); the printed retry command is complete dillard 2026-10-22 00:53:08 +02:00
  • 7ed53ad0eb Full restore: after an error maintenance mode stays on, with the one line to switch it off and run again; maintenance that was on before stays on dillard 2026-10-22 00:36:58 +02:00
  • bdcb4f0cae Full restore runs in maintenance mode, switched off again at the end (also after an error) dillard 2026-10-22 00:31:34 +02:00
  • 2616b6e543 Init guard also counts snapshots in the trash and the catalog as backup data dillard 2026-10-21 22:42:43 +02:00
  • 9bc4e4a4ab Never create a repository where backup data lies but no config could be read dillard 2026-10-21 22:25:48 +02:00
  • 827e46381e Log a snapshot that cannot be adopted when a location is added; full-restore test prints what target:add and backup:list said when the snapshot is missing dillard 2026-10-21 22:08:14 +02:00
  • 8eb6c4c033 Index: check known index files spread over the list dillard 2026-10-21 20:56:45 +02:00