Commit Graph

5596 Commits

Author SHA1 Message Date
Stefan Majewsky fc2c92b054 add a push-style example to borg-create(1) (#4613)
add a push-style example to borg-create docs

When I browsed the readthedocs and manpages while setting up Borg for
myself for the first time, I saw multiple hints that pushing backups via
SSH is supported (e.g. the existence of the `borg serve` command and the
`--rsh` option), but I never found a clear example. I only found
<https://borgbackup.readthedocs.io/en/stable/usage/general.html#repository-urls>
after being pointed to it by @ThomasWaldmann.

Therefore, an explicit example in the `borg create` documentation seems
appropriate. I put it next to the pull-style example using sshfs which
serves a similar usecase.
2019-08-09 22:46:57 +02:00
TW 0db031ac4a
Merge pull request #4715 from ThomasWaldmann/forward-port-4583
timestamps in the files cache are now usually ctime, fixes #4583
2019-08-09 22:00:46 +02:00
Thomas Waldmann 8622014188 timestamps in the files cache are now usually ctime, fixes #4583 2019-08-09 21:27:30 +02:00
TW 97eca3d287
Merge pull request #4713 from saurvs/forward-port-4698
Forward port #4698
2019-08-09 16:02:29 +02:00
TW 8a401d3c0b
Merge pull request #4712 from saurvs/forward-port-4646
Forward port #4646
2019-08-09 15:58:11 +02:00
TW 1aaf16a480
Merge pull request #4711 from saurvs/forward-port-4707
Forward port #4705
2019-08-09 15:54:40 +02:00
Thomas Waldmann 8b49c4d2df Repository.check_can_create_repository: use stat() to check
similar issue as #4695.

(cherry picked from commit 4911720faf)
2019-08-09 15:10:15 +05:30
Thomas Waldmann bb7a9e6c20 Repository.open: use stat() to check for repo dir, fixes #4695
(cherry picked from commit ec3fad0f85)
2019-08-09 15:09:48 +05:30
Thomas Waldmann 9c3a572638 SecurityManager.known(): check all files, fixes #4614
Before this fix, because known() only checked the key-type file, the
location file could go missing without being automatically regenerated.

Now a save() is triggered if not all files are present.

(cherry picked from commit c68cad9727)
2019-08-09 15:05:30 +05:30
Thomas Waldmann d4d4b7e4a9 after double-force delete, warn about necessary repair, fixes #4704
the borg check --repair is needed to clean up all the orphaned chunks.

if the message is emitted on INFO log level, people likely do not see
it if they use default WARNING log level (they did not give -v).

(cherry picked from commit 389afcae9d)
2019-08-09 14:59:39 +05:30
TW e299ad824c
Merge pull request #4701 from ntova/py38-testing
tox / travis: add testing on py38-dev
2019-07-30 15:08:12 +02:00
ntova 3e0bed4b36 tox / travis: add testing on py38-dev 2019-07-30 11:08:03 +02:00
TW 171392d1ff
Merge pull request #4697 from ntova/docs-benchmark-compact-clarification
docs: benchmark crud: clarify that space is used until compact
2019-07-28 15:51:51 +02:00
ntova c2ae9673b4 docs: benchmark crud: clarify that space is used until compact 2019-07-28 15:29:44 +02:00
TW 5293d4987c
Merge pull request #4686 from tgdnt/master
Update documentation of borg create
2019-07-17 17:42:39 +02:00
Tiago Donato 8db4106150
Update documentation of borg create
Corrects a mention of borg 1.1 as a future version.
2019-07-15 21:53:30 -05:00
TW 6273c594b0
Merge pull request #4679 from nomeata/patch-1
RST syntax fix in docs
2019-07-11 15:58:01 +02:00
Joachim Breitner b86aaa606d
RST syntax fix in docs 2019-07-09 10:23:33 +02:00
TW 76655b18d0
Merge pull request #4669 from ThomasWaldmann/forward-ports-master
forward ports to master
2019-07-07 14:39:31 +02:00
Thomas Waldmann 097677b14f fix preloading for old remote servers, fixes #4652
if the remote server does not support the dict-based argument passing
yet (e.g. when accidentally using borg 0.29 on rsync.net), the GET rpc
call argument list failed to generate if the command currently being
processed was not a GET also.

note: rsync.net has a more recent borg as "borg1".
2019-07-02 23:13:30 +02:00
Thomas Waldmann c0a617c6a9 cope with ANY error when importing pytest into borg.testsuite, #4652
this happened because the user had pytest5 installed somehow,
although it is incompatible with python 3.4:

# python3 /usr/local/bin/borg --version
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/borg/archiver.py", line 81, in <module>
    from .selftest import selftest
  File "/usr/local/lib/python3.4/dist-packages/borg/selftest.py", line 21, in <module>
    from .testsuite.hashindex import HashIndexDataTestCase, HashIndexRefcountingTestCase, HashIndexTestCase
  File "/usr/local/lib/python3.4/dist-packages/borg/testsuite/__init__.py", line 29, in <module>
    from pytest import raises
  File "/usr/local/lib/python3.4/dist-packages/pytest.py", line 6, in <module>
    from _pytest.assertion import register_assert_rewrite
  File "/usr/local/lib/python3.4/dist-packages/_pytest/assertion/__init__.py", line 6, in <module>
    from _pytest.assertion import rewrite
  File "/usr/local/lib/python3.4/dist-packages/_pytest/assertion/rewrite.py", line 443, in <module>
    ast.MatMult: "@",
AttributeError: 'module' object has no attribute 'MatMult'
2019-07-02 23:12:43 +02:00
TW d02356e9c0
Merge pull request #4656 from emichael/master
Fix invalid archive error message
2019-07-01 19:10:08 +02:00
Ellis Michael b6a7a0806e
Fix invalid archive error message 2019-06-30 18:04:54 -07:00
TW 5594f5b270
Merge pull request #4645 from thiagomacieira/fiz-zlib-bad-assumption
Fix broken test that relied on improper zlib assumptions
2019-06-28 17:14:39 +02:00
Thiago Macieira 575a348ce4 Fix broken test that relied on improper zlib assumptions
This test assumed that zlib would always produce the same output for a
given input, and that assumption has proven incorrect. It rested on
zlib never improving. The zlib shipped in Clear Linux has algorithm
improvements, which caused this test to break.

This patch instead decompresses the expected value and compares that.

Signed-off-by: Thiago Macieira <thiago.macieira@intel.com>
2019-06-25 16:00:11 -07:00
Elmar Hoffmann 443958a79b support xxh64 checksum in addition to the hashlib hashes in borg list
also: point out it is not a cryptographic hash
2019-06-24 08:46:58 +02:00
TW 70e921d022
Merge pull request #4640 from russelldavis/fix-osxfuse-link
Fix osxfuse github link in installation docs
2019-06-24 08:20:12 +02:00
Russell Davis 3fb5998bae Fix osxfuse github link in installation docs
It was broken because there's already a different reference named
github in `docs/global.rst.inc`. Fixed by using an anonymous hyperlink
reference, per https://stackoverflow.com/a/14067756/278488
2019-06-23 19:24:37 -07:00
TW fac8f57c31
Merge pull request #4636 from elho/second-archive-placeholder
Enable placeholder usage in all extra archive arguments
2019-06-23 12:54:06 +02:00
Elmar Hoffmann a26065064d enable placeholder usage in all extra archive arguments 2019-06-23 02:28:26 +02:00
TW 72979caf8b
Merge pull request #4625 from ThomasWaldmann/oi
vagrant: add up-to-date openindiana box (py35, openssl10)
2019-06-17 12:05:58 +02:00
Thomas Waldmann 7a175d79b6 vagrant: add up-to-date openindiana box (py35, openssl10) 2019-06-17 02:49:56 +02:00
TW ade48b6ecc
Merge pull request #4623 from elho/docs-typofix
Documentation spelling fix
2019-06-15 20:58:58 +02:00
Elmar Hoffmann d2595065b4 fix spelling 2019-06-15 13:19:43 +02:00
TW 47fa7a83a7
Merge pull request #4620 from ThomasWaldmann/quickstart-passphrase-providing-master
how to supply a passphrase, use crypto devices, fixes #4549
2019-06-10 23:21:59 +02:00
TW a178a110f0
Merge pull request #4619 from ThomasWaldmann/document-extract-limitation-master
extract: document limitation "needs empty destination", fixes #4598
2019-06-10 23:21:03 +02:00
Thomas Waldmann faae9c9d56 how to supply a passphrase, use crypto devices, fixes #4549 2019-06-10 22:31:29 +02:00
Thomas Waldmann 897e81dbe9 extract: document limitation "needs empty destination", fixes #4598 2019-06-10 21:39:35 +02:00
TW b989b66584
Merge pull request #4616 from ThomasWaldmann/fix-4607-extract-hl-crash-master
extract: fix KeyError for "partial" extraction, fixes #4607 (master fwd port)
2019-06-10 21:09:16 +02:00
Thomas Waldmann 71c7efd17c extract: fix KeyError for "partial" extraction, fixes #4607
note that "partial" even applied to giving an always matching condition.

"full" is only assumed if no conditions are given.
2019-06-10 20:18:44 +02:00
TW 0ecd4e19c0
Merge pull request #4612 from ThomasWaldmann/master-fixes
remove superfluous whitespace in docs
2019-06-09 14:45:56 +02:00
Thomas Waldmann dc8077acba remove superfluous whitespace in docs 2019-06-09 14:45:18 +02:00
TW 8a6463d7bc
Merge pull request #4605 from ThomasWaldmann/use-borg-repo
Use BORG_REPO
2019-06-04 23:37:27 +02:00
TW 8c29209195
Merge pull request #4602 from FelixSchwarz/unbundle-xxhash
ability to unbundle xxhash
2019-06-04 23:36:56 +02:00
TW 8f27861c74
Merge pull request #4603 from FelixSchwarz/fix-cython-setup
setup.py: fix detection of missing Cython
2019-06-04 23:17:51 +02:00
Felix Schwarz 2ff06c58f0 ability to use a system-provided version of "xxhash"
The build process can be controlled via environment variables
similar to other bundled libraries in borgbackup. The main difference
is probably that upstream does not provide a pkgconfig file for
xxhash.

Therefore borg will probably fail to detect the system-provided
version by default (tested on Fedora, seems like Debian and Ubuntu
do not ship a pkgconfig file either). I kept the pkgconfig lookup
code anyway to keep the code as similar as possible to
"setup_compress.py"/"setup_crypto.py".

Setting BORG_LIBXXHASH_PREFIX=/usr helps borg to detect xxhash
on my system (Fedora). You can force the use of the bundled
version of xxhash by setting BORG_USE_BUNDLED_XXHASH=1.
2019-06-04 21:59:26 +02:00
Felix Schwarz ce146c8b55 reference struct "XXH64_state_t" only via an opaque pointer
Upstream recommends this whenever xxhash is linked dynamically:
https://github.com/Cyan4973/xxHash/issues/63#issuecomment-218376237

This change is required to unbundle xxhash in the next commit.
2019-06-04 21:59:26 +02:00
Thomas Waldmann 42de5b9a79 location arg - should it be optional? fixes #4541.
compact / config: yes, should be optional (can get repo from BORG_REPO
environment variable)

some debug commands: rather not, have non-optional addtl. posargs
2019-06-04 19:36:20 +02:00
Thomas Waldmann c0804ff5a2 argparser: always use REPOSITORY in metavar
also: use more consistent help phrasing.
2019-06-04 19:36:10 +02:00
Felix Schwarz e6426d3386 setup.py: fix detection of missing Cython
v2: use a list comprehension instead map() (suggested by Thomas Waldmann)
2019-06-04 17:50:00 +02:00