restic/changelog/unreleased
Winfried Plappert 5148608c39 restic rewrite include - based on restic 0.18.1
cmd/restic/cmd_rewrite.go:
introduction of include filters for this command:
- add include filters, add error checking code
- add new parameter 'keepEmptyDirectoryFunc' to 'walker.NewSnapshotSizeRewriter()',
  so empty directories have to be kept to keep the directory structure intact
- add parameter 'keepEmptySnapshot' to 'filterAndReplaceSnapshot()' to keep snapshots
  intact when nothing is to be included
- introduce helper function 'gatherIncludeFilters()' and 'gatherExcludeFilters()' to
  keep code flow clean

cmd/restic/cmd_rewrite_integration_test.go:
add several new tests around the 'include' functionality

internal/filter/include.go:
this is where is include filter is defined

internal/walker/rewriter.go:
- struct RewriteOpts gains field 'KeepEmtpyDirectory', which is a 'NodeKeepEmptyDirectoryFunc()'
  which defaults to nil, so that al subdirectories are kept
- function 'NewSnapshotSizeRewriter()' gains the parameter 'keepEmptyDirecoryFilter' which
  controls the management of empty subdirectories in case of include filters active

internal/data/tree.go:
gains a function Count() for checking the number if node elements in a newly built tree

internal/walker/rewriter_test.go:
function 'NewSnapshotSizeRewriter()' gets an additional parameter nil to keeps things happy

cmd/restic/cmd_repair_snapshots.go:
function 'filterAndReplaceSnapshot()' gets an additional parameter 'keepEmptySnapshot=nil'

doc/045_working_with_repos.rst:
gets to mention include filters

changelog/unreleased/issue-4278:
the usual announcement file

git rebase master -i produced this

restic rewrite include - keep linter happy

cmd/restic/cmd_rewrite_integration_test.go:
linter likes strings.Contain() better than my strings.Index() >= 0
2026-01-31 19:42:56 +00:00
..
.gitignore Add gitignore to changelog/unreleased 2020-11-05 09:01:32 +01:00
issue-3326 Bugfix: restic check: add missing finalizeSnapshotFilter() (#5644) 2026-01-26 21:08:15 +00:00
issue-3572 feat(internal/fs/node): Restore ownership by name 2025-11-16 16:40:58 +01:00
issue-3738 Allow for a personal token to be specified for self-updates (#5568) 2025-11-17 21:39:39 +01:00
issue-4278 restic rewrite include - based on restic 0.18.1 2026-01-31 19:42:56 +00:00
issue-4467 backup: return exit code 3 if not all targets are available (#5347) 2025-10-05 15:38:52 +02:00
issue-4728 Add support for additional compression levels fastest and better (#5321) 2025-03-31 21:21:12 +02:00
issue-4868 changelog: add changelog entry for issue-4868 2025-03-29 13:27:50 +05:30
issue-5233 chore: update changelog for issue-5233 2025-03-30 14:12:06 +05:30
issue-5258 changelog: add bugfix changelog for issue-5258 2025-09-13 23:32:40 +05:30
issue-5352 feat(backup): add possibility to exclude macOS cloud-only files 2025-10-04 19:22:51 +02:00
issue-5354 extend background handling changelog 2025-09-08 11:04:53 +02:00
issue-5383 ui: only redraw status bar if it has not changed 2025-11-29 22:09:41 +01:00
issue-5440 feat: allow override env RESTIC_HOST with flag to filter all snapshots (#5541) 2025-10-05 13:22:50 +02:00
issue-5453 align docs 2025-11-23 17:51:07 +01:00
issue-5477 add changelog 2025-10-05 16:14:16 +02:00
issue-5487 Bugfix(sftp): fix loose permissions on sftp backend. (#5497) 2025-10-03 18:20:52 +00:00
issue-5531 changelog: add a changelog entry for azure PutBlob API changes 2025-10-05 21:48:02 +05:30
issue-5586 snapshots: correctly handle --latest in combination with --group-by 2025-11-17 22:26:57 +01:00
issue-5595 backend/local: fix "operation not supported" when unlocking 2025-11-16 08:09:51 -05:00
pull-4938 bump minimum go version to 1.24 2025-11-26 21:33:40 +01:00
pull-5319 restic copy - stattistics counters 2025-11-16 13:47:11 +01:00
pull-5424 fs: Clarified documentation 2025-11-16 11:53:13 -05:00
pull-5448 feat: add integrated nice and ionice options for docker (#5448) 2025-11-16 16:42:33 +01:00
pull-5465 Fix: Correctly restore ACL inheritance state (#5465) 2025-11-28 19:22:47 +00:00
pull-5523 Add OpenContainers labels to Dockerfile.release 2025-09-22 17:37:17 +00:00
pull-5588 snapshots: Show timezone in non-compact output 2025-11-18 13:32:44 +01:00
pull-5610 add changelog 2025-11-26 20:59:39 +01:00