Commit Graph

7429 Commits

Author SHA1 Message Date
TW 3202f68fb3
Merge pull request #7212 from ThomasWaldmann/archivename-validator
use archivename_validator everywhere
2022-12-15 23:30:33 +01:00
Thomas Waldmann a475227e18
use archivename_validator everywhere
also: simplify, reuse code from text_validator.
2022-12-15 22:54:46 +01:00
TW d0d21e7928
Merge pull request #7197 from ThomasWaldmann/valid-archive-names
text attributes: validate more strictly, fixes #2290
2022-12-15 19:24:17 +01:00
TW 5eb368dc41
Merge pull request #7211 from ThomasWaldmann/list-directories-dry-run-master
create: --list --dry-run output for directories, fixes #7209
2022-12-15 19:19:49 +01:00
Thomas Waldmann 61e5115d1d
fix fso.stats updating
fso is None in dry_run mode.
2022-12-15 18:10:36 +01:00
Thomas Waldmann 19e25043b5
create: --list --dry-run output for directories, fixes #7209
Without the status being set no output was generated in
dry-run mode, confusing users about whether borg would back
up directories (in non-dry-run mode).

- == item not backed up just because of dry-run mode
x == item excluded
2022-12-15 17:37:51 +01:00
Thomas Waldmann b9dc2be661
remove support for bpath placeholder
this needs to get done differently later, maybe base64 for json output.
2022-12-12 19:39:52 +01:00
Thomas Waldmann 1e2741ad3d
remove support for barchive placeholder
not needed any more as the archive name is now validated pure text.
2022-12-12 19:10:58 +01:00
Thomas Waldmann 1517db07ec
remove support for bcomment placeholder
not needed any more as the comment is now validated pure text.
2022-12-12 18:55:14 +01:00
Thomas Waldmann 4b54b5565e
use comment validator for cli args and borg transfer 2022-12-12 18:48:01 +01:00
Thomas Waldmann 99c6afbc61
add generic text and comment validator 2022-12-12 18:01:07 +01:00
Thomas Waldmann ebff12ad41
transfer: validate archive names before transfer 2022-12-12 17:06:13 +01:00
Thomas Waldmann fe2b2bc007
archive names: validate more strictly, fixes #2290
we want to be able to use an archive name as a directory name,
e.g. for the FUSE fs built by borg mount.

thus we can not allow "/" in an archive name on linux.

on windows, the rules are more restrictive, disallowing
quite some more characters (':<>"|*?' plus some more).
we do not have FUSE fs / borg mount on windows yet, but
we better avoid any issues.
we can not avoid ":" though, as our {now} placeholder
generates ISO-8601 timestamps, including ":" chars.

also, we do not want to have leading/trailing blanks in
archive names, neither surrogate-escapes.

control chars are disallowed also, including chr(0).
we have python str here, thus chr(0) is not expected in there
(is not used to terminate a string, like it is in C).
2022-12-12 17:05:01 +01:00
TW de6d8af42c
Merge pull request #7198 from ThomasWaldmann/fix-macos-ci-master
fix tox4 issue on macOS CI
2022-12-10 20:05:47 +01:00
Thomas Waldmann e6424aa0f5
fix tox4 passenv issue, fixes #7199
also: have a setting to disable fail-fast, in case something breaks again.
2022-12-10 19:34:32 +01:00
TW 9ba507ac74
Merge pull request #7182 from ThomasWaldmann/transfer-upgrade-tests
fixes and transfer/upgrade tests
2022-12-10 13:19:41 +01:00
Thomas Waldmann 15139a80c9
bugfix: switch archive timestamps to utc
we use utc for file timestamps and manifest timestamp,
so let's use utc for archives also.
2022-12-04 10:55:20 +01:00
Thomas Waldmann 1f859c9f17
refactor: get archive timestamps via archive_ts_now() 2022-12-04 10:55:17 +01:00
Thomas Waldmann 6a82d01b35
tests for borg transfer --upgrader=From12To20 2022-12-04 09:07:48 +01:00
Thomas Waldmann 87e597011a
bugfix: file timestamps should use tz-aware utc datetime objs
the UNIX time used for timestamp is seconds since 1.1.1970,
in UTC. thus, the natural way to represent it is with a
tz-aware utc datetime object.

