chore: import upstream snapshot with attribution
Tests on CPU (scheduled) / check-skip (push) Has been cancelled
Tests on CPU (scheduled) / pre-tests (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-ubuntu (float32) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-ubuntu (float64) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float64, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float64, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float64, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float64, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.13, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.13, float64, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.11, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.11, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.12, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.12, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.13, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / coverage (push) Has been cancelled
Tests on CPU (scheduled) / typing (push) Has been cancelled
Tests on CPU (scheduled) / tutorials (push) Has been cancelled
Tests on CPU (scheduled) / docs (push) Has been cancelled
Lint / TOML Format (push) Has been cancelled
Tests on CPU (scheduled) / check-skip (push) Has been cancelled
Tests on CPU (scheduled) / pre-tests (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-ubuntu (float32) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-ubuntu (float64) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float64, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.11, float64, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float64, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.12, float64, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.13, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-windows (3.13, float64, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.11, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.11, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.12, float32, 2.5.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.12, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / tests-cpu-mac (3.13, float32, 2.9.1) (push) Has been cancelled
Tests on CPU (scheduled) / coverage (push) Has been cancelled
Tests on CPU (scheduled) / typing (push) Has been cancelled
Tests on CPU (scheduled) / tutorials (push) Has been cancelled
Tests on CPU (scheduled) / docs (push) Has been cancelled
Lint / TOML Format (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,173 @@
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
python-version:
|
||||
required: false
|
||||
type: string
|
||||
default: "3.11"
|
||||
pytorch-device:
|
||||
required: false
|
||||
type: string
|
||||
default: "cpu"
|
||||
os:
|
||||
required: false
|
||||
type: string
|
||||
default: ubuntu-latest
|
||||
ref:
|
||||
required: false
|
||||
type: string
|
||||
default: ${{ github.sha }}
|
||||
cache-path:
|
||||
required: false
|
||||
type: string
|
||||
cache-key:
|
||||
required: false
|
||||
type: string
|
||||
cache-restore-keys:
|
||||
required: false
|
||||
type: string
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
slow:
|
||||
# Only run tests with slow marker which aren't dynamo tests
|
||||
runs-on: ${{ inputs.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
pytorch-dtype: ["float32", "float64"]
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ inputs.ref }}
|
||||
|
||||
- name: Restore cache
|
||||
if: inputs.cache-path != ''
|
||||
uses: actions/cache/restore@v5
|
||||
with:
|
||||
path: ${{ inputs.cache-path }}
|
||||
key: ${{ inputs.cache-key }}
|
||||
restore-keys: ${{ inputs.cache-restore-keys }}
|
||||
|
||||
- uses: ./.github/actions/coverage
|
||||
with:
|
||||
python-version: ${{ inputs.python-version }}
|
||||
pytorch-dtype: ${{ matrix.pytorch-dtype }}
|
||||
pytorch-device: ${{ inputs.pytorch-device }}
|
||||
pytest-extra: '--runslow -k "slow and not test_dynamo"'
|
||||
coverage-artifact: coverage-slow-${{ matrix.pytorch-dtype }}
|
||||
|
||||
dynamo:
|
||||
# Run all dynamo (torch.compile) related tests
|
||||
runs-on: ${{ inputs.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
pytorch-dtype: ["float32"]
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ inputs.ref }}
|
||||
|
||||
- name: Restore cache
|
||||
if: inputs.cache-path != ''
|
||||
uses: actions/cache/restore@v5
|
||||
with:
|
||||
path: ${{ inputs.cache-path }}
|
||||
key: ${{ inputs.cache-key }}
|
||||
restore-keys: ${{ inputs.cache-restore-keys }}
|
||||
|
||||
- uses: ./.github/actions/coverage
|
||||
env:
|
||||
KORNIA_TEST_OPTIMIZER: inductor
|
||||
with:
|
||||
python-version: ${{ inputs.python-version }}
|
||||
pytorch-dtype: ${{ matrix.pytorch-dtype }}
|
||||
pytorch-device: ${{ inputs.pytorch-device }}
|
||||
pytest-extra: '--runslow -k "test_dynamo"'
|
||||
coverage-artifact: coverage-dynamo-${{ matrix.pytorch-dtype }}
|
||||
|
||||
overall:
|
||||
# Run all tests which didn't have a slow marker or are dynamo tests
|
||||
runs-on: ${{ inputs.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
pytorch-dtype: ["float32", "float64"]
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ inputs.ref }}
|
||||
|
||||
- name: Restore cache
|
||||
if: inputs.cache-path != ''
|
||||
uses: actions/cache/restore@v5
|
||||
with:
|
||||
path: ${{ inputs.cache-path }}
|
||||
key: ${{ inputs.cache-key }}
|
||||
restore-keys: ${{ inputs.cache-restore-keys }}
|
||||
|
||||
- uses: ./.github/actions/coverage
|
||||
with:
|
||||
python-version: ${{ inputs.python-version }}
|
||||
pytorch-dtype: ${{ matrix.pytorch-dtype }}
|
||||
pytorch-device: ${{ inputs.pytorch-device }}
|
||||
coverage-artifact: coverage-overall-${{ matrix.pytorch-dtype }}
|
||||
|
||||
report:
|
||||
runs-on: ${{ inputs.os }}
|
||||
needs: [slow, dynamo, overall]
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
repository: kornia/kornia
|
||||
ref: ${{ inputs.ref }}
|
||||
|
||||
- name: Download coverage reports
|
||||
uses: actions/download-artifact@v8
|
||||
with:
|
||||
merge-multiple: true
|
||||
|
||||
- name: Set pixi environment name
|
||||
id: pixi-env
|
||||
shell: bash
|
||||
run: echo "name=py$(echo '${{ inputs.python-version }}' | tr -d '.')" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Setup pixi
|
||||
uses: prefix-dev/setup-pixi@v0.9.6
|
||||
with:
|
||||
pixi-version: v0.40.0
|
||||
cache: true
|
||||
environments: ${{ steps.pixi-env.outputs.name }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: pixi run -e ${{ steps.pixi-env.outputs.name }} install
|
||||
|
||||
- name: Run coverage
|
||||
run: |
|
||||
pixi run -e ${{ steps.pixi-env.outputs.name }} uv run coverage combine --keep \
|
||||
$GITHUB_WORKSPACE/coverage-dynamo-float32 \
|
||||
$GITHUB_WORKSPACE/coverage-slow-float32 \
|
||||
$GITHUB_WORKSPACE/coverage-slow-float64 \
|
||||
$GITHUB_WORKSPACE/coverage-overall-float32 \
|
||||
$GITHUB_WORKSPACE/coverage-overall-float64
|
||||
pixi run -e ${{ steps.pixi-env.outputs.name }} uv run coverage xml -o coverage.xml
|
||||
pixi run -e ${{ steps.pixi-env.outputs.name }} uv run coverage report --show-missing --skip-covered
|
||||
|
||||
- if: always()
|
||||
name: Upload coverage
|
||||
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v3
|
||||
with:
|
||||
file: coverage.xml
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
flags: cpu,${{ inputs.os }}_py-${{ inputs.python-version }}_float32,float64
|
||||
name: cpu-coverage
|
||||
Reference in New Issue
Block a user