Commit Graph

7694 Commits

Author SHA1 Message Date
Kovid Goyal
17e95cb615 Add a test for rsync roundtrip 2021-09-19 20:55:00 +05:30
Kovid Goyal
b5c086aedb ... 2021-09-19 20:25:08 +05:30
Kovid Goyal
1036132838 Rename pw to bypass 2021-09-19 17:21:57 +05:30
Kovid Goyal
1d1d82ca50 Setup ropr buffer sizes for rsync operations 2021-09-19 17:19:34 +05:30
Kovid Goyal
85be3e4ed1 Also avoid mallocs for the output buffer 2021-09-19 15:28:22 +05:30
Kovid Goyal
d5d52ec8b9 When driving a job on a file avoid mallocs for each read 2021-09-19 13:49:10 +05:30
Kovid Goyal
ecb0d1f325 More work on wrapping librsync 2021-09-19 13:26:09 +05:30
Kovid Goyal
68436c93a7 More work on the transfer kitten 2021-09-19 10:17:53 +05:30
Kovid Goyal
2a9dff2846 Function to create the delta for a file 2021-09-18 14:00:59 +05:30
Kovid Goyal
bcd1837924 Generator for loading signatures
Also dont waste memory when no output is expected
2021-09-18 13:52:26 +05:30
Kovid Goyal
77508bfe0d Handle blocking with unused input in librsync 2021-09-18 13:08:53 +05:30
Kovid Goyal
cf517effb3 Wrap more of the librsync API 2021-09-18 12:49:38 +05:30
Kovid Goyal
901a075a38 ... 2021-09-18 11:51:54 +05:30
Kovid Goyal
76d6820af9 Do a full link test for rs_sig_args 2021-09-18 11:44:11 +05:30
Kovid Goyal
7cf73c10ac clang needs a newline at the end of src 2021-09-18 11:16:56 +05:30
Kovid Goyal
71963aa738 Fix librsync detection on freeze builds 2021-09-18 11:10:03 +05:30
Kovid Goyal
dcc0dabe68 Specify the library in the correct place when test compiling
Needed for ancient compilers
2021-09-18 10:58:14 +05:30
Kovid Goyal
348e632dd6 Fix building on the usual ancient Linux distro suspects
Detect if librsync is new enough to have rs_sig_args
2021-09-18 10:49:46 +05:30
Kovid Goyal
067502bd66 Fix warning on ancient gcc 2021-09-18 10:25:18 +05:30
Kovid Goyal
6b576fcf5c Use paths rather than flags in kitten extension definitions 2021-09-18 10:08:28 +05:30
Kovid Goyal
2fc972a173 rename function 2021-09-18 09:39:12 +05:30
Kovid Goyal
a941b1af4e Implement signature generation 2021-09-17 17:42:25 +05:30
Kovid Goyal
fbc8a1cdcb Remove workaround for older pillow in macOS CI 2021-09-17 13:57:09 +05:30
Kovid Goyal
f0fab80f5b Start work on rsync support for file transfers 2021-09-17 13:41:45 +05:30
Kovid Goyal
a0740d1616 Use multi-phase initialization for unicode-names 2021-09-17 08:56:55 +05:30
Kovid Goyal
8986d15a5b Remove unused code 2021-09-17 08:39:41 +05:30
Kovid Goyal
9f4f22743f Document how to install the nightly builds 2021-09-17 07:32:51 +05:30
Kovid Goyal
9eebd2c921 Update nightly release description with timestamp and commit sha 2021-09-16 22:44:18 +05:30
Kovid Goyal
5ce71506c8 Various minor fixes in nightly pipeline 2021-09-16 22:31:43 +05:30
Kovid Goyal
ad5b43f6db Start work on infrastructure for nightly builds 2021-09-16 22:13:01 +05:30
Kovid Goyal
aa9855516f Change memory allocation strategy for pending buf
Now it is allocated on demand. This prevents it from blowing up
to READ_BUF_SZ * 2 (2MB) if a small pending update is followed by a
large non pending section in the read buffer, which is commonly
triggered for instance by the transfer kitten which uses pending updates
for its screen drawing mixed with non-pending data transmission.

This is a slight performance penalty since there is a branch when
writing every char to the pending buffer, but the branch will be almost
always one sided so should be well predicted.

In any case, filling the pending buffer is not a performance bottleneck,
compared to actually dispatching parsed escape codes.
2021-09-16 20:23:15 +05:30
Kovid Goyal
fcd4649642 Use pending mode for progress bar updates 2021-09-16 19:54:48 +05:30
Kovid Goyal
e12246983b Fix the upper limit for the pending buffer
The pending buffer needs to be twice the max size of the read buffer.
2021-09-16 19:53:55 +05:30
Kovid Goyal
e8e7ad3b75 DRYer 2021-09-16 18:34:51 +05:30
Kovid Goyal
e9d648d37c Handle exceptions in the tui context managers 2021-09-16 18:28:29 +05:30
Kovid Goyal
eaeece8177 Use the repeat escape code for progress bar rendering 2021-09-16 17:55:22 +05:30
Kovid Goyal
aa9a991a85 Draw separator for final total 2021-09-16 17:45:11 +05:30
Kovid Goyal
0d37431def Report individual file transfer failures 2021-09-16 17:40:19 +05:30
Kovid Goyal
44dfd7a803 More work on transfer kitten 2021-09-16 17:28:26 +05:30
Kovid Goyal
d2809a0acb More work on transfer kitten 2021-09-16 15:27:53 +05:30
Kovid Goyal
4b074d723e ... 2021-09-16 14:01:48 +05:30
Kovid Goyal
deb6abe50e Ancient python compat 2021-09-16 13:50:05 +05:30
Kovid Goyal
d042ea5ab9 Split up tranfer kitten code into modules 2021-09-16 13:47:12 +05:30
Kovid Goyal
bc7c1e4d05 More work on the transfer kitten 2021-09-16 13:34:32 +05:30
Kovid Goyal
a4c5e7c2ee More work on the transfer kitten 2021-09-16 13:02:39 +05:30
Kovid Goyal
504d915723 Fix div by zero errors 2021-09-16 10:30:28 +05:30
Kovid Goyal
039ea95390 Sanitize displayed file names 2021-09-16 10:19:08 +05:30
Kovid Goyal
5f32d2e56f Uppercase DELETE_ENV_VAR 2021-09-16 10:16:33 +05:30
Kovid Goyal
5b716df45f We dont need a special class for delete_env_var 2021-09-16 09:53:54 +05:30
Kovid Goyal
66e2e60ac4 Allow deleting environment vars from the child environment using env 2021-09-16 08:43:17 +05:30