Commit Graph

30 Commits

Author SHA1 Message Date
Carl Lerche
2965f9a1cf Prepare v0.1.0 release (#42) 2020-05-13 13:50:09 -07:00
Carl Lerche
fdba12b964 use structopt instead of Clap (#41)
mini-redis uses the CLI derive pattern. Clap does not yet have a release
supporting this pattern. Using structopt allows mini-redis to avoid git
dependencies.
2020-05-12 16:48:16 -07:00
Carl Lerche
84f7086238 use a released version of Tokio (#40) 2020-05-12 16:40:34 -07:00
Carl Lerche
4bc7af4455 readme: indicate there is no persistence yet. (#36) 2020-04-15 13:37:21 -07:00
Carl Lerche
f17525569c tweak CI (#35) 2020-04-15 13:14:51 -07:00
Carl Lerche
f855dc5d50 Use GitHub actions for CI 2020-04-15 12:28:40 -07:00
Carl Lerche
81888e36b5 fmt (#34) 2020-04-15 09:47:28 -07:00
Carl Lerche
ecf1eb4ea8 More comments and tweak details (#33)
Co-authored-by: Alice Ryhl <alice@ryhl.io>
2020-04-15 09:44:12 -07:00
Carl Lerche
5752d1e0fc mostly docs, some code tweaks as well (#31)
Db background tasks never shutdown o_O
2020-04-13 21:02:32 -07:00
Carl Lerche
757de6762d add readme and license (#30)
Co-authored-by: Alice Ryhl <alice@ryhl.io>
2020-04-13 15:26:54 -07:00
Carl Lerche
b0edd092f4 write conn comments (#29)
Co-Authored-By: Alice Ryhl <alice@ryhl.io>
2020-04-13 12:49:19 -07:00
Carl Lerche
6f7abbcb48 fix test broken by merge (#28) 2020-04-10 15:55:43 -07:00
Carl Lerche
d4f0dac671 add server pub/sub tests, fix pub/sub response (#27)
mini-redis server responses on PUB/SUB commands did not match real
redis.
2020-04-06 16:34:12 -07:00
João Oliveira
922919a9d4 add unknown commands handling without breaking client connection (#26)
- fix client unsubscribe when subscribe list in the event of the
  received unsubscribe list is in a different order than subscribed
- add tests for subscribe and unsubscribe commands
- add tests for unknown command handling
2020-04-06 13:27:58 -07:00
João Oliveira
e7f6a372f0 add initial client tests (#25) 2020-04-05 20:57:45 -07:00
João Oliveira
83cdedf34f fix startup panic by raising shutdown channel buffer to 1 (#24) 2020-04-05 13:17:51 -07:00
João Oliveira
3fbd9ddc42 add pub sub client implementation with examples (#22)
* add pub sub client implementation with examples

* replace subscribed_channels list Vec with HashSet to avoid duplicates

* update Subscriber to use async-stream instead of manual Stream impl

* revert update to error handling server.rs, as #21 handles it

* remove uneeded recursion limit extension
2020-04-05 18:33:21 +01:00
Carl Lerche
f187085156 Improve accept logic (#21)
Handle accept errors using an exponential backoff strategy. Also uses a
semaphore to limit the max number connections.

Adds inline documentation and comments.
2020-04-05 10:24:49 -07:00
João Oliveira
2115ebfb41 add hello world example (#20) 2020-04-03 15:10:20 -07:00
Carl Lerche
4ac69aeb76 write server test (#19) 2020-04-03 12:21:39 -07:00
Carl Lerche
e3a7aac271 chore: remove dump.rdb (#18) 2020-04-02 15:05:02 -07:00
Carl Lerche
bbb80c341e apply client/cli polish (#15)
Continuation of #11. Refines the client structure and implements GET.

`clap` is decoupled from the lib code. This is done to avoid any CLI
parsing concerns to leak into the lib. The main motivation for this is
to allow the reader to focus on Tokio concerns and not CLI parsing
concerns.
2020-04-01 16:09:41 -07:00
Avery Harnish
7bd7086d41 implement client set (#11) 2020-03-28 14:00:47 -07:00
Carl Lerche
fc5597f293 server: implement key expiration (#13) 2020-03-25 13:45:54 -07:00
Avery Harnish
49b848b805 chore: add heading to readme (#12) 2020-03-24 12:29:12 -07:00
Avery Harnish
4ea1316aae Merge pull request #8 from carllerche/avery/tracing
feat: adds trace events to server
2020-03-17 11:05:10 -05:00
Avery Harnish
2b6b19ebc3 feat: adds trace events to server 2020-03-03 17:14:18 -06:00
Avery Harnish
80511f2cb5 add cli for server/client (#4)
This PR adds a CLI to main.rs that allows you to run the redis server and eventually the redis client.
2020-03-03 09:15:20 -08:00
Avery Harnish
9852de9924 runs cargofmt (#3) 2020-02-11 13:27:49 -08:00
Carl Lerche
358e95e57c Initial commit 2020-02-05 09:56:25 -08:00