airbytehq / airbytehq/PyAirbyte

Extract pytest slow marker tuner into dedicated package

Offen
#837 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement
Vorherrschende Sprache
Python
Sterne
344
Forks
77
Ø Merge
1 T. 11 Std.
Gemergte PRs (30 T.)
35

Beschreibung

## 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)

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.