Commit graph

25 commits

Author SHA1 Message Date
Thomas Waldmann
8f271ed7fc git mv _msgpack algorithms/msgpack
we have all other bundled stuff there already.
2019-05-13 23:27:18 +02:00
Thomas Waldmann
c188a0b0bc add "# cython: language_level=3" directive to .pyx files, fixes #4214
in master branch, it was possible to do this via setup.py's
cythonize() calls, but we do not have them in 1.1.

thus, i modified the source files, setting the language level to 3,
which is supported since long in Cython (3str is only supported since
recently so might fail with older Cython versions).

Before this changeset, current Cython 0.29.x emitted a FutureWarning,
but still compiled. The next major release of Cython is said to emit
an error instead, so this changeset hopefully avoids the build breaking
after a Cython upgrade.
2019-01-05 20:12:32 +01:00
Thomas Waldmann
f7c7384285 update bundled lz4 code to 1.8.2 2018-06-02 01:25:52 +02:00
Thomas Waldmann
d4d5f0c447 update bundled zstd to 1.3.4, fixes #3745 2018-04-13 00:24:29 +02:00
Thomas Waldmann
1bdaffc62c crypto.low_level extension: build blake2 like zstd, see #3415
(cherry picked from commit 4a2fec32b6)
2017-12-18 04:29:33 +01:00
Thomas Waldmann
0118b939d9 update blake2 reference impl file (cosmetic)
only whitespace changes.

(cherry picked from commit b56f6cdbc0)
2017-12-18 04:26:15 +01:00
Thomas Waldmann
ba38d5199b move blake2 files to subdir ref/ (as seen in orig. repo)
(cherry picked from commit 8924d78d44)
2017-12-18 04:25:57 +01:00
Thomas Waldmann
7d8ec62b50 compress extension: build lz4 like zstd, see #3415
(cherry picked from commit 73a70082c2)
2017-12-18 02:41:30 +01:00
Thomas Waldmann
49f76a1e32 bundle lz4 1.8.0 src code, license
(cherry picked from commit c8b2820225)
2017-12-18 02:38:52 +01:00
Thomas Waldmann
c7383589cc bundle zstd 1.3.2 source code
only .c and .h files + license

(cherry picked from commit dc883f62ae)
2017-12-15 03:14:33 +01:00
Thomas Waldmann
0271ae6f95 support code to build bundled zstd code into the compress extension
setup_zstd.py modified so it is just amending the Extension() kwargs,
but the Extension is initialized by the caller.

this way, amending can happend multiple times (e.g. for multiple
compression algorithms).

also:
- move include/library dirs processing for system-library case
- move system zstd prefix detection to setup_zstd module
- cosmetic: setup.py whitespace fixes
- prefer system zstd option, document zstd min. requirement

(cherry picked from commit 34b92ffdaa)
2017-12-15 03:13:54 +01:00
Thomas Waldmann
01078328e2 zstd: use own Cython-based binding, remove python-zstandard dep
currently requires an externally available libzstd >= 1.3.0,
no bundled zstd yet.

(cherry picked from commit aec36f64a2)
2017-12-15 03:08:28 +01:00
Thomas Waldmann
23a1d62b25 crc32-slice-by-8.c: fix for C90 compilers
crc32_slice_by_8.c:344:3: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]
2017-11-27 01:01:34 +01:00
Thomas Waldmann
831a06a07d move 3rd party docs/license file from package dir to docs/3rd_party
setup.py excludes all .c .h .pyx files from installation, but such
docs / license files would still be copied to the target directory
if they are inside the python "borg" package dir.
2017-11-27 00:02:37 +01:00
Thomas Waldmann
3d3f3500f9 crc32: deal with unaligned buffer, tests, fixes #3317
fixing only the (generic) slice-by-8 crc32 implementation,
it is assumed that CPUs supporting CLMUL can also efficiently
and correctly deal with unaligned accesses.

slice-by-8 is used e.g. on ARM cpus and they might not (efficiently)
support unaligned memory access, leading to bus errors or low
performance.

(cherry picked from commit f9cd6f7512)
2017-11-14 15:33:28 +01:00
Marian Beermann
019a258709 create _endian.h 2017-07-11 19:12:19 +02:00
Andrea Gelmini
e4247cc0d2 Fix typos 2017-06-09 16:49:30 +02:00
Marian Beermann
5b9c34f523 borg.algorithms definition 2017-06-07 23:53:19 +02:00
Marian Beermann
3f8a0221ee Revert "move chunker to borg.algorithms"
This reverts commit 956b50b29c.

# Conflicts:
#	setup.py
#	src/borg/archive.py
#	src/borg/helpers.py
2017-06-07 23:51:42 +02:00
Marian Beermann
909f099b1a algorithms.checksums: work around GCC 4.4 bug by disabling CLMUL
Also disabling this code path for 4.5; 4.6 was tested iirc.
2017-06-05 15:07:49 +02:00
Marian Beermann
6c91a750d1 algorithms: rename crc32 to checksums 2017-06-01 21:26:42 +02:00
Marian Beermann
0221e31058 file_integrity: use xxh64 2017-06-01 21:26:42 +02:00
Marian Beermann
956b50b29c move chunker to borg.algorithms 2017-05-02 19:15:01 +02:00
Marian Beermann
390aa76c72 move blake2 to borg/algorithms 2017-05-02 18:53:54 +02:00
Marian Beermann
fa381ffcbe create package borg.algorithms with borg.algorithms.crc32 module 2017-05-02 18:53:54 +02:00