Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(dev-deps): move to uv for development #10424

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .envrc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use flake

dotenv

watch_file poetry.lock
watch_file nix/overlay.nix
watch_file nix/quarto/default.nix
watch_file poetry-overrides.nix
watch_file nix/overlay.nix
watch_file nix/pyproject-overrides.nix
watch_file uv.lock
2 changes: 1 addition & 1 deletion .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ dependencies:
- changed-files:
- any-glob-to-any-file: "**/*.nix"
- any-glob-to-any-file: "flake.lock"
- any-glob-to-any-file: "poetry.lock"
- any-glob-to-any-file: "uv.lock"
- any-glob-to-any-file: "requirements-dev.txt"
- any-glob-to-any-file: "conda/*.yml"

Expand Down
2 changes: 1 addition & 1 deletion .github/renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"docker-compose",
"dockerfile",
"github-actions",
"poetry"
"pep621"
],
"automerge": false,
"labels": ["dependencies"],
Expand Down
22 changes: 15 additions & 7 deletions .github/workflows/check-generated-files.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ on:
push:
paths:
- README.md
- poetry.lock
- uv.lock
- pyproject.toml
- requirements-dev.txt
pull_request:
paths:
- README.md
- poetry.lock
- uv.lock
- pyproject.toml
- requirements-dev.txt

Expand All @@ -23,6 +23,11 @@ env:
SQLALCHEMY_WARN_20: "1"
HYPOTHESIS_PROFILE: "ci"

permissions:
# this allows extractions/setup-just to list releases for `just` at a higher
# rate limit while restricting GITHUB_TOKEN permissions elsewhere
contents: read

jobs:
check_setuptools_install:
runs-on: ubuntu-latest
Expand All @@ -38,20 +43,23 @@ jobs:
cache: pip
cache-dependency-path: requirements-dev.txt

- name: install poetry
run: pip install 'poetry==1.8.4'
- name: install uv
uses: astral-sh/setup-uv@v3
with:
enable-cache: true

- name: update apt-get
run: sudo apt-get update -y -q

- name: install system dependencies
run: sudo apt-get install -y -q build-essential graphviz libgeos-dev freetds-dev unixodbc-dev

- name: check consistency with pyproject.toml
run: poetry check --lock
- uses: extractions/setup-just@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: generate requirements-dev.txt
run: poetry export --all-extras --with dev --with test --with docs --without-hashes --no-ansi > requirements-dev.txt
run: just export-deps

- name: check requirements-dev.txt
run: git diff --exit-code requirements-dev.txt
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docs-preview.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
with:
name: ibis
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
extraPullNames: nix-community,poetry2nix
extraPullNames: nix-community

- name: checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -77,7 +77,7 @@ jobs:
path: docs/**/.jupyter_cache

- name: run quarto check
run: nix develop '.#ibis311' --ignore-environment -c quarto check
run: nix develop '.#ibis311' --ignore-environment --keep HOME -c quarto check

- name: build docs
run: nix develop '.#ibis311' --ignore-environment --keep HOME -c just docs-build-all
Expand Down
27 changes: 13 additions & 14 deletions .github/workflows/ibis-backends-cloud.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,39 +46,39 @@ jobs:
- name: snowflake
title: Snowflake
extras:
- snowflake
- --extra snowflake
- name: databricks
title: Databricks
extras:
- databricks
- --extra databricks
include:
- python-version: "3.10"
backend:
name: bigquery
title: BigQuery
extras:
- bigquery
- --extra bigquery
- python-version: "3.12"
backend:
name: bigquery
title: BigQuery
extras:
- bigquery
- geospatial
- --extra bigquery
- --extra geospatial
- python-version: "3.10"
backend:
name: snowflake
title: Snowflake + Snowpark
key: snowpark
extras:
- snowflake
- --extra snowflake
- python-version: "3.11"
backend:
name: snowflake
title: Snowflake + Snowpark
key: snowpark
extras:
- snowflake
- --extra snowflake
steps:
- name: checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -110,15 +110,14 @@ jobs:
with:
python-version: ${{ matrix.python-version }}

- name: install poetry
run: pip install 'poetry==1.8.4'
- name: install uv
uses: astral-sh/setup-uv@v3
with:
enable-cache: true

- name: install additional deps
if: matrix.backend.key == 'snowpark'
run: poetry add --lock snowflake-snowpark-python --python="==${{ steps.install_python.outputs.python-version }}"

- name: install ibis
run: poetry install --without dev --without docs --extras "${{ join(matrix.backend.extras, ' ') }} examples"
run: uv add --no-sync --optional snowflake snowflake-snowpark-python

- uses: extractions/setup-just@v2
env:
Expand Down Expand Up @@ -169,7 +168,7 @@ jobs:
run: echo "SNOWFLAKE_SNOWPARK=1" >> "$GITHUB_ENV"

- name: "run parallel tests: ${{ matrix.backend.name }}"
run: just ci-check -m ${{ matrix.backend.name }} --numprocesses auto --dist=loadgroup
run: just ci-check "${{ join(matrix.backend.extras, ' ') }} --extra examples" -m ${{ matrix.backend.name }} --numprocesses auto --dist=loadgroup

- name: upload code coverage
if: success()
Expand Down
Loading
Loading