We welcome and encourage contributions of all kinds, such as:
- Tickets with issue reports of feature requests
- Documentation improvements
- Code (PR or PR Review)
- Setup the Rust toolchain. See the Rust book for details.
- Install Protobuf compiler. See the Protobuf book for details.
- Setup neo4j (via default port 7687). See the neo4j documentation for details.
- Setup Etcd (via default port 2379). See the etcd documentation for details.
- Setup Redis (via port 7379). See the redis documentation for details.
- Check the configurations in
examples/quickstart/ofnil.toml
andexamples/quickstart/.env
. - Build and test
cargo build
cargo test
OFNIL_HOME=examples/quickstart RUST_LOG=info cargo run --example quickstart
.
Contributors are encouraged to add unit tests (#[test] or #[tokio::test]) for the project.
To run the tests, use the following command:
cargo test
Contributors are encouraged to follow the Rust Style Guide.
Before submitting a PR, please run the following command to format the code and resolve potential problems:
cargo fmt
cargo clippy
A valid PR title should begin with one of the following prefixes:
feat
: A new featurefix
: A bug fixdoc
: Documentation only changesstyle
: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)refactor
: A code change that neither fixes a bug nor adds a featureperf
: A code change that improves performancetest
: Adding missing tests or correcting existing testsbuild
: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)ci
: Changes to CI configuration files and scriptschore
: Other changes that don't modify src or test filesrevert
: Reverts a previous commit
You are encourage to check out and review previous PRs.
A PR description should include What's changed and what's your intention
section. The more detailed the description is, the easier it is for other community members to review and merge your PR.
Contributors will need to sign Ofnil's CLA.