Thank you for your interest in contributing to Rash!
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/bashrs.git - Create a feature branch:
git checkout -b feature/your-feature-name - Make your changes
- Run tests:
cargo test - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin feature/your-feature-name - Create a Pull Request
- EXTREME TDD: Write failing tests first (RED), implement (GREEN), refactor
- POSIX Compliance: All generated shell scripts must pass
shellcheck -s sh - Test Coverage: Maintain >95% code coverage
- Property Tests: Add property-based tests for new features
- Documentation: Update docs and examples for new features
# Run all tests
cargo test
# Run property tests
cargo test --lib
# Run with coverage
make coverage
# Validate shell output
make test-shellsBefore submitting:
- Ensure all tests pass:
cargo test - Check formatting:
cargo fmt - Run clippy:
cargo clippy - Validate docs:
pmat validate-docs --root .
Feel free to open an issue for:
- Bug reports
- Feature requests
- Questions about the codebase
- Suggestions for improvements
We appreciate your contributions!