but previously (in borg 1.x), they used naive datetime
objects and localtime.
2022-12-04 09:07:29 +01:00
Thomas Waldmann c343673ab5
bugfix: do no assume hardlink_master=True if not present, see #7175
this would produce unneeded item.hlid attributes
for fifos, char and block devices when transferring /
upgrading from faulty borg 1.x archives.
2022-11-28 23:57:59 +01:00
TW d577abe02e
Merge pull request #7167 from ThomasWaldmann/update-twine-upload-master
twine: use repo name instead of url
2022-11-27 01:03:32 +01:00
Thomas Waldmann b60afa7e19
twine: use repo name instead of url 2022-11-27 01:02:39 +01:00
TW 8eeee915e4
Merge pull request #7166 from ThomasWaldmann/rel200b4
release 2.0.0b4
2022-11-27 01:00:16 +01:00
Thomas Waldmann af93136ca7
build_man 2022-11-26 22:23:46 +01:00
Thomas Waldmann 4d2eb06ed3
build_usage 2022-11-26 22:23:17 +01:00
Thomas Waldmann 3ab46c5f46
update release date of 2.0.0b4 2022-11-26 22:16:53 +01:00
TW a36102e52b
Merge pull request #7165 from ThomasWaldmann/update-changes2
update CHANGES
2022-11-26 21:20:38 +01:00
TW aef439eb1a
Merge pull request #7164 from ThomasWaldmann/vagrant-updates
Vagrant updates
2022-11-26 21:20:23 +01:00
Thomas Waldmann a2f7435a3b
vagrant: use less cpus/concurrency 2022-11-26 19:43:36 +01:00
Thomas Waldmann 724762510d
use python 3.11 for the binary build
use python 3.10.1 for tests.
2022-11-26 19:42:42 +01:00
Thomas Waldmann cc4bee6220
use pyinstaller 5.6.2, fixes #7160
support python 3.11 now!
2022-11-26 19:38:58 +01:00
Thomas Waldmann 82aaef12b0
update CHANGES 2022-11-26 19:35:30 +01:00
TW 7439f89a78
Merge pull request #7157 from ThomasWaldmann/fix-7156
fix crash in borg transfer, fixes #7156
2022-11-26 12:43:26 +01:00
Thomas Waldmann 83576ae94c
fix crash in borg transfer, fixes #7156 2022-11-25 13:32:47 +01:00
TW a2205439a0
Merge pull request #7155 from ThomasWaldmann/cygwin-fixes
Cygwin fixes
2022-11-22 18:49:23 +01:00
Thomas Waldmann ae0017d174
skip test_create_read_special_symlink on cygwin
test is broken on cygwin and hangs infinitely.
2022-11-22 18:16:18 +01:00
Thomas Waldmann 15c51ee3c6
fix test_recreate_basic on cygwin
looks like that chmod should only get done IF we are root (and on linux?).

taking away write permissions on windows/cygwin (and when running as normal
user) makes create_regular_file fail when it tries to create dir2/file3.
2022-11-22 18:16:15 +01:00
Thomas Waldmann f088682bc9
ignore testsuite test for slow msgpack on cygwin
we don't want to have a failing test just because a
not compiled msgpack was used to run the tests.
2022-11-22 18:16:12 +01:00
TW 57c9f6193a
Merge pull request #7141 from RayyanAnsari/fix-repository-tests
Fix repository tests on Windows
2022-11-16 18:43:48 +01:00
Rayyan Ansari 4445fe3bdb testsuite: repository: skip some tests for RemoteRepository 2022-11-15 19:14:33 +00:00
Rayyan Ansari c209daec63 file_integrity.py: make sure file_fd is always closed on exit 2022-11-15 18:46:08 +00:00
Rayyan Ansari f3f6e3f448 testsuite: repository: close fd before deleting segment
See last commit.
2022-11-15 17:55:18 +00:00
Rayyan Ansari 2a8cacf517 repository: cleanup(): close segment before unlinking
On Windows, trying to delete a file that is already open raises an exception.

Docs:
https://docs.python.org/3/library/os.html#os.remove
2022-11-11 18:21:11 +00:00
Rayyan Ansari 62341673c1 repository: use os.replace instead of os.rename
On Windows, os.rename raises an exception if the destination file already exists, unlike os.replace which replaces the destination file.

Docs:
https://docs.python.org/3/library/os.html#os.rename
https://docs.python.org/3/library/os.html#os.replace
2022-11-10 17:56:45 +00:00
TW 5090f809ec
Merge pull request #7136 from ThomasWaldmann/fix-hashing-time-test
fix failing hashing_time test
2022-11-07 12:47:04 +01:00
Thomas Waldmann 85b0dc873a
fix failing hashing_time test
fast CPUs failed the test due to rounding down to 0.00s.
2022-11-07 10:51:04 +01:00
TW 31c53f6b78
Merge pull request #7134 from ThomasWaldmann/remove-py37-compat-code-master
remove python < 3.7 compatibility code
2022-11-07 09:04:54 +01:00
Thomas Waldmann f5f38a1fbd
remove python < 3.7 compatibility code
not supported any more in master and 1.2-maint branches.
2022-11-06 18:22:56 +01:00
TW 473a74d9da
Merge pull request #7133 from ThomasWaldmann/black-same-version
use same black version on gh actions as locally
2022-11-06 17:39:38 +01:00