Riak KV is an open source Erlang application that is distributed using the riak_core Erlang library. Riak KV provides a key/value datastore and features MapReduce, lightweight data relations, and several different client APIs.
You must have Erlang/OTP 20 or 22 or later and a GNU-style build
system to compile and run riak_kv
. The easiest way to utilize riak_kv is by installing the full
Riak application available on Github.
We encourage contributions to riak_kv
from the community.
- Fork the
riak_kv
repository on Github. - Clone your fork or add the remote if you already have a clone of the repository.
git clone git@github.com:yourusername/riak_kv.git
# or
git remote add mine git@github.com:yourusername/riak_kv.git
- Create a topic branch for your change.
git checkout -b some-topic-branch
- Make your change and commit. Use a clear and descriptive commit message, spanning multiple lines if detailed explanation is needed.
- Push to your fork of the repository and then send a pull-request through Github.
git push mine some-topic-branch
- A Basho engineer or community maintainer will review your patch and merge it into the main repository or send you feedback.
# standard tests
./rebar3 do xref, dialyzer, eunit
# property-based tests
./rebar3 as test eqc --testing_budget 600
For a more complete set of tests, update riak_kv in the full Riak application and run any appropriate Riak riak_test groups