Skip to main content

Contributing to Qarion ETL

Guidelines for contributing to the Qarion ETL project.

Getting Started

  1. Fork the repository
  2. Clone your fork
  3. Set up development environment (see Development Setup)
  4. Create a feature branch

Development Workflow

1. Create Feature Branch

git checkout -b feature/my-feature

2. Make Changes

  • Follow Code Style guidelines
  • Write tests for new functionality
  • Update documentation

3. Run Tests

poetry run pytest

4. Run Linting

poetry run ruff check .

5. Commit Changes

git commit -m "Add feature: description"

6. Push and Create Pull Request

git push origin feature/my-feature

Code Style

See Code Style Guide for detailed guidelines.

Key points:

  • Follow PEP 8
  • Use type hints
  • Document all public functions
  • Keep functions focused

Testing

See Testing Guide for detailed guidelines.

Key points:

  • Write tests for new features
  • Maintain or improve test coverage
  • Test edge cases and error handling

Documentation

When adding new features:

  1. Update relevant documentation
  2. Add examples where helpful
  3. Update API reference if adding public APIs
  4. Update plugin documentation if adding plugin interfaces

Pull Request Process

  1. Ensure tests pass
  2. Ensure linting passes
  3. Update documentation
  4. Write clear PR description
  5. Reference related issues

Code Review

All code must be reviewed before merging:

  • At least one approval required
  • Address review comments
  • Keep PRs focused and small