{"action":"created","issue":{"url":"https://api.github.com/repos/syncthing/syncthing/issues/2540","repository_url":"https://api.github.com/repos/syncthing/syncthing","labels_url":"https://api.github.com/repos/syncthing/syncthing/issues/2540/labels{/name}","comments_url":"https://api.github.com/repos/syncthing/syncthing/issues/2540/comments","events_url":"https://api.github.com/repos/syncthing/syncthing/issues/2540/events","html_url":"https://github.com/syncthing/syncthing/pull/2540","id":119581187,"number":2540,"title":"Refactor pulling","user":{"login":"calmh","id":125426,"avatar_url":"https://avatars.githubusercontent.com/u/125426?v=3","gravatar_id":"","url":"https://api.github.com/users/calmh","html_url":"https://github.com/calmh","followers_url":"https://api.github.com/users/calmh/followers","following_url":"https://api.github.com/users/calmh/following{/other_user}","gists_url":"https://api.github.com/users/calmh/gists{/gist_id}","starred_url":"https://api.github.com/users/calmh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calmh/subscriptions","organizations_url":"https://api.github.com/users/calmh/orgs","repos_url":"https://api.github.com/users/calmh/repos","events_url":"https://api.github.com/users/calmh/events{/privacy}","received_events_url":"https://api.github.com/users/calmh/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/syncthing/syncthing/labels/in-review","name":"in-review","color":"207de5"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-11-30T21:07:53Z","updated_at":"2016-03-09T09:06:19Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/syncthing/syncthing/pulls/2540","html_url":"https://github.com/syncthing/syncthing/pull/2540","diff_url":"https://github.com/syncthing/syncthing/pull/2540.diff","patch_url":"https://github.com/syncthing/syncthing/pull/2540.patch"},"body":"## Current progress\r\n\r\n- [x] Files\r\n- [x] Symlinks\r\n- [x] Directories\r\n- [x] Permissions\r\n- [x] Modification times\r\n- [x] Forcing rescan (interface)\r\n- [ ] Forcing rescan (actual implementation)\r\n- [x] Versioning\r\n- [x] Virtual mtimes (interface)\r\n- [x] Virtual mtimes (actual implementation)\r\n- [x] Progress updates\r\n- [x] Database updates (via Progresser interface)\r\n- [x] Network pulling parallellization\r\n- [x] Conflict handling\r\n- [ ] Tricky test cases!\r\n- [x] Integrate with rwfolder\r\n- [ ] Benchmark to ensure we don't regress too badly\r\n- [x] Proper queue status / progress in GUI\r\n- [x] Manual queue reordering\r\n\r\n## Issues\r\n\r\n- We need the entire set of files to change in memory. We need this in order to properly sort stuff, but it may require large amounts of memory. Perhaps we can get away with doing it in segments anyway, and retrying failures...\r\n\r\n- Manual reordering of the pull queue is no longer allowed. The reason is that we enforce an ordering on the entire change set so that we can properly do things like reuse blocks while renaming, make sure to delete a directory that is in the way for a file, and so on. However we retain as much as possible of the original ordering so newest-first, smallest-first etc still work mostly as you'd expect."},"comment":{"url":"https://api.github.com/repos/syncthing/syncthing/issues/comments/194193928","html_url":"https://github.com/syncthing/syncthing/pull/2540#issuecomment-194193928","issue_url":"https://api.github.com/repos/syncthing/syncthing/issues/2540","id":194193928,"user":{"login":"calmh","id":125426,"avatar_url":"https://avatars.githubusercontent.com/u/125426?v=3","gravatar_id":"","url":"https://api.github.com/users/calmh","html_url":"https://github.com/calmh","followers_url":"https://api.github.com/users/calmh/followers","following_url":"https://api.github.com/users/calmh/following{/other_user}","gists_url":"https://api.github.com/users/calmh/gists{/gist_id}","starred_url":"https://api.github.com/users/calmh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calmh/subscriptions","organizations_url":"https://api.github.com/users/calmh/orgs","repos_url":"https://api.github.com/users/calmh/repos","events_url":"https://api.github.com/users/calmh/events{/privacy}","received_events_url":"https://api.github.com/users/calmh/received_events","type":"User","site_admin":false},"created_at":"2016-03-09T09:06:19Z","updated_at":"2016-03-09T09:06:19Z","body":"@st-jenkins retest this please asdkjaslkdj asldkja ldkasj dalskdj asd"}}