Repository: GitHub - khuongduy354/joplin-sync-lib
Demo: joplin-sync-lib/src/sample_app at master · khuongduy354/joplin-sync-lib · GitHub
Progress
- Merged E2E into main branch and fix E2E bugs, add 4 test cases in Synchronizer.e2ee.test
- Rewrite ItemUploader, so that it can receives E2E settings as arguments
- Implement delete operations with unit tests, delete resource will find blob and delete both blob and metadata.
- Reimplement GET items, add tests
- Fix resource bugs: CREATE now includes both metadata and blob, GET operation can return either blob or metadata depending on client input.
- Implement Item listener demo using
.getItemsMetadata()
method, simplify OCR service demo. - Updated documentations:
- Joplin Forum: Sync API Docs - #2 by khuongduy354 (intended to be main docs)
- Demo: joplin-sync-lib/src/sample_app at master · khuongduy354/joplin-sync-lib · GitHub
- Github repository: GitHub - khuongduy354/joplin-sync-lib (same as Joplin Forum docs)
Plan
- Implement encryption on resource blob, add tests when encryption enabled, add Encryption to main docs.
- Implement resource blobs update, multiple reads,...
- Finding and fix bugs: locks (ensure proper lock placements), error handling,...
Problems
- Share sevice: I looked into share service, but figure out it's a bit out of scope for this project.
- Detachment of Joplin original library: to reduce bugs, I tried to use as much from Joplin library as possible at the beginning, but it's hard to maintence to have mix of classes. I tried to reduce the Joplin's classes recently, and it seems to have been improved, I'm aiming to reduce this as much as possible.