Skip to content

Commit fd4ea02

Browse files
committed
Update DEVELOPMENT.md
1 parent 55bd392 commit fd4ea02

File tree

1 file changed

+33
-4
lines changed

1 file changed

+33
-4
lines changed

DEVELOPMENT.md

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Building from Source
22

3-
You can use this command to clone the repository:
3+
You can build the Raftify source code on macOS, Windows, and Linux.
4+
5+
Use this command to clone the repository,
46

57
```
68
❯ git clone --recursive https://github.com/lablup/raftify.git
@@ -12,14 +14,41 @@ If you already cloned it and forgot to initialize the submodules, execute the fo
1214
❯ git submodule update --init
1315
```
1416

15-
# Development environment setup
17+
# Development Environment Setup
18+
19+
## Test
20+
21+
You can run the test codes of Raftify in parallel using [nextest](https://github.com/nextest-rs/nextest).
22+
23+
To install `nextest`,
1624

17-
## precommit hook setup
25+
```
26+
❯ cargo install cargo-nextest
27+
```
28+
29+
And run the tests by the following command.
30+
31+
```
32+
❯ cargo nextest run
33+
```
34+
35+
## `precommit` hook setup
1836

1937
You can use pre-commit hooks with the following configuration.
20-
This commit hook performs checks like cargo fmt and cargo clippy before committing.
38+
This commit hook performs checks like `cargo fmt` and `cargo clippy` before committing.
2139

2240
```
2341
❯ pip install pre-commit --break-system-packages
2442
❯ pre-commit install
2543
```
44+
45+
# Features
46+
47+
You can build Raftify with the following features.
48+
49+
By enabling or disabling the features below, you can include only the essential dependencies and source code in the build.
50+
51+
- `inmemory_storage`: In-memory log storage.
52+
- `heed_storage`: [Heed](`https://github.com/meilisearch/heed`) log storage.
53+
- `rocksdb_storage`: [RocksDB](https://github.com/rust-rocksdb/rust-rocksdb) log storage.
54+
- `tls`: Enable TLS encryption for Raft server and client.

0 commit comments

Comments
 (0)