Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,4 @@ borg.exe
.coverage.*
.vagrant
.eggs
.DS_Store
52 changes: 29 additions & 23 deletions docs/changes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -414,44 +414,50 @@ Compatibility notes:
Change Log
==========

Version 1.4.4 (not yet released)
--------------------------------
Version 1.4.4 (2026-03-19)
--------------------------

For upgrade and compatibility hints, please also read the "Upgrade Notes" section
above.

New features:

- prune: added -v / --info output, #9262
- mount: warn about symlinks pointing outside of the mountpoint, #9254
- create/info: remember/show cwd at the time of backup creation, #6191
- prune: added -v / --info output, #9262.
- mount: warn about symlinks pointing outside of the mount point, #9254.
- create/info: remember/show cwd at the time of archive creation, #6191.

Fixes:

- hashindex_size: return int64_t, #9423
- compress: make Padme size obfuscation usable ("obfuscate,250,...")
- hashindex: fix memory leak, #9497.
- hashindex: check values in read HashHeader, #9485.
- hashindex_size: return int64_t, #9423.
- hashindex: fix iteritems segfaulting with non-existent marker, #9368.
Never happened in borg, because borg always gives existing markers to iteritems.
- compress: make Padme size obfuscation usable ("obfuscate,250,...").
- borgfs/mount: get_base_dir: avoid using incorrect HOME, #3395.

Other changes:

- pyinstaller binary: do not exclude ssl, needed for pyfuse3/trio, #9196
- mount: fuse fs performance improvement
- hashindex: fixed iteritems segfaulting with non-existent marker, #9368.
Never happened in borg, because borg always gives existing markers to iteritems.
- PyInstaller binary: do not exclude SSL, needed for pyfuse3/trio, #9196.
- mount: FUSE FS performance improvement.
- warn when replaying segments, #9233.
- CI / tests:

- build linux binaries with pyfuse3
- use macos-15 to build the binaries
- tox: use pytest -n auto by default to speed up tests
- scripts/linux-run: run commands (e.g. tox) in a podman linux container
- fix race condition in test_with_lock, #8810
- fix spurious sparse test fail on win32, #7616
- cygwin: skip ~root base dir test
- fix coverage collection for daemonized borg mount, #9448
- build Linux binaries with pyfuse3.
- use macOS 15 to build the binaries.
- scripts/linux-run: run commands (e.g. tox) in a Podman Linux container.
- fix race condition in test_with_lock, #8810.
- fix spurious sparse test failure on Win32, #7616.
- Cygwin: skip ~root base dir test.
- fix coverage collection for daemonized `borg mount`, #9448.
- docs:
- consolidate key backup info in "borg key export" help, #6204
- fix typos found by codespell
- update binary readme
- github: enhance pull request template

- move RTD version selector to sidebar top-left, #8204.
- consolidate key backup info in `borg key export` help, #6204.
- clarify append-only != write-only, #9304.
- fix typos found by codespell.
- update binary README.
- GitHub: enhance pull request template.


