Contributing to Barrel DocDB
View SourceThank you for your interest in contributing to Barrel DocDB!
Getting Started
Prerequisites
- Erlang/OTP 28+
- Git
- RocksDB development libraries
Building from Source
# Clone the umbrella repository
git clone https://github.com/barrel-db/barrel.git
cd barrel/apps/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 documentationReporting 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 GitHub
- Check existing documentation
License
By contributing, you agree that your contributions will be licensed under Apache License 2.0.