1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2025-01-01 12:45:34 +00:00
Commit graph

4602 commits

Author SHA1 Message Date
Thomas Waldmann
180a37db46 build_man 2017-10-01 02:26:55 +02:00
Thomas Waldmann
0263c9dd8a build_usage 2017-10-01 02:24:54 +02:00
TW
6c04f6f1b6 Merge pull request #3065 from ThomasWaldmann/update-changes-1.1
update CHANGES (1.1-maint)
2017-10-01 02:12:09 +02:00
Thomas Waldmann
9723f38855 update CHANGES (1.1-maint) 2017-10-01 02:10:57 +02:00
TW
f7fd14958d Merge pull request #3074 from ThomasWaldmann/files-cache-ctime-1.1
implement files cache mode control, fixes #911
2017-10-01 02:07:35 +02:00
Thomas Waldmann
eab9f5a07b implement files cache mode control, fixes #911
You can now control the files cache mode using this option:

--files-cache={ctime,mtime,size,inode,rechunk,disabled}*

(only some combinations are supported)

Previously, only these modes were supported:
- mtime,size,inode (default of borg < 1.1.0rc4)
- mtime,size (by using --ignore-inode)
- disabled (by using --no-files-cache)

Now, you additionally get:
- ctime alternatively to mtime (more safe), e.g.:
  ctime,size,inode (this is the new default of borg >= 1.1.0rc4)
- rechunk (consider all files as changed, rechunk them)

Deprecated:
- --ignore-inodes (use modes without "inode")
- --no-files-cache (use "disabled" mode)

The tests needed some changes:
- previously, we use os.utime() to set a files mtime (atime) to specific
  values, but that does not work for ctime.
- now use time.sleep() to create the "latest file" that usually does
  not end up in the files cache (see FAQ)

(cherry picked from commit 5e2de8ba67)
2017-10-01 01:27:18 +02:00
TW
f44e62636a Merge pull request #3070 from ThomasWaldmann/exclude-cython027-1.1
exclude Cython 0.27(.0) in requirements, fixes #3066
2017-09-29 03:36:23 +02:00
Thomas Waldmann
f170641bd4 exclude Cython 0.27(.0) in requirements, fixes #3066
https://github.com/cython/cython/issues/1880
(cherry picked from commit 7e94d42853)
2017-09-29 02:18:26 +02:00
TW
248117db29 Merge pull request #3062 from ThomasWaldmann/fix-partial-json-1.1
remote: deal with partial lines, fixes #2637 (1.1-maint)
2017-09-27 02:09:31 +02:00
TW
644fc96350 Merge pull request #3063 from ThomasWaldmann/rate-limit-faq-fix-1.1
Simplified rate limiting wrapper in FAQ (1.1-maint)
2017-09-26 23:53:30 +02:00
Alexander Meshcheryakov
d3533de5f7 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.
(cherry picked from commit f7ec13eabb)
2017-09-26 23:51:06 +02:00
Thomas Waldmann
f2b48cd5c8 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.

(cherry picked from commit 8646216a06)
2017-09-26 22:06:13 +02:00
TW
1c97903a12 Merge pull request #3060 from ThomasWaldmann/fix-spawn-passcommand-1.1
Fix subprocess environments (1.1-maint)
2017-09-25 21:24:01 +02:00
Thomas Waldmann
37a5442bef use prepared env for xattr module's fakeroot version check
(cherry picked from commit a57e23fdb3)
2017-09-25 05:54:50 +02:00
Thomas Waldmann
d7a5ca2e6a use prepared env for borg export-tar --tar-filter subprocess
(cherry picked from commit cf59f653e5)
2017-09-25 05:54:30 +02:00
Thomas Waldmann
d6f810560c use prepared env for borg umount
(cherry picked from commit b88da10641)
2017-09-25 05:53:56 +02:00
Thomas Waldmann
3b20c18c3b use prepared env for borg with-lock
(cherry picked from commit 6da5bf4b85)
2017-09-25 05:51:53 +02:00
Thomas Waldmann
2f7d7bdbb8 use prepared env for calling BORG_PASSCOMMAND, fixes #3050
(cherry picked from commit 6a6fd31804)
2017-09-25 05:51:02 +02:00
Thomas Waldmann
5dd16672c0 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.

(cherry picked from commit ba941b0801)
2017-09-25 05:50:19 +02:00
TW
34caa474a8 Merge pull request #3059 from ThomasWaldmann/remove-110b-logger-1.1
remove client_supports_log_v3 flag (1.1-maint)
2017-09-25 04:17:00 +02:00
Thomas Waldmann
f48f86444d 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

