Kovid Goyal
|
0ffaaff8a7
|
Fix #8220
|
2025-01-16 13:21:31 +05:30 |
|
Kovid Goyal
|
405f5ce148
|
Use stdlib maps/slices
|
2024-06-24 07:54:13 +05:30 |
|
Kovid Goyal
|
1a32e62ebf
|
More linter fixes
|
2023-09-18 21:07:39 +05:30 |
|
Kovid Goyal
|
49ea26968c
|
Bump go version to 1.21
Allows us to use the much faster builtin min/max functions
for two variable min/max
|
2023-08-09 11:58:16 +05:30 |
|
Kovid Goyal
|
341d845b9a
|
Port calls to slices.Sort functions since they now need a cmp() function rather than a less() function
Also rename os.SEEK_* to io.Seek* as the former has been deprecated
|
2023-08-04 22:50:13 +05:30 |
|
Kovid Goyal
|
4d686b2f47
|
Nicer string repr for operations
|
2023-07-30 19:49:46 +05:30 |
|
Kovid Goyal
|
d0490672e1
|
Fix block range coalescing not working in algorithm.c
|
2023-07-30 19:49:46 +05:30 |
|
Kovid Goyal
|
aff7f19580
|
DRYer
|
2023-07-30 19:49:46 +05:30 |
|
Kovid Goyal
|
6b5520f07a
|
More work on porting the receive kitten
|
2023-07-30 19:49:45 +05:30 |
|
Kovid Goyal
|
063c39ea12
|
Wire up the rsync code in the send kitten
|
2023-07-30 19:49:43 +05:30 |
|
Kovid Goyal
|
edc1669ced
|
Ported tests all pass
|
2023-07-30 19:49:43 +05:30 |
|
Kovid Goyal
|
b5498090df
|
Finish the port of the rsync algorithm to C
|
2023-07-30 19:49:43 +05:30 |
|
Kovid Goyal
|
c84874ca8d
|
Add tests for the xxhash based hashers
|
2023-07-30 19:49:42 +05:30 |
|
Kovid Goyal
|
fabb6bd8cc
|
Start work on porting Go rsync implementation to C
|
2023-07-30 19:49:42 +05:30 |
|
Kovid Goyal
|
85df15bfc3
|
Add a test that the last op is hash
|
2023-07-30 19:49:42 +05:30 |
|
Kovid Goyal
|
f64c4f34ac
|
Also use io.Writer for signature iterator
|
2023-07-30 19:49:42 +05:30 |
|
Kovid Goyal
|
4b5216adcf
|
Change delta creation API to use io.Writer
Simplifies logic and avoids an extra copy if the writer doesnt need to
make its own copy
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
94b5bedfa5
|
Add overall file checksum verification to the rsync protocol
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
e125f803b3
|
Work on adding overall checksum support
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
039e17840a
|
Allow users to customize buffer growth strategy
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
c2ad662bed
|
Use the append paradigm for the delta iterator as well
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
579ab8551e
|
Add some API docs
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
77d5fe1be5
|
Change signature generation API to allow caller to provide storage and control iteration
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
bbb6a4ae35
|
Micro-optimization: store strong hash as a uint64 instead of a byte slice
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
55f9359e1b
|
Make the rsync struct private
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
6c10528cbd
|
Make the hasher var private in the rsync API
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
ca835cd80d
|
...
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
7268513332
|
More tests
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
71c7c4b285
|
Clean up delta generation algorithm implementation
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
83d97c515c
|
Use the iterator design for bytes based API as well
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
e7d02b79d7
|
Make diff internals private
|
2023-07-30 19:49:41 +05:30 |
|
Kovid Goyal
|
6bc0fc7615
|
Make serializing data ops avoid a double copy
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
f7723a65fa
|
Removal original delta operation implementation
Mine is nicer and much more amenable to debugging
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
35bfdbd926
|
...
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
3db2c4fe5d
|
Make the test non-random
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
74e0fa3f1d
|
Show invocation line for failing test
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
678ad627b2
|
Improve testing infra for rsync roundtrip
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
26c93af565
|
...
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
f27bb2103f
|
Work on cleaning up the checksum searching algorithm
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
4dc409ff5d
|
Increase MaxBlockSize
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
6a7c194d8f
|
In the tests check that too much data is not being transmitted
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
79fd0b19cf
|
Fix a bug in upstream CreateDelta that could ignore trailing data if a matching hash is not found for it
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
82721ef053
|
Check for error during seek()
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
6d614a98ac
|
Get the test to pass
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
26c22f0086
|
Work on creating tests for rsync api
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
278a3986e5
|
Simplify API a bit
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
2801b934fb
|
Split up API into two structs one for diffing and one for patching
|
2023-07-30 19:49:40 +05:30 |
|
Kovid Goyal
|
a5c62da265
|
Dont use JSON for signature header
|
2023-07-30 19:49:39 +05:30 |
|
Kovid Goyal
|
c28f6a7bf4
|
Make CreateSignature byte oriented
|
2023-07-30 19:49:39 +05:30 |
|
Kovid Goyal
|
71a1050b9f
|
Make loading of external signature data also streaming
|
2023-07-30 19:49:39 +05:30 |
|