Commit Graph

4857 Commits

Author SHA1 Message Date
Thomas Waldmann 73a70082c2 compress extension: build lz4 like zstd, see #3415 2017-12-18 00:53:26 +01:00
Thomas Waldmann c8b2820225 bundle lz4 1.8.0 src code, license 2017-12-15 06:33:04 +01:00
TW e203b8739b
Merge pull request #3411 from ThomasWaldmann/zstd
add zstd compression
2017-12-15 01:55:20 +01:00
TW 50e1759460
Merge pull request #3433 from ThomasWaldmann/fix-cpp-macros
add parens for C preprocessor macro argument usages
2017-12-15 00:43:12 +01:00
TW 7317dc3239
Merge pull request #3434 from ThomasWaldmann/fix-prune-man-page
fix building the "borg prune" man page, fixes #3398
2017-12-15 00:41:25 +01:00
Thomas Waldmann 34b92ffdaa 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
2017-12-15 00:29:26 +01:00
Thomas Waldmann 50c0831824 add setup_zstd.py from python-zstandard project, as is 2017-12-15 00:29:26 +01:00
Thomas Waldmann dc883f62ae bundle zstd 1.3.2 source code
only .c and .h files + license
2017-12-15 00:29:26 +01:00
Thomas Waldmann aec36f64a2 zstd: use own Cython-based binding, remove python-zstandard dep
currently requires an externally available libzstd >= 1.3.0,
no bundled zstd yet.
2017-12-15 00:29:26 +01:00
Thomas Waldmann 11b2311e6e add zstd compression
based on willyvmm's work in PR #3116, but some changes:

- removed any mulithreading changes
- add zstandard in setup.py install_requires
- tests
- fix: minimum compression level is 1 (not 0)
- use 3 for the default compression level
- use ID 03 00 for zstd
- only convert to bytes if we don't have bytes yet
- move zstd code so that code blocks are ordered by ID
- other cosmetic fixes
2017-12-15 00:29:26 +01:00
TW 029d9ac00b
Merge pull request #3435 from ThomasWaldmann/add-missing-borg-config-manpage
git add docs/man/borg-config.1
2017-12-13 04:42:08 +01:00
Thomas Waldmann d81ea0321d git add docs/man/borg-config.1 2017-12-13 04:40:20 +01:00
Thomas Waldmann 1f5b8c9219 fix building the "borg prune" man page, fixes #3398
will fix all ".. highlight:: none" issues (just killing it).

also a slight punctuation fix, so there is a dot at the end of
the prune man page.
2017-12-13 04:33:50 +01:00
Thomas Waldmann a3cecf599f add parens for C preprocessor macro argument usages
this is needed for correctness because the preprocessor is just
doing text replacement.

This is the correct way:

#define MUL(x, y) ((x) * (y))

MUL(1+2, 3-4) -> ((1+2) * (3-4))    # not: (1+2 * 3-4)

I didn't put parens around all arg usages for readability.

Some stuff (like index) is not expected to be an expression.

Also, when a arg is only used in another macro or function call,
no parens are needed either.

I reviewed the code: no harm was done (yet) due to this fault.

Thanks to @rciorba who found this.
2017-12-13 04:01:59 +01:00
TW f99785a00d
Merge pull request #3088 from n-st/list-help-topics
List help topics when invalid topic is requested
2017-12-13 02:54:45 +01:00
TW 59ac75cf17
Merge pull request #3429 from pngwjpgh/feat/reverse-fqdn
Add placeholder for fqdn in reverse notation
2017-12-13 00:40:55 +01:00
Gregor Kleen 294f06b565 Refactor: call getfqdn() once per call of replace_placeholders() 2017-12-12 12:44:17 +01:00
Gregor Kleen 85fb38e2f3 Add placeholder for fqdn in reverse notation 2017-12-11 23:00:38 +01:00
TW e838b48b60
Merge pull request #3421 from ThomasWaldmann/add-config-docs-master
add auto-generated docs for borg config
2017-12-09 22:23:57 +01:00
Thomas Waldmann ce92960c63 add auto-generated docs for borg config
also: move a bit upwards in the use docs
(cherry picked from commit 278ed640e9)
2017-12-09 13:43:36 +01:00
TW 3f4dfc9874
Merge pull request #3405 from milkey-mouse/no-borgfs-html-docs
Don't generate HTML docs page for borgfs
2017-12-03 03:02:29 +01:00
Milkey Mouse 897c003588
Don't generate HTML docs page for borgfs (fixes #3404) 2017-12-02 12:52:37 -08:00
TW c4e56169e5
Merge pull request #3397 from ThomasWaldmann/port-1.1.3-last-minute-changes
Port 1.1.3 last minute changes
2017-12-02 21:19:12 +01:00
Thomas Waldmann 5cf48eeb16 borg mount: fix hardlink processing, fixes #3388
when the result list after stripping was empty,
os.path.join(*emptylist) fails as it want 1+ args.

