0.25.43-patched-1
13th February, 2026
NOTE: Hidden File Sync and Customisation Sync may not work in this version.
Just a heads-up: this is a patch version, which is essentially a beta release. Do not worry about the following memos, as they are indeed freaking us out. I trust that you have thought this was too large; you're right.
If this cannot be stable, I will revert to 0.24.43 and try again.
Refactored
-
Now resolving unexpected and inexplicable dependency order issues...
-
The function which is able to implement to the service is now moved to each service.
- AppLifecycleService.performRestart
-
VaultService.isTargetFile is now using multiple checkers instead of a single function.
- This change allows better separation of concerns and easier extension in the future.
-
Application LifeCycle has now started in ServiceHub, not ObsidianMenuModule.
- It was in a QUITE unexpected place..., isn't it?
- Instead of, we should call
await this.services.appLifecycle.onReady()in other platforms. - As in the browser platform, it will be called at
DOMContentLoadedevent.
-
ModuleTargetFilter, which is responsible for parsing ignore files, has been refined.
- This should be separated to a TargetFilter and an IgnoreFileFilter for better maintainability.
-
Using
API.addCommandor some Obsidian API and shimmer APIs, Many modules have been refactored to be derived to AbstractModule from AbstractObsidianModule, to clarify the dependencies. (we should makeappusage clearer...) -
Fixed initialising
storageAccesstoo late inFileAccessObsidianmodule (I am still wondering why it worked before...). -
Remove some redundant overrides in modules.
Planned
- Some services have an ambiguous name, such as
Injectable. These will be renamed in the future for better clarity. - Following properties of
ObsidianLiveSyncPluginshould be initialised more explicitly:- property : where it is initialised currently
localDatabase:ModuleLocalDatabaseObsidianmanagers:ModuleLocalDatabaseObsidianreplicator:ModuleReplicatorsimpleStore:ModuleKeyValueDBstorageAccess:ModuleFileAccessObsidiandatabaseFileAccess:ModuleDatabaseFileAccessfileHandler:ModuleFileHandlerrebuilder:ModuleRebuilderkvDB:ModuleKeyValueDB- And I think that having a feature in modules directly is not good for maintainability, these should be separated to some module (loader) and implementation (not only service, but also independent something).
- Plug-in statuses such as requestCount, responseCount... should be moved to a status service or somewhere for better separation of concerns.