Thomas Waldmann
bd5060887c
pyinstaller: add borghash to hidden imports
2024-10-31 22:19:30 +01:00
Thomas Waldmann
66e17ff6c8
build_usage, build_man
2024-10-31 20:50:06 +01:00
Thomas Waldmann
63c74ca313
update CHANGES
2024-10-31 20:45:33 +01:00
TW
3a66fd78c2
Merge pull request #8504 from ThomasWaldmann/debug-show-chunksindex-stats
...
chunks index: show hashtable stats at debug log level, fixes #506
2024-10-31 20:28:05 +01:00
Thomas Waldmann
1ec66edeff
chunks index: show hashtable stats at debug log level, fixes #506
2024-10-31 20:07:09 +01:00
TW
1f00d29d19
Merge pull request #8502 from ThomasWaldmann/borghash
...
replace old hashindex code by borghash + small wrapper
2024-10-31 19:26:49 +01:00
Thomas Waldmann
c37c78f6be
change xxh64 seed for ChunkIndex to invalidate old cache contents
...
borg2 < beta 12 used the old hashindex code to serialize the ChunkIndex.
beta 12 uses borghash now and the serialization format is different.
2024-10-31 17:47:22 +01:00
Thomas Waldmann
601fc48388
require borghash
2024-10-31 17:18:34 +01:00
Thomas Waldmann
06c44b0284
hashindex: cimport -> import
2024-10-31 15:29:58 +01:00
Thomas Waldmann
1fa2b9a1a0
vagrant: fix macos1012 box, try 5
2024-10-29 18:12:17 +01:00
Thomas Waldmann
af8d2583a5
vagrant: fix macos1012 box, try 4
2024-10-29 14:44:37 +01:00
Thomas Waldmann
66f06f156d
vagrant: fix macos1012 box, try 3
2024-10-28 23:16:50 +01:00
Thomas Waldmann
3fb543dd2b
vagrant: fix macos1012 box, try 2
2024-10-28 21:35:33 +01:00
TW
7a2d174d4e
Merge pull request #8497 from ThomasWaldmann/vagrant-pyenv-reduce
...
vagrant: reduce pythons built, fix macos box
2024-10-28 21:17:11 +01:00
Thomas Waldmann
3a7881f8dd
vagrant: fix macos1012 box (curl, ca-certificates, openssl@3)
2024-10-28 21:10:28 +01:00
Thomas Waldmann
2ca8ef33e1
vagrant: pyenv: only install python 3.12
...
on macOS, installing older Pythons seems to uninstall OpenSSL 3 and only 1.1 is left.
also, building all these pythons and misc. openssl versions takes forever and we
only need 3.12 for the binary build. testing on misc. python versions is regularly
done one github actions CI.
2024-10-28 10:41:30 +01:00
TW
b428f8496d
Merge pull request #8494 from ThomasWaldmann/fix-macos-vagrant
...
avoid broken pip 24.2
2024-10-28 00:45:46 +01:00
TW
c7c204e713
Merge pull request #8492 from ThomasWaldmann/fix-archive-size-transfer
...
work around missing size/nfiles archive metadata, fixes #8491
2024-10-27 13:16:13 +01:00
Thomas Waldmann
43ec9fc7f3
avoid broken pip 24.2
...
- it is broken on old macOS
- python 3.12.5/6/7 has bundled pip 24.2
2024-10-27 13:04:51 +01:00
Thomas Waldmann
cea2d5809d
work around missing size/nfiles archive metadata, fixes #8491
2024-10-27 01:19:08 +02:00
Thomas Waldmann
ec11ac259b
hashindex: remove permit_compact arguments, not used
2024-10-26 21:53:53 +02:00
Thomas Waldmann
f59e0249be
hashindex: move common code to Mixin class
2024-10-26 20:16:23 +02:00
Thomas Waldmann
742fe74132
hashindex: inherit from MutableMapping, implement __iter__
2024-10-26 20:06:33 +02:00
Thomas Waldmann
fb22e76573
adapt to borghash recent api cleanup
2024-10-26 19:25:14 +02:00
Thomas Waldmann
9775adf52b
implement .clear
2024-10-26 19:09:12 +02:00
Thomas Waldmann
68143d6f99
hashindex: remove .compact
...
our on disk formats only store used keys/values,
so they are always compact on-disk.
2024-10-26 00:47:43 +02:00
Thomas Waldmann
3c794fa980
hashindex: simplify .pop
2024-10-26 00:37:00 +02:00
Thomas Waldmann
bdf2602e7c
hashindex: simplify .get
2024-10-26 00:30:32 +02:00
Thomas Waldmann
d2fe067647
import directly from borghash
2024-10-26 00:18:36 +02:00
Thomas Waldmann
b7035f188b
remove _endian.h, not used anymore
2024-10-25 19:19:02 +02:00
Thomas Waldmann
ab08eea196
remove hashindex tests from selftests
...
there isn't much left anyway, testing the core hashtable
functionality now happens in borghash project.
Also: switch these tests to pytest.
2024-10-25 19:14:57 +02:00
Thomas Waldmann
03596e3651
remove unused _hashindex.c, update setup.py
...
also the hash_sizes.py script, which was used for _hashindex.c.
2024-10-25 19:03:38 +02:00
Thomas Waldmann
5996b45b1d
hashindex: cleanup .pyi
2024-10-25 18:29:41 +02:00
Thomas Waldmann
bacb923571
hashindex: cleanups, docstrings
2024-10-25 18:20:54 +02:00
Thomas Waldmann
2c9a5a7bb7
legacyrepository: remove quota tracking tests, fix other tests
2024-10-25 18:09:12 +02:00
Thomas Waldmann
7fffb0dbb1
hashindex: add NSIndex1 write support, fix iteritems
...
to get the unit tests working, we better have write support for the
borg 1.x format.
iteritems grew support for the marker kwarg.
2024-10-25 18:02:56 +02:00
Thomas Waldmann
64bda1a636
misc cleanups
...
- remove more hashindex tests
- remove IndexBase, _hashindex.c remainders
- remove early borg2 NSIndex
- remove hashindex_variant (we only support borg 1.x repo index
aka NSIndex1, everything else uses the borghash based stuff)
- adapt code / tests so they use NSIndex1 (not NSIndex)
- minor fixes
- NSIndex1 can read the old borg 1.x on-disk format, but not write it.
- NSIndex1 can read/write the new borghash on-disk format.
- adapt legacyrepository code to work with NSIndex1 (segment, offset)
values instead of NSIndex (segment, offset, size).
2024-10-25 17:03:49 +02:00
Thomas Waldmann
57e46cdfe5
remove NSIndex1a
2024-10-25 03:33:27 +02:00
Thomas Waldmann
7bb6b3ebfe
NSIndex1: use borghash.HashTableNT
...
Also:
- have a small wrapper class NSIndex1 around HashTableNT to
adapt API difference and add some special methods.
- keep old code as NSIndex1a
2024-10-25 03:29:46 +02:00
Thomas Waldmann
ca582b640c
FuseVersionsIndex: use borghash.HashTableNT
...
Also:
- have a small wrapper class FuseVersionsIndex around HashTableNT to
adapt API difference and add some special methods.
2024-10-24 23:59:53 +02:00
Thomas Waldmann
ad5b18008d
ChunkIndex: use borghash.HashTableNT
...
Also:
- remove most hashindex tests, borghash has such tests
- have a small wrapper class ChunkIndex around HashTableNT to
adapt API difference and add some special methods.
Note: I needed to manually copy the .pxd files from borghash
into cwd, because they were not found:
- ./borghash.pxd
- borghash/_borghash.pxd
2024-10-24 23:35:32 +02:00
TW
f7f2f23a7c
Merge pull request #8489 from ThomasWaldmann/fix-8485
...
lock after checking repo exists, fixes #8485
2024-10-24 02:41:29 +02:00
TW
44aab3fca6
Merge pull request #8488 from ThomasWaldmann/py313
...
CI: use "3.13" (w/o "-dev")
2024-10-24 00:16:31 +02:00
TW
defb7237ed
Merge pull request #8487 from ThomasWaldmann/fix-8486
...
prune: fix exception when NAME is given, fixes #8486
2024-10-24 00:13:23 +02:00
Thomas Waldmann
9130baf973
lock after checking repo exists, fixes #8485
2024-10-24 00:06:45 +02:00
Thomas Waldmann
e1347ef9ab
CI: use "3.13" (w/o "-dev")
2024-10-23 23:21:18 +02:00
Thomas Waldmann
75b8030ed5
prune: fix exception when NAME is given, fixes #8486
2024-10-23 22:51:35 +02:00
TW
d510555b1b
Merge pull request #8481 from ThomasWaldmann/updates-changes
...
update CHANGES
2024-10-19 04:11:33 +02:00
Thomas Waldmann
b6eb5b239f
update CHANGES
2024-10-19 03:49:28 +02:00
TW
b00ae897f1
Merge pull request #8477 from ThomasWaldmann/non-existing-repo-errors
...
simple error msg for non-existing repo, fixes #8475
2024-10-16 18:41:18 +02:00