Commit Graph

8301 Commits

Author SHA1 Message Date
Thomas Waldmann ba2e8f2dec
borg.logger: use same method params as python logging 2024-01-15 21:40:27 +01:00
TW 2787da205c
Merge pull request #6052 from stephengroat/patch-1
Create and use Brewfile
2024-01-14 19:49:28 +01:00
Thomas Waldmann 08bb028bae
Brewfile: don't install osxfuse cask by default. 2024-01-14 17:49:21 +01:00
Thomas Waldmann 576ee3532c
docs: fix markup errors 2024-01-14 17:27:21 +01:00
Stephen 438f1ddef7
docs: add brew bundle instructions (macOS) 2024-01-14 17:14:42 +01:00
Stephen 5c5df6458a
github CI (macOS): use brew bundle install (uses Brewfile) 2024-01-14 15:30:08 +01:00
Stephen b8e5df9410
Create Brewfile 2024-01-14 15:29:50 +01:00
TW a2ef268724
Merge pull request #8038 from ThomasWaldmann/vagrant-updates-master
Vagrant updates (master)
2024-01-10 22:40:46 +01:00
TW 64fee10417
Merge pull request #8039 from ThomasWaldmann/fetch-binaries-master
add script for fetching borg binaries from VMs, fixes #7989
2024-01-10 22:40:29 +01:00
Thomas Waldmann cb62981ae7
add script for fetching borg binaries from VMs, fixes #7989 2024-01-10 22:33:44 +01:00
Thomas Waldmann a9ea8aa67d
vagrant: use openssl 3.0 on macOS 2024-01-10 22:29:11 +01:00
Thomas Waldmann eec78802bf
vagrant: remove outdated comment 2024-01-10 22:26:31 +01:00
Thomas Waldmann 86d6fcfe0a
vagrant: use generic/openbsd7 box 2024-01-10 22:25:36 +01:00
Thomas Waldmann 5480906c06
vagrant: netbsd: test on py311 only
the netbsd vagrant machine tends to segfault, guess due to some kernel or virtualbox issue.

 thus, rather only do 1 tox run, so there is less output to review.
2024-01-10 22:24:47 +01:00
Thomas Waldmann f5a6d61e56
vagrant: use python 3.9.4 for tests
same as in 1.4-maint branch
2024-01-10 22:21:49 +01:00
Thomas Waldmann 140e079496
vagrant: remove debian 9 "stretch" box
there are multiple issues with that box:
- debian 9 is out of support by debian, out of even lts support since 2022
- it has a OpenSSL 1.x natively (and our source based install also used 1.x) - that is also out of support and noone will care for it.

