Skip to content

Commit

Permalink
fix: increase python upper bound to include python 3.13 (#5706)
Browse files Browse the repository at this point in the history
  • Loading branch information
RogerHYang authored Dec 11, 2024
1 parent c2dbe5d commit 4431a0e
Show file tree
Hide file tree
Showing 12 changed files with 139 additions and 80 deletions.
22 changes: 16 additions & 6 deletions .github/workflows/playwright.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,22 @@ on:
jobs:
e2e-test:
timeout-minutes: 60
runs-on: ubuntu-latest
runs-on: ${{ matrix.os }}
defaults:
run:
working-directory: ./app
env:
# We're skipping WebKit because of recurring issues with caching,
# despite always installing it on cache-hit.
CI_PLAYWRIGHT_SKIP_WEBKIT: true
strategy:
fail-fast: false
matrix:
py: [ 3.9, 3.12, 3.13 ]
os: [ ubuntu-latest, windows-latest, macos-latest, macos-13 ]
exclude:
- py: 3.13
os: macos-13
steps:
- uses: actions/checkout@v4
- name: Install PNPM
Expand Down Expand Up @@ -50,20 +58,22 @@ jobs:
run: pnpm run build
- uses: actions/setup-python@v5
with:
python-version: 3.12
- uses: astral-sh/setup-uv@v3
python-version: ${{ matrix.py }}
- uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: "pyproject.toml"
github-token: ${{ secrets.GITHUB_TOKEN }}
- run: uv pip install --system ../. uvloop
- run: uv pip install --system uvloop
if: runner.os != 'Windows'
- run: uv pip install --system ../.
- run: uv pip list
- name: Run Playwright tests
run: pnpm exec playwright test
- uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
name: playwright-report-py${{ matrix.py }}-${{ matrix.os }}
path: app/playwright-report/
retention-days: 30
88 changes: 53 additions & 35 deletions .github/workflows/python-CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,9 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py }}
- uses: astral-sh/setup-uv@v3
- uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
- run: uvx --with tox-uv tox run -e phoenix_evals -- -ra -x

phoenix-otel:
Expand All @@ -120,9 +120,9 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py }}
- uses: astral-sh/setup-uv@v3
- uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
- run: uvx --with tox-uv tox run -e phoenix_otel -- -ra -x

