Skip to content

fix: honor zero values in Dataset.reset_seeds #8560

fix: honor zero values in Dataset.reset_seeds

fix: honor zero values in Dataset.reset_seeds #8560

Workflow file for this run

name: Lint, Test, and Build
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened]
permissions: {}
jobs:
workflow-lint:
name: Lint GitHub Actions Workflows
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Run zizmor
uses: zizmorcore/zizmor-action@5f14fd08f7cf1cb1609c1e344975f152c7ee938d # v0.5.6
- name: Run actionlint
uses: raven-actions/actionlint@205b530c5d9fa8f44ae9ed59f341a0db994aa6f8 # v2.1.2
fix:
name: Check Ruff Fix
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.11"
- name: Install uv with caching
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
enable-cache: true
cache-dependency-glob: |
**/pyproject.toml
**/uv.lock
- name: Create and activate virtual environment
run: |
uv venv .venv
echo "$GITHUB_WORKSPACE/.venv/bin" >> "$GITHUB_PATH"
- name: Install dependencies
run: uv sync --dev -p .venv --extra dev
- name: Ruff Check
run: |
ruff check --fix-only --diff --exit-non-zero-on-fix || (
echo ""
echo "❌ Ruff found issues that can be fixed automatically."
echo "💡 To fix them locally, run:"
echo ""
echo " pre-commit run --all-files"
echo ""
echo "Then commit and push the changes."
exit 1
)
test:
name: Run Tests
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: ${{ matrix.python-version }}
- name: Install Deno
uses: denoland/setup-deno@667a34cdef165d8d2b2e98dde39547c9daac7282 # v2.0.4
with:
deno-version: v2.7.7
- name: Verify Deno installation
run: deno --version
- name: Install uv with caching
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
enable-cache: true
cache-dependency-glob: |
**/pyproject.toml
**/uv.lock
- name: Create and activate virtual environment
run: |
uv venv .venv
echo "$GITHUB_WORKSPACE/.venv/bin" >> "$GITHUB_PATH"
- name: Install dependencies
run: |
uv sync --dev -p .venv --extra dev
uv pip list
- name: Run lint with tests
uses: chartboost/ruff-action@e18ae971ccee1b2d7bbef113930f00c670b78da4 # v1
with:
args: check --fix-only
- name: Run tests with pytest
run: uv run -p .venv pytest -vv tests/
- name: Install optional dependencies
run: uv sync -p .venv --extra dev --extra test_extras
- name: Run extra and deno tests
run: uv run -p .venv pytest tests/ -m 'extra or deno' --extra --deno
llm_call_test:
name: Run Tests with Real LM
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: 3.11
- name: Install uv with caching
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
enable-cache: true
cache-dependency-glob: |
**/pyproject.toml
**/uv.lock
- name: Create and activate virtual environment
run: |
uv venv .venv
echo "$GITHUB_WORKSPACE/.venv/bin" >> "$GITHUB_PATH"
- name: Install dependencies
run: |
uv sync --dev -p .venv --extra dev
uv pip list
- name: Cache Ollama models
id: cache-ollama
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
with:
path: ollama-data
key: ollama-llama3.2-3b-${{ runner.os }}-v1
- name: Start Ollama service
run: |
mkdir -p ollama-data
docker run -d --name ollama \
-p 11434:11434 \
-v "$GITHUB_WORKSPACE/ollama-data:/root/.ollama" \
ollama/ollama:latest
timeout 60 bash -c 'until curl -f http://localhost:11434/api/version; do sleep 2; done'
- name: Pull LLM
if: steps.cache-ollama.outputs.cache-hit != 'true'
run: docker exec ollama ollama pull llama3.2:3b
- name: Set LM environment variable
run: echo "LM_FOR_TEST=ollama/llama3.2:3b" >> "$GITHUB_ENV"
- name: Run tests
run: uv run -p .venv pytest -m llm_call --llm_call -vv --durations=5 tests/
- name: Fix permissions for cache
if: always()
run: sudo chown -R "$USER":"$USER" ollama-data || true
- name: Stop Ollama service
if: always()
run: docker stop ollama && docker rm ollama
build_package:
name: Build Package
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: ${{ matrix.python-version }}
- name: Install uv with caching
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
enable-cache: true
cache-dependency-glob: |
**/pyproject.toml
**/uv.lock
- name: Create and activate virtual environment
run: |
uv venv .venv
echo "$GITHUB_WORKSPACE/.venv/bin" >> "$GITHUB_PATH"
- name: Install dependencies
run: uv sync --dev -p .venv --extra dev
- name: Build
run: uv run -p .venv python -m build
- name: Install built package
run: uv pip install dist/*.whl -p .venv
- name: Test import dspy
run: uv run -p .venv python -c "import dspy"