1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-29 11:16:43 +00:00
Commit graph

4948 commits

Author SHA1 Message Date
Thomas Waldmann
6a6fd31804 use prepared env for calling BORG_PASSCOMMAND, fixes #3050 2017-09-25 04:36:06 +02:00
Thomas Waldmann
ba941b0801 refactor/fix subprocess env preparation
refactor: make a generally usable function

fix: remove support code for ancient pyinstaller

the "else" branch was needed for pyinstaller < 20160820 because it did
not have the LD_LIBRARY_PATH_ORIG env var, so we just killed LDLP
because we had no better way.

but with borg tests running under fakeroot, this is troublesome as
fakeroot uses this also and can't find its library without it.

so, just remove it, we do not need to support old pyinstaller.
2017-09-25 04:34:58 +02:00
Thomas Waldmann
8646216a06 remote: deal with partial lines, fixes #2637
due to block buffering (in borg, pipes, sshd, ssh) partial lines might
be received. for plain text, this causes cosmetic issues, for json it
causes tracebacks due to parse errors.

the code now makes sure handle_remote_line() only gets called with a
complete line (which is terminated by any universal newline char, a
pure \r seems to be needed for remote progress displays).

it also fixes a yet undiscovered partial utf-8-sequence decoding issue
that might occur for the same reason.
2017-09-25 02:44:54 +02:00
TW
d719c1eb70 Merge pull request #3037 from ThomasWaldmann/remove-110b-logger
remove client_supports_log_v3 flag, fixes #3033
2017-09-25 00:50:36 +02:00
TW
ed36839f96 Merge pull request #3057 from ThomasWaldmann/pyi-use-py36
use Python 3.6.2 for the pyinstaller binary
2017-09-24 22:16:32 +02:00
Thomas Waldmann
2ee068317c use Python 3.6.2 for the pyinstaller binary 2017-09-24 22:15:07 +02:00
TW
ad2bdef9f6 Merge pull request #3056 from ThomasWaldmann/pyi33-get-from-fixes-branch
pyinstaller: use v3.3, fetch from v3.3-fixed branch
2017-09-24 22:05:00 +02:00
Thomas Waldmann
eaa1290502 pyinstaller: use v3.3, fetch from v3.3-fixed branch 2017-09-24 22:01:33 +02:00
TW
bb5be2bfae Merge pull request #3047 from ThomasWaldmann/doc-updates
doc updates
2017-09-23 21:27:01 +02:00
Thomas Waldmann
112bf43956 docs: twitter account @borgbackup, fixes #2948 2017-09-22 23:36:48 +02:00
Thomas Waldmann
d8766df998 docs: add note about metadata dedup and --no[ac]time, fixes #2518 2017-09-22 23:08:33 +02:00
Thomas Waldmann
713be765d1 docs: change-passphrase only changes the passphrase, fixes #2990 2017-09-22 22:53:55 +02:00
TW
83be697911 Merge pull request #3043 from ThomasWaldmann/vagrant-updates
use python 3.5.4 to build the binaries
2017-09-22 03:20:39 +02:00
TW
538855e2d3 Merge pull request #3038 from ThomasWaldmann/update-create-docs
more about compression in borg create docs
2017-09-22 02:55:43 +02:00
Thomas Waldmann
507203a759 use python 3.5.4 to build the binaries 2017-09-22 02:52:00 +02:00
TW
9e9398e6cc Merge pull request #3032 from ThomasWaldmann/stderr-flush
flush json mode progress stderr output
2017-09-21 19:14:20 +02:00
Thomas Waldmann
3f16d91fd3 docs: add auto compression example to borg create examples 2017-09-21 14:00:50 +02:00
Thomas Waldmann
0ec6c920b9 docs: add compressor names to be more clear 2017-09-21 04:28:35 +02:00
Thomas Waldmann
c88528512f fix docs: --compression lz4 is the default now, fixes #3034 2017-09-21 04:26:52 +02:00
Thomas Waldmann
54c5049fb9 remove client_supports_log_v3 flag, fixes #3033
the client_supports_log_v3 flag was added to differentiate 1.1.0 beta3
to beta5 clients (which did not support parsing json log format from
server) from >= 1.1.0beta6 clients (which support it).
for clients older than 1.1.0b3, no json log format will be negotiated
anyway.

by removing the client_supports_log_v3 flag support, we drop support for
clients using 1.1.0beta3..5.

thus, a client is now expected to either support old log format (like
borg 1.0.x) or new json format (like borg 1.1.0 >= beta6).

client     server comment
===========================================
any        0.29+  uses $LOG plain remote log format
any        1.0.x  uses $LOG plain remote log format
1.0.x      1.1.0  uses $LOG plain remote log format
1.1.0b1/b2 1.1.0  (uses $LOG plain remote log format)
1.1.0b3-b5 1.1.0  (malfunction)
1.1.0b6    1.1.0  (uses json remote log format)
1.1.0rc    1.1.0  uses json remote log format
1.1.x      1.1.0  uses json remote log format

(beta testing is over and betas are unsupported now)

Note: client_supports_log_v3 flag was added in changeset
      18a2902c9c
2017-09-21 04:11:59 +02:00
Thomas Waldmann
2b75b278da flush json mode progress stderr output
if borg stderr is not connected to a tty, but to ssh (when using
borg client/server), sys.stderr is block buffered (tty: line buffered).

