You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
281c4f2 Added godoc commends for embedded methods and types to extend commands. Moved constants to internal directory
bdf6150 Added godoc comments for LoadModule, UnloadModule and ListModules methods
000115c Created "loadmodules" args for loading ".so" modules into EchoVault. Moved types associated with embedded commands extension into api_admin.go file and deleted types.go file as it's no longer necessary. Updated docker-compose and Dockerfile.dev to pass .so modules to load on startup. Volumes folder is no longer ignores except for the nodes subfolder.
b6825c4 Created EXECUTE_COMMAND method that allows raw execution of loaded commands when in embedded mode
b439bd2 Created plugin.go file to handle loading and unloading of plugins to EchoVault
8baeaa9 Enable adding command with subcommands in ADD_COMMAND method
6ad3b7b Exported EchoVault interface now onlu contains the keyspace methods. All other methods are private. Private methods are accessed using the reflect package in the test folder
2291ba4 Implemented ADD_COMMAND method to add a custom command to echovault
6a32f46 Implemented GetFreePort utility function to get free port for tests. Updated ACL and PubSub tests to use new GetFreePort functions instead of hardcoded ports
8aed3a3 Implemented LoadModules method for loading modules into EchoVault. Implemented UnloadModules methods for removing module from EchoVault. Removed connection from plugin handler function parameters as it should not be modified by the module.
0f6ae1c Implemented LoadModules method to load external modules at runtime. Implemented UnloadModules method to remove modules at runtime. Implemented ListModules method to list the current loaded modules. Implemented "MODULE LOAD", "MODULE UNLOAD", and "MODULE LIST" commands.
1d56e98 Implemented tests for AddCommand, ExecuteCommand and RemoveCommand methods
fbf4782 Instead of passing in EchoVault instance to commands handler, we now pass a struct of params containing all the variables and functions used within the handler function. This removes the modules' dependency on the echovault package. Moved string command and api tests to test/modules/string
8be29f7 Merge pull request #32 from EchoVault/refactor/handler-params
f017d65 Merge pull request #33 from EchoVault/feature/embedded-extensions
fd500d7 Merge pull request #34 from EchoVault/feature/shared-object-extension
eb386d5 Merge pull request #35 from EchoVault/chore/test-dynamic-ports
97f4617 Moved all packages from /pkg directory to the root directory. Deleted /pkg directory. Pass keyspace functions to raft package instead of an EchoVault instance. This removes dependency on the echovault pakage from the raft package.
3e04b7a Moved tests for module commands and apis into 'test' folder
d9d9160 Moved types.go file into the echovault package and deleted EchoVault interface as it's no longer in use
1a7951f Removed EchoVault interface param from raft Opts
b6ddb43 Removed duplicate imports for set, sorted_set, pubsub and acl modules. Moved /modules from /pkg to /internal. Delted commands package: Commands will now be automatically loaded when an EchoVault instance is initialised.
c241cc0 Renamed *AccessKey type to better represent the response on *KeyExtractionFunc types
24b5e6d Renamed LoadModules and UnloadModules to LoadModule and UnloadModule respectively because they both deal with one module at a time.