ferd / ReVault

ReVault is a peer-to-peer self-hosted file synchronization project.
GNU Lesser General Public License v3.0
50 stars 2 forks source link

Monitor Directories to track File Changes #6

Closed ferd closed 1 year ago

ferd commented 5 years ago

We want to start with what could be basic tracking of directories to find files, before optimizing for specific APIs in linux and OSX which allow more efficient file monitoring.

There's also a need to decide whether we want to use events (i.e. gproc pub/sub ) on all changes as a common interface, and let the storage be separate from these, or whether we want to create a reliable in-memory representation of tracked files.

In all likelihood, both are going to be needed: the events as an interface, and the "storage" as the current state representation that allows diffing (has a file changed or is it the same change we wanted to apply after a sync that got confirmed)

This should be done progressively:

Tests should be written for each of these.

ferd commented 5 years ago

WIP in https://github.com/ferd/ReVault/pull/7