airbytehq / airbytehq/PyAirbyte
Extract pytest slow marker tuner into dedicated package
- Lenguaje dominante
- Python
- Estrellas
- 344
- Forks
- 77
- Merge medio
- 1 d 11 h
- PR fusionados (30 d)
- 35
Descripción
## Summary
The pytest slow marker tuner (`bin/tune_slow_markers.py`) should be extracted into its own dedicated package/repository. This tool is useful for any pytest project and could benefit the broader Python testing community.
## Current Implementation
The tool currently lives in PyAirbyte's `bin/` directory and provides:
- Automated detection of slow tests based on execution time
- AST-based marker addition/removal that preserves code formatting
- Configurable timeout threshold (default: 7.0s)
- Dry-run mode for preview
- Optional removal of slow markers from fast tests
- PEP 723 inline script metadata for standalone execution with `uv run`
## Proposed Changes
1. **Create a new repository** (e.g., `pytest-slow-marker-tuner`)
2. **Package structure**:
- Convert to a proper Python package with `pyproject.toml`
- Add comprehensive tests
- Add documentation (README, usage examples)
- Set up CI/CD for testing and publishing
3. **Publishing**:
- Publish to PyPI for easy installation
- Support installation via `pipx` or `uv tool install`
4. **Integration**:
- Update PyAirbyte to use the published package
- Provide GitHub Action for easy CI integration
## Benefits
- **Reusability**: Any pytest project can use this tool
- **Maintainability**: Dedicated repo with its own tests and CI
- **Discoverability**: PyPI listing makes it easy to find
- **Community**: Can accept contributions from broader community
## References
- Current implementation: https://github.com/airbytehq/PyAirbyte/pull/836
- Devin session: https://app.devin.ai/sessions/b2bd2fdac9314cf18270c81f81305c55
**Requested by:** AJ Steers (@aaronsteers)
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.