diff --git a/.github/workflows/breaking-change-detector.yml b/.github/workflows/breaking-change-detector.yml new file mode 100644 index 0000000000..8dbabe7fbd --- /dev/null +++ b/.github/workflows/breaking-change-detector.yml @@ -0,0 +1,102 @@ +name: Breaking Change Detector + +on: + pull_request: + branches: + - main + paths: + - 'src/**' + +jobs: + check-api: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 # Required for accessing the main branch history + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: Install the latest version of uv + uses: astral-sh/setup-uv@v5 + + - name: Install dependencies + # Syncing installs the package and its dependencies (populating google.* namespace) + # Installing 'griffe' ensures the tool is available in the environment + run: | + uv sync --extra test + uv pip install griffe + + - name: Run Breaking Change Detection + # Uses 'uv run python' to execute in the environment with all dependencies installed + run: | + uv run python - < Generator[Event, None, None]: + ) -> Generator[dict, None, None]: """Runs the agent. NOTE: