Summary
Fixes
- FS write logic comparing ctimes and patching existing data has been moved into the FsDriver transaction.
- Simplifies lots of types.
- Better type naming, organization. Untangles internal layering.
- Some undocumented bug fixes.
Additions
-
A dynamic
Commands
model has been added.- The existing core FS transactions (
add,move,copy,write,...
)have been reworked to fit into theCommands
model asFsCommands
. - Commands can be executed by any type of
Driver
and can be forwarded to other layers (over the Internet or within our own code) since a Command represents the most compact, serializable essence of any built-in or integrated transactions that we want to perform on our file systems.
- The existing core FS transactions (
-
A dynamic
Plugins
system has been added.- Plugins can register their own commands.
- Allows module augmentation to declare common Repository facade methods that call commands.
- Allows command implementations to be registered separately from command-calling facade methods...
- i.e. You can have your command-calling facade in your common package and your command implementations in various other packages which might be specific to a certain type of driver e.g.
FsDriver | WebDriver
...
- i.e. You can have your command-calling facade in your common package and your command implementations in various other packages which might be specific to a certain type of driver e.g.