Commit Graph

35 Commits

Author SHA1 Message Date
Kelvin Mwinuka
108bf97b4d Extend SugarDB Commands Using Lua Scripts (#155)
* Extend SugarDB by creating new commands using Lua - @kelvinmwinuka
2024-12-12 09:50:43 +08:00
Dave McPherson
3ddbf1c00b RENAMENX Command Implementation (#149)
* Implemented of RENAMENX command - @DMcP89 
---------
Co-authored-by: Kelvin Clement Mwinuka <kelvinmwinuka@hotmail.co.uk>
2024-11-22 07:56:05 +08:00
osteensco
09640082c4 Update Hash to allow for expirey commands (#146)
* Convert hash to composite type. Fixed broken Hash commands from Hash refactor. Coverage and fixed broken test - @osteensco
2024-11-04 03:24:31 +08:00
Tejesh Kumar S
c7f492f83f Implementation of Copy command (#141)
* Added COPY command - @zenc0derr 

---------

Co-authored-by: Tejesh Kumar S <zenc0derr>
Co-authored-by: Kelvin Clement Mwinuka <kelvinmwinuka@hotmail.co.uk>
2024-10-25 01:35:19 +08:00
osteensco
31605a96b7 Implement MOVE command (#136)
Implemented MOVE command - @osteensco
2024-10-14 09:39:01 +08:00
Kelvin Mwinuka
703ad2a802 Rename the project to SugarDB. (#130)
Renames project to "SugarDB" - @kelvinmwinuka
2024-09-22 21:31:12 +08:00
osteensco
a9732f81bf Iss 60: Implement Touch, with bonus commands ObjectFreq and ObjectIdleTime (#126)
Added TOUCH, OBJECTFREQ, and OBJECTIDLETIME commands - @osteensco 

---------

Co-authored-by: Kelvin Clement Mwinuka <kelvinmwinuka@hotmail.co.uk>
2024-09-15 04:20:27 +08:00
Dave McPherson
e858061aee Type Command implementation (#103)
Implemented TYPE command - @DMcP89
2024-09-08 01:57:56 +08:00
osteensco
21e2ca57cb Iss 69 - Implement GETEX (#101)
GETEX implemented. Fixed issue in SortedSet.GetRandom where it would sometimes return an empty value in one of its indexes - @osteensco
2024-09-07 00:24:56 +08:00
osteensco
ac0964912f Iss 68 implement GETDEL command (#97)
Added GETDEL command.
2024-08-25 10:13:10 +08:00
Kelvin Clement Mwinuka
e5977ec5ef Renamed 'Randomkey' to 'RandomKey' to follow PascalCase convention for exported methods. Added more clear definition for the RANDOMKEY command. 2024-08-18 01:50:07 +08:00
Scott Osteen
a7f0c07e5d randomkey command added for client-server spec 2024-08-15 16:21:33 -05:00
Kelvin Mwinuka
fa1be7ccf8 Updated README.md to include new commands 2024-07-04 09:50:54 +08:00
Kelvin Mwinuka
08a6f5f45f Removed keyspace category for INCRBYFLOAT command 2024-07-04 09:47:24 +08:00
Sahil
e3a269890e feat: INCRBYFLOAT command added 2024-07-03 01:06:09 +05:30
Kelvin Mwinuka
1a8d2314cd Implemented FLUSHDB and FLUSHALL command to clear logical databases. 2024-07-01 06:05:17 +08:00
Kelvin Mwinuka
325157ab71 Disabled adjustMemory memory until a multi-database implementation is done. Updated function signatures in handler params for built-in commands and for modules. Disabled snapshots and snapshot restoration until a multi-database implementation is done. 2024-07-01 06:05:05 +08:00
Kelvin Mwinuka
9b897b472f Added wrong args tests for RENAME command. 2024-06-25 22:39:46 +08:00
Sahil
38ca643d05 feat: added RENAME command 2024-06-25 18:23:54 +05:30
Kelvin Mwinuka
ed28ffca80 Updated INCRBy command handler 2024-06-25 14:25:17 +08:00
Kelvin Mwinuka
5433b88776 Added command length tests for INCRBY command. Renamed INCRBY key func. Return WRONG_ARG_RESPONSE from key funcs when commands are not the correct length. 2024-06-25 14:16:22 +08:00
Kelvin Mwinuka
0111c67368 Added command length tests for DECRBY command. Updated godoc comment for DecrBy embedded API method. 2024-06-25 12:53:19 +08:00
Sahil
876ac0b4ba feat: added DECRBY command 2024-06-25 02:11:30 +05:30
Kelvin Mwinuka
8ad27145f5 Added godoc comment for Decr embedded API method. 2024-06-23 22:52:32 +08:00
Sahil
dfb5a0ff4b feat: added DECR command support 2024-06-23 19:07:20 +05:30
Sahil
39065680fa handled case for key doesn't exist 2024-06-20 11:44:36 +05:30
Sahil
1e0625f28f feat: INCR command added 2024-06-20 01:10:58 +05:30
Kelvin Clement Mwinuka
926a008c23 Updated generic and hash package tests to use tcp connection instead of calling the handler directly 2024-05-24 13:40:40 +08:00
Kelvin Clement Mwinuka
f894a531b0 Added happy path test case for data replication 2024-05-22 16:11:00 +08:00
Kelvin Clement Mwinuka
aa7b5fa8cc Added ZRemRangeByLex and ZRemRangeByRank to embedded API. 2024-05-14 02:11:10 +08:00
Kelvin Clement Mwinuka
281c4f27a7 Added godoc commends for embedded methods and types to extend commands. Moved constants to internal directory 2024-04-29 15:20:10 +08:00
Kelvin Clement Mwinuka
972cbe0a4f Renamed command API methods to use CamelCase 2024-04-28 07:22:39 +08:00
Kelvin Clement Mwinuka
97f4617d86 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. 2024-04-28 00:37:45 +08:00
Kelvin Clement Mwinuka
6ad3b7baab 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 2024-04-26 02:33:35 +08:00
Kelvin Clement Mwinuka
b6ddb43a49 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. 2024-04-24 22:37:16 +08:00