Also, borg2 will still take a while, so it would be
even more outdated at release time as it already
is now.
2024-01-10 22:19:57 +01:00
Thomas Waldmann c96fe77d2e
vagrant: use freebsd 14, fixes #6871 2024-01-10 22:14:09 +01:00
Thomas Waldmann a6f224f031
vagrant: use the latest python 3.11.7 for binary builds 2024-01-10 22:10:54 +01:00
ebabcock93 73a416830a
docs: add typical PR workflow to development docs, fixes #7495 (#7656) 2024-01-10 00:56:18 +01:00
TW 812eb352f6
Merge pull request #7955 from ThomasWaldmann/improve-session-key-gen-master
crypto: use a one-step kdf for session keys, fixes #7953
2024-01-04 18:42:22 +01:00
kmille 865de9fcee
improve docs for borg with-lock (#8024)
docs: add example for borg with-lock
2024-01-03 23:42:29 +01:00
TW 2803c7358b
Merge pull request #8021 from ThomasWaldmann/move-conftest.py-master
move conftest.py to src/borg/testsuite, see #6386
2024-01-02 21:54:41 +01:00
Thomas Waldmann e1fbd7d42e
fix mypy complaints 2024-01-02 20:57:42 +01:00
TW 5379f1b9bd
Merge pull request #8020 from ThomasWaldmann/latest-pyinstaller-master
use pyinstaller 6.3.0
2024-01-02 20:50:22 +01:00
Thomas Waldmann 6720ab3aab
move conftest.py to src/borg/testsuite, see #6386
there, it will be packaged and installed, so
that when one runs the testsuite after installing
the pypi package, it will find the conftest.py.
2024-01-02 20:39:14 +01:00
Thomas Waldmann 723994a2f1
use pyinstaller 6.3.0 2024-01-02 20:33:34 +01:00
TW f6d19a33d4
Merge pull request #8019 from ThomasWaldmann/drop-setup-requires-master
use pip and build
2024-01-02 20:29:01 +01:00
TW ee02c54488
Merge pull request #8018 from ThomasWaldmann/use-cython3-master
use and require cython3
2024-01-02 20:09:27 +01:00
TW 9583540fa1
Merge pull request #8017 from ThomasWaldmann/do-not-accept-empty-paths-master
PATH: do not accept empty strings, fixes #4221
2024-01-02 20:02:43 +01:00
Thomas Waldmann 1a544845a2
use less setup.py, use pip and build
todo: clean clean2 build_usage build_man
2024-01-02 19:50:59 +01:00
Thomas Waldmann 66eb086c4a
fix msys build
forward port to get code in sync with 1.4-maint.

use "pip install -e ." before invoking pyinstaller, so we have
the _version.py built by setuptools_scm and also it compiled the
extension modules, so pyinstaller can pick them up.

msys2 hack:

https://stackoverflow.com/questions/76079590/error-plat-name-must-be-one-of-win32-win-amd64-win-arm32-win-arm6
2024-01-02 19:46:48 +01:00
Thomas Waldmann 5ca4703a47
use and require cython3 2024-01-02 19:30:14 +01:00
Thomas Waldmann 73284db53f
PATH: do not accept empty strings, fixes #4221 2024-01-02 19:17:55 +01:00
TW 1432f547fe
Merge pull request #7968 from strugee/patch-1
Fix typo
2023-12-17 18:46:35 +01:00
AJ Jordan f3ae0467b5
Fix typo 2023-12-17 01:13:43 -05:00
Thomas Waldmann 74c34ba7c6
docs: update security docs about new one-step KDF 2023-12-02 20:35:16 +01:00
Thomas Waldmann a4602c6f61
remove unused hkdf_hmac_sha512 and related tests 2023-12-02 20:35:14 +01:00
Thomas Waldmann 64ce6d5923
crypto: use a one-step kdf for session keys, fixes #7953
also:
- fixes, simplifies, speeds up _get_session_key
- convert sessionid memoryview to bytes before calling _get_cipher,
to avoid TypeError in (crypt_key + sessionid + domain) operation.
- add docstring and comments
2023-12-02 20:33:07 +01:00
TW 42f04e91a1
Merge pull request #7962 from ThomasWaldmann/update-changes-master
add 1.2.7 changes
2023-12-02 18:01:54 +01:00
Thomas Waldmann 0f074fa2b6
add 1.2.7 changes 2023-12-02 18:01:00 +01:00
TW 6a511fd68a
Merge pull request #7944 from Gelma/typos
Fix typos
2023-12-02 00:45:21 +01:00
Thomas Waldmann fe17ce2bba
fix typos
Thanks go to:
Author: Andrea Gelmini <andrea.gelmini@gelma.net>
2023-12-01 21:58:26 +01:00
TW 443245a547
Merge pull request #7947 from ad8e/master
Remove period after command, for clarification. Port to master
2023-11-27 18:13:05 +01:00
TW 223d189ff7
Merge pull request #7951 from ThomasWaldmann/allow-platformdirs4-master
allow platformdirs 4, fixes #7950
2023-11-27 18:09:12 +01:00
Thomas Waldmann b0f7b05f43
CI: also trigger if a .toml file changes
Usually this might be pyproject.toml.
2023-11-27 17:23:36 +01:00
Thomas Waldmann 0e7b87c1ba
allow platformdirs 4, fixes #7950 2023-11-27 17:12:50 +01:00
Kevin Yin 4f92f9462e
Port changes to master 2023-11-23 07:48:26 -08:00
TW 6a5feaffac
Merge pull request #7941 from ThomasWaldmann/lockroster-remove-fix-master
LockRoster.modify: no KeyError if element was already gone, fixes #7937
2023-11-18 20:32:17 +01:00
Thomas Waldmann 2d86b7e1ac
add type annotation for mypy 2023-11-18 18:31:43 +01:00
Thomas Waldmann 046f9fe392
LockRoster.modify: no KeyError if element was already gone, fixes #7937
The intention of LockRoster.modify(key, REMOVE) is to remove self.id.

Using set.discard will just ignore it if self.id is not present there anymore.

Previously, using set.remove triggered a KeyError that has been frequently
seen in tracebacks of teardowns involving Repository.__del__ and Repository.__exit__.

I added a REMOVE2 op to serve one caller that needs to get the KeyError if
self.id was not present.

Thanks to @herrmanntom for the workaround!
2023-11-18 17:39:30 +01:00