(cherry picked from commit dc8de36109)
2017-12-02 18:13:11 +01:00
Thomas Waldmann 4fcb413802 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]

(cherry picked from commit 23a1d62b25)
2017-12-02 18:13:11 +01:00
Thomas Waldmann 209bf2dc24 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.

(cherry picked from commit 831a06a07d)
2017-12-02 18:13:11 +01:00
Thomas Waldmann 75854c1243 security: fix enforcement of --restrict-to-path in args processing
Fixes CVE-2017-15914 (affects releases 1.1.0, 1.1.1, 1.1.2,
but not 1.0.x).

Thanks to Florian Apolloner for discovering/reporting this!

Also: added tests for this.
(cherry picked from commit ea0203bb0d)
2017-12-02 18:13:11 +01:00
TW 1cf6e1e103
Merge pull request #3407 from ThomasWaldmann/exclude-broken-pytest330
exclude broken pytest 3.3.0 release
2017-12-02 18:02:40 +01:00
Thomas Waldmann 43184f2dd1 exclude broken pytest 3.3.0 release
https://github.com/pytest-dev/pytest/issues/2957
2017-12-02 17:43:38 +01:00
TW 1bf8d43e37
Merge pull request #3387 from ThomasWaldmann/docs-fix-broken-links
docs: fix broken links
2017-11-27 00:01:30 +01:00
Thomas Waldmann 63bdae8314 docs: fix broken links
(cherry picked from commit c7994b598b)
2017-11-27 00:00:46 +01:00
TW 510d44450a
Merge pull request #3384 from ThomasWaldmann/link-to-hp-support
link to the homepage for support/service
2017-11-26 23:38:29 +01:00
Thomas Waldmann c2521a7759 link to the homepage for support/service
otherwise people ONLY reading the docs (and not coming from the
homepage) will miss these options.

(cherry picked from commit 7438cb2ef4)
2017-11-26 23:37:04 +01:00
Michael Rupert 6dd54f93ce fixed support links (#3379)
fixed support links
2017-11-26 05:10:22 +01:00
TW c312a9a95b
Merge pull request #3377 from milkey-mouse/fix-build-man
Fix build_man issues
2017-11-26 04:09:03 +01:00
Milkey Mouse 2a83098fac
Fix build_man issues (fixes #3364) 2017-11-25 19:03:00 -08:00
TW c848141f06
Merge pull request #3375 from ThomasWaldmann/docs-fixes
misc. docs fixes / updates
2017-11-26 03:58:01 +01:00
TW 6b5b4e476b
Merge pull request #3376 from milkey-mouse/borg-config-cmd
Reword borg config help
2017-11-26 02:07:33 +01:00
Milkey Mouse 559ec0062e
Use name of command for "virtual man page" name
This makes it slightly easier to debug manpage issues without removing
the virtmanpage hack.
2017-11-25 17:06:02 -08:00
Milkey Mouse f44335f91d
Reword basic borg config help
It doesn't edit the repo config, but any borg-related config.
2017-11-25 16:02:38 -08:00
Thomas Waldmann 0eaec60384 docs: give examples for borg mount exclusion options 2017-11-25 20:18:59 +01:00
Thomas Waldmann 91ff2f81a6 docs: move bsdflags tuning comments to notes docs section
the atime comments are already there.
2017-11-25 20:08:33 +01:00
Thomas Waldmann a107233f75 docs: document birthtime support on platforms supporting it
stat.st_birthtime, MacOS and (some?) BSDs.
2017-11-25 19:51:33 +01:00
Thomas Waldmann e3cb7c3c32 docs: document good and problematic option placements, see #3356 2017-11-25 19:46:48 +01:00
Thomas Waldmann f2a1539f25 docs: fix examples with problematic option placements, fixes #3356
have options to the left OR to the right of all positional arguments,
but not on BOTH sides and not in between them.
2017-11-25 19:29:34 +01:00
TW f45acbb908
Merge pull request #3366 from ThomasWaldmann/create-tuning-options
docs: point out tuning options for borg create, fixes #3239
2017-11-25 15:27:27 +01:00
Thomas Waldmann 520a6a2ef1 docs: point out tuning options for borg create, fixes #3239 2017-11-25 15:21:43 +01:00
TW 4835dce913
Merge pull request #3363 from ThomasWaldmann/update-usage-man
update usage / man
2017-11-25 14:53:35 +01:00
Thomas Waldmann ef8217afc9 build_man (master)
also: git add borgfs.1
2017-11-25 14:38:04 +01:00
Thomas Waldmann 73fac09dda build_usage (master)
also: add new borgfs.rst.inc
2017-11-25 14:35:52 +01:00