Skip to content

Extract pytest slow marker tuner into dedicated package #837

@devin-ai-integration

Description

@devin-ai-integration

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

Requested by: AJ Steers (@aaronsteers)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions