[local-sync] Make the sync loop interruptible

Summary:
This commit introduces interruptible sync operations. Now, the `SyncWorker`, `FetchFolderList` operation and `FetchMessagesInFolder` operation can be interrupted at several p

To achieve this, this commit adds an Interruptible abstraction, which is an object that can run functions and interrupt them at points marked by the function. For more info o

This commit also splits up the SyncWorker a little bit to make it smaller, byadding a SyncbackTaskWorker.

Test Plan: manual

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3613
This commit is contained in:
Juan Tejada 2017-01-09 09:57:26 -08:00
parent a722e48e0b
commit aadb1182c0
3 changed files with 5 additions and 1 deletions

View file

@ -17,6 +17,7 @@
"analytics-node": "2.x.x",
"async": "^0.9",
"babel-core": "6.20.0",
"babel-plugin-transform-async-generator-functions": "6.17.0",
"babel-preset-electron": "^0.37.8",
"babel-preset-react": "6.16.0",
"babel-regenerator-runtime": "6.5.0",

2
src/K2

@ -1 +1 @@
Subproject commit 45331f71808b223af71c04e4b4407863b327286a
Subproject commit 2bb760e95db2984edbc89810ae85abd845d8e72d

View file

@ -3,5 +3,8 @@
"electron",
"react"
],
"plugins": [
"transform-async-generator-functions"
],
"sourceMaps": "inline"
}