diff --git a/.github/workflows/codspeed.yml b/.github/workflows/codspeed.yml index 26499942..c141ba12 100644 --- a/.github/workflows/codspeed.yml +++ b/.github/workflows/codspeed.yml @@ -12,28 +12,37 @@ on: jobs: benchmarks: runs-on: ubuntu-22.04 + strategy: + matrix: + python-version: + - "3.8" steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.8" + + - name: Install uv + uses: astral-sh/setup-uv@v3 + + - name: Set up Python ${{ matrix.python-version }} + run: uv python install ${{ matrix.python-version }} + - - name: Install dependencies + - name: Install dependencies with uv run: | - python -m pip install --upgrade pip - pip install poetry==1.3.0 - poetry export --with test --with dev --without-hashes --output requirements.txt - pip install -r requirements.txt - pip install -e . + uv venv --seed + uv run python -m pip install --upgrade pip + uv add pre-commit poetry maturin pytest patchelf + uv run poetry export --with test --with dev --without-hashes --output requirements.txt + uv run pip install -r requirements.txt + uv run pip install -e . - name: Add macos target if: matrix.os == 'macos' run: rustup target add aarch64-apple-darwin - name: Setup Rust part of the project run: | maturin build -i python --universal2 --out dist - pip install --no-index --find-links=dist/ robyn + uv run pip install --no-index --find-links=dist/ robyn - name: Run benchmarks uses: CodSpeedHQ/action@v2 with: token: ${{ secrets.CODSPEED_TOKEN }} - run: pytest integration_tests --codspeed + run: uv run pytest integration_tests --codspeed