Version 1.4.3 (2025-12-02)
Expand Down
12 changes: 6 additions & 6 deletions docs/man/borg-benchmark-crud.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-BENCHMARK-CRUD" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-benchmark-crud" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-benchmark-crud \- Benchmark Create, Read, Update, Delete for archives.
.SH SYNOPSIS
.sp
Expand Down Expand Up @@ -95,7 +96,6 @@ path where to create benchmark input data
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
12 changes: 6 additions & 6 deletions docs/man/borg-benchmark.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-BENCHMARK" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-benchmark" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-benchmark \- benchmark command
.SH SYNOPSIS
.nf
Expand All @@ -41,7 +42,6 @@ These commands perform various benchmarks.
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP, \fIborg\-benchmark\-crud(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
12 changes: 6 additions & 6 deletions docs/man/borg-break-lock.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-BREAK-LOCK" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-break-lock" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-break-lock \- Break the repository lock (e.g. in case it was left by a dead borg.
.SH SYNOPSIS
.sp
Expand All @@ -50,7 +51,6 @@ repository for which to break the locks
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
14 changes: 7 additions & 7 deletions docs/man/borg-check.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-CHECK" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-check" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-check \- Check repository consistency
.SH SYNOPSIS
.sp
Expand Down Expand Up @@ -95,7 +96,7 @@ The check command is a read\-only task by default. If any corruption is found,
Borg will report the issue and proceed with checking. To actually repair the
issues found, pass \fB\-\-repair\fP\&.
.sp
\fBNOTE:\fP
\fBNote:\fP
.INDENT 0.0
.INDENT 3.5
\fB\-\-repair\fP is a \fBPOTENTIALLY DANGEROUS FEATURE\fP and might lead to data
Expand Down Expand Up @@ -203,7 +204,6 @@ consider last N archives after other filters were applied
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
12 changes: 6 additions & 6 deletions docs/man/borg-common.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-COMMON" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-common" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-common \- Common options of Borg commands
.SH SYNOPSIS
.INDENT 0.0
Expand Down Expand Up @@ -105,7 +106,6 @@ Use this command to connect to the \(aqborg serve\(aq process (default: \(aqssh\
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
12 changes: 6 additions & 6 deletions docs/man/borg-compact.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-COMPACT" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-compact" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-compact \- compact segment files in the repository
.SH SYNOPSIS
.sp
Expand Down Expand Up @@ -101,7 +102,6 @@ $ borg compact \-\-cleanup\-commits /path/to/repo
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
14 changes: 7 additions & 7 deletions docs/man/borg-compression.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-COMPRESSION" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-compression" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-compression \- Details regarding compression
.SH DESCRIPTION
.sp
Expand Down Expand Up @@ -153,7 +154,7 @@ Example probabilities for SPEC \fB1\fP:
.UNINDENT
.sp
Uses the Padmé algorithm to deterministically pad the compressed size to a sum of
powers of 2, limiting overhead to 12%. See <https://lbarman.ch/blog/padme/> for details.
powers of 2, limiting overhead to 12%. See \%<https://\:lbarman\:.ch/\:blog/\:padme/> for details.
.UNINDENT
.sp
Examples:
Expand All @@ -175,7 +176,6 @@ borg create \-\-compression obfuscate,250,zstd,3 ...
.EE
.UNINDENT
.UNINDENT
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
14 changes: 7 additions & 7 deletions docs/man/borg-config.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-CONFIG" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-config" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-config \- get, set, and delete values in a repository or cache config file
.SH SYNOPSIS
.sp
Expand Down Expand Up @@ -76,7 +77,7 @@ list the configuration of the repo
.UNINDENT
.SH EXAMPLES
.sp
\fBNOTE:\fP
\fBNote:\fP
.INDENT 0.0
.INDENT 3.5
The repository & cache config files are some of the only directly manipulable
Expand All @@ -102,7 +103,6 @@ $ borg config /path/to/repo append_only 1
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
14 changes: 7 additions & 7 deletions docs/man/borg-create.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-CREATE" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-create" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-create \- Create new archive
.SH SYNOPSIS
.sp
Expand Down Expand Up @@ -210,7 +211,7 @@ include/exclude paths matching PATTERN
read include/exclude patterns from PATTERNFILE, one per line
.TP
.B \-\-exclude\-caches
exclude directories that contain a CACHEDIR.TAG file ( <http://www.bford.info/cachedir/spec.html> )
exclude directories that contain a CACHEDIR.TAG file (\%<http://\:www\:.bford\:.info/\:cachedir/\:spec\:.html>)
.TP
.BI \-\-exclude\-if\-present \ NAME
exclude directories that are tagged by containing a filesystem object with the given NAME
Expand Down Expand Up @@ -519,7 +520,6 @@ So, be careful not to unintentionally trigger that.
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP, \fIborg\-delete(1)\fP, \fIborg\-prune(1)\fP, \fIborg\-check(1)\fP, \fIborg\-patterns(1)\fP, \fIborg\-placeholders(1)\fP, \fIborg\-compression(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
12 changes: 6 additions & 6 deletions docs/man/borg-delete.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructuredText
.\" by the Docutils 0.22.4 manpage writer.
.
.
.nr rst2man-indent-level 0
Expand Down Expand Up @@ -27,8 +28,8 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "BORG-DELETE" "1" "2025-12-01" "" "borg backup tool"
.SH NAME
.TH "borg-delete" "1" "2026-03-18" "" "borg backup tool"
.SH Name
borg-delete \- Delete an existing repository or archives
.SH SYNOPSIS
.sp
Expand Down Expand Up @@ -148,7 +149,6 @@ Type \(aqYES\(aq if you understand this and want to continue: YES
.SH SEE ALSO
.sp
\fIborg\-common(1)\fP, \fIborg\-compact(1)\fP
.SH AUTHOR
.SH Author
The Borg Collective
.\" Generated by docutils manpage writer.
.
.\" End of generated man page.
Loading
Loading