# clean-jupyter-notebooks:
Expand All @@ -131,7 +131,7 @@ jobs:
# if: ${{ needs.changes.outputs.ipynb == 'true' }}
# strategy:
# matrix:
# py: [ 3.12 ]
# py: [ 3.13 ]
# os: [ ubuntu-latest ]
# runs-on: ${{ matrix.os }}
# steps:
Expand All @@ -142,9 +142,9 @@ jobs:
# with:
# python-version: ${{ matrix.py }}
# - name: Set up `uv`
# uses: astral-sh/setup-uv@v3
# uses: astral-sh/setup-uv@v4
# with:
# version: 0.5.5
# version: 0.5.8
# enable-cache: true
# cache-dependency-glob: |
# pyproject.toml
Expand All @@ -159,8 +159,9 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.12]
py: [3.12, 3.13]
os: [ubuntu-latest]
runs-on: ${{ matrix.os }}
steps:
Expand All @@ -171,9 +172,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -188,9 +189,12 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.12]
py: [3.12, 3.13]
os: [ubuntu-latest]
exclude:
- py: 3.13
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
Expand All @@ -200,9 +204,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -229,9 +233,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -245,8 +249,9 @@ jobs:
name: Ruff
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
py: [3.12]
py: [3.12, 3.13]
os: [ubuntu-latest]
steps:
- name: Checkout repository
Expand All @@ -256,9 +261,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
- name: Run `ruff`
run: uvx --with tox-uv tox run -e ruff
- run: git diff --exit-code
Expand All @@ -269,8 +274,9 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.9, 3.12]
py: [3.9, 3.12, 3.13]
os: [ubuntu-latest]
steps:
- name: Checkout repository
Expand All @@ -285,9 +291,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -303,8 +309,9 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.9, 3.12]
py: [3.9, 3.12, 3.13]
os: [ubuntu-latest]
steps:
- name: Checkout repository
Expand All @@ -319,9 +326,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -337,9 +344,13 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.9, 3.12]
os: [ubuntu-latest, windows-latest, macos-13]
py: [3.9, 3.12, 3.13]
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
exclude:
- py: 3.13
os: macos-13
steps:
- name: Checkout repository
uses: actions/checkout@v4
Expand All @@ -354,9 +365,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -379,8 +390,9 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.9, 3.12]
py: [3.9, 3.12, 3.13]
os: [ubuntu-latest]
steps:
- name: Checkout repository
Expand All @@ -395,9 +407,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand All @@ -413,14 +425,20 @@ jobs:
needs: changes
if: ${{ needs.changes.outputs.phoenix == 'true' }}
strategy:
fail-fast: false
matrix:
py: [3.9, 3.12]
py: [3.9, 3.12, 3.13]
db: [sqlite, postgresql]
os: [ubuntu-latest, windows-latest, macos-13]
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
exclude:
- db: postgresql
os: windows-latest
- db: postgresql
os: macos-latest
- db: postgresql
os: macos-13
- py: 3.13
db: sqlite
os: macos-13
env:
CI_TEST_DB_BACKEND: ${{ matrix.db }}
Expand Down Expand Up @@ -450,9 +468,9 @@ jobs:
with:
python-version: ${{ matrix.py }}
- name: Set up `uv`
uses: astral-sh/setup-uv@v3
uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
version: 0.5.8
enable-cache: true
cache-dependency-glob: |
pyproject.toml
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/python-cron.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: 3.9
- uses: astral-sh/setup-uv@v3
- uses: astral-sh/setup-uv@v4
with:
version: 0.5.5
enable-cache: true
Expand Down
15 changes: 8 additions & 7 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "arize-phoenix"
description = "AI Observability and Evaluation"
readme = "README.md"
requires-python = ">=3.9, <3.13"
requires-python = ">=3.9, <3.14"
license = {text="Elastic-2.0"}
license-files = { paths = ["LICENSE", "IP_NOTICE"] }
keywords = [
Expand All @@ -19,6 +19,7 @@ classifiers = [
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
]
dependencies = [
"scikit-learn",
Expand All @@ -28,12 +29,12 @@ dependencies = [
"starlette",
"uvicorn",
"psutil",
"strawberry-graphql==0.247.0", # need to pin version because we're monkey-patching
"strawberry-graphql==0.253.1", # need to pin version because we're monkey-patching
"pyarrow",
"typing-extensions>=4.6",
"scipy",
"wrapt<1.17; sys_platform == 'darwin'",
"wrapt; sys_platform != 'darwin'",
"wrapt<1.17; sys_platform == 'darwin' and platform_machine == 'x86_64'",
"wrapt>=1.17; sys_platform != 'darwin' or platform_machine != 'x86_64'",
"protobuf>=3.20.2, <6.0",
"grpcio",
"grpc-interceptor",
Expand Down Expand Up @@ -87,7 +88,7 @@ dev = [
"pytest-postgresql",
"asyncpg",
"psycopg[binary,pool]",
"strawberry-graphql[debug-server,opentelemetry]==0.247.0", # need to pin version because we're monkey-patching
"strawberry-graphql[debug-server,opentelemetry]==0.253.1", # need to pin version because we're monkey-patching
"pre-commit",
"arize[AutoEmbeddings, LLM_Evaluation]",
"llama-index>=0.10.3",
Expand Down Expand Up @@ -133,7 +134,7 @@ container = [
"opentelemetry-instrumentation-sqlalchemy",
"opentelemetry-instrumentation-grpc",
"py-grpc-prometheus",
"strawberry-graphql[opentelemetry]==0.247.0", # need to pin version because we're monkey-patching
"strawberry-graphql[opentelemetry]==0.253.1", # need to pin version because we're monkey-patching
"uvloop; platform_system != 'Windows'",
"fast-hdbscan>=0.2.0",
"numba>=0.60.0", # https://github.com/astral-sh/uv/issues/6281
Expand Down Expand Up @@ -229,7 +230,7 @@ dependencies = [
"py-grpc-prometheus",
"pypistats", # this is needed to type-check third-party packages
"requests", # this is needed to type-check third-party packages
"strawberry-graphql[opentelemetry]==0.247.0", # need to pin version because we're monkey-patching
"strawberry-graphql[opentelemetry]==0.253.1", # need to pin version because we're monkey-patching
"tenacity",
"types-cachetools",
"types-protobuf",
Expand Down
2 changes: 1 addition & 1 deletion requirements/build-graphql-schema.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
strawberry-graphql[cli]==0.247.0
strawberry-graphql[cli]==0.253.1
2 changes: 1 addition & 1 deletion requirements/type-check.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ psycopg[binary,pool]
py-grpc-prometheus
pypistats # this is needed to type-check third-party packages
requests # this is needed to type-check third-party packages
strawberry-graphql[opentelemetry]==0.247.0 # need to pin version because we're monkey-patching
strawberry-graphql[opentelemetry]==0.253.1 # need to pin version because we're monkey-patching
tenacity
types-cachetools
types-protobuf
Expand Down
Loading

0 comments on commit 4431a0e

Please sign in to comment.