github vrtmrz/obsidian-livesync 0.25.43-patched-9
0.25.43-patched-9 a.k.a. 0.25.44-rc1

pre-release2 hours ago

0.25.43-patched-9 a.k.a. 0.25.44-rc1

We are finally ready for release. I think I will go ahead and release it after using it for a few days.

Fixed

  • Hidden file synchronisation now works!
  • Now Hidden file synchronisation respects .ignore files.
  • Replicator initialisation during rebuilding now works correctly.

Refactored

  • Some methods naming have been changed for better clarity, i.e., _isTargetFileByLocalDB is now _isTargetAcceptedByLocalDB.

Follow-up tasks memo (After 0.25.44)

Going forward, functionality that does not span multiple events is expected to be implemented as middleware-style functions rather than modules based on classes.

Consequently, the existing modules will likely be gradually dismantled.
For reference, ModuleReplicator.ts has extracted several functionalities as functions.

However, this does not negate object-oriented design. Where lifecycles and state are present, and the Liskov Substitution Principle can be upheld, we design using classes. After all, a visible state is preferable to a hidden state. In other words, the handler still accepts both functions and member methods, so formally there is no change.

As undertaking this for everything would be a bit longer task, I intend to release it at this stage.

Note: I left using setHandlers that as a mark of need to be refactored. Basically, they should be implemented in the service itself. That is because it is just a mis-designed, separated implementation.

Don't miss a new obsidian-livesync release

NewReleases is sending notifications on new releases.