thus we better flush explicitly after emitting a line as the receiving
side can not handle partial json at the end of the block.

also, it might solve some delays, when output didn't arrive at
receiving side in time.
2017-09-18 04:42:30 +02:00
enkore
7c5a9d89b2 delete: support naming multiple archives (#3017)
delete: support naming multiple archives
2017-09-09 23:08:23 +02:00
TW
133e847f8e document utf-8 locale requirement for json mode, #2273 (#3009) 2017-09-08 08:31:51 +02:00
enkore
1e5599dad7 Merge pull request #3011 from ThomasWaldmann/new-screencasts
show/link new screencasts in README, fixes #2936
2017-09-07 21:43:35 +02:00
Thomas Waldmann
7c9561afa2 show/link new screencasts in README, fixes #2936 2017-09-07 19:15:53 +02:00
TW
67cb76809a Merge pull request #2998 from ThomasWaldmann/fix-2994
fix .isoformat() issues
2017-09-07 14:54:46 +02:00
Thomas Waldmann
928bde8676 get rid of datetime.isoformat to avoid bugs like #2994 2017-09-07 14:11:07 +02:00
enkore
2eab60ff49 Merge pull request #3001 from ThomasWaldmann/close-segment
with-lock: close segment file before invoking subprocess
2017-09-07 10:38:45 +02:00
enkore
0607474586 Merge pull request #3002 from ThomasWaldmann/fd-cache-invalidation
FD cache invalidation
2017-09-07 10:36:09 +02:00
Thomas Waldmann
7122913825 repo cleanup/write: invalidate cached FDs 2017-09-06 06:11:39 +02:00
Thomas Waldmann
4a4c8884ee repo: add test case for uncommitted garbage segment files 2017-09-06 06:11:39 +02:00
Thomas Waldmann
573733bc81 fixup: only works for local repos 2017-09-06 04:06:17 +02:00
Thomas Waldmann
b9dce0ebdc with-lock: close segment file before invoking subprocess 2017-09-06 03:49:45 +02:00
Thomas Waldmann
7996a87357 use safe parse_timestamp to parse timestamps, fixes #2994
also: refactor so it is possible to get tz-unaware datetime
objects from parse_timestamp.
2017-09-05 05:51:00 +02:00
Thomas Waldmann
eebb117349 use ISO_FORMAT* constants 2017-09-05 05:02:44 +02:00
Thomas Waldmann
1cb158a4b5 move ISO_FORMAT to constants module
also: add ISO_FORMAT_NO_USECS
2017-09-05 04:44:38 +02:00
TW
9afec263c9 Merge pull request #2997 from ThomasWaldmann/cleanup-vagrant-1.2
vagrant: clean up shell profile init, user name (master)
2017-09-04 21:44:52 +02:00
Thomas Waldmann
ebb4eaed5a vagrant: clean up shell profile init, user name (master)
- deduplicated .bash_profile creation
- now we always have XDISTN=... and LANG=... (not just for pyenv)
- username is just given where needed ("ubuntu" vs "vagrant")
- override for cygwin not needed as init is not global any more
2017-09-04 21:33:23 +02:00
enkore
436be10edb Merge pull request #2996 from mgee/improve-macos-faq-entry
Improve macOS faq entry
2017-09-03 20:14:09 +02:00
Markus Engelbrecht
e157328228 Use correct casing for macOS 2017-09-03 20:04:28 +02:00
Markus Engelbrecht
aadb9cd2ee Fix macOS keychain integration command 2017-09-03 20:03:11 +02:00
TW
86c0b66de3 Merge pull request #2988 from ThomasWaldmann/recover-segments-memory-usage
recover_segment: use mmap(), fixes #2982
2017-09-02 17:48:04 +02:00
enkore
4433078414 Merge pull request #2986 from ThomasWaldmann/cleanup-log
add debug logging for repository cleanup
2017-09-02 16:46:32 +02:00
Thomas Waldmann
9fc4d00bf6 recover_segment: use mmap(), fixes #2982 2017-09-01 05:26:27 +02:00
Thomas Waldmann
57f808e4bb add debug logging for repository cleanup
so we can know whether it did a cleanup and if so,
which and how many segments were cleaned up.
2017-08-31 22:49:30 +02:00
TW
4a22dec340 Merge pull request #2979 from enkore/issue/2975
test_detect_attic_repo: don't test mount
2017-08-30 23:22:36 +02:00
enkore
a2ea6cfc7d Merge pull request #2980 from enkore/issue/2976
keymanager: don't depend on optional readline module
2017-08-30 11:27:31 +02:00
Marian Beermann
a6be34f8f7 test_detect_attic_repo: don't test mount
since mount is not always available and if it works for all the other
commands, then it is likely it works for mount as well.
2017-08-28 10:17:52 +02:00
Marian Beermann
b8793d9577 keymanager: don't depend on optional readline module 2017-08-28 10:15:38 +02:00
enkore
f7ed5d7220 Buffer: fix wrong thread-local storage use (#2951)
Buffer: delete support for multiple threads

Thread-local objects are a fairly complex footgun, so avoid them in
the first place. When a Compressor uses a Buffer (for example),
just create multiple Compressor instances for each thread, owned by
each thread. Minimize multiple ownership of objects across
threads if at all possible!
2017-08-25 04:45:22 +02:00