(cherry picked from commit 54c5049fb9)
2017-09-25 02:41:15 +02:00
TW
fa66015cb3 Merge pull request #3054 from ThomasWaldmann/update-create-docs-1.1
Update create docs (1.1-maint)
2017-09-23 23:45:02 +02:00
Thomas Waldmann
cfc48d2899 docs: add auto compression example to borg create examples
(cherry picked from commit 3f16d91fd3)
2017-09-23 23:42:02 +02:00
Thomas Waldmann
c616009724 docs: add compressor names to be more clear
(cherry picked from commit 0ec6c920b9)
2017-09-23 23:41:46 +02:00
Thomas Waldmann
354d3f0b4f fix docs: --compression lz4 is the default now, fixes #3034
(cherry picked from commit c88528512f)
2017-09-23 23:41:27 +02:00
TW
f20576f50d Merge pull request #3052 from ThomasWaldmann/doc-updates-1.1
doc updates (1.1-maint)
2017-09-23 22:22:54 +02:00
Thomas Waldmann
055f34f025 docs: twitter account @borgbackup, fixes #2948
(cherry picked from commit 112bf43956)
2017-09-23 21:31:00 +02:00
Thomas Waldmann
eacea02d8c docs: add note about metadata dedup and --no[ac]time, fixes #2518
(cherry picked from commit d8766df998)
2017-09-23 21:30:42 +02:00
Thomas Waldmann
b6abee4d68 docs: change-passphrase only changes the passphrase, fixes #2990
(cherry picked from commit 713be765d1)
2017-09-23 21:30:18 +02:00
TW
e7e5b604ce Merge pull request #3044 from ThomasWaldmann/vagrant-updates-1.1
vagrant updates (1.1-maint)
2017-09-22 05:14:00 +02:00
Thomas Waldmann
ca34a33e7d upgrade to FUSE for macOS 3.7.1 2017-09-22 03:24:44 +02:00
Thomas Waldmann
3f6c14e854 use python 3.5.4 to build the binaries
(cherry picked from commit 507203a759)
2017-09-22 03:22:09 +02:00
TW
3f3aa2405c Merge pull request #3041 from ThomasWaldmann/stderr-flush-1.1
flush json mode progress stderr output (1.1-maint)
2017-09-22 01:52:26 +02:00
Thomas Waldmann
f44fd6ba19 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.

(cherry picked from commit 2b75b278da)
2017-09-21 19:18:40 +02:00
TW
ca0cb31277 Merge pull request #3021 from borgbackup/rel110rc3
release candidate 1.1.0rc3
2017-09-10 03:28:37 +02:00
Thomas Waldmann
313529b929 build_man 2017-09-10 00:08:25 +02:00
Thomas Waldmann
2d7dc08c8c build_usage 2017-09-10 00:07:45 +02:00
TW
42821d2ddc Merge pull request #3020 from ThomasWaldmann/issue/2958-1.1
delete: support naming multiple archives (#3017)
2017-09-10 00:00:01 +02:00
TW
ae541b4027 Merge pull request #3013 from ThomasWaldmann/update-changes-1.1
update CHANGES (1.1-maint)
2017-09-09 23:51:48 +02:00
Thomas Waldmann
3ed6f2367c update CHANGES (1.1-maint) 2017-09-09 23:47:31 +02:00
enkore
ecc5ceec07 delete: support naming multiple archives (#3017)
(cherry picked from commit 7c5a9d89b2)
2017-09-09 23:28:47 +02:00
TW
cd107c6fd2 Merge pull request #3019 from ThomasWaldmann/json-utf8-locale-1.1
document utf-8 locale requirement for json mode, #2273 (#3009)
2017-09-09 16:05:20 +02:00
TW
a99060508f document utf-8 locale requirement for json mode, #2273 (#3009)
(cherry picked from commit 133e847f8e)
2017-09-08 21:12:46 +02:00
TW
338da9fc14 Merge pull request #3012 from ThomasWaldmann/new-screencasts-1.1
show/link new screencasts in README, fixes #2936
2017-09-08 01:57:21 +02:00
Thomas Waldmann
b398f0dcf7 show/link new screencasts in README, fixes #2936
(cherry picked from commit 7c9561afa2)
2017-09-08 00:45:28 +02:00
TW
319606e1cf Merge pull request #3008 from ThomasWaldmann/fix-2994-1.1
fix .isoformat() issues (1.1-maint)
2017-09-07 16:00:59 +02:00
TW
af407e3e7f Merge pull request #3007 from ThomasWaldmann/fd-cache-invalidation-1.1
FD cache invalidation (1.1-maint)
2017-09-07 15:56:26 +02:00
TW
37cb3b496e Merge pull request #3006 from ThomasWaldmann/close-segment-1.1
with-lock: close segment file before invoking subprocess (1.1-maint)
2017-09-07 15:15:47 +02:00
Thomas Waldmann
da2f8dbe81 get rid of datetime.isoformat to avoid bugs like #2994
(cherry picked from commit 928bde8676)
2017-09-07 15:11:53 +02:00
Thomas Waldmann
a9aa3c5f34 use safe parse_timestamp to parse timestamps, fixes #2994
also: refactor so it is possible to get tz-unaware datetime
objects from parse_timestamp.

(cherry picked from commit 7996a87357)
2017-09-07 15:06:23 +02:00