Skip to content

feat: Update pyQuil, drop support for Python 3.8, enable support for Python 3.13 #63

feat: Update pyQuil, drop support for Python 3.8, enable support for Python 3.13

feat: Update pyQuil, drop support for Python 3.8, enable support for Python 3.13 #63

Workflow file for this run

on:
pull_request
name: Checks
env:
# Issues with `poetry install` on windows with python 3.9 otherwise.
POETRY_VERSION: "1.3.2"
jobs:
style:
name: Style Checks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: .venv
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
restore-keys: |
${{ runner.os }}-poetry-
- name: Install Dependencies
run: |
pip install poetry==${{ env.POETRY_VERSION }}
poetry config virtualenvs.in-project true
poetry install
- name: Style Checks
run: poetry run make check-style
lint:
name: Linters
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: .venv
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
restore-keys: |
${{ runner.os }}-poetry-
- name: Install Dependencies
run: |
pip install poetry==${{ env.POETRY_VERSION }}
poetry config virtualenvs.in-project true
poetry install
- name: Lint Checks
run: poetry run make lint
test-no-qcs:
name: Test (no QCS)
strategy:
matrix:
os:
- ubuntu-latest
- windows-latest
- macos-latest
python:
- 3.9
- "3.10"
- "3.11"
- "3.12"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- uses: actions/cache@v3
with:
path: .venv
key: ${{ runner.os }}-python-${{ matrix.python }}-poetry-${{ hashFiles('poetry.lock') }}
restore-keys: |
${{ runner.os }}-python-${{ matrix.python }}-poetry-
- name: Install Dependencies
run: |
pip install poetry==${{ env.POETRY_VERSION }}
poetry config virtualenvs.in-project true
poetry install
- name: Test
run: poetry run make test-no-qcs
env:
TEST_QUANTUM_PROCESSOR: Ankaa-9Q-3
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_QUANTUM_SUBSCRIPTION_ID: ${{ secrets.AZURE_QUANTUM_SUBSCRIPTION_ID }}
AZURE_QUANTUM_WORKSPACE_RG: ${{ secrets.AZURE_QUANTUM_WORKSPACE_RG }}
AZURE_QUANTUM_WORKSPACE_NAME: ${{ secrets.AZURE_QUANTUM_WORKSPACE_NAME }}
AZURE_QUANTUM_WORKSPACE_LOCATION: ${{ secrets.AZURE_QUANTUM_WORKSPACE_LOCATION }}
test_qcs:
name: Test (QCS)
strategy:
matrix:
python:
- 3.9
- "3.10"
- "3.11"
- "3.12"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python }}
- uses: actions/cache@v3
with:
path: .venv
key: ${{ runner.os }}-python-${{ matrix.python }}-poetry-${{ hashFiles('poetry.lock') }}
restore-keys: |
${{ runner.os }}-python-${{ matrix.python }}-poetry-
- name: Install Dependencies
run: |
pip install poetry==${{ env.POETRY_VERSION }}
poetry config virtualenvs.in-project true
poetry install
- name: Setup QCS Settings
run: |
mkdir -p ~/.qcs
echo '${{ secrets.QCS_SETTINGS_FILE }}' > ~/.qcs/settings.toml
echo '${{ secrets.QCS_SECRETS_FILE }}' > ~/.qcs/secrets.toml
- name: Start quilc
run: docker run -d -p 5555:5555 rigetti/quilc -S
- name: Test
run: poetry run make test-requires-qcs
env:
TEST_QUANTUM_PROCESSOR: Ankaa-9Q-3
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_QUANTUM_SUBSCRIPTION_ID: ${{ secrets.AZURE_QUANTUM_SUBSCRIPTION_ID }}
AZURE_QUANTUM_WORKSPACE_RG: ${{ secrets.AZURE_QUANTUM_WORKSPACE_RG }}
AZURE_QUANTUM_WORKSPACE_NAME: ${{ secrets.AZURE_QUANTUM_WORKSPACE_NAME }}
AZURE_QUANTUM_WORKSPACE_LOCATION: ${{ secrets.AZURE_QUANTUM_WORKSPACE_LOCATION }}