Dan Helfman
9bb5791e9f
Fix a traceback in the "spot" check with Borg 2.
2026-04-04 21:48:10 -07:00
Dan Helfman
ec25a40ddc
Fix a unicode error when backing up a non-UTF-8 source filename with a corresponding system locale ( #1281 ).
2026-03-06 10:06:39 -08:00
Dan Helfman
a6878829a2
Expand tests for "diff" actions ( #1243 ).
2026-02-27 19:23:20 -08:00
Jason
6cfa31e2c2
Merge branch 'main' into add-diff
2026-02-23 22:38:17 +00:00
Dan Helfman
3473f034ae
Fix the "spot" check to skip hard links, as Borg doesn't produces hashes for them ( #1236 ).
2026-02-22 21:25:27 -08:00
lingfish
42c006cf1d
Next raft of suggested fixes.
2026-02-23 11:03:25 +11:00
lingfish
4f25581a12
A bit of ruff, and some WIP tests.
2026-02-21 13:38:49 +11:00
Dan Helfman
d532fc0f88
Add a "config show" action to display computed borgmatic configuration as YAML or JSON ( #1218 ).
2026-02-14 21:30:53 -08:00
Dan Helfman
fc7439af3a
If a source file is deleted during a "spot" check, consider the file as non-matching and move on instead of immediately failing the entire ( #1231 ).
2026-02-05 23:11:59 -08:00
Dan Helfman
ea05a4660c
Deduplicate overlapping source directories and patterns so they don't throw off "spot" check file counts and cause spurious check failures.
2026-02-05 12:50:39 -08:00
Dan Helfman
efd0f0d618
For the "recreate" action, actually pass the "--dry-run" flag through to Borg instead of just skipping the Borg call ( #1241 ).
2026-01-18 18:39:29 -08:00
Dan Helfman
2bb818402d
Fix the "recreate" action to include borgmatic-specific paths (database dumps, etc.) in recreated archives.
2026-01-15 22:16:41 -08:00
Dan Helfman
e39c503fb7
Add missing test coverage and fix log_outputs() variable use.
2026-01-14 22:18:19 -08:00
Dan Helfman
762beb46c2
Fix "restore" action and broken end-to-end tests.
2026-01-14 12:54:36 -08:00
Dan Helfman
d354cf0942
Get unit/integration tests passing.
2026-01-13 16:02:02 -08:00
Dan Helfman
6407b3bd80
Fix existing tests ( #1225 ).
2026-01-07 19:58:25 -08:00
Dan Helfman
0f3234d681
Cleanup snapshots immediately after ZFS, LVM, or Btrfs hooks error ( #1220 ).
2026-01-03 22:22:55 -08:00
Dan Helfman
126b08b1ac
Merge branch 'main' of ssh://projects.torsion.org:3022/borgmatic-collective/borgmatic
2025-12-26 09:48:21 -08:00
Dan Helfman
802ca5aef3
Fix an error when running the "spot" check or "extract" action with the "progress" option or "--progress" flag ( #1210 ).
2025-12-26 09:46:39 -08:00
Dan Helfman
047a374514
Fix existing automated tests ( #1208 ).
2025-12-25 13:56:01 -08:00
Dan Helfman
ef7e934f5b
Merge branch 'main' into fix-restore-too-many-databases
2025-12-24 10:43:10 -08:00
Dan Helfman
a3750d1e06
Fix an error when restoring multiple directory-format database dumps at once ( #1212 ).
2025-12-23 20:28:15 -08:00
Dan Helfman
b8642439cd
Fix for the database "restore" action restoring more databases than the "--database" flag specifies ( #1208 ).
2025-12-22 15:46:28 -08:00
Dan Helfman
2a97ac0174
Fix for over-aggressive deduplication of source directories that contain the borgmatic runtime directory ( #1192 ).
2025-12-01 17:14:31 -08:00
Dan Helfman
8f2ae5e9a1
Fix a regression in the Btrfs hook in which subvolume snapshots didn't get cleaned up until the start of the next borgmatic run ( #1186 ).
2025-11-26 13:59:23 -08:00
Dan Helfman
3d15c51039
Fix the "--repository" flag not applying to command hooks ( #1176 ).
2025-11-02 19:32:08 -08:00
Dan Helfman
efc4316a45
Split out example configuration into different pages of reference documentation ( #942 ).
2025-10-12 21:28:52 -07:00
Dan Helfman
173ba00caa
Fix to snapshot both parent and child volumes/filesystems instead of just the parent ( #1156 ).
2025-10-04 14:35:42 -07:00
Dan Helfman
35feeb4615
Fix restore and get end-to-end tests passing ( #1105 ).
2025-09-30 21:56:04 -07:00
Dan Helfman
f15e8282ab
Fix a broken "create" action and "--archive latest" flag when multiple archives share the same name with Borg 2 ( #1146 ).
2025-09-19 14:30:33 -07:00
Dan Helfman
a388b17271
No longer defaulting Dump(hostname=...) to "localhost" ( #1116 ).
2025-09-18 19:22:45 -07:00
Florian Apolloner
4de879d86e
address some review comments
2025-09-17 08:46:02 +02:00
Florian Apolloner
0e90087dc4
Finalize container support
2025-09-15 22:16:49 +02:00
Florian Apolloner
8639b73f80
fix label handling and improve unittests
2025-09-15 20:02:31 +02:00
Florian Apolloner
3811a9f57b
more test fixes and first stab at end-to-end tests
2025-09-15 20:02:31 +02:00
Florian Apolloner
04cc58a5c7
fixes and more tests.
2025-09-15 20:02:31 +02:00
Florian Apolloner
db1c6f548f
add support for original-label and fix the tests from the previous changes.
2025-09-15 20:02:31 +02:00
Dan Helfman
b340ede9ac
Merge branch 'main' into data-source-dump-metadata
2025-09-09 09:22:54 -07:00
Dan Helfman
85b198feb2
Get automated tests passing ( #1143 ).
2025-09-08 23:16:27 -07:00
Dan Helfman
46381175ef
Code formatting.
2025-09-05 14:33:40 -07:00
Dan Helfman
d7205694db
Get existing restore tests passing (and add one test for the dumps metadata present case).
2025-09-05 14:21:53 -07:00
Dan Helfman
9a80fec91b
When running tests, use Ruff for faster and more comprehensive code linting and formatting.
2025-07-17 23:24:58 -07:00
Dan Helfman
ea72f1c367
Fix a bug in which Borg hangs during database backup when different filesystems are in use ( #1118 ).
2025-07-15 13:05:03 -07:00
Dan Helfman
1b62be0949
Fix a bug in which quoted "extra_borg_options" values containing spaces are passed to Borg incorrectly. Add a "--comment" flag to the "create" action for creating an archive with a comment ( #1108 ).
2025-06-30 16:16:53 -07:00
Dan Helfman
0d54fda27a
Use the Bandit security analysis tool when running tests.
...
SECURITY: Add timeouts to all monitoring hooks to prevent hangs on network requests.
SECURITY: For the "spot" check, use a more secure source of randomness when selecting paths to check.
2025-06-27 22:30:00 -07:00
Tobias Schlatter and Dan Helfman
123f8958f6
Create a checkpoint archive first with streaming processes ( #1032 ).
...
This ensures that if a streaming process fails, we do not create a
real (i.e. non-checkpoint archive), (fixes #1032 ).
Without this, there is a race condition where borg already creates an
archive before borgmatic can kill it.
Tested locally (with `pipx install --editable .`):
```sh
borgmatic --config config.yaml create
borgmatic --config config.yaml create --json
```
## Hold up!
Thanks for your contribution. Unfortunately, we don't use GitHub pull requests to manage code contributions to this repository (and GitHub doesn't have any way to disable pull requests entirely). Instead, please see:
https://torsion.org/borgmatic/#contributing
... which provides full instructions on how to submit pull requests. You can even use your GitHub account to login.
Reviewed-on: https://projects.torsion.org/borgmatic-collective/borgmatic/pulls/1102
Reviewed-by: Dan Helfman <witten@torsion.org >
Co-authored-by: Tobias Schlatter <schlatter.tobias@gmail.com >
Co-committed-by: Tobias Schlatter <schlatter.tobias@gmail.com >
2025-06-25 16:24:07 +00:00
Dan Helfman
7f3e9c5347
Fix for the "spot" check's "xxh64sum_command" option erroring on commands containing spaces ( #1095 ).
2025-05-14 14:09:19 -07:00
Dan Helfman
3ff9a33468
Fix for the "spot" check breaking when the "--progress" flag is used ( #1086 ).
2025-05-01 18:46:34 -07:00
Dan Helfman
e2b5972c09
Fix end-to-end tests ( #1072 ).
2025-04-21 23:11:38 -07:00
Dan Helfman
3847f31939
Fix path rewriting for non-root patterns in the ZFS, Btrfs, and LVM hooks ( #1072 ).
2025-04-21 10:07:46 -07:00