{"action":"created","issue":{"url":"https://api.github.com/repos/Redundancy/go-sync/issues/13","labels_url":"https://api.github.com/repos/Redundancy/go-sync/issues/13/labels{/name}","comments_url":"https://api.github.com/repos/Redundancy/go-sync/issues/13/comments","events_url":"https://api.github.com/repos/Redundancy/go-sync/issues/13/events","html_url":"https://github.com/Redundancy/go-sync/issues/13","id":129933381,"number":13,"title":"Detailed comparison to rsync/librsync/zsync","user":{"login":"andreygursky","id":280321,"avatar_url":"https://avatars.githubusercontent.com/u/280321?v=3","gravatar_id":"","url":"https://api.github.com/users/andreygursky","html_url":"https://github.com/andreygursky","followers_url":"https://api.github.com/users/andreygursky/followers","following_url":"https://api.github.com/users/andreygursky/following{/other_user}","gists_url":"https://api.github.com/users/andreygursky/gists{/gist_id}","starred_url":"https://api.github.com/users/andreygursky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andreygursky/subscriptions","organizations_url":"https://api.github.com/users/andreygursky/orgs","repos_url":"https://api.github.com/users/andreygursky/repos","events_url":"https://api.github.com/users/andreygursky/events{/privacy}","received_events_url":"https://api.github.com/users/andreygursky/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-01-30T03:06:41Z","updated_at":"2016-01-31T14:24:58Z","closed_at":null,"body":"Daniel,\r\n\r\nI'm missing a more detailed comparison to the mentioned rsync/librsync/zsync libs/progs. The most important differences between rsync and librsync/zsync is that the former can do interleaved patching (search for matches / data transfer). It seems go-sync doesn't support this (yet) or it's just not mentioned in https://github.com/Redundancy/go-sync#commandline--files?\r\n\r\nAndrey"},"comment":{"url":"https://api.github.com/repos/Redundancy/go-sync/issues/comments/177511903","html_url":"https://github.com/Redundancy/go-sync/issues/13#issuecomment-177511903","issue_url":"https://api.github.com/repos/Redundancy/go-sync/issues/13","id":177511903,"user":{"login":"Redundancy","id":5021300,"avatar_url":"https://avatars.githubusercontent.com/u/5021300?v=3","gravatar_id":"","url":"https://api.github.com/users/Redundancy","html_url":"https://github.com/Redundancy","followers_url":"https://api.github.com/users/Redundancy/followers","following_url":"https://api.github.com/users/Redundancy/following{/other_user}","gists_url":"https://api.github.com/users/Redundancy/gists{/gist_id}","starred_url":"https://api.github.com/users/Redundancy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Redundancy/subscriptions","organizations_url":"https://api.github.com/users/Redundancy/orgs","repos_url":"https://api.github.com/users/Redundancy/repos","events_url":"https://api.github.com/users/Redundancy/events{/privacy}","received_events_url":"https://api.github.com/users/Redundancy/received_events","type":"User","site_admin":false},"created_at":"2016-01-31T14:24:58Z","updated_at":"2016-01-31T14:24:58Z","body":"GoSync does binary differential patching by matching first weak rolling checksums and then strong checksums. It uses the blocksource interface to do requests for ranges of the source file.\r\n\r\n"}}