Contributing to Barrel DocDB¶
Thank you for your interest in contributing to Barrel DocDB!
Getting Started¶
Prerequisites¶
- Erlang/OTP 27+
- Git
- RocksDB development libraries
Building from Source¶
# Clone the repository
git clone https://gitlab.enki.io/barrel-db/barrel_docdb.git
cd barrel_docdb
# Compile
rebar3 compile
# Run tests
rebar3 ct
Development Workflow¶
Branch Naming¶
feature/description- New featuresfix/description- Bug fixesdocs/description- Documentation updates
Running Tests¶
# All tests
rebar3 ct
# Specific suite
rebar3 ct --suite=barrel_docdb_SUITE
# With coverage
rebar3 ct --cover
rebar3 cover
Code Style¶
- Follow existing code conventions
- Use meaningful variable names
- Add
@doccomments for public functions - Keep functions small and focused
Submitting Changes¶
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests to ensure they pass
- Submit a merge request
Commit Messages¶
Use clear, descriptive commit messages:
Add support for regex queries
- Implement regex condition in barrel_query
- Add tests for regex pattern matching
- Update documentation
Reporting Issues¶
When reporting issues, please include:
- Barrel DocDB version
- Erlang/OTP version
- Steps to reproduce
- Expected vs actual behavior
- Relevant logs or error messages
Questions?¶
- Open an issue on GitLab
- Check existing documentation
License¶
By contributing, you agree that your contributions will be licensed under Apache License 2.0.