Commit graph

1640 commits

Author SHA1 Message Date
Thomas Waldmann
d0a3b30fdf avoid create the cache tag file on every get_cache_dir call
this re-introduces a race between os.path.exists vs. SaveFile creating that file, but due to the way how SaveFile works, it still makes sure that in the end there is a good cache tag file in place.
2021-12-07 21:47:15 +01:00
Thomas Waldmann
7f5cd2c4d4 fix cyclic import issues 2021-11-17 17:36:43 +01:00
Thomas Waldmann
9ef0413aeb atomically create the CACHE_TAG file, see #6028 2021-11-16 16:05:56 +01:00
TW
ef6a65214e
Merge pull request #6055 from ThomasWaldmann/fix-hl-preload-master
fix hardlinkable file type check, fixes #6037
2021-11-16 15:25:59 +01:00
Thomas Waldmann
5064ec3c9a fix hardlinkable file type check, fixes #6037 2021-11-16 14:36:43 +01:00
sw9719
fec3568cba
do not show archive name in error msgs referring to repository (#6023)
do not show archive name in repo error msgs, fix #6014
2021-11-11 00:27:39 +01:00
Alf Mikula
663abc7c90 Handle case of calling prune_split when there are no archives 2021-10-28 05:36:43 -07:00
Alf Mikula
5b050bd01c Add test for prune_split when no archives exist 2021-10-27 15:52:45 -07:00
Jim Paris
7a0ffed7f0 create: fix passing device nodes and symlinks to --paths-from-stdin
Paths that come from --paths-from-stdin or --paths-from-command don't
have a parent_fd or name, so we need to use the os_stat helper that
falls back on the full path if those are missing.

Fixes borgbackup/borg#6009
2021-10-14 11:46:10 -04:00
Thomas Waldmann
59b6dc5442 require python 3.8+, fixes #5975
if you do not have py38+ yet, just use borg 1.1.x.
2021-09-16 02:21:29 +02:00
Thomas Waldmann
98230f721a fix: do not require BORG_CONFIG_DIR if BORG_{SECURITY,KEYS}_DIR are set, fixes #5979
but please note that this does not mean that "keys" and "security" are or will ever be the only subdirs below the borg config dir.
2021-09-12 15:36:07 +02:00
remyabel
795d9abad2
docs: clarify user_id vs uid for fuse (#5958)
docs: clarify user_id vs uid for fuse, fixes #5723
2021-08-25 21:42:07 +02:00
remyabel
e25095364b
docs: clarify pattern usage with commands (#5959)
docs: clarify pattern usage with commands, fixes #5176
2021-08-21 16:02:11 +02:00
Guinness
82e93527b0
Use an exception catching to avoid a stack trace
When exclude files are used, this can trigger a stack trace if the file
does not exist. Instead exit nicely without the stacktrace.

Fix #5734
2021-08-13 16:55:21 +02:00
Thomas Waldmann
5a13416a80 fix pyinstaller detection for dir-mode, fixes #5897
"running under pyinstaller" detection is now as recommended by the pyinstaller docs.
2021-07-11 00:26:50 +02:00
Thomas Waldmann
023a5a9edb docs: clarify "you will need key and passphrase" borg init warning, fixes #4622
there was a similar phrasing already, but this commit gets messages in sync
with borg 1.1 again.
2021-07-10 23:19:29 +02:00
Bruno Behnken
3b0bafc82f Adding try/finally block to make sure cleanup happens 2021-07-10 12:18:12 -03:00
Thomas Waldmann
9832559f30 remove unused libc_name
this was a remainder from 1.1-maint, but is not used any more.
2021-07-03 22:49:18 +02:00
TW
77ffb083e6
Merge pull request #5882 from KN4CK3R/master
Forward implement BORG_SELFTEST env variable (#5873)
2021-07-03 16:01:55 +02:00
TW
1d1bbfc567
Merge pull request #5831 from Swanand01/allow-files-cache=size
Allow --files-cache=size
2021-07-03 15:46:19 +02:00
TW
e6811748b1 Merge pull request #5873 from ThomasWaldmann/disable-selftest-1.1
implement BORG_SELFTEST env variable, fixes #5871
2021-07-03 12:31:13 +02:00
remyabel
e8ede14877
docs: add missing leading slashes in help patterns (#5869)
docs: add missing leading slashes in help patterns, fixes #5857
2021-06-26 02:23:46 +02:00
TW
35d2587aa6
Merge pull request #5860 from braewoods/verify_data
resolve clarify borg check --verify-data (#5808)
2021-06-19 14:08:00 +02:00
James Buren
4f9e30e980 resolve clarify borg check --verify-data (#5808) 2021-06-18 15:00:14 -05:00
James Buren
7b56105424 add paragraph added in #5855 to utility documentation source 2021-06-18 14:16:56 -05:00
Thomas Waldmann
506c01dc8f import-tar: fix empty user/group name in TarInfo, fixes #5853
if the tar has no information about user/group name (empty string),
we must assign None to Item.user/group (not the empty string).
2021-06-17 15:59:41 +02:00
Thomas Waldmann
b15469c3c8 drop support for py36, require py37+, fixes #5790
if you do not have python >= 3.7, you can still use borg 1.1.x or 1.0.x.

another option is to use the fat binary from github releases, which
includes python and all other stuff needed.
2021-06-16 15:31:34 +02:00
TW
da7dd388ca
Merge pull request #5842 from braewoods/master
create --dry-run: fix display of kept tagfile, fixes #5834
2021-06-16 15:07:51 +02:00
Thomas Waldmann
4572974218 fix missing parameter in "did not consistently fail" msg, see #5822 2021-06-15 23:10:37 -05:00
Thomas Waldmann
243135167a create --dry-run: fix display of kept tagfile, fixes #5834 2021-06-15 18:29:58 -05:00
Thomas Waldmann
de84440c18 use context manager for filter process setup/teardown 2021-06-14 16:03:49 +02:00
Thomas Waldmann
9d23ccbf63 move tar open/close closer to iteration 2021-06-14 16:03:49 +02:00
Thomas Waldmann
b0af91837d minor fixes 2021-06-14 16:03:49 +02:00
Thomas Waldmann
ab1757edab import-tar: better test 2021-06-14 16:03:49 +02:00
Thomas Waldmann
c84895a5eb dedup get_tar_filter code
also:
- check for short tarfile extensions
- add .lz4 and .zstd
- fix docs about extensions and decompression commands
2021-06-14 16:03:20 +02:00
Thomas Waldmann
d4d18e851b progress / stats cleanup 2021-06-14 15:37:58 +02:00
Thomas Waldmann
fb2efd88fe implement TarfileObjectProcessors similar to FilesystemObjectProcessors 2021-06-14 15:37:58 +02:00
Thomas Waldmann
5304693c55 import-tar: support fifos and blk/chr devices 2021-06-14 15:37:58 +02:00
Thomas Waldmann
5a3d9db4f7 add a simple test for import-tar 2021-06-14 15:37:58 +02:00
Thomas Waldmann
8df97f5016 rename create-from-tar -> import-tar
we already have export-tar, so import-tar is a better corresponding name.

also: improve docs
2021-06-14 15:37:46 +02:00
Swanand01
db153eeed1 Allow --files-cache=size 2021-06-11 13:45:05 +05:30
Thomas Waldmann
9fc350ff20 create-from-tar: fix and adapt to current master branch
- remove --progress (it is a common option now)
- remove --compression-from COMPRESSIONCONFIG (not supported any more)
- chunker-params: ALGO added
- return exit code, fix compression param
- give compatibility argument to with_repository decorator
- fix typos / c&p errors
- remove duplicate archive.add_item() call
- use dash_open(), this also fixes: use sys.stdin.buffer (binary)
- remove non-working compression/chunking code,
  this needs a bigger refactor...
2021-06-09 22:52:38 +02:00
Marian Beermann
c14197e559 borg create-from-tar 2021-06-09 22:52:38 +02:00
Elmar Hoffmann
938e7f295c add progress indicator for archive check
Depending on the number of archives in a repository, the archive check part
of the check operation can take some time, so it should have a progress
indicator as well.
2021-05-15 23:15:31 +02:00
Thomas Waldmann
b04b7a77fd fix --iec option when given after "borg"
now both behave the same:
borg --iec info REPO
borg info --iec REPO
2021-05-03 18:28:58 +02:00
TW
c114e060ec
Merge pull request #5788 from RonnyPfannschmidt/move-chunks-equals
move chunk_equals to module level and modernize tox.ini
2021-05-02 21:14:59 +02:00
Ronny Pfannschmidt
603023bbd5 transform _chunk_content_equal into a global function to ease later benchmarking 2021-05-02 17:29:37 +02:00
Thomas Waldmann
65ea375968 get rid of distutils, use packaging 2021-05-01 20:40:48 +02:00
Thomas Waldmann
76dfd64aba create/recreate: print preliminary file status early, fixes #5417
if we back up stdin / pipes / regular files (or devices with --read-special),
that may take longer, depending on the amount of content data (could be many GiBs).

usually borg announces file status AFTER backing up the file,
when the final status of the file is known.

with this change, borg announces a preliminary file status before
the content data is processed. if the file status changes afterwards,
e.g. due to an error, it will also announce that as final file status.
2021-04-30 20:34:13 +02:00
Romain Vimont
9ddcfaf4f7 info / create --stats: add --iec option
If --iec is passed, then sizes are expressed in powers of 1024
instead of 1000.
2021-04-28 15:17:40 +02:00