Commit Graph

4857 Commits

Author SHA1 Message Date
Thomas Waldmann 7e94d42853 exclude Cython 0.27(.0) in requirements, fixes #3066
https://github.com/cython/cython/issues/1880
2017-09-29 01:36:22 +02:00
TW e8e204833c Merge pull request #3058 from ThomasWaldmann/fix-partial-json
remote: deal with partial lines, fixes #2637
2017-09-26 22:03:26 +02:00
TW ea1dc4d822 Merge pull request #3061 from Self-Perfection/patch-1
Simplified rate limiting wrapper in FAQ
2017-09-25 21:22:48 +02:00
Alexander Meshcheryakov f7ec13eabb Simplified rate limiting wrapper in FAQ
Exporting $RATE as environment variable is not need in this case.

And example does not use any bash specific features.
It should use default system shell instead.
2017-09-25 15:43:07 +03:00
TW 7f68283352 Merge pull request #3051 from ThomasWaldmann/fix-spawn-passcommand
fix subprocess environments
2017-09-25 05:27:29 +02:00
Thomas Waldmann a57e23fdb3 use prepared env for xattr module's fakeroot version check 2017-09-25 04:36:07 +02:00
Thomas Waldmann cf59f653e5 use prepared env for borg export-tar --tar-filter subprocess 2017-09-25 04:36:07 +02:00
Thomas Waldmann b88da10641 use prepared env for borg umount 2017-09-25 04:36:07 +02:00
Thomas Waldmann 6da5bf4b85 use prepared env for borg with-lock 2017-09-25 04:36:07 +02:00
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